about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development')
-rw-r--r--nixpkgs/pkgs/development/arduino/arduino-cli/default.nix29
-rw-r--r--nixpkgs/pkgs/development/arduino/platformio/core.nix53
-rw-r--r--nixpkgs/pkgs/development/arduino/platformio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch10
-rw-r--r--nixpkgs/pkgs/development/beam-modules/build-erlang-mk.nix76
-rw-r--r--nixpkgs/pkgs/development/beam-modules/build-mix.nix85
-rw-r--r--nixpkgs/pkgs/development/beam-modules/build-rebar3.nix60
-rw-r--r--nixpkgs/pkgs/development/beam-modules/default.nix27
-rw-r--r--nixpkgs/pkgs/development/beam-modules/elixir_ls.nix2
-rw-r--r--nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix46
-rw-r--r--nixpkgs/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix219
-rw-r--r--nixpkgs/pkgs/development/beam-modules/fetch-mix-deps.nix3
-rw-r--r--nixpkgs/pkgs/development/beam-modules/mix-release.nix65
-rw-r--r--nixpkgs/pkgs/development/beam-modules/pc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/beam-modules/rebar3-nix/default.nix18
-rw-r--r--nixpkgs/pkgs/development/beam-modules/rebar3-proper/default.nix13
-rw-r--r--nixpkgs/pkgs/development/beam-modules/rebar3-release.nix47
-rw-r--r--nixpkgs/pkgs/development/compilers/acme/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix10
-rw-r--r--nixpkgs/pkgs/development/compilers/avian/default.nix43
-rw-r--r--nixpkgs/pkgs/development/compilers/cc65/default.nix12
-rw-r--r--nixpkgs/pkgs/development/compilers/compcert/default.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/copper/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/crystal/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/cudatoolkit/common.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/dale/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/elm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/elm/packages/elm-instrument.nix11
-rw-r--r--nixpkgs/pkgs/development/compilers/elm/packages/elm-json.nix10
-rw-r--r--nixpkgs/pkgs/development/compilers/elm/packages/elm-json.patch47
-rw-r--r--nixpkgs/pkgs/development/compilers/flutter/flutter.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/fsharp41/default.nix126
-rw-r--r--nixpkgs/pkgs/development/compilers/fsharp41/fsharp-GetFileNameWithoutExtension-type-inference.patch13
-rw-r--r--nixpkgs/pkgs/development/compilers/fsharp41/fsharp-IsPathRooted-type-inference.patch21
-rw-r--r--nixpkgs/pkgs/development/compilers/fsharp41/fsharp-path-overloads.patch22
-rw-r--r--nixpkgs/pkgs/development/compilers/fsharp41/fsharp-string-switchName.patch13
-rw-r--r--nixpkgs/pkgs/development/compilers/fstar/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/10/default.nix40
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/11/Added-mcf-thread-model-support-from-mcfgthread.patch306
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/11/default.nix300
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix16
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix16
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/6/default.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/7/default.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/8/default.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/9/default.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix18
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/common/pre-configure.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/gnat-cflags-11.patch35
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix18
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/head.nix17
-rw-r--r--nixpkgs/pkgs/development/compilers/ghdl/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gleam/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.14.nix57
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.15.nix60
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.16.nix63
-rw-r--r--nixpkgs/pkgs/development/compilers/go/2-dev.nix62
-rw-r--r--nixpkgs/pkgs/development/compilers/go/binary.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/graalvm/enterprise-edition.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/halide/default.nix12
-rw-r--r--nixpkgs/pkgs/development/compilers/haxe/default.nix17
-rw-r--r--nixpkgs/pkgs/development/compilers/inform6/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/ispc/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.0-bin.nix80
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.0.nix10
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.3.nix161
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.5.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix73
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/README.md24
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/allow_nix_mtime.patch25
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/diagonal-test.patch27
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch87
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.0/use-system-utf8proc-julia-1.0.patch (renamed from nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.0.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.5/use-system-utf8proc-julia-1.3.patch (renamed from nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.3.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch27
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch30
-rwxr-xr-xnixpkgs/pkgs/development/compilers/julia/update-1.5.py22
-rw-r--r--nixpkgs/pkgs/development/compilers/koka/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/kotlin/default.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/ldc/generic.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/bintools/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/10/bintools.nix)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/clang/default.nix46
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch248
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/default.nix33
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch129
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/default.nix177
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/10/libc++/default.nix)25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch99
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/default.nix)51
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/no-threads.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/no-threads.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/wasm.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/wasm.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libunwind/default.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix38
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/lldb/default.nix59
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix86
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch416
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/bintools/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/11/bintools.nix)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix63
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/clang/gnu-install-dirs.patch235
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/default.nix55
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/gnu-install-dirs.patch129
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/normalize-var.patch16
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/default.nix196
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix)39
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxx/gnu-install-dirs.patch100
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/default.nix)53
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/no-threads.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/no-threads.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/wasm.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/wasm.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libunwind/default.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/libunwind/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix38
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/lldb/default.nix59
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/lldb/gnu-install-dirs.patch65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/llvm/default.nix90
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs.patch417
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix35
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/openmp/default.nix44
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix23
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/clang/gnu-install-dirs.patch235
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-X86-support-extension.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/armv7l.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-armv7l.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/codesign.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-codesign.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/darwin-targetconditionals.patch71
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/gnu-install-dirs.patch129
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/normalize-var.patch16
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/default.nix161
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxx/gnu-install-dirs.patch100
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix32
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/wasm.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/wasm.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libunwind/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix24
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix35
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lldb/gnu-install-dirs.patch65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lldb/procfs.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/lldb/lldb-procfs.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lldb/resource-dir.patch13
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix67
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs-polly.patch105
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs.patch417
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/llvm/outputs.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/llvm/llvm-outputs.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/clang/default.nix48
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/clang/gnu-install-dirs.patch242
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/default.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/gnu-install-dirs.patch103
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/default.nix65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/5/libc++/default.nix)23
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/libcxx/gnu-install-dirs.patch72
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/5/libc++abi/default.nix)28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix41
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/lldb/default.nix49
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/lldb/gnu-install-dirs.patch76
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/llvm/default.nix89
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs.patch386
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/clang/default.nix48
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/clang/gnu-install-dirs.patch258
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/default.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/gnu-install-dirs.patch107
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/default.nix65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/6/libc++/default.nix)23
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/libcxx/gnu-install-dirs.patch72
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/6/libc++abi/default.nix)28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix42
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/lldb/default.nix49
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/lldb/gnu-install-dirs.patch76
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/llvm/default.nix80
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs.patch386
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/bintools/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/7/bintools.nix)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/clang/default.nix47
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/clang/gnu-install-dirs.patch281
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/clang/unwindlib.patch227
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/default.nix36
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/gnu-install-dirs.patch117
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/default.nix184
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/7/libc++/default.nix)30
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libcxx/gnu-install-dirs.patch72
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/7/libc++abi/default.nix)38
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libunwind/default.nix53
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/libunwind/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix42
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/lldb/default.nix59
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/lldb/gnu-install-dirs.patch76
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/llvm/default.nix75
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs.patch386
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/bintools/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/8/bintools.nix)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/clang/default.nix46
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch290
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/clang/xpc.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/8/clang/clang-xpc.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/default.nix28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch117
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/default.nix189
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/8/libc++/default.nix)25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch72
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/default.nix)51
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/no-threads.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/no-threads.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/wasm.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/wasm.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libunwind/default.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix42
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/lldb/default.nix56
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch81
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/llvm/default.nix75
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch394
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/bintools/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/9/bintools.nix)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/clang/default.nix44
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/clang/gnu-install-dirs.patch278
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/default.nix33
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/gnu-install-dirs.patch117
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/default.nix189
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxx/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/9/libc++/default.nix)25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxx/gnu-install-dirs.patch99
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/default.nix (renamed from nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/default.nix)51
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/no-threads.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/no-threads.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/wasm.patch (renamed from nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/libcxxabi-wasm.patch)0
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libunwind/default.nix20
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/libunwind/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix38
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/lldb/default.nix51
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/lldb/gnu-install-dirs.patch65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/llvm/default.nix81
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs.patch395
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/openmp.nix25
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/openmp/default.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/bintools/default.nix29
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/clang/default.nix123
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/clang/gnu-install-dirs.patch235
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/clang/purity.patch28
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/X86-support-extension.patch23
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/armv7l.patch32
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/codesign.patch33
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/default.nix113
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/gnu-install-dirs.patch129
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/normalize-var.patch16
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/sanitizers-nongnu.patch412
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/default.nix269
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libcxx/default.nix54
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libcxx/gnu-install-dirs.patch100
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/default.nix73
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/wasm.patch16
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libunwind/default.nix33
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/libunwind/gnu-install-dirs.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix44
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lld/gnu-install-dirs.patch68
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lldb/default.nix131
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lldb/gnu-install-dirs.patch65
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lldb/procfs.patch31
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lldb/resource-dir.patch13
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/llvm/default.nix220
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs-polly.patch105
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs.patch417
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/llvm/outputs.patch26
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/openmp/default.nix35
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/lld/default.nix12
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix2
-rwxr-xr-xnixpkgs/pkgs/development/compilers/llvm/update-git.py70
-rw-r--r--nixpkgs/pkgs/development/compilers/mezzo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/mono/5.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/nim/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/11.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/12.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/13.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/14.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/15.nix7
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/16.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/8.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix32
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix34
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix31
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/fix-library-path-jdk8.patch37
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/jre.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/jre_minimal_test1.nix16
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/openjfx/11.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix7
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/tests/hello-logging.nix47
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/tests/hello.nix42
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal.nix16
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal_with_logging.nix21
-rw-r--r--nixpkgs/pkgs/development/compilers/ophis/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix7
-rw-r--r--nixpkgs/pkgs/development/compilers/oraclejdk/jdk11-linux.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/oraclejdk/jdk14-linux.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/pakcs/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/passerine/default.nix22
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/default.nix23
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/fix-libstdcpp-path.patch14
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch10
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/reason/default.nix38
-rw-r--r--nixpkgs/pkgs/development/compilers/reason/tests/hello/default.nix23
-rw-r--r--nixpkgs/pkgs/development/compilers/reason/tests/hello/dune4
-rw-r--r--nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.opam0
-rw-r--r--nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.re6
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/1_45.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/1_51.nix58
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/1_52.nix59
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/cargo.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix6
-rwxr-xr-xnixpkgs/pkgs/development/compilers/rust/print-hashes.sh1
-rw-r--r--nixpkgs/pkgs/development/compilers/rust/rustc.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/sbcl/common.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/scala/2.x.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/scala/dotty.nix7
-rw-r--r--nixpkgs/pkgs/development/compilers/solc/0.7.nix78
-rw-r--r--nixpkgs/pkgs/development/compilers/solc/default.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/swi-prolog/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/vala/default.nix17
-rw-r--r--nixpkgs/pkgs/development/compilers/z88dk/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/zasm/default.nix37
-rw-r--r--nixpkgs/pkgs/development/compilers/zig/default.nix44
-rw-r--r--nixpkgs/pkgs/development/compilers/zulu/8.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/zulu/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/zz/default.nix2
-rw-r--r--nixpkgs/pkgs/development/coq-modules/CoLoR/default.nix2
-rw-r--r--nixpkgs/pkgs/development/coq-modules/VST/default.nix6
-rw-r--r--nixpkgs/pkgs/development/coq-modules/aac-tactics/default.nix46
-rw-r--r--nixpkgs/pkgs/development/coq-modules/autosubst/0001-changes-to-work-with-Coq-8.6.patch134
-rw-r--r--nixpkgs/pkgs/development/coq-modules/autosubst/default.nix25
-rw-r--r--nixpkgs/pkgs/development/coq-modules/coq-elpi/default.nix7
-rw-r--r--nixpkgs/pkgs/development/coq-modules/coqeal/default.nix2
-rw-r--r--nixpkgs/pkgs/development/coq-modules/coqprime/default.nix2
-rw-r--r--nixpkgs/pkgs/development/coq-modules/goedel/default.nix24
-rw-r--r--nixpkgs/pkgs/development/coq-modules/hydra-battles/default.nix29
-rw-r--r--nixpkgs/pkgs/development/coq-modules/interval/default.nix8
-rw-r--r--nixpkgs/pkgs/development/coq-modules/mathcomp-zify/default.nix22
-rw-r--r--nixpkgs/pkgs/development/coq-modules/metalib/default.nix2
-rw-r--r--nixpkgs/pkgs/development/coq-modules/paramcoq/default.nix3
-rw-r--r--nixpkgs/pkgs/development/coq-modules/pocklington/default.nix22
-rw-r--r--nixpkgs/pkgs/development/coq-modules/reglang/default.nix25
-rw-r--r--nixpkgs/pkgs/development/coq-modules/relation-algebra/default.nix35
-rw-r--r--nixpkgs/pkgs/development/coq-modules/topology/default.nix38
-rw-r--r--nixpkgs/pkgs/development/coq-modules/zorns-lemma/default.nix38
-rwxr-xr-xnixpkgs/pkgs/development/dotnet-modules/python-language-server/create_deps.sh6
-rw-r--r--nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix14
-rw-r--r--nixpkgs/pkgs/development/dotnet-modules/python-language-server/deps.nix124
-rw-r--r--nixpkgs/pkgs/development/dotnet-modules/python-language-server/manual_deps.txt16
-rw-r--r--nixpkgs/pkgs/development/go-modules/generic/default.nix5
-rw-r--r--nixpkgs/pkgs/development/go-packages/generic/default.nix5
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/HACKING.md270
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix40
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-arm.nix97
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-common.nix404
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-darwin.nix174
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix7
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix2
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix4
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix17
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-head.nix3
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml11954
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml5336
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml519
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml2724
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml3282
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix283
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/default.nix31
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/generic-builder.nix21
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix11864
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/lib.nix10
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/make-package-set.nix2
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix4
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/patches/dyre-nix.patch25
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix2
-rw-r--r--nixpkgs/pkgs/development/idris-modules/data.nix25
-rw-r--r--nixpkgs/pkgs/development/idris-modules/default.nix2
-rw-r--r--nixpkgs/pkgs/development/idris-modules/sdl2.nix7
-rw-r--r--nixpkgs/pkgs/development/interpreters/acl2/libipasirglucose4/default.nix14
-rw-r--r--nixpkgs/pkgs/development/interpreters/angelscript/default.nix29
-rw-r--r--nixpkgs/pkgs/development/interpreters/cling/default.nix9
-rw-r--r--nixpkgs/pkgs/development/interpreters/clips/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/babashka.nix14
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/default.nix7
-rw-r--r--nixpkgs/pkgs/development/interpreters/elixir/1.12.nix9
-rw-r--r--nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix99
-rw-r--r--nixpkgs/pkgs/development/interpreters/elixir/setup-hook.sh5
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R18.nix34
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R19.nix19
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R20.nix10
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R21.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R22.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R23.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/R24.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/generic-builder.nix146
-rw-r--r--nixpkgs/pkgs/development/interpreters/erlang/setup-hook.sh5
-rw-r--r--nixpkgs/pkgs/development/interpreters/evcxr/default.nix13
-rw-r--r--nixpkgs/pkgs/development/interpreters/falcon/default.nix18
-rw-r--r--nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/j/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/janet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/joker/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/jruby/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/fix-rebar-config.patch29
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/lfe/no-test-deps.patch13
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/5.4.darwin.patch48
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/default.nix34
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix37
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/liblua.so.patch60
-rw-r--r--nixpkgs/pkgs/development/interpreters/lua-5/lua-dso.make (renamed from nixpkgs/pkgs/development/interpreters/lua-5/lua-5.3-dso.make)6
-rw-r--r--nixpkgs/pkgs/development/interpreters/luajit/2.0.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/luajit/2.1.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/mujs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/octave/build-env.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/perl/default.nix23
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/7.3.nix20
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/7.4.nix10
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/8.0.nix10
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/generic.nix493
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/php73-darwin-isfinite.patch60
-rw-r--r--nixpkgs/pkgs/development/interpreters/pure/default.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/conda/default.nix25
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/default.nix7
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/conda-install-hook.sh27
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/conda-unpack-hook.sh18
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/default.nix15
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/hooks/pytest-check-hook.sh7
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix5
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/tests.nix35
-rw-r--r--nixpkgs/pkgs/development/interpreters/quickjs/default.nix32
-rw-r--r--nixpkgs/pkgs/development/interpreters/renpy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/default.nix30
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix11
-rw-r--r--nixpkgs/pkgs/development/interpreters/spidermonkey/1.8.5.nix79
-rw-r--r--nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/supercollider/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasmer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/wasmtime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/java-modules/postgresql_jdbc/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/CGAL/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL2_image/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL_image/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch15
-rw-r--r--nixpkgs/pkgs/development/libraries/abseil-cpp/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/ace/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/alembic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/allegro/5.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/allegro/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/amdvlk/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/amtk/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/apache-activemq/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/applet-window-buttons/default.nix41
-rw-r--r--nixpkgs/pkgs/development/libraries/appstream-glib/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/appstream/default.nix70
-rw-r--r--nixpkgs/pkgs/development/libraries/apr/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/aravis/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/armadillo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/arrow-cpp/default.nix27
-rw-r--r--nixpkgs/pkgs/development/libraries/at-spi2-atk/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/atk/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/atkmm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/aubio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audiofile/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/avahi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/avro-c/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/aws-c-cal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/aws-c-common/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/aws-c-io/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/aws-sdk-cpp/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/bamf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/bctoolbox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/beignet/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/belcard/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belle-sip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/boringssl/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/botan/2.0.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/botan/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/botan/generic.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/box2d/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/bzrtp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/caf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/cairomm/1.16.nix74
-rw-r--r--nixpkgs/pkgs/development/libraries/catch/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/cereal/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/cgreen/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/chmlib/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/cjose/default.nix40
-rw-r--r--nixpkgs/pkgs/development/libraries/clanlib/default.nix50
-rw-r--r--nixpkgs/pkgs/development/libraries/clutter-gst/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/clutter-gtk/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/clutter/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/cogl/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/coordgenlibs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/ctpl/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/cxxopts/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/dbus/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/dconf/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/dee/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/doctest/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/dqlite/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/drumstick/default.nix19
-rw-r--r--nixpkgs/pkgs/development/libraries/drumstick/drumstick-fluidsynth.patch9
-rw-r--r--nixpkgs/pkgs/development/libraries/drumstick/drumstick-plugins.patch4
-rw-r--r--nixpkgs/pkgs/development/libraries/dssi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/editline/default.nix20
-rw-r--r--nixpkgs/pkgs/development/libraries/embree/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ethash/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/exempi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/fcft/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/fcl/default.nix45
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg-full/default.nix28
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/2.8.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/4.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch35
-rw-r--r--nixpkgs/pkgs/development/libraries/ffms/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/flatbuffers/1.12.nix26
-rw-r--r--nixpkgs/pkgs/development/libraries/flatbuffers/2.0.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/flatbuffers/default.nix55
-rw-r--r--nixpkgs/pkgs/development/libraries/flatbuffers/generic.nix46
-rw-r--r--nixpkgs/pkgs/development/libraries/flint/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/flite/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/folks/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/fontconfig/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/fontconfig/macos-atomics.h39
-rw-r--r--nixpkgs/pkgs/development/libraries/freeimage/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/freetds/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/fstrm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gcab/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gcr/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/gdal/2.4.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix50
-rw-r--r--nixpkgs/pkgs/development/libraries/gdl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gegl/4.0.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/gensio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/geoclue/add-option-for-installation-sysconfdir.patch7
-rw-r--r--nixpkgs/pkgs/development/libraries/geoclue/default.nix80
-rw-r--r--nixpkgs/pkgs/development/libraries/geocode-glib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/geos/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/getdata/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/gexiv2/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gfbgraph/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/ghc_filesystem/default.nix22
-rw-r--r--nixpkgs/pkgs/development/libraries/giflib/libungif.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/gjs/default.nix38
-rw-r--r--nixpkgs/pkgs/development/libraries/glfw/3.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/glib-networking/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/glib/default.nix25
-rw-r--r--nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gzbin58063 -> 65492 bytes
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/common.nix33
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/info.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/locales.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/glibmm/2.68.nix59
-rw-r--r--nixpkgs/pkgs/development/libraries/glibmm/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gmp/6.x.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-menus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-video-effects/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_gir_path.patch6
-rw-r--r--nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch15
-rw-r--r--nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/goffice/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gom/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/goocanvas/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/goocanvasmm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/graphene/0001-meson-add-options-for-tests-installation-dirs.patch47
-rw-r--r--nixpkgs/pkgs/development/libraries/graphene/default.nix31
-rw-r--r--nixpkgs/pkgs/development/libraries/grilo-plugins/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/grilo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/grpc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/gsignond/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gsignond/plugins/lastfm.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gsignond/plugins/mail.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gsignond/plugins/oauth.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gsignond/plugins/sasl.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gsl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gsound/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gspell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gssdp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/good/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/gstreamermm/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/libav/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/ugly/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/vaapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk-engine-bluecurve/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk-frdp/default.nix54
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk-sharp/3.0.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk/2.x.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk/3.x.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk/4.x.nix69
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkd/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkmm/2.x.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkmm/3.x.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix91
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceview/3.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix90
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix99
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceviewmm/4.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceviewmm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gupnp-av/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gupnp-dlna/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gupnp-igd/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gupnp/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/gvfs/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/herqq/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/hivex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/hotpatch/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/hyperscan/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/icu/69.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/igraph/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/imlib/default.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/intel-media-driver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/intel-media-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/irrlicht/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/irrlicht/mac.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/itk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/json-glib/default.nix26
-rw-r--r--nixpkgs/pkgs/development/libraries/jsoncpp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/jxrlib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/fetch.sh2
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix29
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/srcs.nix664
-rw-r--r--nixpkgs/pkgs/development/libraries/keybinder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/keybinder3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/kmsxx/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/kronosnet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/l-smash/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/lasem/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/lasso/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/leptonica/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lib2geom/default.nix60
-rw-r--r--nixpkgs/pkgs/development/libraries/libAfterImage/default.nix55
-rw-r--r--nixpkgs/pkgs/development/libraries/libadwaita/default.nix67
-rw-r--r--nixpkgs/pkgs/development/libraries/libamqpcpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libao/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libaom/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/libass/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libavif/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libblockdev/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libcanberra/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libccd/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/libcef/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libchamplain/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libchardet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libcint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libck/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libco-canonical/default.nix39
-rw-r--r--nixpkgs/pkgs/development/libraries/libcommuni/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libcrafter/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libcryptui/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libdazzle/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/libdeltachat/default.nix55
-rw-r--r--nixpkgs/pkgs/development/libraries/libdigidocpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libdivecomputer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libepc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libevent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libextractor/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libfaketime/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libfido2/default.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/libfive/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/libfixposix/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libgda/6.x.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgda/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgdamm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgdata/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libgee/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libgepub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgig/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgit2-glib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgksu/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libglvnd/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgnomekbd/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/libgpiod/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgrss/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgsf/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgtop/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgudev/default.nix34
-rw-r--r--nixpkgs/pkgs/development/libraries/libguestfs/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libguestfs/ocaml-4.12.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/libgweather/default.nix64
-rw-r--r--nixpkgs/pkgs/development/libraries/libgxps/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libhandy/0.x.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libhandy/default.nix48
-rw-r--r--nixpkgs/pkgs/development/libraries/libhdhomerun/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libheif/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libhttpseverywhere/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libical/default.nix20
-rw-r--r--nixpkgs/pkgs/development/libraries/libidn2/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/libiio/cmake-fix-libxml2-find-package.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/libiio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libimagequant/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libime/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/libjcat/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix22
-rw-r--r--nixpkgs/pkgs/development/libraries/libjwt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/liblinphone/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libmanette/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmaxminddb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmediaart/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmikmod/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmodulemd/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmwaw/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libndp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libnixxml/default.nix40
-rw-r--r--nixpkgs/pkgs/development/libraries/libnotify/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libofx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libopus/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libosmium/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libow/default.nix43
-rw-r--r--nixpkgs/pkgs/development/libraries/libpeas/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libplacebo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libportal/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/libpst/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libqtav/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libraspberrypi/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/librealsense/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/librealsense/py_pybind11_no_external_download.patch39
-rw-r--r--nixpkgs/pkgs/development/libraries/librest/default.nix33
-rw-r--r--nixpkgs/pkgs/development/libraries/librime/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/librsvg/default.nix91
-rw-r--r--nixpkgs/pkgs/development/libraries/librttopo/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/libsecret/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libsigcxx/3.0.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/libsigcxx/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/libsignon-glib/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libslirp/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libsolv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsoundio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsoup/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/libspatialite/default.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/libspnav/configure-socket-path.patch47
-rw-r--r--nixpkgs/pkgs/development/libraries/libspnav/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/libspotify/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsvm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libtgvoip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libthreadar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libtomcrypt/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libubox/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libunique/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libunity/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/libunity/fix-vala.patch44
-rw-r--r--nixpkgs/pkgs/development/libraries/libunwind/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libvdpau-va-gl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix44
-rw-r--r--nixpkgs/pkgs/development/libraries/libvirt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libvncserver/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libwnck/3.x.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libwpe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libxc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libxml2/default.nix34
-rw-r--r--nixpkgs/pkgs/development/libraries/libxmlb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libxmlxx/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libxslt/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libzapojit/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/lief/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lirc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lmdb/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/lmdbxx/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/lucene++/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/lyra/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/malcontent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mapnik/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/matio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mauikit-filebrowsing/default.nix40
-rw-r--r--nixpkgs/pkgs/development/libraries/mauikit/default.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/md4c/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mediastreamer/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/mm-common/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mpfi/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/mpich/default.nix35
-rw-r--r--nixpkgs/pkgs/development/libraries/mpich/jsonc-test.patch62
-rw-r--r--nixpkgs/pkgs/development/libraries/mpir/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/mutest/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/mvapich/default.nix73
-rw-r--r--nixpkgs/pkgs/development/libraries/mygui/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/netcdf-cxx4/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/nss/3.44.nix144
-rw-r--r--nixpkgs/pkgs/development/libraries/nss/85_security_load-3.44.patch81
-rw-r--r--nixpkgs/pkgs/development/libraries/nss/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/nss_wrapper/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/nv-codec-headers/10_x.nix22
-rw-r--r--nixpkgs/pkgs/development/libraries/octomap/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/ogre/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/openal-soft/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/openbsm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/opencl-clang/default.nix19
-rw-r--r--nixpkgs/pkgs/development/libraries/opencv/3.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/opencv/4.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/opencv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/openexr/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/openexrid-unstable/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/openfx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/openimagedenoise/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/openldap/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/openmpi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/openscenegraph/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/openslide/default.nix28
-rw-r--r--nixpkgs/pkgs/development/libraries/openssl/default.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/openvdb/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/openvino/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/osm-gps-map/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/pango/default.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/pangolin/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/pangomm/2.48.nix65
-rw-r--r--nixpkgs/pkgs/development/libraries/pangomm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/pc-ble-driver/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/pcaudiolib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/pcl/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/pcmsolver/default.nix43
-rw-r--r--nixpkgs/pkgs/development/libraries/pcre/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/pcre2/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/physfs/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/apfel/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/fastnlo_toolkit/default.nix (renamed from nixpkgs/pkgs/development/libraries/physics/fastnlo/default.nix)30
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/lhapdf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/pythia/default.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/yoda/default.nix20
-rw-r--r--nixpkgs/pkgs/development/libraries/pico-sdk/default.nix35
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0.2.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0040-alsa-profiles-use-libdir.patch12
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0050-pipewire-pulse-path.patch14
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0055-pipewire-media-session-path.patch16
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0070-installed-tests-path.patch20
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/0080-pipewire-config-dir.patch24
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/default.nix56
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/test-paths.nix2
-rwxr-xr-xnixpkgs/pkgs/development/libraries/pipewire/update.sh24
-rw-r--r--nixpkgs/pkgs/development/libraries/plasma-wayland-protocols/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/pmdk/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/polkit/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/poppler/default.nix92
-rw-r--r--nixpkgs/pkgs/development/libraries/portaudio/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/portmidi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/presage/default.nix69
-rw-r--r--nixpkgs/pkgs/development/libraries/presage/fixed-cppunit-detection.patch46
-rw-r--r--nixpkgs/pkgs/development/libraries/proj/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/3.15.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/3.16.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/pslib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/py3c/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/qca-qt5/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/qca-qt5/move-project.patch17
-rw-r--r--nixpkgs/pkgs/development/libraries/qgnomeplatform/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qhull/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/qscintilla/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch54
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.14/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0003-qtbase-mkspecs.patch50
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/0003-qtbase-mkspecs.patch60
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtcharts.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtdoc.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtgamepad.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtimageformats.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtlocation.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtmacextras.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtnetworkauth.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtscript.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtscxml.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtsensors.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialbus.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialport.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtspeech.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtsvg.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qttools.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qttranslations.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtvirtualkeyboard.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwayland.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebengine.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebkit.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebview.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtx11extras.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/qtModule.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/qtfeedback/default.nix48
-rw-r--r--nixpkgs/pkgs/development/libraries/qtstyleplugins/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/quazip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/raft-canonical/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/rarian/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/raylib/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/re2/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/readline/8.1.nix (renamed from nixpkgs/pkgs/development/libraries/readline/8.0.nix)12
-rw-r--r--nixpkgs/pkgs/development/libraries/readline/readline-8.0-patches.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/readline/readline-8.1-patches.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/rlottie/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/s2n-tls/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/indilib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix52
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix66
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix27
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/science/benchmark/papi/default.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/arpack/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/libtorch/bin.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/libtorch/test/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/openblas/default.nix19
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/snack/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/sofia-sip/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/spandsp/3.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/spatialite-tools/default.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/spdk/default.nix25
-rw-r--r--nixpkgs/pkgs/development/libraries/speech-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/speechd/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/spice/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/sqlite/sqlar.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/sqlite/tools.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/sqlitecpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/sundials/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/tachyon/darwin.patch31
-rw-r--r--nixpkgs/pkgs/development/libraries/tachyon/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/taglib-extras/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/taglib/default.nix39
-rw-r--r--nixpkgs/pkgs/development/libraries/tbb/default.nix65
-rw-r--r--nixpkgs/pkgs/development/libraries/tbb/glibc-struct-mallinfo.patch43
-rw-r--r--nixpkgs/pkgs/development/libraries/template-glib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/tepl/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/tk/generic.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker-miners/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker/fix-docs.patch28
-rw-r--r--nixpkgs/pkgs/development/libraries/ubus/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/uci/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/ucx/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/umockdev/default.nix43
-rw-r--r--nixpkgs/pkgs/development/libraries/usrsctp/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/v8/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/vapoursynth/plugin-interface.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/vte/2.90.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/vte/default.nix45
-rw-r--r--nixpkgs/pkgs/development/libraries/waffle/default.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/wasilibc/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/wayland/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/wayland/protocols.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/webkitgtk/428774.patch86
-rw-r--r--nixpkgs/pkgs/development/libraries/webkitgtk/default.nix75
-rw-r--r--nixpkgs/pkgs/development/libraries/webkitgtk/fix-bubblewrap-paths.patch14
-rw-r--r--nixpkgs/pkgs/development/libraries/wiiuse/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/wildmidi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/wiredtiger/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/wlroots/0.12.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/wt/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/wxSVG/default.nix45
-rw-r--r--nixpkgs/pkgs/development/libraries/xcb-imdkit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/xdg-desktop-portal-wlr/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/xgboost/default.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/xine-lib/default.nix85
-rw-r--r--nixpkgs/pkgs/development/libraries/xsimd/default.nix56
-rw-r--r--nixpkgs/pkgs/development/libraries/xtensor/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/xtl/default.nix33
-rw-r--r--nixpkgs/pkgs/development/libraries/zchunk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/zeitgeist/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/zlib/default.nix6
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/README.txt2
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/clwrapper/setup-hook.sh8
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix21
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/agutil.nix42
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/arrows.nix31
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/chanl.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-change-case.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors2.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-environments.nix44
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-gobject-introspection.nix32
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-typesetting.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-webkit2.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix22
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/file-attributes.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/generic-cl.nix56
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/mgl-pax.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/serapeum.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-dispatch.nix55
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/str.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_balland2006.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level0.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level1.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level2.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_quasiquote.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_trivial.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-arguments.nix27
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix14
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix3
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt3
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix.nix230
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/shell.nix2
-rw-r--r--nixpkgs/pkgs/development/lua-modules/overrides.nix2
-rw-r--r--nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix5
-rw-r--r--nixpkgs/pkgs/development/misc/loc/default.nix2
-rw-r--r--nixpkgs/pkgs/development/misc/msp430/mspds/binary.nix35
-rw-r--r--nixpkgs/pkgs/development/misc/msp430/mspds/bsl430.patch51
-rw-r--r--nixpkgs/pkgs/development/misc/msp430/mspds/default.nix56
-rw-r--r--nixpkgs/pkgs/development/misc/umr/default.nix2
-rw-r--r--nixpkgs/pkgs/development/misc/yelp-tools/default.nix36
-rw-r--r--nixpkgs/pkgs/development/mobile/androidenv/emulator.nix2
-rw-r--r--nixpkgs/pkgs/development/mobile/androidenv/examples/shell.nix2
-rw-r--r--nixpkgs/pkgs/development/node-packages/default.nix41
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-packages.json3
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-packages.nix13719
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ansiterminal/default.nix31
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/atd/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/awa/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bap/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix21
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ca-certs-nss/default.nix55
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cairo2/default.nix19
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/camlimages/4.0.nix41
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/camlimages/4.1.2.nix37
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/caqti/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/carton/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/checkseum/default.nix39
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/checkseum/makefile-no-opam.patch12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cohttp/async.nix72
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cohttp/default.nix13
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix25
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt.nix25
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cohttp/mirage.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/conduit/async.nix18
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix10
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/conduit/lwt-unix.nix27
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/conduit/mirage.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/containers/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/cooltt/default.nix47
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/csexp/default.nix19
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/csv/csvtool.nix16
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/csv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/curly/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/decompress/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dns/certify.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dns/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dolmen/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/earlybird/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/eigen/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/extlib/1.7.7.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/fix/default.nix29
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/git/cohttp-mirage.nix18
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/git/default.nix13
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/git/paf.nix49
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/git/unix.nix11
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/containers.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/git.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/graphql.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/http.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/mirage-git.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/unix.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/junit/alcotest.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/junit/default.nix26
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/junit/ounit.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/letsencrypt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/llvm/default.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/luv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/menhir/default.nix30
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/menhir/generic.nix43
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/menhir/lib.nix29
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/menhir/sdk.nix15
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage/runtime.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mustache/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix19
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix22
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocsigen-server/default.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/octavius/default.nix29
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/optint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/paf/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_cmdliner/default.nix41
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix17
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ppx_import/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/repr/default.nix17
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/stdcompat/default.nix24
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tls/default.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tls/mirage.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tyxml/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/uri/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/x509/default.nix4
-rw-r--r--nixpkgs/pkgs/development/octave-modules/audio/default.nix6
-rw-r--r--nixpkgs/pkgs/development/perl-modules/TextBibTeX-use-lib-on-aarch64.patch11
-rw-r--r--nixpkgs/pkgs/development/perl-modules/generic/default.nix6
-rw-r--r--nixpkgs/pkgs/development/pharo/vm/build-vm-legacy.nix7
-rw-r--r--nixpkgs/pkgs/development/pharo/vm/build-vm.nix6
-rw-r--r--nixpkgs/pkgs/development/pharo/vm/vms.nix3
-rw-r--r--nixpkgs/pkgs/development/php-packages/apcu/default.nix11
-rw-r--r--nixpkgs/pkgs/development/php-packages/apcu_bc/default.nix12
-rw-r--r--nixpkgs/pkgs/development/php-packages/ast/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/composer/1.x.nix32
-rw-r--r--nixpkgs/pkgs/development/php-packages/composer/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/couchbase/default.nix9
-rw-r--r--nixpkgs/pkgs/development/php-packages/deployer/default.nix33
-rw-r--r--nixpkgs/pkgs/development/php-packages/igbinary/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/imagick/default.nix11
-rw-r--r--nixpkgs/pkgs/development/php-packages/mailparse/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/maxminddb/default.nix1
-rw-r--r--nixpkgs/pkgs/development/php-packages/memcached/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/mongodb/default.nix11
-rw-r--r--nixpkgs/pkgs/development/php-packages/oci8/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/pcov/default.nix11
-rw-r--r--nixpkgs/pkgs/development/php-packages/pdlib/default.nix1
-rw-r--r--nixpkgs/pkgs/development/php-packages/pdo_sqlsrv/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/php_excel/default.nix10
-rw-r--r--nixpkgs/pkgs/development/php-packages/phpcbf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/phpcs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/phpmd/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/pinba/default.nix20
-rw-r--r--nixpkgs/pkgs/development/php-packages/protobuf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/psysh/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/pthreads/default.nix28
-rw-r--r--nixpkgs/pkgs/development/php-packages/rdkafka/default.nix5
-rw-r--r--nixpkgs/pkgs/development/php-packages/redis/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/smbclient/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/snuffleupagus/default.nix53
-rw-r--r--nixpkgs/pkgs/development/php-packages/sqlsrv/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/swoole/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/xdebug/default.nix7
-rw-r--r--nixpkgs/pkgs/development/php-packages/yaml/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/Babel/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/FormEncode/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/Markups/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/MechanicalSoup/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/Nikola/default.nix137
-rw-r--r--nixpkgs/pkgs/development/python-modules/PyRMVtransport/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/accuweather/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/acme-tiny/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/acoustics/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/adb-shell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adblock/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/adext/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/aenum/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/afdko/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/agate-excel/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aio-georss-client/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/aio-georss-gdacs/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioambient/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch498
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioamqp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioasuswrt/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiodns/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioeventlet/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioguardian/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohttp-socks/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohue/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiokafka/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiomultiprocess/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiomysql/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiopg/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiopvpc/default.nix58
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiorecollect/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioshelly/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiosignal/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiosmb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioswitcher/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioymaps/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/alarmdecoder/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/amply/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/amqtt/default.nix64
-rw-r--r--nixpkgs/pkgs/development/python-modules/androidtv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angrop/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/aniso8601/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansi2html/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-lint/default.nix79
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/base.nix78
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/collections.nix77
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/core.nix83
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/legacy.nix (renamed from nixpkgs/pkgs/development/python-modules/ansible/default.nix)4
-rw-r--r--nixpkgs/pkgs/development/python-modules/anytree/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/apipkg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/apispec/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/aplpy/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/apprise/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/arrow/1.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/arrow/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/asciimatics/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/astroid/1.6.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/astroid/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/astropy-healpix/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/astropy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asttokens/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncio-dgram/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncssh/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix38
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/atlassian-python-api/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/audioread/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/authcaptureproxy/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/autobahn/default.nix81
-rw-r--r--nixpkgs/pkgs/development/python-modules/autoit-ripper/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/automat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/autopep8/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awesomeversion/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awkward/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awscrt/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-common/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-core/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-datalake-store/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-eventgrid/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-identity/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-apimanagement/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-billing/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-botservice/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-databoxedge/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-dns/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-eventgrid/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-eventhub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-hdinsight/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-iothub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-kusto/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-managedservices/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-managementgroups/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-managementpartner/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-maps/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-media/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-netapp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-privatedns/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-reservations/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabricmanagedclusters/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-sql/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-storage/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-synapse/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-web/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-servicefabric/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-storage-blob/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-storage-file-share/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-storage/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-synapse-artifacts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/b2sdk/default.nix55
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports-zoneinfo/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_os/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_tempfile/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_unittest-mock/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_weakref/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bacpypes/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/batchgenerators/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bayesian-optimization/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/beancount/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/behave/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/bellows/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bidict/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bip_utils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bitarray/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/black/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/blist/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/blspy/default.nix58
-rw-r--r--nixpkgs/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch38
-rw-r--r--nixpkgs/pkgs/development/python-modules/booleanoperations/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bpython/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/braintree/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/breezy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/brother/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/btrfs/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/buildbot/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/buildbot/pkg.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/buildbot/plugins.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/buildbot/worker.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/cartopy/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/cassandra-driver/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/castepxbin/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/catalogue/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/cbor2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/certbot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cffi/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/chalice/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cheroot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cherrypy/17.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cherrypy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiabip158/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiapos/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch31
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiavdf/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch14
-rw-r--r--nixpkgs/pkgs/development/python-modules/cirq-core/default.nix98
-rw-r--r--nixpkgs/pkgs/development/python-modules/cirq-google/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/cirq/default.nix110
-rw-r--r--nixpkgs/pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/clevercsv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/click-configfile/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/click-option-group/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/click-spinner/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/clickhouse-driver/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/clldutils/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/clvm-rs/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/clvm-tools/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/clvm/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/cmd2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cnvkit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cock/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/cocotb-bus/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/cocotb/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/colored-traceback/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/commentjson/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/concurrent-log-handler/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/configparser/4.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/configparser/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/connect_box/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/connexion/default.nix79
-rw-r--r--nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/coqpit/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/coreapi/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/coreschema/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/corsair-scan/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/crate/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/croniter/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/cryptography/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/cssutils/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/csvw/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/curtsies/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/cvxpy/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cwcwidth/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/cxxfilt/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/dask-glm/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/dask-image/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/dask-ml/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/dask/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/databases/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/datadog/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/datasette/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/datatable/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/dawg-python/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/dbus/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/debugpy/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/debugpy/fix-test-pythonpath.patch4
-rw-r--r--nixpkgs/pkgs/development/python-modules/debut/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/decopatch/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/deepdiff/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/deepmerge/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/defusedxml/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/delorean/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/deltachat/default.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/dendropy/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/denonavr/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/dftfit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/diofant/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/discordpy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/distro/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-anymail/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-configurations/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-cors-headers/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-haystack/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-pipeline/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-rest-auth/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/django/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django/3.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/djangorestframework-jwt/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/dnspython/1.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/dnspython/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/dogtail/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dotmap/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/dotty-dict/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/drf-jwt/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/drf-nested-routers/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/duckdb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dulwich/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/dwdwfsapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/elevate/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/elmax/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/enaml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/envoy-reader/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/eve/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/evohome-async/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/exchangelib/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/execnet/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/explorerscript/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastapi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastpair/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/fiona/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/flametree/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-httpauth/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-restx/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/flufl/lock.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/fontparts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fpyutils/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/freetype-py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fritzconnection/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/frozenlist/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/fsspec/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/garages-amsterdam/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/gcsfs/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/gensim/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/geoalchemy2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/geojson-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-client/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-generic-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-ign-sismologia-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-nrcan-earthquakes-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-qld-bushfire-alert-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-tfs-incidents-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/georss-wa-dfes-client/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/get-video-properties/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/ghp-import/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/glcontext/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/glymur/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-api-python-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gpapi/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphene/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphite-web/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphql-core/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/graspologic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gremlinpython/default.nix50
-rw-r--r--nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gst-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gtimelog/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/gym/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/ha-ffmpeg/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/ha-philipsjs/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hatasmota/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/haversine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hdate/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/hdbscan/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/hg-evolve/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/hickle/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/hidapi/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/hmmlearn/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/hsluv/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/hstspreload/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/httpcore/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/httpx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/humanize/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/humblewx/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/hupper/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/hwi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hyperlink/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/hyppo/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/i-pi/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/i2c-tools/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/icmplib/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/ics/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/ignite/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/ffmpeg-path.patch39
-rw-r--r--nixpkgs/pkgs/development/python-modules/imageio/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/imap-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/imapclient/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/imbalanced-learn/0.4.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/imbalanced-learn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/img2pdf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/imgaug/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/importlib-resources/2.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/importlib-resources/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/imread/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/incremental/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/inflect/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/infoqscraper/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/injector/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/internetarchive/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipdb/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipympl/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/irc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/isbnlib/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/iso8601/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/isort/4.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/isort/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/itypes/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_classes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_collections/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_functools/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_functools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_itertools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_logging/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_stream/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_stream/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaraco_text/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/johnnycanencrypt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jq/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/jq/jq-py-setup.patch33
-rw-r--r--nixpkgs/pkgs/development/python-modules/json-logging/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonpickle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonref/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonschema/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyter_core/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyter_server/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupytext/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/jxmlease/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-asciimagic/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-autoit-ripper/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-classifier/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-config-extractor/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-dashboard/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-mwdb-reporter/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/karton-yaramatcher/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyring/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch14
-rw-r--r--nixpkgs/pkgs/development/python-modules/kiwisolver/1_1.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/kiwisolver/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/kmapper/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/knack/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/labelbox/default.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/lark-parser/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/lazy-object-proxy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ldaptor/19.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/libarcus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/liblarch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/librosa/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libsavitar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/lightgbm/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/linkify-it-py/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/liquidctl/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/llvmlite/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/lmdb/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/localzone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/locationsharinglib/default.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/mahotas/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/mahotas/disable-impure-tests.patch76
-rw-r--r--nixpkgs/pkgs/development/python-modules/mail-parser/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/makefun/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/mat2/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/matchpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/matplotlib/2.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/matplotlib/default.nix56
-rw-r--r--nixpkgs/pkgs/development/python-modules/matplotlib/setup-darwin.cfg7
-rw-r--r--nixpkgs/pkgs/development/python-modules/matplotlib/setup.cfg5
-rw-r--r--nixpkgs/pkgs/development/python-modules/matrix-api-async/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/matrix-nio/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/mattermostdriver/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/mcstatus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/md-toc/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/mdformat/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/mdit-py-plugins/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/measurement/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mecab-python3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mechanicalsoup/default.nix56
-rw-r--r--nixpkgs/pkgs/development/python-modules/mercantile/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/meshtastic/default.nix57
-rw-r--r--nixpkgs/pkgs/development/python-modules/midiutil/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/mido/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/minikerberos/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/minio/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/mitogen/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/mlrose/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/mlxtend/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/mne-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mock-services/default.nix56
-rw-r--r--nixpkgs/pkgs/development/python-modules/mocket/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mockupdb/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/moderngl/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/moderngl_window/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/monty/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/motioneye-client/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/motor/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/moviepy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/mox3/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/msal/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/msldap/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/multiset/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mutesync/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/mwoauth/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/myjwt/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/myjwt/pinning.patch21
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/nassl/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbclassic/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbdime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbval/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/ndspy/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/netdisco/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/nilearn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nmigen-boards/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nmigen-soc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nmigen/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/notify-py/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/nuitka/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/numba/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/numcodecs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/ofxparse/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/ondilo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/openrazer/common.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/opsdroid_get_image_size/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/oscrypto/default.nix24
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/osmnx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ovoenergy/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/pandas/2.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pandas/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/parfive/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/path.py/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/path.py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pathy/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/pdoc3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/peewee/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/persim/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/pg8000/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pglast/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/pgpy/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/pgspecial/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/phonemizer/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pika/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/pillow-simd/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pip-tools/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/pipx/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/plexapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pluggy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/plugwise/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/poetry/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pomegranate/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/poppler-qt5/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/poppler-qt5/poppler-include-dir.patch12
-rw-r--r--nixpkgs/pkgs/development/python-modules/portend/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/powerline-mem-segment/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/ppscore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/prayer-times-calculator/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/prettytable/1.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/prettytable/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/prison/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/privacyidea/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/psautohint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/psutil/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/pulsectl/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pur/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pure-eval/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/puremagic/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/purl/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/pushbullet/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/pwntools/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-canary/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-cpuinfo/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-desmume/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-dmidecode/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-ubjson/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py3exiv2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/py3status/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyGithub/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyaftership/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyarrow/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyatmo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyatspi/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybids/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybind11/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybindgen/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybrowserid/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycares/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycflow2dot/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/pychannels/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyclimacell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyclipper/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycron/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycurl/default.nix64
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydbus/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydeconz/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydelijn/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydicom/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyexcel-xls/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyezviz/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyface/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyflume/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyfritzhome/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyftdi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygatt/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygbm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygls/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygmt/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygobject/3.36.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygobject/3.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygtfs/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygtkspellcheck/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyhaversion/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyhomematic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyialarm/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyicu/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyjwt/1.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyjwt/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykdl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykeepass/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykerberos/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykmtronic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykoplenti/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylint-django/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylint/1.9.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylint/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyls-black/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylutron-caseta/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylxd/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymata-express/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymavlink/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymazda/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymediainfo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymeteireann/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymfy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymodbus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymorphy2/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymorphy2/dicts-ru.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymsteams/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymumble/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynacl/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynest2d/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynetbox/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynmea2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynndescent/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynobo/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynvim/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyobihai/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyocr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyopencl/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyotgw/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypiserver/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyppeteer/default.nix85
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypresence/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyproj/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyqt/4.x.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyqt/5.x.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyrituals/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroon/default.nix57
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyside/shiboken.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysma/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysmappee/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysmf/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysmt/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysolr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysonos/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyspnego/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/pystray/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysvg-py3/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytaglib/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-annotate/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-bdd/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-black/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-datadir/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-django/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-doctestplus/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-flask/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-forked/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-helpers-namespace/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-html/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-httpx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-metadata/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-mock/2.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-mock/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-mypy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-openfiles/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-ordering/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-qt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-regressions/default.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-repeat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-sanic/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-server-fixtures/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-services/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-xdist/1.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-xdist/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-xprocess/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest/4.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest/5.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-binance/default.nix56
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-engineio/3.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-fontconfig/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-gitlab/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-igraph/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-language-server/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-lz4/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-mapnik/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch18
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-miio/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-redis-lock/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-rtmidi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-simple-hipchat/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-snap7/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-socks/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-toolbox/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-velbus/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-vlc/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/pythonnet/default.nix62
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytmx/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytomlpp/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch-metric-learning/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch/bin.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytube/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyturbojpeg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyu2f/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyusb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvcd/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvesync/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvex/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvisa-py/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvisa/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywebview/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywemo/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywilight/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywizlight/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyxb/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyxnat/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcelemental/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcengine/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit-aer/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit-aqua/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit-ignis/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiskit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/qscintilla-qt5/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/radio_beam/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/ramlfications/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/random2/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/reproject/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/requests-http-signature/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/resolvelib/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/respx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/retworkx/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/rfc3339-validator/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/rich/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/ripser/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/roombapy/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/rst2ansi/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/rtoml/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/runway-python/default.nix50
-rw-r--r--nixpkgs/pkgs/development/python-modules/s3fs/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/sacn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sanic-auth/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sanic-routing/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/sanic-testing/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/sanic/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/sapi-python-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-bio/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-learn/0.20.nix (renamed from nixpkgs/pkgs/development/python-modules/scikitlearn/0.20.nix)0
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-learn/default.nix (renamed from nixpkgs/pkgs/development/python-modules/scikitlearn/default.nix)46
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-optimize/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-tda/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scrapy/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/screenlogicpy/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/seabreeze/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/segments/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/selenium/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/seqeval/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools-declarative-requirements/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools-scm-git-archive/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools-scm/2.nix (renamed from nixpkgs/pkgs/development/python-modules/setuptools_scm/2.nix)0
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools-scm/default.nix (renamed from nixpkgs/pkgs/development/python-modules/setuptools_scm/default.nix)0
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/shap/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sievelib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/signedjson/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/simple-salesforce/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/simpleaudio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/simpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sip/4.x.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/sip/5.x.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/sip/default.nix56
-rw-r--r--nixpkgs/pkgs/development/python-modules/sipsimple/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/sklearn-deap/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skorch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-eventserver/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-icons/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/slimit/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/slither-analyzer/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/slixmpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/smart-open/default.nix (renamed from nixpkgs/pkgs/development/python-modules/smart_open/default.nix)8
-rw-r--r--nixpkgs/pkgs/development/python-modules/smbprotocol/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/smhi-pkg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/snitun/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/snowflake-connector-python/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/snscrape/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/soco/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/solo-python/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/sorl_thumbnail/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy-alignments/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy-pkuseg/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py68
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy-transformers/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy/annotation-test/annotate.py10
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy/legacy.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy/models.json596
-rw-r--r--nixpkgs/pkgs/development/python-modules/spacy/models.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/spectral-cube/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx-autobuild/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx-jinja/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx-markdown-parser/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx/2.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx/default.nix96
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-actdiag/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-blockdiag/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-excel-table/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-nwdiag/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-seqdiag/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/spidev/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/spyder/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/srsly/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/sslyze/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/stack-data/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/staticjinja/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/stem/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/stytra/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/subliminal/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/sumo/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/sunpy/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/surepy/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/syncer/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/tables/default.nix87
-rw-r--r--nixpkgs/pkgs/development/python-modules/tablib/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/tappy/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/telfhash/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/telfhash/telfhash-new-tlsh-hash.patch30
-rw-r--r--nixpkgs/pkgs/development/python-modules/tempora/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tenacity/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow/bin.nix62
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow/binary-hashes.nix62
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow/default.nix8
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/tensorflow/prefetcher.sh25
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow/relax-dependencies-metadata.patch46
-rw-r--r--nixpkgs/pkgs/development/python-modules/tern/0001-Replace-debut-with-debian-inspector.patch40
-rw-r--r--nixpkgs/pkgs/development/python-modules/tern/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/textacy/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/textdistance/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/thinc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tiledb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tilequant/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/timeago/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/tld/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/tls-parser/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/token-bucket/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/tokenizers/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchvision/bin.nix59
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/tox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tqdm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/treq/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/trollius/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/trollius/tests.patch13
-rw-r--r--nixpkgs/pkgs/development/python-modules/ttp/default.nix96
-rw-r--r--nixpkgs/pkgs/development/python-modules/ttp/templates.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/twine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/twitterapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/txaio/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/txgithub/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/txrequests/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/typed-settings/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/uamqp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/uc-micro-py/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/udatetime/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/ufonormalizer/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/ufoprocessor/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ujson/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ujson/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/umap-learn/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/unpaddedbase64/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/uproot/default.nix61
-rw-r--r--nixpkgs/pkgs/development/python-modules/userpath/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/uvloop/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/variants/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/vdf/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/virtualenv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/vispy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/vowpalwabbit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/watchdog/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/watchgod/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/webssh/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/whoosh/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/word2vec/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/wordfreq/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/xdg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xdot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xgboost/default.nix62
-rw-r--r--nixpkgs/pkgs/development/python-modules/xgboost/lib-path-for-python.patch38
-rw-r--r--nixpkgs/pkgs/development/python-modules/xkcdpass/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xknx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xlib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/xmlschema/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/xmlsec/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/yalesmartalarmclient/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/yalexs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yangson/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/yeelight/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/yfinance/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zarr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zeep/default.nix90
-rw-r--r--nixpkgs/pkgs/development/python-modules/zeroconf/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/zipp/1.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zipp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zipstream/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/zulip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/r-modules/default.nix4
-rw-r--r--nixpkgs/pkgs/development/r-modules/generic-builder.nix8
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix18
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/air/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/altair-graphql-client/default.nix38
-rw-r--r--nixpkgs/pkgs/development/tools/ameba/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/bingrep/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/checkov/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/codeql/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/dotenv-linter/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/flow/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/include-what-you-use/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/kcov/default.nix104
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/massif-visualizer/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/nix-linter/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/qcachegrind/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/radare2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/rizin/cutter.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/rizin/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/svlint/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/tflint/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/async-profiler/0001-Fix-darwin-build.patch27
-rw-r--r--nixpkgs/pkgs/development/tools/async-profiler/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/async/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/ats-acc/default.nix22
-rw-r--r--nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/b4/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/backblaze-b2/default.nix32
-rw-r--r--nixpkgs/pkgs/development/tools/bacon/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/bazel-watcher/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/bazelisk/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/boomerang/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/boost-build/darwin-default-toolset.patch12
-rw-r--r--nixpkgs/pkgs/development/tools/boost-build/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/buf/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/apache-maven/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix78
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix34
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json213
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bmake/default.nix67
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bmake/fix-localtime-test.patch23
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch14
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bmake/setup-hook.sh10
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/conan/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/fac/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/leiningen/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/mill/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix266
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/global-plugins.patch14
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix118
-rwxr-xr-xnixpkgs/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap267
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar_ignore_deps.erl43
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/skip-plugins.patch54
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/sbt-extras/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/scons/common.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/tup/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/buildah/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/buildkit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/bunyan-rs/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/cargo-flamegraph/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/cargo-web/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/castxml/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/chit/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/clang-tools/default.nix12
-rwxr-xr-x[-rw-r--r--]nixpkgs/pkgs/development/tools/clang-tools/wrapper19
-rw-r--r--nixpkgs/pkgs/development/tools/clog-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/cloud-nuke/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix43
-rw-r--r--nixpkgs/pkgs/development/tools/clpm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/cmake-language-server/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch13
-rw-r--r--nixpkgs/pkgs/development/tools/conftest/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/fly/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/convco/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/cue/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/database/liquibase/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/database/movine/default.nix54
-rw-r--r--nixpkgs/pkgs/development/tools/database/pgsync/Gemfile.lock4
-rw-r--r--nixpkgs/pkgs/development/tools/database/pgsync/gemset.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/database/webdis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/delve/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/devpi-client/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/devpi-server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/diesel-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/dockle/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/doctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix59
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/gnome-doc-utils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/mdsh/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/dot-http/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/dt-schema/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/earthly/default.nix41
-rw-r--r--nixpkgs/pkgs/development/tools/ecpdap/default.nix37
-rw-r--r--nixpkgs/pkgs/development/tools/electron/default.nix56
-rw-r--r--nixpkgs/pkgs/development/tools/electron/generic.nix4
-rwxr-xr-xnixpkgs/pkgs/development/tools/electron/print-hashes.sh7
-rw-r--r--nixpkgs/pkgs/development/tools/erlang/cuter/default.nix46
-rw-r--r--nixpkgs/pkgs/development/tools/erlang/relx-exe/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/esbuild/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/evans/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/f2c/default.nix32
-rw-r--r--nixpkgs/pkgs/development/tools/flatpak-builder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/flip-link/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/frugal/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/ghp-import/default.nix28
-rw-r--r--nixpkgs/pkgs/development/tools/ginkgo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/gir/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/git-aggregator/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/git-quick-stats/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/git-series/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/glade/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/go-mockery/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/go-task/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/go-toml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/go-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/godot/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/godot/dont_clobber_environment.patch17
-rw-r--r--nixpkgs/pkgs/development/tools/godot/pkg_config_additions.patch23
-rw-r--r--nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/gosec/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/haskell/hyper-haskell/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/haskell/ihaskell/wrapper.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/hobbes/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/ijq/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/irony-server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/java/visualvm/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/just/default.nix29
-rw-r--r--nixpkgs/pkgs/development/tools/kgt/default.nix81
-rw-r--r--nixpkgs/pkgs/development/tools/kind/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/knightos/mkrom/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/knightos/scas/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/krankerl/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/kubie/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/kustomize/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/kustomize/kustomize-sops.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/lazygit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/luaformatter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/metals/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/act/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/autoconf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/autogen/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/binutils/default.nix17
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ccache/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch18
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ccls/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ccls/wrapper13
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cli11/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix26
-rw-r--r--nixpkgs/pkgs/development/tools/misc/creduce/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ctags/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ctags/unused-collision.patch246
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cvise/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/d-feet/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/misc/distcc/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/drush/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/fswatch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gdb/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/misc/global/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gob2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/hydra-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/hydra/common.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/misc/hydra/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/misc/itm-tools/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/jiq/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/libtool/libtool2-macos11.patch32
-rw-r--r--nixpkgs/pkgs/development/tools/misc/libtool/libtool2.nix28
-rw-r--r--nixpkgs/pkgs/development/tools/misc/mdctags/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/msitools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/nimlsp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/opengrok/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ptags/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/misc/rtss/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/sccache/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/stlink/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix57
-rw-r--r--nixpkgs/pkgs/development/tools/misc/strace/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/misc/svls/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/texlab/default.nix22
-rw-r--r--nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/tockloader/default.nix20
-rw-r--r--nixpkgs/pkgs/development/tools/misc/tokei/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/unused/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/wishbone-tool/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/mix2nix/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/nemiver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/node-webkit/nw12.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/nsis/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/nwjs/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/dune/1.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/dune/2.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/merlin/4.x.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocp-build/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/open-policy-agent/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/packet-cli/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/pactorio/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/parinfer-rust/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/byacc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/flex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/re2c/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c-sharp.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-php.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-toml.json10
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tsq.json10
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-yaml.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json10
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/pax-rs/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/picotool/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/default.nix17
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh (renamed from nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh)4
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py72
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix57
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix281
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/pqrs/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/protoc-gen-twirp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/purescript/spago/spago.nix38
-rwxr-xr-xnixpkgs/pkgs/development/tools/purescript/spago/update.sh7
-rw-r--r--nixpkgs/pkgs/development/tools/py-spy/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/pypi2nix/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/qtcreator/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/react-native-debugger/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rebazel/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rep/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rgp/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/richgo/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rnix-lsp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/roswell/default.nix38
-rw-r--r--nixpkgs/pkgs/development/tools/rq/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/rtags/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rubocop/Gemfile2
-rw-r--r--nixpkgs/pkgs/development/tools/rubocop/Gemfile.lock32
-rw-r--r--nixpkgs/pkgs/development/tools/rubocop/default.nix18
-rw-r--r--nixpkgs/pkgs/development/tools/rubocop/gemset.nix105
-rw-r--r--nixpkgs/pkgs/development/tools/rust/bindgen/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-asm/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-binutils/default.nix33
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch56
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix56
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-bitbake/default.nix26
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-bloat/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-c/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-cache/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-criterion/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-cross/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-embed/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-expand/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-feature/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-flash/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-fund/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-generate/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-inspect/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-insta/cargo-lock.patch780
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-insta/default.nix15
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-insta/ignore-rustfmt-test.patch10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-limit/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-msrv/default.nix46
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-play/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-raze/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-readme/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-rr/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-sweep/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-sync-readme/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-udeps/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-valgrind/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-whatfeatures/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-wipe/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-xbuild/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/crate2nix/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/maturin/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/rust/maturin/pyo3-test/generic.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/probe-run/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/rust/racer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/racerd/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch61
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix56
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rustup/default.nix41
-rw-r--r--nixpkgs/pkgs/development/tools/rust/sqlx-cli/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/svd2rust/cargo-lock.patch423
-rw-r--r--nixpkgs/pkgs/development/tools/rust/svd2rust/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/scenebuilder/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/skopeo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/so/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/sqsh/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/stagit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/symfony-cli/default.nix29
-rw-r--r--nixpkgs/pkgs/development/tools/the-way/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/thrust/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/treefmt/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/trunk/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/unity3d/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/unityhub/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/vagrant/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/vagrant/gemset.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/vala-language-server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/vala-lint/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/vultr-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/wally-cli/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock903
-rw-r--r--nixpkgs/pkgs/development/tools/wasm-bindgen-cli/default.nix18
-rw-r--r--nixpkgs/pkgs/development/tools/wasm-pack/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/wrangler/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/xcbuild/platforms.nix30
-rw-r--r--nixpkgs/pkgs/development/tools/xcbuild/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/fetch-source.nix10
-rwxr-xr-xnixpkgs/pkgs/development/tools/yarn2nix-moretea/generate.sh40
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/lib/urlToName.js4
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.lock1388
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.nix1298
-rw-r--r--nixpkgs/pkgs/development/tools/zls/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/zprint/default.nix49
-rw-r--r--nixpkgs/pkgs/development/web/cog/default.nix8
-rw-r--r--nixpkgs/pkgs/development/web/cypress/default.nix10
-rwxr-xr-xnixpkgs/pkgs/development/web/cypress/update.sh10
-rw-r--r--nixpkgs/pkgs/development/web/deno/default.nix15
-rw-r--r--nixpkgs/pkgs/development/web/deno/librusty_v8.nix10
-rw-r--r--nixpkgs/pkgs/development/web/flyctl/default.nix6
-rw-r--r--nixpkgs/pkgs/development/web/insomnia/default.nix8
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/nodejs.nix1
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v12.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v14.nix8
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v15.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v16.nix4
-rw-r--r--nixpkgs/pkgs/development/web/postman/default.nix12
-rw-r--r--nixpkgs/pkgs/development/web/twitter-bootstrap/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/valum/default.nix2
2553 files changed, 72142 insertions, 41973 deletions
diff --git a/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix b/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
index 95586d064d96..9629d90a3453 100644
--- a/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
+++ b/nixpkgs/pkgs/development/arduino/arduino-cli/default.nix
@@ -4,18 +4,18 @@ let
 
   pkg = buildGoModule rec {
     pname = "arduino-cli";
-    version = "0.12.1";
+    version = "0.18.1";
 
     src = fetchFromGitHub {
       owner = "arduino";
       repo = pname;
       rev = version;
-      sha256 = "1jlxs4szss2250zp8rz4bislgnzvqhxyp6z48dhx7zaam03hyf0w";
+      sha256 = "sha256-EtkONrP/uaetsdC47WsyQOE71Gsz0wKUiTiYThj8Kq8=";
     };
 
     subPackages = [ "." ];
 
-    vendorSha256 = "03yj2iar63qm10fw3jh9fvz57c2sqcmngb0mj5jkhbnwf8nl7mhc";
+    vendorSha256 = "sha256-kPIhG6lsH+0IrYfdlzdv/X/cUQb22Xza9Q6ywjKae/4=";
 
     doCheck = false;
 
@@ -32,15 +32,20 @@ let
 
   };
 
+in
+if stdenv.isLinux then
 # buildFHSUserEnv is needed because the arduino-cli downloads compiler
 # toolchains from the internet that have their interpreters pointed at
 # /lib64/ld-linux-x86-64.so.2
-in buildFHSUserEnv {
-  inherit (pkg) name meta;
-
-  runScript = "${pkg.outPath}/bin/arduino-cli";
-
-  extraInstallCommands = ''
-    mv $out/bin/$name $out/bin/arduino-cli
-  '';
-}
+  buildFHSUserEnv
+  {
+    inherit (pkg) name meta;
+
+    runScript = "${pkg.outPath}/bin/arduino-cli";
+
+    extraInstallCommands = ''
+      mv $out/bin/$name $out/bin/arduino-cli
+    '';
+  }
+else
+  pkg
diff --git a/nixpkgs/pkgs/development/arduino/platformio/core.nix b/nixpkgs/pkgs/development/arduino/platformio/core.nix
index 17e87f2cb6c5..ee8bbeabbfee 100644
--- a/nixpkgs/pkgs/development/arduino/platformio/core.nix
+++ b/nixpkgs/pkgs/development/arduino/platformio/core.nix
@@ -1,9 +1,25 @@
-{ stdenv, lib, buildPythonApplication, bottle
-, click, click-completion, colorama, semantic-version
-, lockfile, pyserial, requests
-, tabulate, pyelftools, marshmallow
-, pytest, tox, jsondiff
-, git, spdx-license-list-data
+{ stdenv, lib, buildPythonApplication
+, ajsonrpc
+, bottle
+, click
+, click-completion
+, colorama
+, git
+, jsondiff
+, lockfile
+, marshmallow
+, pyelftools
+, pyserial
+, pytest
+, requests
+, semantic-version
+, spdx-license-list-data
+, starlette
+, tabulate
+, tox
+, uvicorn
+, wsproto
+, zeroconf
 , version, src
 }:
 
@@ -78,10 +94,24 @@ in buildPythonApplication rec {
   pname = "platformio";
   inherit version src;
 
-  propagatedBuildInputs =  [
-    bottle click click-completion colorama git
-    lockfile pyserial requests semantic-version
-    tabulate pyelftools marshmallow
+  propagatedBuildInputs = [
+    ajsonrpc
+    bottle
+    click
+    click-completion
+    colorama
+    git
+    lockfile
+    marshmallow
+    pyelftools
+    pyserial
+    requests
+    semantic-version
+    starlette
+    tabulate
+    uvicorn
+    wsproto
+    zeroconf
   ];
 
   HOME = "/tmp";
@@ -105,6 +135,9 @@ in buildPythonApplication rec {
   postPatch = ''
     substitute platformio/package/manifest/schema.py platformio/package/manifest/schema.py \
       --subst-var-by SPDX_LICENSE_LIST_DATA '${spdx-license-list-data}'
+
+    substituteInPlace setup.py \
+      --replace "zeroconf==0.28.*" "zeroconf"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/arduino/platformio/default.nix b/nixpkgs/pkgs/development/arduino/platformio/default.nix
index 194385e79529..312c2d1044be 100644
--- a/nixpkgs/pkgs/development/arduino/platformio/default.nix
+++ b/nixpkgs/pkgs/development/arduino/platformio/default.nix
@@ -4,14 +4,14 @@
 let
   callPackage = newScope self;
 
-  version = "5.0.4";
+  version = "5.1.1";
 
   # pypi tarballs don't contain tests - https://github.com/platformio/platformio-core/issues/1964
   src = fetchFromGitHub {
     owner = "platformio";
     repo = "platformio-core";
     rev = "v${version}";
-    sha256 = "15jnhlhkk9z6cyzxw065r3080dqan951klwf65p152vfzg79wf84";
+    sha256 = "1m9vq5r4g04n3ckmb3hrrc4ar5v31k6isc76bw4glrn2xb7r8c00";
   };
 
   self = {
diff --git a/nixpkgs/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch b/nixpkgs/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch
index 511d81c3b012..e0016adcf7df 100644
--- a/nixpkgs/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch
+++ b/nixpkgs/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch
@@ -1,11 +1,15 @@
 diff --git a/platformio/package/manifest/schema.py b/platformio/package/manifest/schema.py
-index f293ba5a..a818271f 100644
+index addc4c5..514b0ad 100644
 --- a/platformio/package/manifest/schema.py
 +++ b/platformio/package/manifest/schema.py
-@@ -252,5 +252,4 @@ class ManifestSchema(BaseSchema):
+@@ -253,9 +253,4 @@ class ManifestSchema(BaseSchema):
      @staticmethod
      @memoized(expire="1h")
      def load_spdx_licenses():
--        spdx_data_url = "https://dl.bintray.com/platformio/dl-misc/spdx-licenses-3.json"
+-        version = "3.12"
+-        spdx_data_url = (
+-            "https://raw.githubusercontent.com/spdx/license-list-data/"
+-            "v%s/json/licenses.json" % version
+-        )
 -        return json.loads(fetch_remote_content(spdx_data_url))
 +        return json.load(open("@SPDX_LICENSE_LIST_DATA@/json/licenses.json"))
diff --git a/nixpkgs/pkgs/development/beam-modules/build-erlang-mk.nix b/nixpkgs/pkgs/development/beam-modules/build-erlang-mk.nix
index a94524276b26..d1afa55387d3 100644
--- a/nixpkgs/pkgs/development/beam-modules/build-erlang-mk.nix
+++ b/nixpkgs/pkgs/development/beam-modules/build-erlang-mk.nix
@@ -1,19 +1,21 @@
 { stdenv, writeText, erlang, perl, which, gitMinimal, wget, lib }:
 
-{ name, version
+{ name
+, version
 , src
 , setupHook ? null
-, buildInputs ? []
-, beamDeps ? []
+, buildInputs ? [ ]
+, beamDeps ? [ ]
 , postPatch ? ""
 , compilePorts ? false
 , installPhase ? null
 , buildPhase ? null
 , configurePhase ? null
-, meta ? {}
+, meta ? { }
 , enableDebugInfo ? false
-, buildFlags ? []
-, ... }@attrs:
+, buildFlags ? [ ]
+, ...
+}@attrs:
 
 with lib;
 
@@ -21,11 +23,11 @@ let
   debugInfoFlag = lib.optionalString (enableDebugInfo || erlang.debugInfo) "+debug_info";
 
   shell = drv: stdenv.mkDerivation {
-          name = "interactive-shell-${drv.name}";
-          buildInputs = [ drv ];
-    };
+    name = "interactive-shell-${drv.name}";
+    buildInputs = [ drv ];
+  };
 
-  pkg = self: stdenv.mkDerivation ( attrs // {
+  pkg = self: stdenv.mkDerivation (attrs // {
     app_name = name;
     name = "${name}-${version}";
     inherit version;
@@ -34,11 +36,13 @@ let
 
     inherit src;
 
-    setupHook = if setupHook == null
-    then writeText "setupHook.sh" ''
-       addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
-    ''
-    else setupHook;
+    setupHook =
+      if setupHook == null
+      then
+        writeText "setupHook.sh" ''
+          addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
+        ''
+      else setupHook;
 
     buildInputs = buildInputs ++ [ erlang perl which gitMinimal wget ];
     propagatedBuildInputs = beamDeps;
@@ -47,30 +51,33 @@ let
       ++ lib.optional (enableDebugInfo || erlang.debugInfo) ''ERL_OPTS="$ERL_OPTS +debug_info"''
       ++ buildFlags;
 
-    configurePhase = if configurePhase == null
-    then ''
-      runHook preConfigure
+    configurePhase =
+      if configurePhase == null
+      then ''
+        runHook preConfigure
 
-      # We shouldnt need to do this, but it seems at times there is a *.app in
-      # the repo/package. This ensures we start from a clean slate
-      make SKIP_DEPS=1 clean
+        # We shouldnt need to do this, but it seems at times there is a *.app in
+        # the repo/package. This ensures we start from a clean slate
+        make SKIP_DEPS=1 clean
 
-      runHook postConfigure
-    ''
-    else configurePhase;
+        runHook postConfigure
+      ''
+      else configurePhase;
 
-    buildPhase = if buildPhase == null
-    then ''
+    buildPhase =
+      if buildPhase == null
+      then ''
         runHook preBuild
 
         make $buildFlags "''${buildFlagsArray[@]}"
 
         runHook postBuild
-    ''
-    else buildPhase;
+      ''
+      else buildPhase;
 
-    installPhase =  if installPhase == null
-    then ''
+    installPhase =
+      if installPhase == null
+      then ''
         runHook preInstall
 
         mkdir -p $out/lib/erlang/lib/${name}
@@ -90,13 +97,14 @@ let
         fi
 
         runHook postInstall
-    ''
-    else installPhase;
+      ''
+      else installPhase;
 
     passthru = {
       packageName = name;
       env = shell self;
       inherit beamDeps;
     };
-});
-in fix pkg
+  });
+in
+fix pkg
diff --git a/nixpkgs/pkgs/development/beam-modules/build-mix.nix b/nixpkgs/pkgs/development/beam-modules/build-mix.nix
new file mode 100644
index 000000000000..728d249c97d8
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/build-mix.nix
@@ -0,0 +1,85 @@
+{ stdenv, writeText, elixir, erlang, hex, lib }:
+
+{ name
+, version
+, src
+, buildInputs ? [ ]
+, nativeBuildInputs ? [ ]
+, beamDeps ? [ ]
+, propagatedBuildInputs ? [ ]
+, postPatch ? ""
+, compilePorts ? false
+, meta ? { }
+, enableDebugInfo ? false
+, mixEnv ? "prod"
+, ...
+}@attrs:
+
+with lib;
+let
+  shell = drv: stdenv.mkDerivation {
+    name = "interactive-shell-${drv.name}";
+    buildInputs = [ drv ];
+  };
+
+  pkg = self: stdenv.mkDerivation (attrs // {
+    name = "${name}-${version}";
+    inherit version src;
+
+    MIX_ENV = mixEnv;
+    MIX_DEBUG = if enableDebugInfo then 1 else 0;
+    HEX_OFFLINE = 1;
+
+    # add to ERL_LIBS so other modules can find at runtime.
+    # http://erlang.org/doc/man/code.html#code-path
+    # Mix also searches the code path when compiling with the --no-deps-check flag
+    setupHook = attrs.setupHook or
+      writeText "setupHook.sh" ''
+      addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
+    '';
+
+    buildInputs = buildInputs ++ [ ];
+    nativeBuildInputs = nativeBuildInputs ++ [ elixir hex ];
+    propagatedBuildInputs = propagatedBuildInputs ++ beamDeps;
+
+    buildPhase = attrs.buildPhase or ''
+      runHook preBuild
+      export HEX_HOME="$TEMPDIR/hex"
+      export MIX_HOME="$TEMPDIR/mix"
+      mix compile --no-deps-check
+      runHook postBuild
+    '';
+
+    installPhase = attrs.installPhase or ''
+      runHook preInstall
+
+      # This uses the install path convention established by nixpkgs maintainers
+      # for all beam packages. Changing this will break compatibility with other
+      # builder functions like buildRebar3 and buildErlangMk.
+      mkdir -p "$out/lib/erlang/lib/${name}-${version}"
+
+      # Some packages like db_connection will use _build/shared instead of
+      # honoring the $MIX_ENV variable.
+      for reldir in _build/{$MIX_ENV,shared}/lib/${name}/{src,ebin,priv,include} ; do
+        if test -d $reldir ; then
+          # Some builds produce symlinks (eg: phoenix priv dircetory). They must
+          # be followed with -H flag.
+          cp  -Hrt "$out/lib/erlang/lib/${name}-${version}" "$reldir"
+        fi
+      done
+
+      runHook postInstall
+    '';
+
+    # stripping does not have any effect on beam files
+    # it is however needed for dependencies with NIFs like bcrypt for example
+    dontStrip = false;
+
+    passthru = {
+      packageName = name;
+      env = shell self;
+      inherit beamDeps;
+    };
+  });
+in
+fix pkg
diff --git a/nixpkgs/pkgs/development/beam-modules/build-rebar3.nix b/nixpkgs/pkgs/development/beam-modules/build-rebar3.nix
index 2e2f0a50b317..0dfd68f0993c 100644
--- a/nixpkgs/pkgs/development/beam-modules/build-rebar3.nix
+++ b/nixpkgs/pkgs/development/beam-modules/build-rebar3.nix
@@ -1,30 +1,34 @@
-{ stdenv, writeText, erlang, rebar3, openssl, libyaml,
-  pc, lib }:
+{ stdenv, writeText, erlang, rebar3WithPlugins, openssl, libyaml, lib }:
 
-{ name, version
+{ name
+, version
 , src
 , setupHook ? null
-, buildInputs ? [], beamDeps ? [], buildPlugins ? []
+, buildInputs ? [ ]
+, beamDeps ? [ ]
+, buildPlugins ? [ ]
 , postPatch ? ""
-, compilePorts ? false
 , installPhase ? null
 , buildPhase ? null
 , configurePhase ? null
-, meta ? {}
+, meta ? { }
 , enableDebugInfo ? false
-, ... }@attrs:
+, ...
+}@attrs:
 
 with lib;
 
 let
   debugInfoFlag = lib.optionalString (enableDebugInfo || erlang.debugInfo) "debug-info";
 
-  ownPlugins = buildPlugins ++ (if compilePorts then [pc] else []);
+  rebar3 = rebar3WithPlugins {
+    plugins = buildPlugins;
+  };
 
   shell = drv: stdenv.mkDerivation {
-          name = "interactive-shell-${drv.name}";
-          buildInputs = [ drv ];
-    };
+    name = "interactive-shell-${drv.name}";
+    buildInputs = [ drv ];
+  };
 
   customPhases = filterAttrs
     (_: v: v != null)
@@ -36,35 +40,26 @@ let
     inherit version;
 
     buildInputs = buildInputs ++ [ erlang rebar3 openssl libyaml ];
-    propagatedBuildInputs = unique (beamDeps ++ ownPlugins);
-
-    dontStrip = true;
-    # The following are used by rebar3-nix-bootstrap
-    inherit compilePorts;
-    buildPlugins = ownPlugins;
+    propagatedBuildInputs = unique beamDeps;
 
     inherit src;
 
+    # stripping does not have any effect on beam files
+    # it is however needed for dependencies with NIFs
+    # false is the default but we keep this for readability
+    dontStrip = false;
+
     setupHook = writeText "setupHook.sh" ''
-       addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
+      addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
     '';
 
     postPatch = ''
       rm -f rebar rebar3
     '' + postPatch;
 
-    configurePhase = ''
-      runHook preConfigure
-      ${erlang}/bin/escript ${rebar3.bootstrapper} ${debugInfoFlag}
-      runHook postConfigure
-    '';
-
     buildPhase = ''
       runHook preBuild
-      HOME=. rebar3 compile
-      ${if compilePorts then ''
-        HOME=. rebar3 pc compile
-      '' else ""}
+      HOME=. rebar3 bare compile -path ""
       runHook postBuild
     '';
 
@@ -72,10 +67,9 @@ let
       runHook preInstall
       mkdir -p "$out/lib/erlang/lib/${name}-${version}"
       for reldir in src ebin priv include; do
-        fd="_build/default/lib/${name}/$reldir"
-        [ -d "$fd" ] || continue
-        cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$fd"
-        success=1
+        [ -d "$reldir" ] || continue
+        # $out/lib/erlang/lib is a convention used in nixpkgs for compiled BEAM packages
+        cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$reldir"
       done
       runHook postInstall
     '';
@@ -91,4 +85,4 @@ let
     };
   } // customPhases);
 in
-  fix pkg
+fix pkg
diff --git a/nixpkgs/pkgs/development/beam-modules/default.nix b/nixpkgs/pkgs/development/beam-modules/default.nix
index 6bf9e45e6228..6c33298ff926 100644
--- a/nixpkgs/pkgs/development/beam-modules/default.nix
+++ b/nixpkgs/pkgs/development/beam-modules/default.nix
@@ -18,11 +18,12 @@ let
       inherit callPackage erlang;
       beamPackages = self;
 
+      inherit (callPackage ../tools/build-managers/rebar3 { }) rebar3 rebar3WithPlugins;
       rebar = callPackage ../tools/build-managers/rebar { };
-      rebar3 = callPackage ../tools/build-managers/rebar3 { };
 
-      # rebar3 port compiler plugin is required by buildRebar3
       pc = callPackage ./pc { };
+      rebar3-proper = callPackage ./rebar3-proper { };
+      rebar3-nix = callPackage ./rebar3-nix { };
 
       fetchHex = callPackage ./fetch-hex.nix { };
 
@@ -32,11 +33,19 @@ let
       buildRebar3 = callPackage ./build-rebar3.nix { };
       buildHex = callPackage ./build-hex.nix { };
       buildErlangMk = callPackage ./build-erlang-mk.nix { };
+      buildMix = callPackage ./build-mix.nix { };
       fetchMixDeps = callPackage ./fetch-mix-deps.nix { };
       mixRelease = callPackage ./mix-release.nix { };
 
+      erlang-ls = callPackage ./erlang-ls { };
+
       # BEAM-based languages.
-      elixir = elixir_1_11;
+      elixir = elixir_1_12;
+
+      elixir_1_12 = lib'.callElixir ../interpreters/elixir/1.12.nix {
+        inherit erlang;
+        debugInfo = true;
+      };
 
       elixir_1_11 = lib'.callElixir ../interpreters/elixir/1.11.nix {
         inherit erlang;
@@ -54,10 +63,12 @@ let
       };
 
       elixir_1_8 = lib'.callElixir ../interpreters/elixir/1.8.nix {
-        inherit erlang;
+        erlang = pkgs.beam.interpreters.erlangR23;
         debugInfo = true;
       };
 
+      # Remove old versions of elixir, when the supports fades out:
+      # https://hexdocs.pm/elixir/compatibility-and-deprecations.html
       elixir_1_7 = lib'.callElixir ../interpreters/elixir/1.7.nix {
         inherit erlang;
         debugInfo = true;
@@ -65,21 +76,13 @@ let
 
       elixir_ls = callPackage ./elixir_ls.nix { inherit elixir fetchMixDeps mixRelease; };
 
-      # Remove old versions of elixir, when the supports fades out:
-      # https://hexdocs.pm/elixir/compatibility-and-deprecations.html
-
       lfe = lfe_1_3;
-      lfe_1_2 = lib'.callLFE ../interpreters/lfe/1.2.nix { inherit erlang buildRebar3 buildHex; };
       lfe_1_3 = lib'.callLFE ../interpreters/lfe/1.3.nix { inherit erlang buildRebar3 buildHex; };
 
       # Non hex packages. Examples how to build Rebar/Mix packages with and
       # without helper functions buildRebar3 and buildMix.
       hex = callPackage ./hex { };
       webdriver = callPackage ./webdriver { };
-      relxExe = callPackage ../tools/erlang/relx-exe { };
-
-      # An example of Erlang/C++ package.
-      cuter = callPackage ../tools/erlang/cuter { };
     };
 in
 makeExtensible packages
diff --git a/nixpkgs/pkgs/development/beam-modules/elixir_ls.nix b/nixpkgs/pkgs/development/beam-modules/elixir_ls.nix
index b61db92584d1..5afab0e1babd 100644
--- a/nixpkgs/pkgs/development/beam-modules/elixir_ls.nix
+++ b/nixpkgs/pkgs/development/beam-modules/elixir_ls.nix
@@ -14,7 +14,7 @@ mixRelease rec {
     fetchSubmodules = true;
   };
 
-  mixDeps = fetchMixDeps {
+  mixFodDeps = fetchMixDeps {
     pname = "mix-deps-${pname}";
     inherit src version;
     sha256 = "0r9x223imq4j9pn9niskyaybvk7jmq8dxcyzk7kwfsi128qig1a1";
diff --git a/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix b/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix
new file mode 100644
index 000000000000..b2a69a692783
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix
@@ -0,0 +1,46 @@
+{ fetchFromGitHub, fetchHex, rebar3Relx, buildRebar3, rebar3-proper, lib }:
+let
+  version = "0.16.0";
+  owner = "erlang-ls";
+  repo = "erlang_ls";
+  deps = import ./rebar-deps.nix {
+    inherit fetchHex fetchFromGitHub;
+    builder = buildRebar3;
+    overrides = (self: super: {
+      proper = super.proper.overrideAttrs (_: {
+        configurePhase = "true";
+      });
+    });
+  };
+in rebar3Relx {
+  name = "erlang-ls";
+  inherit version;
+  src = fetchFromGitHub {
+    inherit owner repo;
+    sha256 = "0l09yhj3rsb9zj4cs6a1bcfmi6zbyb3xk1lv494xbyiv5d61vkwm";
+    rev = version;
+  };
+  releaseType = "escript";
+  beamDeps = builtins.attrValues deps;
+  buildPlugins = [ rebar3-proper ];
+  buildPhase = "HOME=. make";
+  # based on https://github.com/erlang-ls/erlang_ls/blob/main/.github/workflows/build.yml
+  # these tests are excessively long and we should probably skip them
+  checkPhase = ''
+    HOME=. epmd -daemon
+    HOME=. rebar3 ct
+    HOME=. rebar3 proper --constraint_tries 100
+  '';
+  doCheck = true;
+  installPhase = ''
+    mkdir -p $out/bin
+    cp _build/default/bin/erlang_ls $out/bin/
+    cp _build/dap/bin/els_dap $out/bin/
+  '';
+  meta = with lib; {
+    homepage = "https://github.com/erlang-ls/erlang_ls";
+    description = "The Erlang Language Server";
+    platforms = platforms.unix;
+    license = licenses.asl20;
+  };
+}
diff --git a/nixpkgs/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix b/nixpkgs/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix
new file mode 100644
index 000000000000..5d55ce0c5236
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix
@@ -0,0 +1,219 @@
+# Generated by rebar3_nix
+let fetchOnly = { src, ... }: src;
+in { builder ? fetchOnly, fetchHex, fetchFromGitHub, overrides ? (x: y: { }) }:
+let
+  self = packages // (overrides self packages);
+  packages = with self; {
+    getopt = builder {
+      name = "getopt";
+      version = "1.0.1";
+      src = fetchHex {
+        pkg = "getopt";
+        version = "1.0.1";
+        sha256 = "sha256-U+Grg7nOtlyWctPno1uAkum9ybPugHIUcaFhwQxZlZw=";
+      };
+      beamDeps = [ ];
+    };
+    zipper = builder {
+      name = "zipper";
+      version = "1.0.1";
+      src = fetchHex {
+        pkg = "zipper";
+        version = "1.0.1";
+        sha256 = "sha256-ah/T4fDMHR31ZCyaDOIXgDZBGwpclkKFHR2idr1zfC0=";
+      };
+      beamDeps = [ ];
+    };
+    quickrand = builder {
+      name = "quickrand";
+      version = "2.0.1";
+      src = fetchHex {
+        pkg = "quickrand";
+        version = "2.0.1";
+        sha256 = "sha256-FNtn1K72uIFYEOyfPM714yS3O1bK42h/mddSuFvdTJY=";
+      };
+      beamDeps = [ ];
+    };
+    providers = builder {
+      name = "providers";
+      version = "1.8.1";
+      src = fetchHex {
+        pkg = "providers";
+        version = "1.8.1";
+        sha256 = "sha256-5FdFrenEdqmkaeoIQOQYqxk2DcRPAaIzME4RikRIa6A=";
+      };
+      beamDeps = [ getopt ];
+    };
+    katana_code = builder {
+      name = "katana_code";
+      version = "0.2.1";
+      src = fetchHex {
+        pkg = "katana_code";
+        version = "0.2.1";
+        sha256 = "sha256-hEitP1bZgU+YoovmUPcZG91QZXXjRcwW1YZmCxD26ZI=";
+      };
+      beamDeps = [ ];
+    };
+    bucs = builder {
+      name = "bucs";
+      version = "1.0.16";
+      src = fetchHex {
+        pkg = "bucs";
+        version = "1.0.16";
+        sha256 = "sha256-/2pccqUArXrsHuO6FkrjxFDq3uiYsNFR4frKGKyNDWI=";
+      };
+      beamDeps = [ ];
+    };
+    yamerl = builder {
+      name = "yamerl";
+      version = "0.8.1";
+      src = fetchHex {
+        pkg = "yamerl";
+        version = "0.8.1";
+        sha256 = "sha256-lssw+dZDRP7Q74qS6fFvIH3mwE3/9PNmdSynn1vOsj8=";
+      };
+      beamDeps = [ ];
+    };
+    uuid = builder {
+      name = "uuid";
+      version = "2.0.1";
+      src = fetchHex {
+        pkg = "uuid_erl";
+        version = "2.0.1";
+        sha256 = "sha256-q1fKzNUfFwAR5fREzoZfhLQWBeSDqe/MRowa+uyHVTs=";
+      };
+      beamDeps = [ quickrand ];
+    };
+    tdiff = builder {
+      name = "tdiff";
+      version = "0.1.2";
+      src = fetchHex {
+        pkg = "tdiff";
+        version = "0.1.2";
+        sha256 = "sha256-4MLhaPmSUqWIl2jVyPHmUQoYRZLUz6BrIneKGNM9eHU=";
+      };
+      beamDeps = [ ];
+    };
+    redbug = builder {
+      name = "redbug";
+      version = "2.0.6";
+      src = fetchHex {
+        pkg = "redbug";
+        version = "2.0.6";
+        sha256 = "sha256-qtlJhnH0q5HqylCZ/oWmFhgVimNuYoaJLE989K8XHQQ=";
+      };
+      beamDeps = [ ];
+    };
+    rebar3_format = builder {
+      name = "rebar3_format";
+      version = "0.8.2";
+      src = fetchHex {
+        pkg = "rebar3_format";
+        version = "0.8.2";
+        sha256 = "sha256-yo/ydjjCFpWT0USdrL6IlWNBk+0zNOkGtU/JfwgfUhM=";
+      };
+      beamDeps = [ katana_code ];
+    };
+    ranch = builder {
+      name = "ranch";
+      version = "2.0.0";
+      src = fetchHex {
+        pkg = "ranch";
+        version = "2.0.0";
+        sha256 = "sha256-wgpIQMfWYjwZgS06fIKLLxvRU+8PEky2nFT+UdikKuA=";
+      };
+      beamDeps = [ ];
+    };
+    jsx = builder {
+      name = "jsx";
+      version = "3.0.0";
+      src = fetchHex {
+        pkg = "jsx";
+        version = "3.0.0";
+        sha256 = "sha256-N77KBDX1yoovRfdqRiEedkGPvvgMNvA2HCSfx1BZ3G0=";
+      };
+      beamDeps = [ ];
+    };
+    erlfmt = builder {
+      name = "erlfmt";
+      version = "git";
+      src = fetchFromGitHub {
+        owner = "whatsapp";
+        repo = "erlfmt";
+        rev = "2e93fc4a646111357642b0179a2a63151868d890";
+        sha256 = "0n7kygycn05aqdp5dyj192mja89l4nxv2wg16qg2c0bmw9s7j2mr";
+      };
+      beamDeps = [ ];
+    };
+    ephemeral = builder {
+      name = "ephemeral";
+      version = "2.0.4";
+      src = fetchHex {
+        pkg = "ephemeral";
+        version = "2.0.4";
+        sha256 = "sha256-Syk9gPdfnEV1/0ucjoiaVoAvQLAYv1fnTxlkTv7myFA=";
+      };
+      beamDeps = [ bucs ];
+    };
+    elvis_core = builder {
+      name = "elvis_core";
+      version = "1.1.1";
+      src = fetchHex {
+        pkg = "elvis_core";
+        version = "1.1.1";
+        sha256 = "sha256-ORyVuqSfJxjX+0mLzwgEbd/CAs8Kq2Oy5DknFIXJ3EI=";
+      };
+      beamDeps = [ katana_code zipper ];
+    };
+    docsh = builder {
+      name = "docsh";
+      version = "0.7.2";
+      src = fetchHex {
+        pkg = "docsh";
+        version = "0.7.2";
+        sha256 = "sha256-Tn20YbsHVA0rw9NmuFE/AZdxLQSVu4V0TzZ9OBUHYTQ=";
+      };
+      beamDeps = [ providers ];
+    };
+    proper_contrib = builder {
+      name = "proper_contrib";
+      version = "0.2.0";
+      src = fetchHex {
+        pkg = "proper_contrib";
+        version = "0.2.0";
+        sha256 = "sha256-jFRRL1zr9JKaG1eqMDfcKk2xe93uOrXUenB14icVCBU=";
+      };
+      beamDeps = [ proper ];
+    };
+    proper = builder {
+      name = "proper";
+      version = "1.3.0";
+      src = fetchHex {
+        pkg = "proper";
+        version = "1.3.0";
+        sha256 = "sha256-SqGS/M3dA/2+UP72IL6dTS+SY1tU9V+4OuwYWZRAPLw=";
+      };
+      beamDeps = [ ];
+    };
+    meck = builder {
+      name = "meck";
+      version = "0.9.0";
+      src = fetchHex {
+        pkg = "meck";
+        version = "0.9.0";
+        sha256 = "sha256-+BPpDdC4myUWoCAaNV6EsavHi1dRqgy/ZpqdhagQrGM=";
+      };
+      beamDeps = [ ];
+    };
+    coveralls = builder {
+      name = "coveralls";
+      version = "2.2.0";
+      src = fetchHex {
+        pkg = "coveralls";
+        version = "2.2.0";
+        sha256 = "sha256-zVTbCqjGS1OSgBicVhns7hOkaiiw8ct3RUTdzBZiBKM=";
+      };
+      beamDeps = [ jsx ];
+    };
+  };
+in self
diff --git a/nixpkgs/pkgs/development/beam-modules/fetch-mix-deps.nix b/nixpkgs/pkgs/development/beam-modules/fetch-mix-deps.nix
index 73365bd1a93e..0c6f4e35a90e 100644
--- a/nixpkgs/pkgs/development/beam-modules/fetch-mix-deps.nix
+++ b/nixpkgs/pkgs/development/beam-modules/fetch-mix-deps.nix
@@ -7,6 +7,7 @@
 , mixEnv ? "prod"
 , debug ? false
 , meta ? { }
+, patches ? []
 , ...
 }@attrs:
 
@@ -36,6 +37,8 @@ stdenvNoCC.mkDerivation (attrs // {
     runHook postConfigure
   '';
 
+  inherit patches;
+
   dontBuild = true;
 
   installPhase = attrs.installPhase or ''
diff --git a/nixpkgs/pkgs/development/beam-modules/mix-release.nix b/nixpkgs/pkgs/development/beam-modules/mix-release.nix
index 320fcaa9c9b7..80e8721302e8 100644
--- a/nixpkgs/pkgs/development/beam-modules/mix-release.nix
+++ b/nixpkgs/pkgs/development/beam-modules/mix-release.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, elixir, erlang, findutils, hex, rebar, rebar3, fetchMixDeps, makeWrapper, git }:
+{ stdenv, lib, elixir, erlang, findutils, hex, rebar, rebar3, fetchMixDeps, makeWrapper, git, ripgrep }:
 
 { pname
 , version
@@ -8,38 +8,48 @@
 , enableDebugInfo ? false
 , mixEnv ? "prod"
 , compileFlags ? [ ]
-, mixDeps ? null
+  # mix fixed output derivation dependencies
+, mixFodDeps ? null
+  # mix dependencies generated by mix2nix
+  # this assumes each dependency is built by buildMix or buildRebar3
+  # each dependency needs to have a setup hook to add the lib path to $ERL_LIBS
+  # this is how mix will find dependencies
+, mixNixDeps ? { }
 , ...
 }@attrs:
 let
-  overridable = builtins.removeAttrs attrs [ "compileFlags" ];
-
+  # remove non standard attributes that cannot be coerced to strings
+  overridable = builtins.removeAttrs attrs [ "compileFlags" "mixNixDeps" ];
 in
+assert mixNixDeps != { } -> mixFodDeps == null;
 stdenv.mkDerivation (overridable // {
-  nativeBuildInputs = nativeBuildInputs ++ [ erlang hex elixir makeWrapper git ];
+  # rg is used as a better grep to search for erlang references in the final release
+  nativeBuildInputs = nativeBuildInputs ++ [ erlang hex elixir makeWrapper git ripgrep ];
+  buildInputs = builtins.attrValues mixNixDeps;
 
   MIX_ENV = mixEnv;
   MIX_DEBUG = if enableDebugInfo then 1 else 0;
   HEX_OFFLINE = 1;
   DEBUG = if enableDebugInfo then 1 else 0; # for Rebar3 compilation
   # the api with `mix local.rebar rebar path` makes a copy of the binary
+  # some older dependencies still use rebar
   MIX_REBAR = "${rebar}/bin/rebar";
   MIX_REBAR3 = "${rebar3}/bin/rebar3";
 
   postUnpack = ''
     export HEX_HOME="$TEMPDIR/hex"
     export MIX_HOME="$TEMPDIR/mix"
-    # compilation of the dependencies will require
-    # that the dependency path is writable
-    # thus a copy to the TEMPDIR is inevitable here
-    export MIX_DEPS_PATH="$TEMPDIR/deps"
 
     # Rebar
     export REBAR_GLOBAL_CONFIG_DIR="$TEMPDIR/rebar3"
     export REBAR_CACHE_DIR="$TEMPDIR/rebar3.cache"
 
-    ${lib.optionalString (mixDeps != null) ''
-      cp --no-preserve=mode -R "${mixDeps}" "$MIX_DEPS_PATH"
+    ${lib.optionalString (mixFodDeps != null) ''
+      # compilation of the dependencies will require
+      # that the dependency path is writable
+      # thus a copy to the TEMPDIR is inevitable here
+      export MIX_DEPS_PATH="$TEMPDIR/deps"
+      cp --no-preserve=mode -R "${mixFodDeps}" "$MIX_DEPS_PATH"
     ''
     }
 
@@ -74,8 +84,10 @@ stdenv.mkDerivation (overridable // {
     runHook postInstall
   '';
 
-  fixupPhase = ''
-    runHook preFixup
+  # Stripping of the binary is intentional
+  # even though it does not affect beam files
+  # it is necessary for NIFs binaries
+  postFixup = ''
     if [ -e "$out/bin/${pname}.bat" ]; then # absent in special cases, i.e. elixir-ls
       rm "$out/bin/${pname}.bat" # windows file
     fi
@@ -86,21 +98,20 @@ stdenv.mkDerivation (overridable // {
     if [ -e $out/releases/COOKIE ]; then # absent in special cases, i.e. elixir-ls
       rm $out/releases/COOKIE
     fi
-    # TODO remove the uneeded reference too erlang
-    # one possible way would be
-    # for f in $(${findutils}/bin/find $out -name start); do
-    #   substituteInPlace $f \
-    #     --replace 'ROOTDIR=${erlang}/lib/erlang' 'ROOTDIR=""'
-    # done
-    # What is left to do is to check that erlang is not required on
-    # the host
-
-    patchShebangs $out
-    runHook postFixup
+    # removing unused erlang reference from resulting derivation to reduce
+    # closure size
+    if [ -e $out/erts-* ]; then
+      echo "ERTS found in $out - removing references to erlang to reduce closure size"
+      # there is a link in $out/erts-*/bin/start always
+      # sometimes there are links in dependencies like bcrypt compiled binaries
+      for file in $(rg "${erlang}/lib/erlang" "$out" --text --files-with-matches); do
+        substituteInPlace "$file" --replace "${erlang}/lib/erlang" "$out"
+      done
+    fi
   '';
-  # TODO figure out how to do a Fixed Output Derivation and add the output hash
-  # This doesn't play well at the moment with Phoenix projects
-  # for example that have frontend dependencies
 
+  # TODO investigate why the resulting closure still has
+  # a reference to erlang.
+  # uncommenting the following will fail the build
   # disallowedReferences = [ erlang ];
 })
diff --git a/nixpkgs/pkgs/development/beam-modules/pc/default.nix b/nixpkgs/pkgs/development/beam-modules/pc/default.nix
index a6d7c1c44de3..2896a325e0e1 100644
--- a/nixpkgs/pkgs/development/beam-modules/pc/default.nix
+++ b/nixpkgs/pkgs/development/beam-modules/pc/default.nix
@@ -2,8 +2,8 @@
 
 buildHex {
   name = "pc";
-  version = "1.6.0";
-  sha256 = "0xq411ig5ny3iilkkkqa4vm3w3dgjc9cfzkqwk8pm13dw9mcm8h0";
+  version = "1.12.0";
+  sha256 = "1gdvixy4j560qjdiv5qjgnl5wl3rrn231dv1m4vdq4b9l4g4p27x";
 
   meta = {
     description = "a rebar3 port compiler for native code";
diff --git a/nixpkgs/pkgs/development/beam-modules/rebar3-nix/default.nix b/nixpkgs/pkgs/development/beam-modules/rebar3-nix/default.nix
new file mode 100644
index 000000000000..ff248700d783
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/rebar3-nix/default.nix
@@ -0,0 +1,18 @@
+{ lib, buildRebar3, fetchFromGitHub }:
+buildRebar3 rec {
+  name = "rebar3_nix";
+  version = "0.1.0";
+  src = fetchFromGitHub {
+    owner = "erlang-nix";
+    repo = name;
+    rev = "v${version}";
+    sha256 = "17w8m4aqqgvhpx3xyc7x2qzsrd3ybzc83ay50zs1gyd1b8csh2wf";
+  };
+
+  meta = {
+    description = "nix integration for rebar3";
+    license = lib.licenses.bsd3;
+    homepage = "https://github.com/erlang-nix/rebar3_nix";
+    maintainers = with lib.maintainers; [ dlesl gleber ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/beam-modules/rebar3-proper/default.nix b/nixpkgs/pkgs/development/beam-modules/rebar3-proper/default.nix
new file mode 100644
index 000000000000..2955beeeb5b5
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/rebar3-proper/default.nix
@@ -0,0 +1,13 @@
+{ lib, buildHex }:
+
+buildHex {
+  name = "rebar3_proper";
+  version = "0.12.1";
+  sha256 = "1f174fb6h2071wr7qbw9aqqvnglzsjlylmyi8215fhrmi38w94b6";
+
+  meta = {
+    description = "rebar3 proper plugin";
+    license = lib.licenses.bsd3;
+    homepage = "https://github.com/ferd/rebar3_proper";
+  };
+}
diff --git a/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix b/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
index 1b0e27891d83..98d10cb87c4f 100644
--- a/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
+++ b/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
@@ -1,8 +1,10 @@
-{ stdenv, writeText, erlang, rebar3, openssl,
+{ stdenv, erlang, rebar3WithPlugins, openssl,
   lib }:
 
 { name, version
 , src
+, beamDeps ? []
+, buildPlugins ? []
 , checkouts ? null
 , releaseType
 , buildInputs ? []
@@ -12,7 +14,6 @@
 , buildPhase ? null
 , configurePhase ? null
 , meta ? {}
-, enableDebugInfo ? false
 , ... }@attrs:
 
 with lib;
@@ -27,28 +28,35 @@ let
     (_: v: v != null)
     { inherit setupHook configurePhase buildPhase installPhase; };
 
-  pkg = self: stdenv.mkDerivation (attrs // {
+  # When using the `beamDeps` argument, it is important that we use
+  # `rebar3WithPlugins` here even when there are no plugins. The vanilla
+  # `rebar3` package is an escript archive with bundled dependencies which can
+  # interfere with those in the app we are trying to build. `rebar3WithPlugins`
+  # doesn't have this issue since it puts its own deps last on the code path.
+  rebar3 = rebar3WithPlugins {
+    plugins = buildPlugins;
+  };
+
+  pkg =
+    assert beamDeps != [] -> checkouts == null;
+    self: stdenv.mkDerivation (attrs // {
 
     name = "${name}-${version}";
     inherit version;
 
-    buildInputs = buildInputs ++ [ erlang rebar3 openssl ];
-    propagatedBuildInputs = [checkouts];
+    buildInputs = buildInputs ++ [ erlang rebar3 openssl ] ++ beamDeps;
 
-    dontStrip = true;
+    # ensure we strip any native binaries (eg. NIFs, ports)
+    stripDebugList = lib.optional (releaseType == "release") "rel";
 
     inherit src;
 
-    setupHook = writeText "setupHook.sh" ''
-       addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
-    '';
+    REBAR_IGNORE_DEPS = beamDeps != [ ];
 
     configurePhase = ''
       runHook preConfigure
-      ${if checkouts != null then
-          "cp --no-preserve=all -R ${checkouts}/_checkouts ."
-        else
-          ""}
+      ${lib.optionalString (checkouts != null)
+      "cp --no-preserve=all -R ${checkouts}/_checkouts ."}
       runHook postConfigure
     '';
 
@@ -65,11 +73,22 @@ let
       dir=${if releaseType == "escript"
             then "bin"
             else "rel"}
-      mkdir -p "$out/$dir"
+      mkdir -p "$out/$dir" "$out/bin"
       cp -R --preserve=mode "_build/${profile}/$dir" "$out"
+      ${lib.optionalString (releaseType == "release")
+        "find $out/rel/*/bin -type f -executable -exec ln -s -t $out/bin {} \\;"}
       runHook postInstall
     '';
 
+    postInstall = ''
+      for dir in $out/rel/*/erts-*; do
+        echo "ERTS found in $dir - removing references to erlang to reduce closure size"
+        for f in $dir/bin/{erl,start}; do
+          substituteInPlace "$f" --replace "${erlang}/lib/erlang" "''${dir/\/erts-*/}"
+        done
+      done
+    '';
+
     meta = {
       inherit (erlang.meta) platforms;
     } // meta;
diff --git a/nixpkgs/pkgs/development/compilers/acme/default.nix b/nixpkgs/pkgs/development/compilers/acme/default.nix
index f8731f554718..cebcbf3b2fa5 100644
--- a/nixpkgs/pkgs/development/compilers/acme/default.nix
+++ b/nixpkgs/pkgs/development/compilers/acme/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "acme";
-  version = "unstable-2020-12-27";
+  version = "unstable-2021-02-14";
 
   src = fetchsvn {
     url = "svn://svn.code.sf.net/p/acme-crossass/code-0/trunk";
-    rev = "314";
-    sha256 = "08zg26rh19nlif7id91nv0syx5n243ssxhfw0nk2r2bhjm5jrjz1";
+    rev = "319";
+    sha256 = "sha256-VifIQ+UEVMKJ+cNS+Xxusazinr5Cgu1lmGuhqj/5Mpk=";
   };
 
   sourceRoot = "code-0-r${src.rev}/src";
diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix
index 0bcfcafaae1b..bcd3309fc398 100644
--- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix
+++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix
@@ -3,8 +3,11 @@
 { swingSupport ? true # not used for now
 , lib, stdenv
 , fetchurl
+, setJavaClassPath
 }:
 
+assert (stdenv.isDarwin && stdenv.isx86_64);
+
 let cpuName = stdenv.hostPlatform.parsed.cpu.name;
     result = stdenv.mkDerivation {
   name = if sourcePerArch.packageType == "jdk"
@@ -30,7 +33,11 @@ let cpuName = stdenv.hostPlatform.parsed.cpu.name;
 
     ln -s $out/Contents/Home/* $out/
 
+    # Propagate the setJavaClassPath setup hook from the JDK so that
+    # any package that depends on the JDK has $CLASSPATH set up
+    # properly.
     mkdir -p $out/nix-support
+    printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
 
     # Set JAVA_HOME automatically.
     cat <<EOF >> $out/nix-support/setup-hook
@@ -49,6 +56,7 @@ let cpuName = stdenv.hostPlatform.parsed.cpu.name;
     platforms = [ "x86_64-darwin" ]; # some inherit jre.meta.platforms
     maintainers = with lib.maintainers; [ taku0 ];
     inherit knownVulnerabilities;
+    mainProgram = "java";
   };
 
 }; in result
diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix
index 95e72facaee2..f61d925036c0 100644
--- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix
+++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix
@@ -5,8 +5,9 @@
 , fetchurl
 , autoPatchelfHook
 , makeWrapper
+, setJavaClassPath
 # minimum dependencies
-, alsaLib
+, alsa-lib
 , fontconfig
 , freetype
 , libffi
@@ -43,7 +44,7 @@ let result = stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    alsaLib # libasound.so wanted by lib/libjsound.so
+    alsa-lib # libasound.so wanted by lib/libjsound.so
     fontconfig
     freetype
     stdenv.cc.cc.lib # libstdc++.so.6
@@ -74,7 +75,11 @@ let result = stdenv.mkDerivation rec {
     # https://github.com/NixOS/nixpkgs/issues/57733
     find "$out" -name 'libfreetype.so*' -delete
 
+    # Propagate the setJavaClassPath setup hook from the JDK so that
+    # any package that depends on the JDK has $CLASSPATH set up
+    # properly.
     mkdir -p $out/nix-support
+    printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
 
     # Set JAVA_HOME automatically.
     cat <<EOF >> "$out/nix-support/setup-hook"
@@ -108,6 +113,7 @@ let result = stdenv.mkDerivation rec {
     platforms = lib.mapAttrsToList (arch: _: arch + "-linux") sourcePerArch; # some inherit jre.meta.platforms
     maintainers = with lib.maintainers; [ taku0 ];
     inherit knownVulnerabilities;
+    mainProgram = "java";
   };
 
 }; in result
diff --git a/nixpkgs/pkgs/development/compilers/avian/default.nix b/nixpkgs/pkgs/development/compilers/avian/default.nix
deleted file mode 100644
index d39aa2806a45..000000000000
--- a/nixpkgs/pkgs/development/compilers/avian/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, zlib, jdk, CoreServices, Foundation }:
-
-stdenv.mkDerivation rec {
-  pname = "avian";
-  version = "1.2.0";
-
-  src = fetchFromGitHub {
-    owner = "readytalk";
-    repo = "avian";
-    rev = "v${version}";
-    sha256 = "1j2y45cpqk3x6a743mgpg7z3ivwm7qc9jy6xirvay7ah1qyxmm48";
-  };
-
-  buildInputs = [ zlib jdk ]
-    ++ lib.optionals stdenv.isDarwin [ CoreServices Foundation ];
-
-  NIX_CFLAGS_COMPILE = "-Wno-error";
-
-  postPatch = ''
-    substituteInPlace makefile \
-        --replace 'g++' 'c++' \
-        --replace 'gcc' 'cc'
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp build/*/avian $out/bin/
-    cp build/*/avian-dynamic $out/bin/
-  '';
-
-  meta = {
-    description = "Lightweight Java virtual machine";
-    longDescription = ''
-      Avian is a lightweight virtual machine and class library designed
-      to provide a useful subset of Java’s features, suitable for
-      building self-contained applications.
-    '';
-    homepage = "https://readytalk.github.io/avian/";
-    license = lib.licenses.isc;
-    platforms = lib.platforms.all;
-    maintainers = [ lib.maintainers.earldouglas ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/cc65/default.nix b/nixpkgs/pkgs/development/compilers/cc65/default.nix
index 6e201ac79339..cb2410ba06a4 100644
--- a/nixpkgs/pkgs/development/compilers/cc65/default.nix
+++ b/nixpkgs/pkgs/development/compilers/cc65/default.nix
@@ -1,8 +1,6 @@
-{ lib, stdenv
-, fetchFromGitHub
-}:
+{ lib, gccStdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation rec {
+gccStdenv.mkDerivation rec {
   pname = "cc65";
   version = "2.19";
 
@@ -13,7 +11,9 @@ stdenv.mkDerivation rec {
     sha256 = "01a15yvs455qp20hri2pbg2wqvcip0d50kb7dibi9427hqk9cnj4";
   };
 
-  makeFlags = [ "PREFIX=${placeholder "out"}"];
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  enableParallelBuilding = true;
 
   meta = with lib; {
     homepage = "https://cc65.github.io/";
@@ -53,6 +53,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.zlib;
     maintainers = with maintainers; [ AndersonTorres ];
-    platforms = with platforms; unix;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/compcert/default.nix b/nixpkgs/pkgs/development/compilers/compcert/default.nix
index 611efb11f445..beafd6414f43 100644
--- a/nixpkgs/pkgs/development/compilers/compcert/default.nix
+++ b/nixpkgs/pkgs/development/compilers/compcert/default.nix
@@ -1,11 +1,11 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, makeWrapper
 , coqPackages, ocamlPackages, coq2html
 , tools ? stdenv.cc
-, version ? "3.8"
+, version ? "3.9"
 }:
 
 let
-  ocaml-pkgs      = with ocamlPackages; [ ocaml findlib menhir ];
+  ocaml-pkgs      = with ocamlPackages; [ ocaml findlib menhir menhirLib ];
   ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux";
   inherit (coqPackages) coq flocq;
   inherit (lib) optional optionalString;
@@ -27,6 +27,37 @@ let param = {
   };
   "3.8" = {
     sha256 = "1gzlyxvw64ca12qql3wnq3bidcx9ygsklv9grjma3ib4hvg7vnr7";
+    patches = [
+     # Support for Coq 8.12.2
+     (fetchpatch {
+        url = "https://github.com/AbsInt/CompCert/commit/06956421b4307054af221c118c5f59593c0e67b9.patch";
+        sha256 = "1f90q6j3xfvnf3z830bkd4d8526issvmdlrjlc95bfsqs78i1yrl";
+      })
+     # Support for Coq 8.13.0
+     (fetchpatch {
+        url = "https://github.com/AbsInt/CompCert/commit/0895388e7ebf9c9f3176d225107e21968919fb97.patch";
+        sha256 = "0qhkzgb2xl5kxys81pldp3mr39gd30lvr2l2wmplij319vp3xavd";
+      })
+     # Support for Coq 8.13.1
+     (fetchpatch {
+        url = "https://github.com/AbsInt/CompCert/commit/6bf310dd678285dc193798e89fc2c441d8430892.patch";
+        sha256 = "026ahhvpj5pksy90f8pnxgmhgwfqk4kwyvcf8x3dsanvz98d4pj5";
+      })
+     # Drop support for Coq < 8.9
+     (fetchpatch {
+        url = "https://github.com/AbsInt/CompCert/commit/7563a5df926a4c6fb1489a7a4c847641c8a35095.patch";
+        sha256 = "05vkslzy399r3dm6dmjs722rrajnyfa30xsyy3djl52isvn4gyfb";
+      })
+     # Support for Coq 8.13.2
+     (fetchpatch {
+        url = "https://github.com/AbsInt/CompCert/commit/48bc183167c4ce01a5c9ea86e49d60530adf7290.patch";
+        sha256 = "0j62lppfk26d1brdp3qwll2wi4gvpx1k70qivpvby5f7dpkrkax1";
+      })
+    ];
+    useExternalFlocq = true;
+  };
+  "3.9" = {
+    sha256 = "1srcz2dqrvmbvv5cl66r34zqkm0hsbryk7gd3i9xx4slahc9zvdb";
     useExternalFlocq = true;
   };
 }."${version}"; in
@@ -51,6 +82,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     substituteInPlace ./configure \
+      --replace \$\{toolprefix\}ar 'ar' \
       --replace '{toolprefix}gcc' '{toolprefix}cc'
   '';
 
diff --git a/nixpkgs/pkgs/development/compilers/copper/default.nix b/nixpkgs/pkgs/development/compilers/copper/default.nix
index dd6af73547af..736004fb580d 100644
--- a/nixpkgs/pkgs/development/compilers/copper/default.nix
+++ b/nixpkgs/pkgs/development/compilers/copper/default.nix
@@ -28,5 +28,6 @@ stdenv.mkDerivation rec {
     homepage = "https://tibleiz.net/copper/";
     license = licenses.bsd2;
     platforms = platforms.x86_64;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/crystal/default.nix b/nixpkgs/pkgs/development/compilers/crystal/default.nix
index 58e4b3b355d2..8fc4a15efced 100644
--- a/nixpkgs/pkgs/development/compilers/crystal/default.nix
+++ b/nixpkgs/pkgs/development/compilers/crystal/default.nix
@@ -146,7 +146,7 @@ let
         "CRYSTAL_CONFIG_VERSION=${version}"
       ];
 
-      LLVM_CONFIG = "${llvmPackages.llvm}/bin/llvm-config";
+      LLVM_CONFIG = "${llvmPackages.llvm.dev}/bin/llvm-config";
 
       FLAGS = [
         "--release"
diff --git a/nixpkgs/pkgs/development/compilers/cudatoolkit/common.nix b/nixpkgs/pkgs/development/compilers/cudatoolkit/common.nix
index c18eb9d534a2..c8a1964814e5 100644
--- a/nixpkgs/pkgs/development/compilers/cudatoolkit/common.nix
+++ b/nixpkgs/pkgs/development/compilers/cudatoolkit/common.nix
@@ -6,7 +6,7 @@ args@
 , developerProgram ? false
 , runPatches ? []
 , addOpenGLRunpath
-, alsaLib
+, alsa-lib
 , expat
 , fetchurl
 , fontconfig
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
   runtimeDependencies = [
     ncurses5 expat python27 zlib glibc
     xorg.libX11 xorg.libXext xorg.libXrender xorg.libXt xorg.libXtst xorg.libXi xorg.libXext
-    gtk2 glib fontconfig freetype unixODBC alsaLib
+    gtk2 glib fontconfig freetype unixODBC alsa-lib
   ];
 
   rpath = "${lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc.lib}/lib64";
@@ -147,6 +147,10 @@ stdenv.mkDerivation rec {
     mkdir -p $out/nix-support
     echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
 
+    # Set the host compiler to be used by nvcc for CMake-based projects:
+    # https://cmake.org/cmake/help/latest/module/FindCUDA.html#input-variables
+    echo "cmakeFlags+=' -DCUDA_HOST_COMPILER=${gcc}/bin'" >> $out/nix-support/setup-hook
+
     # Move some libraries to the lib output so that programs that
     # depend on them don't pull in this entire monstrosity.
     mkdir -p $lib/lib
diff --git a/nixpkgs/pkgs/development/compilers/dale/default.nix b/nixpkgs/pkgs/development/compilers/dale/default.nix
index addd7997d366..bf02d623e525 100644
--- a/nixpkgs/pkgs/development/compilers/dale/default.nix
+++ b/nixpkgs/pkgs/development/compilers/dale/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
     sha256 = "0v4ajrzrqvf279kd7wsd9flrpsav57lzxlwwimk9vnfwh7xpzf9v";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config llvm_6.dev ];
   buildInputs = [ libffi llvm_6 ];
 
   inherit doCheck;
diff --git a/nixpkgs/pkgs/development/compilers/elm/default.nix b/nixpkgs/pkgs/development/compilers/elm/default.nix
index 6981bcbd8fdf..837855d2bddc 100644
--- a/nixpkgs/pkgs/development/compilers/elm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/elm/default.nix
@@ -2,7 +2,7 @@
 , haskell, haskellPackages, nodejs
 , fetchurl, fetchpatch, makeWrapper, writeScriptBin
   # Rust dependecies
-, rustPlatform, openssl, pkg-config, Security
+, curl, rustPlatform, openssl, pkg-config, Security
 }:
 let
   fetchElmDeps = import ./fetchElmDeps.nix { inherit stdenv lib fetchurl; };
@@ -102,7 +102,7 @@ let
 
   elmRustPackages =  {
     elm-json = import ./packages/elm-json.nix {
-      inherit lib rustPlatform fetchurl openssl stdenv pkg-config Security;
+      inherit curl lib rustPlatform fetchurl openssl stdenv pkg-config Security;
     } // {
       meta = with lib; {
         description = "Install, upgrade and uninstall Elm dependencies";
diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/elm-instrument.nix b/nixpkgs/pkgs/development/compilers/elm/packages/elm-instrument.nix
index cf0ba2303e10..18f4d3aff196 100644
--- a/nixpkgs/pkgs/development/compilers/elm/packages/elm-instrument.nix
+++ b/nixpkgs/pkgs/development/compilers/elm/packages/elm-instrument.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, ansi-terminal, ansi-wl-pprint, base, binary
+{ mkDerivation, fetchpatch, ansi-terminal, ansi-wl-pprint, base, binary
 , bytestring, Cabal, cmark, containers, directory, elm-format
 , fetchgit, filepath, free, HUnit, indents, json, mtl
 , optparse-applicative, parsec, process, QuickCheck, quickcheck-io
@@ -14,6 +14,15 @@ mkDerivation {
     rev = "63e15bb5ec5f812e248e61b6944189fa4a0aee4e";
     fetchSubmodules = true;
   };
+  patches = [
+    # Update code after breaking change in optparse-applicative
+    # https://github.com/zwilias/elm-instrument/pull/5
+    (fetchpatch {
+      name = "update-optparse-applicative.patch";
+      url = "https://github.com/mdevlamynck/elm-instrument/commit/c548709d4818aeef315528e842eaf4c5b34b59b4.patch";
+      sha256 = "0ln7ik09n3r3hk7jmwwm46kz660mvxfa71120rkbbaib2falfhsc";
+    })
+  ];
   isLibrary = true;
   isExecutable = true;
   setupHaskellDepends = [ base Cabal directory filepath process ];
diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.nix b/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.nix
index 810c1a91a00b..a480b9e0e1eb 100644
--- a/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.nix
+++ b/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.nix
@@ -1,20 +1,20 @@
-{ lib, rustPlatform, fetchurl, openssl, stdenv, pkg-config, Security }:
+{ lib, curl, rustPlatform, fetchurl, openssl, stdenv, pkg-config, Security }:
 rustPlatform.buildRustPackage rec {
   pname = "elm-json";
-  version = "0.2.7";
+  version = "0.2.10";
 
   src = fetchurl {
     url = "https://github.com/zwilias/elm-json/archive/v${version}.tar.gz";
-    sha256 = "sha256:1b9bhl7rb01ylqjbfd1ccm26lhk4hzwd383rbg89aj2jwjv0w4hs";
+    sha256 = "sha256:03azh7wvl60h6w7ffpvl49s7jr7bxpladcm4fzcasakg26i5a71x";
   };
 
   cargoPatches = [ ./elm-json.patch ];
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ curl openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "0ylniriq073kpiykamkn9mxdaa6kyiza4pvf7gnfq2h1dvbqa6z7";
+  cargoSha256 = "sha256:01zasrqf1va58i52s3kwdkj1rnwy80gv00xi6npfshjirj3ix07f";
 
   # Tests perform networking and therefore can't work in sandbox
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.patch b/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.patch
index 70064d0a4243..d7f434c8eb34 100644
--- a/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.patch
+++ b/nixpkgs/pkgs/development/compilers/elm/packages/elm-json.patch
@@ -1,48 +1,43 @@
 diff --git a/Cargo.lock b/Cargo.lock
-index f4d95f5..6830b3d 100644
+index 5440d72..6e173fa 100644
 --- a/Cargo.lock
 +++ b/Cargo.lock
-@@ -625,14 +625,6 @@ name = "openssl-probe"
- version = "0.1.2"
+@@ -774,15 +774,6 @@ version = "0.1.2"
  source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
  
 -[[package]]
 -name = "openssl-src"
--version = "111.9.0+1.1.1g"
+-version = "111.11.0+1.1.1h"
 -source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "380fe324132bea01f45239fadfec9343adb044615f29930d039bec1ae7b9fa5b"
 -dependencies = [
-- "cc 1.0.54 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cc",
 -]
 -
  [[package]]
  name = "openssl-sys"
- version = "0.9.56"
-@@ -641,7 +633,6 @@ dependencies = [
-  "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-  "cc 1.0.54 (registry+https://github.com/rust-lang/crates.io-index)",
-  "libc 0.2.70 (registry+https://github.com/rust-lang/crates.io-index)",
-- "openssl-src 111.9.0+1.1.1g (registry+https://github.com/rust-lang/crates.io-index)",
-  "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-  "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ version = "0.9.58"
+@@ -792,7 +783,6 @@ dependencies = [
+  "autocfg",
+  "cc",
+  "libc",
+- "openssl-src",
+  "pkg-config",
+  "vcpkg",
  ]
-@@ -1162,7 +1153,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- "checksum object 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
- "checksum once_cell 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
- "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
--"checksum openssl-src 111.9.0+1.1.1g (registry+https://github.com/rust-lang/crates.io-index)" = "a2dbe10ddd1eb335aba3780eb2eaa13e1b7b441d2562fd962398740927f39ec4"
- "checksum openssl-sys 0.9.56 (registry+https://github.com/rust-lang/crates.io-index)" = "f02309a7f127000ed50594f0b50ecc69e7c654e16d41b4e8156d1b3df8e0b52e"
- "checksum petgraph 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "29c127eea4a29ec6c85d153c59dc1213f33ec74cead30fe4730aecc88cc1fd92"
- "checksum pin-project 0.4.17 (registry+https://github.com/rust-lang/crates.io-index)" = "edc93aeee735e60ecb40cf740eb319ff23eab1c5748abfdb5c180e4ce49f7791"
 diff --git a/Cargo.toml b/Cargo.toml
-index adfab25..37ae0c2 100644
+index 4d319f2..6f4d0e5 100644
 --- a/Cargo.toml
 +++ b/Cargo.toml
-@@ -21,7 +21,7 @@ colored = "1.9"
+@@ -21,8 +21,8 @@ colored = "2.0"
  dialoguer = "0.6"
- dirs = "2.0"
+ dirs = "3.0"
  fs2 = "0.4"
 -isahc = { version = "0.9", features = ["static-ssl"] }
+-curl = {version = "0.4", features = ["static-curl", "static-ssl", "force-system-lib-on-osx", "http2"]}
 +isahc = "0.9"
++curl = {version = "0.4", features = ["force-system-lib-on-osx", "http2"]}
+ ctrlc = "3.1"
+ console = "0.12"
  
- [dev-dependencies]
- assert_cmd = "0.11"
diff --git a/nixpkgs/pkgs/development/compilers/flutter/flutter.nix b/nixpkgs/pkgs/development/compilers/flutter/flutter.nix
index 27436d8b6143..5cab3b929f75 100644
--- a/nixpkgs/pkgs/development/compilers/flutter/flutter.nix
+++ b/nixpkgs/pkgs/development/compilers/flutter/flutter.nix
@@ -14,7 +14,7 @@
 , stdenv
 , lib
 , fetchurl
-, alsaLib
+, alsa-lib
 , dbus
 , expat
 , libpulseaudio
@@ -107,7 +107,7 @@ let
         libGLU
 
         # for android emulator
-        alsaLib
+        alsa-lib
         dbus
         expat
         libpulseaudio
diff --git a/nixpkgs/pkgs/development/compilers/fsharp41/default.nix b/nixpkgs/pkgs/development/compilers/fsharp41/default.nix
deleted file mode 100644
index e9f9088df3a6..000000000000
--- a/nixpkgs/pkgs/development/compilers/fsharp41/default.nix
+++ /dev/null
@@ -1,126 +0,0 @@
-# Temporaririly avoid dependency on dotnetbuildhelpers to avoid rebuilding many times while working on it
-
-{ lib, stdenv, fetchurl, pkg-config, autoconf, automake, which, mono, msbuild, dotnetbuildhelpers, dotnetPackages }:
-
-stdenv.mkDerivation rec {
-  pname = "fsharp";
-  version = "4.1.34";
-
-  src = fetchurl {
-    url = "https://github.com/fsharp/fsharp/archive/${version}.tar.gz";
-    sha256 = "0cv6p5pin962vhbpsji40nkckkag5c96kq5qihvg60pc1z821p0i";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [
-    autoconf
-    automake
-    which
-    mono
-    msbuild
-    dotnetbuildhelpers
-    dotnetPackages.FsCheck262
-    dotnetPackages.FSharpCompilerTools
-    dotnetPackages.FSharpCore302
-    dotnetPackages.FSharpCore3125
-    dotnetPackages.FSharpCore4001
-    dotnetPackages.FSharpCore4117
-    dotnetPackages.FSharpData225
-    dotnetPackages.FsLexYacc706
-    dotnetPackages.MicrosoftDiaSymReader
-    dotnetPackages.MicrosoftDiaSymReaderPortablePdb
-    dotnetPackages.NUnit350
-    dotnetPackages.SystemCollectionsImmutable131
-    dotnetPackages.SystemReflectionMetadata
-    dotnetPackages.SystemValueTuple
-  ];
-
-  # https://github.com/mono/mono/tree/fe0f311a848068ab2d17a9b9dd15326e5712d520/packaging/MacSDK/patches
-  # https://github.com/mono/mono/issues/7805
-  patches = [
-    ./fsharp-IsPathRooted-type-inference.patch
-    ./fsharp-string-switchName.patch
-    ./fsharp-path-overloads.patch
-    ./fsharp-GetFileNameWithoutExtension-type-inference.patch
-  ];
-
-  configurePhase = ''
-    substituteInPlace ./autogen.sh --replace "/usr/bin/env sh" "${stdenv.shell}"
-    ./autogen.sh --prefix $out
-  '';
-
-  preBuild = ''
-    substituteInPlace Makefile --replace "MONO_ENV_OPTIONS=\$(monoopts) mono .nuget/NuGet.exe restore packages.config -PackagesDirectory packages -ConfigFile .nuget/NuGet.Config" "true"
-    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.dll\" />" ""
-    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.optdata\" />" ""
-    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.sigdata\" />" ""
-    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.xml\" />" ""
-
-    rm -rf packages
-    mkdir packages
-
-    ln -s ${dotnetPackages.FsCheck262}/lib/dotnet/FsCheck packages/FsCheck.2.6.2
-    ln -s ${dotnetPackages.FSharpCompilerTools}/lib/dotnet/FSharp.Compiler.Tools packages/FSharp.Compiler.Tools.4.1.27
-    ln -s ${dotnetPackages.FSharpCore302}/lib/dotnet/FSharp.Core/ packages/FSharp.Core.3.0.2
-    ln -s ${dotnetPackages.FSharpCore3125}/lib/dotnet/FSharp.Core/ packages/FSharp.Core.3.1.2.5
-    ln -s ${dotnetPackages.FSharpCore4001}/lib/dotnet/FSharp.Core/ packages/FSharp.Core.4.0.0.1
-    ln -s ${dotnetPackages.FSharpCore4117}/lib/dotnet/FSharp.Core/ packages/FSharp.Core.4.1.17
-    ln -s ${dotnetPackages.FSharpData225}/lib/dotnet/FSharp.Data/ packages/FSharp.Data.2.2.5
-    ln -s ${dotnetPackages.FsLexYacc706}/lib/dotnet/FsLexYacc/ packages/FsLexYacc.7.0.6
-    ln -s ${dotnetPackages.MicrosoftDiaSymReader}/lib/dotnet/Microsoft.DiaSymReader/ packages/Microsoft.DiaSymReader.1.1.0
-    ln -s ${dotnetPackages.MicrosoftDiaSymReaderPortablePdb}/lib/dotnet/Microsoft.DiaSymReader.PortablePdb/ packages/Microsoft.DiaSymReader.PortablePdb.1.2.0
-    ln -s ${dotnetPackages.NUnit350}/lib/dotnet/NUnit/ packages/NUnit.3.5.0
-    ln -s ${dotnetPackages.SystemCollectionsImmutable131}/lib/dotnet/System.Collections.Immutable/ packages/System.Collections.Immutable.1.3.1
-    ln -s ${dotnetPackages.SystemReflectionMetadata}/lib/dotnet/System.Reflection.Metadata/ packages/System.Reflection.Metadata.1.4.2
-    ln -s ${dotnetPackages.SystemValueTuple}/lib/dotnet/System.ValueTuple/ packages/System.ValueTuple.4.3.1
-  '';
-
-  # Signing /home/jdanek/nix/nixpkgs/build/fss/fsharp-4.1.34/again/fsharp-4.1.34/Release/fsharp30/net40/bin/FSharp.Core.dll with Mono key
-  # ERROR: Unknown error during processing: System.UnauthorizedAccessException: Access to the path
-  #   "Release/fsharp30/net40/bin/FSharp.Core.dll" is denied.
-  preInstall = ''
-    find Release/ -name FSharp.Core.dll -exec chmod u+w {} \;
-  '';
-
-  # Set up some symlinks for backwards compatibility.
-  postInstall = ''
-    ln -s $out/bin/fsharpc $out/bin/fsc
-    ln -s $out/bin/fsharpi $out/bin/fsi
-    for dll in "$out/lib/mono/fsharp"/FSharp*.dll
-    do
-      create-pkg-config-for-dll.sh "$out/lib/pkgconfig" "$dll"
-    done
-  '';
-
-  doInstallCheck = true;
-  installCheckPhase = ''
-    echo 'printf "int = %i" (6 * 7);;' > script.fsx
-    $out/bin/fsi --exec script.fsx | grep "int = 42"
-    $out/bin/fsharpi --exec script.fsx | grep "int = 42"
-    $out/bin/fsharpiAnyCpu --exec script.fsx | grep "int = 42"
-
-    cat > answer.fs <<EOF
-open System
-
-[<EntryPoint>]
-let main argv =
-    printfn "int = %i" (6 * 7)
-    0
-EOF
-
-    $out/bin/fsc answer.fs
-    ${mono}/bin/mono answer.exe | grep "int = 42"
-  '';
-
-  # To fix this error when running:
-  # The file "/nix/store/path/whatever.exe" is an not a valid CIL image
-  dontStrip = true;
-
-  meta = {
-    description = "A functional CLI language";
-    homepage = "https://fsharp.org/";
-    license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ thoughtpolice raskin ];
-    platforms = with lib.platforms; unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-GetFileNameWithoutExtension-type-inference.patch b/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-GetFileNameWithoutExtension-type-inference.patch
deleted file mode 100644
index 14e9444b1de3..000000000000
--- a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-GetFileNameWithoutExtension-type-inference.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/scripts/fssrgen.fsx b/src/scripts/fssrgen.fsx
-index 0bee9b79e..e6ceda11e 100644
---- a/src/scripts/fssrgen.fsx
-+++ b/src/scripts/fssrgen.fsx
-@@ -329,7 +329,7 @@ let StringBoilerPlate filename =
-     // END BOILERPLATE        
- "            
- 
--let RunMain(filename, outFilename, outXmlFilenameOpt, projectNameOpt) =
-+let RunMain(filename:string, outFilename, outXmlFilenameOpt, projectNameOpt) =
-     try
-         let justfilename = System.IO.Path.GetFileNameWithoutExtension(filename)
-         if justfilename |> Seq.exists (fun c -> not(System.Char.IsLetterOrDigit(c))) then
diff --git a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-IsPathRooted-type-inference.patch b/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-IsPathRooted-type-inference.patch
deleted file mode 100644
index 06dd3e82adc9..000000000000
--- a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-IsPathRooted-type-inference.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-commit c37fce5b3019c7a150203fc3a484885591b194de
-Author: Alexis Christoforides <alexis@thenull.net>
-Date:   Sun Dec 2 00:10:24 2018 -0500
-
-    Help Path.IsPathRooted method overload selection.
-
-    .NET Core, and Mono after merging https://github.com/mono/mono/pull/11342, introduce ambiguity with a new overload.
-
-diff --git a/src/scripts/scriptlib.fsx b/src/scripts/scriptlib.fsx
-index cc797e305..699c7bb93 100644
---- a/src/scripts/scriptlib.fsx
-+++ b/src/scripts/scriptlib.fsx
-@@ -92,7 +92,7 @@ module Scripting =
-
-     module Process =
-
--        let processExePath baseDir exe =
-+        let processExePath baseDir (exe:string) =
-             if Path.IsPathRooted(exe) then exe
-             else
-                 match Path.GetDirectoryName(exe) with
diff --git a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-path-overloads.patch b/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-path-overloads.patch
deleted file mode 100644
index f791317d0802..000000000000
--- a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-path-overloads.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/src/scripts/scriptlib.fsx b/src/scripts/scriptlib.fsx
-index cc797e305..ae8a6d3cc 100644
---- a/src/scripts/scriptlib.fsx
-+++ b/src/scripts/scriptlib.fsx
-@@ -59,12 +59,12 @@ module Scripting =
-
-     let (++) a b = Path.Combine(a,b)
-
--    let getBasename a = Path.GetFileNameWithoutExtension a
--    let getFullPath a = Path.GetFullPath a
--    let getFilename a = Path.GetFileName a
--    let getDirectoryName a = Path.GetDirectoryName a
-+    let getBasename (path: string) = Path.GetFileNameWithoutExtension path
-+    let getFullPath (path: string) = Path.GetFullPath path
-+    let getFilename (path: string) = Path.GetFileName path
-+    let getDirectoryName (path: string) = Path.GetDirectoryName path
-
--    let copyFile source dir =
-+    let copyFile (source: string) dir =
-         let dest = 
-             if not (Directory.Exists dir) then Directory.CreateDirectory dir |>ignore
-             let result = Path.Combine(dir, Path.GetFileName source)
diff --git a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-string-switchName.patch b/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-string-switchName.patch
deleted file mode 100644
index 4b36eaabcafc..000000000000
--- a/nixpkgs/pkgs/development/compilers/fsharp41/fsharp-string-switchName.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/scripts/scriptlib.fsx b/src/scripts/scriptlib.fsx
-index cc797e305..5a7be7d2b 100644
---- a/src/scripts/scriptlib.fsx
-+++ b/src/scripts/scriptlib.fsx
-@@ -36,7 +36,7 @@ module Scripting =
- #if INTERACTIVE
-     let argv = Microsoft.FSharp.Compiler.Interactive.Settings.fsi.CommandLineArgs |> Seq.skip 1 |> Seq.toArray
-
--    let getCmdLineArgOptional switchName = 
-+    let getCmdLineArgOptional (switchName: string) =
-         argv |> Array.filter(fun t -> t.StartsWith(switchName)) |> Array.map(fun t -> t.Remove(0, switchName.Length).Trim()) |> Array.tryHead 
-
-     let getCmdLineArg switchName defaultValue = 
diff --git a/nixpkgs/pkgs/development/compilers/fstar/default.nix b/nixpkgs/pkgs/development/compilers/fstar/default.nix
index 73bf001f7520..7abdf132b51e 100644
--- a/nixpkgs/pkgs/development/compilers/fstar/default.nix
+++ b/nixpkgs/pkgs/development/compilers/fstar/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
   buildInputs = with ocamlPackages; [
-    z3 ocaml findlib batteries menhir stdint
+    z3 ocaml findlib batteries menhir menhirLib stdint
     zarith camlp4 yojson pprint
     ulex ocaml-migrate-parsetree process ppx_deriving ppx_deriving_yojson ocamlbuild
   ];
diff --git a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
index 1502b09cca6a..143681c2a5bb 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
@@ -4,6 +4,7 @@
 , langObjC ? stdenv.targetPlatform.isDarwin
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -48,11 +49,15 @@ assert langAda -> gnatboot != null;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
 let majorVersion = "10";
-    version = "${majorVersion}.2.0";
+    version = "${majorVersion}.3.0";
 
     inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -85,7 +90,7 @@ stdenv.mkDerivation ({
 
   src = fetchurl {
     url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
-    sha256 = "130xdkhmz1bc2kzx061s3sfwk36xah1fw5w332c0nzwwpdl47pdq";
+    sha256 = "0i6378ig6h397zkhd7m4ccwjx5alvzrf2hm27p1pzwjhlv0h9x34";
   };
 
   inherit patches;
@@ -98,9 +103,15 @@ stdenv.mkDerivation ({
 
   hardeningDisable = [ "format" "pie" ];
 
+  postPatch = ''
+    configureScripts=$(find . -name configure)
+    for configureScript in $configureScripts; do
+      patchShebangs $configureScript
+    done
+  ''
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
-  prePatch = lib.optionalString hostPlatform.isDarwin ''
+  + lib.optionalString hostPlatform.isDarwin ''
     substituteInPlace gcc/config/darwin-c.c \
       --replace 'if (stdinc)' 'if (0)'
 
@@ -109,14 +120,8 @@ stdenv.mkDerivation ({
 
     substituteInPlace libgfortran/configure \
       --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
-  '';
-
-  postPatch = ''
-    configureScripts=$(find . -name configure)
-    for configureScript in $configureScripts; do
-      patchShebangs $configureScript
-    done
-  '' + (
+  ''
+  + (
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
       # `/lib/ld*.so'.
@@ -181,13 +186,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform gnatboot langAda langGo langJit;
+    inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -276,13 +280,9 @@ stdenv.mkDerivation ({
       compiler used in the GNU system including the GNU/Linux variant.
     '';
 
-    maintainers = with lib.maintainers; [ synthetica ];
+    maintainers = lib.teams.gcc.members;
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
   };
 }
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/11/Added-mcf-thread-model-support-from-mcfgthread.patch b/nixpkgs/pkgs/development/compilers/gcc/11/Added-mcf-thread-model-support-from-mcfgthread.patch
new file mode 100644
index 000000000000..d9809e828f10
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/gcc/11/Added-mcf-thread-model-support-from-mcfgthread.patch
@@ -0,0 +1,306 @@
+From 86f2f767ddffd9f7c6f1470b987ae7b0d251b988 Mon Sep 17 00:00:00 2001
+From: Liu Hao <lh_mouse@126.com>
+Date: Wed, 25 Apr 2018 21:54:19 +0800
+Subject: [PATCH] Added 'mcf' thread model support from mcfgthread.
+
+Signed-off-by: Liu Hao <lh_mouse@126.com>
+---
+ config/gthr.m4                          |  1 +
+ gcc/config.gcc                          |  3 +++
+ gcc/config/i386/mingw-mcfgthread.h      |  1 +
+ gcc/config/i386/mingw-w64.h             |  2 +-
+ gcc/config/i386/mingw32.h               | 11 ++++++++++-
+ gcc/configure                           |  2 +-
+ gcc/configure.ac                        |  2 +-
+ libatomic/configure.tgt                 |  2 +-
+ libgcc/config.host                      |  6 ++++++
+ libgcc/config/i386/gthr-mcf.h           |  1 +
+ libgcc/config/i386/t-mingw-mcfgthread   |  2 ++
+ libgcc/configure                        |  1 +
+ libstdc++-v3/configure                  |  1 +
+ libstdc++-v3/libsupc++/atexit_thread.cc | 18 ++++++++++++++++++
+ libstdc++-v3/libsupc++/guard.cc         | 23 +++++++++++++++++++++++
+ libstdc++-v3/src/c++11/thread.cc        |  9 +++++++++
+ 16 files changed, 80 insertions(+), 5 deletions(-)
+ create mode 100644 gcc/config/i386/mingw-mcfgthread.h
+ create mode 100644 libgcc/config/i386/gthr-mcf.h
+ create mode 100644 libgcc/config/i386/t-mingw-mcfgthread
+
+diff --git a/config/gthr.m4 b/config/gthr.m4
+index 7b29f1f3327..82e21fe1709 100644
+--- a/config/gthr.m4
++++ b/config/gthr.m4
+@@ -21,6 +21,7 @@ case $1 in
+     tpf)	thread_header=config/s390/gthr-tpf.h ;;
+     vxworks)	thread_header=config/gthr-vxworks.h ;;
+     win32)	thread_header=config/i386/gthr-win32.h ;;
++    mcf)	thread_header=config/i386/gthr-mcf.h ;;
+ esac
+ AC_SUBST(thread_header)
+ ])
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index 46a9029acec..112c24e95a3 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -1758,6 +1758,9 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
+ 	if test x$enable_threads = xposix ; then
+ 		tm_file="${tm_file} i386/mingw-pthread.h"
+ 	fi
++	if test x$enable_threads = xmcf ; then
++		tm_file="${tm_file} i386/mingw-mcfgthread.h"
++	fi
+ 	tm_file="${tm_file} i386/mingw32.h"
+ 	# This makes the logic if mingw's or the w64 feature set has to be used
+ 	case ${target} in
+diff --git a/gcc/config/i386/mingw-mcfgthread.h b/gcc/config/i386/mingw-mcfgthread.h
+new file mode 100644
+index 00000000000..ec381a7798f
+--- /dev/null
++++ b/gcc/config/i386/mingw-mcfgthread.h
+@@ -0,0 +1 @@
++#define TARGET_USE_MCFGTHREAD 1
+diff --git a/gcc/config/i386/mingw-w64.h b/gcc/config/i386/mingw-w64.h
+index 484dc7a9e9f..a15bbeea500 100644
+--- a/gcc/config/i386/mingw-w64.h
++++ b/gcc/config/i386/mingw-w64.h
+@@ -48,7 +48,7 @@ along with GCC; see the file COPYING3.  If not see
+ 		 "%{mwindows:-lgdi32 -lcomdlg32} " \
+      "%{fvtable-verify=preinit:-lvtv -lpsapi; \
+         fvtable-verify=std:-lvtv -lpsapi} " \
+-		 "-ladvapi32 -lshell32 -luser32 -lkernel32"
++		 LIB_MCFGTHREAD "-ladvapi32 -lshell32 -luser32 -lkernel32"
+ 
+ #undef SPEC_32
+ #undef SPEC_64
+diff --git a/gcc/config/i386/mingw32.h b/gcc/config/i386/mingw32.h
+index 0612b87199a..76cea94f3b7 100644
+--- a/gcc/config/i386/mingw32.h
++++ b/gcc/config/i386/mingw32.h
+@@ -32,6 +32,14 @@ along with GCC; see the file COPYING3.  If not see
+ 	 | MASK_STACK_PROBE | MASK_ALIGN_DOUBLE \
+ 	 | MASK_MS_BITFIELD_LAYOUT)
+ 
++#ifndef TARGET_USE_MCFGTHREAD
++#define CPP_MCFGTHREAD()  ((void)0)
++#define LIB_MCFGTHREAD     ""
++#else
++#define CPP_MCFGTHREAD()  (builtin_define("__USING_MCFGTHREAD__"))
++#define LIB_MCFGTHREAD     " -lmcfgthread "
++#endif
++
+ /* See i386/crtdll.h for an alternative definition. _INTEGRAL_MAX_BITS
+    is for compatibility with native compiler.  */
+ #define EXTRA_OS_CPP_BUILTINS()					\
+@@ -50,6 +58,7 @@ along with GCC; see the file COPYING3.  If not see
+ 	  builtin_define_std ("WIN64");				\
+ 	  builtin_define ("_WIN64");				\
+ 	}							\
++	CPP_MCFGTHREAD();	\
+     }								\
+   while (0)
+ 
+@@ -93,7 +102,7 @@ along with GCC; see the file COPYING3.  If not see
+ 		 "%{mwindows:-lgdi32 -lcomdlg32} " \
+      "%{fvtable-verify=preinit:-lvtv -lpsapi; \
+         fvtable-verify=std:-lvtv -lpsapi} " \
+-                 "-ladvapi32 -lshell32 -luser32 -lkernel32"
++                 LIB_MCFGTHREAD "-ladvapi32 -lshell32 -luser32 -lkernel32"
+ 
+ /* Weak symbols do not get resolved if using a Windows dll import lib.
+    Make the unwind registration references strong undefs.  */
+diff --git a/gcc/configure b/gcc/configure
+index 6121e163259..52f0e00efe6 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -11693,7 +11693,7 @@ case ${enable_threads} in
+     target_thread_file='single'
+     ;;
+   aix | dce | lynx | mipssde | posix | rtems | \
+-  single | tpf | vxworks | win32)
++  single | tpf | vxworks | win32 | mcf)
+     target_thread_file=${enable_threads}
+     ;;
+   *)
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index b066cc609e1..4ecdba88de7 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1612,7 +1612,7 @@ case ${enable_threads} in
+     target_thread_file='single'
+     ;;
+   aix | dce | lynx | mipssde | posix | rtems | \
+-  single | tpf | vxworks | win32)
++  single | tpf | vxworks | win32 | mcf)
+     target_thread_file=${enable_threads}
+     ;;
+   *)
+diff --git a/libatomic/configure.tgt b/libatomic/configure.tgt
+index ea8c34f8c71..23134ad7363 100644
+--- a/libatomic/configure.tgt
++++ b/libatomic/configure.tgt
+@@ -145,7 +145,7 @@ case "${target}" in
+   *-*-mingw*)
+ 	# OS support for atomic primitives.
+         case ${target_thread_file} in
+-          win32)
++          win32 | mcf)
+             config_path="${config_path} mingw"
+             ;;
+           posix)
+diff --git a/libgcc/config.host b/libgcc/config.host
+index 11b4acaff55..9fbd38650bd 100644
+--- a/libgcc/config.host
++++ b/libgcc/config.host
+@@ -737,6 +737,9 @@ i[34567]86-*-mingw*)
+ 	  posix)
+ 	    tmake_file="i386/t-mingw-pthread $tmake_file"
+ 	    ;;
++	  mcf)
++	    tmake_file="i386/t-mingw-mcfgthread $tmake_file"
++	    ;;
+ 	esac
+ 	# This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
+ 	if test x$ac_cv_sjlj_exceptions = xyes; then
+@@ -761,6 +764,9 @@ x86_64-*-mingw*)
+ 	  posix)
+ 	    tmake_file="i386/t-mingw-pthread $tmake_file"
+ 	    ;;
++	  mcf)
++	    tmake_file="i386/t-mingw-mcfgthread $tmake_file"
++	    ;;
+ 	esac
+ 	# This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
+ 	if test x$ac_cv_sjlj_exceptions = xyes; then
+diff --git a/libgcc/config/i386/gthr-mcf.h b/libgcc/config/i386/gthr-mcf.h
+new file mode 100644
+index 00000000000..5ea2908361f
+--- /dev/null
++++ b/libgcc/config/i386/gthr-mcf.h
+@@ -0,0 +1 @@
++#include <mcfgthread/gthread.h>
+diff --git a/libgcc/config/i386/t-mingw-mcfgthread b/libgcc/config/i386/t-mingw-mcfgthread
+new file mode 100644
+index 00000000000..4b9b10e32d6
+--- /dev/null
++++ b/libgcc/config/i386/t-mingw-mcfgthread
+@@ -0,0 +1,2 @@
++SHLIB_PTHREAD_CFLAG =
++SHLIB_PTHREAD_LDFLAG = -lmcfgthread
+diff --git a/libgcc/configure b/libgcc/configure
+index b2f3f870844..eff889dc3b3 100644
+--- a/libgcc/configure
++++ b/libgcc/configure
+@@ -5451,6 +5451,7 @@ case $target_thread_file in
+     tpf)	thread_header=config/s390/gthr-tpf.h ;;
+     vxworks)	thread_header=config/gthr-vxworks.h ;;
+     win32)	thread_header=config/i386/gthr-win32.h ;;
++    mcf)	thread_header=config/i386/gthr-mcf.h ;;
+ esac
+ 
+ 
+diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
+index ba094be6f15..979a5ab9ace 100755
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -15187,6 +15187,7 @@ case $target_thread_file in
+     tpf)	thread_header=config/s390/gthr-tpf.h ;;
+     vxworks)	thread_header=config/gthr-vxworks.h ;;
+     win32)	thread_header=config/i386/gthr-win32.h ;;
++    mcf)	thread_header=config/i386/gthr-mcf.h ;;
+ esac
+ 
+ 
+diff --git a/libstdc++-v3/libsupc++/atexit_thread.cc b/libstdc++-v3/libsupc++/atexit_thread.cc
+index de920d714c6..665fb74bd6b 100644
+--- a/libstdc++-v3/libsupc++/atexit_thread.cc
++++ b/libstdc++-v3/libsupc++/atexit_thread.cc
+@@ -25,6 +25,22 @@
+ #include <cstdlib>
+ #include <new>
+ #include "bits/gthr.h"
++
++#ifdef __USING_MCFGTHREAD__
++
++#include <mcfgthread/gthread.h>
++
++extern "C" int
++__cxxabiv1::__cxa_thread_atexit (void (*dtor)(void *),
++				 void *obj, void *dso_handle)
++  _GLIBCXX_NOTHROW
++{
++  return ::_MCFCRT_AtThreadExit((void (*)(_MCFCRT_STD intptr_t))dtor, (_MCFCRT_STD intptr_t)obj) ? 0 : -1;
++  (void)dso_handle;
++}
++
++#else // __USING_MCFGTHREAD__
++
+ #ifdef _GLIBCXX_THREAD_ATEXIT_WIN32
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+@@ -167,3 +183,5 @@ __cxxabiv1::__cxa_thread_atexit (void (*dtor)(void *), void *obj, void */*dso_ha
+ }
+ 
+ #endif /* _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
++
++#endif // __USING_MCFGTHREAD__
+diff --git a/libstdc++-v3/libsupc++/guard.cc b/libstdc++-v3/libsupc++/guard.cc
+index 3a2ec3ad0d6..8b4cc96199b 100644
+--- a/libstdc++-v3/libsupc++/guard.cc
++++ b/libstdc++-v3/libsupc++/guard.cc
+@@ -28,6 +28,27 @@
+ #include <cxxabi.h>
+ #include <exception>
+ #include <new>
++
++#ifdef __USING_MCFGTHREAD__
++
++#include <mcfgthread/gthread.h>
++
++namespace __cxxabiv1 {
++
++extern "C" int __cxa_guard_acquire(__guard *g){
++	return ::_MCFCRT_WaitForOnceFlagForever((::_MCFCRT_OnceFlag *)g) == ::_MCFCRT_kOnceResultInitial;
++}
++extern "C" void __cxa_guard_abort(__guard *g) throw() {
++	::_MCFCRT_SignalOnceFlagAsAborted((::_MCFCRT_OnceFlag *)g);
++}
++extern "C" void __cxa_guard_release(__guard *g) throw() {
++	::_MCFCRT_SignalOnceFlagAsFinished((::_MCFCRT_OnceFlag *)g);
++}
++
++}
++
++#else // __USING_MCFGTHREAD__
++
+ #include <ext/atomicity.h>
+ #include <ext/concurrence.h>
+ #include <bits/atomic_lockfree_defines.h>
+@@ -425,3 +446,5 @@ namespace __cxxabiv1
+ #endif
+   }
+ }
++
++#endif
+diff --git a/libstdc++-v3/src/c++11/thread.cc b/libstdc++-v3/src/c++11/thread.cc
+index 8238817c2e9..0c6a1f85f6f 100644
+--- a/libstdc++-v3/src/c++11/thread.cc
++++ b/libstdc++-v3/src/c++11/thread.cc
+@@ -55,6 +55,15 @@ static inline int get_nprocs()
+ #elif defined(_GLIBCXX_USE_SC_NPROC_ONLN)
+ # include <unistd.h>
+ # define _GLIBCXX_NPROCS sysconf(_SC_NPROC_ONLN)
++#elif defined(_WIN32)
++# include <windows.h>
++static inline int get_nprocs()
++{
++  SYSTEM_INFO sysinfo;
++  GetSystemInfo(&sysinfo);
++  return (int)sysinfo.dwNumberOfProcessors;
++}
++# define _GLIBCXX_NPROCS get_nprocs()
+ #else
+ # define _GLIBCXX_NPROCS 0
+ #endif
+-- 
+2.17.0
+
diff --git a/nixpkgs/pkgs/development/compilers/gcc/11/default.nix b/nixpkgs/pkgs/development/compilers/gcc/11/default.nix
new file mode 100644
index 000000000000..7efc9d589f98
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/gcc/11/default.nix
@@ -0,0 +1,300 @@
+{ lib, stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs
+, langC ? true, langCC ? true, langFortran ? false
+, langAda ? false
+, langObjC ? stdenv.targetPlatform.isDarwin
+, langObjCpp ? stdenv.targetPlatform.isDarwin
+, langGo ? false
+, reproducibleBuild ? true
+, profiledCompiler ? false
+, langJit ? false
+, staticCompiler ? false
+, # N.B. the defult is intentionally not from an `isStatic`. See
+  # https://gcc.gnu.org/install/configure.html - this is about target
+  # platform libraries not host platform ones unlike normal. But since
+  # we can't rebuild those without also rebuilding the compiler itself,
+  # we opt to always build everything unlike our usual policy.
+  enableShared ? true
+, enableLTO ? true
+, texinfo ? null
+, perl ? null # optional, for texi2pod (then pod2man)
+, gmp, mpfr, libmpc, gettext, which, patchelf
+, libelf                      # optional, for link-time optimizations (LTO)
+, isl ? null # optional, for the Graphite optimization framework.
+, zlib ? null
+, gnatboot ? null
+, enableMultilib ? false
+, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
+, name ? "gcc"
+, libcCross ? null
+, threadsCross ? null # for MinGW
+, crossStageStatic ? false
+, # Strip kills static libs of other archs (hence no cross)
+  stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system
+          && stdenv.targetPlatform.system == stdenv.hostPlatform.system
+, gnused ? null
+, cloog # unused; just for compat with gcc4, as we override the parameter on some places
+, buildPackages
+}:
+
+# LTO needs libelf and zlib.
+assert libelf != null -> zlib != null;
+
+# Make sure we get GNU sed.
+assert stdenv.hostPlatform.isDarwin -> gnused != null;
+
+# The go frontend is written in c++
+assert langGo -> langCC;
+assert langAda -> gnatboot != null;
+
+# threadsCross is just for MinGW
+assert threadsCross != null -> stdenv.targetPlatform.isWindows;
+
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
+with lib;
+with builtins;
+
+let majorVersion = "11";
+    version = "${majorVersion}.1.0";
+
+    inherit (stdenv) buildPlatform hostPlatform targetPlatform;
+
+    patches =
+         optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
+      ++ optional noSysDirs ../no-sys-dirs.patch
+      /* ++ optional (hostPlatform != buildPlatform) (fetchpatch { # XXX: Refine when this should be applied
+        url = "https://git.busybox.net/buildroot/plain/package/gcc/${version}/0900-remove-selftests.patch?id=11271540bfe6adafbc133caf6b5b902a816f5f02";
+        sha256 = ""; # TODO: uncomment and check hash when available.
+      }) */
+      ++ optional langAda ../gnat-cflags-11.patch
+      ++ optional langFortran ../gfortran-driving.patch
+      ++ optional (targetPlatform.libc == "musl" && targetPlatform.isPower) ../ppc-musl.patch
+
+      ++ optional (stdenv.isDarwin && stdenv.isAarch64) (fetchpatch {
+        url = "https://github.com/fxcoudert/gcc/compare/releases/gcc-11.1.0...gcc-11.1.0-arm-20210504.diff";
+        sha256 = "sha256-JqCGJAfbOxSmkNyq49aFHteK/RFsCSLQrL9mzUCnaD0=";
+      })
+
+      # Obtain latest patch with ../update-mcfgthread-patches.sh
+      ++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch;
+
+    /* Cross-gcc settings (build == host != target) */
+    crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
+    stageNameAddon = if crossStageStatic then "stage-static" else "stage-final";
+    crossNameAddon = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-${stageNameAddon}-";
+
+in
+
+stdenv.mkDerivation ({
+  pname = "${crossNameAddon}${name}${if stripped then "" else "-debug"}";
+  inherit version;
+
+  builder = ../builder.sh;
+
+  src = fetchurl {
+    url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
+    sha256 = "1pwxrjhsymv90xzh0x42cxfnmhjinf2lnrrf3hj5jq1rm2w6yjjc";
+  };
+
+  inherit patches;
+
+  outputs = [ "out" "man" "info" ] ++ lib.optional (!langJit) "lib";
+  setOutputFlags = false;
+  NIX_NO_SELF_RPATH = true;
+
+  libc_dev = stdenv.cc.libc_dev;
+
+  hardeningDisable = [ "format" "pie" ];
+
+  postPatch = ''
+    configureScripts=$(find . -name configure)
+    for configureScript in $configureScripts; do
+      patchShebangs $configureScript
+    done
+  ''
+  # This should kill all the stdinc frameworks that gcc and friends like to
+  # insert into default search paths.
+  + lib.optionalString hostPlatform.isDarwin ''
+    substituteInPlace gcc/config/darwin-c.c \
+      --replace 'if (stdinc)' 'if (0)'
+
+    substituteInPlace libgcc/config/t-slibgcc-darwin \
+      --replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name ''${!outputLib}/lib/\$(SHLIB_INSTALL_NAME)"
+
+    substituteInPlace libgfortran/configure \
+      --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
+  ''
+  + (
+    if targetPlatform != hostPlatform || stdenv.cc.libc != null then
+      # On NixOS, use the right path to the dynamic linker instead of
+      # `/lib/ld*.so'.
+      let
+        libc = if libcCross != null then libcCross else stdenv.cc.libc;
+      in
+        (
+        '' echo "fixing the \`GLIBC_DYNAMIC_LINKER', \`UCLIBC_DYNAMIC_LINKER', and \`MUSL_DYNAMIC_LINKER' macros..."
+           for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h
+           do
+             grep -q _DYNAMIC_LINKER "$header" || continue
+             echo "  fixing \`$header'..."
+             sed -i "$header" \
+                 -e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc.out}\3"|g' \
+                 -e 's|define[[:blank:]]*MUSL_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define MUSL_DYNAMIC_LINKER\1 "${libc.out}\2"|g'
+           done
+        ''
+        + lib.optionalString (targetPlatform.libc == "musl")
+        ''
+            sed -i gcc/config/linux.h -e '1i#undef LOCAL_INCLUDE_DIR'
+        ''
+        )
+    else "")
+      + lib.optionalString targetPlatform.isAvr ''
+            makeFlagsArray+=(
+               'LIMITS_H_TEST=false'
+            )
+          '';
+
+  inherit noSysDirs staticCompiler crossStageStatic
+    libcCross crossMingw;
+
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
+  nativeBuildInputs = [ texinfo which gettext ]
+    ++ (optional (perl != null) perl);
+
+  # For building runtime libs
+  depsBuildTarget =
+    (
+      if hostPlatform == buildPlatform then [
+        targetPackages.stdenv.cc.bintools # newly-built gcc will be used
+      ] else assert targetPlatform == hostPlatform; [ # build != host == target
+        stdenv.cc
+      ]
+    )
+    ++ optional targetPlatform.isLinux patchelf;
+
+  buildInputs = [
+    gmp mpfr libmpc libelf
+    targetPackages.stdenv.cc.bintools # For linking code at run-time
+  ] ++ (optional (isl != null) isl)
+    ++ (optional (zlib != null) zlib)
+    # The builder relies on GNU sed (for instance, Darwin's `sed' fails with
+    # "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
+    ++ (optional hostPlatform.isDarwin gnused)
+    ++ (optional langAda gnatboot)
+    ;
+
+  depsTargetTarget = optional (!crossStageStatic && threadsCross != null) threadsCross;
+
+  NIX_LDFLAGS = lib.optionalString  hostPlatform.isSunOS "-lm -ldl";
+
+  preConfigure = import ../common/pre-configure.nix {
+    inherit lib;
+    inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit;
+  };
+
+  dontDisableStatic = true;
+
+  configurePlatforms = [ "build" "host" "target" ];
+
+  configureFlags = import ../common/configure-flags.nix {
+    inherit
+      lib
+      stdenv
+      targetPackages
+      crossStageStatic libcCross
+      version
+
+      gmp mpfr libmpc libelf isl
+
+      enableLTO
+      enableMultilib
+      enablePlugin
+      enableShared
+
+      langC
+      langCC
+      langFortran
+      langAda
+      langGo
+      langObjC
+      langObjCpp
+      langJit
+      ;
+  };
+
+  targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
+
+  buildFlags = optional
+    (targetPlatform == hostPlatform && hostPlatform == buildPlatform)
+    (if profiledCompiler then "profiledbootstrap" else "bootstrap");
+
+  dontStrip = !stripped;
+
+  installTargets = optional stripped "install-strip";
+
+  # https://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
+  ${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
+
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
+
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
+    ++ optional (zlib != null) zlib
+  ));
+
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath (optional (zlib != null) zlib));
+
+  inherit
+    (import ../common/extra-target-flags.nix {
+      inherit lib stdenv crossStageStatic libcCross threadsCross;
+    })
+    EXTRA_FLAGS_FOR_TARGET
+    EXTRA_LDFLAGS_FOR_TARGET
+    ;
+
+  passthru = {
+    inherit langC langCC langObjC langObjCpp langAda langFortran langGo version;
+    isGNU = true;
+  };
+
+  enableParallelBuilding = true;
+  inherit enableMultilib;
+
+  inherit (stdenv) is64bit;
+
+  meta = {
+    homepage = "https://gcc.gnu.org/";
+    license = lib.licenses.gpl3Plus;  # runtime support libraries are typically LGPLv3+
+    description = "GNU Compiler Collection, version ${version}"
+      + (if stripped then "" else " (with debugging info)");
+
+    longDescription = ''
+      The GNU Compiler Collection includes compiler front ends for C, C++,
+      Objective-C, Fortran, OpenMP for C/C++/Fortran, and Ada, as well as
+      libraries for these languages (libstdc++, libgomp,...).
+
+      GCC development is a part of the GNU Project, aiming to improve the
+      compiler used in the GNU system including the GNU/Linux variant.
+    '';
+
+    maintainers = lib.teams.gcc.members;
+
+    platforms = lib.platforms.unix;
+  };
+}
+
+// optionalAttrs (targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt" && crossStageStatic) {
+  makeFlags = [ "all-gcc" "all-target-libgcc" ];
+  installTargets = "install-gcc install-target-libgcc";
+}
+
+// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
+)
diff --git a/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix b/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
index 6a2121a82981..98332290a078 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
@@ -4,6 +4,7 @@
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langJava ? false
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -58,6 +59,10 @@ assert langGo -> langCC;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -191,13 +196,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform langJava langGo;
+    inherit version targetPlatform hostPlatform langJava langGo;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -305,11 +309,7 @@ stdenv.mkDerivation ({
 
     maintainers = with lib.maintainers; [ peti veprbl ];
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
     badPlatforms = [ "x86_64-darwin" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix b/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
index 709288559d1c..a15cb770fdfa 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
@@ -4,6 +4,7 @@
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langJava ? false
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -58,6 +59,10 @@ assert langGo -> langCC;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -204,13 +209,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform langJava langGo;
+    inherit version targetPlatform hostPlatform langJava langGo;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -317,11 +321,7 @@ stdenv.mkDerivation ({
 
     maintainers = with lib.maintainers; [ peti veprbl ];
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
     badPlatforms = [ "x86_64-darwin" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
index 93c9dde61fc3..4567e8b43e9f 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
@@ -5,6 +5,7 @@
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langJava ? false
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -61,6 +62,10 @@ assert langAda -> gnatboot != null;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -149,7 +154,7 @@ stdenv.mkDerivation ({
 
   hardeningDisable = [ "format" "pie" ];
 
-  prePatch =
+  postPatch =
     # This should kill all the stdinc frameworks that gcc and friends like to
     # insert into default search paths.
     lib.optionalString hostPlatform.isDarwin ''
@@ -161,9 +166,8 @@ stdenv.mkDerivation ({
 
       substituteInPlace libgfortran/configure \
         --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
-    '';
-
-  postPatch =
+    ''
+  + (
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
       # `/lib/ld*.so'.
@@ -186,7 +190,7 @@ stdenv.mkDerivation ({
             sed -i gcc/config/linux.h -e '1i#undef LOCAL_INCLUDE_DIR'
         ''
         )
-    else null;
+    else "");
 
   inherit noSysDirs staticCompiler langJava crossStageStatic
     libcCross crossMingw;
@@ -227,13 +231,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform gnatboot langJava langAda langGo;
+    inherit version targetPlatform hostPlatform gnatboot langJava langAda langGo;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -340,11 +343,7 @@ stdenv.mkDerivation ({
 
     maintainers = with lib.maintainers; [ peti ];
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
   };
 }
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
index d9b4c639b5ab..44e8b38fdf80 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
@@ -3,6 +3,7 @@
 , langObjC ? stdenv.targetPlatform.isDarwin
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -45,6 +46,10 @@ assert langGo -> langCC;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -109,9 +114,15 @@ stdenv.mkDerivation ({
 
   hardeningDisable = [ "format" "pie" ];
 
+  postPatch = ''
+    configureScripts=$(find . -name configure)
+    for configureScript in $configureScripts; do
+      patchShebangs $configureScript
+    done
+  ''
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
-  prePatch = lib.optionalString hostPlatform.isDarwin ''
+  + lib.optionalString hostPlatform.isDarwin ''
     substituteInPlace gcc/config/darwin-c.c \
       --replace 'if (stdinc)' 'if (0)'
 
@@ -120,14 +131,8 @@ stdenv.mkDerivation ({
 
     substituteInPlace libgfortran/configure \
       --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
-  '';
-
-  postPatch = ''
-    configureScripts=$(find . -name configure)
-    for configureScript in $configureScripts; do
-      patchShebangs $configureScript
-    done
-  '' + (
+  ''
+  + (
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
       # `/lib/ld*.so'.
@@ -192,13 +197,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform langGo;
+    inherit version targetPlatform hostPlatform langGo;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -290,13 +294,9 @@ stdenv.mkDerivation ({
       compiler used in the GNU system including the GNU/Linux variant.
     '';
 
-    maintainers = with lib.maintainers; [ ];
+    maintainers = lib.teams.gcc.members;
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
   };
 }
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/8/default.nix b/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
index 4edc034720c4..b264d37418e8 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
@@ -3,6 +3,7 @@
 , langObjC ? stdenv.targetPlatform.isDarwin
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -45,6 +46,10 @@ assert langGo -> langCC;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -96,9 +101,15 @@ stdenv.mkDerivation ({
 
   hardeningDisable = [ "format" "pie" ];
 
+  postPatch = ''
+    configureScripts=$(find . -name configure)
+    for configureScript in $configureScripts; do
+      patchShebangs $configureScript
+    done
+  ''
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
-  prePatch = lib.optionalString hostPlatform.isDarwin ''
+  + lib.optionalString hostPlatform.isDarwin ''
     substituteInPlace gcc/config/darwin-c.c \
       --replace 'if (stdinc)' 'if (0)'
 
@@ -107,14 +118,8 @@ stdenv.mkDerivation ({
 
     substituteInPlace libgfortran/configure \
       --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
-  '';
-
-  postPatch = ''
-    configureScripts=$(find . -name configure)
-    for configureScript in $configureScripts; do
-      patchShebangs $configureScript
-    done
-  '' + (
+  ''
+  + (
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
       # `/lib/ld*.so'.
@@ -178,13 +183,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform langGo;
+    inherit version targetPlatform hostPlatform langGo;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -272,13 +276,9 @@ stdenv.mkDerivation ({
       compiler used in the GNU system including the GNU/Linux variant.
     '';
 
-    maintainers = with lib.maintainers; [ synthetica ];
+    maintainers = lib.teams.gcc.members;
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
   };
 }
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/9/default.nix b/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
index ca92a8f48450..857263e51e0b 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
@@ -5,6 +5,7 @@
 , langObjCpp ? stdenv.targetPlatform.isDarwin
 , langD ? false
 , langGo ? false
+, reproducibleBuild ? true
 , profiledCompiler ? false
 , langJit ? false
 , staticCompiler ? false
@@ -54,6 +55,10 @@ assert langAda -> gnatboot != null;
 # threadsCross is just for MinGW
 assert threadsCross != null -> stdenv.targetPlatform.isWindows;
 
+# profiledCompiler builds inject non-determinism in one of the compilation stages.
+# If turned on, we can't provide reproducible builds anymore
+assert reproducibleBuild -> profiledCompiler == false;
+
 with lib;
 with builtins;
 
@@ -112,9 +117,15 @@ stdenv.mkDerivation ({
 
   hardeningDisable = [ "format" "pie" ];
 
+  postPatch = ''
+    configureScripts=$(find . -name configure)
+    for configureScript in $configureScripts; do
+      patchShebangs $configureScript
+    done
+  ''
   # This should kill all the stdinc frameworks that gcc and friends like to
   # insert into default search paths.
-  prePatch = lib.optionalString hostPlatform.isDarwin ''
+  + lib.optionalString hostPlatform.isDarwin ''
     substituteInPlace gcc/config/darwin-c.c \
       --replace 'if (stdinc)' 'if (0)'
 
@@ -123,14 +134,8 @@ stdenv.mkDerivation ({
 
     substituteInPlace libgfortran/configure \
       --replace "-install_name \\\$rpath/\\\$soname" "-install_name ''${!outputLib}/lib/\\\$soname"
-  '';
-
-  postPatch = ''
-    configureScripts=$(find . -name configure)
-    for configureScript in $configureScripts; do
-      patchShebangs $configureScript
-    done
-  '' + (
+  ''
+  + (
     if targetPlatform != hostPlatform || stdenv.cc.libc != null then
       # On NixOS, use the right path to the dynamic linker instead of
       # `/lib/ld*.so'.
@@ -195,13 +200,12 @@ stdenv.mkDerivation ({
 
   preConfigure = import ../common/pre-configure.nix {
     inherit lib;
-    inherit version hostPlatform gnatboot langAda langGo langJit;
+    inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit;
   };
 
   dontDisableStatic = true;
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (targetPlatform != hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags = import ../common/configure-flags.nix {
     inherit
@@ -291,13 +295,9 @@ stdenv.mkDerivation ({
       compiler used in the GNU system including the GNU/Linux variant.
     '';
 
-    maintainers = with lib.maintainers; [ synthetica ];
+    maintainers = lib.teams.gcc.members;
 
-    platforms =
-      lib.platforms.linux ++
-      lib.platforms.freebsd ++
-      lib.platforms.illumos ++
-      lib.platforms.darwin;
+    platforms = lib.platforms.unix;
   };
 }
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix b/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix
index 7f7a40f3368d..997771c2abfe 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix
@@ -44,6 +44,9 @@ let
   crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
   crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
 
+  targetPrefix = lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
+                  "${stdenv.targetPlatform.config}-";
+
   crossConfigureFlags =
     # Ensure that -print-prog-name is able to find the correct programs.
     [
@@ -112,6 +115,18 @@ let
 
     # Basic configuration
     ++ [
+      # Force target prefix. The behavior if `--target` and `--host`
+      # are specified is inconsistent: Sometimes specifying `--target`
+      # always causes a prefix to be generated, sometimes it's only
+      # added if the `--host` and `--target` differ. This means that
+      # sometimes there may be a prefix even though nixpkgs doesn't
+      # expect one and sometimes there may be none even though nixpkgs
+      # expects one (since not all information is serialized into the
+      # config attribute). The easiest way out of these problems is to
+      # always set the program prefix, so gcc will conform to our
+      # expectations.
+      "--program-prefix=${targetPrefix}"
+
       (lib.enableFeature enableLTO "lto")
       "--disable-libstdcxx-pch"
       "--without-included-gettext"
@@ -170,7 +185,8 @@ let
     ++ lib.optional javaAwtGtk "--enable-java-awt=gtk"
     ++ lib.optional (langJava && javaAntlr != null) "--with-antlr-jar=${javaAntlr}"
 
-    ++ (import ../common/platform-flags.nix { inherit (stdenv)  targetPlatform; inherit lib; })
+    # TODO: aarch64-darwin has clang stdenv and its arch and cpu flag values are incompatible with gcc
+    ++ lib.optional (!(stdenv.isDarwin && stdenv.isAarch64)) (import ../common/platform-flags.nix { inherit (stdenv)  targetPlatform; inherit lib; })
     ++ lib.optionals (targetPlatform != hostPlatform) crossConfigureFlags
     ++ lib.optional (targetPlatform != hostPlatform) "--disable-bootstrap"
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/common/pre-configure.nix b/nixpkgs/pkgs/development/compilers/gcc/common/pre-configure.nix
index 1c65b4a8ba64..d9977e0ba2f9 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/common/pre-configure.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/common/pre-configure.nix
@@ -1,4 +1,4 @@
-{ lib, version, hostPlatform
+{ lib, version, hostPlatform, targetPlatform
 , gnatboot ? null
 , langAda ? false
 , langJava ? false
@@ -58,3 +58,10 @@ lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
 + lib.optionalString (hostPlatform.isDarwin && langJit) ''
   export STRIP='strip -x'
 ''
+
+# HACK: if host and target config are the same, but the platforms are
+# actually different we need to convince the configure script that it
+# is in fact building a cross compiler although it doesn't believe it.
++ lib.optionalString (targetPlatform.config == hostPlatform.config && targetPlatform != hostPlatform) ''
+  substituteInPlace configure --replace is_cross_compiler=no is_cross_compiler=yes
+''
diff --git a/nixpkgs/pkgs/development/compilers/gcc/gnat-cflags-11.patch b/nixpkgs/pkgs/development/compilers/gcc/gnat-cflags-11.patch
new file mode 100644
index 000000000000..03ef28664524
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/gcc/gnat-cflags-11.patch
@@ -0,0 +1,35 @@
+diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
+index 4e74252bd74..0d848b5b4e3 100644
+--- a/gcc/ada/gcc-interface/Makefile.in
++++ b/gcc/ada/gcc-interface/Makefile.in
+@@ -111,7 +111,7 @@ NO_OMIT_ADAFLAGS = -fno-omit-frame-pointer
+ NO_SIBLING_ADAFLAGS = -fno-optimize-sibling-calls
+ NO_REORDER_ADAFLAGS = -fno-toplevel-reorder
+ GNATLIBFLAGS = -W -Wall -gnatg -nostdinc
+-GNATLIBCFLAGS = -g -O2
++GNATLIBCFLAGS = -g -O2 $(CFLAGS_FOR_TARGET)
+ # Pretend that _Unwind_GetIPInfo is available for the target by default.  This
+ # should be autodetected during the configuration of libada and passed down to
+ # here, but we need something for --disable-libada and hope for the best.
+@@ -198,7 +198,7 @@ RTSDIR = rts$(subst /,_,$(MULTISUBDIR))
+ # Link flags used to build gnat tools.  By default we prefer to statically
+ # link with libgcc to avoid a dependency on shared libgcc (which is tricky
+ # to deal with as it may conflict with the libgcc provided by the system).
+-GCC_LINK_FLAGS=-static-libstdc++ -static-libgcc
++GCC_LINK_FLAGS=-static-libstdc++ -static-libgcc $(CFLAGS_FOR_TARGET)
+
+ # End of variables for you to override.
+
+diff --git a/libada/Makefile.in b/libada/Makefile.in
+index 522b9207326..ca866c74471 100644
+--- a/libada/Makefile.in
++++ b/libada/Makefile.in
+@@ -59,7 +59,7 @@ LDFLAGS=
+ CFLAGS=-g
+ PICFLAG = @PICFLAG@
+ GNATLIBFLAGS= -W -Wall -gnatpg -nostdinc
+-GNATLIBCFLAGS= -g -O2
++GNATLIBCFLAGS= -g -O2 $(CFLAGS)
+ GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) $(CFLAGS_FOR_TARGET) \
+        -fexceptions -DIN_RTS @have_getipinfo@ @have_capability@
+
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
index 02373d00b10f..ad1a47e5cc9f 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
@@ -31,6 +31,8 @@ let
     else
       "${lib.getLib glibc}/lib/ld-linux*";
 
+  downloadsUrl = "https://downloads.haskell.org/ghc";
+
 in
 
 stdenv.mkDerivation rec {
@@ -41,23 +43,23 @@ stdenv.mkDerivation rec {
   # https://downloads.haskell.org/~ghc/8.10.2/
   src = fetchurl ({
     i686-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
       sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
     };
     x86_64-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
       sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
     };
     armv7l-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
       sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
     };
     aarch64-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
       sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
     };
     x86_64-darwin = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
       sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
     };
   }.${stdenv.hostPlatform.system}
@@ -210,13 +212,17 @@ stdenv.mkDerivation rec {
   passthru = {
     targetPrefix = "";
     enableShared = true;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-${version}";
   };
 
-  meta = {
+  meta = rec {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
     license = lib.licenses.bsd3;
     platforms = ["x86_64-linux" "armv7l-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+    hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
     maintainers = with lib.maintainers; [ lostnet ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
index 075e9bf9d548..da957f93520b 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
@@ -18,7 +18,7 @@
 
 , # If enabled, GHC will be built with the GPL-free but slower integer-simple
   # library instead of the faster but GPLed integer-gmp library.
-  enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
+  enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
 
 , # If enabled, use -fPIC when compiling static libs.
   enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix b/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
index ca984c36957d..8a0994b8b6a5 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
@@ -28,6 +28,8 @@ let
     else
       "${lib.getLib glibc}/lib/ld-linux*";
 
+  downloadsUrl = "https://downloads.haskell.org/ghc";
+
 in
 
 stdenv.mkDerivation rec {
@@ -39,22 +41,22 @@ stdenv.mkDerivation rec {
   src = fetchurl ({
     i686-linux = {
       # Don't use the Fedora27 build (as below) because there isn't one!
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
       sha256 = "1p2h29qghql19ajk755xa0yxkn85slbds8m9n5196ris743vkp8w";
     };
     x86_64-linux = {
       # This is the Fedora build because it links against ncurses6 where the
       # deb9 one links against ncurses5, see here
       # https://github.com/NixOS/nixpkgs/issues/85924 for a discussion
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-fedora27-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-fedora27-linux.tar.xz";
       sha256 = "18dlqm5d028fqh6ghzn7pgjspr5smw030jjzl3kq6q1kmwzbay6g";
     };
     aarch64-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-aarch64-ubuntu18.04-linux.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-ubuntu18.04-linux.tar.xz";
       sha256 = "11n7l2a36i5vxzzp85la2555q4m34l747g0pnmd81cp46y85hlhq";
     };
     x86_64-darwin = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
+      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
       sha256 = "0s9188vhhgf23q3rjarwhbr524z6h2qga5xaaa2pma03sfqvvhfz";
     };
   }.${stdenv.hostPlatform.system}
@@ -169,8 +171,14 @@ stdenv.mkDerivation rec {
   passthru = {
     targetPrefix = "";
     enableShared = true;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-${version}";
   };
 
-  meta.license = lib.licenses.bsd3;
-  meta.platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+  meta = rec {
+    license = lib.licenses.bsd3;
+    platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+    hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix b/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
index 9bef190ad1c3..b0336ad3992d 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
@@ -18,7 +18,7 @@
 
 , # If enabled, GHC will be built with the GPL-free but slower integer-simple
   # library instead of the faster but GPLed integer-gmp library.
-  enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
+  enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
 
 , # If enabled, use -fPIC when compiling static libs.
   enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix b/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
index 83f3534d3e4a..58beef5d6882 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
@@ -19,7 +19,7 @@
 
 , # If enabled, GHC will be built with the GPL-free but slower integer-simple
   # library instead of the faster but GPLed integer-gmp library.
-  enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
+  enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
 
 , # If enabled, use -fPIC when compiling static libs.
   enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
diff --git a/nixpkgs/pkgs/development/compilers/ghc/head.nix b/nixpkgs/pkgs/development/compilers/ghc/head.nix
index 3ba88763117d..a0ca13270a24 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/head.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/head.nix
@@ -10,7 +10,9 @@
 , # GHC can be built with system libffi or a bundled one.
   libffi ? null
 
-, enableDwarf ? !stdenv.targetPlatform.isDarwin &&
+  # Libdw.c only supports x86_64, i686 and s390x
+, enableDwarf ? stdenv.targetPlatform.isx86 &&
+                !stdenv.targetPlatform.isDarwin &&
                 !stdenv.targetPlatform.isWindows
 , elfutils # for DWARF support
 
@@ -22,7 +24,7 @@
 
 , # If enabled, GHC will be built with the GPL-free but slightly slower native
   # bignum backend instead of the faster but GPLed gmp backend.
-  enableNativeBignum ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms)
+  enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp)
 , gmp
 
 , # If enabled, use -fPIC when compiling static libs.
@@ -38,7 +40,7 @@
 , # Whether to build terminfo.
   enableTerminfo ? !stdenv.targetPlatform.isWindows
 
-, version ? "8.11.20200824"
+, version ? "9.3.20210504"
 , # What flavour to build. An empty string indicates no
   # specific flavour and falls back to ghc default values.
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
@@ -110,8 +112,8 @@ stdenv.mkDerivation (rec {
 
   src = fetchgit {
     url = "https://gitlab.haskell.org/ghc/ghc.git/";
-    rev = "3f50154591ada9064351ccec4adfe6df53ca2439";
-    sha256 = "1w2p5bc74aswspzvgvrhcb95hvj5ky38rgqqjvrri19z2qyiky6d";
+    rev = "049c3a83fbce67e58e70c727d89e8331608a4e04";
+    sha256 = "0dk7c9ywam9fj33lqzpwxhiwz017m58j6ixvc8b07kzp7kskaxq7";
   };
 
   enableParallelBuilding = true;
@@ -139,6 +141,9 @@ stdenv.mkDerivation (rec {
     export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
     export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
 
+    # otherwise haddock fails when generating the compiler docs
+    export LANG=C.UTF-8
+
     echo -n "${buildMK dontStrip}" > mk/build.mk
     echo ${version} > VERSION
     echo ${src.rev} > GIT_COMMIT_ID
@@ -256,6 +261,8 @@ stdenv.mkDerivation (rec {
     description = "The Glasgow Haskell Compiler";
     maintainers = with lib.maintainers; [ marcweber andres peti ];
     inherit (ghc.meta) license platforms;
+    # ghcHEAD times out on aarch64-linux on Hydra.
+    hydraPlatforms = builtins.filter (p: p != "aarch64-linux") ghc.meta.platforms;
   };
 
   dontStrip = (targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm);
diff --git a/nixpkgs/pkgs/development/compilers/ghdl/default.nix b/nixpkgs/pkgs/development/compilers/ghdl/default.nix
index ec07331dc52b..e7886eb8f5ed 100644
--- a/nixpkgs/pkgs/development/compilers/ghdl/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ghdl/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [ "--enable-synth" ] ++ lib.optional (backend == "llvm")
-    "--with-llvm-config=${llvm}/bin/llvm-config";
+    "--with-llvm-config=${llvm.dev}/bin/llvm-config";
 
   hardeningDisable = [ "format" ];
 
diff --git a/nixpkgs/pkgs/development/compilers/gleam/default.nix b/nixpkgs/pkgs/development/compilers/gleam/default.nix
index 474a960d35f2..7bce45c455f2 100644
--- a/nixpkgs/pkgs/development/compilers/gleam/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gleam/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gleam";
-  version = "0.14.4";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "gleam-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-iW4mH9zLJzD+E+H/b0NAbPWzfSbDmRpirDwrLlyZppI=";
+    sha256 = "sha256-vBxVGIgg2BpVvEYjmX99YSf1zy9aWOHr6ftaYxJWkzY=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++
     lib.optionals stdenv.isDarwin [ Security libiconv ];
 
-  cargoSha256 = "sha256-ErLwrve2Fpyg9JaH3y7VIYuFcOPVP++XAIrRvv5dGm0=";
+  cargoSha256 = "sha256-2zHc7xk5MuEUO9YGifSWbgRTi51ZUk84QLro94LsBtQ=";
 
   meta = with lib; {
     description = "A statically typed language for the Erlang VM";
diff --git a/nixpkgs/pkgs/development/compilers/go/1.14.nix b/nixpkgs/pkgs/development/compilers/go/1.14.nix
index 92c1cbdfc18b..e8a90ac0b8df 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.14.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.14.nix
@@ -1,6 +1,20 @@
-{ lib, stdenv, fetchurl, tzdata, iana-etc, runCommand
-, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation
-, mailcap, runtimeShell
+{ lib
+, stdenv
+, fetchurl
+, tzdata
+, iana-etc
+, runCommand
+, perl
+, which
+, pkg-config
+, patch
+, procps
+, pcre
+, cacert
+, Security
+, Foundation
+, mailcap
+, runtimeShell
 , buildPackages
 , pkgsBuildTarget
 , fetchpatch
@@ -8,14 +22,9 @@
 }:
 
 let
-
-  inherit (lib) optionals optionalString;
-
-  version = "1.14.15";
-
   go_bootstrap = buildPackages.callPackage ./bootstrap.nix { };
 
-  goBootstrap = runCommand "go-bootstrap" {} ''
+  goBootstrap = runCommand "go-bootstrap" { } ''
     mkdir $out
     cp -rf ${go_bootstrap}/* $out/
     chmod -R u+w $out
@@ -41,7 +50,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go";
-  inherit version;
+  version = "1.14.15";
 
   src = fetchurl {
     url = "https://dl.google.com/go/go${version}.src.tar.gz";
@@ -51,10 +60,10 @@ stdenv.mkDerivation rec {
   # perl is used for testing go vet
   nativeBuildInputs = [ perl which pkg-config patch procps ];
   buildInputs = [ cacert pcre ]
-    ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
-    ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
+    ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
+    ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
@@ -106,14 +115,14 @@ stdenv.mkDerivation rec {
     # Disable cgo lookup tests not works, they depend on resolver
     rm src/net/cgo_unix_test.go
 
-  '' + optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.isLinux ''
     # prepend the nix path to the zoneinfo files but also leave the original value for static binaries
     # that run outside a nix server
     sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
 
-  '' + optionalString stdenv.isAarch32 ''
+  '' + lib.optionalString stdenv.isAarch32 ''
     echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
-  '' + optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace src/race.bash --replace \
       "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
     sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
@@ -183,16 +192,18 @@ stdenv.mkDerivation rec {
 
   # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
   # to be different from CC/CXX
-  CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CC_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}cc"
     else
       null;
-  CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CXX_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}c++"
     else
       null;
 
-  GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
+  GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
   GO386 = 387; # from Arch: don't assume sse2 on i686
   CGO_ENABLED = 1;
   # Hopefully avoids test timeouts on Hydra
@@ -202,7 +213,7 @@ stdenv.mkDerivation rec {
   # Some tests assume things like home directories and users exists
   GO_BUILDER_NAME = "nix";
 
-  GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
+  GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
 
   postConfigure = ''
     export GOCACHE=$TMPDIR/go-cache
@@ -211,7 +222,7 @@ stdenv.mkDerivation rec {
 
     export PATH=$(pwd)/bin:$PATH
 
-    ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
+    ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
     # Independent from host/target, CC should produce code for the building system.
     # We only set it when cross-compiling.
     export CC=${buildPackages.stdenv.cc}/bin/cc
@@ -239,12 +250,12 @@ stdenv.mkDerivation rec {
   '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
     mv bin/*_*/* bin
     rmdir bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
     ''}
   '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
     rm -rf bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
     ''}
   '' else "");
diff --git a/nixpkgs/pkgs/development/compilers/go/1.15.nix b/nixpkgs/pkgs/development/compilers/go/1.15.nix
index 7f7870b7e06d..0a9b0ba9b278 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.15.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.15.nix
@@ -1,6 +1,20 @@
-{ lib, stdenv, fetchurl, tzdata, iana-etc, runCommand
-, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation
-, mailcap, runtimeShell
+{ lib
+, stdenv
+, fetchurl
+, tzdata
+, iana-etc
+, runCommand
+, perl
+, which
+, pkg-config
+, patch
+, procps
+, pcre
+, cacert
+, Security
+, Foundation
+, mailcap
+, runtimeShell
 , buildPackages
 , pkgsBuildTarget
 , fetchpatch
@@ -8,14 +22,9 @@
 }:
 
 let
-
-  inherit (lib) optionals optionalString;
-
-  version = "1.15.11";
-
   go_bootstrap = buildPackages.callPackage ./bootstrap.nix { };
 
-  goBootstrap = runCommand "go-bootstrap" {} ''
+  goBootstrap = runCommand "go-bootstrap" { } ''
     mkdir $out
     cp -rf ${go_bootstrap}/* $out/
     chmod -R u+w $out
@@ -41,20 +50,20 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go";
-  inherit version;
+  version = "1.15.13";
 
   src = fetchurl {
     url = "https://dl.google.com/go/go${version}.src.tar.gz";
-    sha256 = "1rb1s130yqy80kcl140k5a53xhvw4fmrpmclvqygcv67si0j8nzj";
+    sha256 = "sha256-mQaeciNHnM5FU/hPh0uTRfb0BF8nz1CJSJtUbaYZokQ=";
   };
 
   # perl is used for testing go vet
   nativeBuildInputs = [ perl which pkg-config patch procps ];
   buildInputs = [ cacert pcre ]
-    ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
-    ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
+    ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
+    ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
@@ -114,14 +123,14 @@ stdenv.mkDerivation rec {
     # Disable cgo lookup tests not works, they depend on resolver
     rm src/net/cgo_unix_test.go
 
-  '' + optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.isLinux ''
     # prepend the nix path to the zoneinfo files but also leave the original value for static binaries
     # that run outside a nix server
     sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
 
-  '' + optionalString stdenv.isAarch32 ''
+  '' + lib.optionalString stdenv.isAarch32 ''
     echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
-  '' + optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace src/race.bash --replace \
       "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
     sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
@@ -186,16 +195,18 @@ stdenv.mkDerivation rec {
 
   # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
   # to be different from CC/CXX
-  CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CC_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}cc"
     else
       null;
-  CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CXX_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}c++"
     else
       null;
 
-  GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
+  GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
   GO386 = 387; # from Arch: don't assume sse2 on i686
   CGO_ENABLED = 1;
   # Hopefully avoids test timeouts on Hydra
@@ -205,7 +216,7 @@ stdenv.mkDerivation rec {
   # Some tests assume things like home directories and users exists
   GO_BUILDER_NAME = "nix";
 
-  GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
+  GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
 
   postConfigure = ''
     export GOCACHE=$TMPDIR/go-cache
@@ -214,7 +225,7 @@ stdenv.mkDerivation rec {
 
     export PATH=$(pwd)/bin:$PATH
 
-    ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
+    ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
     # Independent from host/target, CC should produce code for the building system.
     # We only set it when cross-compiling.
     export CC=${buildPackages.stdenv.cc}/bin/cc
@@ -242,12 +253,12 @@ stdenv.mkDerivation rec {
   '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
     mv bin/*_*/* bin
     rmdir bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
     ''}
   '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
     rm -rf bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
     ''}
   '' else "");
@@ -268,5 +279,6 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     maintainers = teams.golang.members;
     platforms = platforms.linux ++ platforms.darwin;
+    badPlatforms = [ "aarch64-darwin" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/go/1.16.nix b/nixpkgs/pkgs/development/compilers/go/1.16.nix
index f82a0d72b7ad..26cfb898ecf0 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.16.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.16.nix
@@ -1,21 +1,30 @@
-{ lib, stdenv, fetchurl, tzdata, iana-etc, runCommand
-, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation, xcbuild
-, mailcap, runtimeShell
+{ lib
+, stdenv
+, fetchurl
+, tzdata
+, iana-etc
+, runCommand
+, perl
+, which
+, pkg-config
+, patch
+, procps
+, pcre
+, cacert
+, Security
+, Foundation
+, xcbuild
+, mailcap
+, runtimeShell
 , buildPackages
 , pkgsBuildTarget
-, fetchpatch
 , callPackage
 }:
 
 let
-
-  inherit (lib) optionals optionalString;
-
-  version = "1.16.3";
-
   go_bootstrap = buildPackages.callPackage ./bootstrap.nix { };
 
-  goBootstrap = runCommand "go-bootstrap" {} ''
+  goBootstrap = runCommand "go-bootstrap" { } ''
     mkdir $out
     cp -rf ${go_bootstrap}/* $out/
     chmod -R u+w $out
@@ -41,22 +50,22 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go";
-  inherit version;
+  version = "1.16.5";
 
   src = fetchurl {
     url = "https://dl.google.com/go/go${version}.src.tar.gz";
-    sha256 = "sha256-spjSnekjbKR6Aj44IxO8wtLu0x36cGtgoEEDzoOnGiU=";
+    sha256 = "sha256-e/p+WQjHzJ512l3fMGbXy88/2fpRlFhRMl7rwX9QuoA=";
   };
 
   # perl is used for testing go vet
   nativeBuildInputs = [ perl which pkg-config patch procps ];
   buildInputs = [ cacert pcre ]
-    ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
-    ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
+    ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
+    ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-  propagatedBuildInputs = optionals stdenv.isDarwin [ xcbuild ];
+  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ];
 
-  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
@@ -116,14 +125,14 @@ stdenv.mkDerivation rec {
     # Disable cgo lookup tests not works, they depend on resolver
     rm src/net/cgo_unix_test.go
 
-  '' + optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.isLinux ''
     # prepend the nix path to the zoneinfo files but also leave the original value for static binaries
     # that run outside a nix server
     sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
 
-  '' + optionalString stdenv.isAarch32 ''
+  '' + lib.optionalString stdenv.isAarch32 ''
     echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
-  '' + optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace src/race.bash --replace \
       "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
     sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
@@ -181,16 +190,18 @@ stdenv.mkDerivation rec {
 
   # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
   # to be different from CC/CXX
-  CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CC_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}cc"
     else
       null;
-  CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CXX_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}c++"
     else
       null;
 
-  GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
+  GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
   GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
   CGO_ENABLED = 1;
   # Hopefully avoids test timeouts on Hydra
@@ -200,7 +211,7 @@ stdenv.mkDerivation rec {
   # Some tests assume things like home directories and users exists
   GO_BUILDER_NAME = "nix";
 
-  GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
+  GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
 
   postConfigure = ''
     export GOCACHE=$TMPDIR/go-cache
@@ -209,7 +220,7 @@ stdenv.mkDerivation rec {
 
     export PATH=$(pwd)/bin:$PATH
 
-    ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
+    ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
     # Independent from host/target, CC should produce code for the building system.
     # We only set it when cross-compiling.
     export CC=${buildPackages.stdenv.cc}/bin/cc
@@ -237,12 +248,12 @@ stdenv.mkDerivation rec {
   '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
     mv bin/*_*/* bin
     rmdir bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
     ''}
   '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
     rm -rf bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
     ''}
   '' else "");
diff --git a/nixpkgs/pkgs/development/compilers/go/2-dev.nix b/nixpkgs/pkgs/development/compilers/go/2-dev.nix
index 21347cbd65a9..8fd0e2e6630c 100644
--- a/nixpkgs/pkgs/development/compilers/go/2-dev.nix
+++ b/nixpkgs/pkgs/development/compilers/go/2-dev.nix
@@ -1,19 +1,29 @@
-{ pkgs, lib, stdenv, fetchurl, fetchgit, tzdata, iana-etc, runCommand
-, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation
-, mailcap, runtimeShell
+{ lib
+, stdenv
+, fetchgit
+, tzdata
+, iana-etc
+, runCommand
+, perl
+, which
+, pkg-config
+, patch
+, procps
+, pcre
+, cacert
+, Security
+, Foundation
+, mailcap
+, runtimeShell
 , buildPackages
 , pkgsBuildTarget
-, fetchpatch
 , callPackage
 }:
 
 let
-
-  inherit (lib) optionals optionalString;
-
   go_bootstrap = buildPackages.callPackage ./bootstrap.nix { };
 
-  goBootstrap = runCommand "go-bootstrap" {} ''
+  goBootstrap = runCommand "go-bootstrap" { } ''
     mkdir $out
     cp -rf ${go_bootstrap}/* $out/
     chmod -R u+w $out
@@ -39,21 +49,21 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go2-unstable";
-  version = "2021-03-22";
+  version = "2021-04-13";
 
   src = fetchgit {
-    url = https://go.googlesource.com/go;
-    rev = "a4b4db4cdeefb7b4ea5adb09073dd123846b3588";
-    sha256 = "sha256:1wqqnywcrfazydi5wcg04s6zgsfh4m879vxfgacgrnigd23ynhvr";
+    url = "https://go.googlesource.com/go";
+    rev = "9cd52cf2a93a958e8e001aea36886e7846c91f2f";
+    sha256 = "sha256:0hybm93y4i4j7bs86y7h73nc1wqnspkq75if7n1032zf9bs8sm96";
   };
 
   # perl is used for testing go vet
   nativeBuildInputs = [ perl which pkg-config patch procps ];
   buildInputs = [ cacert pcre ]
-    ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
-    ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
+    ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
+    ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
@@ -114,14 +124,14 @@ stdenv.mkDerivation rec {
     # Disable cgo lookup tests not works, they depend on resolver
     rm src/net/cgo_unix_test.go
 
-  '' + optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.isLinux ''
     # prepend the nix path to the zoneinfo files but also leave the original value for static binaries
     # that run outside a nix server
     sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
 
-  '' + optionalString stdenv.isAarch32 ''
+  '' + lib.optionalString stdenv.isAarch32 ''
     echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
-  '' + optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace src/race.bash --replace \
       "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
     sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
@@ -178,16 +188,18 @@ stdenv.mkDerivation rec {
 
   # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
   # to be different from CC/CXX
-  CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CC_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}cc"
     else
       null;
-  CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
+  CXX_FOR_TARGET =
+    if (stdenv.buildPlatform != stdenv.targetPlatform) then
       "${targetCC}/bin/${targetCC.targetPrefix}c++"
     else
       null;
 
-  GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
+  GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
   GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
   CGO_ENABLED = 1;
   # Hopefully avoids test timeouts on Hydra
@@ -197,7 +209,7 @@ stdenv.mkDerivation rec {
   # Some tests assume things like home directories and users exists
   GO_BUILDER_NAME = "nix";
 
-  GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
+  GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
 
   postConfigure = ''
     export GOCACHE=$TMPDIR/go-cache
@@ -206,7 +218,7 @@ stdenv.mkDerivation rec {
 
     export PATH=$(pwd)/bin:$PATH
 
-    ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
+    ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
     # Independent from host/target, CC should produce code for the building system.
     # We only set it when cross-compiling.
     export CC=${buildPackages.stdenv.cc}/bin/cc
@@ -234,12 +246,12 @@ stdenv.mkDerivation rec {
   '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
     mv bin/*_*/* bin
     rmdir bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
     ''}
   '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
     rm -rf bin/*_*
-    ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
+    ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
       rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
     ''}
   '' else "");
diff --git a/nixpkgs/pkgs/development/compilers/go/binary.nix b/nixpkgs/pkgs/development/compilers/go/binary.nix
index 7eb8f8f7b984..a2fff4f6d074 100644
--- a/nixpkgs/pkgs/development/compilers/go/binary.nix
+++ b/nixpkgs/pkgs/development/compilers/go/binary.nix
@@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
   dontStrip = stdenv.hostPlatform.isDarwin;
 
   installPhase = ''
+    runHook preInstall
     mkdir -p $out/share/go $out/bin
     mv bin/* $out/bin
     cp -r . $out/share/go
@@ -37,5 +38,6 @@ stdenv.mkDerivation rec {
       --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
       $out/bin/go
     '')}
-  '' ;
+    runHook postInstall
+  '';
 }
diff --git a/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix b/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix
index 3a8fca2c1a05..0d12d5fe2dfb 100644
--- a/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix
+++ b/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix
@@ -6,7 +6,7 @@
 , makeWrapper
 # minimum dependencies
 , Foundation
-, alsaLib
+, alsa-lib
 , fontconfig
 , freetype
 , glibc
@@ -82,7 +82,7 @@ let
         ];
 
         buildInputs = lib.optionals stdenv.isLinux [
-          alsaLib # libasound.so wanted by lib/libjsound.so
+          alsa-lib # libasound.so wanted by lib/libjsound.so
           fontconfig
           freetype
           openssl # libssl.so wanted by languages/ruby/lib/mri/openssl.so
diff --git a/nixpkgs/pkgs/development/compilers/graalvm/enterprise-edition.nix b/nixpkgs/pkgs/development/compilers/graalvm/enterprise-edition.nix
index eb3045d52ad6..f3ca8a4f5bbb 100644
--- a/nixpkgs/pkgs/development/compilers/graalvm/enterprise-edition.nix
+++ b/nixpkgs/pkgs/development/compilers/graalvm/enterprise-edition.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, requireFile, perl, unzip, glibc, zlib, bzip2, gdk-pixbuf, xorg, glib, fontconfig, freetype, cairo, pango, gtk3, gtk2, ffmpeg, libGL, atk, alsaLib, setJavaClassPath }:
+{ lib, stdenv, requireFile, perl, unzip, glibc, zlib, bzip2, gdk-pixbuf, xorg, glib, fontconfig, freetype, cairo, pango, gtk3, gtk2, ffmpeg, libGL, atk, alsa-lib, setJavaClassPath }:
 
 let
   common = javaVersion:
@@ -125,7 +125,7 @@ let
                     }.${javaVersion}
                  }:${
             lib.strings.makeLibraryPath [ glibc xorg.libXxf86vm xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender
-                                                 glib zlib bzip2 alsaLib fontconfig freetype pango gtk3 gtk2 cairo gdk-pixbuf atk ffmpeg libGL ]}"
+                                                 glib zlib bzip2 alsa-lib fontconfig freetype pango gtk3 gtk2 cairo gdk-pixbuf atk ffmpeg libGL ]}"
 
           for f in $(find $out -type f -perm -0100); do
             patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$f" || true
diff --git a/nixpkgs/pkgs/development/compilers/halide/default.nix b/nixpkgs/pkgs/development/compilers/halide/default.nix
index 69b7cd4d8682..916d8fa56f75 100644
--- a/nixpkgs/pkgs/development/compilers/halide/default.nix
+++ b/nixpkgs/pkgs/development/compilers/halide/default.nix
@@ -41,7 +41,17 @@ llvmPackages.stdenv.mkDerivation rec {
   # Note: only openblas and not atlas part of this Nix expression
   # see pkgs/development/libraries/science/math/liblapack/3.5.0.nix
   # to get a hint howto setup atlas instead of openblas
-  buildInputs = [ llvmPackages.llvm libpng libjpeg mesa eigen openblas ];
+  buildInputs = [
+    llvmPackages.llvm
+    llvmPackages.lld
+    llvmPackages.openmp
+    llvmPackages.libclang
+    libpng
+    libjpeg
+    mesa
+    eigen
+    openblas
+  ];
 
   nativeBuildInputs = [ cmake ];
 
diff --git a/nixpkgs/pkgs/development/compilers/haxe/default.nix b/nixpkgs/pkgs/development/compilers/haxe/default.nix
index c9e5a097de1f..d5277899892e 100644
--- a/nixpkgs/pkgs/development/compilers/haxe/default.nix
+++ b/nixpkgs/pkgs/development/compilers/haxe/default.nix
@@ -2,7 +2,7 @@
 
 let
   ocamlDependencies = version:
-    if lib.versionAtLeast version "4.0"
+    if lib.versionAtLeast version "4.2"
     then with ocaml-ng.ocamlPackages; [
       ocaml
       findlib
@@ -13,8 +13,19 @@ let
       sha
       dune_2
       luv
-      (if lib.versionAtLeast version "4.2"
-      then ocaml_extlib else ocaml_extlib-1-7-7)
+      ocaml_extlib
+    ] else if lib.versionAtLeast version "4.0"
+    then with ocaml-ng.ocamlPackages_4_10; [
+      ocaml
+      findlib
+      sedlex_2
+      xml-light
+      ptmap
+      camlp5
+      sha
+      dune_2
+      luv
+      ocaml_extlib-1-7-7
     ] else with ocaml-ng.ocamlPackages_4_05; [
       ocaml
       camlp4
diff --git a/nixpkgs/pkgs/development/compilers/inform6/default.nix b/nixpkgs/pkgs/development/compilers/inform6/default.nix
index f0c182f02077..950bafa67d90 100644
--- a/nixpkgs/pkgs/development/compilers/inform6/default.nix
+++ b/nixpkgs/pkgs/development/compilers/inform6/default.nix
@@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ perl ];
 
-  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+  makeFlags = [
+    "CC=${stdenv.cc.targetPrefix}cc"
+    "PREFIX=${placeholder "out"}"
+  ];
 
   meta = with lib; {
     description = "Interactive fiction compiler and libraries";
diff --git a/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix b/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix
index 512865829607..75687de4e9e2 100644
--- a/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix
+++ b/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix
@@ -18,7 +18,7 @@ let
     inherit spirv-llvm-translator;
   };
   inherit (llvmPkgs) llvm;
-  inherit (if buildWithPatches then opencl-clang else llvmPkgs) clang clang-unwrapped spirv-llvm-translator;
+  inherit (if buildWithPatches then opencl-clang else llvmPkgs) clang libclang spirv-llvm-translator;
   inherit (lib) getVersion optional optionals versionOlder versions;
 in
 
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
       ln -s ${clang}/bin/clang $out/
       ln -s clang $out/clang-${versions.major (getVersion clang)}
       ln -s ${opencl-clang}/lib/* $out/
-      ln -s ${clang-unwrapped}/lib/clang/${getVersion clang}/include/opencl-c.h $out/
+      ln -s ${lib.getLib libclang}/lib/clang/${getVersion clang}/include/opencl-c.h $out/
     '';
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/ispc/default.nix b/nixpkgs/pkgs/development/compilers/ispc/default.nix
index fd7481587115..bbe17e0755ce 100644
--- a/nixpkgs/pkgs/development/compilers/ispc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ispc/default.nix
@@ -28,10 +28,9 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ cmake which m4 bison flex python3 ];
+  nativeBuildInputs = [ cmake which m4 bison flex python3 llvmPackages.llvm.dev ];
   buildInputs = with llvmPackages; [
-    # we need to link against libclang, so we need the unwrapped
-    llvm llvmPackages.clang-unwrapped
+    llvm llvmPackages.libclang
   ];
 
   postPatch = ''
@@ -66,6 +65,7 @@ stdenv.mkDerivation rec {
   '';
 
   cmakeFlags = [
+    "-DLLVM_CONFIG_EXECUTABLE=${llvmPackages.llvm.dev}/bin/llvm-config"
     "-DCLANG_EXECUTABLE=${llvmPackages.clang}/bin/clang"
     "-DCLANGPP_EXECUTABLE=${llvmPackages.clang}/bin/clang++"
     "-DISPC_INCLUDE_EXAMPLES=OFF"
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.0-bin.nix b/nixpkgs/pkgs/development/compilers/julia/1.0-bin.nix
new file mode 100644
index 000000000000..dfda8da9e4de
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/1.0-bin.nix
@@ -0,0 +1,80 @@
+{ autoPatchelfHook, fetchurl, lib, makeWrapper, openssl, stdenv }:
+
+stdenv.mkDerivation rec {
+  pname = "julia-bin";
+  version = "1.0.5";
+
+  src = {
+    x86_64-linux = fetchurl {
+      url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz";
+      sha256 = "00vbszpjmz47nqy19v83xa463ajhzwanjyg5mvcfp9kvfw9xdvcx";
+    };
+  }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
+
+  # Julia’s source files are in different locations for source and binary
+  # releases. Thus we temporarily create symlinks to allow us to share patches
+  # with source releases.
+  prePatch = ''
+    ln -s share/julia/stdlib/v${lib.versions.majorMinor version} stdlib
+    ln -s share/julia/test
+  '';
+  patches = [
+    # Source release Nix patch(es) relevant for binary releases as well.
+    ./patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch
+  ];
+  postPatch = ''
+    # Revert symlink hack.
+    rm stdlib test
+  '';
+
+  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  installPhase = ''
+    runHook preInstall
+    cp -r . $out
+    # Setting `LD_LIBRARY_PATH` resolves `Libdl` failures. Not sure why this is
+    # only necessary on v1.0.x and a cleaner solution is welcome, but after
+    # staring at `strace` for a few hours this is as clean as I could make it.
+    wrapProgram $out/bin/julia \
+      --suffix LD_LIBRARY_PATH : $out/lib
+    runHook postInstall
+  '';
+
+  # Breaks backtraces, etc.
+  dontStrip = true;
+
+  doInstallCheck = true;
+  installCheckInputs = [ openssl ];
+  preInstallCheck = ''
+    # Some tests require read/write access to $HOME.
+    export HOME="$TMPDIR"
+  '';
+  installCheckPhase = ''
+    runHook preInstallCheck
+    # Command lifted from `test/Makefile`.
+    $out/bin/julia \
+      --check-bounds=yes \
+      --startup-file=no \
+      --depwarn=error \
+      $out/share/julia/test/runtests.jl
+    runHook postInstallCheck
+  '';
+
+  meta = {
+    description = "High-level, high-performance dynamic language for technical computing";
+    homepage = "https://julialang.org";
+    # Bundled and linked with various GPL code, although Julia itself is MIT.
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ ninjin raskin ];
+    platforms = [ "x86_64-linux" ];
+    knownVulnerabilities = [
+      # Built with libgit2 v0.27.2:
+      #   https://github.com/JuliaLang/julia/blob/e0837d1e64a9e4d17534a9f981e9a2a3f221356f/deps/libgit2.version
+      # https://nvd.nist.gov/vuln/detail/CVE-2020-12278
+      "CVE-2020-12278"
+      # https://nvd.nist.gov/vuln/detail/CVE-2020-12279
+      "CVE-2020-12279"
+    ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.0.nix b/nixpkgs/pkgs/development/compilers/julia/1.0.nix
index 5b1a4674a88a..4f05329f595a 100644
--- a/nixpkgs/pkgs/development/compilers/julia/1.0.nix
+++ b/nixpkgs/pkgs/development/compilers/julia/1.0.nix
@@ -88,13 +88,7 @@ stdenv.mkDerivation rec {
   ;
 
   patches = [
-    # Julia recompiles a precompiled file if the mtime stored *in* the
-    # .ji file differs from the mtime of the .ji file.  This
-    # doesn't work in Nix because Nix changes the mtime of files in
-    # the Nix store to 1. So patch Julia to accept mtimes of 1.
-    ./allow_nix_mtime.patch
-    ./diagonal-test.patch
-    ./use-system-utf8proc-julia-1.0.patch
+    ./patches/1.0/use-system-utf8proc-julia-1.0.patch
   ];
 
   postPatch = ''
@@ -184,6 +178,8 @@ stdenv.mkDerivation rec {
     export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
   '';
 
+  enableParallelBuilding = true;
+
   postInstall = ''
     # Symlink shared libraries from LD_LIBRARY_PATH into lib/julia,
     # as using a wrapper with LD_LIBRARY_PATH causes segmentation
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.3.nix b/nixpkgs/pkgs/development/compilers/julia/1.3.nix
deleted file mode 100644
index 5e431a552332..000000000000
--- a/nixpkgs/pkgs/development/compilers/julia/1.3.nix
+++ /dev/null
@@ -1,161 +0,0 @@
-{ lib, stdenv, fetchurl, fetchzip, fetchFromGitHub
-# build tools
-, gfortran, m4, makeWrapper, patchelf, perl, which, python2
-, cmake
-# libjulia dependencies
-, libunwind, readline, utf8proc, zlib
-# standard library dependencies
-, curl, fftwSinglePrec, fftw, gmp, libgit2, mpfr, openlibm, openspecfun, pcre2
-# linear algebra
-, blas, lapack, arpack
-# Darwin frameworks
-, CoreServices, ApplicationServices
-}:
-
-assert (!blas.isILP64) && (!lapack.isILP64);
-
-with lib;
-
-let
-  majorVersion = "1";
-  minorVersion = "3";
-  maintenanceVersion = "1";
-  src_sha256 = "0q9a7yc3b235psrwl5ghyxgwly25lf8n818l8h6bkf2ymdbsv5p6";
-  version = "${majorVersion}.${minorVersion}.${maintenanceVersion}";
-in
-
-stdenv.mkDerivation rec {
-  pname = "julia";
-  inherit version;
-
-   src = fetchzip {
-     url = "https://github.com/JuliaLang/julia/releases/download/v${majorVersion}.${minorVersion}.${maintenanceVersion}/julia-${majorVersion}.${minorVersion}.${maintenanceVersion}-full.tar.gz";
-     sha256 = src_sha256;
-   };
-
-  prePatch = ''
-    export PATH=$PATH:${cmake}/bin
-    '';
-
-  patches = [
-    ./use-system-utf8proc-julia-1.3.patch
-
-    # Julia recompiles a precompiled file if the mtime stored *in* the
-    # .ji file differs from the mtime of the .ji file.  This
-    # doesn't work in Nix because Nix changes the mtime of files in
-    # the Nix store to 1. So patch Julia to accept mtimes of 1.
-    ./allow_nix_mtime.patch
-  ];
-
-  postPatch = ''
-    patchShebangs . contrib
-    for i in backtrace cmdlineargs; do
-      mv test/$i.jl{,.off}
-      touch test/$i.jl
-    done
-    rm stdlib/Sockets/test/runtests.jl && touch stdlib/Sockets/test/runtests.jl
-    rm stdlib/Distributed/test/runtests.jl && touch stdlib/Distributed/test/runtests.jl
-    sed -e 's/Invalid Content-Type:/invalid Content-Type:/g' -i ./stdlib/LibGit2/test/libgit2.jl
-    sed -e 's/Failed to resolve /failed to resolve /g' -i ./stdlib/LibGit2/test/libgit2.jl
-  '';
-
-  buildInputs = [
-    arpack fftw fftwSinglePrec gmp libgit2 libunwind mpfr
-    pcre2.dev blas lapack openlibm openspecfun readline utf8proc
-    zlib
-  ]
-  ++ lib.optionals stdenv.isDarwin [CoreServices ApplicationServices]
-  ;
-
-  nativeBuildInputs = [ curl gfortran m4 makeWrapper patchelf perl python2 which ];
-
-  makeFlags =
-    let
-      arch = head (splitString "-" stdenv.system);
-      march = {
-        x86_64 = stdenv.hostPlatform.gcc.arch or "x86-64";
-        i686 = "pentium4";
-        aarch64 = "armv8-a";
-      }.${arch}
-              or (throw "unsupported architecture: ${arch}");
-      # Julia requires Pentium 4 (SSE2) or better
-      cpuTarget = { x86_64 = "x86-64"; i686 = "pentium4"; aarch64 = "generic"; }.${arch}
-                  or (throw "unsupported architecture: ${arch}");
-    in [
-      "ARCH=${arch}"
-      "MARCH=${march}"
-      "JULIA_CPU_TARGET=${cpuTarget}"
-      "PREFIX=$(out)"
-      "prefix=$(out)"
-      "SHELL=${stdenv.shell}"
-
-      (lib.optionalString (!stdenv.isDarwin) "USE_SYSTEM_BLAS=1")
-      "USE_BLAS64=${if blas.isILP64 then "1" else "0"}"
-
-      "USE_SYSTEM_LAPACK=1"
-
-      "USE_SYSTEM_ARPACK=1"
-      "USE_SYSTEM_FFTW=1"
-      "USE_SYSTEM_GMP=1"
-      "USE_SYSTEM_LIBGIT2=1"
-      "USE_SYSTEM_LIBUNWIND=1"
-
-      "USE_SYSTEM_MPFR=1"
-      "USE_SYSTEM_OPENLIBM=1"
-      "USE_SYSTEM_OPENSPECFUN=1"
-      "USE_SYSTEM_PATCHELF=1"
-      "USE_SYSTEM_PCRE=1"
-      "PCRE_CONFIG=${pcre2.dev}/bin/pcre2-config"
-      "PCRE_INCL_PATH=${pcre2.dev}/include/pcre2.h"
-      "USE_SYSTEM_READLINE=1"
-      "USE_SYSTEM_UTF8PROC=1"
-      "USE_SYSTEM_ZLIB=1"
-
-      "USE_BINARYBUILDER=0"
-    ];
-
-  LD_LIBRARY_PATH = makeLibraryPath [
-    arpack fftw fftwSinglePrec gmp libgit2 mpfr blas openlibm
-    openspecfun pcre2 lapack
-  ];
-
-  # Other versions of Julia pass the tests, but we are not sure why these fail.
-  doCheck = false;
-  checkTarget = "testall";
-  # Julia's tests require read/write access to $HOME
-  preCheck = ''
-    export HOME="$NIX_BUILD_TOP"
-  '';
-
-  preBuild = ''
-    sed -e '/^install:/s@[^ ]*/doc/[^ ]*@@' -i Makefile
-    sed -e '/[$](DESTDIR)[$](docdir)/d' -i Makefile
-    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
-  '';
-
-  postInstall = ''
-    # Symlink shared libraries from LD_LIBRARY_PATH into lib/julia,
-    # as using a wrapper with LD_LIBRARY_PATH causes segmentation
-    # faults when program returns an error:
-    #   $ julia -e 'throw(Error())'
-    find $(echo $LD_LIBRARY_PATH | sed 's|:| |g') -maxdepth 1 -name '*.${if stdenv.isDarwin then "dylib" else "so"}*' | while read lib; do
-      if [[ ! -e $out/lib/julia/$(basename $lib) ]]; then
-        ln -sv $lib $out/lib/julia/$(basename $lib)
-      fi
-    done
-  '';
-
-  passthru = {
-    inherit majorVersion minorVersion maintenanceVersion;
-    site = "share/julia/site/v${majorVersion}.${minorVersion}";
-  };
-
-  meta = {
-    description = "High-level performance-oriented dynamical language for technical computing";
-    homepage = "https://julialang.org/";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ raskin rob garrison ];
-    platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
-    broken = stdenv.isi686;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.5.nix b/nixpkgs/pkgs/development/compilers/julia/1.5.nix
index b4c33faa44cd..06c0e2a30e8c 100644
--- a/nixpkgs/pkgs/development/compilers/julia/1.5.nix
+++ b/nixpkgs/pkgs/development/compilers/julia/1.5.nix
@@ -33,27 +33,11 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
-    ./use-system-utf8proc-julia-1.3.patch
-
-    # Julia recompiles a precompiled file if the mtime stored *in* the
-    # .ji file differs from the mtime of the .ji file.  This
-    # doesn't work in Nix because Nix changes the mtime of files in
-    # the Nix store to 1. So patch Julia to accept mtimes of 1.
-    ./allow_nix_mtime.patch
+    ./patches/1.5/use-system-utf8proc-julia-1.3.patch
   ];
 
   postPatch = ''
     patchShebangs . contrib
-    for i in backtrace cmdlineargs; do
-      mv test/$i.jl{,.off}
-      touch test/$i.jl
-    done
-    rm stdlib/Sockets/test/runtests.jl && touch stdlib/Sockets/test/runtests.jl
-    rm stdlib/Distributed/test/runtests.jl && touch stdlib/Distributed/test/runtests.jl
-    # LibGit2 fails with a weird error, so we skip it as well now
-    rm stdlib/LibGit2/test/runtests.jl && touch stdlib/LibGit2/test/runtests.jl
-    sed -e 's/Invalid Content-Type:/invalid Content-Type:/g' -i ./stdlib/LibGit2/test/libgit2.jl
-    sed -e 's/Failed to resolve /failed to resolve /g' -i ./stdlib/LibGit2/test/libgit2.jl
   '';
 
   dontUseCmakeConfigure = true;
@@ -118,17 +102,21 @@ stdenv.mkDerivation rec {
     openspecfun pcre2 lapack
   ];
 
-  # Julia's tests require read/write access to $HOME
-  preCheck = ''
-    export HOME="$NIX_BUILD_TOP"
-  '';
-
   preBuild = ''
     sed -e '/^install:/s@[^ ]*/doc/[^ ]*@@' -i Makefile
     sed -e '/[$](DESTDIR)[$](docdir)/d' -i Makefile
     export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
   '';
 
+  enableParallelBuilding = true;
+
+  # Julia's tests require read/write access to $HOME
+  preCheck = ''
+    export HOME="$NIX_BUILD_TOP"
+  '';
+  doCheck = true;
+  checkTarget = "test";
+
   postInstall = ''
     # Symlink shared libraries from LD_LIBRARY_PATH into lib/julia,
     # as using a wrapper with LD_LIBRARY_PATH causes segmentation
@@ -152,6 +140,8 @@ stdenv.mkDerivation rec {
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ raskin rob garrison ];
     platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" "aarch64-linux" ];
-    broken = stdenv.isi686;
+    # Unfortunately, this derivation does not pass Julia's test suite. See
+    # https://github.com/NixOS/nixpkgs/pull/121114.
+    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix b/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix
new file mode 100644
index 000000000000..19aab27ba748
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix
@@ -0,0 +1,73 @@
+{ autoPatchelfHook, fetchurl, lib, stdenv }:
+
+stdenv.mkDerivation rec {
+  pname = "julia-bin";
+  version = "1.6.1";
+
+  src = {
+    x86_64-linux = fetchurl {
+      url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz";
+      sha256 = "01i5sm4vqb0y5qznql571zap19b42775drrcxnzsyhpaqgg8m23w";
+    };
+  }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
+
+  # Julia’s source files are in different locations for source and binary
+  # releases. Thus we temporarily create a symlink to allow us to share patches
+  # with source releases.
+  prePatch = ''
+    ln -s share/julia/test
+  '';
+  patches = [
+    # Source release Nix patch(es) relevant for binary releases as well.
+    ./patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch
+    ./patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch
+    ./patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch
+  ];
+  postPatch = ''
+    # Revert symlink hack.
+    rm test
+
+    # Julia fails to pick up our Certification Authority root certificates, but
+    # it provides its own so we can simply disable the test. Patching in the
+    # dynamic path to ours require us to rebuild the Julia system image.
+    substituteInPlace share/julia/stdlib/v${lib.versions.majorMinor version}/NetworkOptions/test/runtests.jl \
+      --replace '@test ca_roots_path() != bundled_ca_roots()' \
+        '@test_skip ca_roots_path() != bundled_ca_roots()'
+  '';
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
+  installPhase = ''
+    runHook preInstall
+    cp -r . $out
+    runHook postInstall
+  '';
+
+  # Breaks backtraces, etc.
+  dontStrip = true;
+
+  doInstallCheck = true;
+  preInstallCheck = ''
+    # Some tests require read/write access to $HOME.
+    export HOME="$TMPDIR"
+  '';
+  installCheckPhase = ''
+    runHook preInstallCheck
+    # Command lifted from `test/Makefile`.
+    $out/bin/julia \
+      --check-bounds=yes \
+      --startup-file=no \
+      --depwarn=error \
+      $out/share/julia/test/runtests.jl
+    runHook postInstallCheck
+  '';
+
+  meta = {
+    description = "High-level, high-performance dynamic language for technical computing.";
+    homepage = "https://julialang.org";
+    # Bundled and linked with various GPL code, although Julia itself is MIT.
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ ninjin raskin ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/julia/README.md b/nixpkgs/pkgs/development/compilers/julia/README.md
new file mode 100644
index 000000000000..d37c01bc8ce6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/README.md
@@ -0,0 +1,24 @@
+Julia
+=====
+
+[Julia][julia], as a full-fledged programming language with an extensive
+standard library that covers numerical computing, can be somewhat challenging to
+package. This file aims to provide pointers which could not easily be included
+as comments in the expressions themselves.
+
+[julia]: https://julialang.org
+
+For Nixpkgs, the manual is as always your primary reference, and for the Julia
+side of things you probably want to familiarise yourself with the [README
+][readme], [build instructions][build], and [release process][release_process].
+Remember that these can change between Julia releases, especially if the LTS and
+release branches have deviated greatly. A lot of the build process is
+underdocumented and thus there is no substitute for digging into the code that
+controls the build process. You are very likely to need to use the test suite to
+locate and address issues and in the end passing it, while only disabling a
+minimal set of broken or incompatible tests you think you have a good reason to
+disable, is your best bet at arriving at a solid derivation.
+
+[readme]: https://github.com/JuliaLang/julia/blob/master/README.md
+[build]: https://github.com/JuliaLang/julia/blob/master/doc/build/build.md
+[release_process]: https://julialang.org/blog/2019/08/release-process
diff --git a/nixpkgs/pkgs/development/compilers/julia/allow_nix_mtime.patch b/nixpkgs/pkgs/development/compilers/julia/allow_nix_mtime.patch
deleted file mode 100644
index e4a164cfa1ad..000000000000
--- a/nixpkgs/pkgs/development/compilers/julia/allow_nix_mtime.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f79775378a9eeec5b99f18cc95735b12d172aba3 Mon Sep 17 00:00:00 2001
-From: Tom McLaughlin <pyro777@gmail.com>
-Date: Wed, 12 Dec 2018 13:01:32 -0800
-Subject: [PATCH] Patch to make work better with nix
-
----
- base/loading.jl | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/base/loading.jl b/base/loading.jl
-index 51201b98b6..b40c0690f6 100644
---- a/base/loading.jl
-+++ b/base/loading.jl
-@@ -1384,7 +1384,7 @@ function stale_cachefile(modpath::String, cachefile::String)
-                 # Issue #13606: compensate for Docker images rounding mtimes
-                 # Issue #20837: compensate for GlusterFS truncating mtimes to microseconds
-                 ftime = mtime(f)
--                if ftime != ftime_req && ftime != floor(ftime_req) && ftime != trunc(ftime_req, digits=6)
-+                if ftime != ftime_req && ftime != floor(ftime_req) && ftime != trunc(ftime_req, digits=6) && ftime != 1.0
-                     @debug "Rejecting stale cache file $cachefile (mtime $ftime_req) because file $f (mtime $ftime) has changed"
-                     return true
-                 end
--- 
-2.17.1
-
diff --git a/nixpkgs/pkgs/development/compilers/julia/diagonal-test.patch b/nixpkgs/pkgs/development/compilers/julia/diagonal-test.patch
deleted file mode 100644
index dd31e67e9d34..000000000000
--- a/nixpkgs/pkgs/development/compilers/julia/diagonal-test.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 9eb180c523b877a53b9e1cf53a4d5e6dad3d7bfe Mon Sep 17 00:00:00 2001
-From: Lars Jellema <lars.jellema@gmail.com>
-Date: Sat, 19 Sep 2020 13:52:20 +0200
-Subject: [PATCH] Use approximate comparisons for diagonal tests
-
----
- stdlib/LinearAlgebra/test/diagonal.jl | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/stdlib/LinearAlgebra/test/diagonal.jl b/stdlib/LinearAlgebra/test/diagonal.jl
-index e420d5bc6d..7f1b5d0aec 100644
---- a/stdlib/LinearAlgebra/test/diagonal.jl
-+++ b/stdlib/LinearAlgebra/test/diagonal.jl
-@@ -450,8 +450,8 @@ end
-         M = randn(T, 5, 5)
-         MM = [randn(T, 2, 2) for _ in 1:2, _ in 1:2]
-         for transform in (identity, adjoint, transpose, Adjoint, Transpose)
--            @test lmul!(transform(D), copy(M)) == *(transform(Matrix(D)), M)
--            @test rmul!(copy(M), transform(D)) == *(M, transform(Matrix(D)))
-+            @test lmul!(transform(D), copy(M)) ≈ *(transform(Matrix(D)), M)
-+            @test rmul!(copy(M), transform(D)) ≈ *(M, transform(Matrix(D)))
-             @test lmul!(transform(DD), copy(MM)) == *(transform(fullDD), MM)
-             @test rmul!(copy(MM), transform(DD)) == *(MM, transform(fullDD))
-         end
--- 
-2.28.0
-
diff --git a/nixpkgs/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch
new file mode 100644
index 000000000000..0de1f7c010d3
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch
@@ -0,0 +1,87 @@
+From 4954b99efae367da49412edd31a7bd832ec62c69 Mon Sep 17 00:00:00 2001
+From: Pontus Stenetorp <pontus@stenetorp.se>
+Date: Mon, 15 Mar 2021 05:55:18 +0000
+Subject: [PATCH 2/3] nix: Skip tests that require network access
+
+Necessary as the Nix build sandbox does not permit network access.
+---
+ stdlib/Sockets/test/runtests.jl | 40 ++++++++++++++++-----------------
+ test/file.jl                    |  4 ++--
+ 2 files changed, 22 insertions(+), 22 deletions(-)
+
+diff --git a/stdlib/Sockets/test/runtests.jl b/stdlib/Sockets/test/runtests.jl
+index 6145f87616..9cc7a001e5 100644
+--- a/stdlib/Sockets/test/runtests.jl
++++ b/stdlib/Sockets/test/runtests.jl
+@@ -151,33 +151,33 @@ defaultport = rand(2000:4000)
+ end
+ 
+ @testset "getnameinfo on some unroutable IP addresses (RFC 5737)" begin
+-    @test getnameinfo(ip"192.0.2.1") == "192.0.2.1"
+-    @test getnameinfo(ip"198.51.100.1") == "198.51.100.1"
+-    @test getnameinfo(ip"203.0.113.1") == "203.0.113.1"
+-    @test getnameinfo(ip"0.1.1.1") == "0.1.1.1"
+-    @test getnameinfo(ip"::ffff:0.1.1.1") == "::ffff:0.1.1.1"
+-    @test getnameinfo(ip"::ffff:192.0.2.1") == "::ffff:192.0.2.1"
+-    @test getnameinfo(ip"2001:db8::1") == "2001:db8::1"
++    @test_skip getnameinfo(ip"192.0.2.1") == "192.0.2.1"
++    @test_skip getnameinfo(ip"198.51.100.1") == "198.51.100.1"
++    @test_skip getnameinfo(ip"203.0.113.1") == "203.0.113.1"
++    @test_skip getnameinfo(ip"0.1.1.1") == "0.1.1.1"
++    @test_skip getnameinfo(ip"::ffff:0.1.1.1") == "::ffff:0.1.1.1"
++    @test_skip getnameinfo(ip"::ffff:192.0.2.1") == "::ffff:192.0.2.1"
++    @test_skip getnameinfo(ip"2001:db8::1") == "2001:db8::1"
+ end
+ 
+ @testset "getnameinfo on some valid IP addresses" begin
+     @test !isempty(getnameinfo(ip"::")::String)
+-    @test !isempty(getnameinfo(ip"0.0.0.0")::String)
+-    @test !isempty(getnameinfo(ip"10.1.0.0")::String)
+-    @test !isempty(getnameinfo(ip"10.1.0.255")::String)
+-    @test !isempty(getnameinfo(ip"10.1.255.1")::String)
+-    @test !isempty(getnameinfo(ip"255.255.255.255")::String)
+-    @test !isempty(getnameinfo(ip"255.255.255.0")::String)
+-    @test !isempty(getnameinfo(ip"192.168.0.1")::String)
+-    @test !isempty(getnameinfo(ip"::1")::String)
++    @test_skip !isempty(getnameinfo(ip"0.0.0.0")::String)
++    @test_skip !isempty(getnameinfo(ip"10.1.0.0")::String)
++    @test_skip !isempty(getnameinfo(ip"10.1.0.255")::String)
++    @test_skip !isempty(getnameinfo(ip"10.1.255.1")::String)
++    @test_skip !isempty(getnameinfo(ip"255.255.255.255")::String)
++    @test_skip !isempty(getnameinfo(ip"255.255.255.0")::String)
++    @test_skip !isempty(getnameinfo(ip"192.168.0.1")::String)
++    @test_skip !isempty(getnameinfo(ip"::1")::String)
+ end
+ 
+ @testset "getaddrinfo" begin
+-    let localhost = getnameinfo(ip"127.0.0.1")::String
+-        @test !isempty(localhost) && localhost != "127.0.0.1"
+-        @test !isempty(getalladdrinfo(localhost)::Vector{IPAddr})
+-        @test getaddrinfo(localhost, IPv4)::IPv4 != ip"0.0.0.0"
+-        @test try
++    let localhost = getnameinfo(ip"::")::String
++        @test_skip !isempty(localhost) && localhost != "127.0.0.1"
++        @test_skip !isempty(getalladdrinfo(localhost)::Vector{IPAddr})
++        @test_skip getaddrinfo(localhost, IPv4)::IPv4 != ip"0.0.0.0"
++        @test_skip try
+             getaddrinfo(localhost, IPv6)::IPv6 != ip"::"
+         catch ex
+             isa(ex, Sockets.DNSError) && ex.code == Base.UV_EAI_NONAME && ex.host == localhost
+diff --git a/test/file.jl b/test/file.jl
+index e86476f975..579276f82c 100644
+--- a/test/file.jl
++++ b/test/file.jl
+@@ -874,8 +874,8 @@ if !Sys.iswindows() || (Sys.windows_version() >= Sys.WINDOWS_VISTA_VER)
+ else
+     @test_throws ErrorException symlink(file, "ba\0d")
+ end
+-@test_throws ArgumentError download("good", "ba\0d")
+-@test_throws ArgumentError download("ba\0d", "good")
++@test_skip @test_throws ArgumentError download("good", "ba\0d")
++@test_skip @test_throws ArgumentError download("ba\0d", "good")
+ 
+ ###################
+ #     walkdir     #
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.0.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.0/use-system-utf8proc-julia-1.0.patch
index be4391399f55..be4391399f55 100644
--- a/nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.0.patch
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.0/use-system-utf8proc-julia-1.0.patch
diff --git a/nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.3.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.5/use-system-utf8proc-julia-1.3.patch
index 63e0ba9ab057..63e0ba9ab057 100644
--- a/nixpkgs/pkgs/development/compilers/julia/use-system-utf8proc-julia-1.3.patch
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.5/use-system-utf8proc-julia-1.3.patch
diff --git a/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch
new file mode 100644
index 000000000000..d47efe25c5a0
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch
@@ -0,0 +1,28 @@
+From ffe227676352a910754d96d92e9b06e475f28ff1 Mon Sep 17 00:00:00 2001
+From: Pontus Stenetorp <pontus@stenetorp.se>
+Date: Thu, 8 Apr 2021 04:25:19 +0000
+Subject: [PATCH 2/6] nix: Skip `tempname` test broken in sandbox
+
+Reported upstream:
+
+    https://github.com/JuliaLang/julia/issues/38873
+---
+ test/file.jl | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/file.jl b/test/file.jl
+index 0f39bc7c14..bd4dd78f62 100644
+--- a/test/file.jl
++++ b/test/file.jl
+@@ -95,7 +95,7 @@ end
+     @test dirname(t) == tempdir()
+     mktempdir() do d
+         t = tempname(d)
+-        @test dirname(t) == d
++        @test_skip dirname(t) == d
+     end
+     @test_throws ArgumentError tempname(randstring())
+ end
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch
new file mode 100644
index 000000000000..e63c88c8fe3b
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch
@@ -0,0 +1,27 @@
+From b20357fb1044d2c100172b1d5cbdf6c6d9bd3590 Mon Sep 17 00:00:00 2001
+From: Pontus Stenetorp <pontus@stenetorp.se>
+Date: Thu, 8 Apr 2021 05:10:39 +0000
+Subject: [PATCH 3/6] nix: Skip `chown` tests broken in sandbox
+
+---
+ test/file.jl | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/file.jl b/test/file.jl
+index bd4dd78f62..06fd4e49da 100644
+--- a/test/file.jl
++++ b/test/file.jl
+@@ -503,8 +503,8 @@ if !Sys.iswindows()
+         @test stat(file).gid == 0
+         @test stat(file).uid == 0
+     else
+-        @test_throws Base._UVError("chown($(repr(file)), -2, -1)", Base.UV_EPERM) chown(file, -2, -1)  # Non-root user cannot change ownership to another user
+-        @test_throws Base._UVError("chown($(repr(file)), -1, -2)", Base.UV_EPERM) chown(file, -1, -2)  # Non-root user cannot change group to a group they are not a member of (eg: nogroup)
++        @test_skip @test_throws Base._UVError("chown($(repr(file)), -2, -1)", Base.UV_EPERM) chown(file, -2, -1)  # Non-root user cannot change ownership to another user
++        @test_skip @test_throws Base._UVError("chown($(repr(file)), -1, -2)", Base.UV_EPERM) chown(file, -1, -2)  # Non-root user cannot change group to a group they are not a member of (eg: nogroup)
+     end
+ else
+     # test that chown doesn't cause any errors for Windows
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch
new file mode 100644
index 000000000000..243a9cfd76ae
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch
@@ -0,0 +1,30 @@
+From 44c2c979c4f2222567ce65f506cf47fb87482348 Mon Sep 17 00:00:00 2001
+From: Pontus Stenetorp <pontus@stenetorp.se>
+Date: Thu, 8 Apr 2021 04:37:44 +0000
+Subject: [PATCH 5/6] nix: Enable parallel unit tests for sandbox
+
+Disabled by default due to lack of networking in the Nix sandbox. This
+greatly speeds up the build process on a multi-core system.
+---
+ test/runtests.jl | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/test/runtests.jl b/test/runtests.jl
+index 2f9cd058bb..2f8c19fa32 100644
+--- a/test/runtests.jl
++++ b/test/runtests.jl
+@@ -83,8 +83,9 @@ prepend!(tests, linalg_tests)
+ import LinearAlgebra
+ cd(@__DIR__) do
+     n = 1
+-    if net_on
+-        n = min(Sys.CPU_THREADS, length(tests))
++    if net_on || haskey(ENV, "NIX_BUILD_CORES")
++        x = haskey(ENV, "NIX_BUILD_CORES") ? parse(Int, ENV["NIX_BUILD_CORES"]) : Sys.CPU_THREADS
++        n = min(x, Sys.CPU_THREADS, length(tests))
+         n > 1 && addprocs_with_testenv(n)
+         LinearAlgebra.BLAS.set_num_threads(1)
+     end
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/compilers/julia/update-1.5.py b/nixpkgs/pkgs/development/compilers/julia/update-1.5.py
deleted file mode 100755
index e37f37d456bf..000000000000
--- a/nixpkgs/pkgs/development/compilers/julia/update-1.5.py
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -i python3 -p python3 python3Packages.requests
-
-import os
-import re
-import requests
-import subprocess
-
-latest = requests.get("https://api.github.com/repos/JuliaLang/julia/releases/latest").json()["tag_name"]
-assert latest[0] == "v"
-major, minor, patch = latest[1:].split(".")
-assert major == "1"
-# When a new minor version comes out we'll have to refactor/copy this update script.
-assert minor == "5"
-
-sha256 = subprocess.check_output(["nix-prefetch-url", "--unpack", f"https://github.com/JuliaLang/julia/releases/download/v{major}.{minor}.{patch}/julia-{major}.{minor}.{patch}-full.tar.gz"], text=True).strip()
-
-nix_path = os.path.join(os.path.dirname(__file__), "1.5.nix")
-nix0 = open(nix_path, "r").read()
-nix1 = re.sub("maintenanceVersion = \".*\";", f"maintenanceVersion = \"{patch}\";", nix0)
-nix2 = re.sub("src_sha256 = \".*\";", f"src_sha256 = \"{sha256}\";", nix1)
-open(nix_path, "w").write(nix2)
diff --git a/nixpkgs/pkgs/development/compilers/koka/default.nix b/nixpkgs/pkgs/development/compilers/koka/default.nix
index 6523dcca2f62..30e273271ae3 100644
--- a/nixpkgs/pkgs/development/compilers/koka/default.nix
+++ b/nixpkgs/pkgs/development/compilers/koka/default.nix
@@ -4,12 +4,12 @@
 , parsec, process, regex-compat, text, time }:
 
 let
-  version = "2.1.1";
+  version = "2.1.4";
   src = fetchFromGitHub {
     owner = "koka-lang";
     repo = "koka";
     rev = "v${version}";
-    sha256 = "sha256-cq+dljfTKJh5NgwQfxQQP9jRcg2PQxxBVEgQ59ll36o=";
+    sha256 = "sha256-MPMA8ZErEKv1SrkliLsy35k88GrdsPqIK6yokQreIjE=";
     fetchSubmodules = true;
   };
   kklib = stdenv.mkDerivation {
diff --git a/nixpkgs/pkgs/development/compilers/kotlin/default.nix b/nixpkgs/pkgs/development/compilers/kotlin/default.nix
index 9154b7d76a64..5fdf58e56f5d 100644
--- a/nixpkgs/pkgs/development/compilers/kotlin/default.nix
+++ b/nixpkgs/pkgs/development/compilers/kotlin/default.nix
@@ -1,14 +1,12 @@
 { lib, stdenv, fetchurl, makeWrapper, jre, unzip }:
 
-let
-  version = "1.4.21";
-in stdenv.mkDerivation {
-  inherit version;
+stdenv.mkDerivation rec {
   pname = "kotlin";
+  version = "1.5.0";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "1ixnwrvgs14f9160d9d69r7w2dfp5cdwiwpk1ky0ps8nly8hjwj6";
+    sha256 = "1dyiis96skflhlsmc8byp5j8j3vsicmlslwyrkn1pv4gc8gzqhq3";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/nixpkgs/pkgs/development/compilers/ldc/generic.nix b/nixpkgs/pkgs/development/compilers/ldc/generic.nix
index 4261c2b65334..f79fb24a56b4 100644
--- a/nixpkgs/pkgs/development/compilers/ldc/generic.nix
+++ b/nixpkgs/pkgs/development/compilers/ldc/generic.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    cmake ldcBootstrap lit lit.python llvm_11 makeWrapper ninja unzip
+    cmake ldcBootstrap lit lit.python llvm_11.dev makeWrapper ninja unzip
   ]
   ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.Foundation
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/10/bintools/default.nix
index 53f7941e3369..53f7941e3369 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/bintools.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/bintools/default.nix
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/clang/default.nix
index 35b7ab313d8e..e0c52651cadc 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 }:
@@ -18,28 +19,33 @@ let
       mv clang-tools-extra-* $sourceRoot/tools/extra
     '';
 
-    nativeBuildInputs = [ cmake python3 lld ]
+    nativeBuildInputs = [ cmake python3 ]
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++14"
       "-DCLANGD_BUILD_XPC=OFF"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ];
 
     patches = [
       ./purity.patch
       # https://reviews.llvm.org/D51899
       ./compiler-rt-baremetal.patch
+      ./gnu-install-dirs.patch
     ];
 
     postPatch = ''
@@ -56,12 +62,12 @@ let
         --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -80,18 +86,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -110,6 +128,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..454c81875eab
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch
@@ -0,0 +1,248 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index dc1413f4b597..c173531e624f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,6 +9,8 @@ endif()
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(LLVM_CONFIG)
+@@ -417,7 +419,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -427,7 +429,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+@@ -447,7 +449,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh)
+   install(PROGRAMS utils/bash-autocomplete.sh
+-          DESTINATION share/clang
++          DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+           COMPONENT bash-autocomplete)
+   if(NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-bash-autocomplete
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index 577cc11ab015..a4f4481d8442 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -114,9 +114,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -160,7 +160,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT LLVM_ENABLE_IDE)
+@@ -175,7 +175,7 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+ 
+ function(clang_target_link_libraries target type)
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index 85c3124234ad..64c48235d914 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -191,7 +191,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+   FOLDER "Misc"
+   RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+ 
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${generated_files}
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..8efad5520ca4 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d77d75de0094 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index cda8e29ec5b1..0134d8ccd70b 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/diagtool/CMakeLists.txt b/tools/diagtool/CMakeLists.txt
+index a95444be40ee..136d96d9bf5b 100644
+--- a/tools/diagtool/CMakeLists.txt
++++ b/tools/diagtool/CMakeLists.txt
+@@ -21,7 +21,7 @@ clang_target_link_libraries(diagtool
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(TARGETS diagtool
+     COMPONENT diagtool
+-    RUNTIME DESTINATION bin)
++    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+   if (NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-diagtool
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 973655361f71..0181002e4e3b 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -141,7 +141,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -172,7 +172,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT LLVM_ENABLE_IDE)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 28241245fcb7..d6b59f02fc2a 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -42,7 +42,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -56,7 +56,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+     install(PROGRAMS libexec/${LibexecFile}
+-            DESTINATION libexec
++            DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -84,7 +84,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+     install(FILES share/scan-build/${ShareFile}
+-            DESTINATION share/scan-build
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build
+             COMPONENT scan-build)
+   endforeach()
+ 
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index 22edb974bac7..9f140a9a4538 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -22,7 +22,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-view)
+   endforeach()
+ 
+@@ -36,7 +36,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+     install(FILES share/${ShareFile}
+-            DESTINATION share/scan-view
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view
+             COMPONENT scan-view)
+   endforeach()
+ 
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 62f2de0cb15c..6aa66825b6ec 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+ install(PROGRAMS ${CLANG_HMAPTOOL}
+-        DESTINATION bin
++        DESTINATION ${CMAKE_INSTALL_BINDIR}
+         COMPONENT hmaptool)
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
index 1d759c903fc9..37c7e0599b5f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
@@ -1,19 +1,20 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
-stdenv.mkDerivation rec {
-  pname = "compiler-rt";
+stdenv.mkDerivation {
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
-  src = fetch pname "1yjqjri753w0fzmxcyz687nvd97sbc9rsqrxzpq720na47hwh3fr";
+  src = fetch "compiler-rt" "1yjqjri753w0fzmxcyz687nvd97sbc9rsqrxzpq720na47hwh3fr";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -29,14 +30,15 @@ stdenv.mkDerivation rec {
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
   ] ++ lib.optionals (useLLVM) [
     "-DCOMPILER_RT_BUILD_BUILTINS=ON"
-    "-DCMAKE_C_FLAGS=-nodefaultlibs"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
@@ -54,10 +56,10 @@ stdenv.mkDerivation rec {
   patches = [
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
     ./find-darwin-sdk-version.patch # don't test for macOS being >= 10.15
+    ./gnu-install-dirs.patch
   ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
 
-
   # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
   # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
   # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd
@@ -88,4 +90,19 @@ stdenv.mkDerivation rec {
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..db0bd006eaf2
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,129 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8d768a404f21..74551dc5a004 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,7 @@ endif()
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 35a48c6af29c..e4300f256091 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -493,7 +493,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -510,7 +510,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 9f501a61c4b6..f9a0d92dbca0 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -440,7 +440,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index 6e672b1e1818..64999709958e 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -371,7 +371,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index b4b87aa53073..f1ae8668837c 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -65,11 +65,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -97,7 +97,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index d47d7baeb118..507c8e5c713e 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -62,22 +62,22 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install fuzzer headers.
+ install(FILES ${FUZZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/fuzzer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/fuzzer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ # Install profile headers.
+ install(FILES ${PROFILE_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/profile)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/profile)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index 051215edbeb7..ecce1f52efb0 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -56,4 +56,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/default.nix
index 3fa91cd83749..11367d453cde 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 }:
 
 let
@@ -17,32 +28,57 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "06n1yp638rh24xdxv9v2df0qajxbjz4w59b7dd4ky36drwmpi4yh";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
+      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+    '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
       ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
       ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
-      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
+
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
-      inherit clang-tools-extra_src;
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
     };
 
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
     # disabled until recommonmark supports sphinx 3
-    #Llvm-manpages = lowPrio (tools.llvm.override {
+    #Llvm-manpages = lowPrio (tools.libllvm.override {
     #  enableManpages = true;
     #  python3 = pkgs.python3;  # don't use python-boot
     #});
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
@@ -53,8 +89,6 @@ let
     #   python3 = pkgs.python3;  # don't use python-boot
     # });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -77,9 +111,13 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
     # fully LLVM toolchain from scratch. No GCC toolchain should be
@@ -88,14 +126,21 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools.nix {};
+    bintools-unwrapped = callPackage ./bintools {};
+
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
 
-    lldClang = wrapCCWith rec {
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
+
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
@@ -107,17 +152,17 @@ let
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -128,13 +173,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -144,17 +186,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -163,33 +210,53 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
-      }));
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
-
-    libcxxabi = callPackage ./libc++abi ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libunwind = callPackage ./libunwind ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/libcxx/default.nix
index a3fb09273451..7c01e7317116 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxx/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "0v78bfr6h2zifvdqnj2wlfk4pvxzrqn3hg1v6lqk3y12bx9p9xny";
@@ -13,7 +13,13 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   preConfigure = ''
     # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
@@ -43,10 +49,15 @@ stdenv.mkDerivation {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.all;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..4b031e90bdd5
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,99 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 60564dc96c7b..77d832ad5a44 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,6 +26,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 10.0.1)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -415,7 +417,7 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+     string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+@@ -423,10 +425,10 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+   set(LIBCXX_HEADER_DIR  ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ endif()
+ 
+ file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 10f100f7f0fb..95ed3978ab73 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -61,7 +61,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 302da8a131b4..4c6ab463f564 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -244,7 +244,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT ${CXX_HEADER_TARGET}
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -253,7 +253,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   if (LIBCXX_NEEDS_SITE_CONFIG)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT ${CXX_HEADER_TARGET})
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 120505fe18da..9b8456d8405a 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -341,21 +341,21 @@ if (LIBCXX_INSTALL_LIBRARY)
+     install(TARGETS cxx_shared
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if (LIBCXX_INSTALL_STATIC_LIBRARY)
+     install(TARGETS cxx_static
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
+     install(TARGETS ${LIBCXX_INSTALL_TARGETS} ${experimental_lib}
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   # NOTE: This install command must go after the cxx install command otherwise
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/default.nix
index 1909996614dc..b427949a8426 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/default.nix
@@ -1,27 +1,14 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "0yqs722y76cwvmfsq0lb917r9m3fci7bf5z3yzl71yz9n88ghzm9";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
-
-  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
-  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
-    "-DLIBCXXABI_ENABLE_THREADS=OFF"
-    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
-  ] ++ lib.optionals (!enableShared) [
-    "-DLIBCXXABI_ENABLE_SHARED=OFF"
-  ];
-
-  patches = [ ./no-threads.patch ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -35,6 +22,24 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d llvm-*) -i ${./wasm.patch}
   '';
 
+  patches = [
+    ./no-threads.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -58,11 +63,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.all;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..0f80ade7c389
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8f9572586b4a..bf0e41dfc751 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 10.0.1)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -214,17 +216,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+     string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/no-threads.patch b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/no-threads.patch
index 787f3e16500e..787f3e16500e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/no-threads.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/no-threads.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/wasm.patch
index 4ebfe46aa813..4ebfe46aa813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/libc++abi/wasm.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libcxxabi/wasm.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/default.nix
index f0f45780a22c..8124cf0821e0 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, fetchpatch
+{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -8,7 +8,25 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "09syx66idnm2pr46x2vmk0jn3iwdv0lkd04xy4zjbwmz3vn066bl";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..8cea7d3e3341
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c033069ef1d0..e2846896eece 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
+   project(libunwind)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(NOT LLVM_CONFIG_PATH)
+@@ -189,17 +191,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+     string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ else()
+   set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
index a94c1b5b0dd3..5d590aec35ac 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
@@ -1,8 +1,9 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
@@ -12,20 +13,31 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "0ynzi35r4fckvp6842alpd43qr810j3728yfslc66fk2mbh4j52r";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
+      WebAssembly in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..232f5cbac9dd
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 641f71c114ae..9d44c1463aff 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -202,7 +204,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index fa48b428d26b..e7967aad3ceb 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index a15e296e31df..654c2cfdb9c0 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -17,7 +17,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/lldb/default.nix
index 7fb8ed57a01f..04b9e06e77a3 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , cmake
 , zlib
@@ -7,8 +7,8 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
@@ -22,19 +22,22 @@ stdenv.mkDerivation (rec {
 
   src = fetch pname "051p5b04y6z3g730rmc2n2v71lipbw7k69riww3a6sl74myfiaq7";
 
-  patches = [ ./procfs.patch ];
+  patches = [
+    ./procfs.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
 
-  nativeBuildInputs = [ cmake python3 which swig lit ]
-    ++ lib.optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
+  nativeBuildInputs = [
+    cmake python3 which swig lit
+  ] ++ lib.optionals enableManpages [
+    python3.pkgs.sphinx python3.pkgs.recommonmark
+  ];
 
   buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    llvm
-  ]
-  ++ lib.optionals stdenv.isDarwin [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
     darwin.libobjc
     darwin.apple_sdk.libs.xpc
     darwin.apple_sdk.frameworks.Foundation
@@ -46,8 +49,9 @@ stdenv.mkDerivation (rec {
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${clang-unwrapped}/lib/cmake"
+    "-DClang_DIR=${libclang.dev}/lib/cmake"
     "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
   ] ++ lib.optionals stdenv.isDarwin [
     "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
@@ -57,33 +61,42 @@ stdenv.mkDerivation (rec {
     "-DLLVM_ENABLE_SPHINX=ON"
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     # Editor support
     # vscode:
     install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
     mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage = "https://lldb.llvm.org";
-    license = licenses.ncsa;
-    platforms = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "lldb-manpages";
 
   buildPhase = ''
-    make docs-lldb-man
+    make docs-man
   '';
 
   propagatedBuildInputs = [];
 
+  # manually install lldb man page
   installPhase = ''
-    # manually install lldb man page
     mkdir -p $out/share/man/man1
     install docs/man/lldb.1 -t $out/share/man/man1/
   '';
@@ -95,5 +108,7 @@ stdenv.mkDerivation (rec {
 
   doCheck = false;
 
-  meta.description = "man pages for LLDB ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLDB ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..053a580e45ec
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch
@@ -0,0 +1,65 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 573b8556989e..a12cc6f6ba77 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,6 +17,8 @@ set(CMAKE_MODULE_PATH
+ # If we are not building as part of LLVM, build LLDB as a standalone project,
+ # using LLVM as an external library.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
++  include(GNUInstallDirs)
++
+   project(lldb)
+   include(LLDBStandalone)
+ 
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index ecf0b66a41a3..6f2d97af7a11 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -107,13 +107,13 @@ function(add_lldb_library name)
+   endif()
+ 
+   if(PARAM_SHARED)
+-    set(install_dest lib${LLVM_LIBDIR_SUFFIX})
++    set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+     if(PARAM_INSTALL_PREFIX)
+       set(install_dest ${PARAM_INSTALL_PREFIX})
+     endif()
+     # RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
+     install(TARGETS ${name} COMPONENT ${name}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       LIBRARY DESTINATION ${install_dest}
+       ARCHIVE DESTINATION ${install_dest}
+       FRAMEWORK DESTINATION ${install_dest})
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 4a15a343ee1d..c74bbb6878d7 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -238,7 +238,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -247,7 +247,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index aff75d7db334..98a527c5e761 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -64,4 +64,4 @@ if (LLDB_ENABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix
index 3100eaf4db4d..93cdc7307daa 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
+, fetchpatch
 , cmake
 , python3
 , libffi
@@ -10,10 +12,10 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
@@ -44,8 +46,7 @@ in stdenv.mkDerivation (rec {
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
@@ -55,10 +56,21 @@ in stdenv.mkDerivation (rec {
 
   propagatedBuildInputs = [ ncurses zlib ];
 
+  patches = [
+    ./gnu-install-dirs.patch
+    # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
+    (fetchpatch {
+      name = "uops-CMOV16rm-noreg.diff";
+      url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
+      sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
+      stripLen = 1;
+    })
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
+
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -97,6 +109,7 @@ in stdenv.mkDerivation (rec {
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -120,7 +133,20 @@ in stdenv.mkDerivation (rec {
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_10}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -134,20 +160,19 @@ in stdenv.mkDerivation (rec {
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-  ''
-  + optionalString (enableSharedLibraries && (!stdenv.isDarwin)) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isx86_32);
@@ -155,12 +180,23 @@ in stdenv.mkDerivation (rec {
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -182,5 +218,7 @@ in stdenv.mkDerivation (rec {
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..3353058d8ab1
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9939097f743e..8cc538da912a 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -145,14 +149,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 211f95512717..f9e04a4844b6 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 86de6f10686e..91f30891ccbe 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8ffd984e542b..261cc19f3238 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -274,7 +274,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..155bab32f439
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch
@@ -0,0 +1,416 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0e85afa82c76..3e700d9c5fae 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -253,15 +253,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -527,9 +533,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -993,7 +999,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1005,7 +1011,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1020,13 +1026,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index f5a1b0d6f238..a7387224d68f 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -729,9 +729,9 @@ macro(add_llvm_library name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              RUNTIME DESTINATION bin COMPONENT ${name})
++              LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -934,7 +934,7 @@ function(process_llvm_pass_plugins)
+           "set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
+       install(FILES
+           ${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
+-          DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
++          DESTINATION ${LLVM_INSTALL_CMAKE_DIR}
+           COMPONENT cmake-exports)
+ 
+       set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
+@@ -1147,7 +1147,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1713,7 +1713,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1730,7 +1730,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1753,7 +1753,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1836,7 +1836,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1958,9 +1959,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 554046b20edf..4d1ad980641e 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -144,9 +144,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 2bf654b60c44..450ee45d86e6 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -78,7 +78,7 @@ function (add_sphinx_target builder project)
+         endif()
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index af757d6199a8..b0fb7e7705d1 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -96,13 +96,13 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
+ set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+ set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 09fed8085c23..aa79f192abf0 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message(STATUS "Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index a86ebb3a37bd..e720711e2b3c 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -516,8 +516,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -548,13 +548,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   macOS Only: If enabled CMake will generate a target named
+@@ -740,9 +760,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/examples/Bye/CMakeLists.txt b/examples/Bye/CMakeLists.txt
+index 3206f90d0916..1822965fc35f 100644
+--- a/examples/Bye/CMakeLists.txt
++++ b/examples/Bye/CMakeLists.txt
+@@ -9,5 +9,5 @@ add_llvm_pass_plugin(Bye
+   BUILDTREE_ONLY
+  )
+ 
+-install(TARGETS ${name} RUNTIME DESTINATION examples)
++install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+ set_target_properties(${name} PROPERTIES FOLDER "Examples")
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index 63cef75368b7..6295478b1f3d 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -23,6 +23,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index fb12e29a36a8..dbb6c2b90332 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -358,12 +358,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index b86e4abd01a7..02ce5773f17d 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -23,7 +23,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index ead73ec13a8f..250362021f17 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,7 +8,7 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
+ 
+diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
+index e948496c603a..1f4df8a98b10 100644
+--- a/tools/remarks-shlib/CMakeLists.txt
++++ b/tools/remarks-shlib/CMakeLists.txt
+@@ -11,7 +11,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/Remarks.exports)
+ add_llvm_library(Remarks SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES})
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT Remarks)
+ 
+ if (APPLE)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/10/openmp.nix
deleted file mode 100644
index 2946c51fafe2..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/10/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch pname "0i4bn84lkpm5w3qkpvwm5z6jdj8fynp7d3bcasa1xyq4is6757yi";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/openmp/default.nix
new file mode 100644
index 000000000000..a1b04c7c66b2
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch pname "0i4bn84lkpm5w3qkpvwm5z6jdj8fynp7d3bcasa1xyq4is6757yi";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/11/bintools/default.nix
index 53f7941e3369..53f7941e3369 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/bintools.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/bintools/default.nix
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix
index 2e03112d827d..74078c1ac667 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix
@@ -1,6 +1,8 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, fetchpatch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
+, enablePolly ? false
 }:
 
 let
@@ -19,26 +21,47 @@ let
       mv clang-tools-extra-* $sourceRoot/tools/extra
     '';
 
-    nativeBuildInputs = [ cmake python3 lld ]
+    nativeBuildInputs = [ cmake python3 ]
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++14"
       "-DCLANGD_BUILD_XPC=OFF"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
+    ] ++ lib.optionals enablePolly [
+      "-DWITH_POLLY=ON"
+      "-DLINK_POLLY_INTO_TOOLS=ON"
     ];
 
+
     patches = [
       ./purity.patch
       # https://reviews.llvm.org/D51899
+      ./gnu-install-dirs.patch
+      # Revert: [Driver] Default to -fno-common for all targets
+      # https://reviews.llvm.org/D75056
+      #
+      # Maintains compatibility with packages that haven't been fixed yet, and
+      # matches gcc10's configuration in nixpkgs.
+      (fetchpatch {
+        revert = true;
+        url = "https://github.com/llvm/llvm-project/commit/0a9fc9233e172601e26381810d093e02ef410f65.diff";
+        stripLen = 1;
+        excludes = [ "docs/*" "test/*" ];
+        sha256 = "0gxgmi0qbm89mq911dahallhi8m6wa9vpklklqmxafx4rplrr8ph";
+      })
     ];
 
     postPatch = ''
@@ -55,12 +78,12 @@ let
         --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -79,18 +102,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -109,6 +144,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..98ea97e05808
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/clang/gnu-install-dirs.patch
@@ -0,0 +1,235 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bb4b801f01c8..77a8b43b22c8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,6 +9,8 @@ endif()
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to conform to")
+   set(CMAKE_CXX_STANDARD_REQUIRED YES)
+   set(CMAKE_CXX_EXTENSIONS NO)
+@@ -447,7 +449,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -457,7 +459,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+@@ -477,7 +479,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh)
+   install(PROGRAMS utils/bash-autocomplete.sh
+-          DESTINATION share/clang
++          DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+           COMPONENT bash-autocomplete)
+   if(NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-bash-autocomplete
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index 704278a0e93b..d25c8d325c71 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -123,9 +123,9 @@ macro(add_clang_library name)
+         install(TARGETS ${lib}
+           COMPONENT ${lib}
+           ${export_to_clangtargets}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          RUNTIME DESTINATION bin)
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+         if (NOT LLVM_ENABLE_IDE)
+           add_llvm_install_targets(install-${lib}
+@@ -170,7 +170,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT LLVM_ENABLE_IDE)
+@@ -185,7 +185,7 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+ 
+ function(clang_target_link_libraries target type)
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index 0692fe75a441..6f201e7207d0 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -208,7 +208,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+   FOLDER "Misc"
+   RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+ 
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${generated_files}
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..8efad5520ca4 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d77d75de0094 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index cda8e29ec5b1..0134d8ccd70b 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 5cd9ac5cddc1..a197676fedbd 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -165,7 +165,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -196,7 +196,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT LLVM_ENABLE_IDE)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index ec0702d76f18..d25d982f51da 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -61,7 +61,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+     install(PROGRAMS libexec/${LibexecFile}
+-            DESTINATION libexec
++            DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -89,7 +89,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+     install(FILES share/scan-build/${ShareFile}
+-            DESTINATION share/scan-build
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build
+             COMPONENT scan-build)
+   endforeach()
+ 
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index 22edb974bac7..9f140a9a4538 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -22,7 +22,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-view)
+   endforeach()
+ 
+@@ -36,7 +36,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+     install(FILES share/${ShareFile}
+-            DESTINATION share/scan-view
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view
+             COMPONENT scan-view)
+   endforeach()
+ 
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 62f2de0cb15c..6aa66825b6ec 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+ install(PROGRAMS ${CLANG_HMAPTOOL}
+-        DESTINATION bin
++        DESTINATION ${CMAKE_INSTALL_BINDIR}
+         COMPONENT hmaptool)
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
index 6ab36063077f..65b024e8cc32 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
@@ -1,20 +1,21 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
+  isNewDarwinBootstrap = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
-stdenv.mkDerivation rec {
-  pname = "compiler-rt";
+stdenv.mkDerivation {
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
-  src = fetch pname "0x1j8ngf1zj63wlnns9vlibafq48qcm72p4jpaxkmkb4qw0grwfy";
+  src = fetch "compiler-rt" "0x1j8ngf1zj63wlnns9vlibafq48qcm72p4jpaxkmkb4qw0grwfy";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
-  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
 
   NIX_CFLAGS_COMPILE = [
     "-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0"
@@ -24,27 +25,28 @@ stdenv.mkDerivation rec {
     "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
     "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
     "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
-  ] ++ lib.optionals (stdenv.isDarwin) [
-    "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
-    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
-    "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}"
-  ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
+  ] ++ lib.optionals (useLLVM || bareMetal || isMusl || isNewDarwinBootstrap) [
     "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals (!haveLibc || bareMetal) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
-  ] ++ lib.optionals (useLLVM) [
-    "-DCOMPILER_RT_BUILD_BUILTINS=ON"
+  ] ++ lib.optionals (!haveLibc) [
     "-DCMAKE_C_FLAGS=-nodefaultlibs"
+  ] ++ lib.optionals (useLLVM || isNewDarwinBootstrap) [
+    "-DCOMPILER_RT_BUILD_BUILTINS=ON"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
     "-DCOMPILER_RT_OS_DIR=baremetal"
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [
+    "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
+    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
+    "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}"
   ];
 
   outputs = [ "out" "dev" ];
@@ -52,10 +54,18 @@ stdenv.mkDerivation rec {
   patches = [
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
     ./X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
+    ./gnu-install-dirs.patch
+    # ld-wrapper dislikes `-rpath-link //nix/store`, so we normalize away the
+    # extra `/`.
+    ./normalize-var.patch
   ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
 
 
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    cmakeFlagsArray+=("-DCMAKE_LIPO=$(command -v ${stdenv.cc.targetPrefix}lipo)")
+  '';
+
   # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
   # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
   # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd
@@ -66,7 +76,7 @@ stdenv.mkDerivation rec {
       --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
   '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace cmake/builtin-config-ix.cmake \
-      --replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)'
+      --replace 'foreach(arch ''${ARM64})' 'foreach(arch)'
     substituteInPlace cmake/config-ix.cmake \
       --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
   '' + lib.optionalString (useLLVM) ''
@@ -88,4 +98,19 @@ stdenv.mkDerivation rec {
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..91e208829295
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,129 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fa62814b635d..6328614d829e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,7 @@ endif()
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 7c127a93dfa7..6a95a65b70a7 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -524,7 +524,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -541,7 +541,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index be8d7e733c7a..ab256bdff26c 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -498,7 +498,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index 99b9f0e4af44..c5183ffa746e 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -375,7 +375,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index 964dd598f102..2acaab87d349 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -66,11 +66,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -98,7 +98,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index d47d7baeb118..507c8e5c713e 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -62,22 +62,22 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install fuzzer headers.
+ install(FILES ${FUZZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/fuzzer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/fuzzer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ # Install profile headers.
+ install(FILES ${PROFILE_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/profile)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/profile)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index 051215edbeb7..ecce1f52efb0 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -56,4 +56,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/normalize-var.patch b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/normalize-var.patch
new file mode 100644
index 000000000000..b9986910e516
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt/normalize-var.patch
@@ -0,0 +1,16 @@
+diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake
+index c5183ffa746e..e4e4a007335d 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -299,8 +299,9 @@ macro(load_llvm_config)
+     # Get some LLVM variables from LLVMConfig.
+     include("${LLVM_CMAKE_PATH}/LLVMConfig.cmake")
+ 
+-    set(LLVM_LIBRARY_OUTPUT_INTDIR
+-      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
++    get_filename_component(LLVM_LIBRARY_OUTPUT_INTDIR
++      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}
++      REALPATH)
+   endif()
+ endmacro()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/default.nix
index 22209ffb6470..1aad123fba9a 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 }:
 
 let
@@ -19,32 +30,70 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "18n1w1hkv931xzq02b34wglbv6zd6sd0r5kb8piwvag7klj7qw3n";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
+      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+    '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
       ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
       ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
-      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
+
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
+
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
+    };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
+    };
+
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
+    clang-polly-unwrapped = callPackage ./clang {
+      inherit llvm_meta;
       inherit clang-tools-extra_src;
+      libllvm = tools.libllvm-polly;
+      enablePolly = true;
     };
 
-    # disabled until recommonmark supports sphinx 3
-    #Llvm-manpages = lowPrio (tools.llvm.override {
-    #  enableManpages = true;
-    #  python3 = pkgs.python3;  # don't use python-boot
-    #});
+    llvm-manpages = lowPrio (tools.libllvm.override {
+      enableManpages = true;
+      python3 = pkgs.python3;  # don't use python-boot
+    });
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
@@ -55,8 +104,6 @@ let
     #   python3 = pkgs.python3;  # don't use python-boot
     # });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -79,9 +126,13 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
     # fully LLVM toolchain from scratch. No GCC toolchain should be
@@ -90,14 +141,21 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools.nix {};
+    bintools-unwrapped = callPackage ./bintools {};
+
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
 
-    lldClang = wrapCCWith rec {
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
@@ -109,17 +167,17 @@ let
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -130,13 +188,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -146,17 +201,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -165,33 +225,53 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
-      }));
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
-
-    libcxxabi = callPackage ./libc++abi ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libunwind = callPackage ./libunwind ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libcxx/default.nix
index 6adb824f539d..596d7f9976bb 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxx/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenv, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version
+{ lib, stdenv, llvm_meta, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "1rgqsqpgi0vkga5d7hy0iyfsqgzfz7q1xy7afdfa1snp1qjks8xv";
@@ -15,6 +15,8 @@ stdenv.mkDerivation {
     mv llvm-* llvm
   '';
 
+  outputs = [ "out" "dev" ];
+
   patches = [
     (fetchpatch {
       # Backported from LLVM 12, avoids clashes with commonly used "block.h" header.
@@ -22,7 +24,10 @@ stdenv.mkDerivation {
       sha256 = "sha256-aWa66ogmPkG0xHzSfcpD0qZyZQcNKwLV44js4eiun78=";
       stripLen = 1;
     })
-  ] ++ lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
     patchShebangs utils/cat_files.py
@@ -41,16 +46,34 @@ stdenv.mkDerivation {
       "-DLIBCXX_ENABLE_THREADS=OFF"
       "-DLIBCXX_ENABLE_FILESYSTEM=OFF"
       "-DLIBCXX_ENABLE_EXCEPTIONS=OFF"
-    ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF";
+    ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF"
+
+    # TODO: this is a bit of a hack to cross compile to Apple Silicon.  libcxx
+    # starting with 11 enables CMAKE_BUILD_WITH_INSTALL_NAME_DIR which requires
+    # platform setup for rpaths. In cmake, this is enabled when macos is newer
+    # than 10.5. However CMAKE_SYSTEM_VERSION is set to empty (TODO: why?)
+    # which prevents the conditional configuration, and configure fails.  The
+    # value here corresponds to `uname -r`. If stdenv.hostPlatform.release is
+    # not null, then this property will be set via mkDerivation (TODO: how can
+    # we set this?).
+    ++ lib.optional (
+      stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 &&
+      stdenv.hostPlatform != stdenv.buildPlatform
+    ) "-DCMAKE_SYSTEM_VERSION=20.1.0";
 
   passthru = {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.all;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..2b95d6a85d8f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,100 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 910d04b54b6d..80ef692d83eb 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -31,6 +31,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 11.1.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -418,7 +420,7 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+     string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+@@ -426,11 +428,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+   set(LIBCXX_HEADER_DIR  ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
+   set(LIBCXX_HEADER_DIR  ${CMAKE_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ endif()
+ 
+ file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index c5aa26739e36..8841c4a5252d 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index be8141c98166..93847e5758cc 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -257,7 +257,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT ${CXX_HEADER_TARGET}
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -265,7 +265,7 @@ if (LIBCXX_INSTALL_HEADERS)
+ 
+   # Install the generated header as __config.
+   install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     RENAME __config
+     COMPONENT ${CXX_HEADER_TARGET})
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 2001c09761d9..5bd11ea6b400 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -344,21 +344,21 @@ if (LIBCXX_INSTALL_LIBRARY)
+     install(TARGETS cxx_shared
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if (LIBCXX_INSTALL_STATIC_LIBRARY)
+     install(TARGETS cxx_static
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
+     install(TARGETS cxx_experimental
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   # NOTE: This install command must go after the cxx install command otherwise
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/default.nix
index c35ec706a023..65e0139a5910 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/default.nix
@@ -1,27 +1,14 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "1azcf31mxw59hb1x17xncnm3dyw90ylh8rqx462lvypqh3nr6c8l";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
-
-  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
-  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
-    "-DLIBCXXABI_ENABLE_THREADS=OFF"
-    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
-  ] ++ lib.optionals (!enableShared) [
-    "-DLIBCXXABI_ENABLE_SHARED=OFF"
-  ];
-
-  patches = [ ./no-threads.patch ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -36,6 +23,24 @@ stdenv.mkDerivation {
     patch -p1 -d llvm -i ${./wasm.patch}
   '';
 
+  patches = [
+    ./no-threads.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -43,7 +48,7 @@ stdenv.mkDerivation {
         # the magic combination of necessary CMake variables
         # if you fancy a try, take a look at
         # https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling
-        install_name_tool -id $out/$file $file
+        ${stdenv.cc.targetPrefix}install_name_tool -id $out/$file $file
       done
       make install
       install -d 755 $out/include
@@ -59,11 +64,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.all;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..10651c1255ef
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 36c6b2249e2b..a93c13ccaed9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -24,6 +24,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 11.1.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -160,17 +162,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+     string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/no-threads.patch b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/no-threads.patch
index 787f3e16500e..787f3e16500e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/no-threads.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/no-threads.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/wasm.patch
index 4ebfe46aa813..4ebfe46aa813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi/wasm.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libcxxabi/wasm.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/default.nix
index 0c635cabc0a9..462d63283baf 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, fetchpatch
+{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -8,7 +8,25 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "1vpqs2c358v8fbr1r8jmzkfqk12jllimjcfmgxga127ksq9b37nj";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b5b9c209278e
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e44a103648f9..aaf1f9555d7f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
+   project(libunwind LANGUAGES C CXX ASM)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(NOT LLVM_CONFIG_PATH)
+@@ -192,17 +194,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+     string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ else()
+   set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
index 1a16184a6e71..d344d3d3c117 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
@@ -1,8 +1,9 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
@@ -12,20 +13,31 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "1kk61i7z5bi9i11rzsd2b388d42if1c7a45zkaa4mk0yps67hyh1";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
+      WebAssembly in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..19cf5526aa50
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 040bb2c8f6d7..f765f0096d97 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -205,7 +207,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index 23df41312403..d62372c88de7 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index e6f72fcd3488..d903609e6e4f 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/lldb/default.nix
index fc9b471ec9ab..785ac4671ef5 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , cmake
 , zlib
@@ -7,8 +7,8 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
@@ -22,19 +22,22 @@ stdenv.mkDerivation (rec {
 
   src = fetch pname "1vlyg015dyng43xqb8cg2l6r9ix8klibxsajazbfnckdnh54hwxj";
 
-  patches = [ ./procfs.patch ];
+  patches = [
+    ./procfs.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
 
-  nativeBuildInputs = [ cmake python3 which swig lit ]
-    ++ lib.optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
+  nativeBuildInputs = [
+    cmake python3 which swig lit
+  ] ++ lib.optionals enableManpages [
+    python3.pkgs.sphinx python3.pkgs.recommonmark
+  ];
 
   buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    llvm
-  ]
-  ++ lib.optionals stdenv.isDarwin [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
     darwin.libobjc
     darwin.apple_sdk.libs.xpc
     darwin.apple_sdk.frameworks.Foundation
@@ -46,8 +49,9 @@ stdenv.mkDerivation (rec {
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${clang-unwrapped}/lib/cmake"
+    "-DClang_DIR=${libclang.dev}/lib/cmake"
     "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
   ] ++ lib.optionals stdenv.isDarwin [
     "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
@@ -57,33 +61,42 @@ stdenv.mkDerivation (rec {
     "-DLLVM_ENABLE_SPHINX=ON"
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     # Editor support
     # vscode:
     install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
     mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage = "https://lldb.llvm.org";
-    license = licenses.ncsa;
-    platforms = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "lldb-manpages";
 
   buildPhase = ''
-    make docs-lldb-man
+    make docs-man
   '';
 
   propagatedBuildInputs = [];
 
+  # manually install lldb man page
   installPhase = ''
-    # manually install lldb man page
     mkdir -p $out/share/man/man1
     install docs/man/lldb.1 -t $out/share/man/man1/
   '';
@@ -95,5 +108,7 @@ stdenv.mkDerivation (rec {
 
   doCheck = false;
 
-  meta.description = "man pages for LLDB ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLDB ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..a4769109523d
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/lldb/gnu-install-dirs.patch
@@ -0,0 +1,65 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bf748020ea40..34103d2b5e1a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,6 +17,8 @@ set(CMAKE_MODULE_PATH
+ # If we are not building as part of LLVM, build LLDB as a standalone project,
+ # using LLVM as an external library.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
++  include(GNUInstallDirs)
++
+   project(lldb)
+   include(LLDBStandalone)
+ 
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 4ed5c647c5d2..89f96e710d55 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -107,13 +107,13 @@ function(add_lldb_library name)
+   endif()
+ 
+   if(PARAM_SHARED)
+-    set(install_dest lib${LLVM_LIBDIR_SUFFIX})
++    set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+     if(PARAM_INSTALL_PREFIX)
+       set(install_dest ${PARAM_INSTALL_PREFIX})
+     endif()
+     # RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
+     install(TARGETS ${name} COMPONENT ${name}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       LIBRARY DESTINATION ${install_dest}
+       ARCHIVE DESTINATION ${install_dest}
+       FRAMEWORK DESTINATION ${install_dest})
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 8465cfe3b7b7..01b7eae136e2 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -245,7 +245,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -254,7 +254,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index efba2f74904f..e08413b1dbb1 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -65,4 +65,4 @@ if (LLDB_ENABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/default.nix
index ee2fe9c90b2b..192cacd6510c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
+, fetchpatch
 , cmake
 , python3
 , libffi
@@ -10,15 +12,15 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
 )
-, enablePolly ? false
+, enablePolly ? false # TODO should be on by default
 }:
 
 let
@@ -44,8 +46,7 @@ in stdenv.mkDerivation (rec {
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
@@ -55,10 +56,21 @@ in stdenv.mkDerivation (rec {
 
   propagatedBuildInputs = [ ncurses zlib ];
 
+  patches = [
+    ./gnu-install-dirs.patch
+    # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
+    (fetchpatch {
+      name = "uops-CMOV16rm-noreg.diff";
+      url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
+      sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
+      stripLen = 1;
+    })
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
+
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -99,6 +111,7 @@ in stdenv.mkDerivation (rec {
   LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -122,7 +135,20 @@ in stdenv.mkDerivation (rec {
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_11}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -136,33 +162,43 @@ in stdenv.mkDerivation (rec {
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-  ''
-  + optionalString (enableSharedLibraries && (!stdenv.isDarwin)) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
-  doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl);
+  doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) && (!stdenv.hostPlatform.isRiscV);
 
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -184,5 +220,7 @@ in stdenv.mkDerivation (rec {
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..fff2d4953e94
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9939097f743e..8cc538da912a 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -145,14 +149,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 211f95512717..f9e04a4844b6 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 86de6f10686e..91f30891ccbe 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 1039079cb49c..28b499ae1e9e 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -275,7 +275,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..29df98a693f0
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/llvm/gnu-install-dirs.patch
@@ -0,0 +1,417 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 247ad36d3845..815e2c4ba955 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -269,15 +269,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -559,9 +565,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -1107,7 +1113,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1119,7 +1125,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1134,13 +1140,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index b74adc11ade9..a5aa258cde30 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -766,9 +766,9 @@ macro(add_llvm_library name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              RUNTIME DESTINATION bin COMPONENT ${name})
++              LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -981,7 +981,7 @@ function(process_llvm_pass_plugins)
+           "set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
+       install(FILES
+           ${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
+-          DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
++          DESTINATION ${LLVM_INSTALL_CMAKE_DIR}
+           COMPONENT cmake-exports)
+ 
+       set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
+@@ -1201,7 +1201,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1819,7 +1819,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1836,7 +1836,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1859,7 +1859,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1942,7 +1942,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -2064,9 +2065,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 554046b20edf..4d1ad980641e 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -144,9 +144,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index b5babb30abcf..190b1222a9f9 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -84,7 +84,7 @@ function (add_sphinx_target builder project)
+         endif()
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 4b8879f65fe4..f01920bcc60f 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -108,13 +108,13 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
+ set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+ set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ 
+ # Generate a default location for lit
+ if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 09fed8085c23..aa79f192abf0 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message(STATUS "Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index 1f908d3e95b1..1315e0aa40e1 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -516,8 +516,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -548,13 +548,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   macOS Only: If enabled CMake will generate a target named
+@@ -752,9 +772,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/examples/Bye/CMakeLists.txt b/examples/Bye/CMakeLists.txt
+index bb96edb4b4bf..678c22fb43c8 100644
+--- a/examples/Bye/CMakeLists.txt
++++ b/examples/Bye/CMakeLists.txt
+@@ -14,6 +14,6 @@ if (NOT WIN32)
+     BUILDTREE_ONLY
+    )
+ 
+-  install(TARGETS ${name} RUNTIME DESTINATION examples)
++  install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endif()
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index b46319f24fc8..2feabd1954e4 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -5,5 +5,5 @@ add_subdirectory(Frontend)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index 63cef75368b7..6295478b1f3d 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -23,6 +23,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 7e74b7c90816..f185e9283f83 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -358,12 +358,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = std::string(path.str());
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 2963f97cad88..69d66c9c9ca1 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -25,7 +25,7 @@ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS
+     intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index ead73ec13a8f..250362021f17 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,7 +8,7 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
+ 
+diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
+index e948496c603a..1f4df8a98b10 100644
+--- a/tools/remarks-shlib/CMakeLists.txt
++++ b/tools/remarks-shlib/CMakeLists.txt
+@@ -11,7 +11,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/Remarks.exports)
+ add_llvm_library(Remarks SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES})
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT Remarks)
+ 
+ if (APPLE)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix
deleted file mode 100644
index c99358cd2878..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, fetchpatch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch pname "0bh5cswgpc79awlq8j5i7hp355adaac7s6zaz0zwp6mkflxli1yi";
-
-  patches = [
-    # Fix compilation on aarch64-darwin, remove after the next release.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch";
-      sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es=";
-      stripLen = 1;
-    })
-  ];
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/openmp/default.nix
new file mode 100644
index 000000000000..330560a677dc
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/openmp/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, fetchpatch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch pname "0bh5cswgpc79awlq8j5i7hp355adaac7s6zaz0zwp6mkflxli1yi";
+
+  patches = [
+    # Fix compilation on aarch64-darwin, remove after the next release.
+    (fetchpatch {
+      url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch";
+      sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es=";
+      stripLen = 1;
+    })
+  ];
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
index ab329e3d85d7..3d1106dbc52c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 }:
@@ -18,26 +19,31 @@ let
       unpackFile ${clang-tools-extra_src}
     '';
 
-    nativeBuildInputs = [ cmake python3 lld ]
+    nativeBuildInputs = [ cmake python3 ]
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++14"
       "-DCLANGD_BUILD_XPC=OFF"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ];
 
     patches = [
       ./purity.patch
       # https://reviews.llvm.org/D51899
+      ./gnu-install-dirs.patch
     ];
 
     postPatch = ''
@@ -51,12 +57,12 @@ let
       sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -75,11 +81,14 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
     meta = llvm_meta // {
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b834d386b4eb
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/clang/gnu-install-dirs.patch
@@ -0,0 +1,235 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9e74014134a0..976e6a1757fd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.13.4)
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to conform to")
+   set(CMAKE_CXX_STANDARD_REQUIRED YES)
+   set(CMAKE_CXX_EXTENSIONS NO)
+@@ -416,7 +418,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -425,7 +427,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+@@ -445,7 +447,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh)
+   install(PROGRAMS utils/bash-autocomplete.sh
+-          DESTINATION share/clang
++          DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+           COMPONENT bash-autocomplete)
+   if(NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-bash-autocomplete
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index 704278a0e93b..d25c8d325c71 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -123,9 +123,9 @@ macro(add_clang_library name)
+         install(TARGETS ${lib}
+           COMPONENT ${lib}
+           ${export_to_clangtargets}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          RUNTIME DESTINATION bin)
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+         if (NOT LLVM_ENABLE_IDE)
+           add_llvm_install_targets(install-${lib}
+@@ -170,7 +170,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT LLVM_ENABLE_IDE)
+@@ -185,7 +185,7 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+ 
+ function(clang_target_link_libraries target type)
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index b2c0ce8dd4a0..19e5443d8c25 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -215,7 +215,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+   FOLDER "Misc"
+   RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+ 
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${generated_files}
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..8efad5520ca4 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d77d75de0094 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index cda8e29ec5b1..0134d8ccd70b 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 51ff2e7e1565..1ed5f8a079a1 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -166,7 +166,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -196,7 +196,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT LLVM_ENABLE_IDE)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index ec0702d76f18..d25d982f51da 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -61,7 +61,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+     install(PROGRAMS libexec/${LibexecFile}
+-            DESTINATION libexec
++            DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -89,7 +89,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+     install(FILES share/scan-build/${ShareFile}
+-            DESTINATION share/scan-build
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build
+             COMPONENT scan-build)
+   endforeach()
+ 
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index dd3d33439299..fea19c12ce70 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -19,7 +19,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-view)
+   endforeach()
+ 
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+     install(FILES share/${ShareFile}
+-            DESTINATION share/scan-view
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view
+             COMPONENT scan-view)
+   endforeach()
+ 
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 62f2de0cb15c..6aa66825b6ec 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+ install(PROGRAMS ${CLANG_HMAPTOOL}
+-        DESTINATION bin
++        DESTINATION ${CMAKE_INSTALL_BINDIR}
+         COMPONENT hmaptool)
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-X86-support-extension.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch
index f6f9336ad5ad..f6f9336ad5ad 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-X86-support-extension.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-armv7l.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/armv7l.patch
index 120cfe6feb2a..120cfe6feb2a 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-armv7l.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/armv7l.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-codesign.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/codesign.patch
index 3cc12b94b200..3cc12b94b200 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/compiler-rt-codesign.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/codesign.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/darwin-targetconditionals.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/darwin-targetconditionals.patch
new file mode 100644
index 000000000000..425dc2af01e7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/darwin-targetconditionals.patch
@@ -0,0 +1,71 @@
+diff --git a/lib/sanitizer_common/sanitizer_mac.cpp b/lib/sanitizer_common/sanitizer_mac.cpp
+--- a/lib/sanitizer_common/sanitizer_mac.cpp
++++ b/lib/sanitizer_common/sanitizer_mac.cpp
+@@ -613,9 +613,15 @@ HandleSignalMode GetHandleSignalMode(int signum) {
+ // Offset example:
+ // XNU 17 -- macOS 10.13 -- iOS 11 -- tvOS 11 -- watchOS 4
+ constexpr u16 GetOSMajorKernelOffset() {
+-  if (TARGET_OS_OSX) return 4;
+-  if (TARGET_OS_IOS || TARGET_OS_TV) return 6;
+-  if (TARGET_OS_WATCH) return 13;
++#if TARGET_OS_OSX
++  return 4;
++#endif
++#if TARGET_OS_IOS || TARGET_OS_TV
++  return 6;
++#endif
++#if TARGET_OS_WATCH
++  return 13;
++#endif
+ }
+ 
+ using VersStr = char[64];
+@@ -627,13 +633,13 @@ static uptr ApproximateOSVersionViaKernelVersion(VersStr vers) {
+   u16 os_major = kernel_major - offset;
+ 
+   const char *format = "%d.0";
+-  if (TARGET_OS_OSX) {
+-    if (os_major >= 16) {  // macOS 11+
+-      os_major -= 5;
+-    } else {  // macOS 10.15 and below
+-      format = "10.%d";
+-    }
++#if TARGET_OS_OSX
++  if (os_major >= 16) {  // macOS 11+
++    os_major -= 5;
++  } else {  // macOS 10.15 and below
++    format = "10.%d";
+   }
++#endif
+   return internal_snprintf(vers, sizeof(VersStr), format, os_major);
+ }
+ 
+@@ -681,15 +687,14 @@ void ParseVersion(const char *vers, u16 *major, u16 *minor) {
+ // Aligned versions example:
+ // macOS 10.15 -- iOS 13 -- tvOS 13 -- watchOS 6
+ static void MapToMacos(u16 *major, u16 *minor) {
+-  if (TARGET_OS_OSX)
+-    return;
+-
+-  if (TARGET_OS_IOS || TARGET_OS_TV)
++#if !TARGET_OS_OSX
++#if TARGET_OS_IOS || TARGET_OS_TV
+     *major += 2;
+-  else if (TARGET_OS_WATCH)
++#elif TARGET_OS_WATCH
+     *major += 9;
+-  else
++#else
+     UNREACHABLE("unsupported platform");
++#endif
+ 
+   if (*major >= 16) {  // macOS 11+
+     *major -= 5;
+@@ -697,6 +702,7 @@ static void MapToMacos(u16 *major, u16 *minor) {
+     *minor = *major;
+     *major = 10;
+   }
++#endif
+ }
+ 
+ static MacosVersion GetMacosAlignedVersionInternal() {
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
index bf7f4bc4312a..cde1317ca35d 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
@@ -4,16 +4,17 @@ let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
-stdenv.mkDerivation rec {
-  pname = "compiler-rt";
+stdenv.mkDerivation {
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
-  src = fetch pname "0d444qihq9jhqnfv003cr704v363va72zl6qaw2algj1c85cva45";
+  src = fetch "compiler-rt" "0d444qihq9jhqnfv003cr704v363va72zl6qaw2algj1c85cva45";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -24,36 +25,43 @@ stdenv.mkDerivation rec {
     "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
     "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
     "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
-  ] ++ lib.optionals (stdenv.isDarwin) [
-    "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
-    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}"
   ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
     "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
   ] ++ lib.optionals (useLLVM) [
     "-DCOMPILER_RT_BUILD_BUILTINS=ON"
-    "-DCMAKE_C_FLAGS=-nodefaultlibs"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
     "-DCOMPILER_RT_OS_DIR=baremetal"
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [
+    "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
+    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
+    "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}"
   ];
 
   outputs = [ "out" "dev" ];
 
   patches = [
-    ./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
-    ./compiler-rt-X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
+    ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+    ./X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
+    ./gnu-install-dirs.patch
+    # ld-wrapper dislikes `-rpath-link //nix/store`, so we normalize away the
+    # extra `/`.
+    ./normalize-var.patch
   ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
-    ++ lib.optional stdenv.hostPlatform.isAarch32 ./compiler-rt-armv7l.patch;
-
+    # Prevent a compilation error on darwin
+    ++ lib.optional stdenv.hostPlatform.isDarwin ./darwin-targetconditionals.patch
+    ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
 
   # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
   # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..5f025764de1c
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,129 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b44ad2c2118e..d42f5664d448 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,7 @@ cmake_minimum_required(VERSION 3.13.4)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 361538a58e47..f0d8d9ab80f1 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -495,7 +495,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -512,7 +512,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 456a8dcda59f..7a09e74c7c79 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -508,7 +508,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index f61d487e93a0..f1f46fb9599c 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -378,7 +378,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index 1edab43e7c0d..1aac6b73ff82 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -65,11 +65,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -97,7 +97,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index b00e8caa1ddd..0fe64e4862c9 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -69,22 +69,22 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install fuzzer headers.
+ install(FILES ${FUZZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/fuzzer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/fuzzer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ # Install profile headers.
+ install(FILES ${PROFILE_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/profile)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/profile)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index a29de8deff1b..d39ff01613d2 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -57,4 +57,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/normalize-var.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/normalize-var.patch
new file mode 100644
index 000000000000..135cf625ef78
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/normalize-var.patch
@@ -0,0 +1,16 @@
+diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake
+index f1f46fb9599c..6f19e69507ba 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -302,8 +302,9 @@ macro(load_llvm_config)
+     # Get some LLVM variables from LLVMConfig.
+     include("${LLVM_CMAKE_PATH}/LLVMConfig.cmake")
+ 
+-    set(LLVM_LIBRARY_OUTPUT_INTDIR
+-      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
++    get_filename_component(LLVM_LIBRARY_OUTPUT_INTDIR
++      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}
++      REALPATH)
+   endif()
+ endmacro()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
index a6d68d2e2a44..35228eac43be 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 , darwin
 }:
 
@@ -27,34 +38,50 @@ let
   };
 
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
+      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+    '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
       ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
       ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
-      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
 
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm {
+    libllvm = callPackage ./llvm {
       inherit llvm_meta;
     };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
       inherit clang-tools-extra_src llvm_meta;
     };
 
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
     # disabled until recommonmark supports sphinx 3
-    #Llvm-manpages = lowPrio (tools.llvm.override {
+    #Llvm-manpages = lowPrio (tools.libllvm.override {
     #  enableManpages = true;
     #  python3 = pkgs.python3;  # don't use python-boot
     #});
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
@@ -65,8 +92,6 @@ let
     #   python3 = pkgs.python3;  # don't use python-boot
     # });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -91,7 +116,7 @@ let
 
     lld = callPackage ./lld {
       inherit llvm_meta;
-      libunwind = libraries.libunwind;
+      inherit (libraries) libunwind;
     };
 
     lldb = callPackage ./lldb {
@@ -108,14 +133,21 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools {};
+    bintools-unwrapped = callPackage ./bintools {};
+
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
 
-    lldClang = wrapCCWith rec {
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
@@ -127,17 +159,17 @@ let
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -148,13 +180,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -164,17 +193,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -183,33 +217,54 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt ({ inherit llvm_meta; } //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
-      }));
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libcxx ({ inherit llvm_meta; } //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
-
-    libcxxabi = callPackage ./libcxxabi ({ inherit llvm_meta; } //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp { inherit llvm_meta; };
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libunwind = callPackage ./libunwind ({ inherit llvm_meta; } //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      inherit (buildLlvmTools) llvm;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
index 7b3b26b959e4..1c9a7dd3c53b 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
@@ -15,7 +15,13 @@ stdenv.mkDerivation {
     mv llvm-* llvm
   '';
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
     patchShebangs utils/cat_files.py
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..1f9de00a9d56
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,100 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9bf1a02f0908..612cd4aab76c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 12.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -402,7 +404,7 @@ endif ()
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+     string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+@@ -410,11 +412,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+   set(LIBCXX_HEADER_DIR  ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
+   set(LIBCXX_HEADER_DIR  ${CMAKE_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ endif()
+ 
+ file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 5d2764e870e9..bb1ec5de6ca2 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 29a317b8ae9a..4747263cfd1b 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT cxx-headers
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -260,7 +260,7 @@ if (LIBCXX_INSTALL_HEADERS)
+ 
+   # Install the generated header as __config.
+   install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     RENAME __config
+     COMPONENT cxx-headers)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 9965104cb5b2..9b55dbb1d822 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -352,21 +352,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
+   install(TARGETS cxx_shared
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ if (LIBCXX_INSTALL_STATIC_LIBRARY)
+   install(TARGETS cxx_static
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
+   install(TARGETS cxx_experimental
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ # NOTE: This install command must go after the cxx install command otherwise
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
index dab6c583e889..e360cf8d0b2f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
@@ -8,18 +8,7 @@ stdenv.mkDerivation {
 
   src = fetch "libcxxabi" "1cbmzspwjlr8f6sp73pw6ivf4dpg6rpc61by0q1m2zca2k6yif3a";
 
-  nativeBuildInputs = [ cmake python3 ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
-
-  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
-  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
-    "-DLIBCXXABI_ENABLE_THREADS=OFF"
-    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
-  ] ++ lib.optionals (!enableShared) [
-    "-DLIBCXXABI_ENABLE_SHARED=OFF"
-  ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -31,9 +20,26 @@ stdenv.mkDerivation {
   '' + lib.optionalString stdenv.hostPlatform.isMusl ''
     patch -p1 -d libcxx -i ${../../libcxx-0001-musl-hacks.patch}
   '' + lib.optionalString stdenv.hostPlatform.isWasm ''
-    patch -p1 -d llvm -i ${./libcxxabi-wasm.patch}
+    patch -p1 -d llvm -i ${./wasm.patch}
   '';
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake python3 ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b49b1685940f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 426c855288fc..a9812a994f53 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 11.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -180,17 +182,17 @@ set(CMAKE_MODULE_PATH
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+     string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/wasm.patch
index 4ebfe46aa813..4ebfe46aa813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/wasm.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/wasm.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
index 8b75146d7b22..abfe950614ad 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
@@ -15,6 +15,12 @@ stdenv.mkDerivation rec {
     mv llvm-* llvm
   '';
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..a791d6c43231
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 48cb8e004e08..fec8144fb95a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -23,6 +23,8 @@ set(LIBUNWIND_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
+   project(libunwind LANGUAGES C CXX ASM)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libunwind)
+   set(PACKAGE_VERSION 12.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -115,17 +117,17 @@ set(CMAKE_MODULE_PATH
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+     string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ else()
+   set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
index 18b72a904071..e2c7470d2fc5 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , libunwind
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
@@ -13,8 +14,9 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "1zakyxk5bwnh7jarckcd4rbmzi58jgn2dbah5j5cwcyfyfbx9drc";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
 
   postPatch = ''
     substituteInPlace MachO/CMakeLists.txt --replace \
@@ -23,12 +25,16 @@ stdenv.mkDerivation rec {
     tar -xf "${libunwind.src}" --wildcards -C libunwind/include --strip-components=2 "libunwind-*/include/"
   '';
 
-  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libllvm libxml2 ];
+
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
@@ -37,7 +43,7 @@ stdenv.mkDerivation rec {
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
       that are useful for toolchain developers.
-      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS) and
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
       WebAssembly in descending order of completeness. Internally, LLD consists
       of several different linkers.
     '';
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..61e2f0e48653
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d4e561b50d8f..cfa5bdd79c2a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -179,7 +181,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     )
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index 23df41312403..d62372c88de7 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index 5cff736ff57f..64e775c771b9 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
index 1fce82d7990e..07517308b467 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
@@ -1,4 +1,5 @@
 { lib, stdenv, llvm_meta
+, runCommand
 , fetch
 , cmake
 , zlib
@@ -7,8 +8,8 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , libobjc
@@ -27,17 +28,30 @@ stdenv.mkDerivation (rec {
 
   src = fetch pname "1v85qyq3snk81vjmwq5q7xikyyqsfpqy2c4qmr81mps4avsw1g0l";
 
-  patches = [ ./lldb-procfs.patch ];
+  patches = [
+    ./procfs.patch
+    (runCommand "resource-dir.patch" {
+      clangLibDir = "${libclang.lib}/lib";
+    } ''
+      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
+    '')
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
 
-  nativeBuildInputs = [ cmake python3 which swig lit ]
-    ++ lib.optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
+  nativeBuildInputs = [
+    cmake python3 which swig lit
+  ] ++ lib.optionals enableManpages [
+    python3.pkgs.sphinx python3.pkgs.recommonmark
+  ];
 
   buildInputs = [
     ncurses
     zlib
     libedit
     libxml2
-    llvm
+    libllvm
   ]
   ++ lib.optionals stdenv.isDarwin [
     libobjc
@@ -51,8 +65,9 @@ stdenv.mkDerivation (rec {
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${clang-unwrapped}/lib/cmake"
+    "-DClang_DIR=${libclang.dev}/lib/cmake"
     "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
   ] ++ lib.optionals stdenv.isDarwin [
     "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
@@ -62,8 +77,13 @@ stdenv.mkDerivation (rec {
     "-DLLVM_ENABLE_SPHINX=ON"
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     # Editor support
     # vscode:
@@ -90,6 +110,7 @@ stdenv.mkDerivation (rec {
   '';
 
   propagatedBuildInputs = [];
+
   # manually install lldb man page
   installPhase = ''
     mkdir -p $out/share/man/man1
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..98321f4479e6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/gnu-install-dirs.patch
@@ -0,0 +1,65 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b5633e21c56a..f2f1035e9238 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,6 +10,8 @@ set(CMAKE_MODULE_PATH
+ # If we are not building as part of LLVM, build LLDB as a standalone project,
+ # using LLVM as an external library.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
++  include(GNUInstallDirs)
++
+   project(lldb)
+   include(LLDBStandalone)
+ 
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 4ed5c647c5d2..89f96e710d55 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -107,13 +107,13 @@ function(add_lldb_library name)
+   endif()
+ 
+   if(PARAM_SHARED)
+-    set(install_dest lib${LLVM_LIBDIR_SUFFIX})
++    set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+     if(PARAM_INSTALL_PREFIX)
+       set(install_dest ${PARAM_INSTALL_PREFIX})
+     endif()
+     # RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
+     install(TARGETS ${name} COMPONENT ${name}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       LIBRARY DESTINATION ${install_dest}
+       ARCHIVE DESTINATION ${install_dest}
+       FRAMEWORK DESTINATION ${install_dest})
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 2fdf1502d055..37364341ff8b 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -225,7 +225,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".cmake" EXCLUDE
+@@ -233,7 +233,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".cmake" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index 734167e51bc5..f95761b5df58 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -65,4 +65,4 @@ if (LLDB_ENABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/lldb-procfs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/procfs.patch
index b075dbaeee0a..b075dbaeee0a 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/lldb-procfs.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/procfs.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/resource-dir.patch b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/resource-dir.patch
new file mode 100644
index 000000000000..e0db80afeb9f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/resource-dir.patch
@@ -0,0 +1,13 @@
+diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake
+index 37364341ff8b..7f74c1a3e257 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -257,7 +257,7 @@ if (NOT TARGET clang-resource-headers)
+   # Iterate over the possible places where the external resource directory
+   # could be and pick the first that exists.
+   foreach(CANDIDATE "${Clang_DIR}/../.." "${LLVM_DIR}" "${LLVM_LIBRARY_DIRS}"
+-                    "${LLVM_BUILD_LIBRARY_DIR}"
++                    "${LLVM_BUILD_LIBRARY_DIR}" "@clangLibDir@"
+                     "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}")
+     # Build the resource directory path by appending 'clang/<version number>'.
+     set(CANDIDATE_RESOURCE_DIR "${CANDIDATE}/clang/${LLDB_CLANG_RESOURCE_DIR_NAME}")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
index 33bb7b931f1e..d2365745b982 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
@@ -1,5 +1,7 @@
 { lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
+, fetchpatch
 , cmake
 , python3
 , libffi
@@ -10,10 +12,10 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
@@ -44,8 +46,7 @@ in stdenv.mkDerivation (rec {
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
@@ -56,20 +57,25 @@ in stdenv.mkDerivation (rec {
   propagatedBuildInputs = [ ncurses zlib ];
 
   patches = [
-    # Force a test to evaluate the saved benchmark for a CPU for which LLVM has
-    # an execution model. See NixOS/nixpkgs#119673.
-    ../../exegesis-force-bdver2.patch
-  ];
+    ./gnu-install-dirs.patch
+    # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
+    (fetchpatch {
+      name = "uops-CMOV16rm-noreg.diff";
+      url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
+      sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
+      stripLen = 1;
+    })
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
 
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
-    substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib
-    patch -p1 < ./llvm-outputs.patch
+    substitute '${./outputs.patch}' ./outputs.patch --subst-var lib
+    patch -p1 < ./outputs.patch
   '' + ''
     # FileSystem permissions tests fail with various special bits
     substituteInPlace unittests/Support/CMakeLists.txt \
@@ -108,6 +114,7 @@ in stdenv.mkDerivation (rec {
   LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -131,11 +138,24 @@ in stdenv.mkDerivation (rec {
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_12}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
-    rm -R $out
+    rm -fR $out
   '';
 
   preCheck = ''
@@ -145,20 +165,19 @@ in stdenv.mkDerivation (rec {
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-  ''
-  + optionalString (enableSharedLibraries && (!stdenv.isDarwin)) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl);
@@ -191,6 +210,8 @@ in stdenv.mkDerivation (rec {
     make docs-llvm-man
   '';
 
+  propagatedBuildInputs = [];
+
   installPhase = ''
     make -C docs install
   '';
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..68f3c45396f6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,105 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index ca7c04c565bb..6ed5db5dd4f8 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.13.4)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -122,13 +126,13 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 7cc129ba2e90..137be25e4b80 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 518a09b45a42..bd9d6f5542ad 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8991094d92c7..178d8ad606bb 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -275,7 +275,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..da8dc1445171
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/gnu-install-dirs.patch
@@ -0,0 +1,417 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 277d0fe54d7b..af69c8be8745 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -256,15 +256,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -567,9 +573,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -1027,7 +1033,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1038,7 +1044,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1052,13 +1058,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index 97c9980c7de3..409e8b615f75 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -804,9 +804,9 @@ macro(add_llvm_library name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              RUNTIME DESTINATION bin COMPONENT ${name})
++              LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -1022,7 +1022,7 @@ function(process_llvm_pass_plugins)
+           "set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
+       install(FILES
+           ${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
+-          DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
++          DESTINATION ${LLVM_INSTALL_CMAKE_DIR}
+           COMPONENT cmake-exports)
+ 
+       set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
+@@ -1242,7 +1242,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1854,7 +1854,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1871,7 +1871,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1894,7 +1894,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1977,7 +1977,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -2100,9 +2101,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 554046b20edf..4d1ad980641e 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -144,9 +144,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index e80c3b5c1cac..482f6d715ef5 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -90,7 +90,7 @@ function (add_sphinx_target builder project)
+         endif()
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 505dc9a29d70..36e6c63af3f4 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -107,13 +107,13 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
+ set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+ set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ 
+ # Generate a default location for lit
+ if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 09fed8085c23..aa79f192abf0 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message(STATUS "Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index bb821b417ad9..6a528f7c2ad3 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -550,8 +550,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -582,13 +582,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   macOS Only: If enabled CMake will generate a target named
+@@ -786,9 +806,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/examples/Bye/CMakeLists.txt b/examples/Bye/CMakeLists.txt
+index bb96edb4b4bf..678c22fb43c8 100644
+--- a/examples/Bye/CMakeLists.txt
++++ b/examples/Bye/CMakeLists.txt
+@@ -14,6 +14,6 @@ if (NOT WIN32)
+     BUILDTREE_ONLY
+    )
+ 
+-  install(TARGETS ${name} RUNTIME DESTINATION examples)
++  install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endif()
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index b46319f24fc8..2feabd1954e4 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -5,5 +5,5 @@ add_subdirectory(Frontend)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index ebe5b73a5c65..70c497be12f5 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -23,6 +23,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 1a2f04552d13..44fa7d3eec6b 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -357,12 +357,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = std::string(path.str());
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 2963f97cad88..69d66c9c9ca1 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -25,7 +25,7 @@ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS
+     intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index ead73ec13a8f..250362021f17 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,7 +8,7 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
+ 
+diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
+index 865436247270..ce1daa62f6ab 100644
+--- a/tools/remarks-shlib/CMakeLists.txt
++++ b/tools/remarks-shlib/CMakeLists.txt
+@@ -19,7 +19,7 @@ if(LLVM_ENABLE_PIC)
+   endif()
+   
+   install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
+-    DESTINATION include/llvm-c
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+     COMPONENT Remarks)
+ 
+   if (APPLE)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/llvm-outputs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/outputs.patch
index 40096fa3497f..40096fa3497f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/llvm-outputs.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/outputs.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/clang/default.nix
index 21961f4f0413..b5887a23c65e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 }:
@@ -22,20 +23,27 @@ let
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++11"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ];
 
-    patches = [ ./purity.patch ];
+    patches = [
+      ./purity.patch
+      ./gnu-install-dirs.patch
+    ];
 
     postPatch = ''
       sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
@@ -48,12 +56,12 @@ let
       sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -70,18 +78,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -100,6 +120,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..7e6903222f45
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/clang/gnu-install-dirs.patch
@@ -0,0 +1,242 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2667b1d6892e..87c5ad58738f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.4.3)
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   find_program(LLVM_CONFIG "llvm-config")
+@@ -344,7 +346,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.def"
+     PATTERN "*.h"
+@@ -353,7 +355,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+     PATTERN "*.inc"
+@@ -361,7 +363,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(PROGRAMS utils/bash-autocomplete.sh
+-    DESTINATION share/clang
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+     )
+ endif()
+ 
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index e657059744a4..19da44638fe6 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -99,9 +99,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+         add_custom_target(install-${name}
+@@ -143,7 +143,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -160,5 +160,5 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index a621c02644e3..e140efc9c83c 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -129,13 +129,13 @@ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${cuda_wrapper_files}
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
+   add_custom_target(install-clang-headers
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ad990e010eef..92e52d05afb9 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -48,7 +48,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-check/CMakeLists.txt b/tools/clang-check/CMakeLists.txt
+index 04151a8e0331..13918d91c4ba 100644
+--- a/tools/clang-check/CMakeLists.txt
++++ b/tools/clang-check/CMakeLists.txt
+@@ -19,4 +19,4 @@ target_link_libraries(clang-check
+   )
+ 
+ install(TARGETS clang-check
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index a13633eaefc4..9b0094783690 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -20,20 +20,20 @@ if( LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-offload-bundler/CMakeLists.txt b/tools/clang-offload-bundler/CMakeLists.txt
+index 6161d08ae587..a003292d1676 100644
+--- a/tools/clang-offload-bundler/CMakeLists.txt
++++ b/tools/clang-offload-bundler/CMakeLists.txt
+@@ -21,4 +21,4 @@ target_link_libraries(clang-offload-bundler
+   ${CLANG_OFFLOAD_BUNDLER_LIB_DEPS}
+   )
+ 
+-install(TARGETS clang-offload-bundler RUNTIME DESTINATION bin)
++install(TARGETS clang-offload-bundler RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index 771e3bdea6f0..d1396e62b28f 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -14,11 +14,11 @@ target_link_libraries(clang-rename
+   clangToolingRefactor
+   )
+ 
+-install(TARGETS clang-rename RUNTIME DESTINATION bin)
++install(TARGETS clang-rename RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 2dd670307636..1fe576f77ddb 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -121,7 +121,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 380379300b09..adfd58ed5f7d 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(LibexecFile ${LibexecFiles})
+@@ -53,7 +53,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/libexec/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+-    install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec)
++    install(PROGRAMS libexec/${LibexecFile} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+   endforeach()
+ 
+   foreach(ManPage ${ManPages})
+@@ -77,7 +77,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/share/scan-build/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+-    install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build)
++    install(FILES share/scan-build/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build)
+   endforeach()
+ 
+   add_custom_target(scan-build ALL DEPENDS ${Depends})
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index b305ca562a72..554bcb379061 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -21,7 +21,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(ShareFile ${ShareFiles})
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/share/scan-view/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+-    install(FILES share/${ShareFile} DESTINATION share/scan-view)
++    install(FILES share/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view)
+   endforeach()
+ 
+   add_custom_target(scan-view ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/default.nix
index 705c5994bd14..a14823571e17 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   inherit version;
   src = fetch "compiler-rt" "0ipd4jdxpczgr2w6lzrabymz6dhzj69ywmyybjjc1q397zgrvziy";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -54,6 +54,7 @@ stdenv.mkDerivation {
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
     # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
     ../../common/compiler-rt/glibc.patch
+    ./gnu-install-dirs.patch
   ] ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional (stdenv.hostPlatform.libc == "glibc") ./sys-ustat.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
@@ -85,4 +86,19 @@ stdenv.mkDerivation {
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/linux/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..618e597e96d4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,103 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f997c53410c1..ac079d89b57b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,7 @@ cmake_minimum_required(VERSION 3.4.3)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+ endif()
+ 
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index bc5fb9ff722b..91fb79d1980c 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -344,7 +344,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_PREFIX}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -361,7 +361,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index f646975475bb..75885bf305b8 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -391,7 +391,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index b38c6ca96fac..a4580414cbc8 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -43,11 +43,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -67,9 +67,9 @@ if(NOT DEFINED COMPILER_RT_OS_DIR)
+   string(TOLOWER ${CMAKE_SYSTEM_NAME} COMPILER_RT_OS_DIR)
+ endif()
+ set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+-  ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
++  ${COMPILER_RT_OUTPUT_DIR}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-  ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++  ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ 
+ if(APPLE)
+   # On Darwin if /usr/include doesn't exist, the user probably has Xcode but not
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index ec3bf40b95e6..af119f10ee2b 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -44,8 +44,8 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ # Install sanitizer headers.
+ install(FILES ${SANITIZER_HEADERS}
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index 2c486bff821b..0ee715da95f8 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -44,4 +44,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH})
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_PREFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/default.nix
index 86bba415c015..d11c08329d54 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/default.nix
@@ -1,6 +1,5 @@
 { lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
 }:
@@ -17,35 +16,55 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "018b3fiwah8f8br5i26qmzh6sjvzchpn358sn8v079m49f2jldm3";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
     mkExtraBuildCommands = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
-      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
     '';
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
+
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
+
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
+    };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit clang-tools-extra_src;
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
     };
 
-    llvm-manpages = lowPrio (tools.llvm.override {
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
+    llvm-manpages = lowPrio (tools.libllvm.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -68,26 +87,38 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
   });
 
   libraries = lib.makeExtensible (libraries: let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt {};
+    compiler-rt = callPackage ./compiler-rt {
+      inherit llvm_meta;
+    };
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ {};
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+    };
 
-    libcxxabi = callPackage ./libc++abi {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/libcxx/default.nix
index 164836e1a4ce..44026fba187b 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/libcxx/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version }:
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "1672aaf95fgy4xsfra8pw24f6r93zwzpan1033hkcm8p2glqipvf";
@@ -11,7 +11,11 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optionals stdenv.hostPlatform.isMusl [
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
     ../../libcxx-0001-musl-hacks.patch
   ];
 
@@ -41,10 +45,15 @@ stdenv.mkDerivation {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.unix;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..d9ea0dc7dfd0
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,72 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ca5afba86d19..ed69e4043c3d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -22,6 +22,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 5.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index b1f6bee8f945..1b455fceed7f 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -55,7 +55,7 @@ macro(setup_abi_lib abidefines abilib abifiles abidirs)
+           )
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT libcxx
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 5a1b2ccdc426..106d3d6c1d3c 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -20,7 +20,7 @@ endif()
+ 
+ if (LIBCXX_INSTALL_HEADERS)
+   install(DIRECTORY .
+-    DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1
++    DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+     COMPONENT cxx-headers
+     FILES_MATCHING
+     ${LIBCXX_HEADER_PATTERN}
+@@ -44,7 +44,7 @@ if (LIBCXX_INSTALL_HEADERS)
+     set(generated_config_deps generate_config_header)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT cxx-headers)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index 578651423f3b..277befd631ac 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -355,8 +355,8 @@ if (LIBCXX_INSTALL_LIBRARY)
+     set(experimental_lib cxx_experimental)
+   endif()
+   install(TARGETS ${LIBCXX_TARGETS} ${experimental_lib}
+-    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+-    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+     )
+   # NOTE: This install command must go after the cxx install command otherwise
+   # it will not be executed after the library symlinks are installed.
+@@ -364,7 +364,7 @@ if (LIBCXX_INSTALL_LIBRARY)
+     # Replace the libc++ filename with $<TARGET_LINKER_FILE:cxx>
+     # after we required CMake 3.0.
+     install(FILES "${LIBCXX_LIBRARY_DIR}/libc++${CMAKE_SHARED_LIBRARY_SUFFIX}"
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX}
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX}
+       COMPONENT libcxx)
+   endif()
+ endif()
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/default.nix
index dd148a8917f9..5146e20089b7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/default.nix
@@ -1,13 +1,12 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version }:
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "12lp799rskr4fc2xr64qn4jfkjnfd8b1aymvsxyn4k9ar7r9pgqv";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -19,6 +18,13 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
   '';
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -41,11 +47,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.unix;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..760d7194f7b9
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4db3328deb9c..74b39acfe588 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 5.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index adcc412880c9..71758665af05 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -174,8 +174,8 @@ endif()
+ add_custom_target(cxxabi DEPENDS ${LIBCXXABI_TARGETS})
+ 
+ install(TARGETS ${LIBCXXABI_TARGETS}
+-  LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+-  ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++  LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++  ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+   )
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
index 244960cf41ba..7e74e79a15c7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
@@ -1,31 +1,42 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
-, llvm
+, libllvm
 , version
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
   src = fetch "lld" "1ah75rjly6747jk1zbwca3z0svr9b09ylgxd4x9ns721xir6sia6";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm ];
+  buildInputs = [ libllvm ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
-    badPlatforms = [ "x86_64-darwin" ];
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), and Mach-O (macOS)
+      in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..ed673870dec5
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e2ab0e35f1ab..f68e23d2a70d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -203,7 +205,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index fd1d44199ca6..2ec1831ed8f6 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_custom_target(install-${name}
+@@ -56,7 +56,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -73,5 +73,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index 2df10697ff66..94aa8d092220 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -13,7 +13,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/lldb/default.nix
index 61a9e60391c8..951e9c8e1ac6 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , fetchpatch
 , cmake
@@ -8,14 +8,14 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lldb";
   inherit version;
 
@@ -28,38 +28,59 @@ stdenv.mkDerivation {
       sha256 = "1zbx4m0m8kbg0wq6740jcw151vb2pb1p25p401wiq8diqqagkjps";
       stripLen = 1;
     })
+    ./gnu-install-dirs.patch
   ];
 
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
-    sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
+    sed -i 's,".*ClangConfig.cmake","${libclang.dev}/lib/cmake/clang/ClangConfig.cmake",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
+    sed -i 's,".*tools/clang/include","${libclang.dev}/include",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
+    sed -i 's,"$.LLVM_LIBRARY_DIR.",${libllvm.lib}/lib ${libclang.lib}/lib,' \
       cmake/modules/LLDBStandalone.cmake
   '';
 
-  nativeBuildInputs = [ cmake python3 which swig ];
-  buildInputs = [ ncurses zlib libedit libxml2 llvm ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa ];
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake python3 which swig
+  ];
+
+  buildInputs = [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.libobjc
+    darwin.apple_sdk.libs.xpc
+    darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa
+  ];
 
   CXXFLAGS = "-fno-rtti";
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     mkdir -p $out/share/man/man1
     cp ../docs/lldb.1 $out/share/man/man1/
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage    = "https://llvm.org/";
-    license     = licenses.ncsa;
-    platforms   = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..5c6193b028fa
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/lldb/gnu-install-dirs.patch
@@ -0,0 +1,76 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ada293811b3e..6c2149309f65 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,8 @@ set(CMAKE_MODULE_PATH
+   "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+   )
+ 
++include(GNUInstallDirs)
++
+ include(LLDBStandalone)
+ include(LLDBConfig)
+ include(AddLLDB)
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 4c6f1efd673d..179a12b49cce 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -54,14 +54,14 @@ function(add_lldb_library name)
+         endif()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+           LIBRARY DESTINATION ${out_dir}
+           ARCHIVE DESTINATION ${out_dir})
+       else()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_custom_target(install-${name}
+@@ -126,7 +126,7 @@ function(add_lldb_executable name)
+   if(ARG_GENERATE_INSTALL AND NOT (ARG_INCLUDE_IN_FRAMEWORK AND LLDB_BUILD_FRAMEWORK ))
+     install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin)
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+     if (NOT CMAKE_CONFIGURATION_TYPES)
+       add_custom_target(install-${name}
+                         DEPENDS ${name}
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 726552675f47..f1f769f34446 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -276,7 +276,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb_headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -286,7 +286,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb_headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-mpx/CMakeLists.txt b/tools/intel-mpx/CMakeLists.txt
+index 29ba9a1cacec..30e2f9334b95 100644
+--- a/tools/intel-mpx/CMakeLists.txt
++++ b/tools/intel-mpx/CMakeLists.txt
+@@ -12,4 +12,4 @@ target_link_libraries(lldb-intel-mpxtable
+                       PUBLIC liblldb LLVMSupport)
+ 
+ install(TARGETS lldb-intel-mpxtable
+-  LIBRARY DESTINATION bin)
++  LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/default.nix
index 94d2a1e58638..54fd783a7c2d 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
 , fetchpatch
 , cmake
@@ -10,9 +11,11 @@
 , version
 , release_version
 , zlib
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
 , enableSharedLibraries ? !enableManpages
+, enablePolly ? false
 }:
 
 let
@@ -29,15 +32,18 @@ stdenv.mkDerivation ({
   inherit version;
 
   src = fetch "llvm" "0g1bbj2n6xv4p1n6hh17vj3vpvg56wacipc81dgwga9mg2lys8nm";
+  polly_src = fetch "polly" "1f4i1qsw7ywx25v262p8syz339zcbvfkx295xz26hmqrn944xa6x";
 
   unpackPhase = ''
     unpackFile $src
     mv llvm-${version}* llvm
     sourceRoot=$PWD/llvm
+  '' + optionalString enablePolly ''
+    unpackFile $polly_src
+    mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optional enableManpages python3.pkgs.sphinx;
@@ -59,11 +65,13 @@ stdenv.mkDerivation ({
     #  sha256 = "0injj1hqgrbcbihhwp2nbal88jfykad30r54f2cdcx7gws2fcy8i";
     #  stripLen = 1;
     #})
-  ];
+    ./gnu-install-dirs.patch
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
+
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -90,6 +98,7 @@ stdenv.mkDerivation ({
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -100,20 +109,36 @@ stdenv.mkDerivation ({
     "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
     "-DTARGET_TRIPLE=${stdenv.hostPlatform.config}"
   ]
-  ++ optional enableSharedLibraries
+  ++ lib.optional enableSharedLibraries
     "-DLLVM_LINK_LLVM_DYLIB=ON"
-  ++ optionals enableManpages [
+  ++ lib.optionals enableManpages [
     "-DLLVM_BUILD_DOCS=ON"
     "-DLLVM_ENABLE_SPHINX=ON"
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
     "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
   ]
-  ++ optional (!isDarwin)
+  ++ lib.optional (!isDarwin)
     "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ++ optionals (isDarwin) [
+  ++ lib.optionals (isDarwin) [
     "-DLLVM_ENABLE_LIBCXX=ON"
     "-DCAN_TARGET_i386=false"
+  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DCMAKE_CROSSCOMPILING=True"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -127,21 +152,20 @@ stdenv.mkDerivation ({
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    moveToOutput "lib/libLTO${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLTO.dylib" "$lib/lib/libLTO.dylib"
     ${lib.concatMapStringsSep "\n" (v: ''
       ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${v}.dylib
     '') versionSuffixes}
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isi686);
@@ -149,12 +173,23 @@ stdenv.mkDerivation ({
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -173,5 +208,7 @@ stdenv.mkDerivation ({
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..40f6fa06036c
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9ddc0f7ff81d..7ca45f286d47 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -157,14 +161,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 969292cd6b00..d7aea77bdd20 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 32bed50bb060..cca5bfff4970 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 286c04fba287..07905e68f595 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -268,7 +268,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..3f6d6acb83f7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/llvm/gnu-install-dirs.patch
@@ -0,0 +1,386 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c1e03aed4809..8b8bbb8c403e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -279,15 +279,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "bin" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -512,9 +518,9 @@ option (LLVM_ENABLE_DOXYGEN "Use doxygen to generate llvm API documentation." OF
+ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -945,7 +951,7 @@ add_subdirectory(cmake/modules)
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -957,7 +963,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index 1c922651b133..d555fd627a4f 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -589,11 +589,11 @@ macro(add_llvm_library name)
+   else()
+     if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LTO" OR
+         (LLVM_LINK_LLVM_DYLIB AND ${name} STREQUAL "LLVM"))
+-      set(install_dir lib${LLVM_LIBDIR_SUFFIX})
++      set(install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       if(ARG_SHARED OR BUILD_SHARED_LIBS)
+         if(WIN32 OR CYGWIN OR MINGW)
+           set(install_type RUNTIME)
+-          set(install_dir bin)
++          set(install_dir ${CMAKE_INSTALL_BINDIR})
+         else()
+           set(install_type LIBRARY)
+         endif()
+@@ -637,9 +637,9 @@ macro(add_llvm_loadable_module name)
+       if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+         if(WIN32 OR CYGWIN)
+           # DLL platform
+-          set(dlldir "bin")
++          set(dlldir "${CMAKE_INSTALL_BINDIR}")
+         else()
+-          set(dlldir "lib${LLVM_LIBDIR_SUFFIX}")
++          set(dlldir "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+         endif()
+ 
+         if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
+@@ -651,7 +651,7 @@ macro(add_llvm_loadable_module name)
+         install(TARGETS ${name}
+                 ${export_to_llvmexports}
+                 LIBRARY DESTINATION ${dlldir}
+-                ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++                ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+     endif()
+@@ -864,7 +864,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1275,7 +1275,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1293,7 +1293,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1316,7 +1316,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT CMAKE_CONFIGURATION_TYPES AND NOT ARG_ALWAYS_GENERATE)
+@@ -1400,7 +1400,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1452,9 +1453,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 1d8094cc505f..afdbe6e6d19c 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -140,9 +140,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 4540c5c36c8e..4cefb17fbd55 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -73,7 +73,7 @@ function (add_sphinx_target builder project)
+ 
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index ac4b0b7c0304..21a6a3da8667 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -84,11 +84,11 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 482697b06baf..af2ac1e6c979 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message("Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index b6ebf37adc92..34c73d2869e0 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -461,8 +461,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -493,13 +493,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   OS X Only: If enabled CMake will generate a target named
+@@ -651,9 +671,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index f201e1f7bff0..4582ed556a02 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -24,6 +24,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 08b096afb052..2deae0dcfacc 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -332,12 +332,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 6e913519a809..85641eef721f 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -19,7 +19,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index 19b606933082..27b9f71b3d79 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,6 +8,6 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/5/openmp.nix
deleted file mode 100644
index 169c9c50324e..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/5/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch "openmp" "0p2n52676wlq6y9q99n5pivq6pvvda1p994r69fxj206ahn59jir";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/openmp/default.nix
new file mode 100644
index 000000000000..3a1f97919dc3
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch "openmp" "0p2n52676wlq6y9q99n5pivq6pvvda1p994r69fxj206ahn59jir";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/clang/default.nix
index 41202dd3f5dc..eba9111d9d32 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 }:
@@ -22,20 +23,27 @@ let
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++11"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ];
 
-    patches = [ ./purity.patch ];
+    patches = [
+      ./purity.patch
+      ./gnu-install-dirs.patch
+    ];
 
     postPatch = ''
       sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
@@ -48,12 +56,12 @@ let
       sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -70,18 +78,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -100,6 +120,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..bdbbae955169
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/clang/gnu-install-dirs.patch
@@ -0,0 +1,258 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2eee8e6148f7..63efc7d2fdd0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.4.3)
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   find_program(LLVM_CONFIG "llvm-config")
+@@ -365,7 +367,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.def"
+     PATTERN "*.h"
+@@ -374,7 +376,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+     PATTERN "*.inc"
+@@ -382,7 +384,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(PROGRAMS utils/bash-autocomplete.sh
+-    DESTINATION share/clang
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+     )
+ endif()
+ 
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index c09a8423f9f6..39f37e0097eb 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -99,9 +99,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -141,7 +141,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -156,5 +156,5 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index 97ba3edea1c5..9d2bc5714af5 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -142,13 +142,13 @@ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${cuda_wrapper_files}
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
+   add_llvm_install_targets(install-clang-headers
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index d38c7bb28709..c9b5499cb756 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -50,7 +50,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-check/CMakeLists.txt b/tools/clang-check/CMakeLists.txt
+index c5ace26c2914..97bdfca7d896 100644
+--- a/tools/clang-check/CMakeLists.txt
++++ b/tools/clang-check/CMakeLists.txt
+@@ -20,4 +20,4 @@ target_link_libraries(clang-check
+   )
+ 
+ install(TARGETS clang-check
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index a295e8cd0b2a..1973ff82c7f6 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-func-mapping/CMakeLists.txt b/tools/clang-func-mapping/CMakeLists.txt
+index ae28e28d532d..8ecb2e37a8f7 100644
+--- a/tools/clang-func-mapping/CMakeLists.txt
++++ b/tools/clang-func-mapping/CMakeLists.txt
+@@ -20,4 +20,4 @@ target_link_libraries(clang-func-mapping
+   )
+ 
+ install(TARGETS clang-func-mapping
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-offload-bundler/CMakeLists.txt b/tools/clang-offload-bundler/CMakeLists.txt
+index 8718015be76a..7a038f39622e 100644
+--- a/tools/clang-offload-bundler/CMakeLists.txt
++++ b/tools/clang-offload-bundler/CMakeLists.txt
+@@ -22,4 +22,4 @@ target_link_libraries(clang-offload-bundler
+   ${CLANG_OFFLOAD_BUNDLER_LIB_DEPS}
+   )
+ 
+-install(TARGETS clang-offload-bundler RUNTIME DESTINATION bin)
++install(TARGETS clang-offload-bundler RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-refactor/CMakeLists.txt b/tools/clang-refactor/CMakeLists.txt
+index d2029066b9b7..9bc152a675af 100644
+--- a/tools/clang-refactor/CMakeLists.txt
++++ b/tools/clang-refactor/CMakeLists.txt
+@@ -21,4 +21,4 @@ target_link_libraries(clang-refactor
+   clangToolingRefactor
+   )
+ 
+-install(TARGETS clang-refactor RUNTIME DESTINATION bin)
++install(TARGETS clang-refactor RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index 9689e1c6804d..6087716510a9 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -16,8 +16,8 @@ target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 44406378207b..3b64b18ad4a5 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -130,7 +130,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 380379300b09..adfd58ed5f7d 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(LibexecFile ${LibexecFiles})
+@@ -53,7 +53,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/libexec/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+-    install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec)
++    install(PROGRAMS libexec/${LibexecFile} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+   endforeach()
+ 
+   foreach(ManPage ${ManPages})
+@@ -77,7 +77,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/share/scan-build/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+-    install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build)
++    install(FILES share/scan-build/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build)
+   endforeach()
+ 
+   add_custom_target(scan-build ALL DEPENDS ${Depends})
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index b305ca562a72..554bcb379061 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -21,7 +21,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(ShareFile ${ShareFiles})
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/share/scan-view/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+-    install(FILES share/${ShareFile} DESTINATION share/scan-view)
++    install(FILES share/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view)
+   endforeach()
+ 
+   add_custom_target(scan-view ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/default.nix
index f0a1c7ecc34f..0ba96e5375b7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   inherit version;
   src = fetch "compiler-rt" "1fcr3jn24yr8lh36nc0c4ikli4744i2q9m1ik67p1jymwwaixkgl";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -54,6 +54,7 @@ stdenv.mkDerivation {
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
     # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
     ../../common/compiler-rt/glibc.patch
+    ./gnu-install-dirs.patch
   ] ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
 
@@ -87,4 +88,19 @@ stdenv.mkDerivation {
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/linux/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..8daf03994b57
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,107 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4b953b212829..a10b69aa67dc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,7 @@ cmake_minimum_required(VERSION 3.4.3)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+ endif()
+ 
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 139b6140011c..502354a37d67 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -439,7 +439,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_PREFIX}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -456,7 +456,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index a25540bf46d1..77ea739fea74 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -375,7 +375,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index b208f0852408..cacf4e8fb69d 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -46,11 +46,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -70,9 +70,9 @@ if(NOT DEFINED COMPILER_RT_OS_DIR)
+   string(TOLOWER ${CMAKE_SYSTEM_NAME} COMPILER_RT_OS_DIR)
+ endif()
+ set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+-  ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
++  ${COMPILER_RT_OUTPUT_DIR}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-  ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++  ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ 
+ if(APPLE)
+   # On Darwin if /usr/include doesn't exist, the user probably has Xcode but not
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index f7efb102ab63..ab8a94d9ff40 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -47,12 +47,12 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index 2c486bff821b..0ee715da95f8 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -44,4 +44,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH})
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_PREFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/default.nix
index 2c4c11c89bd2..a0cc84d8d733 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/default.nix
@@ -1,6 +1,5 @@
 { lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
 }:
@@ -17,36 +16,56 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "1w8ml7fyn4vyxmy59n2qm4r1k1kgwgwkaldp6m45fdv4g0kkfbhd";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
     mkExtraBuildCommands = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
-      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
     '';
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
+
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
+
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
+    };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit clang-tools-extra_src;
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
     };
 
-    llvm-manpages = lowPrio (tools.llvm.override {
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
+    llvm-manpages = lowPrio (tools.libllvm.override {
       enableManpages = true;
       enableSharedLibraries = false;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -69,26 +88,38 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
   });
 
   libraries = lib.makeExtensible (libraries: let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt {};
+    compiler-rt = callPackage ./compiler-rt {
+      inherit llvm_meta;
+    };
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ {};
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+    };
 
-    libcxxabi = callPackage ./libc++abi {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/libcxx/default.nix
index ac489db54fcf..3e39dd840424 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/libcxx/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version }:
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "0rzw4qvxp6qx4l4h9amrq02gp7hbg8lw4m0sy3k60f50234gnm3n";
@@ -11,7 +11,11 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optionals stdenv.hostPlatform.isMusl [
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
     ../../libcxx-0001-musl-hacks.patch
   ];
 
@@ -41,10 +45,15 @@ stdenv.mkDerivation {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.unix;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..33ff9ef123a4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,72 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9e8e9d5e3d9b..e1d6d2392b92 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -22,6 +22,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 6.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 558e11ba2cc1..c6a99cec0191 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -55,7 +55,7 @@ macro(setup_abi_lib abidefines abilib abifiles abidirs)
+           )
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index b98e09260ca1..c920f48697bc 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -20,7 +20,7 @@ endif()
+ 
+ if (LIBCXX_INSTALL_HEADERS)
+   install(DIRECTORY .
+-    DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1
++    DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+     COMPONENT cxx-headers
+     FILES_MATCHING
+     ${LIBCXX_HEADER_PATTERN}
+@@ -44,7 +44,7 @@ if (LIBCXX_INSTALL_HEADERS)
+     set(generated_config_deps generate_config_header)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT cxx-headers)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index aa5ebf1568ec..36d85b94c3ba 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -357,8 +357,8 @@ if (LIBCXX_INSTALL_LIBRARY)
+     set(experimental_lib cxx_experimental)
+   endif()
+   install(TARGETS ${LIBCXX_TARGETS} ${experimental_lib}
+-    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+-    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+     )
+   # NOTE: This install command must go after the cxx install command otherwise
+   # it will not be executed after the library symlinks are installed.
+@@ -366,7 +366,7 @@ if (LIBCXX_INSTALL_LIBRARY)
+     # Replace the libc++ filename with $<TARGET_LINKER_FILE:cxx>
+     # after we required CMake 3.0.
+     install(FILES "${LIBCXX_LIBRARY_DIR}/libc++${CMAKE_SHARED_LIBRARY_SUFFIX}"
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX}
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX}
+       COMPONENT libcxx)
+   endif()
+ endif()
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/default.nix
index c0d90f6c8e48..6a03d8a1835e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/default.nix
@@ -1,13 +1,12 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version }:
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "0prqvdj317qrc8nddaq1hh2ag9algkd9wbkj3y4mr5588k12x7r0";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -19,6 +18,13 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
   '';
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -41,11 +47,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.unix;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..649d28d6c459
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1adbdb338322..2978631e1c58 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 6.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 240f6d0d103b..7ad5c31ec7b4 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -181,8 +181,8 @@ add_custom_target(cxxabi DEPENDS ${LIBCXXABI_TARGETS})
+ 
+ if (LIBCXXABI_INSTALL_LIBRARY)
+   install(TARGETS ${LIBCXXABI_TARGETS}
+-    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+-    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+     )
+ endif()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
index b80385248059..83b1991f453c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
@@ -1,31 +1,43 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
-  src = fetch "lld" "04afcfq2h7ysyqxxhyhb7ig4p0vdw7mi63kh8mffl74j0rc781p7";
+  src = fetch pname "04afcfq2h7ysyqxxhyhb7ig4p0vdw7mi63kh8mffl74j0rc781p7";
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), and Mach-O (macOS)
+      in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..8c6886c68907
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e2fbdbfbbb47..d601b231ebb8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -203,7 +205,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index 0d951799cdfe..7d8546ba87f8 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index d8829493fc22..df748a0e749b 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -16,7 +16,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/lldb/default.nix
index 7c6f8b1bd979..da3c4a73a590 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , fetchpatch
 , cmake
@@ -8,14 +8,14 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lldb";
   inherit version;
 
@@ -28,38 +28,59 @@ stdenv.mkDerivation {
       sha256 = "1zbx4m0m8kbg0wq6740jcw151vb2pb1p25p401wiq8diqqagkjps";
       stripLen = 1;
     })
+    ./gnu-install-dirs.patch
   ];
 
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
-    sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
+    sed -i 's,".*ClangConfig.cmake","${libclang.dev}/lib/cmake/clang/ClangConfig.cmake",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
+    sed -i 's,".*tools/clang/include","${libclang.dev}/include",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
+    sed -i 's,"$.LLVM_LIBRARY_DIR.",${libllvm.lib}/lib ${libclang.lib}/lib,' \
       cmake/modules/LLDBStandalone.cmake
   '';
 
-  nativeBuildInputs = [ cmake python3 which swig ];
-  buildInputs = [ ncurses zlib libedit libxml2 llvm ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa ];
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake python3 which swig
+  ];
+
+  buildInputs = [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.libobjc
+    darwin.apple_sdk.libs.xpc
+    darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa
+  ];
 
   CXXFLAGS = "-fno-rtti";
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     mkdir -p $out/share/man/man1
     cp ../docs/lldb.1 $out/share/man/man1/
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage    = "https://llvm.org/";
-    license     = licenses.ncsa;
-    platforms   = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..a240ecaab17d
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/lldb/gnu-install-dirs.patch
@@ -0,0 +1,76 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c6b082e104e5..568a99837e1f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,8 @@ set(CMAKE_MODULE_PATH
+   "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+   )
+ 
++include(GNUInstallDirs)
++
+ include(LLDBStandalone)
+ include(LLDBConfig)
+ include(AddLLDB)
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 2fd8b384d9e3..4db5e786c493 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -56,14 +56,14 @@ function(add_lldb_library name)
+         endif()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+           LIBRARY DESTINATION ${out_dir}
+           ARCHIVE DESTINATION ${out_dir})
+       else()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -132,7 +132,7 @@ function(add_lldb_executable name)
+   if(ARG_GENERATE_INSTALL AND NOT (ARG_INCLUDE_IN_FRAMEWORK AND LLDB_BUILD_FRAMEWORK ))
+     install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin)
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+     if (NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+                                DEPENDS ${name}
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 24878b5913f3..b9d27788bb87 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -278,7 +278,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -288,7 +288,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index b5316540fdf3..3c3c882d503f 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -64,4 +64,4 @@ if (NOT LLDB_DISABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/default.nix
index de99691094b7..0907c8956171 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
 , cmake
 , python3
@@ -9,11 +10,12 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , fetchpatch
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
+, enablePolly ? false
 }:
 
 let
@@ -30,15 +32,18 @@ stdenv.mkDerivation ({
   inherit version;
 
   src = fetch "llvm" "1qpls3vk85lydi5b4axl0809fv932qgsqgdgrk098567z4jc7mmn";
+  polly_src = fetch "polly" "1k2frwg5mkqh0raia8xf69h3jhdw7a5nxd6vjscjn44cdkgmyxp7";
 
   unpackPhase = ''
     unpackFile $src
     mv llvm-${version}* llvm
     sourceRoot=$PWD/llvm
+  '' + optionalString enablePolly ''
+    unpackFile $polly_src
+    mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optional enableManpages python3.pkgs.sphinx;
@@ -58,12 +63,13 @@ stdenv.mkDerivation ({
       includes = [ "test/tools/gold/X86/common.ll" ];
       sha256 = "0fxgrxmfnjx17w3lcq19rk68b2xksh1bynz3ina784kma7hp4wdb";
     })
-  ];
+    ./gnu-install-dirs.patch
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
 
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -88,6 +94,7 @@ stdenv.mkDerivation ({
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -112,7 +119,20 @@ stdenv.mkDerivation ({
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_6}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -126,19 +146,20 @@ stdenv.mkDerivation ({
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ${lib.concatMapStringsSep "\n" (v: ''
       ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${v}.dylib
     '') versionSuffixes}
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isi686);
@@ -146,12 +167,23 @@ stdenv.mkDerivation ({
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -170,5 +202,7 @@ stdenv.mkDerivation ({
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..b4fda24a55f3
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9ddc0f7ff81d..7ca45f286d47 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -157,14 +161,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 969292cd6b00..d7aea77bdd20 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 32bed50bb060..cca5bfff4970 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index b3c6e73a7a00..c67acf8576c7 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -268,7 +268,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..987f97210fb8
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/llvm/gnu-install-dirs.patch
@@ -0,0 +1,386 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f8da6cf92119..881e4cda4971 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -271,15 +271,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "bin" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -510,9 +516,9 @@ option (LLVM_ENABLE_DOXYGEN "Use doxygen to generate llvm API documentation." OF
+ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -944,7 +950,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -956,7 +962,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index fd5627eecbb2..29e09c6f3f8a 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -621,11 +621,11 @@ macro(add_llvm_library name)
+   else()
+     if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LTO" OR
+         (LLVM_LINK_LLVM_DYLIB AND ${name} STREQUAL "LLVM"))
+-      set(install_dir lib${LLVM_LIBDIR_SUFFIX})
++      set(install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       if(ARG_SHARED OR BUILD_SHARED_LIBS)
+         if(WIN32 OR CYGWIN OR MINGW)
+           set(install_type RUNTIME)
+-          set(install_dir bin)
++          set(install_dir ${CMAKE_INSTALL_BINDIR})
+         else()
+           set(install_type LIBRARY)
+         endif()
+@@ -667,9 +667,9 @@ macro(add_llvm_loadable_module name)
+       if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+         if(WIN32 OR CYGWIN)
+           # DLL platform
+-          set(dlldir "bin")
++          set(dlldir "${CMAKE_INSTALL_BINDIR}")
+         else()
+-          set(dlldir "lib${LLVM_LIBDIR_SUFFIX}")
++          set(dlldir "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+         endif()
+ 
+         if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
+@@ -681,7 +681,7 @@ macro(add_llvm_loadable_module name)
+         install(TARGETS ${name}
+                 ${export_to_llvmexports}
+                 LIBRARY DESTINATION ${dlldir}
+-                ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++                ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+     endif()
+@@ -892,7 +892,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1410,7 +1410,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1426,7 +1426,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1449,7 +1449,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT CMAKE_CONFIGURATION_TYPES AND NOT ARG_ALWAYS_GENERATE)
+@@ -1531,7 +1531,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1583,9 +1584,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 02bab6846376..eff26adb2efc 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -140,9 +140,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 22e3dcb776aa..ba77b9c195e2 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -73,7 +73,7 @@ function (add_sphinx_target builder project)
+ 
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 6074e8358594..9d0be6c2ced5 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -84,11 +84,11 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 482697b06baf..af2ac1e6c979 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message("Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index 05edec64da33..6db014f04656 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -465,8 +465,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -497,13 +497,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   OS X Only: If enabled CMake will generate a target named
+@@ -660,9 +680,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index f201e1f7bff0..4582ed556a02 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -24,6 +24,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 08b096afb052..2deae0dcfacc 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -332,12 +332,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 6e913519a809..85641eef721f 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -19,7 +19,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index 19b606933082..27b9f71b3d79 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,6 +8,6 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/6/openmp.nix
deleted file mode 100644
index 9de18065918c..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/6/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch "openmp" "0nhwfba9c351r16zgyjyfwdayr98nairky3c2f0b2lc360mwmbv6";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/openmp/default.nix
new file mode 100644
index 000000000000..bc21220af7c7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch "openmp" "0nhwfba9c351r16zgyjyfwdayr98nairky3c2f0b2lc360mwmbv6";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/7/bintools/default.nix
index 53f7941e3369..53f7941e3369 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/bintools.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/bintools/default.nix
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/clang/default.nix
index 4ab13441e36f..e1b031ad352b 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 , enablePolly ? false # TODO: get this info from llvm (passthru?)
@@ -23,17 +24,21 @@ let
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm lld ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++11"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ] ++ lib.optionals enablePolly [
       "-DWITH_POLLY=ON"
       "-DLINK_POLLY_INTO_TOOLS=ON"
@@ -43,6 +48,10 @@ let
       ./purity.patch
       # make clang -xhip use $PATH to find executables
       ./HIP-use-PATH-7.patch
+      # Backport for the `--unwindlib=[libgcc|compiler-rt]` flag, which is
+      # needed for our bootstrapping to not interfere with C.
+      ./unwindlib.patch
+      ./gnu-install-dirs.patch
     ];
 
     postPatch = ''
@@ -59,12 +68,12 @@ let
         --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -81,18 +90,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -111,6 +132,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..540c043a2db9
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/clang/gnu-install-dirs.patch
@@ -0,0 +1,281 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 52b881939499..85662a2113e7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.4.3)
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   find_program(LLVM_CONFIG "llvm-config")
+@@ -374,7 +376,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.def"
+     PATTERN "*.h"
+@@ -383,7 +385,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+     PATTERN "*.inc"
+@@ -391,7 +393,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(PROGRAMS utils/bash-autocomplete.sh
+-    DESTINATION share/clang
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+     )
+ endif()
+ 
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index c09a8423f9f6..39f37e0097eb 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -99,9 +99,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -141,7 +141,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -156,5 +156,5 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index 1930d8e225c7..bb9158093079 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -162,19 +162,19 @@ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_fp16.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${cuda_wrapper_files}
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
+   add_llvm_install_targets(install-clang-headers
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index 53e3421f1b35..79ae5bb4c399 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-check/CMakeLists.txt b/tools/clang-check/CMakeLists.txt
+index c5ace26c2914..97bdfca7d896 100644
+--- a/tools/clang-check/CMakeLists.txt
++++ b/tools/clang-check/CMakeLists.txt
+@@ -20,4 +20,4 @@ target_link_libraries(clang-check
+   )
+ 
+ install(TARGETS clang-check
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index a295e8cd0b2a..1973ff82c7f6 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-func-mapping/CMakeLists.txt b/tools/clang-func-mapping/CMakeLists.txt
+index ae28e28d532d..8ecb2e37a8f7 100644
+--- a/tools/clang-func-mapping/CMakeLists.txt
++++ b/tools/clang-func-mapping/CMakeLists.txt
+@@ -20,4 +20,4 @@ target_link_libraries(clang-func-mapping
+   )
+ 
+ install(TARGETS clang-func-mapping
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-offload-bundler/CMakeLists.txt b/tools/clang-offload-bundler/CMakeLists.txt
+index 8718015be76a..7a038f39622e 100644
+--- a/tools/clang-offload-bundler/CMakeLists.txt
++++ b/tools/clang-offload-bundler/CMakeLists.txt
+@@ -22,4 +22,4 @@ target_link_libraries(clang-offload-bundler
+   ${CLANG_OFFLOAD_BUNDLER_LIB_DEPS}
+   )
+ 
+-install(TARGETS clang-offload-bundler RUNTIME DESTINATION bin)
++install(TARGETS clang-offload-bundler RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index 3b3ab1540a80..9aca9ba4a2cf 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -18,8 +18,8 @@ target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/diagtool/CMakeLists.txt b/tools/diagtool/CMakeLists.txt
+index 96d1c390249c..41c762b37b76 100644
+--- a/tools/diagtool/CMakeLists.txt
++++ b/tools/diagtool/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(diagtool
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(TARGETS diagtool
+     COMPONENT diagtool
+-    RUNTIME DESTINATION bin)
++    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+   if (NOT CMAKE_CONFIGURATION_TYPES)
+     add_llvm_install_targets(install-diagtool
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index e539c8308e75..4e1fbccea35d 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -130,7 +130,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 380379300b09..adfd58ed5f7d 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(LibexecFile ${LibexecFiles})
+@@ -53,7 +53,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/libexec/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+-    install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec)
++    install(PROGRAMS libexec/${LibexecFile} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+   endforeach()
+ 
+   foreach(ManPage ${ManPages})
+@@ -77,7 +77,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/share/scan-build/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+-    install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build)
++    install(FILES share/scan-build/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build)
+   endforeach()
+ 
+   add_custom_target(scan-build ALL DEPENDS ${Depends})
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index b305ca562a72..554bcb379061 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -21,7 +21,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(ShareFile ${ShareFiles})
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/share/scan-view/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+-    install(FILES share/${ShareFile} DESTINATION share/scan-view)
++    install(FILES share/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view)
+   endforeach()
+ 
+   add_custom_target(scan-view ALL DEPENDS ${Depends})
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 5573009d343a..24b3a90f233f 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -9,7 +9,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${CLANG_HMAPTOOL})
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+-install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION bin)
++install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
+ set_target_properties(hmaptool PROPERTIES FOLDER "Utils")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/clang/unwindlib.patch b/nixpkgs/pkgs/development/compilers/llvm/7/clang/unwindlib.patch
new file mode 100644
index 000000000000..59a092d7c706
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/clang/unwindlib.patch
@@ -0,0 +1,227 @@
+commit a5cacb5ba7f1f18e7bb6f6709e42683eeb7e6470
+Author: Sterling Augustine <saugustine@google.com>
+Date:   Tue Mar 19 20:01:59 2019 +0000
+
+    Add --unwindlib=[libgcc|compiler-rt] to parallel --rtlib= [take 2]
+    
+    "clang++ hello.cc --rtlib=compiler-rt"
+    
+    now can works without specifying additional unwind or exception
+    handling libraries.
+    
+    This reworked version of the feature no longer modifies today's default
+    unwind library for compiler-rt: which is nothing. Rather, a user
+    can specify -DCLANG_DEFAULT_UNWINDLIB=libunwind when configuring
+    the compiler.
+    
+    This should address the issues from the previous version.
+    
+    Update tests for new --unwindlib semantics.
+    
+    Differential Revision: https://reviews.llvm.org/D59109
+    
+    llvm-svn: 356508
+
+diff --git clang/CMakeLists.txt clang/CMakeLists.txt
+index 52b881939499..2c3fb62f6e73 100644
+--- clang/CMakeLists.txt
++++ clang/CMakeLists.txt
+@@ -244,6 +244,24 @@ if (NOT(CLANG_DEFAULT_RTLIB STREQUAL "" OR
+     "Default runtime library to use (\"libgcc\" or \"compiler-rt\", empty for platform default)" FORCE)
+ endif()
+ 
++set(CLANG_DEFAULT_UNWINDLIB "" CACHE STRING
++  "Default unwind library to use (\"none\" \"libgcc\" or \"libunwind\", empty to match runtime library.)")
++if (CLANG_DEFAULT_UNWINDLIB STREQUAL "")
++  if (CLANG_DEFAULT_RTLIB STREQUAL "libgcc")
++    set (CLANG_DEFAULT_UNWINDLIB "libgcc" CACHE STRING "" FORCE)
++  elseif (CLANG_DEFAULT_RTLIBS STREQUAL "libunwind")
++    set (CLANG_DEFAULT_UNWINDLIB "none" CACHE STRING "" FORCE)
++  endif()
++endif()
++
++if (NOT(CLANG_DEFAULT_UNWINDLIB STREQUAL "none" OR
++        CLANG_DEFAULT_UNWINDLIB STREQUAL "libgcc" OR
++        CLANG_DEFAULT_UNWINDLIB STREQUAL "libunwind"))
++  message(WARNING "Resetting default unwindlib to use platform default")
++  set(CLANG_DEFAULT_UNWINDLIB "" CACHE STRING
++    "Default unwind library to use (\"none\" \"libgcc\" or \"libunwind\", empty for none)" FORCE)
++endif()
++
+ set(CLANG_DEFAULT_OBJCOPY "objcopy" CACHE STRING
+   "Default objcopy executable to use.")
+ 
+diff --git clang/include/clang/Basic/DiagnosticDriverKinds.td clang/include/clang/Basic/DiagnosticDriverKinds.td
+index 7f75f45c6578..7e1bb33b5cef 100644
+--- clang/include/clang/Basic/DiagnosticDriverKinds.td
++++ clang/include/clang/Basic/DiagnosticDriverKinds.td
+@@ -52,6 +52,10 @@ def err_drv_invalid_rtlib_name : Error<
+   "invalid runtime library name in argument '%0'">;
+ def err_drv_unsupported_rtlib_for_platform : Error<
+   "unsupported runtime library '%0' for platform '%1'">;
++def err_drv_invalid_unwindlib_name : Error<
++  "invalid unwind library name in argument '%0'">;
++def err_drv_incompatible_unwindlib : Error<
++  "--rtlib=libgcc requires --unwindlib=libgcc">;
+ def err_drv_invalid_stdlib_name : Error<
+   "invalid library name in argument '%0'">;
+ def err_drv_invalid_output_with_multiple_archs : Error<
+diff --git clang/include/clang/Config/config.h.cmake clang/include/clang/Config/config.h.cmake
+index 1d624450b9d9..2d4cb747e87e 100644
+--- clang/include/clang/Config/config.h.cmake
++++ clang/include/clang/Config/config.h.cmake
+@@ -23,6 +23,9 @@
+ /* Default runtime library to use. */
+ #define CLANG_DEFAULT_RTLIB "${CLANG_DEFAULT_RTLIB}"
+ 
++/* Default unwind library to use. */
++#define CLANG_DEFAULT_UNWINDLIB "${CLANG_DEFAULT_UNWINDLIB}"
++
+ /* Default objcopy to use */
+ #define CLANG_DEFAULT_OBJCOPY "${CLANG_DEFAULT_OBJCOPY}"
+ 
+diff --git clang/include/clang/Driver/Options.td clang/include/clang/Driver/Options.td
+index 601aa8744967..0e74a2d36dea 100644
+--- clang/include/clang/Driver/Options.td
++++ clang/include/clang/Driver/Options.td
+@@ -2428,6 +2428,8 @@ def std_EQ : Joined<["-", "--"], "std=">, Flags<[CC1Option]>,
+   }]>;
+ def stdlib_EQ : Joined<["-", "--"], "stdlib=">, Flags<[CC1Option]>,
+   HelpText<"C++ standard library to use">, Values<"libc++,libstdc++,platform">;
++def unwindlib_EQ : Joined<["-", "--"], "unwindlib=">, Flags<[CC1Option]>,
++  HelpText<"Unwind library to use">, Values<"libgcc,unwindlib,platform">;
+ def sub__library : JoinedOrSeparate<["-"], "sub_library">;
+ def sub__umbrella : JoinedOrSeparate<["-"], "sub_umbrella">;
+ def system_header_prefix : Joined<["--"], "system-header-prefix=">,
+diff --git clang/include/clang/Driver/ToolChain.h clang/include/clang/Driver/ToolChain.h
+index 2f9c2c190e32..d5b131bcf112 100644
+--- clang/include/clang/Driver/ToolChain.h
++++ clang/include/clang/Driver/ToolChain.h
+@@ -99,6 +99,12 @@ public:
+     RLT_Libgcc
+   };
+ 
++  enum UnwindLibType {
++    UNW_None,
++    UNW_CompilerRT,
++    UNW_Libgcc
++  };
++
+   enum RTTIMode {
+     RM_Enabled,
+     RM_Disabled,
+@@ -352,6 +358,10 @@ public:
+     return ToolChain::CST_Libstdcxx;
+   }
+ 
++  virtual UnwindLibType GetDefaultUnwindLibType() const {
++    return ToolChain::UNW_None;
++  }
++
+   virtual std::string getCompilerRTPath() const;
+ 
+   virtual std::string getCompilerRT(const llvm::opt::ArgList &Args,
+@@ -484,6 +494,10 @@ public:
+   // given compilation arguments.
+   virtual CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const;
+ 
++  // GetUnwindLibType - Determine the unwind library type to use with the
++  // given compilation arguments.
++  virtual UnwindLibType GetUnwindLibType(const llvm::opt::ArgList &Args) const;
++
+   /// AddClangCXXStdlibIncludeArgs - Add the clang -cc1 level arguments to set
+   /// the include paths to use for the given C++ standard library type.
+   virtual void
+diff --git clang/lib/Driver/ToolChain.cpp clang/lib/Driver/ToolChain.cpp
+index cf3db34688df..d980dd5d23fb 100644
+--- clang/lib/Driver/ToolChain.cpp
++++ clang/lib/Driver/ToolChain.cpp
+@@ -665,6 +665,33 @@ ToolChain::RuntimeLibType ToolChain::GetRuntimeLibType(
+   return GetDefaultRuntimeLibType();
+ }
+ 
++ToolChain::UnwindLibType ToolChain::GetUnwindLibType(
++    const ArgList &Args) const {
++  const Arg *A = Args.getLastArg(options::OPT_unwindlib_EQ);
++  StringRef LibName = A ? A->getValue() : CLANG_DEFAULT_UNWINDLIB;
++
++  if (LibName == "none")
++    return ToolChain::UNW_None;
++  else if (LibName == "platform" || LibName == "") {
++    ToolChain::RuntimeLibType RtLibType = GetRuntimeLibType(Args);
++    if (RtLibType == ToolChain::RLT_CompilerRT)
++      return ToolChain::UNW_None;
++    else if (RtLibType == ToolChain::RLT_Libgcc)
++      return ToolChain::UNW_Libgcc;
++  } else if (LibName == "libunwind") {
++    if (GetRuntimeLibType(Args) == RLT_Libgcc)
++      getDriver().Diag(diag::err_drv_incompatible_unwindlib);
++    return ToolChain::UNW_CompilerRT;
++  } else if (LibName == "libgcc")
++    return ToolChain::UNW_Libgcc;
++
++  if (A)
++    getDriver().Diag(diag::err_drv_invalid_unwindlib_name)
++        << A->getAsString(Args);
++
++  return GetDefaultUnwindLibType();
++}
++
+ ToolChain::CXXStdlibType ToolChain::GetCXXStdlibType(const ArgList &Args) const{
+   const Arg *A = Args.getLastArg(options::OPT_stdlib_EQ);
+   StringRef LibName = A ? A->getValue() : CLANG_DEFAULT_CXX_STDLIB;
+diff --git clang/test/Driver/compiler-rt-unwind.c clang/test/Driver/compiler-rt-unwind.c
+new file mode 100644
+index 000000000000..00024dfa7ed3
+--- /dev/null
++++ clang/test/Driver/compiler-rt-unwind.c
+@@ -0,0 +1,49 @@
++// General tests that the driver handles combinations of --rtlib=XXX and
++// --unwindlib=XXX properly.
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
++// RUN:     --target=x86_64-unknown-linux \
++// RUN:     --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-EMPTY %s
++// RTLIB-EMPTY: "{{.*}}lgcc"
++// RTLIB-EMPTY: "{{.*}}-lgcc_s"
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
++// RUN:     --target=x86_64-unknown-linux -rtlib=libgcc \
++// RUN:     --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-GCC %s
++// RTLIB-GCC: "{{.*}}lgcc"
++// RTLIB-GCC: "{{.*}}lgcc_s"
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
++// RUN:     --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \
++// RUN:     --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-GCC-UNWINDLIB-COMPILER-RT %s
++// RTLIB-GCC-UNWINDLIB-COMPILER-RT: "{{.*}}lgcc"
++// RTLIB-GCC-UNWINDLIB-COMPILER-RT: "{{.*}}lunwind"
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1   \
++// RUN:     --target=x86_64-unknown-linux -rtlib=compiler-rt \
++// RUN:     --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-COMPILER-RT %s
++// RTLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a"
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1   \
++// RUN:     --target=x86_64-unknown-linux -rtlib=compiler-rt --unwindlib=libgcc \
++// RUN:     --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-COMPILER-RT-UNWINDLIB-GCC %s
++// RTLIB-COMPILER-RT-UNWINDLIB-GCC: "{{.*}}libclang_rt.builtins-x86_64.a"
++// RTLIB-COMPILER-RT-UNWINDLIB-GCC: "{{.*}}lgcc_s"
++//
++// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1              \
++// RUN:     --target=x86_64-unknown-linux -rtlib=compiler-rt --unwindlib=libgcc \
++// RUN:     -static --gcc-toolchain="" \
++// RUN:   | FileCheck --check-prefix=RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC %s
++// RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC: "{{.*}}libclang_rt.builtins-x86_64.a"
++// RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC: "{{.*}}lgcc_eh"
++//
++// RUN: not %clang -no-canonical-prefixes %s -o %t.o 2> %t.err              \
++// RUN:     --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \
++// RUN:     --gcc-toolchain="" \
++// RUN: FileCheck --input-file=%t.err --check-prefix=RTLIB-GCC-UNWINDLIB-COMPILER_RT %s
++// RTLIB-GCC-UNWINDLIB-COMPILER_RT: "{{[.|\\\n]*}}--rtlib=libgcc requires --unwindlib=libgcc"
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/default.nix
index 218421315995..5f64e2f2a27e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/default.nix
@@ -1,19 +1,20 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
 stdenv.mkDerivation {
-  pname = "compiler-rt";
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
   src = fetch "compiler-rt" "1n48p8gjarihkws0i2bay5w9bdwyxyxxbpwyng7ba58jb30dlyq5";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -29,14 +30,15 @@ stdenv.mkDerivation {
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
   ] ++ lib.optionals (useLLVM) [
     "-DCOMPILER_RT_BUILD_BUILTINS=ON"
-    "-DCMAKE_C_FLAGS=-nodefaultlibs"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
@@ -54,6 +56,7 @@ stdenv.mkDerivation {
     # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
     ../../common/compiler-rt/glibc.patch
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+    ./gnu-install-dirs.patch
   ] ++ lib.optional (useLLVM) ./crtbegin-and-end.patch
     ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
@@ -82,10 +85,25 @@ stdenv.mkDerivation {
   postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) ''
     ln -s "$out/lib"/*/* "$out/lib"
   '' + lib.optionalString (useLLVM) ''
-    ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/linux/crtbegin.o
-    ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/linux/crtend.o
-    ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/linux/crtbeginS.o
-    ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/linux/crtendS.o
+    ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o
+    ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o
+    ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o
+    ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..41b501ec6497
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,117 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 86ca2b3ef74b..555103bd97fe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,7 @@ cmake_minimum_required(VERSION 3.4.3)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index cd4c704fc824..5abcd1260381 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -478,7 +478,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -495,7 +495,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 04cc955980fa..a99f6dfb2f82 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -377,7 +377,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index e5651718fa34..d95cfc984a85 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -330,7 +330,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${target}/lib PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${target}/${CMAKE_INSTALL_FULL_LIBDIR} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index 91fe2494b476..b59a0ffc69f4 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -53,11 +53,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -85,7 +85,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index c4b93b89a30c..3913dc3a1ee6 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -48,12 +48,12 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index b3ae713cf02c..52b364b900f5 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -54,4 +54,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/default.nix
index 2170177117e1..4057f206caf1 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 }:
 
 let
@@ -17,43 +28,74 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "0lb4kdh7j2fhfz8kd6iv5df7m3pikiryk1vvwsf87spc90n09q0w";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
-      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
+    '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
 
-    llvm-polly = callPackage ./llvm { enablePolly = true; };
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
-      inherit clang-tools-extra_src;
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
+    };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
     };
+
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
     clang-polly-unwrapped = callPackage ./clang {
+      inherit llvm_meta;
       inherit clang-tools-extra_src;
-      llvm = tools.llvm-polly;
+      libllvm = tools.libllvm-polly;
       enablePolly = true;
     };
 
-    llvm-manpages = lowPrio (tools.llvm.override {
+    llvm-manpages = lowPrio (tools.libllvm.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -76,9 +118,13 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
     # fully LLVM toolchain from scratch. No GCC toolchain should be
@@ -87,34 +133,43 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools.nix {};
+    bintools-unwrapped = callPackage ./bintools {};
+
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
 
-    lldClang = wrapCCWith rec {
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
+      ] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [
+        targetLlvmLibraries.libunwind
       ];
       extraBuildCommands = ''
         echo "-rtlib=compiler-rt -Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -125,13 +180,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -141,17 +193,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -160,28 +217,55 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt {
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
       stdenv = if stdenv.hostPlatform.useLLVM or false
-               then overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
                else stdenv;
     };
 
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt =
+      if stdenv.hostPlatform.isAndroid || (stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform.isDarwin)
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
+
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
+
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libcxxabi = callPackage ./libc++abi ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      inherit (buildLlvmTools) llvm;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/libcxx/default.nix
index fb50c4e24d72..ac10e8eb77e3 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libcxx/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "0kmhcapm2cjwalyiqasj9dmqbw59mcwdl8fgl951wg7ax84b8hj4";
@@ -13,7 +13,13 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   prePatch = ''
     substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
@@ -30,23 +36,29 @@ stdenv.mkDerivation {
     ++ lib.optional stdenv.hostPlatform.isMusl python3
     ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-  buildInputs = [ libcxxabi ] ;
+  buildInputs = [ libcxxabi ];
 
   cmakeFlags = [
     "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
     "-DLIBCXX_LIBCPPABI_VERSION=2"
     "-DLIBCXX_CXX_ABI=libcxxabi"
   ] ++ lib.optional stdenv.hostPlatform.isMusl "-DLIBCXX_HAS_MUSL_LIBC=1"
-  ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF" ;
+    ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
+    ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF" ;
 
   passthru = {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.unix;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..910e5287a866
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,72 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index acb49565ce97..6a863926cbca 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,6 +26,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 7.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 1c19d7e01af7..9c8aee8e8bb7 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -59,7 +59,7 @@ macro(setup_abi_lib abidefines abilib abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index d9def18d725c..16494dacaf6f 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -243,7 +243,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT cxx-headers
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   if (LIBCXX_NEEDS_SITE_CONFIG)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT cxx-headers)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index e068edc8a7af..b63ad92d1d78 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -399,8 +399,8 @@ if (LIBCXX_INSTALL_LIBRARY)
+     set(experimental_lib cxx_experimental)
+   endif()
+   install(TARGETS ${LIBCXX_INSTALL_TARGETS} ${filesystem_lib} ${experimental_lib}
+-    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+-    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+     )
+   # NOTE: This install command must go after the cxx install command otherwise
+   # it will not be executed after the library symlinks are installed.
+@@ -408,7 +408,7 @@ if (LIBCXX_INSTALL_LIBRARY)
+     # Replace the libc++ filename with $<TARGET_LINKER_FILE:cxx>
+     # after we required CMake 3.0.
+     install(FILES "${LIBCXX_LIBRARY_DIR}/libc++${CMAKE_SHARED_LIBRARY_SUFFIX}"
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX}
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX}
+       COMPONENT libcxx)
+   endif()
+ endif()
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/default.nix
index 84c478651416..1663b8c7291d 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/default.nix
@@ -1,16 +1,17 @@
-{ lib, stdenv, cmake, fetch, libcxx, llvm, version
-, standalone ? false
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
+, standalone ? stdenv.hostPlatform.useLLVM or false
+, withLibunwind ? !stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm
   # on musl the shared objects don't build
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "1zcqxsdjhawgz1cvpk07y3jl6fg9p3ay4nl69zsirqb2ghgyhhb2";
 
-  nativeBuildInputs = [ cmake ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -22,9 +23,18 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
   '';
 
-  cmakeFlags =
-     lib.optional standalone "-DLLVM_ENABLE_LIBCXX=ON" ++
-     lib.optional (!enableShared) "-DLIBCXXABI_ENABLE_SHARED=OFF";
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional withLibunwind libunwind;
+
+  cmakeFlags = lib.optionals standalone [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+  ] ++ lib.optionals (standalone && withLibunwind) [
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optional (!enableShared) "-DLIBCXXABI_ENABLE_SHARED=OFF";
 
   installPhase = if stdenv.isDarwin
     then ''
@@ -48,11 +58,15 @@ stdenv.mkDerivation {
       ${lib.optionalString enableShared "ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1"}
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.unix;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..92d9e94fdee7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d6648ede1f59..55a8f17ca5e6 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 7.0.0svn)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 776c51294330..314b45feac69 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -195,8 +195,8 @@ add_custom_target(cxxabi DEPENDS ${LIBCXXABI_BUILD_TARGETS})
+ 
+ if (LIBCXXABI_INSTALL_LIBRARY)
+   install(TARGETS ${LIBCXXABI_INSTALL_TARGETS}
+-    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+-    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+     )
+ endif()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/default.nix
new file mode 100644
index 000000000000..426895029b3e
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/default.nix
@@ -0,0 +1,53 @@
+{ lib, stdenv, llvm_meta, version, fetch, fetchpatch, cmake, llvm
+, enableShared ? !stdenv.hostPlatform.isStatic
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libunwind";
+  inherit version;
+
+  src = fetch pname "035dsxs10nyiqd00q07yycvmkjl01yz4jdlrjvmch8klxg4pyjhp";
+
+  postUnpack = ''
+    unpackFile ${llvm.src}
+    cmakeFlagsArray=($cmakeFlagsArray -DLLVM_PATH=$PWD/$(ls -d llvm-*))
+  '';
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    # removes use of `new` that require libc++
+    (fetchpatch {
+      url = "https://github.com/llvm-mirror/libunwind/commit/34a45c630d4c79af403661d267db42fbe7de1178.patch";
+      sha256 = "0n0pv6jvcky8pn3srhrf9x5kbnd0d2kia9xlx2g590f5q0bgwfhv";
+    })
+    # cleans up remaining libc++ dependencies (mostly header inclusions)
+    (fetchpatch {
+      url = "https://github.com/llvm-mirror/libunwind/commit/e050272d2eb57eb4e56a37b429a61df2ebb8aa3e.patch";
+      sha256 = "170mwmj0wf40iyk1kzdpaiy36rz9n8dpl881h4h7s5da0rh51xya";
+      includes = [ "src/libunwind.cpp" "src/UnwindCursor.hpp" ];
+    })
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = lib.optionals (!enableShared) [
+    "-DLIBUNWIND_ENABLE_SHARED=OFF"
+  ] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+  ];
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..21d4fa80ea13
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0e48d713837a..05483c367bd1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libunwind)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(NOT LLVM_CONFIG_PATH)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 937159e2cb86..07f8b936e7e5 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -141,8 +141,8 @@ add_custom_target(unwind DEPENDS ${LIBUNWIND_BUILD_TARGETS})
+ 
+ if (LIBUNWIND_INSTALL_LIBRARY)
+   install(TARGETS ${LIBUNWIND_INSTALL_TARGETS}
+-    LIBRARY DESTINATION ${LIBUNWIND_INSTALL_PREFIX}lib${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind
+-    ARCHIVE DESTINATION ${LIBUNWIND_INSTALL_PREFIX}lib${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind)
++    LIBRARY DESTINATION ${LIBUNWIND_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind
++    ARCHIVE DESTINATION ${LIBUNWIND_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind)
+ endif()
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES AND LIBUNWIND_INSTALL_LIBRARY)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
index f4c58abef8a3..09a0a68e2572 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
@@ -1,31 +1,43 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
-  src = fetch "lld" "0rsqb7zcnij5r5ipfhr129j7skr5n9pyr388kjpqwh091952f3x1";
+  src = fetch pname "0rsqb7zcnij5r5ipfhr129j7skr5n9pyr388kjpqwh091952f3x1";
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), and Mach-O (macOS)
+      in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..acc2d3d47760
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e2fbdbfbbb47..d601b231ebb8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -203,7 +205,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index fa48b428d26b..e7967aad3ceb 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index d8829493fc22..df748a0e749b 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -16,7 +16,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/lldb/default.nix
index 3fa5b411f634..e2eab31697d7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , cmake
 , zlib
@@ -7,32 +7,31 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , perl
 , python3
 , version
 , darwin
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lldb";
   inherit version;
 
   src = fetch "lldb" "0klsscg1sczc4nw2l53xggi969k361cng2sjjrfp3bv4g5x14s4v";
 
-  nativeBuildInputs = [ cmake perl python3 which swig ];
-  buildInputs = [ ncurses zlib libedit libxml2 llvm ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa ];
-
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
 
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
-    sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
+    sed -i 's,".*ClangConfig.cmake","${libclang.dev}/lib/cmake/clang/ClangConfig.cmake",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
+    sed -i 's,".*tools/clang/include","${libclang.dev}/include",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
+    sed -i 's,"$.LLVM_LIBRARY_DIR.",${libllvm.lib}/lib ${libclang.lib}/lib,' \
       cmake/modules/LLDBStandalone.cmake
     sed -i -e 's,message(SEND_ERROR "Cannot find debugserver on system."),,' \
            -e 's,string(STRIP ''${XCODE_DEV_DIR} XCODE_DEV_DIR),,' \
@@ -42,9 +41,18 @@ stdenv.mkDerivation {
     patchShebangs scripts
   '';
 
-  cmakeFlags = [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-    "-DSKIP_DEBUGSERVER=ON"
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake perl python3 which swig
+  ];
+
+  buildInputs = [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.libobjc
+    darwin.apple_sdk.libs.xpc
+    darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa
   ];
 
   CXXFLAGS = "-fno-rtti";
@@ -52,15 +60,30 @@ stdenv.mkDerivation {
 
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-I${libxml2.dev}/include/libxml2";
 
+  cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
+    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+    "-DSKIP_DEBUGSERVER=ON"
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
+  ];
+
+  doCheck = false;
+
   postInstall = ''
     mkdir -p $out/share/man/man1
     cp ../docs/lldb.1 $out/share/man/man1/
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage    = "https://llvm.org/";
-    license     = licenses.ncsa;
-    platforms   = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..40645743ecc7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/lldb/gnu-install-dirs.patch
@@ -0,0 +1,76 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 00ddcdc1488f..af2aa238939a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,8 @@ set(CMAKE_MODULE_PATH
+   "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+   )
+ 
++include(GNUInstallDirs)
++
+ include(LLDBStandalone)
+ include(LLDBConfig)
+ include(AddLLDB)
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 129a5ef7500d..fb3fb3ce655c 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -56,14 +56,14 @@ function(add_lldb_library name)
+         endif()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+           LIBRARY DESTINATION ${out_dir}
+           ARCHIVE DESTINATION ${out_dir})
+       else()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -121,7 +121,7 @@ function(add_lldb_executable name)
+   endif()
+ 
+   if(ARG_GENERATE_INSTALL)
+-    set(out_dir "bin")
++    set(out_dir "${CMAKE_INSTALL_BINDIR}")
+     if (LLDB_BUILD_FRAMEWORK AND ARG_INCLUDE_IN_SUITE)
+       set(out_dir ${LLDB_FRAMEWORK_INSTALL_DIR}/${LLDB_FRAMEWORK_RESOURCE_DIR})
+     endif()
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index dae6e365da38..ef272d5de5c0 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -278,7 +278,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -288,7 +288,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index b5316540fdf3..3c3c882d503f 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -64,4 +64,4 @@ if (NOT LLDB_DISABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/default.nix
index 53a7301b19b1..4a9b4f518205 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
 , fetchpatch
 , cmake
@@ -11,10 +12,10 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
@@ -46,8 +47,7 @@ in stdenv.mkDerivation ({
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optional enableManpages python3.pkgs.sphinx;
@@ -67,12 +67,13 @@ in stdenv.mkDerivation ({
       url = "https://github.com/llvm-mirror/llvm/commit/cc1f2a595ead516812a6c50398f0f3480ebe031f.patch";
       sha256 = "0k6k1p5yisgwx417a67s7sr9930rqh1n0zv5jvply8vjjy4b3kf8";
     })
-  ];
+    ./gnu-install-dirs.patch
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
 
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -110,6 +111,7 @@ in stdenv.mkDerivation ({
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -134,7 +136,20 @@ in stdenv.mkDerivation ({
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_7}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -148,19 +163,20 @@ in stdenv.mkDerivation ({
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ${lib.concatMapStringsSep "\n" (v: ''
       ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${v}.dylib
     '') versionSuffixes}
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isx86_32);
@@ -168,12 +184,23 @@ in stdenv.mkDerivation ({
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -195,5 +222,7 @@ in stdenv.mkDerivation ({
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..0b2d3b79e41f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9939097f743e..8cc538da912a 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -145,14 +149,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 969292cd6b00..d7aea77bdd20 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index e48203871884..5bc8a2a52541 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8ffd984e542b..261cc19f3238 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -274,7 +274,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..7e7921e49ab0
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/llvm/gnu-install-dirs.patch
@@ -0,0 +1,386 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a3d3013cedcd..b298d6ef04af 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -275,15 +275,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -531,9 +537,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -966,7 +972,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -978,7 +984,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index c0f90ba7068d..d656156ff9c8 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -638,11 +638,11 @@ macro(add_llvm_library name)
+   else()
+     if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LTO" OR
+         (LLVM_LINK_LLVM_DYLIB AND ${name} STREQUAL "LLVM"))
+-      set(install_dir lib${LLVM_LIBDIR_SUFFIX})
++      set(install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       if(ARG_SHARED OR BUILD_SHARED_LIBS)
+         if(WIN32 OR CYGWIN OR MINGW)
+           set(install_type RUNTIME)
+-          set(install_dir bin)
++          set(install_dir ${CMAKE_INSTALL_BINDIR})
+         else()
+           set(install_type LIBRARY)
+         endif()
+@@ -684,9 +684,9 @@ macro(add_llvm_loadable_module name)
+       if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+         if(WIN32 OR CYGWIN)
+           # DLL platform
+-          set(dlldir "bin")
++          set(dlldir "${CMAKE_INSTALL_BINDIR}")
+         else()
+-          set(dlldir "lib${LLVM_LIBDIR_SUFFIX}")
++          set(dlldir "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+         endif()
+ 
+         if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
+@@ -698,7 +698,7 @@ macro(add_llvm_loadable_module name)
+         install(TARGETS ${name}
+                 ${export_to_llvmexports}
+                 LIBRARY DESTINATION ${dlldir}
+-                ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++                ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+     endif()
+@@ -912,7 +912,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1430,7 +1430,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1446,7 +1446,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1469,7 +1469,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT CMAKE_CONFIGURATION_TYPES AND NOT ARG_ALWAYS_GENERATE)
+@@ -1551,7 +1551,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1635,9 +1636,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 02bab6846376..eff26adb2efc 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -140,9 +140,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 22e3dcb776aa..ba77b9c195e2 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -73,7 +73,7 @@ function (add_sphinx_target builder project)
+ 
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 6c316a2f04fb..129c0995059c 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -90,11 +90,11 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 1a04de931ff7..1c5ea4200635 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message("Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index cbcadc212498..a3da96546f43 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -473,8 +473,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -505,13 +505,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   OS X Only: If enabled CMake will generate a target named
+@@ -676,9 +696,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index f201e1f7bff0..4582ed556a02 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -24,6 +24,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 892adc3b9dd8..cabe7fcc630f 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -333,12 +333,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 6e913519a809..85641eef721f 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -19,7 +19,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index 19b606933082..27b9f71b3d79 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,6 +8,6 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/7/openmp.nix
deleted file mode 100644
index 53f52c326c55..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/7/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch "openmp" "1dg53wzsci2kra8lh1y0chh60h2l8h1by93br5spzvzlxshkmrqy";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/openmp/default.nix
new file mode 100644
index 000000000000..c331762712f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch "openmp" "1dg53wzsci2kra8lh1y0chh60h2l8h1by93br5spzvzlxshkmrqy";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/8/bintools/default.nix
index 53f7941e3369..53f7941e3369 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/bintools.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/bintools/default.nix
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/clang/default.nix
index 8f44ffc0615d..c3399dccd1d7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 , enablePolly ? false # TODO: get this info from llvm (passthru?)
@@ -23,18 +24,22 @@ let
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm lld ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++11"
       "-DCLANGD_BUILD_XPC=OFF"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ] ++ lib.optionals enablePolly [
       "-DWITH_POLLY=ON"
       "-DLINK_POLLY_INTO_TOOLS=ON"
@@ -42,7 +47,7 @@ let
 
     patches = [
       ./purity.patch
-      ./clang-xpc.patch
+      ./xpc.patch
       # Backport for -static-pie, which the latter touches, and which is nice in
       # its own right.
       ./static-pie.patch
@@ -53,6 +58,7 @@ let
       ./compiler-rt-baremetal.patch
       # make clang -xhip use $PATH to find executables
       ./HIP-use-PATH-8.patch
+      ./gnu-install-dirs.patch
     ];
 
     postPatch = ''
@@ -69,12 +75,12 @@ let
         --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -91,18 +97,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -121,6 +139,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..e4b9c3f8ddd6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch
@@ -0,0 +1,290 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c2016a45ca6b..9224797da0b5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,6 +9,8 @@ endif()
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(LLVM_CONFIG)
+@@ -382,7 +384,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.def"
+     PATTERN "*.h"
+@@ -391,7 +393,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+     PATTERN "*.inc"
+@@ -399,7 +401,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(PROGRAMS utils/bash-autocomplete.sh
+-    DESTINATION share/clang
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+     )
+ endif()
+ 
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index 7e22f16f365b..3c0c1d245969 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -99,9 +99,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -142,7 +142,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -157,5 +157,5 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index e444c9c8706f..f8e4d06366a4 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -164,19 +164,19 @@ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_fp16.h
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${cuda_wrapper_files}
+   COMPONENT clang-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include/cuda_wrappers)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
+   add_llvm_install_targets(install-clang-headers
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index 53e3421f1b35..79ae5bb4c399 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-check/CMakeLists.txt b/tools/clang-check/CMakeLists.txt
+index b837b0a0a5d9..9e30bd5780a5 100644
+--- a/tools/clang-check/CMakeLists.txt
++++ b/tools/clang-check/CMakeLists.txt
+@@ -21,4 +21,4 @@ target_link_libraries(clang-check
+   )
+ 
+ install(TARGETS clang-check
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-extdef-mapping/CMakeLists.txt b/tools/clang-extdef-mapping/CMakeLists.txt
+index 6c81689a831a..dacc14737719 100644
+--- a/tools/clang-extdef-mapping/CMakeLists.txt
++++ b/tools/clang-extdef-mapping/CMakeLists.txt
+@@ -18,4 +18,4 @@ target_link_libraries(clang-extdef-mapping
+   )
+ 
+ install(TARGETS clang-extdef-mapping
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index a295e8cd0b2a..1973ff82c7f6 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-offload-bundler/CMakeLists.txt b/tools/clang-offload-bundler/CMakeLists.txt
+index 8718015be76a..7a038f39622e 100644
+--- a/tools/clang-offload-bundler/CMakeLists.txt
++++ b/tools/clang-offload-bundler/CMakeLists.txt
+@@ -22,4 +22,4 @@ target_link_libraries(clang-offload-bundler
+   ${CLANG_OFFLOAD_BUNDLER_LIB_DEPS}
+   )
+ 
+-install(TARGETS clang-offload-bundler RUNTIME DESTINATION bin)
++install(TARGETS clang-offload-bundler RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index 45cbd763425c..f534e022024a 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/diagtool/CMakeLists.txt b/tools/diagtool/CMakeLists.txt
+index 96d1c390249c..41c762b37b76 100644
+--- a/tools/diagtool/CMakeLists.txt
++++ b/tools/diagtool/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(diagtool
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(TARGETS diagtool
+     COMPONENT diagtool
+-    RUNTIME DESTINATION bin)
++    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+   if (NOT CMAKE_CONFIGURATION_TYPES)
+     add_llvm_install_targets(install-diagtool
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 32333b011ad1..258dfb2d520c 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -131,7 +131,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -162,7 +162,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT CMAKE_CONFIGURATION_TYPES)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 380379300b09..adfd58ed5f7d 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(LibexecFile ${LibexecFiles})
+@@ -53,7 +53,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/libexec/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+-    install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec)
++    install(PROGRAMS libexec/${LibexecFile} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+   endforeach()
+ 
+   foreach(ManPage ${ManPages})
+@@ -77,7 +77,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/share/scan-build/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+-    install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build)
++    install(FILES share/scan-build/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build)
+   endforeach()
+ 
+   add_custom_target(scan-build ALL DEPENDS ${Depends})
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index b305ca562a72..554bcb379061 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -21,7 +21,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(ShareFile ${ShareFiles})
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/share/scan-view/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+-    install(FILES share/${ShareFile} DESTINATION share/scan-view)
++    install(FILES share/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view)
+   endforeach()
+ 
+   add_custom_target(scan-view ALL DEPENDS ${Depends})
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 5573009d343a..24b3a90f233f 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -9,7 +9,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${CLANG_HMAPTOOL})
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+-install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION bin)
++install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
+ set_target_properties(hmaptool PROPERTIES FOLDER "Utils")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/clang/clang-xpc.patch b/nixpkgs/pkgs/development/compilers/llvm/8/clang/xpc.patch
index eb57d3458228..eb57d3458228 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/clang/clang-xpc.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/clang/xpc.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/default.nix
index 3da3d59d1110..d6d60b241501 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/default.nix
@@ -1,19 +1,20 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
 stdenv.mkDerivation {
-  pname = "compiler-rt";
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
   src = fetch "compiler-rt" "0dqqf8f930l8gag4d9qjgn1n0pj0nbv2anviqqhdi1rkhas8z0hi";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -29,14 +30,15 @@ stdenv.mkDerivation {
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
   ] ++ lib.optionals (useLLVM) [
     "-DCOMPILER_RT_BUILD_BUILTINS=ON"
-    "-DCMAKE_C_FLAGS=-nodefaultlibs"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
@@ -54,6 +56,7 @@ stdenv.mkDerivation {
     # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
     ../../common/compiler-rt/glibc.patch
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+    ./gnu-install-dirs.patch
   ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional (useLLVM) ./crtbegin-and-end.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
@@ -88,4 +91,19 @@ stdenv.mkDerivation {
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
   '';
 
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..a25fa90f9800
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,117 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index aa360a3ef36e..a39676148181 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,7 @@ cmake_minimum_required(VERSION 3.4.3)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 81b110203c27..df7598a11caf 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -479,7 +479,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -496,7 +496,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 04cc955980fa..a99f6dfb2f82 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -377,7 +377,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index 5348f2064b67..d7b8fe190789 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -363,7 +363,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${target}/lib PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${target}/${CMAKE_INSTALL_FULL_LIBDIR} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index aeabf17653f5..0a927fbfc750 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -59,11 +59,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -91,7 +91,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index c4b93b89a30c..3913dc3a1ee6 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -48,12 +48,12 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index b3ae713cf02c..52b364b900f5 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -54,4 +54,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/default.nix
index 6d6d8b4f7830..a7a293cfbbf6 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 }:
 
 let
@@ -17,44 +28,75 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "1qf3097bc5ia8p6cpmbx985rjr3yaah5s8fc0nv7pw742yv7jw8q";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
-      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
+    '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
 
-    llvm-polly = callPackage ./llvm { enablePolly = true; };
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
-      inherit clang-tools-extra_src;
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
     };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
+    };
+
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
     clang-polly-unwrapped = callPackage ./clang {
+      inherit llvm_meta;
       inherit clang-tools-extra_src;
-      llvm = tools.llvm-polly;
+      libllvm = tools.libllvm-polly;
       enablePolly = true;
     };
 
     # disabled until recommonmark supports sphinx 3
-    #llvm-manpages = lowPrio (tools.llvm.override {
+    #llvm-manpages = lowPrio (tools.libllvm.override {
     #  enableManpages = true;
     #  python3 = pkgs.python3;  # don't use python-boot
     #});
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -77,9 +119,13 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
     # fully LLVM toolchain from scratch. No GCC toolchain should be
@@ -88,14 +134,21 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools.nix {};
+    bintools-unwrapped = callPackage ./bintools {};
 
-    lldClang = wrapCCWith rec {
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
+
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
@@ -107,17 +160,17 @@ let
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -128,13 +181,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -144,17 +194,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -163,33 +218,53 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
-      }));
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
-
-    libcxxabi = callPackage ./libc++abi ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libunwind = callPackage ./libunwind ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/libcxx/default.nix
index 70e4d9e1a65e..804b9a53c24a 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxx/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "0y4vc9z36c1zlq15cnibdzxnc1xi5glbc6klnm8a41q3db4541kz";
@@ -13,7 +13,13 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   prePatch = ''
     substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
@@ -47,10 +53,15 @@ stdenv.mkDerivation {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.all;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..6af403ac86b4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,72 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6b83bce1ae72..63cda3e4e80c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,6 +26,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 8.0.1)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 1c19d7e01af7..9c8aee8e8bb7 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -59,7 +59,7 @@ macro(setup_abi_lib abidefines abilib abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 73f7cfc4d8e3..92cf0864ac7e 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -243,7 +243,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT cxx-headers
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   if (LIBCXX_NEEDS_SITE_CONFIG)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT cxx-headers)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index 24489e8fb5e8..7327e5ee4b85 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -414,8 +414,8 @@ if (LIBCXX_INSTALL_LIBRARY)
+     set(experimental_lib cxx_experimental)
+   endif()
+   install(TARGETS ${LIBCXX_INSTALL_TARGETS} ${filesystem_lib} ${experimental_lib}
+-    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+-    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
++    ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx
+     )
+   # NOTE: This install command must go after the cxx install command otherwise
+   # it will not be executed after the library symlinks are installed.
+@@ -423,7 +423,7 @@ if (LIBCXX_INSTALL_LIBRARY)
+     # Replace the libc++ filename with $<TARGET_LINKER_FILE:cxx>
+     # after we required CMake 3.0.
+     install(FILES "${LIBCXX_LIBRARY_DIR}/libc++${CMAKE_SHARED_LIBRARY_SUFFIX}"
+-      DESTINATION ${LIBCXX_INSTALL_PREFIX}lib${LIBCXX_LIBDIR_SUFFIX}
++      DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX}
+       COMPONENT libcxx)
+   endif()
+ endif()
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/default.nix
index bde67f86640d..593b1df9b7ad 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/default.nix
@@ -1,27 +1,14 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "1vznz8n1z1h8af0ga451m98lc2hjnv4fyzl71napsvjhvk4g6nxp";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
-
-  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
-  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
-    "-DLIBCXXABI_ENABLE_THREADS=OFF"
-    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
-  ] ++ lib.optionals (!enableShared) [
-    "-DLIBCXXABI_ENABLE_SHARED=OFF"
-  ];
-
-  patches = [ ./no-threads.patch ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -35,6 +22,24 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d llvm-*) -i ${./wasm.patch}
   '';
 
+  patches = [
+    ./no-threads.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -58,11 +63,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.all;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..3f924b0efbea
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 92c7dc5dc557..556b3e05a042 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 8.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 7e21fb2d7926..30711099a19c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -220,8 +220,8 @@ add_custom_target(cxxabi DEPENDS ${LIBCXXABI_BUILD_TARGETS})
+ 
+ if (LIBCXXABI_INSTALL_LIBRARY)
+   install(TARGETS ${LIBCXXABI_INSTALL_TARGETS}
+-    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+-    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}lib${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    LIBRARY DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
++    ARCHIVE DESTINATION ${LIBCXXABI_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX} COMPONENT cxxabi
+     )
+ endif()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/no-threads.patch b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/no-threads.patch
index 787f3e16500e..787f3e16500e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/libc++abi/no-threads.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/no-threads.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/wasm.patch
index 4ebfe46aa813..4ebfe46aa813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/wasm.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libcxxabi/wasm.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/default.nix
index d1bd54fbd349..244b5775bdc8 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/default.nix
@@ -1,14 +1,12 @@
-{ lib, stdenv, version, fetch, cmake, fetchpatch
+{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libunwind";
   inherit version;
 
-  src = fetch "libunwind" "0vhgcgzsb33l83qaikrkj87ypqb48mi607rccczccwiiv8ficw0q";
-
-  nativeBuildInputs = [ cmake ];
+  src = fetch pname "0vhgcgzsb33l83qaikrkj87ypqb48mi607rccczccwiiv8ficw0q";
 
   patches = [
     (fetchpatch {
@@ -19,7 +17,24 @@ stdenv.mkDerivation {
       url = "https://github.com/llvm-mirror/libunwind/commit/e050272d2eb57eb4e56a37b429a61df2ebb8aa3e.patch";
       sha256 = "1sxyx5xnax8k713jjcxgq3jq3cpnxygs2rcdf5vfja0f2k9jzldl";
     })
+    ./gnu-install-dirs.patch
   ];
 
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ cmake ];
+
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..ffabba8137d6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3d06073cfe74..55c7d1635fcd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   project(libunwind)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(NOT LLVM_CONFIG_PATH)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index f7523f88b6ac..4060dad214de 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -151,8 +151,8 @@ add_custom_target(unwind DEPENDS ${LIBUNWIND_BUILD_TARGETS})
+ 
+ if (LIBUNWIND_INSTALL_LIBRARY)
+   install(TARGETS ${LIBUNWIND_INSTALL_TARGETS}
+-    LIBRARY DESTINATION ${LIBUNWIND_INSTALL_PREFIX}lib${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind
+-    ARCHIVE DESTINATION ${LIBUNWIND_INSTALL_PREFIX}lib${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind)
++    LIBRARY DESTINATION ${LIBUNWIND_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind
++    ARCHIVE DESTINATION ${LIBUNWIND_INSTALL_PREFIX}${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX} COMPONENT unwind)
+ endif()
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES AND LIBUNWIND_INSTALL_LIBRARY)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
index 8009beb7bc13..66b59937e5f1 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
@@ -1,31 +1,43 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
-  src = fetch "lld" "121xhxrlvwy3k5nf6p1wv31whxlb635ssfkci8z93mwv4ja1xflz";
+  src = fetch pname "121xhxrlvwy3k5nf6p1wv31whxlb635ssfkci8z93mwv4ja1xflz";
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
+      WebAssembly in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..acc2d3d47760
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e2fbdbfbbb47..d601b231ebb8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -203,7 +205,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index fa48b428d26b..e7967aad3ceb 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index d8829493fc22..df748a0e749b 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -16,7 +16,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/lldb/default.nix
index 83c171d2a572..ee1f678996a6 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , cmake
 , zlib
@@ -7,53 +7,77 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lldb";
   inherit version;
 
   src = fetch "lldb" "1mriw4adrwm6kzabrjr7yqmdiylxd6glf6samd80dp8idnm9p9z8";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
-    sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
+    sed -i 's,".*ClangConfig.cmake","${libclang.dev}/lib/cmake/clang/ClangConfig.cmake",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
+    sed -i 's,".*tools/clang/include","${libclang.dev}/include",' \
       cmake/modules/LLDBStandalone.cmake
-    sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
+    sed -i 's,"$.LLVM_LIBRARY_DIR.",${libllvm.lib}/lib ${libclang.lib}/lib,' \
       cmake/modules/LLDBStandalone.cmake
   '';
 
-  nativeBuildInputs = [ cmake python3 which swig ];
-  buildInputs = [ ncurses zlib libedit libxml2 llvm ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa ];
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake python3 which swig
+  ];
+
+  buildInputs = [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.libobjc
+    darwin.apple_sdk.libs.xpc
+    darwin.apple_sdk.frameworks.Foundation darwin.bootstrap_cmds darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa
+  ];
 
   CXXFLAGS = "-fno-rtti";
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
     "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     mkdir -p $out/share/man/man1
     cp ../docs/lldb.1 $out/share/man/man1/
 
     install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage    = "https://llvm.org/";
-    license     = licenses.ncsa;
-    platforms   = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b2e79086beda
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch
@@ -0,0 +1,81 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cdf22c4b0fc8..8def776f2b4a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,8 @@ set(CMAKE_MODULE_PATH
+   "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+   )
+ 
++include(GNUInstallDirs)
++
+ include(LLDBStandalone)
+ include(LLDBConfig)
+ include(AddLLDB)
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index f82c11d3d317..776e6d6ef9de 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -63,18 +63,18 @@ function(add_lldb_library name)
+             set(install_dir ".")
+           endif()
+         else()
+-          set(install_dir lib${LLVM_LIBDIR_SUFFIX})
++          set(install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+         endif()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          RUNTIME DESTINATION bin
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+           LIBRARY DESTINATION ${install_dir}
+           ARCHIVE DESTINATION ${install_dir})
+       else()
+         install(TARGETS ${name}
+           COMPONENT ${name}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       endif()
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_llvm_install_targets(install-${name}
+@@ -122,7 +122,7 @@ function(add_lldb_executable name)
+   if(ARG_GENERATE_INSTALL)
+     install(TARGETS ${name}
+             COMPONENT ${name}
+-            RUNTIME DESTINATION bin)
++            RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+     if (NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+                                DEPENDS ${name}
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 109c5132d3be..8b9092faa29d 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -319,7 +319,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -329,7 +329,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index b5316540fdf3..3c3c882d503f 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -64,4 +64,4 @@ if (NOT LLDB_DISABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/default.nix
index c0b88e7ff3e0..6f14b375c62c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
 , fetchpatch
 , cmake
@@ -11,10 +12,10 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
@@ -45,8 +46,7 @@ in stdenv.mkDerivation ({
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
@@ -62,12 +62,13 @@ in stdenv.mkDerivation ({
       url = "https://bugs.gentoo.org/attachment.cgi?id=612792";
       sha256 = "0rwx6jpqq4xnf4mvfm8v2d4r34y1yi05am0mx5k2d5bha9j64lqg";
     })
-  ];
+    ./gnu-install-dirs.patch
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
 
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -96,6 +97,7 @@ in stdenv.mkDerivation ({
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -119,7 +121,20 @@ in stdenv.mkDerivation ({
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_8}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -133,18 +148,19 @@ in stdenv.mkDerivation ({
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
   doCheck = stdenv.isLinux && (!stdenv.isx86_32);
@@ -152,12 +168,23 @@ in stdenv.mkDerivation ({
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -179,5 +206,7 @@ in stdenv.mkDerivation ({
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..7c477c7df58a
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9939097f743e..8cc538da912a 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -145,14 +149,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 211f95512717..f9e04a4844b6 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index e48203871884..5bc8a2a52541 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8ffd984e542b..261cc19f3238 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -274,7 +274,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..027e43f7caca
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch
@@ -0,0 +1,394 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 81c2bab39ec9..075e68be6125 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -251,15 +251,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -517,9 +523,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -956,7 +962,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -968,7 +974,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -983,13 +989,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index 1a417447278b..0c2aef338078 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -646,11 +646,11 @@ macro(add_llvm_library name)
+     if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LTO" OR
+         ${name} STREQUAL "OptRemarks" OR
+         (LLVM_LINK_LLVM_DYLIB AND ${name} STREQUAL "LLVM"))
+-      set(install_dir lib${LLVM_LIBDIR_SUFFIX})
++      set(install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+       if(ARG_MODULE OR ARG_SHARED OR BUILD_SHARED_LIBS)
+         if(WIN32 OR CYGWIN OR MINGW)
+           set(install_type RUNTIME)
+-          set(install_dir bin)
++          set(install_dir ${CMAKE_INSTALL_BINDIR})
+         else()
+           set(install_type LIBRARY)
+         endif()
+@@ -898,7 +898,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1442,7 +1442,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1458,7 +1458,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1481,7 +1481,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1563,7 +1563,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1670,9 +1671,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 02bab6846376..eff26adb2efc 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -140,9 +140,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 22e3dcb776aa..ba77b9c195e2 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -73,7 +73,7 @@ function (add_sphinx_target builder project)
+ 
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index f5cc0006fa06..77698aeaf000 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -90,11 +90,11 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 1a04de931ff7..1c5ea4200635 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message("Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index eb219c58560b..6f32532f8ebf 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -479,8 +479,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -511,13 +511,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   OS X Only: If enabled CMake will generate a target named
+@@ -691,9 +711,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index f201e1f7bff0..4582ed556a02 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -24,6 +24,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index bec89fef98ca..31d78f925d45 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -333,12 +333,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 6e913519a809..85641eef721f 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -19,7 +19,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-remarks/CMakeLists.txt b/tools/opt-remarks/CMakeLists.txt
+index a87beae1e893..149ea3d10168 100644
+--- a/tools/opt-remarks/CMakeLists.txt
++++ b/tools/opt-remarks/CMakeLists.txt
+@@ -11,7 +11,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/OptRemarks.exports)
+ add_llvm_library(OptRemarks SHARED ${SOURCES})
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/OptRemarks.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT OptRemarks)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index 19b606933082..27b9f71b3d79 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,6 +8,6 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/8/openmp.nix
deleted file mode 100644
index b5d75d9c8724..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/8/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch "openmp" "0b3jlxhqbpyd1nqkpxjfggm5d9va5qpyf7d4i5y7n4a1mlydv19y";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/openmp/default.nix
new file mode 100644
index 000000000000..e8459d279829
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch "openmp" "0b3jlxhqbpyd1nqkpxjfggm5d9va5qpyf7d4i5y7n4a1mlydv19y";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/9/bintools/default.nix
index 53f7941e3369..53f7941e3369 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/bintools.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/bintools/default.nix
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/clang/default.nix
index 87b29163f43e..700fcb414fce 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/clang/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
+{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
+, buildLlvmTools
 , fixDarwinDylibNames
 , enableManpages ? false
 , enablePolly ? false # TODO: get this info from llvm (passthru?)
@@ -23,18 +24,22 @@ let
       ++ lib.optional enableManpages python3.pkgs.sphinx
       ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-    buildInputs = [ libxml2 llvm lld ];
+    buildInputs = [ libxml2 libllvm ];
 
     cmakeFlags = [
       "-DCMAKE_CXX_FLAGS=-std=c++11"
       "-DCLANGD_BUILD_XPC=OFF"
       "-DLLVM_ENABLE_RTTI=ON"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
     ] ++ lib.optionals enableManpages [
       "-DCLANG_INCLUDE_DOCS=ON"
       "-DLLVM_ENABLE_SPHINX=ON"
       "-DSPHINX_OUTPUT_MAN=ON"
       "-DSPHINX_OUTPUT_HTML=OFF"
       "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
     ] ++ lib.optionals enablePolly [
       "-DWITH_POLLY=ON"
       "-DLINK_POLLY_INTO_TOOLS=ON"
@@ -46,6 +51,7 @@ let
       ./compiler-rt-baremetal.patch
       # make clang -xhip use $PATH to find executables
       ./HIP-use-PATH-9.patch
+      ./gnu-install-dirs.patch
     ];
 
     postPatch = ''
@@ -62,12 +68,12 @@ let
         --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
     '';
 
-    outputs = [ "out" "lib" "python" ];
+    outputs = [ "out" "lib" "dev" "python" ];
 
     # Clang expects to find LLVMgold in its own prefix
     postInstall = ''
-      if [ -e ${llvm}/lib/LLVMgold.so ]; then
-        ln -sv ${llvm}/lib/LLVMgold.so $out/lib
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
       fi
 
       ln -sv $out/bin/clang $out/bin/cpp
@@ -86,18 +92,30 @@ let
       fi
       mv $out/share/clang/*.py $python/share/clang
       rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
     '';
 
     passthru = {
       isClang = true;
-      inherit llvm;
+      inherit libllvm;
     };
 
-    meta = {
-      description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
-      homepage    = "https://llvm.org/";
-      license     = lib.licenses.ncsa;
-      platforms   = lib.platforms.all;
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
     };
   } // lib.optionalAttrs enableManpages {
     pname = "clang-manpages";
@@ -116,6 +134,8 @@ let
 
     doCheck = false;
 
-    meta.description = "man page for Clang ${version}";
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
   });
 in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..625cbcc72361
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/clang/gnu-install-dirs.patch
@@ -0,0 +1,278 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 60937aa9db38..45522ff32998 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,6 +9,8 @@ endif()
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(LLVM_CONFIG)
+@@ -413,7 +415,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -423,7 +425,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+@@ -442,7 +444,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   endif()
+ 
+   install(PROGRAMS utils/bash-autocomplete.sh
+-    DESTINATION share/clang
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+     )
+ endif()
+ 
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index cbd618e18afb..63ba43f18e64 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -109,9 +109,9 @@ macro(add_clang_library name)
+       install(TARGETS ${name}
+         COMPONENT ${name}
+         ${export_to_clangtargets}
+-        LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-        RUNTIME DESTINATION bin)
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -155,7 +155,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT LLVM_ENABLE_IDE)
+@@ -170,7 +170,7 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+ 
+ function(clang_target_link_libraries target type)
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index a3c0b08fa364..aa4215c0999c 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -185,7 +185,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+   FOLDER "Misc"
+   RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+ 
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${generated_files}
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..8efad5520ca4 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-check/CMakeLists.txt b/tools/clang-check/CMakeLists.txt
+index 4576d78bcfb4..7c3b302d8d59 100644
+--- a/tools/clang-check/CMakeLists.txt
++++ b/tools/clang-check/CMakeLists.txt
+@@ -21,4 +21,4 @@ clang_target_link_libraries(clang-check
+   )
+ 
+ install(TARGETS clang-check
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-extdef-mapping/CMakeLists.txt b/tools/clang-extdef-mapping/CMakeLists.txt
+index 4798bdb71ad0..02d07b9982ac 100644
+--- a/tools/clang-extdef-mapping/CMakeLists.txt
++++ b/tools/clang-extdef-mapping/CMakeLists.txt
+@@ -18,4 +18,4 @@ clang_target_link_libraries(clang-extdef-mapping
+   )
+ 
+ install(TARGETS clang-extdef-mapping
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d77d75de0094 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-offload-bundler/CMakeLists.txt b/tools/clang-offload-bundler/CMakeLists.txt
+index 465bef040a6c..729369ed9429 100644
+--- a/tools/clang-offload-bundler/CMakeLists.txt
++++ b/tools/clang-offload-bundler/CMakeLists.txt
+@@ -22,4 +22,4 @@ clang_target_link_libraries(clang-offload-bundler
+   ${CLANG_OFFLOAD_BUNDLER_LIB_DEPS}
+   )
+ 
+-install(TARGETS clang-offload-bundler RUNTIME DESTINATION bin)
++install(TARGETS clang-offload-bundler RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index cda8e29ec5b1..0134d8ccd70b 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/diagtool/CMakeLists.txt b/tools/diagtool/CMakeLists.txt
+index a95444be40ee..136d96d9bf5b 100644
+--- a/tools/diagtool/CMakeLists.txt
++++ b/tools/diagtool/CMakeLists.txt
+@@ -21,7 +21,7 @@ clang_target_link_libraries(diagtool
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(TARGETS diagtool
+     COMPONENT diagtool
+-    RUNTIME DESTINATION bin)
++    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+   if (NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-diagtool
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 613ead1a36b6..e5c7bf27f739 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -137,7 +137,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -168,7 +168,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT LLVM_ENABLE_IDE)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index 380379300b09..adfd58ed5f7d 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(LibexecFile ${LibexecFiles})
+@@ -53,7 +53,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/libexec/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+-    install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec)
++    install(PROGRAMS libexec/${LibexecFile} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+   endforeach()
+ 
+   foreach(ManPage ${ManPages})
+@@ -77,7 +77,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                          ${CMAKE_BINARY_DIR}/share/scan-build/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+-    install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build)
++    install(FILES share/scan-build/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build)
+   endforeach()
+ 
+   add_custom_target(scan-build ALL DEPENDS ${Depends})
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index b305ca562a72..554bcb379061 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -21,7 +21,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/bin/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+-    install(PROGRAMS bin/${BinFile} DESTINATION bin)
++    install(PROGRAMS bin/${BinFile} DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endforeach()
+ 
+   foreach(ShareFile ${ShareFiles})
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                          ${CMAKE_BINARY_DIR}/share/scan-view/
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+-    install(FILES share/${ShareFile} DESTINATION share/scan-view)
++    install(FILES share/${ShareFile} DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view)
+   endforeach()
+ 
+   add_custom_target(scan-view ALL DEPENDS ${Depends})
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 5573009d343a..24b3a90f233f 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -9,7 +9,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+                    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${CLANG_HMAPTOOL})
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+-install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION bin)
++install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
+ set_target_properties(hmaptool PROPERTIES FOLDER "Utils")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/default.nix
index cfc8e0ea74a2..c31ce78ea0f7 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/default.nix
@@ -1,19 +1,20 @@
-{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
+{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
 
 let
 
   useLLVM = stdenv.hostPlatform.useLLVM or false;
   bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
   inherit (stdenv.hostPlatform) isMusl;
 
 in
 
-stdenv.mkDerivation rec {
-  pname = "compiler-rt";
+stdenv.mkDerivation {
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
-  src = fetch pname "0xwh79g3zggdabxgnd0bphry75asm1qz7mv3hcqihqwqr6aspgy2";
+  src = fetch "compiler-rt" "0xwh79g3zggdabxgnd0bphry75asm1qz7mv3hcqihqwqr6aspgy2";
 
-  nativeBuildInputs = [ cmake python3 llvm ];
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
 
   NIX_CFLAGS_COMPILE = [
@@ -29,14 +30,15 @@ stdenv.mkDerivation rec {
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
     "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
     "-DCOMPILER_RT_BUILD_PROFILE=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
     "-DCMAKE_C_COMPILER_WORKS=ON"
     "-DCMAKE_CXX_COMPILER_WORKS=ON"
     "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
     "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
   ] ++ lib.optionals (useLLVM) [
     "-DCOMPILER_RT_BUILD_BUILTINS=ON"
-    "-DCMAKE_C_FLAGS=-nodefaultlibs"
     #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
     "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
   ] ++ lib.optionals (bareMetal) [
@@ -54,6 +56,7 @@ stdenv.mkDerivation rec {
     # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
     ../../common/compiler-rt/glibc.patch
     ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+    ./gnu-install-dirs.patch
   ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
     ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
 
@@ -86,4 +89,20 @@ stdenv.mkDerivation rec {
     ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o
     ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
   '';
+
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..9f63bef2f861
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,117 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f26ae25ada30..8ba536afdccc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,7 @@ endif()
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index f7ee932f214f..ef94a97c4be9 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -488,7 +488,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -505,7 +505,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index b50d55b56940..7e5729ad9c8e 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -386,7 +386,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index 6e672b1e1818..64999709958e 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -371,7 +371,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index cef0e0d73d87..db33fb028287 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -55,11 +55,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -87,7 +87,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 38bd6e41a912..2092d0d08247 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -50,12 +50,12 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index b3ae713cf02c..52b364b900f5 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -54,4 +54,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/default.nix
index 1b8bdad07bbd..8521354dbb8e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/default.nix
@@ -1,8 +1,19 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
 , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildPackages
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
 }:
 
 let
@@ -17,44 +28,75 @@ let
 
   clang-tools-extra_src = fetch "clang-tools-extra" "01vgzd4k1q93nfs8gyl83mjlc4x0qsgfqw32lacbjzdxg0mdfvxj";
 
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
   tools = lib.makeExtensible (tools: let
-    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
-    mkExtraBuildCommands = cc: ''
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc"
-      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
     '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
+    '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
   in {
 
-    llvm = callPackage ./llvm { };
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
 
-    llvm-polly = callPackage ./llvm { enablePolly = true; };
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
 
-    clang-unwrapped = callPackage ./clang {
-      inherit (tools) lld;
-      inherit clang-tools-extra_src;
+    libllvm-polly = callPackage ./llvm {
+      inherit llvm_meta;
+      enablePolly = true;
     };
+
+    llvm-polly = tools.libllvm-polly.lib // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
+      inherit clang-tools-extra_src llvm_meta;
+    };
+
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
     clang-polly-unwrapped = callPackage ./clang {
+      inherit llvm_meta;
       inherit clang-tools-extra_src;
-      llvm = tools.llvm-polly;
+      libllvm = tools.libllvm-polly;
       enablePolly = true;
     };
 
     # disabled until recommonmark supports sphinx 3
-    #llvm-manpages = lowPrio (tools.llvm.override {
+    #llvm-manpages = lowPrio (tools.libllvm.override {
     #  enableManpages = true;
     #  python3 = pkgs.python3;  # don't use python-boot
     #});
 
-    clang-manpages = lowPrio (tools.clang-unwrapped.override {
+    clang-manpages = lowPrio (tools.libclang.override {
       enableManpages = true;
       python3 = pkgs.python3;  # don't use python-boot
     });
 
-    libclang = tools.clang-unwrapped.lib;
-
     clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
 
     libstdcxxClang = wrapCCWith rec {
@@ -77,9 +119,13 @@ let
       extraBuildCommands = mkExtraBuildCommands cc;
     };
 
-    lld = callPackage ./lld {};
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
 
-    lldb = callPackage ./lldb {};
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+    };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
     # fully LLVM toolchain from scratch. No GCC toolchain should be
@@ -88,14 +134,21 @@ let
     # doesn’t support like LLVM. Probably we should move to some other
     # file.
 
-    bintools = callPackage ./bintools.nix {};
+    bintools-unwrapped = callPackage ./bintools {};
 
-    lldClang = wrapCCWith rec {
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
+
+    clangUseLLVM = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = targetLlvmLibraries.libcxx;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.libcxxabi
         targetLlvmLibraries.compiler-rt
@@ -107,17 +160,17 @@ let
         echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
       '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
         echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
       '' + lib.optionalString stdenv.targetPlatform.isWasm ''
         echo "-fno-exceptions" >> $out/nix-support/cc-cflags
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibcxx = wrapCCWith rec {
+    clangNoLibcxx = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-      };
+      bintools = bintools';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -128,13 +181,10 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoLibc = wrapCCWith rec {
+    clangNoLibc = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [
         targetLlvmLibraries.compiler-rt
       ];
@@ -144,17 +194,22 @@ let
       '' + mkExtraBuildCommands cc;
     };
 
-    lldClangNoCompilerRt = wrapCCWith {
+    clangNoCompilerRt = wrapCCWith rec {
       cc = tools.clang-unwrapped;
       libcxx = null;
-      bintools = wrapBintoolsWith {
-        inherit (tools) bintools;
-        libc = null;
-      };
+      bintools = bintoolsNoLibc';
       extraPackages = [ ];
       extraBuildCommands = ''
         echo "-nostartfiles" >> $out/nix-support/cc-cflags
-      '';
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
     };
 
   });
@@ -163,33 +218,53 @@ let
     callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
   in {
 
-    compiler-rt = callPackage ./compiler-rt ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
-      }));
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
 
     stdenv = overrideCC stdenv buildLlvmTools.clang;
 
     libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
 
-    libcxx = callPackage ./libc++ ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
-
-    libcxxabi = callPackage ./libc++abi ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-        libunwind = libraries.libunwind;
-      }));
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    openmp = callPackage ./openmp.nix {};
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
-    libunwind = callPackage ./libunwind ({} //
-      (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
-        stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
-      }));
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
 
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
   });
 
 in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/libcxx/default.nix
index 6ea1e28e7b4b..b2022f23e511 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/libc++/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxx/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
+{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++";
+  pname = "libcxx";
   inherit version;
 
   src = fetch "libcxx" "0d2bj5i6mk4caq7skd5nsdmz8c2m5w5anximl5wz3x32p08zz089";
@@ -13,7 +13,13 @@ stdenv.mkDerivation {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
 
   preConfigure = ''
     # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
@@ -43,10 +49,15 @@ stdenv.mkDerivation {
     isLLVM = true;
   };
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxx.llvm.org/";
-    description = "A new implementation of the C++ standard library, targeting C++11";
-    license = with lib.licenses; [ ncsa mit ];
-    platforms = lib.platforms.all;
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..424488bd2e52
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,99 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ec1869ddc7ae..a1c040235c8d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,6 +26,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 9.0.1)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -416,7 +418,7 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+     string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+@@ -424,10 +426,10 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+   set(LIBCXX_HEADER_DIR  ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ endif()
+ 
+ file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 10f100f7f0fb..95ed3978ab73 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -61,7 +61,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 7cbf82caa81f..7cbde7accd78 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -243,7 +243,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT ${CXX_HEADER_TARGET}
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   if (LIBCXX_NEEDS_SITE_CONFIG)
+     # Install the generated header as __config.
+     install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+       RENAME __config
+       COMPONENT ${CXX_HEADER_TARGET})
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 31cd24333a5e..a419cef662b0 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -437,21 +437,21 @@ if (LIBCXX_INSTALL_LIBRARY)
+     install(TARGETS cxx_shared
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if (LIBCXX_INSTALL_STATIC_LIBRARY)
+     install(TARGETS cxx_static
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
+     install(TARGETS ${LIBCXX_INSTALL_TARGETS} ${experimental_lib}
+       LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+       ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++      RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+   endif()
+ 
+   # NOTE: This install command must go after the cxx install command otherwise
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/default.nix
index 99d3918b89da..2af3322fd68d 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/default.nix
@@ -1,27 +1,14 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version
+{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation {
-  pname = "libc++abi";
+  pname = "libcxxabi";
   inherit version;
 
   src = fetch "libcxxabi" "1b4aiaa8cirx52vk2p5kfk57qmbqf1ipb4nqnjhdgqps9jm7iyg8";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
-
-  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
-  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
-    "-DLIBCXXABI_ENABLE_THREADS=OFF"
-    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
-  ] ++ lib.optionals (!enableShared) [
-    "-DLIBCXXABI_ENABLE_SHARED=OFF"
-  ];
-
-  patches = [ ./no-threads.patch ];
+  outputs = [ "out" "dev" ];
 
   postUnpack = ''
     unpackFile ${libcxx.src}
@@ -35,6 +22,24 @@ stdenv.mkDerivation {
     patch -p1 -d $(ls -d llvm-*) -i ${./wasm.patch}
   '';
 
+  patches = [
+    ./no-threads.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
   installPhase = if stdenv.isDarwin
     then ''
       for file in lib/*.dylib; do
@@ -58,11 +63,15 @@ stdenv.mkDerivation {
       ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
     '';
 
-  meta = {
+  meta = llvm_meta // {
     homepage = "https://libcxxabi.llvm.org/";
-    description = "A new implementation of low level support for a standard C++ library";
-    license = with lib.licenses; [ ncsa mit ];
-    maintainers = with lib.maintainers; [ vlstill ];
-    platforms = lib.platforms.all;
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..70b41a6ff531
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index aa0b124fc3c4..d74373f465c5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 9.0.1)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -181,17 +183,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+     string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/no-threads.patch b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/no-threads.patch
index 787f3e16500e..787f3e16500e 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/libc++abi/no-threads.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/no-threads.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/libcxxabi-wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/wasm.patch
index 4ebfe46aa813..4ebfe46aa813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/libcxxabi-wasm.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libcxxabi/wasm.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/default.nix
index 4c4c85512e3d..65b89c6bb18f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, fetchpatch
+{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -8,7 +8,25 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "1wb02ha3gl6p0a321hwpll74pz5qvjr11xmjqx62g288f1m10njk";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..12171bb51550
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index df68491d686e..3b53267ae464 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
+   project(libunwind)
+ 
++  include(GNUInstallDirs)
++
+   # Rely on llvm-config.
+   set(CONFIG_OUTPUT)
+   if(NOT LLVM_CONFIG_PATH)
+@@ -189,17 +191,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+     string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ else()
+   set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
index 8b12642d2a70..d13e6a107dd9 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
@@ -1,8 +1,9 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
 , fetch
 , cmake
 , libxml2
-, llvm
+, libllvm
 , version
 }:
 
@@ -12,20 +13,31 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "10hckfxpapfnh6y9apjiya2jpw9nmbbmh8ayijx89mrg7snjn9l6";
 
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ llvm libxml2 ];
+  buildInputs = [ libllvm libxml2 ];
 
-  outputs = [ "out" "dev" ];
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
 
-  postInstall = ''
-    moveToOutput include "$dev"
-    moveToOutput lib "$dev"
-  '';
+  outputs = [ "out" "lib" "dev" ];
 
-  meta = {
-    description = "The LLVM Linker";
-    homepage    = "https://lld.llvm.org/";
-    license     = lib.licenses.ncsa;
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
+      WebAssembly in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..232f5cbac9dd
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 641f71c114ae..9d44c1463aff 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -202,7 +204,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index fa48b428d26b..e7967aad3ceb 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index a15e296e31df..654c2cfdb9c0 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -17,7 +17,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/lldb/default.nix
index d75acf135f36..9957a0218da8 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/lldb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
 , fetch
 , cmake
 , zlib
@@ -7,8 +7,8 @@
 , which
 , libedit
 , libxml2
-, llvm
-, clang-unwrapped
+, libllvm
+, libclang
 , python3
 , version
 , darwin
@@ -21,17 +21,20 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "02gb3fbz09kyw8n71218v5v77ip559x3gqbcp8y3w6n3jpbryywa";
 
-  patches = [ ./procfs.patch ];
+  patches = [
+    ./procfs.patch
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake python3 which swig lit
+  ];
 
-  nativeBuildInputs = [ cmake python3 which swig lit ];
   buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    llvm
-  ]
-  ++ lib.optionals stdenv.isDarwin [
+    ncurses zlib libedit libxml2 libllvm
+  ] ++ lib.optionals stdenv.isDarwin [
     darwin.libobjc
     darwin.apple_sdk.libs.xpc
     darwin.apple_sdk.frameworks.Foundation
@@ -44,11 +47,17 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   cmakeFlags = [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-    "-DClang_DIR=${clang-unwrapped}/lib/cmake"
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
+    "-DClang_DIR=${libclang.dev}/lib/cmake"
     "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
+    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
+  doCheck = false;
+
   postInstall = ''
     # man page
     mkdir -p $out/share/man/man1
@@ -58,13 +67,17 @@ stdenv.mkDerivation rec {
     # vscode:
     install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
     mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
-  meta = with lib; {
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
-    homepage = "https://llvm.org/";
-    license = licenses.ncsa;
-    platforms = platforms.all;
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..cb4e400b3678
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/lldb/gnu-install-dirs.patch
@@ -0,0 +1,65 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5d52f6450657..a05130cf80b9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -14,6 +14,8 @@ set(CMAKE_MODULE_PATH
+ # If we are not building as part of LLVM, build LLDB as a standalone project,
+ # using LLVM as an external library.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
++  include(GNUInstallDirs)
++
+   include(LLDBStandalone)
+ endif()
+ 
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 4c99278c583b..36d3640a6afc 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -94,13 +94,13 @@ function(add_lldb_library name)
+   endif()
+ 
+   if(PARAM_SHARED)
+-    set(install_dest lib${LLVM_LIBDIR_SUFFIX})
++    set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+     if(PARAM_INSTALL_PREFIX)
+       set(install_dest ${PARAM_INSTALL_PREFIX})
+     endif()
+     # RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
+     install(TARGETS ${name} COMPONENT ${name}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       LIBRARY DESTINATION ${install_dest}
+       ARCHIVE DESTINATION ${install_dest}
+       FRAMEWORK DESTINATION ${install_dest})
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index e1a133709ff2..357b4bb4492a 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -335,7 +335,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+@@ -345,7 +345,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index b5316540fdf3..3c3c882d503f 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -64,4 +64,4 @@ if (NOT LLDB_DISABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/default.nix
index b795f07d472b..e763d3e1e7d0 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
 , fetch
 , cmake
 , python3
@@ -10,10 +11,10 @@
 , version
 , release_version
 , zlib
-, buildPackages
+, buildLlvmTools
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 , enablePFM ? !(stdenv.isDarwin
   || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   || stdenv.isAarch32 # broken for the armv7l builder
@@ -44,8 +45,7 @@ in stdenv.mkDerivation (rec {
     mv polly-* $sourceRoot/tools/polly
   '';
 
-  outputs = [ "out" "python" ]
-    ++ optional enableSharedLibraries "lib";
+  outputs = [ "out" "lib" "dev" "python" ];
 
   nativeBuildInputs = [ cmake python3 ]
     ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
@@ -55,10 +55,17 @@ in stdenv.mkDerivation (rec {
 
   propagatedBuildInputs = [ ncurses zlib ];
 
+  patches = [
+    ./gnu-install-dirs.patch
+    # Force a test to evaluate the saved benchmark for a CPU for which LLVM has
+    # an execution model. See NixOS/nixpkgs#119673.
+    ../../exegesis-force-bdver2.patch
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
+
   postPatch = optionalString stdenv.isDarwin ''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' ""
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' ""
   ''
   # Patch llvm-config to return correct library path based on --link-{shared,static}.
   + optionalString (enableSharedLibraries) ''
@@ -104,6 +111,7 @@ in stdenv.mkDerivation (rec {
   '';
 
   cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
     "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
     "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
     "-DLLVM_BUILD_TESTS=ON"
@@ -127,7 +135,20 @@ in stdenv.mkDerivation (rec {
     "-DCAN_TARGET_i386=false"
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildPackages.llvm_9}/bin/llvm-tblgen"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
   ];
 
   postBuild = ''
@@ -141,31 +162,43 @@ in stdenv.mkDerivation (rec {
   postInstall = ''
     mkdir -p $python/share
     mv $out/share/opt-viewer $python/share/opt-viewer
-  ''
-  + optionalString enableSharedLibraries ''
-    moveToOutput "lib/libLLVM-*" "$lib"
-    moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib"
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
   '';
 
-  doCheck = stdenv.isLinux && (!stdenv.isx86_32);
+  doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isRiscV);
 
   checkTarget = "check-all";
 
   requiredSystemFeatures = [ "big-parallel" ];
-  meta = {
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    homepage    = "https://llvm.org/";
-    license     = lib.licenses.ncsa;
-    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill ];
-    platforms   = lib.platforms.all;
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
   };
 } // lib.optionalAttrs enableManpages {
   pname = "llvm-manpages";
@@ -187,5 +220,7 @@ in stdenv.mkDerivation (rec {
 
   doCheck = false;
 
-  meta.description = "man pages for LLVM ${version}";
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
 })
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..7c477c7df58a
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,106 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index 9939097f743e..8cc538da912a 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.4.3)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -145,14 +149,14 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".svn" EXCLUDE
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 211f95512717..f9e04a4844b6 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index e48203871884..5bc8a2a52541 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8ffd984e542b..261cc19f3238 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -274,7 +274,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..380cc3f6df39
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/llvm/gnu-install-dirs.patch
@@ -0,0 +1,395 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b9a10685b99f..c2750500df99 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -242,15 +242,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -534,9 +540,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -1002,7 +1008,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1014,7 +1020,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1029,13 +1035,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index 619e986b8aa0..842b4f71d07e 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -697,9 +697,9 @@ macro(add_llvm_library name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              RUNTIME DESTINATION bin COMPONENT ${name})
++              LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -930,7 +930,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1485,7 +1485,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1501,7 +1501,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1524,7 +1524,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1606,7 +1606,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -1728,9 +1729,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 02bab6846376..eff26adb2efc 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -140,9 +140,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index 22e3dcb776aa..ba77b9c195e2 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -73,7 +73,7 @@ function (add_sphinx_target builder project)
+ 
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 9cf22b436fa7..486e40010cd8 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -96,13 +96,13 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
+ set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+ set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
+ set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
+ configure_file(
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 09fed8085c23..aa79f192abf0 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message(STATUS "Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index 91fb5282206f..d2c9fd94d131 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -492,8 +492,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -524,13 +524,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   macOS Only: If enabled CMake will generate a target named
+@@ -710,9 +730,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index 1d5ca3ba92b0..026f5453c1da 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -4,5 +4,5 @@ add_subdirectory(Support)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index 3a24d3e974e1..987d82c1bb97 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -23,6 +23,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 7ef7c46a2627..1f71f8b0f820 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -332,12 +332,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index b86e4abd01a7..02ce5773f17d 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -23,7 +23,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
+ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index 19b606933082..27b9f71b3d79 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,6 +8,6 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
+diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
+index e948496c603a..1f4df8a98b10 100644
+--- a/tools/remarks-shlib/CMakeLists.txt
++++ b/tools/remarks-shlib/CMakeLists.txt
+@@ -11,7 +11,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/Remarks.exports)
+ add_llvm_library(Remarks SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES})
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT Remarks)
+ 
+ if (APPLE)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/9/openmp.nix
deleted file mode 100644
index 416916f57ff2..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/9/openmp.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, stdenv
-, fetch
-, cmake
-, llvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch pname "1knafnpp0f7hylx8q20lkd6g1sf0flly572dayc5d5kghh7hd52w";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [ llvm ];
-
-  meta = {
-    description = "Components required to build an executable OpenMP program";
-    homepage    = "https://openmp.llvm.org/";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/openmp/default.nix
new file mode 100644
index 000000000000..bedd191d5134
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/openmp/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, llvm_meta
+, fetch
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openmp";
+  inherit version;
+
+  src = fetch pname "1knafnpp0f7hylx8q20lkd6g1sf0flly572dayc5d5kghh7hd52w";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/bintools/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/bintools/default.nix
new file mode 100644
index 000000000000..53f7941e3369
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/bintools/default.nix
@@ -0,0 +1,29 @@
+{ runCommand, stdenv, llvm, lld, version }:
+
+let
+  prefix =
+    if stdenv.hostPlatform != stdenv.targetPlatform
+    then "${stdenv.targetPlatform.config}-"
+    else "";
+in runCommand "llvm-binutils-${version}" { preferLocalBuild = true; } ''
+   mkdir -p $out/bin
+   for prog in ${lld}/bin/*; do
+     ln -s $prog $out/bin/${prefix}$(basename $prog)
+   done
+   for prog in ${llvm}/bin/*; do
+     ln -sf $prog $out/bin/${prefix}$(basename $prog)
+   done
+
+   ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}ar
+   ln -s ${llvm}/bin/llvm-as $out/bin/${prefix}as
+   ln -s ${llvm}/bin/llvm-dwp $out/bin/${prefix}dwp
+   ln -s ${llvm}/bin/llvm-nm $out/bin/${prefix}nm
+   ln -s ${llvm}/bin/llvm-objcopy $out/bin/${prefix}objcopy
+   ln -s ${llvm}/bin/llvm-objdump $out/bin/${prefix}objdump
+   ln -s ${llvm}/bin/llvm-ranlib $out/bin/${prefix}ranlib
+   ln -s ${llvm}/bin/llvm-readelf $out/bin/${prefix}readelf
+   ln -s ${llvm}/bin/llvm-size $out/bin/${prefix}size
+   ln -s ${llvm}/bin/llvm-strip $out/bin/${prefix}strip
+
+   ln -s ${lld}/bin/lld $out/bin/${prefix}ld
+''
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/clang/default.nix
new file mode 100644
index 000000000000..cfafe43c3a5f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/clang/default.nix
@@ -0,0 +1,123 @@
+{ lib, stdenv, llvm_meta, src, cmake, libxml2, libllvm, version, python3
+, buildLlvmTools
+, fixDarwinDylibNames
+, enableManpages ? false
+}:
+
+let
+  self = stdenv.mkDerivation ({
+    pname = "clang";
+    inherit version;
+
+    inherit src;
+    sourceRoot = "source/clang";
+
+    nativeBuildInputs = [ cmake python3 ]
+      ++ lib.optional enableManpages python3.pkgs.sphinx
+      ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
+
+    buildInputs = [ libxml2 libllvm ];
+
+    cmakeFlags = [
+      "-DCMAKE_CXX_FLAGS=-std=c++14"
+      "-DCLANGD_BUILD_XPC=OFF"
+      "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+    ] ++ lib.optionals enableManpages [
+      "-DCLANG_INCLUDE_DOCS=ON"
+      "-DLLVM_ENABLE_SPHINX=ON"
+      "-DSPHINX_OUTPUT_MAN=ON"
+      "-DSPHINX_OUTPUT_HTML=OFF"
+      "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+    ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+      "-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
+    ];
+
+    patches = [
+      ./purity.patch
+      # https://reviews.llvm.org/D51899
+      ./gnu-install-dirs.patch
+    ];
+
+    postPatch = ''
+      sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
+             -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
+             lib/Driver/ToolChains/*.cpp
+
+      # Patch for standalone doc building
+      sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
+    '' + lib.optionalString stdenv.hostPlatform.isMusl ''
+      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
+    '';
+
+    outputs = [ "out" "lib" "dev" "python" ];
+
+    # Clang expects to find LLVMgold in its own prefix
+    postInstall = ''
+      if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then
+        ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib
+      fi
+
+      ln -sv $out/bin/clang $out/bin/cpp
+
+      # Move libclang to 'lib' output
+      moveToOutput "lib/libclang.*" "$lib"
+      moveToOutput "lib/libclang-cpp.*" "$lib"
+      substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \
+          --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang." \
+          --replace "\''${_IMPORT_PREFIX}/lib/libclang-cpp." "$lib/lib/libclang-cpp."
+
+      mkdir -p $python/bin $python/share/clang/
+      mv $out/bin/{git-clang-format,scan-view} $python/bin
+      if [ -e $out/bin/set-xcode-analyzer ]; then
+        mv $out/bin/set-xcode-analyzer $python/bin
+      fi
+      mv $out/share/clang/*.py $python/share/clang
+      rm $out/bin/c-index-test
+
+      mkdir -p $dev/bin
+      cp bin/clang-tblgen $dev/bin
+    '';
+
+    passthru = {
+      isClang = true;
+      inherit libllvm;
+    };
+
+    meta = llvm_meta // {
+      homepage = "https://clang.llvm.org/";
+      description = "A C language family frontend for LLVM";
+      longDescription = ''
+        The Clang project provides a language front-end and tooling
+        infrastructure for languages in the C language family (C, C++, Objective
+        C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
+        It aims to deliver amazingly fast compiles, extremely useful error and
+        warning messages and to provide a platform for building great source
+        level tools. The Clang Static Analyzer and clang-tidy are tools that
+        automatically find bugs in your code, and are great examples of the sort
+        of tools that can be built using the Clang frontend as a library to
+        parse C/C++ code.
+      '';
+    };
+  } // lib.optionalAttrs enableManpages {
+    pname = "clang-manpages";
+
+    buildPhase = ''
+      make docs-clang-man
+    '';
+
+    installPhase = ''
+      mkdir -p $out/share/man/man1
+      # Manually install clang manpage
+      cp docs/man/*.1 $out/share/man/man1/
+    '';
+
+    outputs = [ "out" ];
+
+    doCheck = false;
+
+    meta = llvm_meta // {
+      description = "man page for Clang ${version}";
+    };
+  });
+in self
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/clang/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/clang/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b834d386b4eb
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/clang/gnu-install-dirs.patch
@@ -0,0 +1,235 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9e74014134a0..976e6a1757fd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.13.4)
+ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
+   project(Clang)
+ 
++  include(GNUInstallDirs)
++
+   set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to conform to")
+   set(CMAKE_CXX_STANDARD_REQUIRED YES)
+   set(CMAKE_CXX_EXTENSIONS NO)
+@@ -416,7 +418,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/clang include/clang-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -425,7 +427,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT clang-headers
+     FILES_MATCHING
+     PATTERN "CMakeFiles" EXCLUDE
+@@ -445,7 +447,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh)
+   install(PROGRAMS utils/bash-autocomplete.sh
+-          DESTINATION share/clang
++          DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+           COMPONENT bash-autocomplete)
+   if(NOT LLVM_ENABLE_IDE)
+     add_llvm_install_targets(install-bash-autocomplete
+diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
+index 704278a0e93b..d25c8d325c71 100644
+--- a/cmake/modules/AddClang.cmake
++++ b/cmake/modules/AddClang.cmake
+@@ -123,9 +123,9 @@ macro(add_clang_library name)
+         install(TARGETS ${lib}
+           COMPONENT ${lib}
+           ${export_to_clangtargets}
+-          LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-          RUNTIME DESTINATION bin)
++          LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++          RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+         if (NOT LLVM_ENABLE_IDE)
+           add_llvm_install_targets(install-${lib}
+@@ -170,7 +170,7 @@ macro(add_clang_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_clangtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT LLVM_ENABLE_IDE)
+@@ -185,7 +185,7 @@ endmacro()
+ macro(add_clang_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+ 
+ function(clang_target_link_libraries target type)
+diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
+index b2c0ce8dd4a0..19e5443d8c25 100644
+--- a/lib/Headers/CMakeLists.txt
++++ b/lib/Headers/CMakeLists.txt
+@@ -215,7 +215,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+   FOLDER "Misc"
+   RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+ 
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+ 
+ install(
+   FILES ${files} ${generated_files}
+diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..8efad5520ca4 100644
+--- a/tools/c-index-test/CMakeLists.txt
++++ b/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+        "@executable_path/../../lib")
+   else()
+-    set(INSTALL_DESTINATION bin)
++    set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
+   endif()
+ 
+   install(TARGETS c-index-test
+diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d77d75de0094 100644
+--- a/tools/clang-format/CMakeLists.txt
++++ b/tools/clang-format/CMakeLists.txt
+@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
+ endif()
+ 
+ install(PROGRAMS clang-format-bbedit.applescript
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-diff.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format-sublime.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS clang-format.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+-  DESTINATION bin
++  DESTINATION ${CMAKE_INSTALL_BINDIR}
+   COMPONENT clang-format)
+diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
+index cda8e29ec5b1..0134d8ccd70b 100644
+--- a/tools/clang-rename/CMakeLists.txt
++++ b/tools/clang-rename/CMakeLists.txt
+@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
+   )
+ 
+ install(PROGRAMS clang-rename.py
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+ install(PROGRAMS clang-rename.el
+-  DESTINATION share/clang
++  DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
+   COMPONENT clang-rename)
+diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
+index 51ff2e7e1565..1ed5f8a079a1 100644
+--- a/tools/libclang/CMakeLists.txt
++++ b/tools/libclang/CMakeLists.txt
+@@ -166,7 +166,7 @@ endif()
+ if(INTERNAL_INSTALL_PREFIX)
+   set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
+ else()
+-  set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
++  set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ endif()
+ 
+ install(DIRECTORY ../../include/clang-c
+@@ -196,7 +196,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
+           COMPONENT
+             libclang-python-bindings
+           DESTINATION
+-            "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
++            "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
+ endforeach()
+ if(NOT LLVM_ENABLE_IDE)
+   add_custom_target(libclang-python-bindings)
+diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
+index ec0702d76f18..d25d982f51da 100644
+--- a/tools/scan-build/CMakeLists.txt
++++ b/tools/scan-build/CMakeLists.txt
+@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -61,7 +61,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
+     install(PROGRAMS libexec/${LibexecFile}
+-            DESTINATION libexec
++            DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}
+             COMPONENT scan-build)
+   endforeach()
+ 
+@@ -89,7 +89,7 @@ if(CLANG_INSTALL_SCANBUILD)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
+     install(FILES share/scan-build/${ShareFile}
+-            DESTINATION share/scan-build
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build
+             COMPONENT scan-build)
+   endforeach()
+ 
+diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
+index dd3d33439299..fea19c12ce70 100644
+--- a/tools/scan-view/CMakeLists.txt
++++ b/tools/scan-view/CMakeLists.txt
+@@ -19,7 +19,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+     install(PROGRAMS bin/${BinFile}
+-            DESTINATION bin
++            DESTINATION ${CMAKE_INSTALL_BINDIR}
+             COMPONENT scan-view)
+   endforeach()
+ 
+@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW)
+                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
+     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
+     install(FILES share/${ShareFile}
+-            DESTINATION share/scan-view
++            DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view
+             COMPONENT scan-view)
+   endforeach()
+ 
+diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
+index 62f2de0cb15c..6aa66825b6ec 100644
+--- a/utils/hmaptool/CMakeLists.txt
++++ b/utils/hmaptool/CMakeLists.txt
+@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+ 
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+ install(PROGRAMS ${CLANG_HMAPTOOL}
+-        DESTINATION bin
++        DESTINATION ${CMAKE_INSTALL_BINDIR}
+         COMPONENT hmaptool)
+ 
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/clang/purity.patch b/nixpkgs/pkgs/development/compilers/llvm/git/clang/purity.patch
new file mode 100644
index 000000000000..deb230a36c5b
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/clang/purity.patch
@@ -0,0 +1,28 @@
+From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Thu, 18 May 2017 11:56:12 -0500
+Subject: [PATCH] "purity" patch for 5.0
+
+---
+ lib/Driver/ToolChains/Gnu.cpp | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
+index fe3c0191bb..c6a482bece 100644
+--- a/lib/Driver/ToolChains/Gnu.cpp
++++ b/lib/Driver/ToolChains/Gnu.cpp
+@@ -487,12 +487,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
+   if (!IsStatic) {
+     if (Args.hasArg(options::OPT_rdynamic))
+       CmdArgs.push_back("-export-dynamic");
+-
+-    if (!Args.hasArg(options::OPT_shared) && !IsStaticPIE) {
+-      CmdArgs.push_back("-dynamic-linker");
+-      CmdArgs.push_back(Args.MakeArgString(Twine(D.DyldPrefix) +
+-                                           ToolChain.getDynamicLinker(Args)));
+-    }
+   }
+ 
+   CmdArgs.push_back("-o");
+-- 
+2.11.0
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/X86-support-extension.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/X86-support-extension.patch
new file mode 100644
index 000000000000..f6f9336ad5ad
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/X86-support-extension.patch
@@ -0,0 +1,23 @@
+diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt
+index 3a66dd9c3fb..7efc85d9f9f 100644
+--- a/lib/builtins/CMakeLists.txt
++++ b/lib/builtins/CMakeLists.txt
+@@ -301,6 +301,10 @@ if (NOT MSVC)
+     i386/umoddi3.S
+   )
+ 
++  set(i486_SOURCES ${i386_SOURCES})
++  set(i586_SOURCES ${i386_SOURCES})
++  set(i686_SOURCES ${i386_SOURCES})
++
+   if (WIN32)
+     set(i386_SOURCES
+       ${i386_SOURCES}
+@@ -608,6 +612,7 @@ else ()
+   endif()
+ 
+   foreach (arch ${BUILTIN_SUPPORTED_ARCH})
++      message("arch: ${arch}")
+     if (CAN_TARGET_${arch})
+       # For ARM archs, exclude any VFP builtins if VFP is not supported
+       if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/armv7l.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/armv7l.patch
new file mode 100644
index 000000000000..120cfe6feb2a
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/armv7l.patch
@@ -0,0 +1,32 @@
+diff -ur compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake
+--- compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake	2020-03-24 00:01:02.000000000 +0900
++++ compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake	2020-05-10 03:42:00.883450706 +0900
+@@ -24,7 +24,7 @@
+ 
+ 
+ set(ARM64 aarch64)
+-set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k)
++set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv7l)
+ set(HEXAGON hexagon)
+ set(X86 i386)
+ set(X86_64 x86_64)
+diff -ur compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt
+--- compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt	2020-03-24 00:01:02.000000000 +0900
++++ compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt	2020-05-10 03:44:49.468579650 +0900
+@@ -474,6 +474,7 @@
+ set(armv7_SOURCES ${arm_SOURCES})
+ set(armv7s_SOURCES ${arm_SOURCES})
+ set(armv7k_SOURCES ${arm_SOURCES})
++set(armv7l_SOURCES ${arm_SOURCES})
+ set(arm64_SOURCES ${aarch64_SOURCES})
+ 
+ # macho_embedded archs
+@@ -595,7 +596,7 @@
+   foreach (arch ${BUILTIN_SUPPORTED_ARCH})
+     if (CAN_TARGET_${arch})
+       # For ARM archs, exclude any VFP builtins if VFP is not supported
+-      if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
++      if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em)$")
+         string(REPLACE ";" " " _TARGET_${arch}_CFLAGS "${TARGET_${arch}_CFLAGS}")
+         check_compile_definition(__VFP_FP__ "${CMAKE_C_FLAGS} ${_TARGET_${arch}_CFLAGS}" COMPILER_RT_HAS_${arch}_VFP)
+         if(NOT COMPILER_RT_HAS_${arch}_VFP)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/codesign.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/codesign.patch
new file mode 100644
index 000000000000..3cc12b94b200
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/codesign.patch
@@ -0,0 +1,33 @@
+From 3dec5f3475a26aeb4678627795c4b67c6b7b4785 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Tue, 19 Sep 2017 13:13:06 -0500
+Subject: [PATCH] remove codesign use on Apple, disable ios sim testing that
+ needs it
+
+---
+ cmake/Modules/AddCompilerRT.cmake |  8 ------
+ test/asan/CMakeLists.txt          | 52 ---------------------------------------
+ test/tsan/CMakeLists.txt          | 47 -----------------------------------
+ 3 files changed, 107 deletions(-)
+
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index bc5fb9ff7..b64eb4246 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -210,14 +210,6 @@ function(add_compiler_rt_runtime name type)
+         set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "")
+         set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib")
+       endif()
+-      if(APPLE)
+-        # Ad-hoc sign the dylibs
+-        add_custom_command(TARGET ${libname}
+-          POST_BUILD  
+-          COMMAND codesign --sign - $<TARGET_FILE:${libname}>
+-          WORKING_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR}
+-        )
+-      endif()
+     endif()
+     install(TARGETS ${libname}
+       ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR}
+2.14.1
+
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/default.nix
new file mode 100644
index 000000000000..8aeaabb0cd33
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/default.nix
@@ -0,0 +1,113 @@
+{ lib, stdenv, llvm_meta, version, src, cmake, python3, llvm, libcxxabi }:
+
+let
+
+  useLLVM = stdenv.hostPlatform.useLLVM or false;
+  bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
+  haveLibc = stdenv.cc.libc != null;
+  inherit (stdenv.hostPlatform) isMusl;
+
+in
+
+stdenv.mkDerivation {
+  pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/compiler-rt";
+
+  nativeBuildInputs = [ cmake python3 llvm.dev ];
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
+
+  NIX_CFLAGS_COMPILE = [
+    "-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0"
+  ];
+
+  cmakeFlags = [
+    "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
+    "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
+    "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
+  ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
+    "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
+    "-DCOMPILER_RT_BUILD_XRAY=OFF"
+    "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
+    "-DCOMPILER_RT_BUILD_PROFILE=OFF"
+  ] ++ lib.optionals ((useLLVM || bareMetal) && !haveLibc) [
+    "-DCMAKE_C_COMPILER_WORKS=ON"
+    "-DCMAKE_CXX_COMPILER_WORKS=ON"
+    "-DCOMPILER_RT_BAREMETAL_BUILD=ON"
+    "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
+  ] ++ lib.optionals (useLLVM && !haveLibc) [
+    "-DCMAKE_C_FLAGS=-nodefaultlibs"
+  ] ++ lib.optionals (useLLVM) [
+    "-DCOMPILER_RT_BUILD_BUILTINS=ON"
+    #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
+    "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+  ] ++ lib.optionals (bareMetal) [
+    "-DCOMPILER_RT_OS_DIR=baremetal"
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [
+    "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
+    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
+    "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}"
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./codesign.patch # Revert compiler-rt commit that makes codesign mandatory
+    ./X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
+    ./gnu-install-dirs.patch
+    # ld-wrapper dislikes `-rpath-link //nix/store`, so we normalize away the
+    # extra `/`.
+    ./normalize-var.patch
+  ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
+    ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch;
+
+  # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
+  # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
+  # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd
+  # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by
+  # a flag and turn the flag off during the stdenv build.
+  postPatch = lib.optionalString (!stdenv.isDarwin) ''
+    substituteInPlace cmake/builtin-config-ix.cmake \
+      --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
+  '' + lib.optionalString stdenv.isDarwin ''
+    substituteInPlace cmake/builtin-config-ix.cmake \
+      --replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)'
+    substituteInPlace cmake/config-ix.cmake \
+      --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
+  '' + lib.optionalString (useLLVM) ''
+    substituteInPlace lib/builtins/int_util.c \
+      --replace "#include <stdlib.h>" ""
+    substituteInPlace lib/builtins/clear_cache.c \
+      --replace "#include <assert.h>" ""
+    substituteInPlace lib/builtins/cpu_model.c \
+      --replace "#include <assert.h>" ""
+  '';
+
+  # Hack around weird upsream RPATH bug
+  postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) ''
+    ln -s "$out/lib"/*/* "$out/lib"
+  '' + lib.optionalString (useLLVM) ''
+    ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o
+    ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o
+    ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o
+    ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
+  '';
+
+  meta = llvm_meta // {
+    homepage = "https://compiler-rt.llvm.org/";
+    description = "Compiler runtime libraries";
+    longDescription = ''
+      The compiler-rt project provides highly tuned implementations of the
+      low-level code generator support routines like "__fixunsdfdi" and other
+      calls generated when a target doesn't have a short sequence of native
+      instructions to implement a core IR operation. It also provides
+      implementations of run-time libraries for dynamic testing tools such as
+      AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
+    '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/gnu-install-dirs.patch
new file mode 100644
index 000000000000..5f025764de1c
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/gnu-install-dirs.patch
@@ -0,0 +1,129 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b44ad2c2118e..d42f5664d448 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,7 @@ cmake_minimum_required(VERSION 3.13.4)
+ # Check if compiler-rt is built as a standalone project.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
+   project(CompilerRT C CXX ASM)
++  include(GNUInstallDirs)
+   set(COMPILER_RT_STANDALONE_BUILD TRUE)
+   set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ endif()
+diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
+index 361538a58e47..f0d8d9ab80f1 100644
+--- a/cmake/Modules/AddCompilerRT.cmake
++++ b/cmake/Modules/AddCompilerRT.cmake
+@@ -495,7 +495,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
+   add_custom_target(${target_name} DEPENDS ${dst_file})
+   # Install in Clang resource directory.
+   install(FILES ${file_name}
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
+     COMPONENT ${component})
+   add_dependencies(${component} ${target_name})
+ 
+@@ -512,7 +512,7 @@ macro(add_compiler_rt_script name)
+   add_custom_target(${name} DEPENDS ${dst})
+   install(FILES ${dst}
+     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+-    DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
++    DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
+ endmacro(add_compiler_rt_script src name)
+ 
+ # Builds custom version of libc++ and installs it in <prefix>.
+diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 456a8dcda59f..7a09e74c7c79 100644
+--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -508,7 +508,7 @@ macro(darwin_add_embedded_builtin_libraries)
+     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
+       ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
+-      ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
++      ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
+       
+     set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
+     set(CFLAGS_i386 "-march=pentium")
+diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
+index f61d487e93a0..f1f46fb9599c 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -378,7 +378,7 @@ endfunction()
+ function(get_compiler_rt_install_dir arch install_dir)
+   if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+     get_compiler_rt_target(${arch} target)
+-    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
++    set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
+   else()
+     set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
+   endif()
+diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
+index 1edab43e7c0d..1aac6b73ff82 100644
+--- a/cmake/base-config-ix.cmake
++++ b/cmake/base-config-ix.cmake
+@@ -65,11 +65,11 @@ if (LLVM_TREE_AVAILABLE)
+ else()
+     # Take output dir and install path from the user.
+   set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
+-    "Path where built compiler-rt libraries should be stored.")
++    "Path where built compiler-rt build artifacts should be stored.")
+   set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
+     "Path where built compiler-rt executables should be stored.")
+-  set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
+-    "Path where built compiler-rt libraries should be installed.")
++  set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
++    "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
+   option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
+   option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
+   # Use a host compiler to compile/link tests.
+@@ -97,7 +97,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
+   set(COMPILER_RT_LIBRARY_OUTPUT_DIR
+     ${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
+   set(COMPILER_RT_LIBRARY_INSTALL_DIR
+-    ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
++    ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
+ endif()
+ 
+ if(APPLE)
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index b00e8caa1ddd..0fe64e4862c9 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -69,22 +69,22 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
+ install(FILES ${SANITIZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
+ # Install fuzzer headers.
+ install(FILES ${FUZZER_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/fuzzer)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/fuzzer)
+ # Install xray headers.
+ install(FILES ${XRAY_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
+ # Install profile headers.
+ install(FILES ${PROFILE_HEADERS}
+   COMPONENT compiler-rt-headers
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+-  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/profile)
++  DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/profile)
+ 
+ if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
+   add_custom_target(install-compiler-rt-headers
+diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
+index a29de8deff1b..d39ff01613d2 100644
+--- a/lib/dfsan/CMakeLists.txt
++++ b/lib/dfsan/CMakeLists.txt
+@@ -57,4 +57,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
+                    DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
+ add_dependencies(dfsan dfsan_abilist)
+ install(FILES ${dfsan_abilist_filename}
+-        DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
++        DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/normalize-var.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/normalize-var.patch
new file mode 100644
index 000000000000..135cf625ef78
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/normalize-var.patch
@@ -0,0 +1,16 @@
+diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake
+index f1f46fb9599c..6f19e69507ba 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -302,8 +302,9 @@ macro(load_llvm_config)
+     # Get some LLVM variables from LLVMConfig.
+     include("${LLVM_CMAKE_PATH}/LLVMConfig.cmake")
+ 
+-    set(LLVM_LIBRARY_OUTPUT_INTDIR
+-      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
++    get_filename_component(LLVM_LIBRARY_OUTPUT_INTDIR
++      ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}
++      REALPATH)
+   endif()
+ endmacro()
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/sanitizers-nongnu.patch b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/sanitizers-nongnu.patch
new file mode 100644
index 000000000000..1f2ac97818eb
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/compiler-rt/sanitizers-nongnu.patch
@@ -0,0 +1,412 @@
+From f7a253f8f85d0f49df6b73996737a3e84ac64236 Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Mon, 24 Sep 2018 11:17:25 -0500
+Subject: [PATCH] Ported to 7.0, taken from gentoo-musl project.
+
+------
+Ported to compiler-rt-sanitizers-5.0.0. Taken from
+
+https://gist.githubusercontent.com/pwaller/2337f3290f12634cad3e3730cff0a6c1/raw/83c87a8585e2f9662494db5662e5361beb093c26/nongnu.patch
+Signed-off-by: Jory A. Pratt <anarchy@gentoo.org>
+
+Taken from gentoo-musl project, with a few additional minor fixes.
+---
+ lib/asan/asan_linux.cc                        |  4 +-
+ lib/interception/interception_linux.cc        |  2 +-
+ lib/interception/interception_linux.h         |  2 +-
+ lib/msan/msan_linux.cc                        |  2 +-
+ lib/sanitizer_common/sanitizer_allocator.cc   |  2 +-
+ .../sanitizer_common_interceptors_ioctl.inc   |  4 +-
+ .../sanitizer_common_syscalls.inc             |  2 +-
+ lib/sanitizer_common/sanitizer_linux.cc       |  8 +++-
+ .../sanitizer_linux_libcdep.cc                | 10 ++---
+ lib/sanitizer_common/sanitizer_platform.h     |  6 +++
+ .../sanitizer_platform_interceptors.h         |  4 +-
+ .../sanitizer_platform_limits_posix.cc        | 37 +++++++++++--------
+ lib/tsan/rtl/tsan_platform_linux.cc           |  2 +-
+ 13 files changed, 51 insertions(+), 34 deletions(-)
+
+diff --git a/lib/asan/asan_linux.cc b/lib/asan/asan_linux.cc
+index 625f32d40..73cf77aca 100644
+--- a/lib/asan/asan_linux.cc
++++ b/lib/asan/asan_linux.cc
+@@ -46,7 +46,7 @@
+ #include <link.h>
+ #endif
+ 
+-#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS
++#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU
+ #include <ucontext.h>
+ extern "C" void* _DYNAMIC;
+ #elif SANITIZER_NETBSD
+@@ -139,7 +139,7 @@ void AsanApplyToGlobals(globals_op_fptr op, const void *needle) {
+   UNIMPLEMENTED();
+ }
+ 
+-#if SANITIZER_ANDROID
++#if SANITIZER_ANDROID || SANITIZER_NONGNU
+ // FIXME: should we do anything for Android?
+ void AsanCheckDynamicRTPrereqs() {}
+ void AsanCheckIncompatibleRT() {}
+diff --git a/lib/interception/interception_linux.cc b/lib/interception/interception_linux.cc
+index 26bfcd8f6..529b234f7 100644
+--- a/lib/interception/interception_linux.cc
++++ b/lib/interception/interception_linux.cc
+@@ -43,7 +43,7 @@ bool GetRealFunctionAddress(const char *func_name, uptr *func_addr,
+ }
+ 
+ // Android and Solaris do not have dlvsym
+-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD
++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ void *GetFuncAddrVer(const char *func_name, const char *ver) {
+   return dlvsym(RTLD_NEXT, func_name, ver);
+ }
+diff --git a/lib/interception/interception_linux.h b/lib/interception/interception_linux.h
+index 942c25609..24a4d5080 100644
+--- a/lib/interception/interception_linux.h
++++ b/lib/interception/interception_linux.h
+@@ -36,7 +36,7 @@ void *GetFuncAddrVer(const char *func_name, const char *ver);
+       (::__interception::uptr) & WRAP(func))
+ 
+ // Android,  Solaris and OpenBSD do not have dlvsym
+-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD
++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ #define INTERCEPT_FUNCTION_VER_LINUX_OR_FREEBSD(func, symver) \
+   (::__interception::real_##func = (func##_f)(                \
+        unsigned long)::__interception::GetFuncAddrVer(#func, symver))
+diff --git a/lib/msan/msan_linux.cc b/lib/msan/msan_linux.cc
+index 385a650c4..6e30a8ce9 100644
+--- a/lib/msan/msan_linux.cc
++++ b/lib/msan/msan_linux.cc
+@@ -13,7 +13,7 @@
+ //===----------------------------------------------------------------------===//
+ 
+ #include "sanitizer_common/sanitizer_platform.h"
+-#if SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD
++#if SANITIZER_FREEBSD || (SANITIZER_LINUX && !SANITIZER_NONGNU) || SANITIZER_NETBSD
+ 
+ #include "msan.h"
+ #include "msan_report.h"
+diff --git a/lib/sanitizer_common/sanitizer_allocator.cc b/lib/sanitizer_common/sanitizer_allocator.cc
+index 6bfd5e5ee..048f6154f 100644
+--- a/lib/sanitizer_common/sanitizer_allocator.cc
++++ b/lib/sanitizer_common/sanitizer_allocator.cc
+@@ -27,7 +27,7 @@ const char *SecondaryAllocatorName = "LargeMmapAllocator";
+ 
+ // ThreadSanitizer for Go uses libc malloc/free.
+ #if SANITIZER_GO || defined(SANITIZER_USE_MALLOC)
+-# if SANITIZER_LINUX && !SANITIZER_ANDROID
++# if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ extern "C" void *__libc_malloc(uptr size);
+ #  if !SANITIZER_GO
+ extern "C" void *__libc_memalign(uptr alignment, uptr size);
+diff --git a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
+index 2d633c173..b6eb23116 100644
+--- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
++++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
+@@ -104,7 +104,7 @@ static void ioctl_table_fill() {
+   _(SIOCGETVIFCNT, WRITE, struct_sioc_vif_req_sz);
+ #endif
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+   // Conflicting request ids.
+   // _(CDROMAUDIOBUFSIZ, NONE, 0);
+   // _(SNDCTL_TMR_CONTINUE, NONE, 0);
+@@ -365,7 +365,7 @@ static void ioctl_table_fill() {
+   _(VT_WAITACTIVE, NONE, 0);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   // _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE
+   _(CYGETDEFTHRESH, WRITE, sizeof(int));
+   _(CYGETDEFTIMEOUT, WRITE, sizeof(int));
+diff --git a/lib/sanitizer_common/sanitizer_common_syscalls.inc b/lib/sanitizer_common/sanitizer_common_syscalls.inc
+index 469c8eb7e..24f87867d 100644
+--- a/lib/sanitizer_common/sanitizer_common_syscalls.inc
++++ b/lib/sanitizer_common/sanitizer_common_syscalls.inc
+@@ -2038,7 +2038,7 @@ POST_SYSCALL(setrlimit)(long res, long resource, void *rlim) {
+   }
+ }
+ 
+-#if !SANITIZER_ANDROID
++#if !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ PRE_SYSCALL(prlimit64)(long pid, long resource, const void *new_rlim,
+                        void *old_rlim) {
+   if (new_rlim) PRE_READ(new_rlim, struct_rlimit64_sz);
+diff --git a/lib/sanitizer_common/sanitizer_linux.cc b/lib/sanitizer_common/sanitizer_linux.cc
+index 96d6c1eff..9e2b7fb9d 100644
+--- a/lib/sanitizer_common/sanitizer_linux.cc
++++ b/lib/sanitizer_common/sanitizer_linux.cc
+@@ -541,13 +541,13 @@ const char *GetEnv(const char *name) {
+ #endif
+ }
+ 
+-#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD
++#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_NONGNU
+ extern "C" {
+ SANITIZER_WEAK_ATTRIBUTE extern void *__libc_stack_end;
+ }
+ #endif
+ 
+-#if !SANITIZER_GO && !SANITIZER_FREEBSD && !SANITIZER_NETBSD &&                \
++#if (!SANITIZER_GO || SANITIZER_NONGNU) && !SANITIZER_FREEBSD && !SANITIZER_NETBSD &&                \
+     !SANITIZER_OPENBSD
+ static void ReadNullSepFileToArray(const char *path, char ***arr,
+                                    int arr_size) {
+@@ -590,6 +590,10 @@ static void GetArgsAndEnv(char ***argv, char ***envp) {
+ #elif SANITIZER_NETBSD
+   *argv = __ps_strings->ps_argvstr;
+   *envp = __ps_strings->ps_envstr;
++#elif SANITIZER_NONGNU
++    static const int kMaxArgv = 2000, kMaxEnvp = 2000;
++    ReadNullSepFileToArray("/proc/self/cmdline", argv, kMaxArgv);
++    ReadNullSepFileToArray("/proc/self/environ", envp, kMaxEnvp);
+ #else // SANITIZER_FREEBSD
+ #if !SANITIZER_GO
+   if (&__libc_stack_end) {
+diff --git a/lib/sanitizer_common/sanitizer_linux_libcdep.cc b/lib/sanitizer_common/sanitizer_linux_libcdep.cc
+index 4962ff832..438f94dbe 100644
+--- a/lib/sanitizer_common/sanitizer_linux_libcdep.cc
++++ b/lib/sanitizer_common/sanitizer_linux_libcdep.cc
+@@ -179,7 +179,7 @@ __attribute__((unused)) static bool GetLibcVersion(int *major, int *minor,
+ }
+ 
+ #if !SANITIZER_FREEBSD && !SANITIZER_ANDROID && !SANITIZER_GO &&               \
+-    !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS
++    !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS && !SANITIZER_NONGNU
+ static uptr g_tls_size;
+ 
+ #ifdef __i386__
+@@ -261,7 +261,7 @@ void InitTlsSize() { }
+ #if (defined(__x86_64__) || defined(__i386__) || defined(__mips__) ||          \
+      defined(__aarch64__) || defined(__powerpc64__) || defined(__s390__) ||    \
+      defined(__arm__)) &&                                                      \
+-    SANITIZER_LINUX && !SANITIZER_ANDROID
++    SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ // sizeof(struct pthread) from glibc.
+ static atomic_uintptr_t thread_descriptor_size;
+ 
+@@ -426,7 +426,7 @@ int GetSizeFromHdr(struct dl_phdr_info *info, size_t size, void *data) {
+ 
+ #if !SANITIZER_GO
+ static void GetTls(uptr *addr, uptr *size) {
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ # if defined(__x86_64__) || defined(__i386__) || defined(__s390__)
+   *addr = ThreadSelf();
+   *size = GetTlsSize();
+@@ -470,7 +470,7 @@ static void GetTls(uptr *addr, uptr *size) {
+ #elif SANITIZER_OPENBSD
+   *addr = 0;
+   *size = 0;
+-#elif SANITIZER_ANDROID
++#elif SANITIZER_ANDROID || SANITIZER_NONGNU
+   *addr = 0;
+   *size = 0;
+ #elif SANITIZER_SOLARIS
+@@ -486,7 +486,7 @@ static void GetTls(uptr *addr, uptr *size) {
+ #if !SANITIZER_GO
+ uptr GetTlsSize() {
+ #if SANITIZER_FREEBSD || SANITIZER_ANDROID || SANITIZER_NETBSD ||              \
+-    SANITIZER_OPENBSD || SANITIZER_SOLARIS
++    SANITIZER_OPENBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU
+   uptr addr, size;
+   GetTls(&addr, &size);
+   return size;
+diff --git a/lib/sanitizer_common/sanitizer_platform.h b/lib/sanitizer_common/sanitizer_platform.h
+index d81e25580..e10680ac8 100644
+--- a/lib/sanitizer_common/sanitizer_platform.h
++++ b/lib/sanitizer_common/sanitizer_platform.h
+@@ -208,6 +208,12 @@
+ # define SANITIZER_SOLARIS32 0
+ #endif
+ 
++#if defined(__linux__) && !defined(__GLIBC__)
++# define SANITIZER_NONGNU 1
++#else
++# define SANITIZER_NONGNU 0
++#endif
++
+ #if defined(__myriad2__)
+ # define SANITIZER_MYRIAD2 1
+ #else
+diff --git a/lib/sanitizer_common/sanitizer_platform_interceptors.h b/lib/sanitizer_common/sanitizer_platform_interceptors.h
+index f95539a73..6c53b3415 100644
+--- a/lib/sanitizer_common/sanitizer_platform_interceptors.h
++++ b/lib/sanitizer_common/sanitizer_platform_interceptors.h
+@@ -39,7 +39,7 @@
+ # include "sanitizer_platform_limits_solaris.h"
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ # define SI_LINUX_NOT_ANDROID 1
+ #else
+ # define SI_LINUX_NOT_ANDROID 0
+@@ -322,7 +322,7 @@
+ #define SANITIZER_INTERCEPT_ETHER_R (SI_FREEBSD || SI_LINUX_NOT_ANDROID)
+ #define SANITIZER_INTERCEPT_SHMCTL          \
+   (SI_NETBSD || SI_OPENBSD || SI_SOLARIS || \
+-  ((SI_FREEBSD || SI_LINUX_NOT_ANDROID) && \
++  ((SI_FREEBSD || SI_LINUX_NOT_ANDROID || SANITIZER_NONGNU) && \
+     SANITIZER_WORDSIZE == 64))  // NOLINT
+ #define SANITIZER_INTERCEPT_RANDOM_R SI_LINUX_NOT_ANDROID
+ #define SANITIZER_INTERCEPT_PTHREAD_ATTR_GET SI_POSIX
+diff --git a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 54da635d7..2f6ff69c3 100644
+--- a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -14,6 +14,9 @@
+ 
+ #include "sanitizer_platform.h"
+ 
++// Workaround musl <--> linux conflicting definition of 'struct sysinfo'
++#define _LINUX_SYSINFO_H
++
+ #if SANITIZER_LINUX || SANITIZER_FREEBSD || SANITIZER_MAC
+ // Tests in this file assume that off_t-dependent data structures match the
+ // libc ABI. For example, struct dirent here is what readdir() function (as
+@@ -138,12 +141,14 @@ typedef struct user_fpregs elf_fpregset_t;
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+ #include <glob.h>
+-#include <obstack.h>
++#  if !SANITIZER_NONGNU
++#    include <obstack.h>
++#  endif
+ #include <mqueue.h>
+-#include <net/if_ppp.h>
+-#include <netax25/ax25.h>
+-#include <netipx/ipx.h>
+-#include <netrom/netrom.h>
++#include <linux/if_ppp.h>
++#include <linux/ax25.h>
++#include <linux/ipx.h>
++#include <linux/netrom.h>
+ #if HAVE_RPC_XDR_H
+ # include <rpc/xdr.h>
+ #elif HAVE_TIRPC_RPC_XDR_H
+@@ -251,7 +256,7 @@ namespace __sanitizer {
+   unsigned struct_itimerspec_sz = sizeof(struct itimerspec);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
+   // has been removed from glibc 2.28.
+ #if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
+@@ -322,7 +327,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(ElfW(Phdr));
+ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+ #endif
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   int glob_nomatch = GLOB_NOMATCH;
+   int glob_altdirfunc = GLOB_ALTDIRFUNC;
+ #endif
+@@ -416,7 +421,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned struct_termios_sz = sizeof(struct termios);
+   unsigned struct_winsize_sz = sizeof(struct winsize);
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+   unsigned struct_arpreq_sz = sizeof(struct arpreq);
+   unsigned struct_cdrom_msf_sz = sizeof(struct cdrom_msf);
+   unsigned struct_cdrom_multisession_sz = sizeof(struct cdrom_multisession);
+@@ -466,7 +471,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned struct_vt_mode_sz = sizeof(struct vt_mode);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct);
+   unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor);
+ #if EV_VERSION > (0x010000)
+@@ -834,7 +839,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
+   unsigned IOCTL_VT_WAITACTIVE = VT_WAITACTIVE;
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH;
+   unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT;
+   unsigned IOCTL_CYGETMON = CYGETMON;
+@@ -989,7 +994,7 @@ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phdr);
+ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phnum);
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(glob_t);
+ CHECK_SIZE_AND_OFFSET(glob_t, gl_pathc);
+ CHECK_SIZE_AND_OFFSET(glob_t, gl_pathv);
+@@ -1023,6 +1028,7 @@ CHECK_TYPE_SIZE(iovec);
+ CHECK_SIZE_AND_OFFSET(iovec, iov_base);
+ CHECK_SIZE_AND_OFFSET(iovec, iov_len);
+ 
++#if !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(msghdr);
+ CHECK_SIZE_AND_OFFSET(msghdr, msg_name);
+ CHECK_SIZE_AND_OFFSET(msghdr, msg_namelen);
+@@ -1036,6 +1042,7 @@ CHECK_TYPE_SIZE(cmsghdr);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level);
+ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type);
++#endif
+ 
+ #ifndef __GLIBC_PREREQ
+ #define __GLIBC_PREREQ(x, y) 0
+@@ -1145,7 +1152,7 @@ CHECK_SIZE_AND_OFFSET(mntent, mnt_passno);
+ 
+ CHECK_TYPE_SIZE(ether_addr);
+ 
+-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID
++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ CHECK_TYPE_SIZE(ipc_perm);
+ # if SANITIZER_FREEBSD
+ CHECK_SIZE_AND_OFFSET(ipc_perm, key);
+@@ -1206,7 +1213,7 @@ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_dstaddr);
+ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_data);
+ #endif
+ 
+-#if SANITIZER_LINUX
++#if SANITIZER_LINUX && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer_mallinfo) == sizeof(struct mallinfo));
+ #endif
+ 
+@@ -1256,7 +1263,7 @@ COMPILER_CHECK(__sanitizer_XDR_DECODE == XDR_DECODE);
+ COMPILER_CHECK(__sanitizer_XDR_FREE == XDR_FREE);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer_FILE) <= sizeof(FILE));
+ CHECK_SIZE_AND_OFFSET(FILE, _flags);
+ CHECK_SIZE_AND_OFFSET(FILE, _IO_read_ptr);
+@@ -1275,7 +1282,7 @@ CHECK_SIZE_AND_OFFSET(FILE, _chain);
+ CHECK_SIZE_AND_OFFSET(FILE, _fileno);
+ #endif
+ 
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+ COMPILER_CHECK(sizeof(__sanitizer__obstack_chunk) <= sizeof(_obstack_chunk));
+ CHECK_SIZE_AND_OFFSET(_obstack_chunk, limit);
+ CHECK_SIZE_AND_OFFSET(_obstack_chunk, prev);
+diff --git a/lib/tsan/rtl/tsan_platform_linux.cc b/lib/tsan/rtl/tsan_platform_linux.cc
+index de989b780..51a97b554 100644
+--- a/lib/tsan/rtl/tsan_platform_linux.cc
++++ b/lib/tsan/rtl/tsan_platform_linux.cc
+@@ -294,7 +294,7 @@ void InitializePlatform() {
+ // This is required to properly "close" the fds, because we do not see internal
+ // closes within glibc. The code is a pure hack.
+ int ExtractResolvFDs(void *state, int *fds, int nfd) {
+-#if SANITIZER_LINUX && !SANITIZER_ANDROID
++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU
+   int cnt = 0;
+   struct __res_state *statp = (struct __res_state*)state;
+   for (int i = 0; i < MAXNS && cnt < nfd; i++) {
+-- 
+2.19.0
+
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/default.nix
new file mode 100644
index 000000000000..38de0f70cf2e
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/default.nix
@@ -0,0 +1,269 @@
+{ lowPrio, newScope, pkgs, lib, stdenv, cmake
+, gccForLibs, preLibcCrossHeaders
+, libxml2, python3, isl, fetchFromGitHub, overrideCC, wrapCCWith, wrapBintoolsWith
+, buildLlvmTools # tools, but from the previous stage, for cross
+, targetLlvmLibraries # libraries, but from the next stage, for cross
+# This is the default binutils, but with *this* version of LLD rather
+# than the default LLVM verion's, if LLD is the choice. We use these for
+# the `useLLVM` bootstrapping below.
+, bootBintoolsNoLibc ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintoolsNoLibc
+, bootBintools ?
+    if stdenv.targetPlatform.linker == "lld"
+    then null
+    else pkgs.bintools
+, darwin
+}:
+
+let
+  release_version = "12.0.0";
+  candidate = ""; # empty or "rcN"
+  dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
+  rev = ""; # When using a Git commit
+  version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs
+  targetConfig = stdenv.targetPlatform.config;
+
+  src = fetchFromGitHub {
+    owner = "llvm";
+    repo = "llvm-project";
+    rev = if rev != "" then rev else "llvmorg-${version}";
+    sha256 = "07jz8pywc2qqa1srdnqg5p2y4lx3ki1inpigarzgxc3j20r4gb58";
+  };
+
+  llvm_meta = {
+    license     = lib.licenses.ncsa;
+    maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
+    platforms   = lib.platforms.all;
+  };
+
+  tools = lib.makeExtensible (tools: let
+    callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version src buildLlvmTools; });
+    mkExtraBuildCommands0 = cc: ''
+      rsrc="$out/resource-root"
+      mkdir "$rsrc"
+      ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
+      echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
+    '';
+    mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
+      ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
+    '';
+
+  bintoolsNoLibc' =
+    if bootBintoolsNoLibc == null
+    then tools.bintoolsNoLibc
+    else bootBintoolsNoLibc;
+  bintools' =
+    if bootBintools == null
+    then tools.bintools
+    else bootBintools;
+
+  in {
+
+    libllvm = callPackage ./llvm {
+      inherit llvm_meta;
+    };
+
+    # `llvm` historically had the binaries.  When choosing an output explicitly,
+    # we need to reintroduce `outputUnspecified` to get the expected behavior e.g. of lib.get*
+    llvm = tools.libllvm.out // { outputUnspecified = true; };
+
+    libclang = callPackage ./clang {
+      inherit llvm_meta;
+    };
+
+    clang-unwrapped = tools.libclang.out // { outputUnspecified = true; };
+
+    # disabled until recommonmark supports sphinx 3
+    #Llvm-manpages = lowPrio (tools.libllvm.override {
+    #  enableManpages = true;
+    #  python3 = pkgs.python3;  # don't use python-boot
+    #});
+
+    clang-manpages = lowPrio (tools.libclang.override {
+      enableManpages = true;
+      python3 = pkgs.python3;  # don't use python-boot
+    });
+
+    # disabled until recommonmark supports sphinx 3
+    # lldb-manpages = lowPrio (tools.lldb.override {
+    #   enableManpages = true;
+    #   python3 = pkgs.python3;  # don't use python-boot
+    # });
+
+    clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang;
+
+    libstdcxxClang = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      # libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper.
+      libcxx = null;
+      extraPackages = [
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = mkExtraBuildCommands cc;
+    };
+
+    libcxxClang = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = targetLlvmLibraries.libcxx;
+      extraPackages = [
+        targetLlvmLibraries.libcxxabi
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = mkExtraBuildCommands cc;
+    };
+
+    lld = callPackage ./lld {
+      inherit llvm_meta;
+    };
+
+    lldb = callPackage ./lldb {
+      inherit llvm_meta;
+      inherit (darwin) libobjc bootstrap_cmds;
+      inherit (darwin.apple_sdk.libs) xpc;
+      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    };
+
+    # Below, is the LLVM bootstrapping logic. It handles building a
+    # fully LLVM toolchain from scratch. No GCC toolchain should be
+    # pulled in. As a consequence, it is very quick to build different
+    # targets provided by LLVM and we can also build for what GCC
+    # doesn’t support like LLVM. Probably we should move to some other
+    # file.
+
+    bintools-unwrapped = callPackage ./bintools {};
+
+    bintoolsNoLibc = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+      libc = preLibcCrossHeaders;
+    };
+
+    bintools = wrapBintoolsWith {
+      bintools = tools.bintools-unwrapped;
+    };
+
+    clangUseLLVM = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = targetLlvmLibraries.libcxx;
+      bintools = bintools';
+      extraPackages = [
+        targetLlvmLibraries.libcxxabi
+        targetLlvmLibraries.compiler-rt
+      ] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [
+        targetLlvmLibraries.libunwind
+      ];
+      extraBuildCommands = ''
+        echo "-rtlib=compiler-rt -Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags
+        echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
+        echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
+      '' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
+        echo "-lunwind" >> $out/nix-support/cc-ldflags
+      '' + lib.optionalString stdenv.targetPlatform.isWasm ''
+        echo "-fno-exceptions" >> $out/nix-support/cc-cflags
+      '' + mkExtraBuildCommands cc;
+    };
+
+    clangNoLibcxx = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = ''
+        echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags
+        echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
+        echo "-nostdlib++" >> $out/nix-support/cc-cflags
+      '' + mkExtraBuildCommands cc;
+    };
+
+    clangNoLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintoolsNoLibc';
+      extraPackages = [
+        targetLlvmLibraries.compiler-rt
+      ];
+      extraBuildCommands = ''
+        echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags
+        echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
+      '' + mkExtraBuildCommands cc;
+    };
+
+    clangNoCompilerRt = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintoolsNoLibc';
+      extraPackages = [ ];
+      extraBuildCommands = ''
+        echo "-nostartfiles" >> $out/nix-support/cc-cflags
+      '' + mkExtraBuildCommands0 cc;
+    };
+
+    clangNoCompilerRtWithLibc = wrapCCWith rec {
+      cc = tools.clang-unwrapped;
+      libcxx = null;
+      bintools = bintools';
+      extraPackages = [ ];
+      extraBuildCommands = mkExtraBuildCommands0 cc;
+    };
+
+  });
+
+  libraries = lib.makeExtensible (libraries: let
+    callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version src; });
+  in {
+
+    compiler-rt-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
+               else stdenv;
+    };
+
+    compiler-rt-no-libc = callPackage ./compiler-rt {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
+               else stdenv;
+    };
+
+    # N.B. condition is safe because without useLLVM both are the same.
+    compiler-rt = if stdenv.hostPlatform.isAndroid
+      then libraries.compiler-rt-libc
+      else libraries.compiler-rt-no-libc;
+
+    stdenv = overrideCC stdenv buildLlvmTools.clang;
+
+    libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
+
+    libcxx = callPackage ./libcxx {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
+
+    libcxxabi = callPackage ./libcxxabi {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
+
+    libunwind = callPackage ./libunwind {
+      inherit llvm_meta;
+      stdenv = if stdenv.hostPlatform.useLLVM or false
+               then overrideCC stdenv buildLlvmTools.clangNoLibcxx
+               else stdenv;
+    };
+
+    openmp = callPackage ./openmp {
+      inherit llvm_meta;
+    };
+  });
+
+in { inherit tools libraries; } // libraries // tools
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/default.nix
new file mode 100644
index 000000000000..8fb6b4a7dbd4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/default.nix
@@ -0,0 +1,54 @@
+{ lib, stdenv, llvm_meta, src, cmake, python3, libcxxabi, fixDarwinDylibNames, version
+, enableShared ? !stdenv.hostPlatform.isStatic
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libcxx";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  outputs = [ "out" "dev" ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+  ];
+
+  preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
+    patchShebangs utils/cat_files.py
+  '';
+
+  nativeBuildInputs = [ cmake python3 ]
+    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+  buildInputs = [ libcxxabi ];
+
+  cmakeFlags = [
+    "-DLIBCXX_CXX_ABI=libcxxabi"
+  ] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
+    ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
+    ++ lib.optional stdenv.hostPlatform.isWasm [
+      "-DLIBCXX_ENABLE_THREADS=OFF"
+      "-DLIBCXX_ENABLE_FILESYSTEM=OFF"
+      "-DLIBCXX_ENABLE_EXCEPTIONS=OFF"
+    ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF";
+
+  passthru = {
+    isLLVM = true;
+  };
+
+  meta = llvm_meta // {
+    homepage = "https://libcxx.llvm.org/";
+    description = "C++ standard library";
+    longDescription = ''
+      libc++ is an implementation of the C++ standard library, targeting C++11,
+      C++14 and above.
+    '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/gnu-install-dirs.patch
new file mode 100644
index 000000000000..1f9de00a9d56
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libcxx/gnu-install-dirs.patch
@@ -0,0 +1,100 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9bf1a02f0908..612cd4aab76c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
+   project(libcxx CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxx)
+   set(PACKAGE_VERSION 12.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -402,7 +404,7 @@ endif ()
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+     string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
+@@ -410,11 +412,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+   set(LIBCXX_HEADER_DIR  ${LLVM_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
+   set(LIBCXX_HEADER_DIR  ${CMAKE_BINARY_DIR})
+-  set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
++  set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
+ endif()
+ 
+ file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
+diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
+index 5d2764e870e9..bb1ec5de6ca2 100644
+--- a/cmake/Modules/HandleLibCXXABI.cmake
++++ b/cmake/Modules/HandleLibCXXABI.cmake
+@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
+ 
+         if (LIBCXX_INSTALL_HEADERS)
+           install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
+-            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
++            DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
+             COMPONENT cxx-headers
+             PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+             )
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 29a317b8ae9a..4747263cfd1b 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
+   foreach(file ${files})
+     get_filename_component(dir ${file} DIRECTORY)
+     install(FILES ${file}
+-      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
++      DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
+       COMPONENT cxx-headers
+       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     )
+@@ -260,7 +260,7 @@ if (LIBCXX_INSTALL_HEADERS)
+ 
+   # Install the generated header as __config.
+   install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
+-    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
++    DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
+     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+     RENAME __config
+     COMPONENT cxx-headers)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 9965104cb5b2..9b55dbb1d822 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -352,21 +352,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
+   install(TARGETS cxx_shared
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ if (LIBCXX_INSTALL_STATIC_LIBRARY)
+   install(TARGETS cxx_static
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
+   install(TARGETS cxx_experimental
+     LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+     ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
+-    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
++    RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
+ endif()
+ 
+ # NOTE: This install command must go after the cxx install command otherwise
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/default.nix
new file mode 100644
index 000000000000..3bb82d651ec7
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/default.nix
@@ -0,0 +1,73 @@
+{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
+, enableShared ? !stdenv.hostPlatform.isStatic
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libcxxabi";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  outputs = [ "out" "dev" ];
+
+  postUnpack = lib.optionalString stdenv.isDarwin ''
+    export TRIPLE=x86_64-apple-darwin
+  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -d libcxx -i ${../../libcxx-0001-musl-hacks.patch}
+  '' + lib.optionalString stdenv.hostPlatform.isWasm ''
+    patch -p1 -d llvm -i ${./wasm.patch}
+  '';
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake python3 ];
+  buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
+
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isWasm [
+    "-DLIBCXXABI_ENABLE_THREADS=OFF"
+    "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
+  ] ++ lib.optionals (!enableShared) [
+    "-DLIBCXXABI_ENABLE_SHARED=OFF"
+  ];
+
+  installPhase = if stdenv.isDarwin
+    then ''
+      for file in lib/*.dylib; do
+        # this should be done in CMake, but having trouble figuring out
+        # the magic combination of necessary CMake variables
+        # if you fancy a try, take a look at
+        # https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling
+        install_name_tool -id $out/$file $file
+      done
+      make install
+      install -d 755 $out/include
+      install -m 644 ../include/*.h $out/include
+    ''
+    else ''
+      install -d -m 755 $out/include $out/lib
+      install -m 644 lib/libc++abi.a $out/lib
+      install -m 644 ../include/cxxabi.h $out/include
+    '' + lib.optionalString enableShared ''
+      install -m 644 lib/libc++abi.so.1.0 $out/lib
+      ln -s libc++abi.so.1.0 $out/lib/libc++abi.so
+      ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
+    '';
+
+  meta = llvm_meta // {
+    homepage = "https://libcxxabi.llvm.org/";
+    description = "Provides C++ standard library support";
+    longDescription = ''
+      libc++abi is a new implementation of low level support for a standard C++ library.
+    '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+    maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/gnu-install-dirs.patch
new file mode 100644
index 000000000000..b49b1685940f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 426c855288fc..a9812a994f53 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
+   project(libcxxabi CXX C)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libcxxabi)
+   set(PACKAGE_VERSION 11.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -180,17 +182,17 @@ set(CMAKE_MODULE_PATH
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+     string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ else()
+   set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
+-  set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
++  set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/wasm.patch
new file mode 100644
index 000000000000..4ebfe46aa813
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libcxxabi/wasm.patch
@@ -0,0 +1,16 @@
+diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
+index 15497d405e0..33f7f18193a 100644
+--- a/cmake/modules/HandleLLVMOptions.cmake
++++ b/cmake/modules/HandleLLVMOptions.cmake
+@@ -127,7 +127,10 @@ else(WIN32)
+       set(LLVM_HAVE_LINK_VERSION_SCRIPT 1)
+     endif()
+   else(FUCHSIA OR UNIX)
+-    MESSAGE(SEND_ERROR "Unable to determine platform")
++    if(${CMAKE_SYSTEM_NAME} MATCHES "Wasi")
++    else()
++      MESSAGE(SEND_ERROR "Unable to determine platform")
++    endif()
+   endif(FUCHSIA OR UNIX)
+ endif(WIN32)
+ 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/default.nix
new file mode 100644
index 000000000000..b6017e741728
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/default.nix
@@ -0,0 +1,33 @@
+{ lib, stdenv, llvm_meta, version, src, cmake
+, enableShared ? !stdenv.hostPlatform.isStatic
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libunwind";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
+
+  meta = llvm_meta // {
+    # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
+    homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
+    description = "LLVM's unwinder library";
+    longDescription = ''
+      The unwind library provides a family of _Unwind_* functions implementing
+      the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
+      I). It is a dependency of the C++ ABI library, and sometimes is a
+      dependency of other runtimes.
+    '';
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/gnu-install-dirs.patch
new file mode 100644
index 000000000000..a791d6c43231
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/libunwind/gnu-install-dirs.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 48cb8e004e08..fec8144fb95a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -23,6 +23,8 @@ set(LIBUNWIND_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
+   project(libunwind LANGUAGES C CXX ASM)
+ 
++  include(GNUInstallDirs)
++
+   set(PACKAGE_NAME libunwind)
+   set(PACKAGE_VERSION 12.0.0)
+   set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
+@@ -115,17 +117,17 @@ set(CMAKE_MODULE_PATH
+ 
+ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+   if(LIBCXX_LIBDIR_SUBDIR)
+     string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+     string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
+   endif()
+ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
+   set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ else()
+   set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
+-  set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
++  set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ endif()
+ 
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix
new file mode 100644
index 000000000000..34ac265f4bfd
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix
@@ -0,0 +1,44 @@
+{ lib, stdenv, llvm_meta
+, buildLlvmTools
+, src
+, cmake
+, libxml2
+, libllvm
+, version
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lld";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  patches = [
+    ./gnu-install-dirs.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libllvm libxml2 ];
+
+  cmakeFlags = [
+    "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
+
+  meta = llvm_meta // {
+    homepage = "https://lld.llvm.org/";
+    description = "The LLVM linker";
+    longDescription = ''
+      LLD is a linker from the LLVM project that is a drop-in replacement for
+      system linkers and runs much faster than them. It also provides features
+      that are useful for toolchain developers.
+      The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
+      WebAssembly in descending order of completeness. Internally, LLD consists
+      of several different linkers.
+    '';
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lld/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/lld/gnu-install-dirs.patch
new file mode 100644
index 000000000000..61e2f0e48653
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lld/gnu-install-dirs.patch
@@ -0,0 +1,68 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d4e561b50d8f..cfa5bdd79c2a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
+   set(CMAKE_INCLUDE_CURRENT_DIR ON)
+   set(LLD_BUILT_STANDALONE TRUE)
+ 
++  include(GNUInstallDirs)
++
+   find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
+   if(NOT LLVM_CONFIG_PATH)
+     message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
+@@ -179,7 +181,7 @@ include_directories(BEFORE
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     )
+diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
+index 23df41312403..d62372c88de7 100644
+--- a/cmake/modules/AddLLD.cmake
++++ b/cmake/modules/AddLLD.cmake
+@@ -20,9 +20,9 @@ macro(add_lld_library name)
+     install(TARGETS ${name}
+       COMPONENT ${name}
+       ${export_to_lldtargets}
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      RUNTIME DESTINATION bin)
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+     if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
+       add_llvm_install_targets(install-${name}
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+ 
+     install(TARGETS ${name}
+       ${export_to_lldtargets}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       COMPONENT ${name})
+ 
+     if(NOT CMAKE_CONFIGURATION_TYPES)
+@@ -69,5 +69,5 @@ endmacro()
+ macro(add_lld_symlink name dest)
+   add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
+   # Always generate install targets
+-  llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
++  llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
+ endmacro()
+diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
+index 5cff736ff57f..64e775c771b9 100644
+--- a/tools/lld/CMakeLists.txt
++++ b/tools/lld/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(lld
+   )
+ 
+ install(TARGETS lld
+-  RUNTIME DESTINATION bin)
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+   set(LLD_SYMLINKS_TO_CREATE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/default.nix
new file mode 100644
index 000000000000..f8c7e7b55e67
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/default.nix
@@ -0,0 +1,131 @@
+{ lib, stdenv, llvm_meta
+, runCommand
+, src
+, cmake
+, zlib
+, ncurses
+, swig
+, which
+, libedit
+, libxml2
+, libllvm
+, libclang
+, python3
+, version
+, libobjc
+, xpc
+, Foundation
+, bootstrap_cmds
+, Carbon
+, Cocoa
+, lit
+, enableManpages ? false
+}:
+
+stdenv.mkDerivation (rec {
+  pname = "lldb";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  patches = [
+    ./procfs.patch
+    (runCommand "resource-dir.patch" {
+      clangLibDir = "${libclang.lib}/lib";
+    } ''
+      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
+    '')
+    ./gnu-install-dirs.patch
+  ];
+
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [
+    cmake python3 which swig lit
+  ] ++ lib.optionals enableManpages [
+    python3.pkgs.sphinx python3.pkgs.recommonmark
+  ];
+
+  buildInputs = [
+    ncurses
+    zlib
+    libedit
+    libxml2
+    libllvm
+  ]
+  ++ lib.optionals stdenv.isDarwin [
+    libobjc
+    xpc
+    Foundation
+    bootstrap_cmds
+    Carbon
+    Cocoa
+  ];
+
+  hardeningDisable = [ "format" ];
+
+  cmakeFlags = [
+    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
+    "-DLLVM_ENABLE_RTTI=OFF"
+    "-DClang_DIR=${libclang.dev}/lib/cmake"
+    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
+  ] ++ lib.optionals enableManpages [
+    "-DLLVM_ENABLE_SPHINX=ON"
+    "-DSPHINX_OUTPUT_MAN=ON"
+    "-DSPHINX_OUTPUT_HTML=OFF"
+  ] ++ lib.optionals doCheck [
+    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
+    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
+  ];
+
+  doCheck = false;
+
+  postInstall = ''
+    # Editor support
+    # vscode:
+    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
+    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+  '';
+
+  meta = llvm_meta // {
+    homepage = "https://lldb.llvm.org/";
+    description = "A next-generation high-performance debugger";
+    longDescription = ''
+      LLDB is a next generation, high-performance debugger. It is built as a set
+      of reusable components which highly leverage existing libraries in the
+      larger LLVM Project, such as the Clang expression parser and LLVM
+      disassembler.
+    '';
+  };
+} // lib.optionalAttrs enableManpages {
+  pname = "lldb-manpages";
+
+  buildPhase = ''
+    make docs-lldb-man
+  '';
+
+  propagatedBuildInputs = [];
+
+  # manually install lldb man page
+  installPhase = ''
+    mkdir -p $out/share/man/man1
+    install docs/man/lldb.1 -t $out/share/man/man1/
+  '';
+
+  postPatch = null;
+  postInstall = null;
+
+  outputs = [ "out" ];
+
+  doCheck = false;
+
+  meta = llvm_meta // {
+    description = "man pages for LLDB ${version}";
+  };
+})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lldb/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/gnu-install-dirs.patch
new file mode 100644
index 000000000000..98321f4479e6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/gnu-install-dirs.patch
@@ -0,0 +1,65 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b5633e21c56a..f2f1035e9238 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,6 +10,8 @@ set(CMAKE_MODULE_PATH
+ # If we are not building as part of LLVM, build LLDB as a standalone project,
+ # using LLVM as an external library.
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
++  include(GNUInstallDirs)
++
+   project(lldb)
+   include(LLDBStandalone)
+ 
+diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
+index 4ed5c647c5d2..89f96e710d55 100644
+--- a/cmake/modules/AddLLDB.cmake
++++ b/cmake/modules/AddLLDB.cmake
+@@ -107,13 +107,13 @@ function(add_lldb_library name)
+   endif()
+ 
+   if(PARAM_SHARED)
+-    set(install_dest lib${LLVM_LIBDIR_SUFFIX})
++    set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+     if(PARAM_INSTALL_PREFIX)
+       set(install_dest ${PARAM_INSTALL_PREFIX})
+     endif()
+     # RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
+     install(TARGETS ${name} COMPONENT ${name}
+-      RUNTIME DESTINATION bin
++      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+       LIBRARY DESTINATION ${install_dest}
+       ARCHIVE DESTINATION ${install_dest}
+       FRAMEWORK DESTINATION ${install_dest})
+diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
+index 2fdf1502d055..37364341ff8b 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -225,7 +225,7 @@ include_directories(BEFORE
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".cmake" EXCLUDE
+@@ -233,7 +233,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+     COMPONENT lldb-headers
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN ".cmake" EXCLUDE
+diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
+index 734167e51bc5..f95761b5df58 100644
+--- a/tools/intel-features/CMakeLists.txt
++++ b/tools/intel-features/CMakeLists.txt
+@@ -65,4 +65,4 @@ if (LLDB_ENABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
+ endif()
+ 
+ install(TARGETS lldbIntelFeatures
+-  LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lldb/procfs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/procfs.patch
new file mode 100644
index 000000000000..b075dbaeee0a
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/procfs.patch
@@ -0,0 +1,31 @@
+--- a/source/Plugins/Process/Linux/Procfs.h
++++ b/source/Plugins/Process/Linux/Procfs.h
+@@ -11,21 +11,12 @@
+ // sys/procfs.h on Android/Linux for all supported architectures.
+ 
+ #include <sys/ptrace.h>
++#include <asm/ptrace.h>
+ 
+-#ifdef __ANDROID__
+-#if defined(__arm64__) || defined(__aarch64__)
+-typedef unsigned long elf_greg_t;
+-typedef elf_greg_t
+-    elf_gregset_t[(sizeof(struct user_pt_regs) / sizeof(elf_greg_t))];
+-typedef struct user_fpsimd_state elf_fpregset_t;
+-#ifndef NT_FPREGSET
+-#define NT_FPREGSET NT_PRFPREG
+-#endif // NT_FPREGSET
+-#elif defined(__mips__)
+-#ifndef NT_FPREGSET
+-#define NT_FPREGSET NT_PRFPREG
+-#endif // NT_FPREGSET
+-#endif
+-#else // __ANDROID__
++#if !defined(__GLIBC__) && defined(__powerpc__)
++#define pt_regs musl_pt_regs
++#include <sys/procfs.h>
++#undef pt_regs
++#else
+ #include <sys/procfs.h>
+-#endif // __ANDROID__
++#endif
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lldb/resource-dir.patch b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/resource-dir.patch
new file mode 100644
index 000000000000..e0db80afeb9f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lldb/resource-dir.patch
@@ -0,0 +1,13 @@
+diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake
+index 37364341ff8b..7f74c1a3e257 100644
+--- a/cmake/modules/LLDBConfig.cmake
++++ b/cmake/modules/LLDBConfig.cmake
+@@ -257,7 +257,7 @@ if (NOT TARGET clang-resource-headers)
+   # Iterate over the possible places where the external resource directory
+   # could be and pick the first that exists.
+   foreach(CANDIDATE "${Clang_DIR}/../.." "${LLVM_DIR}" "${LLVM_LIBRARY_DIRS}"
+-                    "${LLVM_BUILD_LIBRARY_DIR}"
++                    "${LLVM_BUILD_LIBRARY_DIR}" "@clangLibDir@"
+                     "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}")
+     # Build the resource directory path by appending 'clang/<version number>'.
+     set(CANDIDATE_RESOURCE_DIR "${CANDIDATE}/clang/${LLDB_CLANG_RESOURCE_DIR_NAME}")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/default.nix
new file mode 100644
index 000000000000..f65476a6fddd
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/default.nix
@@ -0,0 +1,220 @@
+{ lib, stdenv, llvm_meta
+, pkgsBuildBuild
+, src
+, fetchpatch
+, cmake
+, python3
+, libffi
+, libbfd
+, libpfm
+, libxml2
+, ncurses
+, version
+, release_version
+, zlib
+, buildLlvmTools
+, debugVersion ? false
+, enableManpages ? false
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
+, enablePFM ? !(stdenv.isDarwin
+  || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
+  || stdenv.isAarch32 # broken for the armv7l builder
+)
+, enablePolly ? false
+}:
+
+let
+  inherit (lib) optional optionals optionalString;
+
+  # Used when creating a version-suffixed symlink of libLLVM.dylib
+  shortVersion = with lib;
+    concatStringsSep "." (take 1 (splitString "." release_version));
+
+in stdenv.mkDerivation (rec {
+  pname = "llvm";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  outputs = [ "out" "lib" "dev" "python" ];
+
+  nativeBuildInputs = [ cmake python3 ]
+    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
+
+  buildInputs = [ libxml2 libffi ]
+    ++ optional enablePFM libpfm; # exegesis
+
+  propagatedBuildInputs = [ ncurses zlib ];
+
+  patches = [
+    ./gnu-install-dirs.patch
+    # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
+    (fetchpatch {
+      name = "uops-CMOV16rm-noreg.diff";
+      url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
+      sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
+      stripLen = 1;
+    })
+  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
+
+  postPatch = optionalString stdenv.isDarwin ''
+    substituteInPlace cmake/modules/AddLLVM.cmake \
+      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
+      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
+  ''
+  # Patch llvm-config to return correct library path based on --link-{shared,static}.
+  + optionalString (enableSharedLibraries) ''
+    substitute '${./outputs.patch}' ./outputs.patch --subst-var lib
+    patch -p1 < ./outputs.patch
+  '' + ''
+    # FileSystem permissions tests fail with various special bits
+    substituteInPlace unittests/Support/CMakeLists.txt \
+      --replace "Path.cpp" ""
+    rm unittests/Support/Path.cpp
+    substituteInPlace unittests/IR/CMakeLists.txt \
+      --replace "PassBuilderCallbacksTest.cpp" ""
+    rm unittests/IR/PassBuilderCallbacksTest.cpp
+  '' + optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -i ${../../TLI-musl.patch}
+    substituteInPlace unittests/Support/CMakeLists.txt \
+      --replace "add_subdirectory(DynamicLibrary)" ""
+    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
+    # valgrind unhappy with musl or glibc, but fails w/musl only
+    rm test/CodeGen/AArch64/wineh4.mir
+  '' + optionalString stdenv.hostPlatform.isAarch32 ''
+    # skip failing X86 test cases on 32-bit ARM
+    rm test/DebugInfo/X86/convert-debugloc.ll
+    rm test/DebugInfo/X86/convert-inlined.ll
+    rm test/DebugInfo/X86/convert-linked.ll
+    rm test/tools/dsymutil/X86/op-convert.test
+  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
+    # Seems to require certain floating point hardware (NEON?)
+    rm test/ExecutionEngine/frem.ll
+  '' + ''
+    patchShebangs test/BugPoint/compile-custom.ll.py
+  '';
+
+  # hacky fix: created binaries need to be run before installation
+  preBuild = ''
+    mkdir -p $out/
+    ln -sv $PWD/lib $out
+  '';
+
+  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
+  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
+
+  cmakeFlags = with stdenv; [
+    "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
+    "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
+    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
+    "-DLLVM_BUILD_TESTS=ON"
+    "-DLLVM_ENABLE_FFI=ON"
+    "-DLLVM_ENABLE_RTTI=ON"
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_ENABLE_DUMP=ON"
+  ] ++ optionals enableSharedLibraries [
+    "-DLLVM_LINK_LLVM_DYLIB=ON"
+  ] ++ optionals enableManpages [
+    "-DLLVM_BUILD_DOCS=ON"
+    "-DLLVM_ENABLE_SPHINX=ON"
+    "-DSPHINX_OUTPUT_MAN=ON"
+    "-DSPHINX_OUTPUT_HTML=OFF"
+    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+  ] ++ optionals (!isDarwin) [
+    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
+  ] ++ optionals isDarwin [
+    "-DLLVM_ENABLE_LIBCXX=ON"
+    "-DCAN_TARGET_i386=false"
+  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DCMAKE_CROSSCOMPILING=True"
+    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    (
+      let
+        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
+        nativeBintools = nativeCC.bintools.bintools;
+        nativeToolchainFlags = [
+          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
+          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
+          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
+          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
+          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+        ];
+      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
+    )
+  ];
+
+  postBuild = ''
+    rm -fR $out
+  '';
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
+  '';
+
+  postInstall = ''
+    mkdir -p $python/share
+    mv $out/share/opt-viewer $python/share/opt-viewer
+    moveToOutput "bin/llvm-config*" "$dev"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
+      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
+  ''
+  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
+    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
+    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
+  ''
+  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
+  '';
+
+  doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl);
+
+  checkTarget = "check-all";
+
+  requiredSystemFeatures = [ "big-parallel" ];
+  meta = llvm_meta // {
+    homepage = "https://llvm.org/";
+    description = "A collection of modular and reusable compiler and toolchain technologies";
+    longDescription = ''
+      The LLVM Project is a collection of modular and reusable compiler and
+      toolchain technologies. Despite its name, LLVM has little to do with
+      traditional virtual machines. The name "LLVM" itself is not an acronym; it
+      is the full name of the project.
+      LLVM began as a research project at the University of Illinois, with the
+      goal of providing a modern, SSA-based compilation strategy capable of
+      supporting both static and dynamic compilation of arbitrary programming
+      languages. Since then, LLVM has grown to be an umbrella project consisting
+      of a number of subprojects, many of which are being used in production by
+      a wide variety of commercial and open source projects as well as being
+      widely used in academic research. Code in the LLVM project is licensed
+      under the "Apache 2.0 License with LLVM exceptions".
+    '';
+  };
+} // lib.optionalAttrs enableManpages {
+  pname = "llvm-manpages";
+
+  buildPhase = ''
+    make docs-llvm-man
+  '';
+
+  propagatedBuildInputs = [];
+
+  installPhase = ''
+    make -C docs install
+  '';
+
+  postPatch = null;
+  postInstall = null;
+
+  outputs = [ "out" ];
+
+  doCheck = false;
+
+  meta = llvm_meta // {
+    description = "man pages for LLVM ${version}";
+  };
+})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs-polly.patch b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs-polly.patch
new file mode 100644
index 000000000000..68f3c45396f6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs-polly.patch
@@ -0,0 +1,105 @@
+diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
+index ca7c04c565bb..6ed5db5dd4f8 100644
+--- a/tools/polly/CMakeLists.txt
++++ b/tools/polly/CMakeLists.txt
+@@ -2,7 +2,11 @@
+ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   project(Polly)
+   cmake_minimum_required(VERSION 3.13.4)
++endif()
++
++include(GNUInstallDirs)
+ 
++if (NOT DEFINED LLVM_MAIN_SRC_DIR)
+   # Where is LLVM installed?
+   find_package(LLVM CONFIG REQUIRED)
+   set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+@@ -122,13 +126,13 @@ include_directories(
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     )
+ 
+   install(DIRECTORY ${POLLY_BINARY_DIR}/include/
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     FILES_MATCHING
+     PATTERN "*.h"
+     PATTERN "CMakeFiles" EXCLUDE
+diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
+index 7cc129ba2e90..137be25e4b80 100644
+--- a/tools/polly/cmake/CMakeLists.txt
++++ b/tools/polly/cmake/CMakeLists.txt
+@@ -79,18 +79,18 @@ file(GENERATE
+ 
+ # Generate PollyConfig.cmake for the install tree.
+ unset(POLLY_EXPORTS)
+-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
++set(POLLY_INSTALL_PREFIX "")
+ set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
+-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
++set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
++set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+ if (POLLY_BUNDLED_ISL)
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
+-    "${POLLY_INSTALL_PREFIX}/include/polly"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
+     )
+ else()
+   set(POLLY_CONFIG_INCLUDE_DIRS
+-    "${POLLY_INSTALL_PREFIX}/include"
++    "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+     ${ISL_INCLUDE_DIRS}
+     )
+ endif()
+@@ -100,12 +100,12 @@ endif()
+ foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
+   get_target_property(tgt_type ${tgt} TYPE)
+   if (tgt_type STREQUAL "EXECUTABLE")
+-    set(tgt_prefix "bin/")
++    set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
+   else()
+-    set(tgt_prefix "lib/")
++    set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
+   endif()
+ 
+-  set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
++  set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
+   file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
+ 
+   if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
+diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
+index 518a09b45a42..bd9d6f5542ad 100644
+--- a/tools/polly/cmake/polly_macros.cmake
++++ b/tools/polly/cmake/polly_macros.cmake
+@@ -44,8 +44,8 @@ macro(add_polly_library name)
+   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
+     install(TARGETS ${name}
+       EXPORT LLVMExports
+-      LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+-      ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
++	  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   endif()
+   set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ endmacro(add_polly_library)
+diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
+index 8991094d92c7..178d8ad606bb 100644
+--- a/tools/polly/lib/External/CMakeLists.txt
++++ b/tools/polly/lib/External/CMakeLists.txt
+@@ -275,7 +275,7 @@ if (POLLY_BUNDLED_ISL)
+     install(DIRECTORY
+       ${ISL_SOURCE_DIR}/include/
+       ${ISL_BINARY_DIR}/include/
+-      DESTINATION include/polly
++      DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
+       FILES_MATCHING
+       PATTERN "*.h"
+       PATTERN "CMakeFiles" EXCLUDE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs.patch
new file mode 100644
index 000000000000..da8dc1445171
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/gnu-install-dirs.patch
@@ -0,0 +1,417 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 277d0fe54d7b..af69c8be8745 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -256,15 +256,21 @@ if (CMAKE_BUILD_TYPE AND
+   message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
+ endif()
+ 
++include(GNUInstallDirs)
++
+ set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
+ 
+-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
++set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
++    "Path for binary subdirectory (defaults to 'bin')")
+ mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
+ 
+ set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
+     "Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
+ mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
+ 
++set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
++	"Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
++
+ # They are used as destination of target generators.
+ set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
+ set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
+@@ -567,9 +573,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
+ option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
+ option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
+ 
+-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
++set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
+     CACHE STRING "Doxygen-generated HTML documentation install directory")
+-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
++set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
+     CACHE STRING "OCamldoc-generated HTML documentation install directory")
+ 
+ option (LLVM_BUILD_EXTERNAL_COMPILER_RT
+@@ -1027,7 +1033,7 @@ endif()
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1038,7 +1044,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
+-    DESTINATION include
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -1052,13 +1058,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ 
+   if (LLVM_INSTALL_MODULEMAPS)
+     install(DIRECTORY include/llvm include/llvm-c
+-            DESTINATION include
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+             COMPONENT llvm-headers
+             FILES_MATCHING
+             PATTERN "module.modulemap"
+             )
+     install(FILES include/llvm/module.install.modulemap
+-            DESTINATION include/llvm
++            DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
+             COMPONENT llvm-headers
+             RENAME "module.extern.modulemap"
+             )
+diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
+index 97c9980c7de3..409e8b615f75 100644
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -804,9 +804,9 @@ macro(add_llvm_library name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
+-              RUNTIME DESTINATION bin COMPONENT ${name})
++              LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
++              RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
+ 
+       if (NOT LLVM_ENABLE_IDE)
+         add_llvm_install_targets(install-${name}
+@@ -1022,7 +1022,7 @@ function(process_llvm_pass_plugins)
+           "set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
+       install(FILES
+           ${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
+-          DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
++          DESTINATION ${LLVM_INSTALL_CMAKE_DIR}
+           COMPONENT cmake-exports)
+ 
+       set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
+@@ -1242,7 +1242,7 @@ macro(add_llvm_example name)
+   endif()
+   add_llvm_executable(${name} ${ARGN})
+   if( LLVM_BUILD_EXAMPLES )
+-    install(TARGETS ${name} RUNTIME DESTINATION examples)
++    install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   endif()
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endmacro(add_llvm_example name)
+@@ -1854,7 +1854,7 @@ function(llvm_install_library_symlink name dest type)
+   set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
+   set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
+ 
+-  set(output_dir lib${LLVM_LIBDIR_SUFFIX})
++  set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
+   if(WIN32 AND "${type}" STREQUAL "SHARED")
+     set(output_dir bin)
+   endif()
+@@ -1871,7 +1871,7 @@ function(llvm_install_library_symlink name dest type)
+   endif()
+ endfunction()
+ 
+-function(llvm_install_symlink name dest)
++function(llvm_install_symlink name dest output_dir)
+   cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
+   foreach(path ${CMAKE_MODULE_PATH})
+     if(EXISTS ${path}/LLVMInstallSymlink.cmake)
+@@ -1894,7 +1894,7 @@ function(llvm_install_symlink name dest)
+   set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
+ 
+   install(SCRIPT ${INSTALL_SYMLINK}
+-          CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
++          CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
+           COMPONENT ${component})
+ 
+   if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
+@@ -1977,7 +1977,8 @@ function(add_llvm_tool_symlink link_name target)
+     endif()
+ 
+     if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
+-      llvm_install_symlink(${link_name} ${target})
++      GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
++      llvm_install_symlink(${link_name} ${target} ${output_dir})
+     endif()
+   endif()
+ endfunction()
+@@ -2100,9 +2101,9 @@ function(llvm_setup_rpath name)
+ 
+   if (APPLE)
+     set(_install_name_dir INSTALL_NAME_DIR "@rpath")
+-    set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+   elseif(UNIX)
+-    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
++    set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
+       set_property(TARGET ${name} APPEND_STRING PROPERTY
+                    LINK_FLAGS " -Wl,-z,origin ")
+diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
+index 554046b20edf..4d1ad980641e 100644
+--- a/cmake/modules/AddOCaml.cmake
++++ b/cmake/modules/AddOCaml.cmake
+@@ -144,9 +144,9 @@ function(add_ocaml_library name)
+   endforeach()
+ 
+   if( APPLE )
+-    set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   elseif( UNIX )
+-    set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
++    set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
+   endif()
+   list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
+ 
+diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
+index e80c3b5c1cac..482f6d715ef5 100644
+--- a/cmake/modules/AddSphinxTarget.cmake
++++ b/cmake/modules/AddSphinxTarget.cmake
+@@ -90,7 +90,7 @@ function (add_sphinx_target builder project)
+         endif()
+       elseif (builder STREQUAL html)
+         string(TOUPPER "${project}" project_upper)
+-        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
++        set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
+             CACHE STRING "HTML documentation install directory for ${project}")
+ 
+         # '/.' indicates: copy the contents of the directory directly into
+diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
+index 505dc9a29d70..36e6c63af3f4 100644
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
+@@ -107,13 +107,13 @@ foreach(p ${_count})
+   set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+ get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+ endforeach(p)
+-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
++set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
+ set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+ set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
+-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
++set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
+ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
+-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
++set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
+ 
+ # Generate a default location for lit
+ if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
+diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
+index 09fed8085c23..aa79f192abf0 100644
+--- a/cmake/modules/LLVMInstallSymlink.cmake
++++ b/cmake/modules/LLVMInstallSymlink.cmake
+@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
+     set(LINK_OR_COPY copy)
+   endif()
+ 
+-  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
++  set(bindir "${DESTDIR}${outdir}/")
+ 
+   message(STATUS "Creating ${name}")
+ 
+diff --git a/docs/CMake.rst b/docs/CMake.rst
+index bb821b417ad9..6a528f7c2ad3 100644
+--- a/docs/CMake.rst
++++ b/docs/CMake.rst
+@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
+ **LLVM_LIBDIR_SUFFIX**:STRING
+   Extra suffix to append to the directory where libraries are to be
+   installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
+-  to install libraries to ``/usr/lib64``.
++  to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
+ 
+ **CMAKE_C_FLAGS**:STRING
+   Extra flags to use when compiling C source files.
+@@ -550,8 +550,8 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
+   The path to install Doxygen-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/doxygen-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
+ 
+ **LLVM_ENABLE_SPHINX**:BOOL
+   If specified, CMake will search for the ``sphinx-build`` executable and will make
+@@ -582,13 +582,33 @@ LLVM-specific variables
+ 
+ **LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
+   The path to install Sphinx-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
+ 
+ **LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
+   The path to install OCamldoc-generated HTML documentation to. This path can
+-  either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
+-  `share/doc/llvm/ocaml-html`.
++  either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
++  `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
++
++**CMAKE_INSTALL_BINDIR**:STRING
++  The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `bin`.
++
++**CMAKE_INSTALL_LIBDIR**:STRING
++  The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `lib`.
++
++**CMAKE_INSTALL_INCLUDEDIR**:STRING
++  The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `include`.
++
++**CMAKE_INSTALL_DOCDIR**:STRING
++  The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/doc`.
++
++**CMAKE_INSTALL_MANDIR**:STRING
++  The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
++  Defaults to `share/man`.
+ 
+ **LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
+   macOS Only: If enabled CMake will generate a target named
+@@ -786,9 +806,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
+ 
+ This file is available in two different locations.
+ 
+-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
+-  ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
+-  On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
++* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
++  ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
++  installed as part of an installed version of LLVM. This is typically
++  ``cmake/llvm/`` within the lib directory. On Linux, this is typically
++  ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
+ 
+ * ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
+   ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
+diff --git a/examples/Bye/CMakeLists.txt b/examples/Bye/CMakeLists.txt
+index bb96edb4b4bf..678c22fb43c8 100644
+--- a/examples/Bye/CMakeLists.txt
++++ b/examples/Bye/CMakeLists.txt
+@@ -14,6 +14,6 @@ if (NOT WIN32)
+     BUILDTREE_ONLY
+    )
+ 
+-  install(TARGETS ${name} RUNTIME DESTINATION examples)
++  install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
+   set_target_properties(${name} PROPERTIES FOLDER "Examples")
+ endif()
+diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
+index b46319f24fc8..2feabd1954e4 100644
+--- a/include/llvm/CMakeLists.txt
++++ b/include/llvm/CMakeLists.txt
+@@ -5,5 +5,5 @@ add_subdirectory(Frontend)
+ # If we're doing an out-of-tree build, copy a module map for generated
+ # header files into the build area.
+ if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+-  configure_file(module.modulemap.build module.modulemap COPYONLY)
++  configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
+ endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
+index ebe5b73a5c65..70c497be12f5 100644
+--- a/tools/llvm-config/BuildVariables.inc.in
++++ b/tools/llvm-config/BuildVariables.inc.in
+@@ -23,6 +23,10 @@
+ #define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
+ #define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
+ #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
++#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
++#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
++#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
++#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
+ #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
+ #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
+ #define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 1a2f04552d13..44fa7d3eec6b 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -357,12 +357,26 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
+-    SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+-    sys::fs::make_absolute(ActivePrefix, path);
+-    ActiveBinDir = std::string(path.str());
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
+-    ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveIncludeDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveBinDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveLibDir = std::string(path.str());
++    }
++    {
++      SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
++      sys::fs::make_absolute(ActivePrefix, path);
++      ActiveCMakeDir = std::string(path.str());
++    }
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
+diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
+index 2963f97cad88..69d66c9c9ca1 100644
+--- a/tools/lto/CMakeLists.txt
++++ b/tools/lto/CMakeLists.txt
+@@ -25,7 +25,7 @@ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS
+     intrinsics_gen)
+ 
+ install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
+-  DESTINATION include/llvm-c
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+   COMPONENT LTO)
+ 
+ if (APPLE)
+diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
+index ead73ec13a8f..250362021f17 100644
+--- a/tools/opt-viewer/CMakeLists.txt
++++ b/tools/opt-viewer/CMakeLists.txt
+@@ -8,7 +8,7 @@ set (files
+ 
+ foreach (file ${files})
+   install(PROGRAMS ${file}
+-    DESTINATION share/opt-viewer
++    DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
+     COMPONENT opt-viewer)
+ endforeach (file)
+ 
+diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
+index 865436247270..ce1daa62f6ab 100644
+--- a/tools/remarks-shlib/CMakeLists.txt
++++ b/tools/remarks-shlib/CMakeLists.txt
+@@ -19,7 +19,7 @@ if(LLVM_ENABLE_PIC)
+   endif()
+   
+   install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
+-    DESTINATION include/llvm-c
++    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
+     COMPONENT Remarks)
+ 
+   if (APPLE)
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/llvm/outputs.patch b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/outputs.patch
new file mode 100644
index 000000000000..40096fa3497f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/llvm/outputs.patch
@@ -0,0 +1,26 @@
+diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
+index 94d426b..37f7794 100644
+--- a/tools/llvm-config/llvm-config.cpp
++++ b/tools/llvm-config/llvm-config.cpp
+@@ -333,6 +333,21 @@ int main(int argc, char **argv) {
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+ 
++  /// Nix-specific multiple-output handling: override ActiveLibDir if --link-shared
++  if (!IsInDevelopmentTree) {
++    bool WantShared = true;
++    for (int i = 1; i < argc; ++i) {
++      StringRef Arg = argv[i];
++      if (Arg == "--link-shared")
++        WantShared = true;
++      else if (Arg == "--link-static")
++        WantShared = false; // the last one wins
++    }
++
++    if (WantShared)
++      ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX;
++  }
++
+   /// We only use `shared library` mode in cases where the static library form
+   /// of the components provided are not available; note however that this is
+   /// skipped if we're run from within the build dir. However, once installed,
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/openmp/default.nix
new file mode 100644
index 000000000000..07488c1c33f4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/openmp/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, stdenv
+, llvm_meta
+, src
+, cmake
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openmp";
+  inherit version;
+
+  inherit src;
+  sourceRoot = "source/${pname}";
+
+  nativeBuildInputs = [ cmake perl ];
+  buildInputs = [ llvm ];
+
+  meta = llvm_meta // {
+    homepage = "https://openmp.llvm.org/";
+    description = "Support for the OpenMP language";
+    longDescription = ''
+      The OpenMP subproject of LLVM contains the components required to build an
+      executable OpenMP program that are outside the compiler itself.
+      Contains the code for the runtime library against which code compiled by
+      "clang -fopenmp" must be linked before it can run and the library that
+      supports offload to target devices.
+    '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
index 6a11ded0529a..581d05746718 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, callPackage, wrapCCWith }:
+{ lib, buildPackages, fetchFromGitHub, callPackage, wrapCCWith }:
 
 let
   version = "4.1.0";
@@ -15,7 +15,7 @@ in rec {
       clang_version=`${cc}/bin/clang -v 2>&1 | grep "clang version " | grep -E -o "[0-9.-]+"`
       rsrc="$out/resource-root"
       mkdir "$rsrc"
-      ln -s "${cc}/lib/clang/$clang_version/include" "$rsrc"
+      ln -s "${lib.getLib cc}/lib/clang/$clang_version/include" "$rsrc"
       echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
       echo "-Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags
       rm $out/nix-support/add-hardening.sh
@@ -31,6 +31,7 @@ in rec {
   lld = callPackage ./lld {
     inherit llvm version;
     src = "${src}/lld";
+    buildLlvmTools = buildPackages.llvmPackages_rocm;
   };
 
   llvm = callPackage ./llvm {
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/lld/default.nix
index a6e993bb203f..ef60747b0138 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/lld/default.nix
@@ -1,4 +1,5 @@
 { lib, stdenv
+, buildLlvmTools
 , cmake
 , libxml2
 , llvm
@@ -13,12 +14,17 @@ stdenv.mkDerivation rec {
   pname = "lld";
 
   nativeBuildInputs = [ cmake ];
-
   buildInputs = [ libxml2 llvm ];
 
-  outputs = [ "out" "dev" ];
 
-  cmakeFlags = [ "-DLLVM_MAIN_SRC_DIR=${llvm.src}" ];
+  cmakeFlags = [
+    "-DLLVM_MAIN_SRC_DIR=${llvm.src}"
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    "-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
+    "-DLLVM_CONFIG_PATH=${llvm.dev}/bin/llvm-config-native"
+  ];
+
+  outputs = [ "out" "dev" ];
 
   postInstall = ''
     moveToOutput include "$dev"
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
index 62559bf13926..b3e8c06195ff 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
@@ -9,7 +9,7 @@
 , zlib
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? true
+, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
 
 , version
 , src
diff --git a/nixpkgs/pkgs/development/compilers/llvm/update-git.py b/nixpkgs/pkgs/development/compilers/llvm/update-git.py
new file mode 100755
index 000000000000..ec1a30c6b0ff
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/update-git.py
@@ -0,0 +1,70 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i python3 -p python3 nix
+
+import csv
+import fileinput
+import json
+import os
+import re
+import subprocess
+
+from codecs import iterdecode
+from datetime import datetime
+from urllib.request import urlopen, Request
+
+
+def get_latest_chromium_build():
+    HISTORY_URL = 'https://omahaproxy.appspot.com/history?os=linux'
+    print(f'GET {HISTORY_URL}')
+    with urlopen(HISTORY_URL) as resp:
+        builds = csv.DictReader(iterdecode(resp, 'utf-8'))
+        for build in builds:
+            if build['channel'] != 'dev':
+                continue
+            return build
+
+
+def get_file_revision(revision, file_path):
+    """Fetches the requested Git revision of the given Chromium file."""
+    url = f'https://raw.githubusercontent.com/chromium/chromium/{revision}/{file_path}'
+    with urlopen(url) as http_response:
+        return http_response.read().decode()
+
+
+def get_commit(ref):
+    url = f'https://api.github.com/repos/llvm/llvm-project/commits/{ref}'
+    headers = {'Accept': 'application/vnd.github.v3+json'}
+    request = Request(url, headers=headers)
+    with urlopen(request) as http_response:
+        return json.loads(http_response.read().decode())
+
+
+def nix_prefetch_url(url, algo='sha256'):
+    """Prefetches the content of the given URL."""
+    print(f'nix-prefetch-url {url}')
+    out = subprocess.check_output(['nix-prefetch-url', '--type', algo, '--unpack', url])
+    return out.decode('utf-8').rstrip()
+
+
+chromium_build = get_latest_chromium_build()
+chromium_version = chromium_build['version']
+print(f'chromiumDev version: {chromium_version}')
+print('Getting LLVM commit...')
+clang_update_script = get_file_revision(chromium_version, 'tools/clang/scripts/update.py')
+clang_revision = re.search(r"^CLANG_REVISION = '(.+)'$", clang_update_script, re.MULTILINE).group(1)
+clang_commit_short = re.search(r"llvmorg-[0-9]+-init-[0-9]+-g([0-9a-f]{8})", clang_revision).group(1)
+release_version = re.search(r"^RELEASE_VERSION = '(.+)'$", clang_update_script, re.MULTILINE).group(1)
+commit = get_commit(clang_commit_short)
+date = datetime.fromisoformat(commit['commit']['committer']['date'].rstrip('Z')).date().isoformat()
+version = f'unstable-{date}'
+print('Prefetching source tarball...')
+hash = nix_prefetch_url(f'https://github.com/llvm/llvm-project/archive/{commit["sha"]}.tar.gz')
+print('Updating default.nix...')
+default_nix = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'git/default.nix')
+with fileinput.FileInput(default_nix, inplace=True) as f:
+    for line in f:
+        result = re.sub(r'^  release_version = ".+";', f'  release_version = "{release_version}";', line)
+        result = re.sub(r'^  version = ".+";', f'  version = "{version}";', result)
+        result = re.sub(r'^  rev = ".*";', f'  rev = "{commit["sha"]}";', result)
+        result = re.sub(r'^    sha256 = ".+";', f'    sha256 = "{hash}";', result)
+        print(result, end='')
diff --git a/nixpkgs/pkgs/development/compilers/mezzo/default.nix b/nixpkgs/pkgs/development/compilers/mezzo/default.nix
index 4c535be4d494..1710fb986ead 100644
--- a/nixpkgs/pkgs/development/compilers/mezzo/default.nix
+++ b/nixpkgs/pkgs/development/compilers/mezzo/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, yojson, ulex, pprint, fix, functory }:
+{ lib, stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, menhirLib, yojson, ulex, pprint, fix, functory }:
 
 if lib.versionAtLeast ocaml.version "4.06"
 then throw "mezzo is not available for OCaml ${ocaml.version}"
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
     sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild yojson menhir ulex pprint fix functory ];
+  buildInputs = [ ocaml findlib ocamlbuild yojson menhir menhirLib ulex pprint fix functory ];
 
   # Sets warning 3 as non-fatal
   prePatch = lib.optionalString (check-ocaml-version "4.02") ''
diff --git a/nixpkgs/pkgs/development/compilers/mono/5.nix b/nixpkgs/pkgs/development/compilers/mono/5.nix
index 0ecb362acb4d..c49379c670e0 100644
--- a/nixpkgs/pkgs/development/compilers/mono/5.nix
+++ b/nixpkgs/pkgs/development/compilers/mono/5.nix
@@ -2,7 +2,7 @@
 
 callPackage ./generic.nix ({
   inherit Foundation libobjc;
-  version = "5.20.1.27";
-  sha256 = "15rpwxw642ad1na93k5nj7d2lb24f21kncr924gxr00178a9x0jy";
+  version = "5.20.1.34";
+  sha256 = "12vw5dkhmp1vk9l658pil8jiqirkpdsc5z8dm5mpj595yr6d94fd";
   enableParallelBuilding = true;
 })
diff --git a/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix b/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix
index 35e7daaf2103..85b328848b1f 100644
--- a/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix
+++ b/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
     # Use shared mrustc/minicargo/llvm instead of rebuilding them
     "MRUSTC=${mrustc}/bin/mrustc"
     "MINICARGO=${mrustc-minicargo}/bin/minicargo"
-    "LLVM_CONFIG=${llvm_7}/bin/llvm-config"
+    "LLVM_CONFIG=${llvm_7.dev}/bin/llvm-config"
     "RUSTC_TARGET=${rust.toRustTarget stdenv.targetPlatform}"
   ];
 
diff --git a/nixpkgs/pkgs/development/compilers/nim/default.nix b/nixpkgs/pkgs/development/compilers/nim/default.nix
index 676e35b06bb4..21d1017a6753 100644
--- a/nixpkgs/pkgs/development/compilers/nim/default.nix
+++ b/nixpkgs/pkgs/development/compilers/nim/default.nix
@@ -95,12 +95,12 @@ in {
 
   nim-unwrapped = stdenv.mkDerivation rec {
     pname = "nim-unwrapped";
-    version = "1.4.4";
+    version = "1.4.6";
     strictDeps = true;
 
     src = fetchurl {
       url = "https://nim-lang.org/download/nim-${version}.tar.xz";
-      sha256 = "03k642nnjca0s6jlbn1v4jld51mbkix97jli4ky74gqlxyfp4wvd";
+      hash = "sha256-D7wPkoLP/oXembxHv6h2Ulud3aKi6uVcGFoIgEuY070=";
     };
 
     buildInputs = [ boehmgc openssl pcre readline sqlite ];
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/11.nix
index f9dd7205659e..ef593422ff26 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/11.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/11.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, bash, pkg-config, autoconf, cpio, file, which, unzip
-, zip, perl, cups, freetype, alsaLib, libjpeg, giflib, libpng, zlib, lcms2
+, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib, libpng, zlib, lcms2
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama
 , libXcursor, libXrandr, fontconfig, openjdk11-bootstrap
 , setJavaClassPath
@@ -27,7 +27,7 @@ let
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
     buildInputs = [
-      cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk11-bootstrap
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -142,6 +142,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo asbachb ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/12.nix b/nixpkgs/pkgs/development/compilers/openjdk/12.nix
index 8c12b5be7f2e..66aeff306e38 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/12.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/12.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, bash, pkg-config, autoconf, cpio, file, which, unzip
-, zip, perl, cups, freetype, alsaLib, libjpeg, giflib, libpng, zlib, lcms2
+, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib, libpng, zlib, lcms2
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama
 , libXcursor, libXrandr, fontconfig, openjdk11, fetchpatch
 , setJavaClassPath
@@ -24,7 +24,7 @@ let
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
     buildInputs = [
-      cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk11
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -151,6 +151,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/13.nix b/nixpkgs/pkgs/development/compilers/openjdk/13.nix
index 7e4d9fc7d693..96a567895d6a 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/13.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/13.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, bash, pkg-config, autoconf, cpio, file, which, unzip
-, zip, perl, cups, freetype, alsaLib, libjpeg, giflib, libpng, zlib, lcms2
+, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib, libpng, zlib, lcms2
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama
 , libXcursor, libXrandr, fontconfig, openjdk13-bootstrap, fetchpatch
 , setJavaClassPath
@@ -24,7 +24,7 @@ let
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
     buildInputs = [
-      cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk13-bootstrap
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -151,6 +151,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/14.nix b/nixpkgs/pkgs/development/compilers/openjdk/14.nix
index d98d0e9f8ee6..fae27b8ca754 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/14.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/14.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, bash, pkg-config, autoconf, cpio, file, which, unzip
-, zip, perl, cups, freetype, alsaLib, libjpeg, giflib, libpng, zlib, lcms2
+, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib, libpng, zlib, lcms2
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama
 , libXcursor, libXrandr, fontconfig, openjdk14-bootstrap
 , setJavaClassPath
@@ -24,7 +24,7 @@ let
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
     buildInputs = [
-      cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk14-bootstrap
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -147,6 +147,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/15.nix b/nixpkgs/pkgs/development/compilers/openjdk/15.nix
index ddd523ad7871..11333b1ef66a 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/15.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/15.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, bash, pkg-config, autoconf, cpio, file, which, unzip
-, zip, perl, cups, freetype, alsaLib, libjpeg, giflib, libpng, zlib, lcms2
+, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib, libpng, zlib, lcms2
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama
 , libXcursor, libXrandr, fontconfig, openjdk15-bootstrap
 , setJavaClassPath
@@ -22,9 +22,9 @@ let
       sha256 = "1h8n5figc9q0k9p8b0qggyhvqagvxanfih1lj5j492c74cd1mx1l";
     };
 
-    nativeBuildInputs = [ pkg-config autoconf ];
+    nativeBuildInputs = [ pkg-config autoconf unzip zip file which ];
     buildInputs = [
-      cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk15-bootstrap
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -147,6 +147,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/16.nix b/nixpkgs/pkgs/development/compilers/openjdk/16.nix
index e35369e75c52..99033e8738c5 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/16.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/16.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, fetchFromGitHub, bash, pkg-config, autoconf, cpio
-, file, which, unzip, zip, perl, cups, freetype, alsaLib, libjpeg, giflib
+, file, which, unzip, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib
 , libpng, zlib, lcms2, libX11, libICE, libXrender, libXext, libXt, libXtst
 , libXi, libXinerama, libXcursor, libXrandr, fontconfig, openjdk16-bootstrap
 , setJavaClassPath
@@ -28,7 +28,7 @@ let
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
     buildInputs = [
-      cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib
+      cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
       libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig openjdk16-bootstrap
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -153,6 +153,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/8.nix b/nixpkgs/pkgs/development/compilers/openjdk/8.nix
index 75dc722b1b22..7a69038d5e0a 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/8.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/8.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, pkg-config, lndir, bash, cpio, file, which, unzip, zip
-, cups, freetype, alsaLib, cacert, perl, liberation_ttf, fontconfig, zlib
+, cups, freetype, alsa-lib, cacert, perl, liberation_ttf, fontconfig, zlib
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama, libXcursor, libXrandr
 , libjpeg, giflib
 , openjdk8-bootstrap
@@ -85,7 +85,7 @@ let
 
     nativeBuildInputs = [ pkg-config lndir unzip ];
     buildInputs = [
-      cpio file which zip perl openjdk8-bootstrap zlib cups freetype alsaLib
+      cpio file which zip perl openjdk8-bootstrap zlib cups freetype alsa-lib
       libjpeg giflib libX11 libICE libXext libXrender libXtst libXt libXtst
       libXi libXinerama libXcursor libXrandr fontconfig
     ] ++ lib.optionals (!headless && enableGnome2) [
@@ -106,6 +106,7 @@ let
       ./fix-java-home-jdk8.patch
       ./read-truststore-from-env-jdk8.patch
       ./currency-date-range-jdk8.patch
+      ./fix-library-path-jdk8.patch
     ] ++ lib.optionals (!headless && enableGnome2) [
       ./swing-use-gtk-jdk8.patch
     ];
@@ -262,6 +263,7 @@ let
       description = "The open-source Java Development Kit";
       maintainers = with maintainers; [ edwtjo ];
       platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
+      mainProgram = "java";
     };
 
     passthru = {
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix
index 6bcd79b274be..5dd979e5521a 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix
@@ -1,5 +1,23 @@
-{ lib, stdenv, fetchurl, unzip, setJavaClassPath, freetype }:
+{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
 let
+  # Details from https://www.azul.com/downloads/?version=java-11-lts&os=macos&package=jdk
+  # Note that the latest build may differ by platform
+  dist = {
+    x86_64-darwin = {
+      arch = "x64";
+      zuluVersion = "11.48.21";
+      jdkVersion = "11.0.11";
+      sha256 = "0v0n7h7i04pvna41wpdq2k9qiy70sbbqzqzvazfdvgm3gb22asw6";
+    };
+
+    aarch64-darwin = {
+      arch = "aarch64";
+      zuluVersion = "11.48.21";
+      jdkVersion = "11.0.11";
+      sha256 = "066whglrxx81c95grv2kxdbvyh32728ixhml2v44ildh549n4lhc";
+    };
+  }."${stdenv.hostPlatform.system}";
+
   jce-policies = fetchurl {
     # Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
     url    = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
@@ -7,16 +25,16 @@ let
   };
 
   jdk = stdenv.mkDerivation rec {
-    name = "zulu11.43.21-ca-jdk11.0.9";
+    pname = "zulu${dist.zuluVersion}-ca-jdk";
+    version = dist.jdkVersion;
 
     src = fetchurl {
-      url = "https://cdn.azul.com/zulu/bin/${name}-macosx_x64.tar.gz";
-      sha256 = "1j19fb5mwdkfn6y8wfsnvxsz6wfpcab4xv439fqssxy520n6q4zs";
-      curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/zulu-mac/";
+      url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
+      inherit (dist) sha256;
+      curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
     };
 
     nativeBuildInputs = [ unzip ];
-    buildInputs = [ freetype ];
 
     installPhase = ''
       mkdir -p $out
@@ -41,8 +59,6 @@ let
       mkdir -p $out/nix-support
       printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
 
-      install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/lib/libfontmanager.dylib
-
       # Set JAVA_HOME automatically.
       cat <<EOF >> $out/nix-support/setup-hook
       if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix
index a5cd15817e9a..0941aa728ead 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix
@@ -1,25 +1,43 @@
-{ lib, stdenv, fetchurl, unzip, setJavaClassPath, freetype }:
+{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
 let
+  # Details from https://www.azul.com/downloads/?version=java-8-lts&os=macos&package=jdk
+  # Note that the latest build may differ by platform
+  dist = {
+    x86_64-darwin = {
+      arch = "x64";
+      zuluVersion = "8.54.0.21";
+      jdkVersion = "8.0.292";
+      sha256 = "1pgl0bir4r5v349gkxk54k6v62w241q7vw4gjxhv2g6pfq6hv7in";
+    };
+
+    aarch64-darwin = {
+      arch = "aarch64";
+      zuluVersion = "8.54.0.21";
+      jdkVersion = "8.0.292";
+      sha256 = "05w89wfjlfbpqfjnv6wisxmaf13qb28b2223f9264jyx30qszw1c";
+    };
+  }."${stdenv.hostPlatform.system}";
+
   jce-policies = fetchurl {
     # Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
     url    = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
     sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
   };
 
-  jdk = stdenv.mkDerivation {
+  jdk = stdenv.mkDerivation rec {
     # @hlolli: Later version than 1.8.0_202 throws error when building jvmci.
     # dyld: lazy symbol binding failed: Symbol not found: _JVM_BeforeHalt
     # Referenced from: ../libjava.dylib Expected in: .../libjvm.dylib
-    name = "zulu1.8.0_202-8.36.0.1";
+    pname = "zulu${dist.zuluVersion}-ca-jdk";
+    version = dist.jdkVersion;
 
     src = fetchurl {
-      url = "https://cdn.azul.com/zulu/bin/zulu8.36.0.1-ca-jdk8.0.202-macosx_x64.zip";
-      sha256 = "0s92l1wlf02vjx8dvrsla2kq7qwxnmgh325b38mgqy872016jm9p";
-      curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/zulu-linux/";
+      url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
+      inherit (dist) sha256;
+      curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
     };
 
     nativeBuildInputs = [ unzip ];
-    buildInputs = [ freetype ];
 
     installPhase = ''
       mkdir -p $out
@@ -44,8 +62,6 @@ let
       mkdir -p $out/nix-support
       printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
 
-      install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/jre/lib/libfontmanager.dylib
-
       # Set JAVA_HOME automatically.
       cat <<EOF >> $out/nix-support/setup-hook
       if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix
index 731ff4d56de2..509d1ab55227 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix
@@ -1,5 +1,23 @@
-{ lib, stdenv, fetchurl, unzip, setJavaClassPath, freetype }:
+{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
 let
+  # Details from https://www.azul.com/downloads/?version=java-16-sts&os=macos&package=jdk
+  # Note that the latest build may differ by platform
+  dist = {
+    x86_64-darwin = {
+      arch = "x64";
+      zuluVersion = "16.30.15";
+      jdkVersion = "16.0.1";
+      sha256 = "1jihn125dmxr9y5h9jq89zywm3z6rbwv5q7msfzsf2wzrr13jh0z";
+    };
+
+    aarch64-darwin = {
+      arch = "aarch64";
+      zuluVersion = "16.30.19";
+      jdkVersion = "16.0.1";
+      sha256 = "1i0bcjx3acb5dhslf6cabdcnd6mrz9728vxw9hb4al5y3f5fll4w";
+    };
+  }."${stdenv.hostPlatform.system}";
+
   jce-policies = fetchurl {
     # Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
     url    = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
@@ -7,17 +25,16 @@ let
   };
 
   jdk = stdenv.mkDerivation rec {
-    pname = "zulu16.28.11-ca-jdk";
-    version = "16.0.0";
+    pname = "zulu${dist.zuluVersion}-ca-jdk";
+    version = dist.jdkVersion;
 
     src = fetchurl {
-      url = "https://cdn.azul.com/zulu/bin/${pname}${version}-macosx_x64.tar.gz";
-      sha256 = "6d47ef22dc56ce1f5a102ed39e21d9a97320f0bb786818e2c686393109d79bc5";
+      url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
+      inherit (dist) sha256;
       curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
     };
 
     nativeBuildInputs = [ unzip ];
-    buildInputs = [ freetype ];
 
     installPhase = ''
       mkdir -p $out
@@ -42,8 +59,6 @@ let
       mkdir -p $out/nix-support
       printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
 
-      install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/lib/libfontmanager.dylib
-
       # Set JAVA_HOME automatically.
       cat <<EOF >> $out/nix-support/setup-hook
       if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/fix-library-path-jdk8.patch b/nixpkgs/pkgs/development/compilers/openjdk/fix-library-path-jdk8.patch
new file mode 100644
index 000000000000..3780e95ea5b6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/fix-library-path-jdk8.patch
@@ -0,0 +1,37 @@
+diff --git a/hotspot/src/os/linux/vm/os_linux.cpp b/hotspot/src/os/linux/vm/os_linux.cpp
+index c477851c1b..ff5e28d95b 100644
+--- a/hotspot/src/os/linux/vm/os_linux.cpp
++++ b/hotspot/src/os/linux/vm/os_linux.cpp
+@@ -368,13 +368,13 @@ void os::init_system_properties_values() {
+ //        ...
+ //        7: The default directories, normally /lib and /usr/lib.
+ #if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390))
+-#define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib"
++#define DEFAULT_LIBPATH ""
+ #else
+-#define DEFAULT_LIBPATH "/lib:/usr/lib"
++#define DEFAULT_LIBPATH ""
+ #endif
+ 
+ // Base path of extensions installed on the system.
+-#define SYS_EXT_DIR     "/usr/java/packages"
++#define SYS_EXT_DIR     ""
+ #define EXTENSIONS_DIR  "/lib/ext"
+ #define ENDORSED_DIR    "/lib/endorsed"
+ 
+@@ -437,13 +437,13 @@ void os::init_system_properties_values() {
+                                                      strlen(v) + 1 +
+                                                      sizeof(SYS_EXT_DIR) + sizeof("/lib/") + strlen(cpu_arch) + sizeof(DEFAULT_LIBPATH) + 1,
+                                                      mtInternal);
+-    sprintf(ld_library_path, "%s%s" SYS_EXT_DIR "/lib/%s:" DEFAULT_LIBPATH, v, v_colon, cpu_arch);
++    sprintf(ld_library_path, "%s", v);
+     Arguments::set_library_path(ld_library_path);
+     FREE_C_HEAP_ARRAY(char, ld_library_path, mtInternal);
+   }
+ 
+   // Extensions directories.
+-  sprintf(buf, "%s" EXTENSIONS_DIR ":" SYS_EXT_DIR EXTENSIONS_DIR, Arguments::get_java_home());
++  sprintf(buf, "%s" EXTENSIONS_DIR, Arguments::get_java_home());
+   Arguments::set_ext_dirs(buf);
+ 
+   // Endorsed standards default directory.
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/jre.nix b/nixpkgs/pkgs/development/compilers/openjdk/jre.nix
index 436bd0468c52..78dec7885d93 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/jre.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/jre.nix
@@ -1,6 +1,7 @@
 { stdenv
 , jdk
 , lib
+, callPackage
 , modules ? [ "java.base" ]
 }:
 
@@ -29,6 +30,10 @@ let
 
     passthru = {
       home = "${jre}";
+      tests = [
+        (callPackage ./tests/test_jre_minimal.nix {})
+        (callPackage ./tests/test_jre_minimal_with_logging.nix {})
+      ];
     };
   };
 in jre
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/jre_minimal_test1.nix b/nixpkgs/pkgs/development/compilers/openjdk/jre_minimal_test1.nix
new file mode 100644
index 000000000000..eebd11fb2fdf
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/jre_minimal_test1.nix
@@ -0,0 +1,16 @@
+{ runCommand
+, callPackage
+, jdk
+, jre_minimal
+}:
+
+let
+  hello = callPackage tests/hello.nix {
+    jdk = jdk;
+    jre = jre_minimal;
+  };
+in
+  runCommand "test" {} ''
+    ${hello}/bin/hello | grep "Hello, world!"
+    touch $out
+  ''
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/11.nix
index 8688831cdaac..228dbf9b14e9 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/11.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/11.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, writeText, gradleGen, pkg-config, perl, cmake
-, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsaLib, ffmpeg_3, python, ruby
+, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib, ffmpeg, python, ruby
 , openjdk11-bootstrap }:
 
 let
@@ -19,7 +19,7 @@ let
       sha256 = "1h7qsylr7rnwnbimqjyn3whszp9kv4h3gpicsrb3mradxc9yv194";
     };
 
-    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg_3 ];
+    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg ];
     nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python ruby ];
 
     dontUseCmakeConfigure = true;
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix
index 655b29f6535d..c36cbaa03f95 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, writeText, openjdk11_headless, gradleGen
-, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsaLib
+, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
 , ffmpeg, python3, ruby }:
 
 let
@@ -21,7 +21,7 @@ let
       sha256 = "019glq8rhn6amy3n5jc17vi2wpf1pxpmmywvyz1ga8n09w7xscq1";
     };
 
-    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg ];
+    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg ];
     nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
 
     dontUseCmakeConfigure = true;
@@ -95,8 +95,9 @@ in makePackage {
 
   postFixup = ''
     # Remove references to bootstrap.
+    export openjdkOutPath='${openjdk11_headless.outPath}'
     find "$out" -name \*.so | while read lib; do
-      new_refs="$(patchelf --print-rpath "$lib" | sed -E 's,:?${lib.escape ["+"] openjdk11_headless.outPath}[^:]*,,')"
+      new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')"
       patchelf --set-rpath "$new_refs" "$lib"
     done
   '';
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/tests/hello-logging.nix b/nixpkgs/pkgs/development/compilers/openjdk/tests/hello-logging.nix
new file mode 100644
index 000000000000..71f3a5543f7c
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/tests/hello-logging.nix
@@ -0,0 +1,47 @@
+{ jdk
+, jre
+, pkgs
+}:
+
+/* 'Hello world' Java application derivation for use in tests */
+let
+  source = pkgs.writeTextDir "src/Hello.java" ''
+    import java.util.logging.Logger;
+    import java.util.logging.Level;
+
+    class Hello {
+      static Logger logger = Logger.getLogger(Hello.class.getName());
+
+      public static void main(String[] args) {
+        logger.log(Level.INFO, "Hello, world!");
+      }
+    }
+  '';
+in
+  pkgs.stdenv.mkDerivation {
+    pname = "hello";
+    version = "1.0.0";
+
+    src = source;
+
+    buildPhase = ''
+      runHook preBuildPhase
+      ${jdk}/bin/javac src/Hello.java
+      runHook postBuildPhase
+    '';
+    installPhase = ''
+      runHook preInstallPhase
+
+      mkdir -p $out/lib
+      cp src/Hello.class $out/lib
+
+      mkdir -p $out/bin
+      cat >$out/bin/hello <<EOF;
+      #!/usr/bin/env sh
+      ${jre}/bin/java -cp $out/lib Hello
+      EOF
+      chmod a+x $out/bin/hello
+
+      runHook postInstallPhase
+    '';
+  }
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/tests/hello.nix b/nixpkgs/pkgs/development/compilers/openjdk/tests/hello.nix
new file mode 100644
index 000000000000..bc5be4a9e9a9
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/tests/hello.nix
@@ -0,0 +1,42 @@
+{ jdk
+, jre
+, pkgs
+}:
+
+/* 'Hello world' Java application derivation for use in tests */
+let
+  source = pkgs.writeTextDir "src/Hello.java" ''
+    class Hello {
+      public static void main(String[] args) {
+        System.out.println("Hello, world!");
+      }
+    }
+  '';
+in
+  pkgs.stdenv.mkDerivation {
+    pname = "hello";
+    version = "1.0.0";
+
+    src = source;
+
+    buildPhase = ''
+      runHook preBuildPhase
+      ${jdk}/bin/javac src/Hello.java
+      runHook postBuildPhase
+    '';
+    installPhase = ''
+      runHook preInstallPhase
+
+      mkdir -p $out/lib
+      cp src/Hello.class $out/lib
+
+      mkdir -p $out/bin
+      cat >$out/bin/hello <<EOF;
+      #!/usr/bin/env sh
+      ${jre}/bin/java -cp $out/lib Hello
+      EOF
+      chmod a+x $out/bin/hello
+
+      runHook postInstallPhase
+    '';
+  }
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal.nix b/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal.nix
new file mode 100644
index 000000000000..ed7b839cd22b
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal.nix
@@ -0,0 +1,16 @@
+{ runCommand
+, callPackage
+, jdk
+, jre_minimal
+}:
+
+let
+  hello = callPackage ./hello.nix {
+    jdk = jdk;
+    jre = jre_minimal;
+  };
+in
+  runCommand "test" {} ''
+    ${hello}/bin/hello | grep "Hello, world!"
+    touch $out
+  ''
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal_with_logging.nix b/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal_with_logging.nix
new file mode 100644
index 000000000000..b9c417d3949c
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/openjdk/tests/test_jre_minimal_with_logging.nix
@@ -0,0 +1,21 @@
+{ runCommand
+, callPackage
+, jdk
+, jre_minimal
+}:
+
+let
+  hello-logging = callPackage ./hello-logging.nix {
+    jdk = jdk;
+    jre = jre_minimal.override {
+      modules = [
+        "java.base"
+        "java.logging"
+      ];
+    };
+  };
+in
+  runCommand "test" {} ''
+    ${hello-logging}/bin/hello &>/dev/stdout | grep "Hello, world!"
+    touch $out
+  ''
diff --git a/nixpkgs/pkgs/development/compilers/ophis/default.nix b/nixpkgs/pkgs/development/compilers/ophis/default.nix
index f28513a9bb26..2ddfa849b664 100644
--- a/nixpkgs/pkgs/development/compilers/ophis/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ophis/default.nix
@@ -11,7 +11,7 @@ buildPythonApplication rec {
     sha256 = "2x8vwLTSngqQqmVrVh/mM4peATgaRqOSwrfm5XCkg/g=";
   };
 
-  sourceRoot = "./src";
+  sourceRoot = "${src.name}/src";
 
   meta = with lib; {
     homepage = "http://michaelcmartin.github.io/Ophis/";
diff --git a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
index 41f4befe469f..713b32a349b4 100644
--- a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
+++ b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
@@ -18,7 +18,7 @@
 , config
 , glib
 , libxml2
-, ffmpeg_3
+, ffmpeg
 , libxslt
 , libGL
 , freetype
@@ -26,7 +26,7 @@
 , gtk2
 , pango
 , cairo
-, alsaLib
+, alsa-lib
 , atk
 , gdk-pixbuf
 , setJavaClassPath
@@ -168,7 +168,7 @@ let result = stdenv.mkDerivation rec {
    * libXt is only needed on amd64
    */
   libraries =
-    [stdenv.cc.libc glib libxml2 ffmpeg_3 libxslt libGL xorg.libXxf86vm alsaLib fontconfig freetype pango gtk2 cairo gdk-pixbuf atk] ++
+    [stdenv.cc.libc glib libxml2 ffmpeg libxslt libGL xorg.libXxf86vm alsa-lib fontconfig freetype pango gtk2 cairo gdk-pixbuf atk] ++
     lib.optionals swingSupport [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc];
 
   rpath = lib.strings.makeLibraryPath libraries;
@@ -184,6 +184,7 @@ let result = stdenv.mkDerivation rec {
   meta = with lib; {
     license = licenses.unfree;
     platforms = [ "i686-linux" "x86_64-linux" "armv7l-linux" "aarch64-linux" ]; # some inherit jre.meta.platforms
+    mainProgram = "java";
   };
 
 }; in result
diff --git a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk11-linux.nix b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk11-linux.nix
index eafe23c8e76d..a232b796a068 100644
--- a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk11-linux.nix
+++ b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk11-linux.nix
@@ -3,7 +3,7 @@
 , xorg
 , zlib
 , freetype
-, alsaLib
+, alsa-lib
 , setJavaClassPath
 }:
 
@@ -30,7 +30,7 @@ let result = stdenv.mkDerivation rec {
   '';
 
   postFixup = ''
-    rpath="$out/lib/jli:$out/lib/server:$out/lib:${lib.strings.makeLibraryPath [ zlib xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender freetype alsaLib]}"
+    rpath="$out/lib/jli:$out/lib/server:$out/lib:${lib.strings.makeLibraryPath [ zlib xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender freetype alsa-lib]}"
 
     for f in $(find $out -name "*.so") $(find $out -type f -perm -0100); do
       patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$f" || true
diff --git a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk14-linux.nix b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk14-linux.nix
index b1655cd8b8fe..6604ebbef82d 100644
--- a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk14-linux.nix
+++ b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk14-linux.nix
@@ -3,7 +3,7 @@
 , xorg
 , zlib
 , freetype
-, alsaLib
+, alsa-lib
 , setJavaClassPath
 }:
 
@@ -30,7 +30,7 @@ let result = stdenv.mkDerivation rec {
   '';
 
   postFixup = ''
-    rpath="$out/lib/jli:$out/lib/server:$out/lib:${lib.strings.makeLibraryPath [ stdenv.cc.cc zlib xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender freetype alsaLib]}"
+    rpath="$out/lib/jli:$out/lib/server:$out/lib:${lib.strings.makeLibraryPath [ stdenv.cc.cc zlib xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXrender freetype alsa-lib]}"
 
     for f in $(find $out -name "*.so") $(find $out -type f -perm -0100); do
       patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$f" || true
diff --git a/nixpkgs/pkgs/development/compilers/pakcs/default.nix b/nixpkgs/pkgs/development/compilers/pakcs/default.nix
index 98fab9eb210b..e2dceaab3975 100644
--- a/nixpkgs/pkgs/development/compilers/pakcs/default.nix
+++ b/nixpkgs/pkgs/development/compilers/pakcs/default.nix
@@ -94,7 +94,7 @@ in stdenv.mkDerivation {
       with dynamic web pages, prototyping embedded systems).
     '';
 
-    maintainers = with maintainers; [ kkallio gnidorah ];
+    maintainers = with maintainers; [ kkallio ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/passerine/default.nix b/nixpkgs/pkgs/development/compilers/passerine/default.nix
new file mode 100644
index 000000000000..e9427f892e64
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/passerine/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "passerine";
+  version = "0.9.2";
+
+  src = fetchFromGitHub {
+    owner = "vrtbl";
+    repo = "passerine";
+    rev = "dd8a6f5efc5dcb03d45b102f61cc8a50d46e8e98";
+    sha256 = "sha256-/QzqKLkxAVqvTY4Uft1qk7nJat6nozykB/4X1YGqu/I=";
+  };
+
+  cargoSha256 = "sha256-8WiiDLIJ/abXELF8S+4s+BPA/Lr/rpKmC1NWPCLzQWA=";
+
+  meta = with lib; {
+    description = "A small extensible programming language designed for concise expression with little code";
+    homepage = "https://github.com/vrtbl/passerine";
+    license = licenses.mit;
+    maintainers = with maintainers; [ siraben ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/default.nix b/nixpkgs/pkgs/development/compilers/ponyc/default.nix
index 9fc8188daa10..36a83d47d6fd 100644
--- a/nixpkgs/pkgs/development/compilers/ponyc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ponyc/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation (rec {
   pname = "ponyc";
-  version = "0.38.3";
+  version = "0.41.1";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = pname;
     rev = version;
-    sha256 = "14kivmyphi7gbd7mgd4cnsiwl4cl7wih8kwzh7n79s2s4c5hj4ak";
+    sha256 = "02wx070cy1193xzv58vh79yzwgpqiayqlwd3i285698fppbcg69a";
 
 # Due to a bug in LLVM 9.x, ponyc has to include its own vendored patched
 # LLVM.  (The submodule is a specific tag in the LLVM source tree).
@@ -23,34 +23,33 @@ stdenv.mkDerivation (rec {
     fetchSubmodules = true;
   };
 
-  ponygbenchmark = fetchurl {
-    url = "https://github.com/google/benchmark/archive/v1.5.0.tar.gz";
-    sha256 = "06i2cr4rj126m1zfz0x1rbxv1mw1l7a11mzal5kqk56cdrdicsiw";
-    name = "v1.5.0.tar.gz";
+  ponygbenchmark = fetchFromGitHub {
+    owner = "google";
+    repo = "benchmark";
+    rev = "v1.5.2";
+    sha256 = "13rxagpzw6bal6ajlmrxlh9kgfvcixn6j734b2bvfqz7lch8n0pa";
   };
 
   nativeBuildInputs = [ cmake makeWrapper which ];
   buildInputs = [ libxml2 z3 ];
-  propagatedBuildInputs = [ cc ];
 
   # Sandbox disallows network access, so disabling problematic networking tests
   patches = [
     ./disable-tests.patch
+    ./fix-libstdcpp-path.patch
     (substituteAll {
       src = ./make-safe-for-sandbox.patch;
       googletest = fetchurl {
         url = "https://github.com/google/googletest/archive/release-1.8.1.tar.gz";
         sha256 = "17147961i01fl099ygxjx4asvjanwdd446nwbq9v8156h98zxwcv";
-        name = "release-1.8.1.tar.gz";
       };
     })
   ];
 
   postUnpack = ''
     mkdir -p source/build/build_libs/gbenchmark-prefix/src
-    tar -C source/build/build_libs/gbenchmark-prefix/src -zxvf "$ponygbenchmark"
-    mv source/build/build_libs/gbenchmark-prefix/src/benchmark-1.5.0 \
-       source/build/build_libs/gbenchmark-prefix/src/benchmark
+    cp -r "$ponygbenchmark"/ source/build/build_libs/gbenchmark-prefix/src/benchmark
+    chmod -R u+w source/build/build_libs/gbenchmark-prefix/src/benchmark
   '';
 
   dontConfigure = true;
@@ -61,7 +60,6 @@ stdenv.mkDerivation (rec {
     patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2020-09-01-is-trivially-copyable.diff
     patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2020-01-07-01-c-exports.diff
     patch -d lib/llvm/src/ -p1 < lib/llvm/patches/2019-12-23-01-jit-eh-frames.diff
-
     substituteInPlace packages/process/_test.pony \
         --replace '"/bin/' '"${coreutils}/bin/' \
         --replace '=/bin' "${coreutils}/bin"
@@ -91,7 +89,6 @@ stdenv.mkDerivation (rec {
     + lib.optionalString stdenv.isDarwin "bits=64 "
     + lib.optionalString (stdenv.isDarwin && (!lto)) "lto=no "
     + '' install
-
     wrapProgram $out/bin/ponyc \
       --prefix PATH ":" "${stdenv.cc}/bin" \
       --set-default CC "$CC" \
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/fix-libstdcpp-path.patch b/nixpkgs/pkgs/development/compilers/ponyc/fix-libstdcpp-path.patch
new file mode 100644
index 000000000000..63b0fa699129
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/ponyc/fix-libstdcpp-path.patch
@@ -0,0 +1,14 @@
+diff --git a/src/libponyc/CMakeLists.txt b/src/libponyc/CMakeLists.txt
+index bf2c385e..11d0d619 100644
+--- a/src/libponyc/CMakeLists.txt
++++ b/src/libponyc/CMakeLists.txt
+@@ -136,7 +136,7 @@ elseif(${CMAKE_HOST_SYSTEM_NAME} MATCHES "DragonFly")
+ else()
+     # add a rule to generate the standalone library if needed
+     add_custom_command(OUTPUT libponyc-standalone.a
+-        COMMAND cp `find /usr/lib/ -name 'libstdc++.a' -print -quit` libstdcpp.a
++        COMMAND cp `${CMAKE_CXX_COMPILER} --print-file-name='libstdc++.a'` libstdcpp.a
+         COMMAND echo "create libponyc-standalone.a" > standalone.mri
+         COMMAND echo "addlib ${PROJECT_SOURCE_DIR}/../../build/libs/lib/libblake2.a" >> standalone.mri
+         COMMAND echo "addlib libstdcpp.a" >> standalone.mri
+
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch b/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
index b07763a475d2..49addcbc616e 100644
--- a/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
+++ b/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
@@ -1,10 +1,10 @@
---- a/lib/CMakeLists.txt	2020-09-27 02:39:12.862940179 +0000
-+++ b/lib/CMakeLists.txt	2020-09-27 02:39:16.451957865 +0000
+--- a/lib/CMakeLists.txt	2021-05-27 15:58:36.819331229 -0400
++++ b/lib/CMakeLists.txt	2021-05-27 16:00:19.768268649 -0400
 @@ -10,12 +10,12 @@
  endif()
  
  ExternalProject_Add(gbenchmark
--    URL https://github.com/google/benchmark/archive/v1.5.0.tar.gz
+-    URL https://github.com/google/benchmark/archive/v1.5.2.tar.gz
 +    SOURCE_DIR gbenchmark-prefix/src/benchmark
      CMAKE_ARGS -DCMAKE_BUILD_TYPE=${PONYC_LIBS_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DBENCHMARK_ENABLE_GTEST_TESTS=OFF -DCMAKE_CXX_FLAGS=-fpic --no-warn-unused-cli
  )
@@ -30,12 +30,12 @@
 -        option(GIT_SUBMODULE "Check submodules during build" ON)
 -        if(GIT_SUBMODULE)
 -            message(STATUS "Updating submodules...")
--            execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive
+-            execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive --depth 1
 -                            WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 -                            RESULT_VARIABLE git_submod_result)
 -            #message("git_submod_result ${git_submod_result}")
 -            if(NOT git_submod_result EQUAL "0")
--                message(FATAL_ERROR "git submodule update --init --recursive failed with ${git_submod_result}, please checkout submodules")
+-                message(FATAL_ERROR "git submodule update --init --recursive --depth 1 failed with ${git_submod_result}, please checkout submodules")
 -            endif()
 -
 -            # we check to make sure the submodule hash matches
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix b/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix
index 8910d7f1e610..e9473b81f484 100644
--- a/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix
+++ b/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation ( rec {
   pname = "corral";
-  version = "0.4.1";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = pname;
     rev = version;
-    sha256 = "sha256-YJZ1jGMOeZKGZaTrWO2mtR94F0voC2DXaghi0LytF7I=";
+    sha256 = "sha256-mQ/SxnppChZ+6PKVo5VM+QiNn94F4qJT1kQSrwXTa7k=";
   };
 
   buildInputs = [ ponyc ];
diff --git a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
index 6d7f05ebdae7..568407c3614e 100644
--- a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
+++ b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
@@ -18,19 +18,19 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "purescript";
-  version = "0.14.0";
+  version = "0.14.2";
 
   src =
     if stdenv.isDarwin
     then
     fetchurl {
       url = "https://github.com/${pname}/${pname}/releases/download/v${version}/macos.tar.gz";
-      sha256 = "0dfnn5ar7zgvgvxcvw5f6vwpkgkwa017y07s7mvdv44zf4hzsj3s";
+      sha256 = "1ga2hn9br71dyzn3p9jvjiksvnq21p6i5hp1z1j5fpz9la28nqzf";
     }
     else
     fetchurl {
       url = "https://github.com/${pname}/${pname}/releases/download/v${version}/linux64.tar.gz";
-      sha256 = "1l3i7mxlzb2dkq6ff37rvnaarikxzxj0fg9i2kk26s8pz7vpqgjh";
+      sha256 = "1kv7dm1nw85lw3brrclkj7xc9p021jx3n8wgp2fg3572s86ypskw";
     };
 
 
@@ -61,5 +61,7 @@ in stdenv.mkDerivation rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ justinwoo mbbx6spp cdepillabout ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    mainProgram = "purs";
+    changelog = "https://github.com/purescript/purescript/releases/tag/v${version}";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/reason/default.nix b/nixpkgs/pkgs/development/compilers/reason/default.nix
index 2293c83cc02c..dbc6f40a68ce 100644
--- a/nixpkgs/pkgs/development/compilers/reason/default.nix
+++ b/nixpkgs/pkgs/development/compilers/reason/default.nix
@@ -1,5 +1,5 @@
-{ lib, stdenv, makeWrapper, fetchFromGitHub, ocaml, findlib, dune_2
-, fix, menhir, merlin-extend, ppx_tools_versioned, utop, cppo
+{ lib, callPackage, stdenv, makeWrapper, fetchFromGitHub, ocaml, findlib, dune_2
+, fix, menhir, menhirLib, menhirSdk, merlin-extend, ppxlib, utop, cppo, ppx_derivers
 }:
 
 stdenv.mkDerivation rec {
@@ -13,11 +13,28 @@ stdenv.mkDerivation rec {
     sha256 = "0m6ldrci1a4j0qv1cbwh770zni3al8qxsphl353rv19f6rblplhs";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-
-  propagatedBuildInputs = [ menhir merlin-extend ppx_tools_versioned ];
-
-  buildInputs = [ ocaml findlib dune_2 cppo fix utop menhir ];
+  nativeBuildInputs = [
+    makeWrapper
+    menhir
+  ];
+
+  buildInputs = [
+    cppo
+    dune_2
+    findlib
+    fix
+    menhir
+    menhirSdk
+    ocaml
+    ppxlib
+    utop
+  ];
+
+  propagatedBuildInputs = [
+    menhirLib
+    merlin-extend
+    ppx_derivers
+  ];
 
   buildFlags = [ "build" ]; # do not "make tests" before reason lib is installed
 
@@ -29,11 +46,16 @@ stdenv.mkDerivation rec {
       --prefix OCAMLPATH : "$OCAMLPATH:$OCAMLFIND_DESTDIR"
   '';
 
+  passthru.tests = {
+    hello = callPackage ./tests/hello { };
+  };
+
   meta = with lib; {
     homepage = "https://reasonml.github.io/";
+    downloadPage = "https://github.com/reasonml/reason";
     description = "Facebook's friendly syntax to OCaml";
     license = licenses.mit;
     inherit (ocaml.meta) platforms;
-    maintainers = [ maintainers.volth ];
+    maintainers = with maintainers; [ superherointj ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/reason/tests/hello/default.nix b/nixpkgs/pkgs/development/compilers/reason/tests/hello/default.nix
new file mode 100644
index 000000000000..9b551a0a1ee5
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/reason/tests/hello/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildDunePackage, reason }:
+
+buildDunePackage rec {
+  pname = "helloreason";
+  version = "0.0.1";
+
+  src = ./.;
+
+  useDune2 = true;
+
+  buildInputs = [
+    reason
+  ];
+
+  doCheck = true;
+
+  doInstallCheck = true;
+  postInstallCheck = ''
+    $out/bin/${pname} | grep -q "Hello From Reason" > /dev/null
+  '';
+
+  meta.timeout = 60;
+}
diff --git a/nixpkgs/pkgs/development/compilers/reason/tests/hello/dune b/nixpkgs/pkgs/development/compilers/reason/tests/hello/dune
new file mode 100644
index 000000000000..578a56dc6de4
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/reason/tests/hello/dune
@@ -0,0 +1,4 @@
+(executable
+ (name helloreason)
+ (public_name helloreason)
+ (libraries reason))
diff --git a/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.opam b/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.opam
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.opam
diff --git a/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.re b/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.re
new file mode 100644
index 000000000000..795bd314dcfb
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/reason/tests/hello/helloreason.re
@@ -0,0 +1,6 @@
+let sayHello = () => {
+  let fromWhom = "From Reason";
+  print_endline("Hello " ++ fromWhom);
+};
+
+sayHello();
diff --git a/nixpkgs/pkgs/development/compilers/rust/1_45.nix b/nixpkgs/pkgs/development/compilers/rust/1_45.nix
index 13b1b3ef488c..f499fc9e9b08 100644
--- a/nixpkgs/pkgs/development/compilers/rust/1_45.nix
+++ b/nixpkgs/pkgs/development/compilers/rust/1_45.nix
@@ -20,9 +20,9 @@ import ./default.nix {
   rustcVersion = "1.45.2";
   rustcSha256 = "0273a1g3f59plyi1n0azf21qjzwml1yqdnj5z472crz37qggr8xp";
 
-  llvmSharedForBuild = pkgsBuildBuild.llvm_10.override { enableSharedLibraries = true; };
-  llvmSharedForHost = pkgsBuildHost.llvm_10.override { enableSharedLibraries = true; };
-  llvmSharedForTarget = pkgsBuildTarget.llvm_10.override { enableSharedLibraries = true; };
+  llvmSharedForBuild = pkgsBuildBuild.llvmPackages_10.libllvm.override { enableSharedLibraries = true; };
+  llvmSharedForHost = pkgsBuildHost.llvmPackages_10.libllvm.override { enableSharedLibraries = true; };
+  llvmSharedForTarget = pkgsBuildTarget.llvmPackages_10.libllvm.override { enableSharedLibraries = true; };
 
   llvmBootstrapForDarwin = llvmPackages_5;
 
diff --git a/nixpkgs/pkgs/development/compilers/rust/1_51.nix b/nixpkgs/pkgs/development/compilers/rust/1_51.nix
deleted file mode 100644
index a489df471a8c..000000000000
--- a/nixpkgs/pkgs/development/compilers/rust/1_51.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-# New rust versions should first go to staging.
-# Things to check after updating:
-# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
-#    i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
-#    This testing can be also done by other volunteers as part of the pull
-#    request review, in case platforms cannot be covered.
-# 2. The LLVM version used for building should match with rust upstream.
-#    Check the version number in the src/llvm-project git submodule in:
-#    https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
-# 3. Firefox and Thunderbird should still build on x86_64-linux.
-
-{ stdenv, lib
-, buildPackages
-, newScope, callPackage
-, CoreFoundation, Security
-, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
-, makeRustPlatform
-, llvmPackages_11, llvm_11
-} @ args:
-
-import ./default.nix {
-  rustcVersion = "1.51.0";
-  rustcSha256 = "0ixqkqglv3isxbvl4ldr4byrkx692wghsz3fasy1pn5kr2prnsvs";
-
-  llvmSharedForBuild = pkgsBuildBuild.llvm_11.override { enableSharedLibraries = true; };
-  llvmSharedForHost = pkgsBuildHost.llvm_11.override { enableSharedLibraries = true; };
-  llvmSharedForTarget = pkgsBuildTarget.llvm_11.override { enableSharedLibraries = true; };
-
-  llvmBootstrapForDarwin = llvmPackages_11;
-
-  # For use at runtime
-  llvmShared = llvm_11.override { enableSharedLibraries = true; };
-
-  # Note: the version MUST be one version prior to the version we're
-  # building
-  bootstrapVersion = "1.50.0";
-
-  # fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
-  bootstrapHashes = {
-    i686-unknown-linux-gnu = "dee56dc425ed5d8e8112f26fba3060fd324c49f1261e0b7e8e29f7d9b852b09a";
-    x86_64-unknown-linux-gnu = "fa889b53918980aea2dea42bfae4e858dcb2104c6fdca6e4fe359f3a49767701";
-    x86_64-unknown-linux-musl = "867cbfb35f5dc9b43e230132ea9e7bfa98d471a9248e41b08ced2266e5ccd00f";
-    arm-unknown-linux-gnueabihf = "1b72979244450e4047ab536448d6720699e1fae0ab1c4ade114099a3037e274b";
-    armv7-unknown-linux-gnueabihf = "f1dde566c4e6ca2e1133c84170e46e566765a21894e1038e1cdc32745d7274ef";
-    aarch64-unknown-linux-gnu = "1db7a4fbddc68cd29eb9bca9fa7d0d2d9e3d59ede7ddaad66222fb4336a6bacf";
-    aarch64-unknown-linux-musl = "adcc6c76a8967bacb6687b565d3cf739e35fde066b03edb745b05b52fa8b5b36";
-    x86_64-apple-darwin = "1bf5a7ecf6468ce1bf9fe49c8083b3f648b40c16fbfb7539d106fe28eb0e792e";
-    aarch64-apple-darwin = "1ed91a867e7b86cc4bc84c0838240f1c25acd007100ec9f7a14c4873e4b56561";
-    powerpc64le-unknown-linux-gnu = "e0472589d3f9ba7ebf27f033af320e0d5cfb70222955bd8ed73ce2c9a70ae535";
-  };
-
-  selectRustPackage = pkgs: pkgs.rust_1_51;
-
-  rustcPatches = [
-  ];
-}
-
-(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvm_11"])
diff --git a/nixpkgs/pkgs/development/compilers/rust/1_52.nix b/nixpkgs/pkgs/development/compilers/rust/1_52.nix
new file mode 100644
index 000000000000..bfd6fc47ad20
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/rust/1_52.nix
@@ -0,0 +1,59 @@
+# New rust versions should first go to staging.
+# Things to check after updating:
+# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
+#    i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
+#    This testing can be also done by other volunteers as part of the pull
+#    request review, in case platforms cannot be covered.
+# 2. The LLVM version used for building should match with rust upstream.
+#    Check the version number in the src/llvm-project git submodule in:
+#    https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
+# 3. Firefox and Thunderbird should still build on x86_64-linux.
+
+{ stdenv, lib
+, buildPackages
+, newScope, callPackage
+, CoreFoundation, Security
+, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
+, makeRustPlatform
+, llvmPackages_11, llvm_11
+} @ args:
+
+import ./default.nix {
+  rustcVersion = "1.52.1";
+  rustcSha256 = "sha256-Om8jom0Oj4erv78yxc19qgwLcdCYar78Vrml+/vQv5g=";
+
+  llvmSharedForBuild = pkgsBuildBuild.llvmPackages_11.libllvm.override { enableSharedLibraries = true; };
+  llvmSharedForHost = pkgsBuildHost.llvmPackages_11.libllvm.override { enableSharedLibraries = true; };
+  llvmSharedForTarget = pkgsBuildTarget.llvmPackages_11.libllvm.override { enableSharedLibraries = true; };
+
+  llvmBootstrapForDarwin = llvmPackages_11;
+
+  # For use at runtime
+  llvmShared = llvm_11.override { enableSharedLibraries = true; };
+
+  # Note: the version MUST be one version prior to the version we're
+  # building
+  bootstrapVersion = "1.51.0";
+
+  # fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
+  bootstrapHashes = {
+    i686-unknown-linux-gnu = "de2e8ef724d89ba6f567f07ebacf5a244c7cdae30ee559f1913310eda38d9cd1";
+    x86_64-unknown-linux-gnu = "9e125977aa13f012a68fdc6663629c685745091ae244f0587dd55ea4e3a3e42f";
+    x86_64-unknown-linux-musl = "cb65c3a19ba0e09a94ccfd8551e648efaa1db52b0db19ae475d35a46f8750871";
+    arm-unknown-linux-gnueabihf = "ab26464947ce80b4c361b08242dc215a5664f9f4ad23f66891ec27d55a0440b7";
+    armv7-unknown-linux-gnueabihf = "5d381b7ee16c559efefedfac7ec4d392e838fddaf50049255844dcff2b2614dd";
+    aarch64-unknown-linux-gnu = "fd31c78fffad52c03cac5a7c1ee5db3f34b2a77d7bc862707c0f71e209180a84";
+    aarch64-unknown-linux-musl = "06cdaa1117dcdd392ede938b655b9bc45cf2a76bd42870ca223189e6eb29d435";
+    x86_64-apple-darwin = "765212098a415996b767d1e372ce266caf94027402b269fec33291fffc085ca4";
+    aarch64-apple-darwin = "95d0410bbd20b05f8b7d5adf70e8737873995bc86611a90e643d7081ca35147f";
+    powerpc64le-unknown-linux-gnu = "7362f561104d7be4836507d3a53cd39444efcdf065813d559beb1f54ce9f7680";
+    riscv64gc-unknown-linux-gnu = "9d0c2c4ab2397e78758de8b6b57051482bcf20b6748e0e16d9d5bd23ce73d72a";
+  };
+
+  selectRustPackage = pkgs: pkgs.rust_1_52;
+
+  rustcPatches = [
+  ];
+}
+
+(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvm_11"])
diff --git a/nixpkgs/pkgs/development/compilers/rust/cargo.nix b/nixpkgs/pkgs/development/compilers/rust/cargo.nix
index 3a7f29e32293..3ada23e74882 100644
--- a/nixpkgs/pkgs/development/compilers/rust/cargo.nix
+++ b/nixpkgs/pkgs/development/compilers/rust/cargo.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, file, curl, pkg-config, python3, openssl, cmake, zlib
-, installShellFiles, makeWrapper, libiconv, cacert, rustPlatform, rustc
+, installShellFiles, makeWrapper, cacert, rustPlatform, rustc
 , CoreFoundation, Security
 }:
 
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage {
 
   nativeBuildInputs = [ pkg-config cmake installShellFiles makeWrapper ];
   buildInputs = [ cacert file curl python3 openssl zlib ]
-    ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security libiconv ];
+    ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security ];
 
   # cargo uses git-rs which is made for a version of libgit2 from recent master that
   # is not compatible with the current version in nixpkgs.
diff --git a/nixpkgs/pkgs/development/compilers/rust/default.nix b/nixpkgs/pkgs/development/compilers/rust/default.nix
index 6203eaf47baf..fee21023c4c2 100644
--- a/nixpkgs/pkgs/development/compilers/rust/default.nix
+++ b/nixpkgs/pkgs/development/compilers/rust/default.nix
@@ -35,6 +35,8 @@
       "armv7a" = "armv7";
       "armv7l" = "armv7";
       "armv6l" = "arm";
+      "armv5tel" = "armv5te";
+      "riscv64" = "riscv64gc";
     }.${cpu.name} or cpu.name;
   in platform.rustc.config
     or "${cpu_}-${vendor.name}-${kernel.name}${lib.optionalString (abi.name != "unknown") "-${abi.name}"}";
diff --git a/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix b/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix
index 584b1fdbe438..53ce0391e45b 100644
--- a/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix
+++ b/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix
@@ -13,9 +13,11 @@ rec {
 
   buildRustPackage = callPackage ../../../build-support/rust {
     inherit cargoBuildHook cargoCheckHook cargoInstallHook cargoSetupHook
-      fetchCargoTarball rustc;
+      fetchCargoTarball importCargoLock rustc;
   };
 
+  importCargoLock = buildPackages.callPackage ../../../build-support/rust/import-cargo-lock.nix {};
+
   rustcSrc = callPackage ./rust-src.nix {
     inherit rustc;
   };
@@ -26,6 +28,6 @@ rec {
 
   # Hooks
   inherit (callPackage ../../../build-support/rust/hooks {
-    inherit cargo;
+    inherit cargo rustc;
   }) cargoBuildHook cargoCheckHook cargoInstallHook cargoSetupHook maturinBuildHook;
 }
diff --git a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
index c24052fcc058..ebf8d900bb3b 100755
--- a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
+++ b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
@@ -18,6 +18,7 @@ PLATFORMS=(
   x86_64-apple-darwin
   aarch64-apple-darwin
   powerpc64le-unknown-linux-gnu
+  riscv64gc-unknown-linux-gnu
 )
 BASEURL=https://static.rust-lang.org/dist
 VERSION=${1:-}
diff --git a/nixpkgs/pkgs/development/compilers/rust/rustc.nix b/nixpkgs/pkgs/development/compilers/rust/rustc.nix
index 315fe7c0c6d1..b8fca884edcf 100644
--- a/nixpkgs/pkgs/development/compilers/rust/rustc.nix
+++ b/nixpkgs/pkgs/development/compilers/rust/rustc.nix
@@ -3,6 +3,7 @@
 , fetchurl, file, python3
 , darwin, cmake, rust, rustPlatform
 , pkg-config, openssl
+, libiconv
 , which, libffi
 , withBundledLLVM ? false
 , enableRustcDev ? true
@@ -88,9 +89,9 @@ in stdenv.mkDerivation rec {
     "${setTarget}.cxx=${cxxForTarget}"
   ] ++ optionals (!withBundledLLVM) [
     "--enable-llvm-link-shared"
-    "${setBuild}.llvm-config=${llvmSharedForBuild}/bin/llvm-config"
-    "${setHost}.llvm-config=${llvmSharedForHost}/bin/llvm-config"
-    "${setTarget}.llvm-config=${llvmSharedForTarget}/bin/llvm-config"
+    "${setBuild}.llvm-config=${llvmSharedForBuild.dev}/bin/llvm-config"
+    "${setHost}.llvm-config=${llvmSharedForHost.dev}/bin/llvm-config"
+    "${setTarget}.llvm-config=${llvmSharedForTarget.dev}/bin/llvm-config"
   ] ++ optionals (stdenv.isLinux && !stdenv.targetPlatform.isRedox) [
     "--enable-profiler" # build libprofiler_builtins
   ] ++ optionals stdenv.buildPlatform.isMusl [
@@ -137,7 +138,7 @@ in stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ openssl ]
-    ++ optional stdenv.isDarwin Security
+    ++ optionals stdenv.isDarwin [ libiconv Security ]
     ++ optional (!withBundledLLVM) llvmShared;
 
   outputs = [ "out" "man" "doc" ];
diff --git a/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix b/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix
index bbc171a8d986..1784bf672b31 100644
--- a/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix
+++ b/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix
@@ -1,4 +1,4 @@
 import ./common.nix {
-  version = "2.0.8";
-  sha256 = "1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390";
+  version = "2.1.2";
+  sha256 = "sha256-t3EFUJOYVe1JWYxKAUSD7RILaZFliio7avpHcT3OTAs=";
 }
diff --git a/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix b/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix
index 8bdbbadc9d60..eaf1ff24d3e7 100644
--- a/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix
+++ b/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix
@@ -2,6 +2,11 @@
 
 let
   options = rec {
+    aarch64-darwin = {
+      version = "2.1.2";
+      system = "arm64-darwin";
+      sha256 = "sha256-H0ALigXcWIypdA+fTf7jERscwbb7QIAfcoxCtGDh0RU=";
+    };
     x86_64-darwin = {
       version = "1.2.11";
       system = "x86-64-darwin";
diff --git a/nixpkgs/pkgs/development/compilers/sbcl/common.nix b/nixpkgs/pkgs/development/compilers/sbcl/common.nix
index 11ae960a5317..b020eeafc5cb 100644
--- a/nixpkgs/pkgs/development/compilers/sbcl/common.nix
+++ b/nixpkgs/pkgs/development/compilers/sbcl/common.nix
@@ -2,7 +2,7 @@
 
 { lib, stdenv, fetchurl, writeText, sbclBootstrap
 , sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
-, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system)
+, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system || "aarch64-darwin" == stdenv.hostPlatform.system)
 , disableImmobileSpace ? false
   # Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
   # Note that the created binaries still need `patchelf --set-interpreter ...`
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
                   lib.concatStringsSep " "
                     (builtins.map (x: "--with-${x}") enableFeatures ++
                      builtins.map (x: "--without-${x}") disableFeatures)
-                }
+                } ${if stdenv.hostPlatform.system == "aarch64-darwin" then "--arch=arm64" else ""}
     (cd doc/manual ; make info)
 
     runHook postBuild
diff --git a/nixpkgs/pkgs/development/compilers/scala/2.x.nix b/nixpkgs/pkgs/development/compilers/scala/2.x.nix
index a0a5f1a2b22c..fe821f18c156 100644
--- a/nixpkgs/pkgs/development/compilers/scala/2.x.nix
+++ b/nixpkgs/pkgs/development/compilers/scala/2.x.nix
@@ -26,8 +26,8 @@ let
     };
 
     "2.13" = {
-      version = "2.13.5";
-      sha256 = "1ah5rw6xqksiayi5i95r3pcff961q71ilishzn2kmg673z0j2b7d";
+      version = "2.13.6";
+      sha256 = "Sd+SUDzRHMPGSWg9s2jlh4t+eS5AFW0jd+UjJuk17UM=";
       pname = "scala_2_13";
     };
   };
diff --git a/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix b/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix
index 66a634914dfb..05d1ead1fb6f 100644
--- a/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix
+++ b/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, makeWrapper, jre, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "0.26.0-RC1";
+  version = "3.0.0";
   pname = "dotty-bare";
 
   src = fetchurl {
-    url = "https://github.com/lampepfl/dotty/releases/download/${version}/dotty-${version}.tar.gz";
-    sha256 = "16njy9f0lk7q5x5w1k4yqy644005w4cxhq20r8i2qslhxjndz66f";
+    url = "https://github.com/lampepfl/dotty/releases/download/${version}/scala3-${version}.tar.gz";
+    sha256 = "/F2yv4XH0I3oC3IFqj+jwpzShCtTEfTzg+J26Xl+P+Y=";
   };
 
   propagatedBuildInputs = [ jre ncurses.dev ] ;
diff --git a/nixpkgs/pkgs/development/compilers/scala/dotty.nix b/nixpkgs/pkgs/development/compilers/scala/dotty.nix
index 7bc7fa3d4c24..c99ed24c2149 100644
--- a/nixpkgs/pkgs/development/compilers/scala/dotty.nix
+++ b/nixpkgs/pkgs/development/compilers/scala/dotty.nix
@@ -13,9 +13,10 @@ stdenv.mkDerivation {
 
   installPhase = ''
     mkdir -p $out/bin
-    ln -s ${dotty-bare}/bin/dotc $out/bin/dotc
-    ln -s ${dotty-bare}/bin/dotd $out/bin/dotd
-    ln -s ${dotty-bare}/bin/dotr $out/bin/dotr
+    ln -s ${dotty-bare}/bin/scalac $out/bin/scalac
+    ln -s ${dotty-bare}/bin/scaladoc $out/bin/scaladoc
+    ln -s ${dotty-bare}/bin/scala $out/bin/scala
+    ln -s ${dotty-bare}/bin/common $out/bin/common
   '';
 
   inherit (dotty-bare) meta;
diff --git a/nixpkgs/pkgs/development/compilers/solc/0.7.nix b/nixpkgs/pkgs/development/compilers/solc/0.7.nix
deleted file mode 100644
index 99b67b56510d..000000000000
--- a/nixpkgs/pkgs/development/compilers/solc/0.7.nix
+++ /dev/null
@@ -1,78 +0,0 @@
-{ lib, gccStdenv, fetchzip, boost, cmake, ncurses, python3, coreutils
-, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null
-, cln ? null, gmp ? null
-}:
-
-# compiling source/libsmtutil/CVC4Interface.cpp breaks on clang on Darwin,
-# general commandline tests fail at abiencoderv2_no_warning/ on clang on NixOS
-
-assert z3Support -> z3 != null && lib.versionAtLeast z3.version "4.6.0";
-assert cvc4Support -> cvc4 != null && cln != null && gmp != null;
-
-let
-  jsoncppVersion = "1.9.4";
-  jsoncppUrl = "https://github.com/open-source-parsers/jsoncpp/archive/${jsoncppVersion}.tar.gz";
-  jsoncpp = fetchzip {
-    url = jsoncppUrl;
-    sha256 = "0qnx5y6c90fphl9mj9d20j2dfgy6s5yr5l0xnzid0vh71zrp6jwv";
-  };
-in
-gccStdenv.mkDerivation rec {
-
-  pname = "solc";
-  version = "0.7.4";
-
-  # upstream suggests avoid using archive generated by github
-  src = fetchzip {
-    url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz";
-    sha256 = "02261l54jdbvxk612z7zsyvmchy1rx4lf27b3f616sd7r56krpkg";
-  };
-
-  postPatch = ''
-    substituteInPlace cmake/jsoncpp.cmake \
-      --replace "${jsoncppUrl}" ${jsoncpp}
-  '';
-
-  cmakeFlags = [
-    "-DBoost_USE_STATIC_LIBS=OFF"
-  ] ++ lib.optionals (!z3Support) [
-    "-DUSE_Z3=OFF"
-  ] ++ lib.optionals (!cvc4Support) [
-    "-DUSE_CVC4=OFF"
-  ];
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost ]
-    ++ lib.optionals z3Support [ z3 ]
-    ++ lib.optionals cvc4Support [ cvc4 cln gmp ];
-  checkInputs = [ ncurses python3 ];
-
-  # Test fails on darwin for unclear reason
-  doCheck = gccStdenv.hostPlatform.isLinux;
-
-  checkPhase = ''
-    while IFS= read -r -d ''' dir
-    do
-      LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$(pwd)/$dir
-      export LD_LIBRARY_PATH
-    done <   <(find . -type d -print0)
-
-    pushd ..
-    # IPC tests need aleth avaliable, so we disable it
-    sed -i "s/IPC_ENABLED=true/IPC_ENABLED=false\nIPC_FLAGS=\"--no-ipc\"/" ./scripts/tests.sh
-    for i in ./scripts/*.sh ./scripts/*.py ./test/*.sh; do
-      patchShebangs "$i"
-    done
-    TERM=xterm ./scripts/tests.sh
-    popd
-  '';
-
-  meta = with lib; {
-    description = "Compiler for Ethereum smart contract language Solidity";
-    homepage = "https://github.com/ethereum/solidity";
-    license = licenses.gpl3;
-    platforms = with platforms; linux; # darwin is currently broken
-    maintainers = with maintainers; [ dbrock akru lionello sifmelcara ];
-    inherit version;
-  };
-}
diff --git a/nixpkgs/pkgs/development/compilers/solc/default.nix b/nixpkgs/pkgs/development/compilers/solc/default.nix
index c8f0c50d8a59..c01cc761e8c6 100644
--- a/nixpkgs/pkgs/development/compilers/solc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/solc/default.nix
@@ -7,7 +7,7 @@
 , python3
 , z3Support ? true
 , z3 ? null
-, cvc4Support ? true
+, cvc4Support ? gccStdenv.isLinux
 , cvc4 ? null
 , cln ? null
 , gmp ? null
@@ -98,7 +98,6 @@ let
       description = "Compiler for Ethereum smart contract language Solidity";
       homepage = "https://github.com/ethereum/solidity";
       license = licenses.gpl3;
-      platforms = with platforms; linux; # darwin is currently broken
       maintainers = with maintainers; [ dbrock akru lionello sifmelcara ];
       inherit version;
     };
diff --git a/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix b/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix
index 324e0b07ad87..e4549a7d65d7 100644
--- a/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix
+++ b/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , fetchFromGitHub
 , cmake
+, pkg-config
 
 , lit
 , llvm_8
@@ -17,7 +18,7 @@ stdenv.mkDerivation rec {
     sha256 = "0hxalc3fkliqs61hpr97phbm3qsx4b8vgnlg30aimzr6aas403r5";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ pkg-config cmake llvm_8.dev ];
 
   buildInputs = [ llvm_8 ];
 
diff --git a/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix b/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix
index addf64138011..cb4cf580a0e9 100644
--- a/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix
+++ b/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation {
 
   # Add the packInstall path to the swipl pack search path
   postPatch = ''
-    echo "user:file_search_path(pack, '$out/lib/swipl/pack')." >> /build/$sourceRoot/boot/init.pl
+    echo "user:file_search_path(pack, '$out/lib/swipl/pack')." >> boot/init.pl
   '';
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/nixpkgs/pkgs/development/compilers/vala/default.nix b/nixpkgs/pkgs/development/compilers/vala/default.nix
index b56f509b31aa..0c002227914a 100644
--- a/nixpkgs/pkgs/development/compilers/vala/default.nix
+++ b/nixpkgs/pkgs/development/compilers/vala/default.nix
@@ -40,6 +40,8 @@ let
 
         "0.50" = ./disable-graphviz-0.46.1.patch;
 
+        "0.52" = ./disable-graphviz-0.46.1.patch;
+
       }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala");
 
     disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz;
@@ -88,7 +90,7 @@ let
 
     # Wait for PR #59372
     # passthru = {
-    #  updateScript = gnome3.updateScript {
+    #  updateScript = gnome.updateScript {
     #    attrPath = "${pname}_${lib.versions.major version}_${lib.versions.minor version}";
     #    packageName = pname;
     #  };
@@ -99,7 +101,7 @@ let
       homepage = "https://wiki.gnome.org/Projects/Vala";
       license = licenses.lgpl21Plus;
       platforms = platforms.unix;
-      maintainers = with maintainers; [ antono jtojnar lethalman peterhoeg worldofpeace ];
+      maintainers = with maintainers; [ antono jtojnar peterhoeg ];
     };
   });
 
@@ -125,8 +127,8 @@ in rec {
   };
 
   vala_0_48 = generic {
-    version = "0.48.14";
-    sha256 = "0iz3zzimmk5wxvy5bi75v8ckv153gjrz3r5iqvl8xqackzi7v9fw";
+    version = "0.48.17";
+    sha256 = "1wlb4vd7k6hg10s09npglbhfcgjzxkywd4v0l96qhn19m9b8cszj";
   };
 
   vala_0_50 = generic {
@@ -134,5 +136,10 @@ in rec {
     sha256 = "1353j852h04d1x6b4n6lbg3ay40ph0adb9yi25dh74pligx33z2q";
   };
 
-  vala = vala_0_48;
+  vala_0_52 = generic {
+    version = "0.52.2";
+    sha256 = "sha256-OjxGCAO6Zh5RO+PQmEtYPgVHP2AsdfqY6RdVUDcUqXs=";
+  };
+
+  vala = vala_0_52;
 }
diff --git a/nixpkgs/pkgs/development/compilers/z88dk/default.nix b/nixpkgs/pkgs/development/compilers/z88dk/default.nix
index 026a205cd26d..b825af6a202e 100644
--- a/nixpkgs/pkgs/development/compilers/z88dk/default.nix
+++ b/nixpkgs/pkgs/development/compilers/z88dk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "z88dk";
-  version = "2.0";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "z88dk";
     repo = "z88dk";
     rev = "v${version}";
-    sha256 = "14r9bjw6lgz85a59a4ajspvg12swiqxi17zicl8r7p29pi9lsibp";
+    sha256 = "sha256-NgO8rbM31IX4nrJRU0p1DUafHPagMQepKLLoOLuGlT8=";
     fetchSubmodules = true;
   };
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   makeFlags = [
     "git_rev=${short_rev}"
     "version=${version}"
-    "prefix=$(out)"
+    "DESTDIR=$(out)"
     "git_count=0"
   ];
 
diff --git a/nixpkgs/pkgs/development/compilers/zasm/default.nix b/nixpkgs/pkgs/development/compilers/zasm/default.nix
index 97c7aa3c2acf..88d77653f923 100644
--- a/nixpkgs/pkgs/development/compilers/zasm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/zasm/default.nix
@@ -1,20 +1,26 @@
-{ fetchFromGitHub, zlib, lib, stdenv }:
+{ lib, stdenv, fetchFromGitHub, zlib }:
 let
   libs-src = fetchFromGitHub {
     owner = "megatokio";
     repo = "Libraries";
-    rev = "97ea480051b106e83a086dd42583dfd3e9d458a1";
-    sha256 = "1kqmjb9660mnb0r18s1grrrisx6b73ijsinlyr97vz6992jd5dzh";
+    # 2021-02-02
+    rev = "c5cb3ed512c677db6f33e2d3539dfbb6e547030b";
+    sha256 = "sha256-GiplhZf640uScVdKL6E/fegOgtC9SE1xgBqcX86XADk=";
   };
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "zasm";
-  version = "4.2.6";
+  version = "4.4.7";
+
   src = fetchFromGitHub {
     owner = "megatokio";
     repo = "zasm";
-    rev = "f1424add17a5514895a598d6b5e3982579961519";
-    sha256 = "1kqnqdqp2bfsazs6vfx2aiqanxxagn8plx8g6rc11vmr8yqnnpks";
+    rev = version;
+    sha256 = "sha256-Zbno8kmzss1H2FjwzHB4U7UXxa6oDfsPV80MVVFfM68=";
+    extraPostFetch = ''
+      # remove folder containing files with weird names (causes the hash to turn out differently under macOS vs. Linux)
+      rm -rv $out/Test
+    '';
   };
 
   buildInputs = [ zlib ];
@@ -23,22 +29,23 @@ stdenv.mkDerivation {
     ln -sf ${libs-src} Libraries
   '';
 
-  buildPhase = ''
-    cd Linux
-    make
-  '';
+  makeFlags = [
+    "CC=${stdenv.cc.targetPrefix}cc"
+    "CXX=${stdenv.cc.targetPrefix}c++"
+    "LINK=${stdenv.cc.targetPrefix}c++"
+    "STRIP=${stdenv.cc.targetPrefix}strip"
+  ];
 
   installPhase = ''
-    mkdir -p $out/bin
-    mv zasm $out/bin
+    install -Dm755 -t $out/bin zasm
   '';
 
   meta = with lib; {
-    description = "Z80 / 8080 assembler (for unix-style OS)";
+    description = "Z80 / 8080 / Z180 assembler (for unix-style OS)";
     homepage = "https://k1.spdns.de/Develop/Projects/zasm/Distributions/";
     license = licenses.bsd2;
     maintainers = [ maintainers.turbomack ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     badPlatforms = platforms.aarch64;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/zig/default.nix b/nixpkgs/pkgs/development/compilers/zig/default.nix
index bd96010e8bfb..a31a9e6ca43f 100644
--- a/nixpkgs/pkgs/development/compilers/zig/default.nix
+++ b/nixpkgs/pkgs/development/compilers/zig/default.nix
@@ -1,45 +1,51 @@
-{ lib, stdenv, fetchFromGitHub, cmake, llvmPackages, libxml2, zlib, substituteAll }:
+{ lib
+, fetchFromGitHub
+, cmake
+, llvmPackages
+, libxml2
+, zlib
+}:
 
-llvmPackages.stdenv.mkDerivation rec {
-  version = "0.7.1";
+let
+  inherit (llvmPackages) stdenv;
+in
+stdenv.mkDerivation rec {
   pname = "zig";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "ziglang";
     repo = pname;
     rev = version;
-    sha256 = "1z6c4ym9jmga46cw2arn7zv2drcpmrf3vw139gscxp27n7q2z5md";
+    hash = "sha256-bILjcKX8jPl2n1HRYvYRb7jJkobwqmSJ+hHXSn9n2ag=";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+    llvmPackages.llvm.dev
+  ];
   buildInputs = [
-    llvmPackages.clang-unwrapped
-    llvmPackages.llvm
-    llvmPackages.lld
     libxml2
     zlib
-  ];
+  ] ++ (with llvmPackages; [
+    libclang
+    lld
+    llvm
+  ]);
 
   preBuild = ''
     export HOME=$TMPDIR;
   '';
 
-  checkPhase = ''
-    runHook preCheck
-    ./zig test --cache-dir "$TMPDIR" -I $src/test $src/test/stage1/behavior.zig
-    runHook postCheck
-  '';
-
-  doCheck = true;
-
   meta = with lib; {
+    homepage = "https://ziglang.org/";
     description =
       "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software";
-    homepage = "https://ziglang.org/";
     license = licenses.mit;
+    maintainers = with maintainers; [ andrewrk AndersonTorres ];
     platforms = platforms.unix;
-    maintainers = [ maintainers.andrewrk ];
     # See https://github.com/NixOS/nixpkgs/issues/86299
     broken = stdenv.isDarwin;
   };
 }
+# TODO: checkPhase
diff --git a/nixpkgs/pkgs/development/compilers/zulu/8.nix b/nixpkgs/pkgs/development/compilers/zulu/8.nix
index dd1660d9fec7..6fcdacf535b8 100644
--- a/nixpkgs/pkgs/development/compilers/zulu/8.nix
+++ b/nixpkgs/pkgs/development/compilers/zulu/8.nix
@@ -7,7 +7,7 @@
 , setJavaClassPath
 , zulu
 # minimum dependencies
-, alsaLib
+, alsa-lib
 , fontconfig
 , freetype
 , xorg
@@ -49,7 +49,7 @@ in stdenv.mkDerivation {
   };
 
   buildInputs = lib.optionals stdenv.isLinux [
-    alsaLib # libasound.so wanted by lib/libjsound.so
+    alsa-lib # libasound.so wanted by lib/libjsound.so
     fontconfig
     freetype
     stdenv.cc.cc # libstdc++.so.6
@@ -105,5 +105,6 @@ in stdenv.mkDerivation {
     '';
     maintainers = with maintainers; [ fpletz ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    mainProgram = "java";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/zulu/default.nix b/nixpkgs/pkgs/development/compilers/zulu/default.nix
index c7b01877ad54..81edb8b469a8 100644
--- a/nixpkgs/pkgs/development/compilers/zulu/default.nix
+++ b/nixpkgs/pkgs/development/compilers/zulu/default.nix
@@ -7,7 +7,7 @@
 , setJavaClassPath
 , zulu
 # minimum dependencies
-, alsaLib
+, alsa-lib
 , fontconfig
 , freetype
 , zlib
@@ -50,7 +50,7 @@ in stdenv.mkDerivation {
   };
 
   buildInputs = lib.optionals stdenv.isLinux [
-    alsaLib # libasound.so wanted by lib/libjsound.so
+    alsa-lib # libasound.so wanted by lib/libjsound.so
     fontconfig
     freetype
     stdenv.cc.cc # libstdc++.so.6
@@ -108,5 +108,6 @@ in stdenv.mkDerivation {
     '';
     maintainers = with maintainers; [ fpletz ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    mainProgram = "java";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/zz/default.nix b/nixpkgs/pkgs/development/compilers/zz/default.nix
index 81c6e546e95f..a0bf9a9ad8ff 100644
--- a/nixpkgs/pkgs/development/compilers/zz/default.nix
+++ b/nixpkgs/pkgs/development/compilers/zz/default.nix
@@ -14,7 +14,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  cargoSha256 = "0i3c459d4699z4dwvdw1495krdv3c2qpygrsw0cz3j0zd2n5gqj6";
+  cargoSha256 = "03xdmm4993hqdb3cihjjv4n4mdk8lnlccva08fh6m1d56p807rni";
 
   postPatch = ''
     # remove search path entry which would reference /build
diff --git a/nixpkgs/pkgs/development/coq-modules/CoLoR/default.nix b/nixpkgs/pkgs/development/coq-modules/CoLoR/default.nix
index 4c5b6a4f6a9a..46738343431a 100644
--- a/nixpkgs/pkgs/development/coq-modules/CoLoR/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/CoLoR/default.nix
@@ -5,11 +5,13 @@ with lib; mkCoqDerivation {
   owner = "fblanqui";
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
+    {case = range "8.12" "8.13"; out = "1.8.1"; }
     {case = range "8.10" "8.11"; out = "1.7.0"; }
     {case = range "8.8"  "8.9";  out = "1.6.0"; }
     {case = range "8.6"  "8.7";  out = "1.4.0"; }
   ] null;
 
+  release."1.8.1".sha256 = "0knhca9fffmyldn4q16h9265i7ih0h4jhcarq4rkn0wnn7x8w8yw";
   release."1.7.0".rev    = "08b5481ed6ea1a5d2c4c068b62156f5be6d82b40";
   release."1.7.0".sha256 = "1w7fmcpf0691gcwq00lm788k4ijlwz3667zj40j5jjc8j8hj7cq3";
   release."1.6.0".rev    = "328aa06270584b578edc0d2925e773cced4f14c8";
diff --git a/nixpkgs/pkgs/development/coq-modules/VST/default.nix b/nixpkgs/pkgs/development/coq-modules/VST/default.nix
index af560ec49a0b..ad5caec94921 100644
--- a/nixpkgs/pkgs/development/coq-modules/VST/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/VST/default.nix
@@ -7,7 +7,11 @@ with lib; mkCoqDerivation {
   owner = "PrincetonUniversity";
   repo = "VST";
   inherit version;
-  defaultVersion = if coq.coq-version == "8.11" then "2.6" else null;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = range "8.12" "8.13"; out = "2.7.1"; }
+    { case = "8.11"; out = "2.6"; }
+  ] null;
+  release."2.7.1".sha256 = "1674j7bkvihiv19vizm99dp6gj3lryb00zx6a87jz214f3ydcvnj";
   release."2.6".sha256 = "00bf9hl4pvmsqa08lzjs1mrxyfgfxq4k6778pnldmc8ichm90jgk";
   releaseRev = v: "v${v}";
   propagatedBuildInputs = [ compcert ];
diff --git a/nixpkgs/pkgs/development/coq-modules/aac-tactics/default.nix b/nixpkgs/pkgs/development/coq-modules/aac-tactics/default.nix
new file mode 100644
index 000000000000..445a0422446a
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/aac-tactics/default.nix
@@ -0,0 +1,46 @@
+{ lib, mkCoqDerivation, coq, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "aac-tactics";
+
+  releaseRev = v: "v${v}";
+
+  release."8.13.0".sha256 = "sha256-MAnMc4KzC551JInrRcfKED4nz04FO0GyyyuDVRmnYTY=";
+  release."8.12.0".sha256 = "sha256-dPNA19kZo/2t3rbyX/R5yfGcaEfMhbm9bo71Uo4ZwoM=";
+  release."8.11.0".sha256 = "sha256-CKKMiJLltIb38u+ZKwfQh/NlxYawkafp+okY34cGCYU=";
+  release."8.10.0".sha256 = "sha256-Ny3AgfLAzrz3FnoUqejXLApW+krlkHBmYlo3gAG0JsM=";
+  release."8.9.0".sha256 = "sha256-6Pp0dgYEnVaSnkJR/2Cawt5qaxWDpBI4m0WAbQboeWY=";
+  release."8.8.0".sha256 = "sha256-mwIKp3kf/6i9IN3cyIWjoRtW8Yf8cc3MV744zzFM3u4=";
+  release."8.6.1".sha256 = "sha256-PfovQ9xJnzr0eh/tO66yJ3Yp7A5E1SQG46jLIrrbZFg=";
+  release."8.5.0".sha256 = "sha256-7yNxJn6CH5xS5w/zsXfcZYORa6e5/qS9v8PUq2o02h4=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = "8.13"; out = "8.13.0"; }
+    { case = "8.12"; out = "8.12.0"; }
+    { case = "8.11"; out = "8.11.0"; }
+    { case = "8.10"; out = "8.10.0"; }
+    { case = "8.9"; out = "8.9.0"; }
+    { case = "8.8"; out = "8.8.0"; }
+    { case = "8.6"; out = "8.6.1"; }
+    { case = "8.5"; out = "8.5.0"; }
+  ] null;
+
+  mlPlugin = true;
+
+  meta = {
+    description = "Coq plugin providing tactics for rewriting universally quantified equations";
+    longDescription = ''
+      This Coq plugin provides tactics for rewriting universally quantified
+      equations, modulo associativity and commutativity of some operator.
+      The tactics can be applied for custom operators by registering the
+      operators and their properties as type class instances. Many common
+      operator instances, such as for Z binary arithmetic and booleans, are
+      provided with the plugin.
+    '';
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/autosubst/0001-changes-to-work-with-Coq-8.6.patch b/nixpkgs/pkgs/development/coq-modules/autosubst/0001-changes-to-work-with-Coq-8.6.patch
deleted file mode 100644
index dde0e2e03eb6..000000000000
--- a/nixpkgs/pkgs/development/coq-modules/autosubst/0001-changes-to-work-with-Coq-8.6.patch
+++ /dev/null
@@ -1,134 +0,0 @@
-From 5b40a32e35fe446cda20ed34c756a010856f39ce Mon Sep 17 00:00:00 2001
-From: Theo Giannakopoulos <theo.giannakopoulos@baesystems.com>
-Date: Wed, 5 Apr 2017 15:48:55 -0400
-Subject: [PATCH] changes to work with Coq 8.6
-
----
- theories/Autosubst_Derive.v | 12 ++++++++++++
- theories/Autosubst_MMap.v   |  3 ++-
- 2 files changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/theories/Autosubst_Derive.v b/theories/Autosubst_Derive.v
-index 61995de..cf87f67 100644
---- a/theories/Autosubst_Derive.v
-+++ b/theories/Autosubst_Derive.v
-@@ -18,6 +18,7 @@ Hint Extern 0 (Ids _) => derive_Ids : derive.
- 
- Ltac derive_Rename :=
-   match goal with [ |- Rename ?term ] =>
-+    let inst := fresh "inst" in
-     hnf; fix inst 2; change _ with (Rename term) in inst;
-     intros xi s; change (annot term s); destruct s;
-     match goal with
-@@ -66,6 +67,7 @@ Ltac has_var s :=
- Ltac derive_Subst :=
-   match goal with [ |- Subst ?term ] =>
-     require_instance (Rename term);
-+    let inst := fresh "inst" in
-     hnf; fix inst 2; change _ with (Subst term) in inst;
-     intros sigma s; change (annot term s); destruct s;
-     match goal with
-@@ -107,6 +109,7 @@ Hint Extern 0 (Subst _) => derive_Subst : derive.
- Ltac derive_HSubst :=
-   match goal with [ |- HSubst ?inner ?outer ] =>
-     require_instance (Subst inner);
-+    let inst := fresh "inst" in
-     hnf; fix inst 2; change _ with (HSubst inner outer) in inst;
-     intros sigma s; change (annot outer s); destruct s;
-     match goal with
-@@ -327,6 +330,7 @@ Ltac derive_SubstLemmas :=
-      assert (up_upren_n :
-                forall xi n, upn n (ren xi) = ren (iterate upren n xi)) by
-        (apply up_upren_n_internal, up_upren);
-+     let ih := fresh "ih" in
-      fix ih 2; intros xi s; destruct s; try reflexivity; simpl; f_equal;
-      try apply mmap_ext; intros; rewrite ?up_upren, ?up_upren_n; apply ih);
- 
-@@ -337,6 +341,7 @@ Ltac derive_SubstLemmas :=
-        (apply up_id_internal; reflexivity);
-      assert (up_id_n : forall n, upn n ids = ids) by
-        (apply up_id_n_internal, up_id);
-+     let ih := fresh "ih" in
-      fix ih 1; intros s; destruct s; simpl; f_equal; try reflexivity;
-      rewrite ?up_id, ?up_id_n; try apply mmap_id_ext; intros; apply ih);
- 
-@@ -344,6 +349,7 @@ Ltac derive_SubstLemmas :=
- 
-     assert (ren_subst_comp :
-        forall xi sigma (s : term), (rename xi s).[sigma] = s.[xi >>> sigma]) by(
-+     let ih := fresh "ih" in
-      fix ih 3; intros xi sigma s; destruct s; try reflexivity; simpl; f_equal;
-      rewrite ?up_comp_ren_subst, ?up_comp_ren_subst_n, ?mmap_comp;
-      try apply mmap_ext; intros; apply ih);
-@@ -357,6 +363,7 @@ Ltac derive_SubstLemmas :=
-      assert (up_comp_subst_ren_n :
-       forall sigma xi n, upn n (sigma >>> rename xi) = upn n sigma >>> rename (iterate upren n xi))
-       by (apply up_comp_subst_ren_n_internal; apply up_comp_subst_ren);
-+     let ih := fresh "ih" in
-      fix ih 3; intros sigma xi s; destruct s; try reflexivity; simpl;
-      f_equal; rewrite ?up_comp_subst_ren, ?up_comp_subst_ren_n, ?mmap_comp;
-      try (rewrite hcomp_ren_internal; [|apply rename_subst]);
-@@ -368,6 +375,7 @@ Ltac derive_SubstLemmas :=
-       by (apply up_comp_internal; [reflexivity|apply ren_subst_comp|apply subst_ren_comp]);
-      assert (up_comp_n : forall sigma tau n, upn n (sigma >> tau) = upn n sigma >> upn n tau)
-       by (apply up_comp_n_internal; apply up_comp);
-+     let ih := fresh "ih" in
-      fix ih 3; intros sigma tau s; destruct s; try reflexivity; simpl; f_equal;
-      rewrite ?up_comp, ?up_comp_n, ?mmap_comp, ?hcomp_dist_internal;
-      try apply mmap_ext; intros; apply ih);
-@@ -382,6 +390,7 @@ Ltac derive_HSubstLemmas :=
-   let ids := constr:(ids : var -> inner) in
- 
-   assert (hsubst_id : forall (s : outer), s.|[ids] = s) by (
-+    let ih := fresh "ih" in
-     fix ih 1; intros s; destruct s; try reflexivity; simpl; f_equal;
-     rewrite ?up_id, ?up_id_n; try apply mmap_id_ext; intros;
-     (apply subst_id || apply ih)
-@@ -390,6 +399,7 @@ Ltac derive_HSubstLemmas :=
-   assert (hsubst_comp : forall (theta eta : var -> inner) (s : outer),
-     s.|[theta].|[eta] = s.|[theta >> eta])
-   by (
-+    let ih := fresh "ih" in
-     fix ih 3; intros sigma tau s; destruct s; try reflexivity; simpl; f_equal;
-     rewrite <- ?up_comp, <- ?up_comp_n, ?mmap_comp; try apply mmap_ext; intros;
-     (apply subst_comp || apply ih)
-@@ -405,6 +415,7 @@ Ltac derive_SubstHSubstComp :=
-   assert (ren_hsubst_comp : forall xi (theta : var -> inner) (s : outer),
-     rename xi s.|[theta] = (rename xi s).|[theta]
-   ) by (
-+    let ih := fresh "ih" in
-     fix ih 3; intros xi theta s; destruct s; try reflexivity; simpl; f_equal;
-     rewrite ?mmap_comp; try apply mmap_ext; intros; simpl; apply ih
-   );
-@@ -421,6 +432,7 @@ Ltac derive_SubstHSubstComp :=
-     apply up_hcomp_n_internal; apply up_hcomp
-   );
- 
-+  let ih := fresh "ih" in
-   fix ih 3; intros sigma tau s; destruct s; try reflexivity; simpl; f_equal;
-   rewrite ?up_hcomp, ?up_hcomp_n, ?hcomp_lift_n_internal, ?mmap_comp;
-   try apply mmap_ext; intros; apply ih
-diff --git a/theories/Autosubst_MMap.v b/theories/Autosubst_MMap.v
-index f8387e7..7af7902 100644
---- a/theories/Autosubst_MMap.v
-+++ b/theories/Autosubst_MMap.v
-@@ -23,7 +23,7 @@ Arguments mmap {A B _} f !s /.
- Class MMapExt (A B : Type) `{MMap A B} := 
-   mmap_ext : forall f g,
-     (forall t, f t = g t) -> forall s, mmap f s = mmap g s.
--Arguments mmap_ext {A B _ _ f g} H s.
-+Arguments mmap_ext {A B H' _ f g} H s : rename.
- 
- Class MMapLemmas (A B : Type) `{MMap A B} := {
-   mmap_id x : mmap id x = x;
-@@ -123,6 +123,7 @@ Tactic Notation "msimpl" "in" "*" := (in_all msimplH); msimpl.
- 
- Ltac derive_MMap :=
-   hnf; match goal with [ |- (?A -> ?A) -> ?B -> ?B ] =>
-+    let map := fresh "map" in
-     intros f; fix map 1; intros xs; change (annot B xs); destruct xs;
-     match goal with
-       | [ |- annot _ ?ys ] =>
--- 
-2.13.2
-
diff --git a/nixpkgs/pkgs/development/coq-modules/autosubst/default.nix b/nixpkgs/pkgs/development/coq-modules/autosubst/default.nix
index b2609d5dfc32..a5f7cbb2f0b1 100644
--- a/nixpkgs/pkgs/development/coq-modules/autosubst/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/autosubst/default.nix
@@ -1,22 +1,23 @@
-{ lib, mkCoqDerivation, coq, mathcomp, version ? null }:
+{ lib, mkCoqDerivation, coq, mathcomp-ssreflect, version ? null }:
+with lib;
 
-with lib; mkCoqDerivation {
-  pname   = "autosubst";
-  owner   = "uds-psl";
-  inherit version;
-  defaultVersion = with versions;
-    if range "8.5" "8.7" coq.coq-version then "5b40a32e" else null;
+mkCoqDerivation {
+  pname = "autosubst";
 
-  release."5b40a32e".rev    = "1c3bb3bbf5477e3b33533a0fc090399f45fe3034";
-  release."5b40a32e".sha256 = "1wqfzc9az85fvx71xxfii502jgc3mp0r3xwfb8vnb03vkk625ln0";
+  release."1.7".rev    = "v1.7";
+  release."1.7".sha256 = "sha256-qoyteQ5W2Noxf12uACOVeHhPLvgmTzrvEo6Ts+FKTGI=";
 
-  propagatedBuildInputs = [ mathcomp.ssreflect ];
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.10"; out = "1.7"; }
+  ] null;
 
-  patches = [./0001-changes-to-work-with-Coq-8.6.patch];
+  propagatedBuildInputs = [ mathcomp-ssreflect ];
 
   meta = {
     homepage = "https://www.ps.uni-saarland.de/autosubst/";
     description = "Automation for de Bruijn syntax and substitution in Coq";
-    maintainers = with maintainers; [ jwiegley ];
+    maintainers = with maintainers; [ siraben jwiegley ];
+    license = licenses.mit;
   };
 }
diff --git a/nixpkgs/pkgs/development/coq-modules/coq-elpi/default.nix b/nixpkgs/pkgs/development/coq-modules/coq-elpi/default.nix
index 0aff0e3b54d4..5bf0cd8f8351 100644
--- a/nixpkgs/pkgs/development/coq-modules/coq-elpi/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/coq-elpi/default.nix
@@ -4,7 +4,7 @@ with builtins; with lib; let
   elpi = coq.ocamlPackages.elpi.override (lib.switch coq.coq-version [
     { case = "8.11"; out = { version = "1.11.4"; };}
     { case = "8.12"; out = { version = "1.12.0"; };}
-    { case = "8.13"; out = { version = "1.13.1"; };}
+    { case = "8.13"; out = { version = "1.13.5"; };}
   ] {});
 in mkCoqDerivation {
   pname = "elpi";
@@ -12,10 +12,11 @@ in mkCoqDerivation {
   owner = "LPCIC";
   inherit version;
   defaultVersion = lib.switch coq.coq-version [
-    { case = "8.13"; out = "1.9.7"; }
+    { case = "8.13"; out = "1.10.1"; }
     { case = "8.12"; out = "1.8.3_8.12"; }
     { case = "8.11"; out = "1.6.3_8.11"; }
   ] null;
+  release."1.10.1".sha256      = "1zsyx26dvj7pznfd2msl2w7zbw51q1nsdw0bdvdha6dga7ijf7xk";
   release."1.9.7".sha256      = "0rvn12h9dpk9s4pxy32p8j0a1h7ib7kg98iv1cbrdg25y5vs85n1";
   release."1.9.5".sha256      = "0gjdwmb6bvb5gh0a6ra48bz5fb3pr5kpxijb7a8mfydvar5i9qr6";
   release."1.9.4".sha256      = "0nii7238mya74f9g6147qmpg6gv6ic9b54x5v85nb6q60d9jh0jq";
@@ -46,6 +47,6 @@ in mkCoqDerivation {
   meta = {
     description = "Coq plugin embedding ELPI.";
     maintainers = [ maintainers.cohencyril ];
-    license = licenses.lgpl21;
+    license = licenses.lgpl21Plus;
   };
 }
diff --git a/nixpkgs/pkgs/development/coq-modules/coqeal/default.nix b/nixpkgs/pkgs/development/coq-modules/coqeal/default.nix
index 4c978a791db8..615c200c633e 100644
--- a/nixpkgs/pkgs/development/coq-modules/coqeal/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/coqeal/default.nix
@@ -7,10 +7,12 @@ with lib; mkCoqDerivation {
   owner = "CoqEAL";
   inherit version;
   defaultVersion = with versions; switch [ coq.version mathcomp.version ]  [
+      { cases = [ (isGe "8.10") (range "1.11.0" "1.12.0") ]; out = "1.0.5"; }
       { cases = [ (isGe "8.7") "1.11.0" ]; out = "1.0.4"; }
       { cases = [ (isGe "8.7") "1.10.0" ]; out = "1.0.3"; }
     ] null;
 
+  release."1.0.5".sha256 = "0cmvky8glb5z2dy3q62aln6qbav4lrf2q1589f6h1gn5bgjrbzkm";
   release."1.0.4".sha256 = "1g5m26lr2lwxh6ld2gykailhay4d0ayql4bfh0aiwqpmmczmxipk";
   release."1.0.3".sha256 = "0hc63ny7phzbihy8l7wxjvn3haxx8jfnhi91iw8hkq8n29i23v24";
 
diff --git a/nixpkgs/pkgs/development/coq-modules/coqprime/default.nix b/nixpkgs/pkgs/development/coq-modules/coqprime/default.nix
index 79db14610758..d738041d5d23 100644
--- a/nixpkgs/pkgs/development/coq-modules/coqprime/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/coqprime/default.nix
@@ -6,7 +6,7 @@ with lib; mkCoqDerivation {
   owner = "thery";
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
-    { case = "8.12";              out = "8.12"; }
+    { case = range "8.12" "8.13"; out = "8.12"; }
     { case = range "8.10" "8.11"; out = "8.10"; }
     { case = range "8.8"  "8.9";  out = "8.8"; }
     { case = "8.7";               out = "8.7.2"; }
diff --git a/nixpkgs/pkgs/development/coq-modules/goedel/default.nix b/nixpkgs/pkgs/development/coq-modules/goedel/default.nix
new file mode 100644
index 000000000000..f6ed9491e98c
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/goedel/default.nix
@@ -0,0 +1,24 @@
+{ lib, mkCoqDerivation, coq, hydra-battles, pocklington, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "goedel";
+  owner = "coq-community";
+
+  release."8.12.0".rev    = "v8.12.0";
+  release."8.12.0".sha256 = "sha256-4lAwWFHGUzPcfHI9u5b+N+7mQ0sLJ8bH8beqQubfFEQ=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.11"; out = "8.12.0"; }
+  ] null;
+
+  propagatedBuildInputs = [ hydra-battles pocklington ];
+
+  meta = {
+    description = "The Gödel-Rosser 1st incompleteness theorem in Coq";
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/hydra-battles/default.nix b/nixpkgs/pkgs/development/coq-modules/hydra-battles/default.nix
new file mode 100644
index 000000000000..a74eec4b64fc
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/hydra-battles/default.nix
@@ -0,0 +1,29 @@
+{ lib, mkCoqDerivation, coq, mathcomp, equations, paramcoq, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "hydra-battles";
+  owner = "coq-community";
+
+  release."0.3".rev    = "v0.3";
+  release."0.3".sha256 = "sha256-rXP/vJqVEg2tN/I9LWV13YQ1+C7M6lzGu3oI+7pSZzg=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.11"; out = "0.3"; }
+  ] null;
+
+  propagatedBuildInputs = [ mathcomp equations paramcoq ];
+
+  meta = {
+    description = "Variations on Kirby & Paris' hydra battles and other entertaining math in Coq";
+    longDescription = ''
+       Variations on Kirby & Paris' hydra battles and other
+       entertaining math in Coq (collaborative, documented, includes
+       exercises)
+    '';
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/interval/default.nix b/nixpkgs/pkgs/development/coq-modules/interval/default.nix
index 8671eba67241..cdb904523651 100644
--- a/nixpkgs/pkgs/development/coq-modules/interval/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/interval/default.nix
@@ -1,6 +1,4 @@
-{ lib, mkCoqDerivation, which, autoconf
-, coq, coquelicot, flocq, mathcomp
-, bignums ? null, version ? null }:
+{ lib, mkCoqDerivation, which, autoconf, coq, coquelicot, flocq, bignums ? null, version ? null }:
 
 with lib; mkCoqDerivation {
   pname = "interval";
@@ -8,12 +6,12 @@ with lib; mkCoqDerivation {
   domain = "gitlab.inria.fr";
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
-    { case = isGe "8.8" ;        out = "4.1.0"; }
+    { case = isGe "8.8" ;        out = "4.1.1"; }
     { case = range "8.8" "8.12"; out = "4.0.0"; }
     { case = range "8.7" "8.11"; out = "3.4.2"; }
     { case = range "8.5" "8.6";  out = "3.3.0"; }
   ] null;
-  release."4.1.0".sha256 = "1jv27n5c4f3a9d8sizraa920iqi35x8cik8lm7pjp1dkiifz47nb";
+  release."4.1.1".sha256 = "sha256-h2NJ6sZt1C/88v7W2xyuftEDoyRt3H6kqm5g2hc1aoU=";
   release."4.0.0".sha256 = "1hhih6zmid610l6c8z3x4yzdzw9jniyjiknd1vpkyb2rxvqm3gzp";
   release."3.4.2".sha256 = "07ngix32qarl3pjnm9d0vqc9fdrgm08gy7zp306hwxjyq7h1v7z0";
   release."3.3.0".sha256 = "0lz2hgggzn4cvklvm8rpaxvwaryf37i8mzqajqgdxdbd8f12acsz";
diff --git a/nixpkgs/pkgs/development/coq-modules/mathcomp-zify/default.nix b/nixpkgs/pkgs/development/coq-modules/mathcomp-zify/default.nix
new file mode 100644
index 000000000000..65af999d08f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/mathcomp-zify/default.nix
@@ -0,0 +1,22 @@
+{ lib, mkCoqDerivation, coq, mathcomp-algebra, version ? null }:
+
+with lib; mkCoqDerivation rec {
+  pname = "mathcomp-zify";
+  repo = "mczify";
+  owner = "math-comp";
+  inherit version;
+
+  defaultVersion = with versions;
+     switch [ coq.coq-version mathcomp-algebra.version ] [
+       { cases = [ (isEq "8.13") (isEq "1.12") ]; out = "1.0.0+1.12+8.13"; }
+     ] null;
+
+  release."1.0.0+1.12+8.13".sha256 = "1j533vx6lacr89bj1bf15l1a0s7rvrx4l00wyjv99aczkfbz6h6k";
+
+  propagatedBuildInputs = [ mathcomp-algebra ];
+
+  meta = {
+    description = "Micromega tactics for Mathematical Components";
+    maintainers = with maintainers; [ cohencyril ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/metalib/default.nix b/nixpkgs/pkgs/development/coq-modules/metalib/default.nix
index 3ce3c625d268..14f1bab574ad 100644
--- a/nixpkgs/pkgs/development/coq-modules/metalib/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/metalib/default.nix
@@ -4,7 +4,7 @@ with lib; mkCoqDerivation {
   pname = "metalib";
   owner = "plclub";
   inherit version;
-  defaultVersion = if versions.range "8.10" "8.12" coq.coq-version then "20200527" else null;
+  defaultVersion = if versions.range "8.10" "8.13" coq.coq-version then "20200527" else null;
   release."20200527".rev    = "597fd7d0c93eb159274e84a39d554f10f1efccf8";
   release."20200527".sha256 = "0wbypc05d2lqfm9qaw98ynr5yc1p0ipsvyc3bh1rk9nz7zwirmjs";
 
diff --git a/nixpkgs/pkgs/development/coq-modules/paramcoq/default.nix b/nixpkgs/pkgs/development/coq-modules/paramcoq/default.nix
index 342e4225a3c2..8f2ef30d37cc 100644
--- a/nixpkgs/pkgs/development/coq-modules/paramcoq/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/paramcoq/default.nix
@@ -3,9 +3,10 @@
 with lib; mkCoqDerivation {
   pname = "paramcoq";
   inherit version;
-  defaultVersion = if versions.range "8.7" "8.12" coq.coq-version
+  defaultVersion = if versions.range "8.7" "8.13" coq.coq-version
     then "1.1.2+coq${coq.coq-version}" else null;
   displayVersion = { paramcoq = "1.1.2"; };
+  release."1.1.2+coq8.13".sha256 = "02vnf8p04ynf3qk8myvjzsbga15395235mpdpj54pvxis3h5qq22";
   release."1.1.2+coq8.12".sha256 = "0qd72r45if4h7c256qdfiimv75zyrs0w0xqij3m866jxaq591v4i";
   release."1.1.2+coq8.11".sha256 = "09c6813988nvq4fpa45s33k70plnhxsblhm7cxxkg0i37mhvigsa";
   release."1.1.2+coq8.10".sha256 = "1lq1mw15w4yky79qg3rm0mpzqi2ir51b6ak04ismrdr7ixky49y8";
diff --git a/nixpkgs/pkgs/development/coq-modules/pocklington/default.nix b/nixpkgs/pkgs/development/coq-modules/pocklington/default.nix
new file mode 100644
index 000000000000..111bffeca2c9
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/pocklington/default.nix
@@ -0,0 +1,22 @@
+{ lib, mkCoqDerivation, coq, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "pocklington";
+  owner = "coq-community";
+
+  release."8.12.0".rev    = "v8.12.0";
+  release."8.12.0".sha256 = "sha256-0xBrw9+4g14niYdNqp0nx00fPJoSSnaDSDEaIVpPfjs=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.7"; out = "8.12.0"; }
+  ] null;
+
+  meta = {
+    description = "Pocklington's criterion for primality in Coq";
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/reglang/default.nix b/nixpkgs/pkgs/development/coq-modules/reglang/default.nix
new file mode 100644
index 000000000000..bc18108264a1
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/reglang/default.nix
@@ -0,0 +1,25 @@
+{ lib, mkCoqDerivation, coq, ssreflect, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "reglang";
+
+  releaseRev = v: "v${v}";
+
+  release."1.1.2".sha256 = "sha256-SEnMilLNxh6a3oiDNGLaBr8quQ/nO2T9Fwdf/1il2Yk=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = range "8.10" "8.13"; out = "1.1.2"; }
+  ] null;
+
+
+  propagatedBuildInputs = [ ssreflect ];
+
+  meta = {
+    description = "Regular Language Representations in Coq";
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.cecill-b;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/relation-algebra/default.nix b/nixpkgs/pkgs/development/coq-modules/relation-algebra/default.nix
new file mode 100644
index 000000000000..da74215d537f
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/relation-algebra/default.nix
@@ -0,0 +1,35 @@
+{ lib, mkCoqDerivation, coq, aac-tactics, mathcomp, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "relation-algebra";
+  owner = "damien-pous";
+
+  releaseRev = v: "v${v}";
+
+  release."1.7.5".sha256 = "sha256-XdO8agoJmNXPv8Ho+KTlLCB4oRlQsb0w06aM9M16ZBU=";
+  release."1.7.4".sha256 = "sha256-o+v2CIAa2+9tJ/V8DneDTf4k31KMHycgMBLaQ+A4ufM=";
+  release."1.7.3".sha256 = "sha256-4feSNfi7h4Yhwn5L+9KP9K1S7HCPvsvaVWwoQSTFvos=";
+  release."1.7.2".sha256 = "sha256-f4oNjXspNMEz3AvhIeYO3avbUa1AThoC9DbcHMb5A2o=";
+  release."1.7.1".sha256 = "sha256-WWVMcR6z8rT4wzZPb8SlaVWGe7NC8gScPqawd7bltQA=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.13"; out = "1.7.5"; }
+    { case = isGe "8.12"; out = "1.7.4"; }
+    { case = isGe "8.11"; out = "1.7.3"; }
+    { case = isGe "8.10"; out = "1.7.2"; }
+    { case = isGe "8.9"; out = "1.7.1"; }
+  ] null;
+
+  mlPlugin = true;
+
+  propagatedBuildInputs = [ aac-tactics mathcomp.ssreflect ];
+
+  meta = {
+    description = "Relation algebra library for Coq";
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/topology/default.nix b/nixpkgs/pkgs/development/coq-modules/topology/default.nix
new file mode 100644
index 000000000000..b4367f0a8fcc
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/topology/default.nix
@@ -0,0 +1,38 @@
+{ lib, mkCoqDerivation, coq, mathcomp, zorns-lemma, version ? null }:
+with lib;
+
+mkCoqDerivation rec {
+  pname = "topology";
+
+  releaseRev = v: "v${v}";
+
+  release."8.12.0".sha256 = "sha256-ypHmHwzwZ6MQPYwuS3QyZmVOEPUCSbO2lhVaA6TypgQ=";
+  release."8.10.0".sha256 = "sha256-mCLF3JYIiO3AEW9yvlcLeF7zN4SjW3LG+Y5vYB0l55A=";
+  release."8.9.0".sha256 = "sha256-ZJh1BM34iZOQ75zqLIA+KtBjO2y33y0UpAw/ydCWQYc=";
+  release."8.8.0".sha256 = "sha256-Yfm3UymEP1e+BKMNPhdRFLdFhynMirtQ8E0HXnRiqHU=";
+  release."8.7.0".sha256 = "sha256-qcZQKvMRs5wWIAny8ciF9TrmEQfKKO9fWhwIRL+s7VA=";
+  release."8.6.0".sha256 = "sha256-eu/dBEFo3y6vnXlJljUD4hds6+qgAPQVvsuspyGHcj8=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.12"; out = "8.12.0"; }
+    { case = "8.11"; out = "8.12.0"; }
+    { case = "8.10"; out = "8.10.0"; }
+    { case = "8.9"; out = "8.9.0"; }
+    { case = "8.8"; out = "8.8.0"; }
+    { case = "8.7"; out = "8.7.0"; }
+    { case = "8.6"; out = "8.6.0"; }
+  ] null;
+
+  propagatedBuildInputs = optional (versions.isLe "8.12" defaultVersion) zorns-lemma;
+
+  meta = {
+    description = "General topology in Coq";
+    longDescription = ''
+      This library develops some of the basic concepts and results of
+      general topology in Coq.
+    '';
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.lgpl21Plus;
+  };
+}
diff --git a/nixpkgs/pkgs/development/coq-modules/zorns-lemma/default.nix b/nixpkgs/pkgs/development/coq-modules/zorns-lemma/default.nix
new file mode 100644
index 000000000000..84c3fd805197
--- /dev/null
+++ b/nixpkgs/pkgs/development/coq-modules/zorns-lemma/default.nix
@@ -0,0 +1,38 @@
+{ lib, mkCoqDerivation, coq, version ? null }:
+with lib;
+
+mkCoqDerivation {
+  pname = "zorns-lemma";
+
+  releaseRev = v: "v${v}";
+
+  release."8.11.0".sha256 = "sha256-2Hf7YwRcFmP/DqwFtF1p78MCNV50qUWfMVQtZbwKd0k=";
+  release."8.10.0".sha256 = "sha256-qLPLK2ZLJQ4SmJX2ADqFiP4kgHuQFJTeNXkBbjiFS+4=";
+  release."8.9.0".sha256 = "sha256-lEh978cXehglFX9D92RVltEuvN8umfPo/hvmFZm2NGo=";
+  release."8.8.0".sha256 = "sha256-ikXGzABu8VW7O0xNtCNvIq29c+mlDUm4k/ygVcsgDOI=";
+  release."8.7.0".sha256 = "sha256-jozvkkKLFBllN6K4oeYD0lNG+MdnOuKrDUPDocHUG6c=";
+  release."8.6.0".sha256 = "sha256-jozvkkKLFBllN6K4oeYD0lNG+MdnOuKrDUPDocHUG6c=";
+  release."8.5.0".sha256 = "sha256-mH/v02ObMjbVPYx2H+Jhz+Xp0XRKN67iMAdA1VNFzso=";
+
+  inherit version;
+  defaultVersion = with versions; switch coq.coq-version [
+    { case = isGe "8.11"; out = "8.11.0"; }
+    { case = "8.10"; out = "8.10.0"; }
+    { case = "8.9"; out = "8.9.0"; }
+    { case = "8.8"; out = "8.8.0"; }
+    { case = "8.7"; out = "8.7.0"; }
+    { case = "8.6"; out = "8.6.0"; }
+    { case = "8.5"; out = "8.5.0"; }
+  ] null;
+
+  meta = {
+    description = "Development of basic set theory";
+    longDescription = ''
+      This Coq library develops some basic set theory.  The main
+      purpose the author had in writing it was as support for the
+      Topology library.
+    '';
+    maintainers = with maintainers; [ siraben ];
+    license = licenses.lgpl21Plus;
+  };
+}
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/create_deps.sh b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/create_deps.sh
index f3cdcbc0c108..37f0585d1fef 100755
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/create_deps.sh
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/create_deps.sh
@@ -4,6 +4,8 @@
 # Run this script to generate deps.nix
 # ./create_deps.sh /path/to/microsoft/python/language/server/source/checkout
 
+set -euo pipefail
+
 SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 
 if [ -d "$1" ]; then
@@ -14,13 +16,13 @@ else
 fi
 
 # Generate lockfiles in source checkout
-cd $CHECKOUT_PATH/src
+cd "$CHECKOUT_PATH/src"
 dotnet nuget locals all --clear
 dotnet restore -v normal --no-cache PLS.sln --use-lock-file -r linux-x64
 
 # Use the lockfiles to make a file with two columns: name and version number
 # for all possible package dependencies
-cd $SCRIPTDIR
+cd "$SCRIPTDIR"
 echo "" > all_versions.txt
 for lockfile in $(find "$CHECKOUT_PATH" -name packages.lock.json); do
     echo "Processing lockfile $lockfile"
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
index 526e93f84c42..6502890af2be 100644
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
@@ -11,7 +11,7 @@
 
 let deps = import ./deps.nix { inherit fetchurl; };
 
-    version = "2020-06-19";
+    version = "2020-10-08";
 
     # Build the nuget source needed for the later build all by itself
     # since it's a time-consuming step that only depends on ./deps.nix.
@@ -49,8 +49,8 @@ stdenv.mkDerivation {
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "python-language-server";
-    rev = "838ba78e00173d639bd90f54d8610ec16b4ba3a2";
-    sha256 = "0nj8l1apcb67gqwy5i49v0f01fs4lvdfmmp4w2hvrpss9if62c1m";
+    rev = "76a29da373a4bb1e81b052f25802f3ca872d0a67";
+    sha256 = "16jb90lacdrhi4dpp084bqzx351mv23f4mhl4lz5h6rkfzj5jxgg";
   };
 
   buildInputs = [dotnet-sdk_3 openssl icu];
@@ -62,6 +62,8 @@ stdenv.mkDerivation {
   ];
 
   buildPhase = ''
+    runHook preBuild
+
     mkdir home
     export HOME=$(mktemp -d)
     export DOTNET_CLI_TELEMETRY_OPTOUT=1
@@ -75,14 +77,20 @@ stdenv.mkDerivation {
     pushd src/LanguageServer/Impl
     dotnet publish --no-restore -c Release -r linux-x64
     popd
+
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out
     cp -r output/bin/Release/linux-x64/publish $out/lib
 
     mkdir $out/bin
     makeWrapper $out/lib/Microsoft.Python.LanguageServer $out/bin/python-language-server
+
+    runHook postInstall
   '';
 
   postFixup = ''
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/deps.nix b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/deps.nix
index 6a494e7e5214..899f38d256dd 100644
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/deps.nix
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/deps.nix
@@ -47,18 +47,6 @@ in [
   })
 
   (fetchNuGet {
-    name = "Microsoft.AspNetCore.App.Ref";
-    version = "3.0.1";
-    sha256 = "0k2ry757qhm99xwm0wh4zalxn9nmxhfswd184z1fjr42szr511fb";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.AspNetCore.App.Runtime.linux-x64";
-    version = "3.0.3";
-    sha256 = "1jcqy8i9fzb1pmkazi80yqr09zi5nk30n57i46ggr5ky45jngfq9";
-  })
-
-  (fetchNuGet {
     name = "Microsoft.AspNetCore.App.Runtime.linux-x64";
     version = "3.1.8";
     sha256 = "140zr3nwkmf6xc52gq4iz6ycyh95fxy0jpgn637pkd9z423z8135";
@@ -72,8 +60,8 @@ in [
 
   (fetchNuGet {
     name = "Microsoft.CodeCoverage";
-    version = "16.5.0";
-    sha256 = "0610wzn4qyywf9lb4538vwqhprxc4g0g7gjbmnjzvx97jr5nd5mf";
+    version = "16.7.1";
+    sha256 = "1farw63445cdyciplfs6l9j1gayxw16rkzmrwsiswfyjhqz70xd4";
   })
 
   (fetchNuGet {
@@ -84,38 +72,8 @@ in [
 
   (fetchNuGet {
     name = "Microsoft.Extensions.FileSystemGlobbing";
-    version = "3.1.2";
-    sha256 = "1zwvzp0607irs7irfbq8vnclg5nj2jpyggw9agm4a32la5ngg27m";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.NetCore.App.Host.linux-x64";
-    version = "3.0.3";
-    sha256 = "19igfvwsjzwkh90gqzabl6pdkyygslj2iwpsxg680phffzr411w4";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.NetCore.App.Host.linux-x64";
     version = "3.1.8";
-    sha256 = "0iawz5mqaf1c4r5cf0ks4wqhgpbqi185l80q4909axh516xsjnvs";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.NetCore.App.Ref";
-    version = "3.0.0";
-    sha256 = "1qi382157ln7yngazvr3nskpjkab4x8sqx11l13xyg56vyyjyyiw";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.NetCore.App.Ref";
-    version = "3.1.0";
-    sha256 = "08svsiilx9spvjamcnjswv0dlpdrgryhr3asdz7cvnl914gjzq4y";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.NetCore.App.Runtime.linux-x64";
-    version = "3.0.3";
-    sha256 = "1ykgfnphbkyck0gqbbh5n96w59z2bq47g896ygal1j4nblj3s44v";
+    sha256 = "1v2lr0vbssqayzgxvdwb54jmvz7mvlih4l9h7i71gm3c62nlbq8y";
   })
 
   (fetchNuGet {
@@ -138,8 +96,8 @@ in [
 
   (fetchNuGet {
     name = "Microsoft.NETCore.Platforms";
-    version = "2.0.0";
-    sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0";
+    version = "3.0.0";
+    sha256 = "1bk8r4r3ihmi6322jmcag14jmw11mjqys202azqjzglcx59pxh51";
   })
 
   (fetchNuGet {
@@ -156,44 +114,38 @@ in [
 
   (fetchNuGet {
     name = "Microsoft.NET.Test.Sdk";
-    version = "16.5.0";
-    sha256 = "19f5bvzci5mmfz81jwc4dax4qdf7w4k67n263383mn8mawf22bfq";
+    version = "16.7.1";
+    sha256 = "0yqxipj74ax2n76w9ccydppx78ym8m5fda88qnvj4670qjvl0kf8";
   })
 
   (fetchNuGet {
     name = "Microsoft.TestPlatform.ObjectModel";
-    version = "16.5.0";
-    sha256 = "02h7j1fr0fwcggn0wgddh59k8b2wmly3snckwhswzqvks5rvfnnw";
+    version = "16.7.1";
+    sha256 = "0s9dyh99gzdpk1i5v468i2r9m6i3jrr41r394pwdwiajsz99kay0";
   })
 
   (fetchNuGet {
     name = "Microsoft.TestPlatform.TestHost";
-    version = "16.5.0";
-    sha256 = "08cvss66lqa92h55dxkbrzn796jckhlyj53zz22x3qyr6xi21v5v";
+    version = "16.7.1";
+    sha256 = "1xik06rxn9ps83in0zn9vcl2ibv3acmdqvrx07qq89lxj1sgqlhs";
   })
 
   (fetchNuGet {
     name = "Microsoft.VisualStudio.Threading";
-    version = "16.4.33";
-    sha256 = "09djx2xz22w48csd0bkpwi1rgpjpaj3mml16wfy8jlsnc66swmnh";
+    version = "16.5.132";
+    sha256 = "05lngndl6hg4v3vk9l1n1g2lbfjb7jnr5dnkjld9wx3vamdfcfxw";
   })
 
   (fetchNuGet {
     name = "Microsoft.VisualStudio.Threading";
-    version = "16.4.45";
-    sha256 = "16p61kxsnwanp3nac0gkarl7a94c02qyqjzdkijl5va9k3fa97m6";
+    version = "16.6.13";
+    sha256 = "0qbvcwy7njz5zpqgfqdf41gf9xqcz64z4rkfjf6bi4zynpkv6n1l";
   })
 
   (fetchNuGet {
     name = "Microsoft.VisualStudio.Threading.Analyzers";
-    version = "16.4.45";
-    sha256 = "12m0f037pz3ynm69810p4c96nrlnqihx6w4qyrs0kqsxiajf16jc";
-  })
-
-  (fetchNuGet {
-    name = "Microsoft.VisualStudio.Validation";
-    version = "15.3.15";
-    sha256 = "1v3r2rlichlvxjrmj1grii1blnl9lp9npg2p6q3q4j6lamskxa9r";
+    version = "16.6.13";
+    sha256 = "09nqkjnarwj0chb6xrzscq98mpgi86n2a3mfdd3y695kviq99s18";
   })
 
   (fetchNuGet {
@@ -210,8 +162,8 @@ in [
 
   (fetchNuGet {
     name = "Microsoft.Win32.Registry";
-    version = "4.5.0";
-    sha256 = "1zapbz161ji8h82xiajgriq6zgzmb1f3ar517p2h63plhsq5gh2q";
+    version = "4.6.0";
+    sha256 = "0i4y782yrqqyx85pg597m20gm0v126w0j9ddk5z7xb3crx4z9f2s";
   })
 
   (fetchNuGet {
@@ -222,20 +174,20 @@ in [
 
   (fetchNuGet {
     name = "MSTest.TestAdapter";
-    version = "2.1.0";
-    sha256 = "1g1v8yjnk4nr1c36k3cz116889bnpiw1i1jkmqnpb19wms7sq7cz";
+    version = "2.1.2";
+    sha256 = "1390nyc0sf5c4j75cq58bzqjcw77sp2lmpllmm5sp8ysi0fjyfs5";
   })
 
   (fetchNuGet {
     name = "MSTest.TestFramework";
-    version = "2.1.0";
-    sha256 = "0mac4h7ylw953chclhz0lrn19yks3bab9dn9x9fpjqi7309gid0p";
+    version = "2.1.2";
+    sha256 = "1617q2accpa8fwy9n1snmjxyx2fz3phks62mdi45cl65kdin0x4z";
   })
 
   (fetchNuGet {
     name = "Nerdbank.Streams";
-    version = "2.4.60";
-    sha256 = "01554nbs6dj4fjd59b95kaw84j27kfb5y5ixjbl23nh62kpgrd3r";
+    version = "2.5.76";
+    sha256 = "017h8m1zrm247alhlz4vqsz580b8b88s50cyxb939hmc2nn0qlfv";
   })
 
   (fetchNuGet {
@@ -276,8 +228,8 @@ in [
 
   (fetchNuGet {
     name = "NSubstitute";
-    version = "4.2.1";
-    sha256 = "0wgfjh032qds994fmgxvsg88nhgjrx7p9rnv6z678jm62qi14asy";
+    version = "4.2.2";
+    sha256 = "1zi1z5i61c2nq8p3jwbkca28yaannrvv6g6q5mmz1775apmfyh79";
   })
 
   (fetchNuGet {
@@ -600,8 +552,8 @@ in [
 
   (fetchNuGet {
     name = "StreamJsonRpc";
-    version = "2.3.103";
-    sha256 = "0z8ahxkbbrzsn56ylzlciriiid4bslf6y1rk49wzahwpvzlik1iw";
+    version = "2.5.46";
+    sha256 = "0rsgxfxcfgbx1w2jhllx1cwnbj9vra6034gv4kgzahh0v5vn8shf";
   })
 
   (fetchNuGet {
@@ -804,14 +756,8 @@ in [
 
   (fetchNuGet {
     name = "System.IO.Pipelines";
-    version = "4.5.3";
-    sha256 = "1z44vn1qp866lkx78cfqdd4vs7xn1hcfn7in6239sq2kgf5qiafb";
-  })
-
-  (fetchNuGet {
-    name = "System.IO.Pipelines";
-    version = "4.6.0";
-    sha256 = "0r9ygjbxpyi6jgb67qnpbp42b7yvvhgmcjxnb50k3lb416claavh";
+    version = "4.7.0";
+    sha256 = "1cx6bl2bhzp30ahy2csnwbphmlwwp840j56wgab105xc32la0mg4";
   })
 
   (fetchNuGet {
@@ -1080,8 +1026,8 @@ in [
 
   (fetchNuGet {
     name = "System.Security.AccessControl";
-    version = "4.5.0";
-    sha256 = "1wvwanz33fzzbnd2jalar0p0z3x0ba53vzx1kazlskp7pwyhlnq0";
+    version = "4.6.0";
+    sha256 = "1wl1dyghi0qhpap1vgfhg2ybdyyhy9vc2a7dpm1xb30vfgmlkjmf";
   })
 
   (fetchNuGet {
@@ -1146,8 +1092,8 @@ in [
 
   (fetchNuGet {
     name = "System.Security.Principal.Windows";
-    version = "4.5.0";
-    sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86";
+    version = "4.6.0";
+    sha256 = "1jmfzfz1n8hp63s5lja5xxpzkinbp6g59l3km9h8avjiisdrg5wm";
   })
 
   (fetchNuGet {
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/manual_deps.txt b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/manual_deps.txt
index 169ddfbb7b51..ec49eee7e9cf 100644
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/manual_deps.txt
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/manual_deps.txt
@@ -1,14 +1,2 @@
-Microsoft.AspNetCore.App.Runtime.linux-x64 3.1.3
-Microsoft.AspNetCore.App.Ref 3.0.1
-Microsoft.AspNetCore.App.Runtime.linux-x64 3.1.2
-Microsoft.AspNetCore.App.Runtime.linux-x64 3.0.3
-Microsoft.AspNetCore.App.Runtime.linux-x64 3.0.2
-Microsoft.NetCore.App.Ref 3.1.0
-Microsoft.NetCore.App.Ref 3.0.0
-Microsoft.NetCore.App.Runtime.linux-x64 3.1.3
-Microsoft.NetCore.App.Runtime.linux-x64 3.1.2
-Microsoft.NetCore.App.Runtime.linux-x64 3.0.2
-Microsoft.NetCore.App.Runtime.linux-x64 3.0.3
-Microsoft.NetCore.App.Host.linux-x64 3.1.3
-Microsoft.NetCore.App.Host.linux-x64 3.0.2
-Microsoft.NetCore.App.Host.linux-x64 3.0.3
+Microsoft.AspNetCore.App.Runtime.linux-x64 3.1.8
+Microsoft.NetCore.App.Runtime.linux-x64 3.1.8
diff --git a/nixpkgs/pkgs/development/go-modules/generic/default.nix b/nixpkgs/pkgs/development/go-modules/generic/default.nix
index 65d63fc9a2fa..7533d52c989e 100644
--- a/nixpkgs/pkgs/development/go-modules/generic/default.nix
+++ b/nixpkgs/pkgs/development/go-modules/generic/default.nix
@@ -9,6 +9,9 @@ let
     , passthru ? {}
     , patches ? []
 
+    # Go linker flags, passed to go via -ldflags
+    , ldflags ? []
+
     # A function to override the go-modules derivation
     , overrideModAttrs ? (_oldAttrs : {})
 
@@ -155,7 +158,7 @@ let
             echo "$d" | grep -q "\(/_\|examples\|Godeps\|testdata\)" && return 0
             [ -n "$excludedPackages" ] && echo "$d" | grep -q "$excludedPackages" && return 0
             local OUT
-            if ! OUT="$(go $cmd $buildFlags "''${buildFlagsArray[@]}" -v -p $NIX_BUILD_CORES $d 2>&1)"; then
+            if ! OUT="$(go $cmd $buildFlags "''${buildFlagsArray[@]}" ''${ldflags:+-ldflags="$ldflags"} -v -p $NIX_BUILD_CORES $d 2>&1)"; then
               if ! echo "$OUT" | grep -qE '(no( buildable| non-test)?|build constraints exclude all) Go (source )?files'; then
                 echo "$OUT" >&2
                 return 1
diff --git a/nixpkgs/pkgs/development/go-packages/generic/default.nix b/nixpkgs/pkgs/development/go-packages/generic/default.nix
index 8a093a03d1c1..88d7acb42fc9 100644
--- a/nixpkgs/pkgs/development/go-packages/generic/default.nix
+++ b/nixpkgs/pkgs/development/go-packages/generic/default.nix
@@ -7,6 +7,9 @@
 , preFixup ? ""
 , shellHook ? ""
 
+# Go linker flags, passed to go via -ldflags
+, ldflags ? []
+
 # We want parallel builds by default
 , enableParallelBuilding ? true
 
@@ -148,7 +151,7 @@ let
         echo "$d" | grep -q "\(/_\|examples\|Godeps\)" && return 0
         [ -n "$excludedPackages" ] && echo "$d" | grep -q "$excludedPackages" && return 0
         local OUT
-        if ! OUT="$(go $cmd $buildFlags "''${buildFlagsArray[@]}" -v -p $NIX_BUILD_CORES $d 2>&1)"; then
+        if ! OUT="$(go $cmd $buildFlags "''${buildFlagsArray[@]}" ''${ldflags:+-ldflags="$ldflags"} -v -p $NIX_BUILD_CORES $d 2>&1)"; then
           if ! echo "$OUT" | grep -qE '(no( buildable| non-test)?|build constraints exclude all) Go (source )?files'; then
             echo "$OUT" >&2
             return 1
diff --git a/nixpkgs/pkgs/development/haskell-modules/HACKING.md b/nixpkgs/pkgs/development/haskell-modules/HACKING.md
new file mode 100644
index 000000000000..7c46e1560fd3
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/HACKING.md
@@ -0,0 +1,270 @@
+
+## Maintainer Workflow
+
+The goal of the [@NixOS/haskell](https://github.com/orgs/NixOS/teams/haskell)
+team is to keep the Haskell packages in Nixpkgs up-to-date, while making sure
+there are no Haskell-related evaluation errors or build errors that get into
+the Nixpkgs `master` branch.
+
+We do this by periodically merging an updated set of Haskell packages on the
+`haskell-updates` branch into the `master` branch.  Each member of the team
+takes a two week period where they are in charge of merging the
+`haskell-updates` branch into `master`.  This is the documentation for this
+workflow.
+
+The workflow generally proceeds in three main steps:
+
+1. create the initial `haskell-updates` PR, and update Stackage and Hackage snapshots
+1. wait for contributors to fix newly broken Haskell packages
+1. merge `haskell-updates` into `master`
+
+Each of these steps is described in a separate section.
+
+### Initial `haskell-updates` PR
+
+In this section we create the PR for merging `haskell-updates` into `master`.
+
+1.  Make sure the `haskell-updates` branch is up-to-date with `master`.
+
+1.  Update the Stackage Nightly resolver used by Nixpkgs and create a commit:
+
+    ```console
+    $ ./maintainers/scripts/haskell/update-stackage.sh --do-commit
+    ```
+
+1.  Update the Hackage package set used by Nixpkgs and create a commit:
+
+    ```console
+    $ ./maintainers/scripts/haskell/update-hackage.sh --do-commit
+    ```
+
+1.  Regenerate the Haskell package set used in Nixpkgs and create a commit:
+
+    ```console
+    $ ./maintainers/scripts/haskell/regenerate-hackage-packages.sh --do-commit
+    ```
+
+1.  Push these commits to the Nixpkgs repository.
+
+1.  Open a PR on Nixpkgs merging `haskell-updates` into `master`.
+
+Use the following message body:
+
+```markdown
+### This Merge
+
+This PR is the regular merge of the `haskell-updates` branch into `master`.
+
+This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates.
+
+I will aim to merge this PR **by 2021-TODO-TODO**. If I can merge it earlier, there might be successor PRs in that time window. As part of our rotation @TODO will continue these merges from 2021-TODO-TODO to 2021-TODO-TODO.
+
+### haskellPackages Workflow Summary
+
+Our workflow is currently described in
+[`pkgs/development/haskell-modules/HACKING.md`](https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md).
+
+The short version is this:
+* We regularly update the Stackage and Hackage pins on `haskell-updates` (normally at the beginning of a merge window).
+* The community fixes builds of Haskell packages on that branch.
+* We aim at at least one merge of `haskell-updates` into `master` every two weeks.
+* We only do the merge if the `mergeable` job is succeeding on hydra.
+* If a maintained package is still broken at the time of merge, we will only merge if the maintainer has been pinged 7 days in advance. (If you care about a Haskell package, become a maintainer!)
+
+---
+
+This is the follow-up to #TODO.
+```
+
+Make sure to replace all TODO with the actual values.
+
+### Notify Maintainers and Fix Broken Packages
+
+After you've done the previous steps, Hydra will start building the new and
+updated Haskell packages.  You can see the progress Hydra is making at
+https://hydra.nixos.org/jobset/nixpkgs/haskell-updates.  This Hydra jobset is
+defined in the file [release-haskell.nix](../../top-level/release-haskell.nix).
+
+#### Notify Maintainers
+
+When Hydra finishes building all the updated packages for the `haskell-updates`
+jobset, you should generate a build report to notify maintainers of their
+newly broken packages.  You can do that with the following commands:
+
+```console
+$ ./maintainers/scripts/haskell/hydra-report.hs get-report
+$ ./maintainers/scripts/haskell/hydra-report.hs ping-maintainers
+```
+
+The `hyda-report.hs ping-maintainers` command generates a Markdown document
+that you can paste in a GitHub comment on the PR opened above.  This
+comment describes which Haskell packages are now failing to build.  It also
+pings the maintainers so that they know to fix up their packages.
+
+It may be helpful to pipe `hydra-report.hs ping-maintainers` into `xclip`
+(XOrg) or `wl-copy` (Wayland) in order to post on GitHub.
+
+This build report can be fetched and re-generated for new Hydra evaluations.
+It may help contributors to try to keep the GitHub comment updated with the
+most recent build report.
+
+Maintainers should be given at least 7 days to fix up their packages when they
+break.  If maintainers don't fix up their packages with 7 days, then they
+may be marked broken before merging `haskell-updates` into `master`.
+
+#### Fix Broken Packages
+
+After getting the build report, you can see which packages and Hydra jobs are
+failing to build.  The most important jobs are the `maintained` and `mergeable`
+jobs. These are both defined in
+[`release-haskell.nix`](../../top-level/release-haskell.nix).
+
+`mergeable` is a set of the most important Haskell packages, including things
+like Pandoc and XMonad.  These packages are widely used.  We would like to
+always keep these building.
+
+`maintained` is a set of Haskell packages that have maintainers in Nixpkgs.
+We should be proactive in working with maintainers to keep their packages
+building.
+
+Steps to fix Haskell packages that are failing to build is out of scope for
+this document, but it usually requires fixing up dependencies that are now
+out-of-bounds.
+
+#### Mark Broken Packages
+
+Packages that do not get fixed can be marked broken with the following
+commands.  First check which packages are broken:
+
+```console
+$ ./maintainers/scripts/haskell/hydra-report.hs get-report
+$ ./maintainers/scripts/haskell/hydra-report.hs mark-broken-list
+```
+
+This shows a list of packages that reported a build failure on `x86_64-linux` on Hydra.
+
+Next, run the following command:
+
+```console
+$ ./maintainers/scripts/haskell/mark-broken.sh --do-commit
+```
+
+This first opens up an editor with the broken package list.  Some of these
+packages may have a maintainer in Nixpkgs.  If these maintainers have not been
+given 7 days to fix up their package, then make sure to remove those packages
+from the list before continuing.  After saving and exiting the editor, the
+following will happen:
+
+-   Packages from the list will be added to
+    [`configuration-hackage2nix/broken.yaml`](configuration-hackage2nix/broken.yaml).
+    This is a list of Haskell packages that are known to be broken.
+
+-   [`hackage-packages.nix`](hackage-packages.nix) will be regenerated.  This
+    will mark all Haskell pacakges in `configuration-hackage2nix/broken.yaml`
+    as `broken`.
+
+-   The
+    [`configuration-hackage2nix/transitive-broken.yaml`](configuration-hackage2nix/transitive-broken.yaml)
+    file will be updated.  This is a list of Haskell packages that
+    depend on a package in `configuration-hackage2nix/broken.yaml` or
+    `configuration-hackage2nix/transitive-broken.yaml`
+
+-   `hackage-packages.nix` will be regenerated again.  This will set
+    `hydraPlatforms = none` for all the packages in
+    `configuration-hackage2nix/transitive-broken.yaml`.  This makes
+    sure that Hydra does not try to build any of these packages.
+
+-   All updated files will be committed.
+
+#### Merge `master` into `haskell-updates`
+
+You should occasionally merge the `master` branch into the `haskell-updates`
+branch.
+
+In an ideal world, when we merge `haskell-updates` into `master`, it would
+cause few Hydra rebuilds on `master`.  Ideally, the `nixos-unstable` channel
+would never be prevented from progressing because of needing to wait for
+rebuilding Haskell packages.
+
+In order to make sure that there are a minimal number of rebuilds after merging
+`haskell-updates` into `master`, `master` should occasionally be merged into
+the `haskell-updates` branch.
+
+This is especially important after `staging-next` is merged into `master`,
+since there is a high chance that this will cause all the Haskell packages to
+rebuild.
+
+### Merge `haskell-updates` into `master`
+
+Now it is time to merge the `haskell-updates` PR you opened above.
+
+Before doing this, make sure of the following:
+
+-   All Haskell packages that fail to build are correctly marked broken or
+    transitively broken.
+
+-   The `maintained` and `mergeable` jobs are passing on Hydra.
+
+-   The maintainers for any maintained Haskell packages that are newly broken
+    have been pinged on GitHub and given at least a week to fix their packages.
+    This is especially important for widely-used packages like `cachix`.
+
+-   Make sure you first merge the `master` branch into `haskell-updates`.  Wait
+    for Hydra to evaluate the new `haskell-updates` jobset.  Make sure you only
+    merge `haskell-updates` into `master` when there are no evaluation errors.
+
+When you've double-checked these points, go ahead and merge the `haskell-updates` PR.
+After merging, **make sure not to delete the `haskell-updates` branch**, since it
+causes all currently open Haskell-related pull-requests to be automatically closed on GitHub.
+
+### Additional Info
+
+Here are some additional tips that didn't fit in above.
+
+-   Hydra tries to evalute the `haskell-updates` branch (in the
+    [`nixpkgs:haskell-updates`](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates)
+    jobset) every 4 hours.  It is possible to force a new Hydra evaluation without
+    waiting 4 hours by the following steps:
+
+    1. Log into Hydra with your GitHub or Google account.
+    1. Go to the [nixpkgs:haskell-updates](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates) jobset.
+    1. Click the `Actions` button.
+    1. Select `Evaluate this jobset`.
+    1. If you refresh the page, there should be a new `Evaluation running since:` line.
+    1. Evaluations take about 10 minutes to finish.
+
+-   It is sometimes helpful to update the version of
+    [`cabal2nix` / `hackage2nix`](https://github.com/NixOS/cabal2nix) that our
+    maintainer scripts use.  This can be done with the
+    [`maintainers/scripts/haskell/update-cabal2nix-unstable.sh`](../../../maintainers/scripts/haskell/update-cabal2nix-unstable.sh)
+    script.
+
+    You might want to do this if a user contributes a fix to `cabal2nix` that
+    will immediately fix a Haskell package in Nixpkgs.  First, merge in
+    the PR to `cabal2nix`, then run `update-cabal2nix-upstable.sh`.  Finally, run
+    [`regenerate-hackage-packages.sh`](../../../maintainers/scripts/haskell/regenerate-hackage-packages.sh)
+    to regenerate the Hackage package set with the updated version of `hackage2nix`.
+
+-   Make sure never to update the Hackage package hashes in
+    [`pkgs/data/misc/hackage/`](../../../pkgs/data/misc/hackage/), or the
+    pinned Stackage Nightly versions on the release branches (like
+    `release-21.05`).
+
+    This means that the
+    [`update-hackage.sh`](../../../maintainers/scripts/haskell/update-hackage.sh)
+    and
+    [`update-stackage.sh`](../../../maintainers/scripts/haskell/update-stackage.sh)
+    scripts should never be used on the release branches.
+
+    However, changing other files in `./.` and regenerating the package set is encouraged.
+    This can be done with
+    [`regenerate-hackage-packages.sh`](../../../maintainers/scripts/haskell/regenerate-hackage-packages.sh)
+    as described above.
+
+-   The Haskell team members generally hang out in the Matrix room
+    [#haskell:nixos.org](https://matrix.to/#/#haskell:nixos.org).
+
+## Contributor Workflow
+
+(TODO: this section is to describe the type of workflow for non-committers to
+contribute to `haskell-updates`)
diff --git a/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix b/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix
new file mode 100644
index 000000000000..00bd9061f01a
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix
@@ -0,0 +1,40 @@
+# This file defines cabal2nix-unstable, used by maintainers/scripts/haskell/regenerate-hackage-packages.sh.
+{ mkDerivation, aeson, ansi-wl-pprint, base, bytestring, Cabal
+, containers, deepseq, directory, distribution-nixpkgs, fetchzip
+, filepath, hackage-db, hopenssl, hpack, language-nix, lens, lib
+, monad-par, monad-par-extras, mtl, optparse-applicative, pretty
+, process, split, tasty, tasty-golden, text, time, transformers
+, yaml
+}:
+mkDerivation {
+  pname = "cabal2nix";
+  version = "unstable-2021-05-28";
+  src = fetchzip {
+    url = "https://github.com/NixOS/cabal2nix/archive/5fb325e094af91328e02cc2ecfd211feaeb135a7.tar.gz";
+    sha256 = "1zbd336s99rgk24yjqlp012d0f66s5nf190sjmsl7mfhqx9j2y4l";
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson ansi-wl-pprint base bytestring Cabal containers deepseq
+    directory distribution-nixpkgs filepath hackage-db hopenssl hpack
+    language-nix lens optparse-applicative pretty process split text
+    time transformers yaml
+  ];
+  executableHaskellDepends = [
+    aeson base bytestring Cabal containers directory
+    distribution-nixpkgs filepath hopenssl language-nix lens monad-par
+    monad-par-extras mtl optparse-applicative pretty
+  ];
+  testHaskellDepends = [
+    base Cabal containers directory filepath language-nix lens pretty
+    process tasty tasty-golden
+  ];
+  preCheck = ''
+    export PATH="$PWD/dist/build/cabal2nix:$PATH"
+    export HOME="$TMPDIR/home"
+  '';
+  homepage = "https://github.com/nixos/cabal2nix#readme";
+  description = "Convert Cabal files into Nix build instructions";
+  license = lib.licenses.bsd3;
+}
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-arm.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-arm.nix
new file mode 100644
index 000000000000..b9f868b04ca5
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-arm.nix
@@ -0,0 +1,97 @@
+# ARM-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
+#
+# This extension is applied to all haskell package sets in nixpkgs
+# if `stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64`
+# to apply arm specific workarounds or fixes.
+#
+# The file is split into three parts:
+#
+# * Overrides that are applied for all arm platforms
+# * Overrides for aarch32 platforms
+# * Overrides for aarch64 platforms
+#
+# This may be extended in the future to also include compiler-
+# specific sections as compiler and linker related bugs may
+# get fixed subsequently.
+#
+# When adding new overrides, try to research which section they
+# belong into. Most likely we'll be favouring aarch64 overrides
+# in practice since that is the only platform we can test on
+# Hydra. Also take care to group overrides by the issue they
+# solve, so refactors and updates to this file are less tedious.
+{ pkgs, haskellLib }:
+
+let
+  inherit (pkgs) lib;
+in
+
+with haskellLib;
+
+self: super: {
+  # COMMON ARM OVERRIDES
+
+  # moved here from configuration-common.nix, no reason given.
+  servant-docs = dontCheck super.servant-docs;
+  swagger2 = dontHaddock (dontCheck super.swagger2);
+
+  # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
+  happy = dontCheck super.happy;
+
+} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
+  # AARCH64-SPECIFIC OVERRIDES
+
+  # Doctests fail on aarch64 due to a GHCi linking bug
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
+  # TODO: figure out if needed on aarch32 as well
+  language-nix = dontCheck super.language-nix;
+  trifecta = dontCheck super.trifecta;
+  ad = dontCheck super.ad;
+  vinyl = dontCheck super.vinyl;
+  BNFC = dontCheck super.BNFC;
+  C-structs = dontCheck super.C-structs;
+  accelerate = dontCheck super.accelerate;
+  focuslist = dontCheck super.focuslist;
+  flight-kml = dontCheck super.flight-kml;
+  exact-real = dontCheck super.exact-real;
+  autoapply = dontCheck super.autoapply;
+  hint = dontCheck super.hint;
+  hgeometry = dontCheck super.hgeometry;
+  headroom = dontCheck super.headroom;
+  haskell-time-range = dontCheck super.haskell-time-range;
+  hsakamai = dontCheck super.hsakamai;
+  hsemail-ns = dontCheck super.hsemail-ns;
+  openapi3 = dontCheck super.openapi3;
+  strict-writer = dontCheck super.strict-writer;
+  xml-html-qq = dontCheck super.xml-html-qq;
+  static = dontCheck super.static;
+  hhp = dontCheck super.hhp;
+  groupBy = dontCheck super.groupBy;
+  greskell = dontCheck super.greskell;
+  html-validator-cli = dontCheck super.html-validator-cli;
+  hw-fingertree-strict = dontCheck super.hw-fingertree-strict;
+  hw-prim = dontCheck super.hw-prim;
+  hw-packed-vector = dontCheck super.hw-packed-vector;
+  hw-xml = dontCheck super.hw-xml;
+  lens-regex = dontCheck super.lens-regex;
+  meep = dontCheck super.meep;
+  ranged-list = dontCheck super.ranged-list;
+  rank2classes = dontCheck super.rank2classes;
+  schedule = dontCheck super.schedule;
+  twiml = dontCheck super.twiml;
+  twitter-conduit = dontCheck super.twitter-conduit;
+  validationt = dontCheck super.validationt;
+  vgrep = dontCheck super.vgrep;
+  vulkan-utils = dontCheck super.vulkan-utils;
+  yaml-combinators = dontCheck super.yaml-combinators;
+  yesod-paginator = dontCheck super.yesod-paginator;
+  grammatical-parsers = dontCheck super.grammatical-parsers;
+  construct = dontCheck super.construct;
+  orbits = dontCheck super.orbits;
+
+  # https://github.com/ekmett/half/issues/35
+  half = dontCheck super.half;
+
+} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch32 {
+  # AARCH32-SPECIFIC OVERRIDES
+
+}
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
index 552e35b9c362..cc39fb4fd10f 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
@@ -64,7 +64,7 @@ self: super: {
       name = "git-annex-${super.git-annex.version}-src";
       url = "git://git-annex.branchable.com/";
       rev = "refs/tags/" + super.git-annex.version;
-      sha256 = "13n62v3cdkx23fywdccczcr8vsf0vmjbimmgin766bf428jlhh6h";
+      sha256 = "1wig8nw2rxgq86y88m1f1qf93z5yckidf1cs33ribmhqa1hs300p";
     };
   }).override {
     dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@@ -75,10 +75,6 @@ self: super: {
   # Fix test trying to access /home directory
   shell-conduit = overrideCabal super.shell-conduit (drv: {
     postPatch = "sed -i s/home/tmp/ test/Spec.hs";
-
-    # the tests for shell-conduit on Darwin illegitimatey assume non-GNU echo
-    # see: https://github.com/psibi/shell-conduit/issues/12
-    doCheck = !pkgs.stdenv.isDarwin;
   });
 
   # https://github.com/froozen/kademlia/issues/2
@@ -117,15 +113,6 @@ self: super: {
   # Jailbreak is necessary for QuickCheck dependency.
   vector = doJailbreak (if pkgs.stdenv.isi686 then appendConfigureFlag super.vector "--ghc-options=-msse2" else super.vector);
 
-  conduit-extra = if pkgs.stdenv.isDarwin
-    then super.conduit-extra.overrideAttrs (drv: { __darwinAllowLocalNetworking = true; })
-    else super.conduit-extra;
-
-  # Fix Darwin build.
-  halive = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.halive pkgs.darwin.apple_sdk.frameworks.AppKit
-    else super.halive;
-
   # Test suite fails due golden tests checking text representation
   # of normalized dhall expressions, and newer dhall versions format
   # differently.
@@ -134,19 +121,6 @@ self: super: {
     then throw "Drop dontCheck override for hpack-dhall > 0.5.2"
     else dontCheck super.hpack-dhall;
 
-  barbly = addBuildDepend super.barbly pkgs.darwin.apple_sdk.frameworks.AppKit;
-
-  # Hakyll's tests are broken on Darwin (3 failures); and they require util-linux
-  hakyll = if pkgs.stdenv.isDarwin
-    then dontCheck (overrideCabal super.hakyll (drv: {
-      testToolDepends = [];
-    }))
-    else super.hakyll;
-
-  double-conversion = if !pkgs.stdenv.isDarwin
-    then super.double-conversion
-    else addExtraLibrary super.double-conversion pkgs.libcxx;
-
   inline-c-cpp = overrideCabal super.inline-c-cpp (drv: {
     postPatch = (drv.postPatch or "") + ''
       substituteInPlace inline-c-cpp.cabal --replace "-optc-std=c++11" ""
@@ -196,8 +170,50 @@ self: super: {
   # base bound
   digit = doJailbreak super.digit;
 
-  # 2020-06-05: HACK: does not pass own build suite - `dontCheck`
-  hnix = generateOptparseApplicativeCompletion "hnix" (dontCheck super.hnix);
+  hnix = generateOptparseApplicativeCompletion "hnix"
+    (overrideCabal super.hnix (drv: {
+      # 2020-06-05: HACK: does not pass own build suite - `dontCheck`
+      doCheck = false;
+      # 2021-05-12: Revert a few dependency cleanups which depend on release
+      # that are not in stackage yet:
+      # * Depend on semialign-indexed for Data.Semialign.Indexed
+      #   (remove when semialign >= 1.2 in stackage)
+      # * Readd dependencies to text and unordered-containers.
+      #   (remove when relude >= 1.0.0.0 is in stackage, see
+      #   https://github.com/haskell-nix/hnix/issues/933)
+      libraryHaskellDepends = [
+        self.semialign-indexed
+      ] ++ drv.libraryHaskellDepends;
+      patches = [
+        # depend on semialign-indexed again
+        (pkgs.fetchpatch {
+          url = "https://github.com/haskell-nix/hnix/commit/16fc342a4f2974f855968472252cd9274609f177.patch";
+          sha256 = "0gm4gy3jpn4dqnrhnqlsavfpw9c1j1xa8002v54knnlw6vpk9niy";
+          revert = true;
+        })
+        # depend on text again
+        (pkgs.fetchpatch {
+          url = "https://github.com/haskell-nix/hnix/commit/73057618576e86bb87dfd42f62b855d24bbdf469.patch";
+          sha256 = "03cyk96d5ad362i1pnz9bs8ifr84kpv8phnr628gys4j6a0bqwzc";
+          revert = true;
+        })
+        # depend on unordered-containers again
+        (pkgs.fetchpatch {
+          url = "https://github.com/haskell-nix/hnix/commit/70643481883ed448b51221a030a76026fb5eb731.patch";
+          sha256 = "0pqmijfkysjixg3gb4kmrqdif7s2saz8qi6k337jf15i0npzln8d";
+          revert = true;
+        })
+        # allow relude < 1.0 again
+        (pkgs.fetchpatch {
+          url = "https://github.com/haskell-nix/hnix/commit/f4ea5dcb344369916586498ba33c00d0fc605a79.patch";
+          sha256 = "1ajl7d49d658xhalgf3pc5svmbq73dsysy6z434n75vb1357mx86";
+          revert = true;
+        })
+      ] ++ (drv.patches or []);
+      # make sure patches are not broken by cabal file revisions
+      revision = null;
+      editedCabalFile = null;
+    }));
 
   # Fails for non-obvious reasons while attempting to use doctest.
   search = dontCheck super.search;
@@ -258,9 +274,6 @@ self: super: {
   github-rest = dontCheck super.github-rest;  # test suite needs the network
   gitlib-cmdline = dontCheck super.gitlib-cmdline;
   GLFW-b = dontCheck super.GLFW-b;                      # https://github.com/bsl/GLFW-b/issues/50
-  #next release supports random 1.1; jailbroken because i didn't know about vty when glguy was updating the bounds
-  #should be fixed soon. maybe even before this is merged. currently glirc is 2.37
-  glirc = doJailbreak (super.glirc.override { random = self.random_1_2_0; });
   hackport = dontCheck super.hackport;
   hadoop-formats = dontCheck super.hadoop-formats;
   haeredes = dontCheck super.haeredes;
@@ -284,32 +297,27 @@ self: super: {
   hsbencher = dontCheck super.hsbencher;
   hsexif = dontCheck super.hsexif;
   hspec-server = dontCheck super.hspec-server;
-  HTF = dontCheck super.HTF;
+  HTF = overrideCabal super.HTF (orig: {
+    # The scripts in scripts/ are needed to build the test suite.
+    preBuild = "patchShebangs --build scripts";
+  });
   htsn = dontCheck super.htsn;
   htsn-import = dontCheck super.htsn-import;
   http-link-header = dontCheck super.http-link-header; # non deterministic failure https://hydra.nixos.org/build/75041105
-  ihaskell = dontCheck super.ihaskell;
   influxdb = dontCheck super.influxdb;
   integer-roots = dontCheck super.integer-roots; # requires an old version of smallcheck, will be fixed in > 1.0
   itanium-abi = dontCheck super.itanium-abi;
   katt = dontCheck super.katt;
-  language-nix = if (pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isi686) then dontCheck super.language-nix else super.language-nix; # aarch64: https://ghc.haskell.org/trac/ghc/ticket/15275
   language-slice = dontCheck super.language-slice;
   ldap-client = dontCheck super.ldap-client;
   lensref = dontCheck super.lensref;
   lvmrun = disableHardening (dontCheck super.lvmrun) ["format"];
-  math-functions = if pkgs.stdenv.isDarwin
-    then dontCheck super.math-functions # "erf table" test fails on Darwin https://github.com/bos/math-functions/issues/63
-    else super.math-functions;
   matplotlib = dontCheck super.matplotlib;
   # https://github.com/matterhorn-chat/matterhorn/issues/679 they do not want to be on stackage
   matterhorn = doJailbreak super.matterhorn; # this is needed until the end of time :')
   memcache = dontCheck super.memcache;
   metrics = dontCheck super.metrics;
   milena = dontCheck super.milena;
-  mockery = if pkgs.stdenv.isDarwin
-    then overrideCabal super.mockery (drv: { preCheck = "export TRAVIS=true"; }) # darwin doesn't have sub-second resolution https://github.com/hspec/mockery/issues/11
-    else super.mockery;
   modular-arithmetic = dontCheck super.modular-arithmetic; # tests require a very old Glob (0.7.*)
   nats-queue = dontCheck super.nats-queue;
   netpbm = dontCheck super.netpbm;
@@ -359,7 +367,6 @@ self: super: {
   tickle = dontCheck super.tickle;
   tpdb = dontCheck super.tpdb;
   translatable-intset = dontCheck super.translatable-intset;
-  trifecta = if pkgs.stdenv.hostPlatform.isAarch64 then dontCheck super.trifecta else super.trifecta; # affected by this bug https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295461
   ua-parser = dontCheck super.ua-parser;
   unagi-chan = dontCheck super.unagi-chan;
   wai-logger = dontCheck super.wai-logger;
@@ -451,9 +458,8 @@ self: super: {
   # https://github.com/andrewthad/haskell-ip/issues/67
   ip = dontCheck super.ip;
 
-  # https://github.com/ndmitchell/shake/issues/206
-  # https://github.com/ndmitchell/shake/issues/267
-  shake = overrideCabal super.shake (drv: { doCheck = !pkgs.stdenv.isDarwin && false; });
+  # https://github.com/ndmitchell/shake/issues/804
+  shake = dontCheck super.shake;
 
   # https://github.com/nushio3/doctest-prop/issues/1
   doctest-prop = dontCheck super.doctest-prop;
@@ -541,10 +547,7 @@ self: super: {
   elm-yesod = markBroken super.elm-yesod;
 
   # https://github.com/Euterpea/Euterpea2/issues/40
-  Euterpea = appendPatch super.Euterpea (pkgs.fetchpatch {
-    url = "https://github.com/Euterpea/Euterpea2/pull/38.patch";
-    sha256 = "13g462qmj8c7if797gnyvf8h0cddmm3xy0pjldw48w8f8sr4qsj0";
-  });
+  Euterpea = doJailbreak super.Euterpea;
 
   # Install icons, metadata and cli program.
   bustle = overrideCabal super.bustle (drv: {
@@ -700,6 +703,9 @@ self: super: {
 
   # 2021-03-12: All of this libraries have to restrictive upper bounds
   # https://github.com/diagrams/diagrams-core/issues/112
+  # https://github.com/diagrams/diagrams-cairo/issues/77
+  # https://github.com/diagrams/diagrams-rasterific/issues/63
+  # https://github.com/diagrams/diagrams-cairo/issues/77
   active = doJailbreak super.active;
   statestack = doJailbreak super.statestack;
   force-layout = doJailbreak super.force-layout;
@@ -709,13 +715,20 @@ self: super: {
   diagrams-postscript = doJailbreak super.diagrams-postscript;
   diagrams-svg = doJailbreak super.diagrams-svg;
   diagrams-contrib = doJailbreak super.diagrams-contrib;
-  # apply patch from master to add compat with optparse-applicative >= 0.16
+  # Apply patch from master to add compat with optparse-applicative >= 0.16.
+  # We unfortunately can't upgrade to 1.4.4 which includes this patch yet
+  # since it would require monoid-extras 0.6 which breaks other diagrams libs.
   diagrams-lib = doJailbreak (appendPatch super.diagrams-lib
     (pkgs.fetchpatch {
       url = "https://github.com/diagrams/diagrams-lib/commit/4b9842c3e3d653be69af19778970337775e2404d.patch";
       sha256 = "0xqvzh3ip9i0nv8xnh41afxki64r259pxq8ir1a4v99ggnldpjaa";
       includes = [ "*/CmdLine.hs" ];
     }));
+  diagrams-rasterific = doJailbreak super.diagrams-rasterific;
+  diagrams-cairo = doJailbreak super.diagrams-cairo;
+
+  # https://github.com/diagrams/diagrams-solve/issues/4
+  diagrams-solve = dontCheck super.diagrams-solve;
 
   # https://github.com/danidiaz/streaming-eversion/issues/1
   streaming-eversion = dontCheck super.streaming-eversion;
@@ -733,9 +746,6 @@ self: super: {
   # Has a dependency on outdated versions of directory.
   cautious-file = doJailbreak (dontCheck super.cautious-file);
 
-  # https://github.com/diagrams/diagrams-solve/issues/4
-  diagrams-solve = dontCheck super.diagrams-solve;
-
   # test suite does not compile with recent versions of QuickCheck
   integer-logarithms = dontCheck (super.integer-logarithms);
 
@@ -828,7 +838,6 @@ self: super: {
   # With ghc-8.2.x haddock would time out for unknown reason
   # See https://github.com/haskell/haddock/issues/679
   language-puppet = dontHaddock super.language-puppet;
-  filecache = overrideCabal super.filecache (drv: { doCheck = !pkgs.stdenv.isDarwin; });
 
   # https://github.com/alphaHeavy/protobuf/issues/34
   protobuf = dontCheck super.protobuf;
@@ -839,20 +848,23 @@ self: super: {
     configureFlags = ["--ghc-option=-DU_DEFINE_FALSE_AND_TRUE=1"]; # https://github.com/haskell/text-icu/issues/49
   });
 
-  # aarch64 and armv7l fixes.
-  happy = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
-  hashable = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.hashable else super.hashable; # https://github.com/tibbe/hashable/issues/95
-  servant-docs =
-    let
-      f = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64)
-          then dontCheck
-          else pkgs.lib.id;
-    in doJailbreak (f super.servant-docs); # jailbreak tasty < 1.2 until servant-docs > 0.11.3 is on hackage.
+  # jailbreak tasty < 1.2 until servant-docs > 0.11.3 is on hackage.
+  servant-docs = doJailbreak super.servant-docs;
   snap-templates = doJailbreak super.snap-templates; # https://github.com/snapframework/snap-templates/issues/22
-  swagger2 = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontHaddock (dontCheck super.swagger2) else super.swagger2;
 
   # hledger-lib requires the latest version of pretty-simple
-  hledger-lib = super.hledger-lib.override { pretty-simple = self.pretty-simple; };
+  hledger-lib = appendPatch super.hledger-lib
+    # This patch has been merged but not released yet:
+    # https://github.com/simonmichael/hledger/pull/1512. It is
+    # important for ledger-autosync test suite:
+    # https://github.com/egh/ledger-autosync/issues/123
+    (pkgs.fetchpatch {
+      name   = "hledger-properly-escape-quotes-csv.patch";
+      url    = "https://github.com/simonmichael/hledger/commit/c9a72e1615e2ddc2824f2e248456e1042eb31e1d.patch";
+      sha256 = "10knvrd5bl9nrmi27i0pm82sfr64jy04xgbjp228qywyijpr3pqv";
+      includes = [ "Hledger/Read/CsvReader.hs" ];
+      stripLen = 1;
+    });
 
   # Copy hledger man pages from data directory into the proper place. This code
   # should be moved into the cabal2nix generator.
@@ -1056,9 +1068,6 @@ self: super: {
   # Has tasty < 1.2 requirement, but works just fine with 1.2
   temporary-resourcet = doJailbreak super.temporary-resourcet;
 
-  # Requires dhall >= 1.23.0
-  ats-pkg = dontCheck (super.ats-pkg.override { dhall = self.dhall_1_29_0; });
-
   # fake a home dir and capture generated man page
   ats-format = overrideCabal super.ats-format (old : {
     preConfigure = "export HOME=$PWD";
@@ -1087,18 +1096,6 @@ self: super: {
   # https://github.com/erikd/hjsmin/issues/32
   hjsmin = dontCheck super.hjsmin;
 
-  nix-tools = super.nix-tools.overrideScope (self: super: {
-    # Needs https://github.com/peti/hackage-db/pull/9
-    hackage-db = super.hackage-db.overrideAttrs (old: {
-      src = pkgs.fetchFromGitHub {
-        owner = "ElvishJerricco";
-        repo = "hackage-db";
-        rev = "84ca9fc75ad45a71880e938e0d93ea4bde05f5bd";
-        sha256 = "0y3kw1hrxhsqmyx59sxba8npj4ya8dpgjljc21gkgdvdy9628q4c";
-      };
-    });
-  });
-
   # upstream issue: https://github.com/vmchale/atspkg/issues/12
   language-ats = dontCheck super.language-ats;
 
@@ -1140,11 +1137,6 @@ self: super: {
     '';
   });
 
-  # gtk/gtk3 needs to be told on Darwin to use the Quartz
-  # rather than X11 backend (see eg https://github.com/gtk2hs/gtk2hs/issues/249).
-  gtk3 = appendConfigureFlags super.gtk3 (pkgs.lib.optional pkgs.stdenv.isDarwin "-f have-quartz-gtk");
-  gtk = appendConfigureFlags super.gtk (pkgs.lib.optional pkgs.stdenv.isDarwin "-f have-quartz-gtk");
-
   # Chart-tests needs and compiles some modules from Chart itself
   Chart-tests = (addExtraLibrary super.Chart-tests self.QuickCheck).overrideAttrs (old: {
     preCheck = old.postPatch or "" + ''
@@ -1158,6 +1150,23 @@ self: super: {
   # Therefore we jailbreak it.
   hakyll-contrib-hyphenation = doJailbreak super.hakyll-contrib-hyphenation;
 
+  # Jailbreak due to bounds on multiple dependencies,
+  # bound on pandoc needs to be patched since it is conditional
+  hakyll = doJailbreak (overrideCabal super.hakyll (drv: {
+    patches = [
+      # Remove when Hakyll > 4.14.0.0
+      (pkgs.fetchpatch {
+        url = "https://github.com/jaspervdj/hakyll/commit/0dc6127d81ff688e27c36ce469230320eee60246.patch";
+        sha256 = "sha256-YyRz3bAmIBODTEeS5kGl2J2x31SjiPoLzUZUlo3nHvQ=";
+      })
+      # Remove when Hakyll > 4.14.0.0
+      (pkgs.fetchpatch {
+        url = "https://github.com/jaspervdj/hakyll/commit/af9e29b5456c105dc948bc46c93e989a650b5ed1.patch";
+        sha256 = "sha256-ghc0V5L9OybNHWKmM0vhjRBN2rIvDlp+ClcK/aQst44=";
+      })
+    ];
+  }));
+
   # 2020-06-22: NOTE: > 0.4.0 => rm Jailbreak: https://github.com/serokell/nixfmt/issues/71
   nixfmt = doJailbreak super.nixfmt;
 
@@ -1209,14 +1218,10 @@ self: super: {
   hasql-notifications = dontCheck super.hasql-notifications;
   hasql-pool = dontCheck super.hasql-pool;
 
-  # This bumps optparse-applicative to <0.16 in the cabal file, as otherwise
-  # the version bounds are not satisfied.  This can be removed if the PR at
-  # https://github.com/ananthakumaran/webify/pull/27 is merged and a new
-  # release of webify is published.
-  webify = appendPatch super.webify (pkgs.fetchpatch {
-    url = "https://github.com/ananthakumaran/webify/pull/27/commits/6d653e7bdc1ffda75ead46851b5db45e87cb2aa0.patch";
-    sha256 = "0xbfhzhzg94b4r5qy5dg1c40liswwpqarrc2chcwgfbfnrmwkfc2";
-  });
+  # We jailbreak webify, as optparse-applicative evolved past the version bound
+  # and the corresponding (and outdated) PR was not merged for a year.
+  # https://github.com/ananthakumaran/webify/pull/27
+  webify = doJailbreak super.webify;
 
   # hasn‘t bumped upper bounds
   # upstream: https://github.com/obsidiansystems/which/pull/6
@@ -1281,16 +1286,30 @@ self: super: {
   # https://github.com/kowainik/policeman/issues/57
   policeman = doJailbreak super.policeman;
 
-  haskell-gi-base = addBuildDepends super.haskell-gi-base [ pkgs.gobject-introspection ];
-
-  # 2020-08-14: Needs some manual patching to be compatible with haskell-gi-base 0.24
-  # Created upstream PR @ https://github.com/ghcjs/jsaddle/pull/119
-  jsaddle-webkit2gtk = appendPatch super.jsaddle-webkit2gtk (pkgs.fetchpatch {
-    url = "https://github.com/ghcjs/jsaddle/compare/9727365...f842748.patch";
-    sha256 = "07l4l999lmlx7sqxf7v4f70rmxhx9r0cjblkgc4n0y6jin4iv1cb";
-    stripLen = 2;
-    extraPrefix = "";
-  });
+  # nixpkgs has bumped gdkpixbuf C lib, so we need gi-gdkpixbuf_2_0_26 to link against that.
+  # This leads to all this bumps which can be removed once stackage has haskell-gi 0.25.
+  haskell-gi = self.haskell-gi_0_25_0;
+  haskell-gi-base = addBuildDepends super.haskell-gi-base_0_25_0 [ pkgs.gobject-introspection ];
+  gi-glib = self.gi-glib_2_0_25;
+  gi-cairo = self.gi-cairo_1_0_25;
+  gi-gobject = self.gi-gobject_2_0_26;
+  gi-atk = self.gi-atk_2_0_23;
+  gi-gio = self.gi-gio_2_0_28;
+  gi-harfbuzz = self.gi-harfbuzz_0_0_4;
+  gi-javascriptcore = self.gi-javascriptcore_4_0_23;
+  gi-pango = self.gi-pango_1_0_24;
+  gi-soup = self.gi-soup_2_4_24;
+  gi-gdkpixbuf = self.gi-gdkpixbuf_2_0_26;
+  gi-gdk = self.gi-gdk_3_0_24;
+  gi-gtk = self.gi-gtk_3_0_37;
+  gi-webkit2 = self.gi-webkit2_4_0_27;
+  gi-cairo-render = doJailbreak super.gi-cairo-render;
+  gi-cairo-connector = doJailbreak super.gi-cairo-connector;
+  gi-gtk-hs = self.gi-gtk-hs_0_3_10;
+  gi-dbusmenu = self.gi-dbusmenu_0_4_9;
+  gi-xlib = self.gi-xlib_2_0_10;
+  gi-gdkx11 = self.gi-gdkx11_3_0_11;
+  gi-dbusmenugtk3 = self.gi-dbusmenugtk3_0_4_10;
 
   # Missing -Iinclude parameter to doc-tests (pull has been accepted, so should be resolved when 0.5.3 released)
   # https://github.com/lehins/massiv/pull/104
@@ -1381,10 +1400,6 @@ self: super: {
           pkgs.lib.makeBinPath deps
         }"
       '';
-
-      # 2021-04-09: test failure
-      # PR pending https://github.com/expipiplus1/update-nix-fetchgit/pull/60
-      doCheck = false;
     }));
 
   # Our quickcheck-instances is too old for the newer binary-instances, but
@@ -1396,6 +1411,12 @@ self: super: {
   # https://github.com/haskell/haskell-language-server/issues/611
   haskell-language-server = dontCheck super.haskell-language-server;
 
+  # 2021-05-08: Tests fail: https://github.com/haskell/haskell-language-server/issues/1808
+  hls-splice-plugin = dontCheck super.hls-splice-plugin;
+
+  # 2021-05-08: Tests fail: https://github.com/haskell/haskell-language-server/issues/1809
+  hls-eval-plugin = dontCheck super.hls-eval-plugin;
+
   # 2021-03-19: Too restrictive upper bound on optparse-applicative
   stylish-haskell = doJailbreak super.stylish-haskell;
 
@@ -1423,9 +1444,6 @@ self: super: {
     ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_0_0_4;
   });
 
-  # 2021-03-09: Overrides because nightly is to old for hls 1.0.0
-  lsp-test = doDistribute (dontCheck self.lsp-test_0_13_0_0);
-
   # 2021-03-21 Test hangs
   # https://github.com/haskell/haskell-language-server/issues/1562
   # Jailbreak because of: https://github.com/haskell/haskell-language-server/pull/1595
@@ -1479,11 +1497,6 @@ self: super: {
   # Due to tests restricting base in 0.8.0.0 release
   http-media = doJailbreak super.http-media;
 
-  # https://github.com/ekmett/half/issues/35
-  half = if pkgs.stdenv.isAarch64
-    then dontCheck super.half
-    else super.half;
-
   # 2020-11-19: Jailbreaking until: https://github.com/snapframework/heist/pull/124
   heist = doJailbreak super.heist;
 
@@ -1538,10 +1551,6 @@ self: super: {
   # https://github.com/yesodweb/yesod/issues/1714
   yesod-core = dontCheck super.yesod-core;
 
-  # Add ApplicationServices on darwin
-  apecs-physics = addPkgconfigDepends super.apecs-physics
-    (pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.ApplicationServices);
-
   # Break out of overspecified constraint on QuickCheck.
   algebraic-graphs = dontCheck super.algebraic-graphs;
   attoparsec = doJailbreak super.attoparsec;      # https://github.com/haskell/attoparsec/pull/168
@@ -1787,4 +1796,161 @@ self: super: {
     excludes = ["test/buildtest"];
   });
 
+  # workaround for https://github.com/peti/distribution-nixpkgs/issues/9
+  pam = super.pam.override { inherit (pkgs) pam; };
+
+  # Too strict version bounds on base:
+  # https://github.com/obsidiansystems/database-id/issues/1
+  database-id-class = doJailbreak super.database-id-class;
+
+  cabal2nix-unstable = overrideCabal super.cabal2nix-unstable {
+    passthru.updateScript = ../../../maintainers/scripts/haskell/update-cabal2nix-unstable.sh;
+  };
+
+  # Too strict version bounds on base
+  # https://github.com/gibiansky/IHaskell/issues/1217
+  ihaskell-display = doJailbreak super.ihaskell-display;
+  ihaskell-basic = doJailbreak super.ihaskell-basic;
+
+  # Fixes too strict version bounds on regex libraries
+  # Presumably to be removed at the next release
+  yi-language = appendPatch super.yi-language (pkgs.fetchpatch {
+    url = "https://github.com/yi-editor/yi/commit/0d3bcb5ba4c237d57ce33a3dc39b63c56d890765.patch";
+    sha256 = "0r4mzngs0x1akqpajzx7ssa9rax977fvj5ra8d3grfbpx6z0nm01";
+    includes = [ "yi-language.cabal" ];
+    stripLen = 2;
+    extraPrefix = "";
+  });
+
+  # https://github.com/ghcjs/jsaddle/issues/123
+  jsaddle = overrideCabal super.jsaddle (drv: {
+    # lift conditional version constraint on ref-tf
+    postPatch = ''
+      sed -i 's/ref-tf.*,/ref-tf,/' jsaddle.cabal
+    '' + (drv.postPatch or "");
+  });
+
+  # Tests need to lookup target triple x86_64-unknown-linux
+  # https://github.com/llvm-hs/llvm-hs/issues/334
+  llvm-hs = overrideCabal super.llvm-hs {
+    doCheck = pkgs.stdenv.targetPlatform.system == "x86_64-linux";
+  };
+
+  # * Fix build failure by picking patch from 8.5, we need
+  #   this version of sbv for petrinizer
+  # * Pin version of crackNum that still exposes its library
+  sbv_7_13 = appendPatch (super.sbv_7_13.override {
+    crackNum = self.crackNum_2_4;
+  }) (pkgs.fetchpatch {
+    url = "https://github.com/LeventErkok/sbv/commit/57014b9c7c67dd9b63619a996e2c66e32c33c958.patch";
+    sha256 = "10npa8nh2413n6p6qld795qfkbld08icm02bspmk93y0kabpgmgm";
+  });
+
+  # Too strict bounds on dimensional
+  # https://github.com/enomsg/science-constants-dimensional/pull/1
+  science-constants-dimensional = doJailbreak super.science-constants-dimensional;
+
+  # Tests are flaky on busy machines
+  # https://github.com/merijn/paramtree/issues/4
+  paramtree = dontCheck super.paramtree;
+
+  # Too strict version bounds on haskell-gi
+  # https://github.com/owickstrom/gi-gtk-declarative/issues/100
+  gi-gtk-declarative = doJailbreak super.gi-gtk-declarative;
+  gi-gtk-declarative-app-simple = doJailbreak super.gi-gtk-declarative-app-simple;
+
+  # 2021-05-09: Restrictive bound on hspec-golden. Dep removed in newer versions.
+  tomland = assert super.tomland.version == "1.3.2.0"; doJailbreak super.tomland;
+
+  # 2021-05-09 haskell-ci pins ShellCheck 0.7.1
+  # https://github.com/haskell-CI/haskell-ci/issues/507
+  haskell-ci = super.haskell-ci.override {
+    ShellCheck = self.ShellCheck_0_7_1;
+  };
+
+  Frames-streamly = overrideCabal (super.Frames-streamly.override { relude = super.relude_1_0_0_1; }) (drv: {
+    # https://github.com/adamConnerSax/Frames-streamly/issues/1
+    patchPhase = ''
+cat > example_data/acs100k.csv <<EOT
+"YEAR","REGION","STATEFIP","DENSITY","METRO","PUMA","PERWT","SEX","AGE","RACE","RACED","HISPAN","HISPAND","CITIZEN","LANGUAGE","LANGUAGED","SPEAKENG","EDUC","EDUCD","GRADEATT","GRADEATTD","EMPSTAT","EMPSTATD","INCTOT","INCSS","POVERTY"
+2006,32,1,409.6,3,2300,87.0,1,47,1,100,0,0,0,1,100,3,6,65,0,0,1,12,36000,0,347
+EOT
+    ''; });
+
+  # 2021-05-09: compilation requires patches from master,
+  # remove at next release (current is 0.1.0.4).
+  large-hashable = appendPatches super.large-hashable [
+    # Fix compilation of TH code for GHC >= 8.8
+    (pkgs.fetchpatch {
+      url = "https://github.com/factisresearch/large-hashable/commit/ee7afe4bd181cf15a324c7f4823f7a348e4a0e6b.patch";
+      sha256 = "1ha77v0bc6prxacxhpdfgcsgw8348gvhl9y81smigifgjbinphxv";
+      excludes = [
+        ".travis.yml"
+        "stack**"
+      ];
+    })
+    # Fix cpp invocation
+    (pkgs.fetchpatch {
+      url = "https://github.com/factisresearch/large-hashable/commit/7b7c2ed6ac6e096478e8ee00160fa9d220df853a.patch";
+      sha256 = "1sf9h3k8jbbgfshzrclaawlwx7k2frb09z2a64f93jhvk6ci6vgx";
+    })
+  ];
+
+  # BSON defaults to requiring network instead of network-bsd which is
+  # required nowadays: https://github.com/mongodb-haskell/bson/issues/26
+  bson = appendConfigureFlag (super.bson.override {
+    network = self.network-bsd;
+  }) "-f-_old_network";
+
+  # 2021-05-14: Testsuite is failing.
+  # https://github.com/kcsongor/generic-lens/issues/133
+  generic-optics = dontCheck super.generic-optics;
+
+  # 2021-05-19: Allow random 1.2.0
+  # Remove at (presumably next release) which is > 1.3.1.0
+  hashable = overrideCabal super.hashable (drv: {
+    patches = [
+      (pkgs.fetchpatch {
+        url = "https://github.com/haskell-unordered-containers/hashable/commit/78fa8fdb4f8bec5d221f34110d6afa0d0a00b5f9.patch";
+        sha256 = "0bzgp9qf53zk4rzk73x5cf2kfqncvlmihcallpplaibpslzalyi4";
+      })
+    ] ++ (drv.patches or []);
+    # fix line endings preventing patch from applying
+    prePatch = ''
+      ${pkgs.dos2unix}/bin/dos2unix hashable.cabal
+    '' + (drv.prePatch or "");
+  });
+
+  # Too strict bound on random
+  # https://github.com/haskell-hvr/missingh/issues/56
+  MissingH = doJailbreak super.MissingH;
+
+  # Too strict bound on containers
+  # https://github.com/batterseapower/parallel-io/issues/14#issuecomment-853441933
+  parallel-io = doJailbreak super.parallel-io;
+
+  # Disable flaky tests
+  # https://github.com/DavidEichmann/alpaca-netcode/issues/2
+  alpaca-netcode = overrideCabal super.alpaca-netcode {
+    # use testTarget to also pass some flags to the test suite.
+    # TODO: We should add proper support for this to the builder.
+    testTarget = "test --test-options='-p \"!/[NOCI]/\"'";
+  };
+
+  # Tests require to run a binary which isn't built
+  lsp-test = dontCheck super.lsp-test;
+
+  # 2021-05-22: Tests fail sometimes (even consistently on hydra)
+  # when running a fs-related test with >= 12 jobs. To work around
+  # this, run tests with only a single job.
+  # https://github.com/vmchale/libarchive/issues/20
+  libarchive = overrideCabal super.libarchive {
+    # TODO: We should add proper support for this to the builder.
+    testTarget = "libarchive-test --test-options='-j1'";
+  };
+
+  # unrestrict bounds for hashable and semigroups
+  # https://github.com/HeinrichApfelmus/reactive-banana/issues/215
+  reactive-banana = doJailbreak super.reactive-banana;
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-darwin.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-darwin.nix
new file mode 100644
index 000000000000..7e02a6653c77
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-darwin.nix
@@ -0,0 +1,174 @@
+# DARWIN-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
+
+{ pkgs, haskellLib }:
+
+let
+  inherit (pkgs) lib darwin;
+in
+
+with haskellLib;
+
+self: super: {
+
+  # the tests for shell-conduit on Darwin illegitimatey assume non-GNU echo
+  # see: https://github.com/psibi/shell-conduit/issues/12
+  shell-conduit = dontCheck super.shell-conduit;
+
+  conduit-extra = super.conduit-extra.overrideAttrs (drv: {
+    __darwinAllowLocalNetworking = true;
+  });
+
+  halive = addBuildDepend super.halive darwin.apple_sdk.frameworks.AppKit;
+
+  # Hakyll's tests are broken on Darwin (3 failures); and they require util-linux
+  hakyll = overrideCabal super.hakyll {
+    testToolDepends = [];
+    doCheck = false;
+  };
+
+  barbly = addBuildDepend super.barbly darwin.apple_sdk.frameworks.AppKit;
+
+  double-conversion = addExtraLibrary super.double-conversion pkgs.libcxx;
+
+  apecs-physics = addPkgconfigDepends super.apecs-physics [
+    darwin.apple_sdk.frameworks.ApplicationServices
+  ];
+
+  # "erf table" test fails on Darwin
+  # https://github.com/bos/math-functions/issues/63
+  math-functions = dontCheck super.math-functions;
+
+  # darwin doesn't have sub-second resolution
+  # https://github.com/hspec/mockery/issues/11
+  mockery = overrideCabal super.mockery (drv: {
+    preCheck = ''
+      export TRAVIS=true
+    '' + (drv.preCheck or "");
+  });
+
+  # https://github.com/ndmitchell/shake/issues/206
+  shake = dontCheck super.shake;
+
+  filecache = dontCheck super.filecache;
+
+  # gtk/gtk3 needs to be told on Darwin to use the Quartz
+  # rather than X11 backend (see eg https://github.com/gtk2hs/gtk2hs/issues/249).
+  gtk3 = appendConfigureFlag super.gtk3 "-f have-quartz-gtk";
+  gtk = appendConfigureFlag super.gtk "-f have-quartz-gtk";
+
+  OpenAL = addExtraLibrary super.OpenAL darwin.apple_sdk.frameworks.OpenAL;
+
+  proteaaudio = addExtraLibrary super.proteaaudio darwin.apple_sdk.frameworks.AudioToolbox;
+
+  # the system-fileio tests use canonicalizePath, which fails in the sandbox
+  system-fileio = dontCheck super.system-fileio;
+
+  # Prevents needing to add `security_tool` as a run-time dependency for
+  # everything using x509-system to give access to the `security` executable.
+  #
+  # darwin.security_tool is broken in Mojave (#45042)
+  #
+  # We will use the system provided security for now.
+  # Beware this WILL break in sandboxes!
+  #
+  # TODO(matthewbauer): If someone really needs this to work in sandboxes,
+  # I think we can add a propagatedImpureHost dep here, but I’m hoping to
+  # get a proper fix available soonish.
+  x509-system = overrideCabal super.x509-system (drv:
+    lib.optionalAttrs (!pkgs.stdenv.cc.nativeLibc) {
+      postPatch = ''
+        substituteInPlace System/X509/MacOS.hs --replace security /usr/bin/security
+      '' + (drv.postPatch or "");
+    });
+
+  # https://github.com/haskell-foundation/foundation/pull/412
+  foundation = dontCheck super.foundation;
+
+  llvm-hs = overrideCabal super.llvm-hs (oldAttrs: {
+    # One test fails on darwin.
+    doCheck = false;
+    # llvm-hs's Setup.hs file tries to add the lib/ directory from LLVM8 to
+    # the DYLD_LIBRARY_PATH environment variable.  This messes up clang
+    # when called from GHC, probably because clang is version 7, but we are
+    # using LLVM8.
+    preCompileBuildDriver = ''
+      substituteInPlace Setup.hs --replace "addToLdLibraryPath libDir" "pure ()"
+    '' + (oldAttrs.preCompileBuildDriver or "");
+  });
+
+  yesod-bin = addBuildDepend super.yesod-bin darwin.apple_sdk.frameworks.Cocoa;
+
+  hmatrix = addBuildDepend super.hmatrix darwin.apple_sdk.frameworks.Accelerate;
+
+  # Ensure the necessary frameworks are propagatedBuildInputs on darwin
+  OpenGLRaw = overrideCabal super.OpenGLRaw (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenGL
+    ];
+    preConfigure = ''
+      frameworkPaths=($(for i in $nativeBuildInputs; do if [ -d "$i"/Library/Frameworks ]; then echo "-F$i/Library/Frameworks"; fi done))
+      frameworkPaths=$(IFS=, ; echo "''${frameworkPaths[@]}")
+      configureFlags+=$(if [ -n "$frameworkPaths" ]; then echo -n "--ghc-options=-optl=$frameworkPaths"; fi)
+    '' + (drv.preConfigure or "");
+  });
+  GLURaw = overrideCabal super.GLURaw (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenGL
+    ];
+  });
+  bindings-GLFW = overrideCabal super.bindings-GLFW (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.AGL
+      darwin.apple_sdk.frameworks.Cocoa
+      darwin.apple_sdk.frameworks.OpenGL
+      darwin.apple_sdk.frameworks.IOKit
+      darwin.apple_sdk.frameworks.Kernel
+      darwin.apple_sdk.frameworks.CoreVideo
+      darwin.CF
+    ];
+  });
+  OpenCL = overrideCabal super.OpenCL (drv: {
+    librarySystemDepends = [];
+    libraryHaskellDepends = drv.libraryHaskellDepends ++ [
+      darwin.apple_sdk.frameworks.OpenCL
+    ];
+  });
+
+  # cabal2nix likes to generate dependencies on hinotify when hfsevents is
+  # really required on darwin: https://github.com/NixOS/cabal2nix/issues/146.
+  hinotify = self.hfsevents;
+
+  # FSEvents API is very buggy and tests are unreliable. See
+  # http://openradar.appspot.com/10207999 and similar issues.
+  fsnotify = addBuildDepend (dontCheck super.fsnotify)
+    darwin.apple_sdk.frameworks.Cocoa;
+
+  FractalArt = overrideCabal super.FractalArt (drv: {
+    librarySystemDepends = [
+      darwin.libobjc
+      darwin.apple_sdk.frameworks.AppKit
+    ] ++ (drv.librarySystemDepends or []);
+  });
+
+  arbtt = overrideCabal super.arbtt (drv: {
+    librarySystemDepends = [
+      darwin.apple_sdk.frameworks.Foundation
+      darwin.apple_sdk.frameworks.Carbon
+      darwin.apple_sdk.frameworks.IOKit
+    ] ++ (drv.librarySystemDepends or []);
+  });
+
+  HTF = overrideCabal super.HTF (drv: {
+    # GNU find is not prefixed in stdenv
+    postPatch = ''
+      substituteInPlace scripts/local-htfpp --replace "find=gfind" "find=find"
+    '' + (drv.postPatch or "");
+  });
+
+  # 2021-05-25: Tests fail and I have no way to debug them.
+  hls-class-plugin = dontCheck super.hls-class-plugin;
+
+}
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
index c4bab1f0785e..36fe13151f3c 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
@@ -5,7 +5,7 @@ with haskellLib;
 self: super: {
 
   # This compiler version needs llvm 9.x.
-  llvmPackages = pkgs.llvmPackages_9;
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_9;
 
   # Disable GHC 8.10.x core libraries.
   array = null;
@@ -42,13 +42,10 @@ self: super: {
   unix = null;
   xhtml = null;
 
-  # cabal-install needs more recent versions of Cabal and random, but an older
-  # version of base16-bytestring.
+  # cabal-install needs more recent versions of Cabal and base16-bytestring.
   cabal-install = super.cabal-install.overrideScope (self: super: {
     Cabal = self.Cabal_3_4_0_0;
     base16-bytestring = self.base16-bytestring_0_1_1_7;
-    random = dontCheck super.random_1_2_0;  # break infinite recursion
-    hashable = doJailbreak super.hashable;  # allow random 1.2.x
   });
 
   # cabal-install-parsers is written for Cabal 3.4
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
index bcce0bb897c5..99b53b9f14f3 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -5,7 +5,7 @@ with haskellLib;
 self: super: {
 
   # This compiler version needs llvm 6.x.
-  llvmPackages = pkgs.llvmPackages_6;
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_6;
 
   # Disable GHC 8.6.x core libraries.
   array = null;
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index 00797c0c86f1..aab26897cca4 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -5,7 +5,7 @@ with haskellLib;
 self: super: {
 
   # This compiler version needs llvm 7.x.
-  llvmPackages = pkgs.llvmPackages_7;
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_7;
 
   # Disable GHC 8.8.x core libraries.
   array = null;
@@ -60,8 +60,6 @@ self: super: {
   cabal-install = super.cabal-install.overrideScope (self: super: {
     Cabal = self.Cabal_3_4_0_0;
     base16-bytestring = self.base16-bytestring_0_1_1_7;
-    random = dontCheck super.random_1_2_0;  # break infinite recursion
-    hashable = doJailbreak super.hashable;  # allow random 1.2.x
   });
 
   # Ignore overly restrictive upper version bounds.
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
index 1b8b087326e8..16c85d1fef76 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
@@ -5,7 +5,7 @@ with haskellLib;
 self: super: {
 
   # This compiler version needs llvm 10.x.
-  llvmPackages = pkgs.llvmPackages_10;
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
 
   # Disable GHC 9.0.x core libraries.
   array = null;
@@ -43,13 +43,10 @@ self: super: {
   unix = null;
   xhtml = null;
 
-  # cabal-install needs more recent versions of random, but an older
-  # version of base16-bytestring.
+  # cabal-install needs more recent versions of Cabal and base16-bytestring.
   cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
     Cabal = null;
     base16-bytestring = self.base16-bytestring_0_1_1_7;
-    random = dontCheck super.random_1_2_0;  # break infinite recursion
-    hashable = doJailbreak super.hashable;  # allow random 1.2.x
   });
 
   # Jailbreaks & Version Updates
@@ -79,8 +76,8 @@ self: super: {
 
   # Apply patches from head.hackage.
   alex = appendPatch (dontCheck super.alex) (pkgs.fetchpatch {
-    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/alex-3.2.5.patch";
-    sha256 = "0q8x49k3jjwyspcmidwr6b84s4y43jbf4wqfxfm6wz8x2dxx6nwh";
+    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/fe192e12b88b09499d4aff0e562713e820544bd6/patches/alex-3.2.6.patch";
+    sha256 = "1rzs764a0nhx002v4fadbys98s6qblw4kx4g46galzjf5f7n2dn4";
   });
   doctest = dontCheck (doJailbreak super.doctest_0_18_1);
   generic-deriving = appendPatch (doJailbreak super.generic-deriving) (pkgs.fetchpatch {
@@ -98,4 +95,10 @@ self: super: {
   # The test suite seems pretty broken.
   base64-bytestring = dontCheck super.base64-bytestring;
 
+  # 5.6 introduced support for GHC 9.0.x, but hasn't landed in stackage yet
+  profunctors = super.profunctors_5_6_2;
+
+  # 5 introduced support for GHC 9.0.x, but hasn't landed in stackage yet
+  lens = super.lens_5_0_1;
+
 }
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-head.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-head.nix
index cbfd4b84b2ff..ca455a7c8929 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-head.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-head.nix
@@ -11,8 +11,7 @@ with haskellLib;
 
 self: super: {
 
-  # This compiler version needs llvm 6.x.
-  llvmPackages = pkgs.llvmPackages_6;
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
 
   # Disable GHC 8.7.x core libraries.
   array = null;
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
deleted file mode 100644
index 3bf834c16daf..000000000000
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ /dev/null
@@ -1,11954 +0,0 @@
-# pkgs/development/haskell-modules/configuration-hackage2nix.yaml
-
-compiler: ghc-8.10.4
-
-core-packages:
-  - array-0.5.4.0
-  - base-4.14.1.0
-  - binary-0.8.8.0
-  - bytestring-0.10.12.0
-  - Cabal-3.2.1.0
-  - containers-0.6.2.1
-  - deepseq-1.4.4.0
-  - directory-1.3.6.0
-  - exceptions-0.10.4
-  - filepath-1.4.2.1
-  - ghc-8.10.4
-  - ghc-boot-8.10.4
-  - ghc-boot-th-8.10.4
-  - ghc-compact-0.1.0.0
-  - ghc-heap-8.10.4
-  - ghc-prim-0.6.1
-  - ghci-8.10.4
-  - haskeline-0.8.0.1
-  - hpc-0.6.1.0
-  - integer-gmp-1.0.3.0
-  - libiserv-8.10.4
-  - mtl-2.2.2
-  - parsec-3.1.14.0
-  - pretty-1.1.3.6
-  - process-1.6.9.0
-  - rts-1.0
-  - stm-2.5.0.0
-  - template-haskell-2.16.0.0
-  - terminfo-0.4.1.4
-  - text-1.2.4.1
-  - time-1.9.3
-  - transformers-0.5.6.2
-  - unix-2.7.2.2
-  - xhtml-3000.2.2.1
-
-  # Hack: The following package is a core package of GHCJS. If we don't declare
-  # it, then hackage2nix will generate a Hackage database where all dependants
-  # of this library are marked as "broken".
-  - ghcjs-base-0
-
-# This is a list of packages with versions from the latest Stackage LTS release.
-#
-# The packages and versions in this list cause the `hackage2nix` tool to
-# generate the package at the given version.
-#
-# For instance, with a line like the following:
-#
-# - aeson ==1.4.6.0
-#
-# `hackage2nix` will generate the `aeson` package at version 1.4.6.0 in the
-# ./hackage-packages.nix file.
-#
-# Since the packages in the LTS package set are sometimes older than the latest
-# on Hackage, `hackage2nix` is smart enough to also generate the latest version
-# of a given package.
-#
-# In the above example with aeson, if there was version 1.5.0.0 of aeson
-# available on Hackage, `hackage2nix` would generate two packages, `aeson`
-# at version 1.4.6.0 and `aeson_1_5_0_0` at version 1.5.0.0.
-#
-# WARNING: This list is generated semiautomatically based on the most recent
-# LTS package set. If you want to add entries to it, you must do so before the
-# comment saying "# LTS Haskell x.y". Any changes after that comment will be
-# lost the next time `update-stackage.sh` runs.
-default-package-overrides:
-  # This was only intended for ghc-7.0.4, and has very old deps, one hidden behind a flag
-  - MissingH ==1.4.2.0
-  # gi-gdkx11-4.x requires gtk-4.x, which is still under development and
-  # not yet available in Nixpkgs
-  - gi-gdkx11 < 4
-  # Needs Cabal 3.4 for Setup.hs
-  - gi-javascriptcore < 4.0.23 #
-  - gi-soup < 2.4.24 #
-  - gi-webkit2 < 4.0.27 #
-  # To stay hls 1.0 compatible
-  - ghcide < 1.1
-  - hls-retrie-plugin < 1.0.0.1
-  - lsp < 1.2
-  - lsp-types < 1.2
-  - hls-plugin-api < 1.1.0.0
-  - hls-explicit-imports-plugin < 1.0.0.1
-  # 2021-04-02: Stackage Nighlty has haskell-gi* < 0.25,
-  # so we need to restrict these to compatible versions
-  # Remove these as soon as haskell-gi{,-base} are 0.25.*
-  # in Stackage Nightly!
-  - gi-ggit < 1.0.10
-  - gi-girepository < 1.0.24
-  - gi-gst < 1.0.24
-  - gi-gstbase < 1.0.24
-  - gi-gstvideo < 1.0.24
-  - gi-gtksource < 3.0.24
-  - gi-ibus < 1.5.3
-  - gi-notify < 0.7.23
-  - gi-ostree < 1.0.14
-  - gi-pangocairo < 1.0.25
-  - gi-secret < 0.0.13
-  - gi-vte < 2.91.28
-
-  # Stackage Nightly 2021-04-15
-  - abstract-deque ==0.3
-  - abstract-par ==0.3.3
-  - AC-Angle ==1.0
-  - accuerr ==0.2.0.2
-  - ace ==0.6
-  - action-permutations ==0.0.0.1
-  - ad ==4.4.1
-  - adjunctions ==4.4
-  - adler32 ==0.1.2.0
-  - aeson ==1.5.6.0
-  - aeson-attoparsec ==0.0.0
-  - aeson-better-errors ==0.9.1.0
-  - aeson-casing ==0.2.0.0
-  - aeson-combinators ==0.0.5.0
-  - aeson-commit ==1.3
-  - aeson-compat ==0.3.9
-  - aeson-default ==0.9.1.0
-  - aeson-diff ==1.1.0.9
-  - aeson-generic-compat ==0.0.1.3
-  - aeson-lens ==0.5.0.0
-  - aeson-optics ==1.1.0.1
-  - aeson-picker ==0.1.0.5
-  - aeson-pretty ==0.8.8
-  - aeson-qq ==0.8.3
-  - aeson-schemas ==1.3.3
-  - aeson-with ==0.1.2.0
-  - aeson-yak ==0.1.1.3
-  - aeson-yaml ==1.1.0.0
-  - Agda ==2.6.1.3
-  - agda2lagda ==0.2020.11.1
-  - al ==0.1.4.2
-  - alarmclock ==0.7.0.5
-  - alerts ==0.1.2.0
-  - alex ==3.2.6
-  - alex-meta ==0.3.0.13
-  - alg ==0.2.13.1
-  - algebraic-graphs ==0.5
-  - Allure ==0.10.2.0
-  - almost-fix ==0.0.2
-  - alsa-core ==0.5.0.1
-  - alsa-mixer ==0.3.0
-  - alsa-pcm ==0.6.1.1
-  - alsa-seq ==0.6.0.8
-  - alternative-vector ==0.0.0
-  - ALUT ==2.4.0.3
-  - amazonka-apigateway ==1.6.1
-  - amazonka-application-autoscaling ==1.6.1
-  - amazonka-appstream ==1.6.1
-  - amazonka-athena ==1.6.1
-  - amazonka-autoscaling ==1.6.1
-  - amazonka-budgets ==1.6.1
-  - amazonka-certificatemanager ==1.6.1
-  - amazonka-cloudformation ==1.6.1
-  - amazonka-cloudfront ==1.6.1
-  - amazonka-cloudhsm ==1.6.1
-  - amazonka-cloudsearch ==1.6.1
-  - amazonka-cloudsearch-domains ==1.6.1
-  - amazonka-cloudtrail ==1.6.1
-  - amazonka-cloudwatch ==1.6.1
-  - amazonka-cloudwatch-events ==1.6.1
-  - amazonka-cloudwatch-logs ==1.6.1
-  - amazonka-codebuild ==1.6.1
-  - amazonka-codecommit ==1.6.1
-  - amazonka-codedeploy ==1.6.1
-  - amazonka-codepipeline ==1.6.1
-  - amazonka-cognito-identity ==1.6.1
-  - amazonka-cognito-idp ==1.6.1
-  - amazonka-cognito-sync ==1.6.1
-  - amazonka-config ==1.6.1
-  - amazonka-core ==1.6.1
-  - amazonka-datapipeline ==1.6.1
-  - amazonka-devicefarm ==1.6.1
-  - amazonka-directconnect ==1.6.1
-  - amazonka-discovery ==1.6.1
-  - amazonka-dms ==1.6.1
-  - amazonka-ds ==1.6.1
-  - amazonka-dynamodb ==1.6.1
-  - amazonka-dynamodb-streams ==1.6.1
-  - amazonka-ecr ==1.6.1
-  - amazonka-ecs ==1.6.1
-  - amazonka-efs ==1.6.1
-  - amazonka-elasticache ==1.6.1
-  - amazonka-elasticbeanstalk ==1.6.1
-  - amazonka-elasticsearch ==1.6.1
-  - amazonka-elastictranscoder ==1.6.1
-  - amazonka-elb ==1.6.1
-  - amazonka-elbv2 ==1.6.1
-  - amazonka-emr ==1.6.1
-  - amazonka-gamelift ==1.6.1
-  - amazonka-glacier ==1.6.1
-  - amazonka-glue ==1.6.1
-  - amazonka-health ==1.6.1
-  - amazonka-iam ==1.6.1
-  - amazonka-importexport ==1.6.1
-  - amazonka-inspector ==1.6.1
-  - amazonka-iot ==1.6.1
-  - amazonka-iot-dataplane ==1.6.1
-  - amazonka-kinesis ==1.6.1
-  - amazonka-kinesis-analytics ==1.6.1
-  - amazonka-kinesis-firehose ==1.6.1
-  - amazonka-kms ==1.6.1
-  - amazonka-lambda ==1.6.1
-  - amazonka-lightsail ==1.6.1
-  - amazonka-marketplace-analytics ==1.6.1
-  - amazonka-marketplace-metering ==1.6.1
-  - amazonka-ml ==1.6.1
-  - amazonka-opsworks ==1.6.1
-  - amazonka-opsworks-cm ==1.6.1
-  - amazonka-pinpoint ==1.6.1
-  - amazonka-polly ==1.6.1
-  - amazonka-rds ==1.6.1
-  - amazonka-redshift ==1.6.1
-  - amazonka-rekognition ==1.6.1
-  - amazonka-route53 ==1.6.1
-  - amazonka-route53-domains ==1.6.1
-  - amazonka-s3 ==1.6.1
-  - amazonka-sdb ==1.6.1
-  - amazonka-servicecatalog ==1.6.1
-  - amazonka-ses ==1.6.1
-  - amazonka-shield ==1.6.1
-  - amazonka-sms ==1.6.1
-  - amazonka-snowball ==1.6.1
-  - amazonka-sns ==1.6.1
-  - amazonka-sqs ==1.6.1
-  - amazonka-ssm ==1.6.1
-  - amazonka-stepfunctions ==1.6.1
-  - amazonka-storagegateway ==1.6.1
-  - amazonka-sts ==1.6.1
-  - amazonka-support ==1.6.1
-  - amazonka-swf ==1.6.1
-  - amazonka-test ==1.6.1
-  - amazonka-waf ==1.6.1
-  - amazonka-workspaces ==1.6.1
-  - amazonka-xray ==1.6.1
-  - amqp ==0.22.0
-  - amqp-utils ==0.6.1.0
-  - annotated-wl-pprint ==0.7.0
-  - ansi-terminal ==0.11
-  - ansi-wl-pprint ==0.6.9
-  - ANum ==0.2.0.2
-  - apecs ==0.9.2
-  - apecs-gloss ==0.2.4
-  - apecs-physics ==0.4.5
-  - api-field-json-th ==0.1.0.2
-  - api-maker ==0.1.0.0
-  - ap-normalize ==0.1.0.0
-  - appar ==0.1.8
-  - appendmap ==0.1.5
-  - apply-refact ==0.9.2.0
-  - apportionment ==0.0.0.3
-  - approximate ==0.3.4
-  - approximate-equality ==1.1.0.2
-  - app-settings ==0.2.0.12
-  - arbor-lru-cache ==0.1.1.1
-  - arithmoi ==0.11.0.1
-  - array-memoize ==0.6.0
-  - arrow-extras ==0.1.0.1
-  - ascii ==1.0.1.4
-  - ascii-case ==1.0.0.4
-  - ascii-char ==1.0.0.8
-  - asciidiagram ==1.3.3.3
-  - ascii-group ==1.0.0.4
-  - ascii-predicates ==1.0.0.4
-  - ascii-progress ==0.3.3.0
-  - ascii-superset ==1.0.1.4
-  - ascii-th ==1.0.0.4
-  - asif ==6.0.4
-  - asn1-encoding ==0.9.6
-  - asn1-parse ==0.9.5
-  - asn1-types ==0.3.4
-  - assert-failure ==0.1.2.5
-  - assoc ==1.0.2
-  - astro ==0.4.2.1
-  - async ==2.2.3
-  - async-extra ==0.2.0.0
-  - async-pool ==0.9.1
-  - async-refresh ==0.3.0.0
-  - async-refresh-tokens ==0.4.0.0
-  - atom-basic ==0.2.5
-  - atomic-primops ==0.8.4
-  - atomic-write ==0.2.0.7
-  - attoparsec ==0.13.2.5
-  - attoparsec-base64 ==0.0.0
-  - attoparsec-binary ==0.2
-  - attoparsec-expr ==0.1.1.2
-  - attoparsec-iso8601 ==1.0.2.0
-  - attoparsec-path ==0.0.0.1
-  - audacity ==0.0.2
-  - aur ==7.0.6
-  - aura ==3.2.4
-  - authenticate ==1.3.5
-  - authenticate-oauth ==1.6.0.1
-  - auto ==0.4.3.1
-  - autoexporter ==1.1.20
-  - auto-update ==0.1.6
-  - avers ==0.0.17.1
-  - avro ==0.5.2.0
-  - aws-cloudfront-signed-cookies ==0.2.0.6
-  - backprop ==0.2.6.4
-  - backtracking ==0.1.0
-  - bank-holidays-england ==0.2.0.6
-  - barbies ==2.0.2.0
-  - base16 ==0.3.0.1
-  - base16-bytestring ==1.0.1.0
-  - base16-lens ==0.1.3.2
-  - base32 ==0.2.0.0
-  - base32-lens ==0.1.1.1
-  - base32string ==0.9.1
-  - base58-bytestring ==0.1.0
-  - base58string ==0.10.0
-  - base64 ==0.4.2.3
-  - base64-bytestring ==1.1.0.0
-  - base64-bytestring-type ==1.0.1
-  - base64-lens ==0.3.1
-  - base64-string ==0.2
-  - base-compat ==0.11.2
-  - base-compat-batteries ==0.11.2
-  - basement ==0.0.11
-  - base-orphans ==0.8.4
-  - base-prelude ==1.4
-  - base-unicode-symbols ==0.2.4.2
-  - basic-prelude ==0.7.0
-  - bazel-runfiles ==0.12
-  - bbdb ==0.8
-  - bcp47 ==0.2.0.3
-  - bcp47-orphans ==0.1.0.3
-  - bcrypt ==0.0.11
-  - bech32 ==1.1.0
-  - bech32-th ==1.0.2
-  - bench ==1.0.12
-  - benchpress ==0.2.2.16
-  - between ==0.11.0.0
-  - bibtex ==0.1.0.6
-  - bifunctors ==5.5.10
-  - bimap ==0.4.0
-  - bimaps ==0.1.0.2
-  - bimap-server ==0.1.0.1
-  - bin ==0.1.1
-  - binary-conduit ==1.3.1
-  - binary-ext ==2.0.4
-  - binary-ieee754 ==0.1.0.0
-  - binary-instances ==1.0.1
-  - binary-list ==1.1.1.2
-  - binary-orphans ==1.0.1
-  - binary-parser ==0.5.7
-  - binary-parsers ==0.2.4.0
-  - binary-search ==2.0.0
-  - binary-shared ==0.8.3
-  - binary-tagged ==0.3
-  - bindings-DSL ==1.0.25
-  - bindings-GLFW ==3.3.2.0
-  - bindings-libzip ==1.0.1
-  - bindings-uname ==0.1
-  - bins ==0.1.2.0
-  - bitarray ==0.0.1.1
-  - bits ==0.5.3
-  - bitset-word8 ==0.1.1.2
-  - bits-extra ==0.0.2.0
-  - bitvec ==1.1.1.0
-  - bitwise-enum ==1.0.1.0
-  - blake2 ==0.3.0
-  - blanks ==0.5.0
-  - blas-carray ==0.1.0.1
-  - blas-comfort-array ==0.0.0.2
-  - blas-ffi ==0.1
-  - blaze-bootstrap ==0.1.0.1
-  - blaze-builder ==0.4.2.1
-  - blaze-html ==0.9.1.2
-  - blaze-markup ==0.8.2.8
-  - blaze-svg ==0.3.6.1
-  - blaze-textual ==0.2.1.0
-  - bmp ==1.2.6.3
-  - BNFC ==2.9.1
-  - BNFC-meta ==0.6.1
-  - board-games ==0.3
-  - boltzmann-samplers ==0.1.1.0
-  - Boolean ==0.2.4
-  - boolean-like ==0.1.1.0
-  - boolsimplifier ==0.1.8
-  - boots ==0.2.0.1
-  - bordacount ==0.1.0.0
-  - boring ==0.2
-  - both ==0.1.1.1
-  - bound ==2.0.3
-  - BoundedChan ==1.0.3.0
-  - bounded-queue ==1.0.0
-  - boundingboxes ==0.2.3
-  - bower-json ==1.0.0.1
-  - boxes ==0.1.5
-  - brick ==0.61
-  - broadcast-chan ==0.2.1.1
-  - bsb-http-chunked ==0.0.0.4
-  - bson ==0.4.0.1
-  - btrfs ==0.2.0.0
-  - buffer-builder ==0.2.4.7
-  - buffer-pipe ==0.0
-  - bugsnag-haskell ==0.0.4.1
-  - bugsnag-hs ==0.2.0.3
-  - bugzilla-redhat ==0.3.1
-  - burrito ==1.2.0.1
-  - butcher ==1.3.3.2
-  - buttplug-hs-core ==0.1.0.0
-  - bv ==0.5
-  - bv-little ==1.1.1
-  - byteable ==0.1.1
-  - byte-count-reader ==0.10.1.2
-  - bytedump ==1.0
-  - byte-order ==0.1.2.0
-  - byteorder ==1.0.4
-  - bytes ==0.17.1
-  - byteset ==0.1.1.0
-  - bytestring-builder ==0.10.8.2.0
-  - bytestring-conversion ==0.3.1
-  - bytestring-lexing ==0.5.0.2
-  - bytestring-mmap ==0.2.2
-  - bytestring-strict-builder ==0.4.5.4
-  - bytestring-to-vector ==0.3.0.1
-  - bytestring-tree-builder ==0.2.7.9
-  - bz2 ==1.0.1.0
-  - bzlib ==0.5.1.0
-  - bzlib-conduit ==0.3.0.2
-  - c14n ==0.1.0.1
-  - c2hs ==0.28.7
-  - cabal-appimage ==0.3.0.2
-  - cabal-debian ==5.1
-  - cabal-doctest ==1.0.8
-  - cabal-file ==0.1.1
-  - cabal-flatpak ==0.1.0.2
-  - cabal-plan ==0.7.2.0
-  - cabal-rpm ==2.0.8
-  - cache ==0.1.3.0
-  - cacophony ==0.10.1
-  - calendar-recycling ==0.0.0.1
-  - call-stack ==0.3.0
-  - can-i-haz ==0.3.1.0
-  - ca-province-codes ==1.0.0.0
-  - cardano-coin-selection ==1.0.1
-  - carray ==0.1.6.8
-  - casa-client ==0.0.1
-  - casa-types ==0.0.2
-  - cased ==0.1.0.0
-  - case-insensitive ==1.2.1.0
-  - cases ==0.1.4.1
-  - casing ==0.1.4.1
-  - cassava ==0.5.2.0
-  - cassava-conduit ==0.6.0
-  - cassava-megaparsec ==2.0.2
-  - cast ==0.1.0.2
-  - category ==0.2.5.0
-  - cayley-client ==0.4.15
-  - cborg ==0.2.5.0
-  - cborg-json ==0.2.2.0
-  - cereal ==0.5.8.1
-  - cereal-conduit ==0.8.0
-  - cereal-text ==0.1.0.2
-  - cereal-vector ==0.2.0.1
-  - cfenv ==0.1.0.0
-  - cgi ==3001.5.0.0
-  - chan ==0.0.4.1
-  - ChannelT ==0.0.0.7
-  - character-cases ==0.1.0.6
-  - charset ==0.3.8
-  - charsetdetect-ae ==1.1.0.4
-  - Chart ==1.9.3
-  - chaselev-deque ==0.5.0.5
-  - ChasingBottoms ==1.3.1.10
-  - cheapskate ==0.1.1.2
-  - cheapskate-highlight ==0.1.0.0
-  - cheapskate-lucid ==0.1.0.0
-  - checkers ==0.5.6
-  - checksum ==0.0
-  - chimera ==0.3.1.0
-  - chiphunk ==0.1.4.0
-  - choice ==0.2.2
-  - chronologique ==0.3.1.3
-  - chronos ==1.1.1
-  - chronos-bench ==0.2.0.2
-  - chunked-data ==0.3.1
-  - cipher-aes ==0.2.11
-  - cipher-camellia ==0.0.2
-  - cipher-des ==0.0.6
-  - cipher-rc4 ==0.1.4
-  - circle-packing ==0.1.0.6
-  - circular ==0.3.1.1
-  - citeproc ==0.3.0.9
-  - clash-ghc ==1.2.5
-  - clash-lib ==1.2.5
-  - clash-prelude ==1.2.5
-  - classy-prelude ==1.5.0
-  - classy-prelude-conduit ==1.5.0
-  - clay ==0.13.3
-  - clientsession ==0.9.1.2
-  - climb ==0.3.3
-  - Clipboard ==2.3.2.0
-  - clock ==0.8
-  - clock-extras ==0.1.0.2
-  - closed ==0.2.0.1
-  - clumpiness ==0.17.0.2
-  - ClustalParser ==1.3.0
-  - cmark ==0.6
-  - cmark-gfm ==0.2.2
-  - cmark-lucid ==0.1.0.0
-  - cmdargs ==0.10.21
-  - codec-beam ==0.2.0
-  - code-page ==0.2.1
-  - co-log-concurrent ==0.5.0.0
-  - co-log-core ==0.2.1.1
-  - Color ==0.3.1
-  - colorful-monoids ==0.2.1.3
-  - colorize-haskell ==1.0.1
-  - colour ==2.3.5
-  - combinatorial ==0.1.0.1
-  - comfort-array ==0.4.1
-  - comfort-graph ==0.0.3.1
-  - commonmark ==0.1.1.4
-  - commonmark-extensions ==0.2.0.4
-  - commonmark-pandoc ==0.2.0.1
-  - commutative ==0.0.2
-  - comonad ==5.0.8
-  - comonad-extras ==4.0.1
-  - compactmap ==0.1.4.2.1
-  - compdata ==0.12.1
-  - compensated ==0.8.3
-  - compiler-warnings ==0.1.0
-  - composable-associations ==0.1.0.0
-  - composable-associations-aeson ==0.1.0.1
-  - composite-aeson ==0.7.5.0
-  - composite-aeson-path ==0.7.5.0
-  - composite-aeson-refined ==0.7.5.0
-  - composite-base ==0.7.5.0
-  - composite-binary ==0.7.5.0
-  - composite-ekg ==0.7.5.0
-  - composite-hashable ==0.7.5.0
-  - composite-tuple ==0.1.2.0
-  - composite-xstep ==0.1.0.0
-  - composition ==1.0.2.2
-  - composition-extra ==2.0.0
-  - concise ==0.1.0.1
-  - concurrency ==1.11.0.1
-  - concurrent-extra ==0.7.0.12
-  - concurrent-output ==1.10.12
-  - concurrent-split ==0.0.1.1
-  - concurrent-supply ==0.1.8
-  - cond ==0.4.1.1
-  - conduit ==1.3.4.1
-  - conduit-algorithms ==0.0.11.0
-  - conduit-combinators ==1.3.0
-  - conduit-concurrent-map ==0.1.1
-  - conduit-extra ==1.3.5
-  - conduit-parse ==0.2.1.0
-  - conduit-zstd ==0.0.2.0
-  - conferer ==1.1.0.0
-  - conferer-aeson ==1.1.0.1
-  - conferer-hspec ==1.1.0.0
-  - conferer-warp ==1.1.0.0
-  - ConfigFile ==1.1.4
-  - config-ini ==0.2.4.0
-  - configurator ==0.3.0.0
-  - configurator-export ==0.1.0.1
-  - configurator-pg ==0.2.5
-  - connection ==0.3.1
-  - connection-pool ==0.2.2
-  - console-style ==0.0.2.1
-  - constraint ==0.1.4.0
-  - constraints ==0.13
-  - constraint-tuples ==0.1.2
-  - construct ==0.3.0.2
-  - contravariant ==1.5.3
-  - contravariant-extras ==0.3.5.2
-  - control-bool ==0.2.1
-  - control-dsl ==0.2.1.3
-  - control-monad-free ==0.6.2
-  - control-monad-omega ==0.3.2
-  - convertible ==1.1.1.0
-  - cookie ==0.4.5
-  - core-data ==0.2.1.9
-  - core-program ==0.2.6.0
-  - core-text ==0.3.0.0
-  - countable ==1.0
-  - country ==0.2.1
-  - cpphs ==1.20.9.1
-  - cprng-aes ==0.6.1
-  - cpu ==0.1.2
-  - cpuinfo ==0.1.0.2
-  - crackNum ==2.4
-  - crc32c ==0.0.0
-  - credential-store ==0.1.2
-  - criterion ==1.5.9.0
-  - criterion-measurement ==0.1.2.0
-  - cron ==0.7.0
-  - crypto-api ==0.13.3
-  - crypto-cipher-types ==0.0.9
-  - cryptocompare ==0.1.2
-  - crypto-enigma ==0.1.1.6
-  - cryptohash ==0.11.9
-  - cryptohash-cryptoapi ==0.1.4
-  - cryptohash-md5 ==0.11.100.1
-  - cryptohash-sha1 ==0.11.100.1
-  - cryptohash-sha256 ==0.11.102.0
-  - cryptohash-sha512 ==0.11.100.1
-  - cryptonite ==0.28
-  - cryptonite-conduit ==0.2.2
-  - cryptonite-openssl ==0.7
-  - crypto-numbers ==0.2.7
-  - crypto-pubkey ==0.2.8
-  - crypto-pubkey-types ==0.4.3
-  - crypto-random ==0.0.9
-  - crypto-random-api ==0.2.0
-  - csp ==1.4.0
-  - css-syntax ==0.1.0.0
-  - css-text ==0.1.3.0
-  - csv ==0.1.2
-  - ctrie ==0.2
-  - cubicbezier ==0.6.0.6
-  - cubicspline ==0.1.2
-  - cuckoo-filter ==0.2.0.2
-  - cue-sheet ==2.0.1
-  - curl ==1.3.8
-  - currencies ==0.2.0.0
-  - currency ==0.2.0.0
-  - cursor ==0.3.0.0
-  - cursor-brick ==0.1.0.0
-  - cursor-fuzzy-time ==0.0.0.0
-  - cursor-gen ==0.3.0.0
-  - cutter ==0.0
-  - cyclotomic ==1.1.1
-  - czipwith ==1.0.1.3
-  - d10 ==0.2.1.6
-  - data-accessor ==0.2.3
-  - data-accessor-mtl ==0.2.0.4
-  - data-accessor-template ==0.2.1.16
-  - data-accessor-transformers ==0.2.1.7
-  - data-ascii ==1.0.0.6
-  - data-binary-ieee754 ==0.4.4
-  - data-bword ==0.1.0.1
-  - data-checked ==0.3
-  - data-clist ==0.1.2.3
-  - data-compat ==0.1.0.3
-  - data-default ==0.7.1.1
-  - data-default-class ==0.1.2.0
-  - data-default-instances-containers ==0.0.1
-  - data-default-instances-dlist ==0.0.1
-  - data-default-instances-old-locale ==0.0.1
-  - data-diverse ==4.7.0.0
-  - datadog ==0.2.5.0
-  - data-dword ==0.3.2
-  - data-endian ==0.1.1
-  - data-fix ==0.3.1
-  - data-forest ==0.1.0.8
-  - data-has ==0.4.0.0
-  - data-hash ==0.2.0.1
-  - data-interval ==2.1.0
-  - data-inttrie ==0.1.4
-  - data-lens-light ==0.1.2.2
-  - data-memocombinators ==0.5.1
-  - data-msgpack ==0.0.13
-  - data-msgpack-types ==0.0.3
-  - data-or ==1.0.0.5
-  - data-ordlist ==0.4.7.0
-  - data-ref ==0.0.2
-  - data-reify ==0.6.3
-  - data-serializer ==0.3.5
-  - data-textual ==0.3.0.3
-  - dataurl ==0.1.0.0
-  - DAV ==1.3.4
-  - DBFunctor ==0.1.1.1
-  - dbus ==1.2.17
-  - dbus-hslogger ==0.1.0.1
-  - debian ==4.0.2
-  - debian-build ==0.10.2.0
-  - debug-trace-var ==0.2.0
-  - dec ==0.0.4
-  - Decimal ==0.5.2
-  - declarative ==0.5.4
-  - deepseq-generics ==0.2.0.0
-  - deepseq-instances ==0.1.0.1
-  - deferred-folds ==0.9.17
-  - dejafu ==2.4.0.2
-  - dense-linear-algebra ==0.1.0.0
-  - depq ==0.4.2
-  - deque ==0.4.3
-  - deriveJsonNoPrefix ==0.1.0.1
-  - derive-topdown ==0.0.2.2
-  - deriving-aeson ==0.2.6.1
-  - deriving-compat ==0.5.10
-  - derulo ==1.0.10
-  - dhall ==1.38.1
-  - dhall-bash ==1.0.36
-  - dhall-json ==1.7.6
-  - dhall-lsp-server ==1.0.14
-  - dhall-yaml ==1.2.6
-  - diagrams-solve ==0.1.3
-  - dialogflow-fulfillment ==0.1.1.3
-  - di-core ==1.0.4
-  - dictionary-sharing ==0.1.0.0
-  - Diff ==0.4.0
-  - digest ==0.0.1.2
-  - digits ==0.3.1
-  - dimensional ==1.3
-  - di-monad ==1.3.1
-  - directory-tree ==0.12.1
-  - direct-sqlite ==2.3.26
-  - dirichlet ==0.1.0.2
-  - discount ==0.1.1
-  - disk-free-space ==0.1.0.1
-  - distributed-closure ==0.4.2.0
-  - distribution-opensuse ==1.1.1
-  - distributive ==0.6.2.1
-  - dl-fedora ==0.8
-  - dlist ==0.8.0.8
-  - dlist-instances ==0.1.1.1
-  - dlist-nonempty ==0.1.1
-  - dns ==4.0.1
-  - dockerfile ==0.2.0
-  - doclayout ==0.3.0.2
-  - doctemplates ==0.9
-  - doctest ==0.16.3
-  - doctest-discover ==0.2.0.0
-  - doctest-driver-gen ==0.3.0.3
-  - doctest-exitcode-stdio ==0.0
-  - doctest-extract ==0.1
-  - doctest-lib ==0.1
-  - doldol ==0.4.1.2
-  - do-list ==1.0.1
-  - do-notation ==0.1.0.2
-  - dot ==0.3
-  - dotenv ==0.8.0.7
-  - dotgen ==0.4.3
-  - dotnet-timespan ==0.0.1.0
-  - double-conversion ==2.0.2.0
-  - download ==0.3.2.7
-  - download-curl ==0.1.4
-  - drinkery ==0.4
-  - dsp ==0.2.5.1
-  - dual ==0.1.1.1
-  - dublincore-xml-conduit ==0.1.0.2
-  - dunai ==0.7.0
-  - duration ==0.2.0.0
-  - dvorak ==0.1.0.0
-  - dynamic-state ==0.3.1
-  - dyre ==0.8.12
-  - eap ==0.9.0.2
-  - earcut ==0.1.0.4
-  - Earley ==0.13.0.1
-  - easy-file ==0.2.2
-  - Ebnf2ps ==1.0.15
-  - echo ==0.1.4
-  - ecstasy ==0.2.1.0
-  - ed25519 ==0.0.5.0
-  - edit-distance ==0.2.2.1
-  - edit-distance-vector ==1.0.0.4
-  - editor-open ==0.6.0.0
-  - egison ==4.1.2
-  - egison-pattern-src ==0.2.1.2
-  - egison-pattern-src-th-mode ==0.2.1.2
-  - either ==5.0.1.1
-  - either-both ==0.1.1.1
-  - either-unwrap ==1.1
-  - ekg ==0.4.0.15
-  - ekg-core ==0.1.1.7
-  - ekg-json ==0.1.0.6
-  - ekg-statsd ==0.2.5.0
-  - elerea ==2.9.0
-  - elf ==0.30
-  - eliminators ==0.7
-  - elm2nix ==0.2.1
-  - elm-bridge ==0.6.1
-  - elm-core-sources ==1.0.0
-  - elm-export ==0.6.0.1
-  - elynx ==0.5.0.2
-  - elynx-markov ==0.5.0.2
-  - elynx-nexus ==0.5.0.2
-  - elynx-seq ==0.5.0.2
-  - elynx-tools ==0.5.0.2
-  - elynx-tree ==0.5.0.2
-  - email-validate ==2.3.2.13
-  - emojis ==0.1
-  - enclosed-exceptions ==1.0.3
-  - ENIG ==0.0.1.0
-  - entropy ==0.4.1.6
-  - enummapset ==0.6.0.3
-  - enumset ==0.0.5
-  - enum-subset-generate ==0.1.0.0
-  - envelope ==0.2.2.0
-  - envparse ==0.4.1
-  - envy ==2.1.0.0
-  - epub-metadata ==4.5
-  - eq ==4.2.1
-  - equal-files ==0.0.5.3
-  - equational-reasoning ==0.7.0.0
-  - equivalence ==0.3.5
-  - erf ==2.0.0.0
-  - error-or ==0.1.2.0
-  - error-or-utils ==0.1.1
-  - errors ==2.3.0
-  - errors-ext ==0.4.2
-  - ersatz ==0.4.9
-  - esqueleto ==3.4.1.1
-  - essence-of-live-coding ==0.2.5
-  - essence-of-live-coding-gloss ==0.2.5
-  - essence-of-live-coding-pulse ==0.2.5
-  - essence-of-live-coding-quickcheck ==0.2.5
-  - etc ==0.4.1.0
-  - eve ==0.1.9.0
-  - eventful-core ==0.2.0
-  - eventful-test-helpers ==0.2.0
-  - event-list ==0.1.2
-  - eventstore ==1.4.1
-  - every ==0.0.1
-  - exact-combinatorics ==0.2.0.9
-  - exact-pi ==0.5.0.1
-  - exception-hierarchy ==0.1.0.4
-  - exception-mtl ==0.4.0.1
-  - exceptions ==0.10.4
-  - exception-transformers ==0.4.0.9
-  - exception-via ==0.1.0.0
-  - executable-path ==0.0.3.1
-  - exit-codes ==1.0.0
-  - exomizer ==1.0.0
-  - experimenter ==0.1.0.12
-  - expiring-cache-map ==0.0.6.1
-  - explicit-exception ==0.1.10
-  - exp-pairs ==0.2.1.0
-  - express ==0.1.4
-  - extended-reals ==0.2.4.0
-  - extensible-effects ==5.0.0.1
-  - extensible-exceptions ==0.1.1.4
-  - extra ==1.7.9
-  - extractable-singleton ==0.0.1
-  - extrapolate ==0.4.2
-  - fail ==4.9.0.0
-  - failable ==1.2.4.0
-  - fakedata ==0.8.0
-  - fakedata-parser ==0.1.0.0
-  - fakefs ==0.3.0.2
-  - fakepull ==0.3.0.2
-  - faktory ==1.0.2.1
-  - fast-digits ==0.3.0.0
-  - fast-logger ==3.0.3
-  - fast-math ==1.0.2
-  - fb ==2.1.1
-  - fclabels ==2.0.5
-  - feature-flags ==0.1.0.1
-  - fedora-dists ==1.1.2
-  - fedora-haskell-tools ==0.9
-  - feed ==1.3.2.0
-  - FenwickTree ==0.1.2.1
-  - fft ==0.1.8.6
-  - fgl ==5.7.0.3
-  - file-embed ==0.0.13.0
-  - file-embed-lzma ==0
-  - filelock ==0.1.1.5
-  - filemanip ==0.3.6.3
-  - file-modules ==0.1.2.4
-  - filepath-bytestring ==1.4.2.1.7
-  - file-path-th ==0.1.0.0
-  - filepattern ==0.1.2
-  - fileplow ==0.1.0.0
-  - filtrable ==0.1.4.0
-  - fin ==0.2
-  - FindBin ==0.0.5
-  - fingertree ==0.1.4.2
-  - finite-typelits ==0.1.4.2
-  - first-class-families ==0.8.0.1
-  - first-class-patterns ==0.3.2.5
-  - fitspec ==0.4.8
-  - fixed ==0.3
-  - fixed-length ==0.2.2.1
-  - fixed-vector ==1.2.0.0
-  - fixed-vector-hetero ==0.6.1.0
-  - fix-whitespace ==0.0.5
-  - flac ==0.2.0
-  - flac-picture ==0.1.2
-  - flags-applicative ==0.1.0.3
-  - flat ==0.4.4
-  - flat-mcmc ==1.5.2
-  - flexible-defaults ==0.0.3
-  - FloatingHex ==0.5
-  - floatshow ==0.2.4
-  - flow ==1.0.22
-  - flush-queue ==1.0.0
-  - fmlist ==0.9.4
-  - fmt ==0.6.1.2
-  - fn ==0.3.0.2
-  - focus ==1.0.2
-  - focuslist ==0.1.0.2
-  - foldable1 ==0.1.0.0
-  - fold-debounce ==0.2.0.9
-  - fold-debounce-conduit ==0.2.0.6
-  - foldl ==1.4.11
-  - folds ==0.7.6
-  - follow-file ==0.0.3
-  - FontyFruity ==0.5.3.5
-  - foreign-store ==0.2
-  - ForestStructures ==0.0.1.0
-  - forkable-monad ==0.2.0.3
-  - forma ==1.1.3
-  - format-numbers ==0.1.0.1
-  - formatting ==6.3.7
-  - foundation ==0.0.25
-  - free ==5.1.5
-  - free-categories ==0.2.0.2
-  - freenect ==1.2.1
-  - freer-simple ==1.2.1.1
-  - freetype2 ==0.2.0
-  - free-vl ==0.1.4
-  - friendly-time ==0.4.1
-  - from-sum ==0.2.3.0
-  - frontmatter ==0.1.0.2
-  - fsnotify ==0.3.0.1
-  - fsnotify-conduit ==0.1.1.1
-  - ftp-client ==0.5.1.4
-  - ftp-client-conduit ==0.5.0.5
-  - funcmp ==1.9
-  - function-builder ==0.3.0.1
-  - functor-classes-compat ==1.0.1
-  - fusion-plugin ==0.2.2
-  - fusion-plugin-types ==0.1.0
-  - fuzzcheck ==0.1.1
-  - fuzzy ==0.1.0.0
-  - fuzzy-dates ==0.1.1.2
-  - fuzzyset ==0.2.0
-  - fuzzy-time ==0.1.0.0
-  - gauge ==0.2.5
-  - gd ==3000.7.3
-  - gdp ==0.0.3.0
-  - general-games ==1.1.1
-  - generic-aeson ==0.2.0.12
-  - generic-arbitrary ==0.1.0
-  - generic-constraints ==1.1.1.1
-  - generic-data ==0.9.2.0
-  - generic-data-surgery ==0.3.0.0
-  - generic-deriving ==1.13.1
-  - generic-functor ==0.2.0.0
-  - generic-lens ==2.1.0.0
-  - generic-lens-core ==2.1.0.0
-  - generic-monoid ==0.1.0.1
-  - generic-optics ==2.1.0.0
-  - GenericPretty ==1.2.2
-  - generic-random ==1.3.0.1
-  - generics-eot ==0.4.0.1
-  - generics-sop ==0.5.1.1
-  - generics-sop-lens ==0.2.0.1
-  - geniplate-mirror ==0.7.7
-  - genvalidity ==0.11.0.0
-  - genvalidity-aeson ==0.3.0.0
-  - genvalidity-bytestring ==0.6.0.0
-  - genvalidity-containers ==0.9.0.0
-  - genvalidity-criterion ==0.2.0.0
-  - genvalidity-hspec ==0.7.0.4
-  - genvalidity-hspec-aeson ==0.3.1.1
-  - genvalidity-hspec-binary ==0.2.0.4
-  - genvalidity-hspec-cereal ==0.2.0.4
-  - genvalidity-hspec-hashable ==0.2.0.5
-  - genvalidity-hspec-optics ==0.1.1.2
-  - genvalidity-hspec-persistent ==0.0.0.1
-  - genvalidity-mergeful ==0.2.0.0
-  - genvalidity-mergeless ==0.2.0.0
-  - genvalidity-path ==0.3.0.4
-  - genvalidity-persistent ==0.0.0.0
-  - genvalidity-property ==0.5.0.1
-  - genvalidity-scientific ==0.2.1.1
-  - genvalidity-sydtest ==0.0.0.0
-  - genvalidity-sydtest-aeson ==0.0.0.0
-  - genvalidity-sydtest-hashable ==0.0.0.0
-  - genvalidity-sydtest-lens ==0.0.0.0
-  - genvalidity-sydtest-persistent ==0.0.0.1
-  - genvalidity-text ==0.7.0.2
-  - genvalidity-time ==0.3.0.0
-  - genvalidity-typed-uuid ==0.0.0.2
-  - genvalidity-unordered-containers ==0.3.0.1
-  - genvalidity-uuid ==0.1.0.4
-  - genvalidity-vector ==0.3.0.1
-  - geojson ==4.0.2
-  - getopt-generics ==0.13.0.4
-  - ghc-byteorder ==4.11.0.0.10
-  - ghc-check ==0.5.0.4
-  - ghc-core ==0.5.6
-  - ghc-events ==0.16.0
-  - ghc-exactprint ==0.6.4
-  - ghcid ==0.8.7
-  - ghci-hexcalc ==0.1.1.0
-  - ghcjs-codemirror ==0.0.0.2
-  - ghc-lib ==8.10.4.20210206
-  - ghc-lib-parser ==8.10.4.20210206
-  - ghc-lib-parser-ex ==8.10.0.19
-  - ghc-parser ==0.2.2.0
-  - ghc-paths ==0.1.0.12
-  - ghc-prof ==1.4.1.8
-  - ghc-source-gen ==0.4.0.0
-  - ghc-syntax-highlighter ==0.0.6.0
-  - ghc-tcplugins-extra ==0.4.1
-  - ghc-trace-events ==0.1.2.2
-  - ghc-typelits-extra ==0.4.2
-  - ghc-typelits-knownnat ==0.7.5
-  - ghc-typelits-natnormalise ==0.7.4
-  - ghc-typelits-presburger ==0.6.0.0
-  - ghost-buster ==0.1.1.0
-  - gi-atk ==2.0.22
-  - gi-cairo ==1.0.24
-  - gi-cairo-connector ==0.1.0
-  - gi-cairo-render ==0.1.0
-  - gi-dbusmenu ==0.4.8
-  - gi-dbusmenugtk3 ==0.4.9
-  - gi-gdk ==3.0.23
-  - gi-gdkpixbuf ==2.0.24
-  - gi-gdkx11 ==3.0.10
-  - gi-gio ==2.0.27
-  - gi-glib ==2.0.24
-  - gi-gobject ==2.0.25
-  - gi-graphene ==1.0.2
-  - gi-gtk ==3.0.36
-  - gi-gtk-hs ==0.3.9
-  - gi-harfbuzz ==0.0.3
-  - ginger ==0.10.1.0
-  - gingersnap ==0.3.1.0
-  - gi-pango ==1.0.23
-  - githash ==0.1.5.0
-  - github-release ==1.3.7
-  - github-rest ==1.0.3
-  - github-types ==0.2.1
-  - github-webhooks ==0.15.0
-  - gitlab-haskell ==0.2.5
-  - gitrev ==1.3.1
-  - gi-xlib ==2.0.9
-  - gl ==0.9
-  - glabrous ==2.0.3
-  - GLFW-b ==3.3.0.0
-  - Glob ==0.10.1
-  - gloss ==1.13.2.1
-  - gloss-rendering ==1.13.1.1
-  - GLURaw ==2.0.0.4
-  - GLUT ==2.7.0.16
-  - gluturtle ==0.0.58.1
-  - gnuplot ==0.5.6.1
-  - google-isbn ==1.0.3
-  - gopher-proxy ==0.1.1.2
-  - gothic ==0.1.6
-  - gpolyline ==0.1.0.1
-  - graph-core ==0.3.0.0
-  - graphite ==0.10.0.1
-  - graphql-client ==1.1.1
-  - graphs ==0.7.1
-  - graphula ==2.0.0.4
-  - graphviz ==2999.20.1.0
-  - graph-wrapper ==0.2.6.0
-  - gravatar ==0.8.0
-  - greskell ==1.2.0.1
-  - greskell-core ==0.1.3.6
-  - greskell-websocket ==0.1.2.5
-  - groom ==0.1.2.1
-  - group-by-date ==0.1.0.4
-  - groups ==0.5.2
-  - gtk-sni-tray ==0.1.6.0
-  - gtk-strut ==0.1.3.0
-  - guarded-allocation ==0.0.1
-  - H ==0.9.0.1
-  - hackage-db ==2.1.0
-  - hackage-security ==0.6.0.1
-  - haddock-library ==1.9.0
-  - hadoop-streaming ==0.2.0.3
-  - hakyll-convert ==0.3.0.4
-  - half ==0.3.1
-  - hall-symbols ==0.1.0.6
-  - hamtsolo ==1.0.3
-  - HandsomeSoup ==0.4.2
-  - hapistrano ==0.4.1.3
-  - happstack-server ==7.7.0
-  - happy ==1.20.0
-  - happy-meta ==0.2.0.11
-  - HasBigDecimal ==0.1.1
-  - hasbolt ==0.1.4.4
-  - hashable ==1.3.0.0
-  - hashable-time ==0.2.1
-  - hashids ==1.0.2.4
-  - hashing ==0.1.0.1
-  - hashmap ==1.3.3
-  - hashtables ==1.2.4.1
-  - haskeline ==0.8.1.2
-  - haskell-gi ==0.24.7
-  - haskell-gi-base ==0.24.5
-  - haskell-gi-overloading ==1.0
-  - haskell-import-graph ==1.0.4
-  - haskell-lexer ==1.1
-  - haskell-lsp ==0.22.0.0
-  - haskell-lsp-types ==0.22.0.0
-  - haskell-names ==0.9.9
-  - haskell-src ==1.0.3.1
-  - haskell-src-exts ==1.23.1
-  - haskell-src-exts-util ==0.2.5
-  - haskell-src-meta ==0.8.7
-  - haskey-btree ==0.3.0.1
-  - hasql ==1.4.5.1
-  - hasql-notifications ==0.2.0.0
-  - hasql-optparse-applicative ==0.3.0.6
-  - hasql-pool ==0.5.2
-  - hasql-queue ==1.2.0.2
-  - hasql-transaction ==1.0.0.2
-  - hasty-hamiltonian ==1.3.4
-  - HaTeX ==3.22.3.0
-  - HaXml ==1.25.5
-  - haxr ==3000.11.4.1
-  - HCodecs ==0.5.2
-  - hdaemonize ==0.5.6
-  - HDBC ==2.4.0.3
-  - HDBC-session ==0.1.2.0
-  - headroom ==0.4.1.0
-  - heap ==1.0.4
-  - heaps ==0.4
-  - hebrew-time ==0.1.2
-  - hedgehog ==1.0.5
-  - hedgehog-corpus ==0.2.0
-  - hedgehog-fakedata ==0.0.1.4
-  - hedgehog-fn ==1.0
-  - hedgehog-quickcheck ==0.1.1
-  - hedis ==0.14.2
-  - hedn ==0.3.0.2
-  - here ==1.2.13
-  - heredoc ==0.2.0.0
-  - heterocephalus ==1.0.5.4
-  - hexml ==0.3.4
-  - hexml-lens ==0.2.1
-  - hexpat ==0.20.13
-  - hformat ==0.3.3.1
-  - hfsevents ==0.1.6
-  - hgrev ==0.2.6
-  - hidapi ==0.1.7
-  - hie-bios ==0.7.5
-  - hi-file-parser ==0.1.2.0
-  - higher-leveldb ==0.6.0.0
-  - highlighting-kate ==0.6.4
-  - hinfo ==0.0.3.0
-  - hinotify ==0.4.1
-  - hint ==0.9.0.4
-  - hjsmin ==0.2.0.4
-  - hkd-default ==1.1.0.0
-  - hkgr ==0.2.7
-  - hlibcpuid ==0.2.0
-  - hlibgit2 ==0.18.0.16
-  - hlibsass ==0.1.10.1
-  - hmatrix ==0.20.2
-  - hmatrix-backprop ==0.1.3.0
-  - hmatrix-gsl ==0.19.0.1
-  - hmatrix-gsl-stats ==0.4.1.8
-  - hmatrix-morpheus ==0.1.1.2
-  - hmatrix-vector-sized ==0.1.3.0
-  - hmm-lapack ==0.4
-  - hmpfr ==0.4.4
-  - hnock ==0.4.0
-  - hoauth2 ==1.16.0
-  - hocon ==0.1.0.4
-  - hOpenPGP ==2.9.5
-  - hopenpgp-tools ==0.23.6
-  - hopfli ==0.2.2.1
-  - hosc ==0.18.1
-  - hostname ==1.0
-  - hostname-validate ==1.0.0
-  - hourglass ==0.2.12
-  - hourglass-orphans ==0.1.0.0
-  - hp2pretty ==0.10
-  - hpack ==0.34.4
-  - hpack-dhall ==0.5.2
-  - hpc-codecov ==0.3.0.0
-  - hpc-lcov ==1.0.1
-  - hprotoc ==2.4.17
-  - hruby ==0.3.8.1
-  - hsass ==0.8.0
-  - hs-bibutils ==6.10.0.0
-  - hsc2hs ==0.68.7
-  - hscolour ==1.24.4
-  - hsdns ==1.8
-  - hsebaysdk ==0.4.1.0
-  - hsemail ==2.2.1
-  - hs-functors ==0.1.7.1
-  - hs-GeoIP ==0.3
-  - hsini ==0.5.1.2
-  - hsinstall ==2.6
-  - HSlippyMap ==3.0.1
-  - hslogger ==1.3.1.0
-  - hslua ==1.3.0.1
-  - hslua-aeson ==1.0.3.1
-  - hslua-module-doclayout ==0.2.0.1
-  - hslua-module-path ==0.1.0.1
-  - hslua-module-system ==0.2.2.1
-  - hslua-module-text ==0.3.0.1
-  - HsOpenSSL ==0.11.6.2
-  - HsOpenSSL-x509-system ==0.1.0.4
-  - hsp ==0.10.0
-  - hspec ==2.7.9
-  - hspec-attoparsec ==0.1.0.2
-  - hspec-checkers ==0.1.0.2
-  - hspec-contrib ==0.5.1
-  - hspec-core ==2.7.9
-  - hspec-discover ==2.7.9
-  - hspec-expectations ==0.8.2
-  - hspec-expectations-json ==1.0.0.3
-  - hspec-expectations-lifted ==0.10.0
-  - hspec-expectations-pretty-diff ==0.7.2.5
-  - hspec-golden ==0.1.0.3
-  - hspec-golden-aeson ==0.7.0.0
-  - hspec-hedgehog ==0.0.1.2
-  - hspec-junit-formatter ==1.0.0.2
-  - hspec-leancheck ==0.0.4
-  - hspec-megaparsec ==2.2.0
-  - hspec-meta ==2.7.8
-  - hspec-need-env ==0.1.0.6
-  - hspec-parsec ==0
-  - hspec-smallcheck ==0.5.2
-  - hspec-tables ==0.0.1
-  - hspec-wai ==0.11.0
-  - hspec-wai-json ==0.11.0
-  - hs-php-session ==0.0.9.3
-  - hsshellscript ==3.5.0
-  - hs-tags ==0.1.5
-  - HStringTemplate ==0.8.7
-  - HSvm ==0.1.1.3.22
-  - HsYAML ==0.2.1.0
-  - HsYAML-aeson ==0.2.0.0
-  - hsyslog ==5.0.2
-  - htaglib ==1.2.0
-  - HTF ==0.14.0.6
-  - html ==1.0.1.2
-  - html-conduit ==1.3.2.1
-  - html-entities ==1.1.4.5
-  - html-entity-map ==0.1.0.0
-  - htoml ==1.0.0.3
-  - http2 ==2.0.6
-  - HTTP ==4000.3.16
-  - http-api-data ==0.4.2
-  - http-client ==0.6.4.1
-  - http-client-openssl ==0.3.2.0
-  - http-client-overrides ==0.1.1.0
-  - http-client-tls ==0.3.5.3
-  - http-common ==0.8.2.1
-  - http-conduit ==2.3.8
-  - http-date ==0.0.11
-  - http-directory ==0.1.8
-  - http-download ==0.2.0.0
-  - httpd-shed ==0.4.1.1
-  - http-link-header ==1.2.0
-  - http-media ==0.8.0.0
-  - http-query ==0.1.0.1
-  - http-reverse-proxy ==0.6.0
-  - http-streams ==0.8.7.2
-  - http-types ==0.12.3
-  - human-readable-duration ==0.2.1.4
-  - HUnit ==1.6.2.0
-  - HUnit-approx ==1.1.1.1
-  - hunit-dejafu ==2.0.0.4
-  - hvect ==0.4.0.0
-  - hvega ==0.11.0.0
-  - hw-balancedparens ==0.4.1.1
-  - hw-bits ==0.7.2.1
-  - hw-conduit ==0.2.1.0
-  - hw-conduit-merges ==0.2.1.0
-  - hw-diagnostics ==0.0.1.0
-  - hw-dsv ==0.4.1.0
-  - hweblib ==0.6.3
-  - hw-eliasfano ==0.1.2.0
-  - hw-excess ==0.2.3.0
-  - hw-fingertree ==0.1.2.0
-  - hw-fingertree-strict ==0.1.2.0
-  - hw-hedgehog ==0.1.1.0
-  - hw-hspec-hedgehog ==0.1.1.0
-  - hw-int ==0.0.2.0
-  - hw-ip ==2.4.2.0
-  - hw-json ==1.3.2.2
-  - hw-json-simd ==0.1.1.0
-  - hw-json-simple-cursor ==0.1.1.0
-  - hw-json-standard-cursor ==0.2.3.1
-  - hw-kafka-client ==4.0.3
-  - hw-mquery ==0.2.1.0
-  - hw-packed-vector ==0.2.1.0
-  - hw-parser ==0.1.1.0
-  - hw-prim ==0.6.3.0
-  - hw-rankselect ==0.13.4.0
-  - hw-rankselect-base ==0.3.4.1
-  - hw-simd ==0.1.2.0
-  - hw-streams ==0.0.1.0
-  - hw-string-parse ==0.0.0.4
-  - hw-succinct ==0.1.0.1
-  - hw-xml ==0.5.1.0
-  - hxt ==9.3.1.22
-  - hxt-charproperties ==9.5.0.0
-  - hxt-css ==0.1.0.3
-  - hxt-curl ==9.1.1.1
-  - hxt-expat ==9.1.1
-  - hxt-http ==9.1.5.2
-  - hxt-regex-xmlschema ==9.2.0.7
-  - hxt-tagsoup ==9.1.4
-  - hxt-unicode ==9.0.2.4
-  - hybrid-vectors ==0.2.2
-  - hyper ==0.2.1.0
-  - hyperloglog ==0.4.4
-  - hyphenation ==0.8.1
-  - iconv ==0.4.1.3
-  - identicon ==0.2.2
-  - ieee754 ==0.8.0
-  - if ==0.1.0.0
-  - iff ==0.0.6
-  - ihaskell ==0.10.1.2
-  - ihs ==0.1.0.3
-  - ilist ==0.4.0.1
-  - imagesize-conduit ==1.1
-  - Imlib ==0.1.2
-  - immortal ==0.3
-  - immortal-queue ==0.1.0.1
-  - inbox ==0.1.0
-  - include-file ==0.1.0.4
-  - incremental-parser ==0.5.0.2
-  - indents ==0.5.0.1
-  - indexed ==0.1.3
-  - indexed-containers ==0.1.0.2
-  - indexed-list-literals ==0.2.1.3
-  - indexed-profunctors ==0.1.1
-  - indexed-traversable ==0.1.1
-  - indexed-traversable-instances ==0.1
-  - infer-license ==0.2.0
-  - inflections ==0.4.0.6
-  - influxdb ==1.9.1.2
-  - ini ==0.4.1
-  - inj ==1.0
-  - inline-c ==0.9.1.4
-  - inline-c-cpp ==0.4.0.3
-  - inline-r ==0.10.4
-  - inliterate ==0.1.0
-  - input-parsers ==0.2.2
-  - insert-ordered-containers ==0.2.4
-  - inspection-testing ==0.4.3.0
-  - instance-control ==0.1.2.0
-  - int-cast ==0.2.0.0
-  - integer-logarithms ==1.0.3.1
-  - integer-roots ==1.0
-  - integration ==0.2.1
-  - intern ==0.9.4
-  - interpolate ==0.2.1
-  - interpolatedstring-perl6 ==1.0.2
-  - interpolation ==0.1.1.1
-  - interpolator ==1.1.0.2
-  - IntervalMap ==0.6.1.2
-  - intervals ==0.9.2
-  - intro ==0.9.0.0
-  - intset-imperative ==0.1.0.0
-  - invariant ==0.5.4
-  - invertible ==0.2.0.7
-  - invertible-grammar ==0.1.3
-  - io-machine ==0.2.0.0
-  - io-manager ==0.1.0.3
-  - io-memoize ==1.1.1.0
-  - io-region ==0.1.1
-  - io-storage ==0.3
-  - io-streams ==1.5.2.0
-  - io-streams-haproxy ==1.0.1.0
-  - ip6addr ==1.0.2
-  - iproute ==1.7.11
-  - IPv6Addr ==2.0.2
-  - ipynb ==0.1.0.1
-  - ipython-kernel ==0.10.2.1
-  - irc ==0.6.1.0
-  - irc-client ==1.1.2.0
-  - irc-conduit ==0.3.0.4
-  - irc-ctcp ==0.1.3.0
-  - isbn ==1.1.0.2
-  - islink ==0.1.0.0
-  - iso3166-country-codes ==0.20140203.8
-  - iso639 ==0.1.0.3
-  - iso8601-time ==0.1.5
-  - iterable ==3.0
-  - ixset-typed ==0.5
-  - ixset-typed-binary-instance ==0.1.0.2
-  - ixset-typed-conversions ==0.1.2.0
-  - ixset-typed-hashable-instance ==0.1.0.2
-  - ix-shapable ==0.1.0
-  - jack ==0.7.2
-  - jalaali ==1.0.0.0
-  - jira-wiki-markup ==1.3.4
-  - jose ==0.8.4
-  - jose-jwt ==0.9.2
-  - js-chart ==2.9.4.1
-  - js-dgtable ==0.5.2
-  - js-flot ==0.8.3
-  - js-jquery ==3.3.1
-  - json-feed ==1.0.12
-  - jsonpath ==0.2.0.0
-  - json-rpc ==1.0.3
-  - json-rpc-generic ==0.2.1.5
-  - JuicyPixels ==3.3.5
-  - JuicyPixels-blurhash ==0.1.0.3
-  - JuicyPixels-extra ==0.4.1
-  - JuicyPixels-scale-dct ==0.1.2
-  - junit-xml ==0.1.0.2
-  - justified-containers ==0.3.0.0
-  - jwt ==0.10.0
-  - kan-extensions ==5.2.2
-  - kanji ==3.4.1
-  - katip ==0.8.5.0
-  - katip-logstash ==0.1.0.0
-  - kawhi ==0.3.0
-  - kazura-queue ==0.1.0.4
-  - kdt ==0.2.4
-  - keep-alive ==0.2.0.0
-  - keycode ==0.2.2
-  - keys ==3.12.3
-  - ki ==0.2.0.1
-  - kind-apply ==0.3.2.0
-  - kind-generics ==0.4.1.0
-  - kind-generics-th ==0.2.2.2
-  - kmeans ==0.1.3
-  - koofr-client ==1.0.0.3
-  - krank ==0.2.2
-  - kubernetes-webhook-haskell ==0.2.0.3
-  - l10n ==0.1.0.1
-  - labels ==0.3.3
-  - lackey ==1.0.14
-  - LambdaHack ==0.10.2.0
-  - lame ==0.2.0
-  - language-avro ==0.1.3.1
-  - language-bash ==0.9.2
-  - language-c ==0.8.3
-  - language-c-quote ==0.12.2.1
-  - language-docker ==9.2.0
-  - language-java ==0.2.9
-  - language-javascript ==0.7.1.0
-  - language-protobuf ==1.0.1
-  - language-python ==0.5.8
-  - language-thrift ==0.12.0.0
-  - lapack ==0.3.2
-  - lapack-carray ==0.0.3
-  - lapack-comfort-array ==0.0.0.1
-  - lapack-ffi ==0.0.3
-  - lapack-ffi-tools ==0.1.2.1
-  - largeword ==1.2.5
-  - latex ==0.1.0.4
-  - lattices ==2.0.2
-  - lawful ==0.1.0.0
-  - lazy-csv ==0.5.1
-  - lazyio ==0.1.0.4
-  - lca ==0.4
-  - leancheck ==0.9.3
-  - leancheck-instances ==0.0.4
-  - leapseconds-announced ==2017.1.0.1
-  - learn-physics ==0.6.5
-  - lens ==4.19.2
-  - lens-action ==0.2.5
-  - lens-aeson ==1.1.1
-  - lens-csv ==0.1.1.0
-  - lens-datetime ==0.3
-  - lens-family ==2.0.0
-  - lens-family-core ==2.0.0
-  - lens-family-th ==0.5.2.0
-  - lens-misc ==0.0.2.0
-  - lens-process ==0.4.0.0
-  - lens-properties ==4.11.1
-  - lens-regex ==0.1.3
-  - lens-regex-pcre ==1.1.0.0
-  - lenz ==0.4.2.0
-  - leveldb-haskell ==0.6.5
-  - libffi ==0.1
-  - libgit ==0.3.1
-  - libgraph ==1.14
-  - libjwt-typed ==0.2
-  - libmpd ==0.10.0.0
-  - liboath-hs ==0.0.1.2
-  - libyaml ==0.1.2
-  - LibZip ==1.0.1
-  - lifted-async ==0.10.2
-  - lifted-base ==0.2.3.12
-  - lift-generics ==0.2
-  - line ==4.0.1
-  - linear ==1.21.5
-  - linear-circuit ==0.1.0.2
-  - linenoise ==0.3.2
-  - linux-file-extents ==0.2.0.0
-  - linux-namespaces ==0.1.3.0
-  - liquid-fixpoint ==0.8.10.2
-  - List ==0.6.2
-  - ListLike ==4.7.4
-  - list-predicate ==0.1.0.1
-  - listsafe ==0.1.0.1
-  - list-singleton ==1.0.0.5
-  - list-t ==1.0.4
-  - ListTree ==0.2.3
-  - little-rio ==0.2.2
-  - llvm-hs ==9.0.1
-  - llvm-hs-pure ==9.0.0
-  - lmdb ==0.2.5
-  - load-env ==0.2.1.0
-  - loc ==0.1.3.10
-  - locators ==0.3.0.3
-  - loch-th ==0.2.2
-  - lockfree-queue ==0.2.3.1
-  - log-domain ==0.13.1
-  - logfloat ==0.13.3.3
-  - logging ==3.0.5
-  - logging-facade ==0.3.0
-  - logging-facade-syslog ==1
-  - logict ==0.7.1.0
-  - logstash ==0.1.0.1
-  - loop ==0.3.0
-  - lrucache ==1.2.0.1
-  - lrucaching ==0.3.3
-  - lsp-test ==0.11.0.5
-  - lucid ==2.9.12.1
-  - lucid-cdn ==0.2.2.0
-  - lucid-extras ==0.2.2
-  - lukko ==0.1.1.3
-  - lz4-frame-conduit ==0.1.0.1
-  - lzma ==0.0.0.3
-  - lzma-conduit ==1.2.1
-  - machines ==0.7.2
-  - magic ==1.1
-  - magico ==0.0.2.1
-  - mainland-pretty ==0.7.0.1
-  - main-tester ==0.2.0.1
-  - makefile ==1.1.0.0
-  - managed ==1.0.8
-  - MapWith ==0.2.0.0
-  - markdown ==0.1.17.4
-  - markdown-unlit ==0.5.1
-  - markov-chain ==0.0.3.4
-  - massiv ==0.6.0.0
-  - massiv-io ==0.4.1.0
-  - massiv-persist ==0.1.0.0
-  - massiv-serialise ==0.1.0.0
-  - massiv-test ==0.1.6.1
-  - mathexpr ==0.3.0.0
-  - math-extras ==0.1.1.0
-  - math-functions ==0.3.4.2
-  - matplotlib ==0.7.5
-  - matrices ==0.5.0
-  - matrix ==0.3.6.1
-  - matrix-as-xyz ==0.1.2.2
-  - matrix-market-attoparsec ==0.1.1.3
-  - matrix-static ==0.3
-  - maximal-cliques ==0.1.1
-  - mbox ==0.3.4
-  - mbox-utility ==0.0.3.1
-  - mcmc ==0.4.0.0
-  - mcmc-types ==1.0.3
-  - medea ==1.2.0
-  - median-stream ==0.7.0.0
-  - med-module ==0.1.2.1
-  - megaparsec ==9.0.1
-  - megaparsec-tests ==9.0.1
-  - membrain ==0.0.0.2
-  - memory ==0.15.0
-  - MemoTrie ==0.6.10
-  - mercury-api ==0.1.0.2
-  - mergeful ==0.2.0.0
-  - mergeless ==0.3.0.0
-  - mersenne-random-pure64 ==0.2.2.0
-  - messagepack ==0.5.4
-  - metrics ==0.4.1.1
-  - mfsolve ==0.3.2.0
-  - microlens ==0.4.12.0
-  - microlens-aeson ==2.3.1
-  - microlens-contra ==0.1.0.2
-  - microlens-ghc ==0.4.13
-  - microlens-mtl ==0.2.0.1
-  - microlens-platform ==0.4.2
-  - microlens-process ==0.2.0.2
-  - microlens-th ==0.4.3.9
-  - microspec ==0.2.1.3
-  - microstache ==1.0.1.2
-  - midair ==0.2.0.1
-  - midi ==0.2.2.2
-  - mighty-metropolis ==2.0.0
-  - mime-mail ==0.5.1
-  - mime-mail-ses ==0.4.3
-  - mime-types ==0.1.0.9
-  - mini-egison ==1.0.0
-  - minimal-configuration ==0.1.4
-  - minimorph ==0.3.0.0
-  - minio-hs ==1.5.3
-  - miniutter ==0.5.1.1
-  - min-max-pqueue ==0.1.0.2
-  - mintty ==0.1.2
-  - missing-foreign ==0.1.1
-  - MissingH ==1.4.3.0
-  - mixed-types-num ==0.4.1
-  - mltool ==0.2.0.1
-  - mmap ==0.5.9
-  - mmark ==0.0.7.2
-  - mmark-cli ==0.0.5.0
-  - mmark-ext ==0.2.1.3
-  - mmorph ==1.1.5
-  - mnist-idx ==0.1.2.8
-  - mockery ==0.3.5
-  - mock-time ==0.1.0
-  - mod ==0.1.2.2
-  - model ==0.5
-  - modern-uri ==0.3.4.1
-  - modular ==0.1.0.8
-  - monad-chronicle ==1.0.0.1
-  - monad-control ==1.0.2.3
-  - monad-control-aligned ==0.0.1.1
-  - monad-coroutine ==0.9.1
-  - monad-extras ==0.6.0
-  - monadic-arrays ==0.2.2
-  - monad-journal ==0.8.1
-  - monadlist ==0.0.2
-  - monad-logger ==0.3.36
-  - monad-logger-json ==0.1.0.0
-  - monad-logger-logstash ==0.1.0.0
-  - monad-logger-prefix ==0.1.12
-  - monad-loops ==0.4.3
-  - monad-memo ==0.5.3
-  - monad-metrics ==0.2.2.0
-  - monad-par ==0.3.5
-  - monad-parallel ==0.7.2.4
-  - monad-par-extras ==0.3.3
-  - monad-peel ==0.2.1.2
-  - monad-primitive ==0.1
-  - monad-products ==4.0.1
-  - MonadPrompt ==1.0.0.5
-  - MonadRandom ==0.5.3
-  - monad-resumption ==0.1.4.0
-  - monad-skeleton ==0.1.5
-  - monad-st ==0.2.4.1
-  - monads-tf ==0.1.0.3
-  - monad-time ==0.3.1.0
-  - monad-unlift ==0.2.0
-  - monad-unlift-ref ==0.2.1
-  - mongoDB ==2.7.0.0
-  - monoid-subclasses ==1.0.1
-  - monoid-transformer ==0.0.4
-  - mono-traversable ==1.0.15.1
-  - mono-traversable-instances ==0.1.1.0
-  - mono-traversable-keys ==0.1.0
-  - more-containers ==0.2.2.2
-  - morpheus-graphql ==0.17.0
-  - morpheus-graphql-app ==0.17.0
-  - morpheus-graphql-client ==0.17.0
-  - morpheus-graphql-core ==0.17.0
-  - morpheus-graphql-subscriptions ==0.17.0
-  - moss ==0.2.0.0
-  - mountpoints ==1.0.2
-  - mpi-hs ==0.7.2.0
-  - mpi-hs-binary ==0.1.1.0
-  - mpi-hs-cereal ==0.1.0.0
-  - mtl-compat ==0.2.2
-  - mtl-prelude ==2.0.3.1
-  - multiarg ==0.30.0.10
-  - multi-containers ==0.1.1
-  - multimap ==1.2.1
-  - multipart ==0.2.1
-  - multiset ==0.3.4.3
-  - multistate ==0.8.0.3
-  - murmur3 ==1.0.4
-  - murmur-hash ==0.1.0.9
-  - MusicBrainz ==0.4.1
-  - mustache ==2.3.1
-  - mutable-containers ==0.3.4
-  - mwc-probability ==2.3.1
-  - mwc-random ==0.14.0.0
-  - mwc-random-monad ==0.7.3.1
-  - mx-state-codes ==1.0.0.0
-  - mysql ==0.2
-  - mysql-simple ==0.4.5
-  - n2o ==0.11.1
-  - nagios-check ==0.3.2
-  - names-th ==0.3.0.1
-  - nano-erl ==0.1.0.1
-  - nanospec ==0.2.2
-  - nats ==1.1.2
-  - natural-induction ==0.2.0.0
-  - natural-sort ==0.1.2
-  - natural-transformation ==0.4
-  - ndjson-conduit ==0.1.0.5
-  - neat-interpolation ==0.5.1.2
-  - netcode-io ==0.0.2
-  - netlib-carray ==0.1
-  - netlib-comfort-array ==0.0.0.1
-  - netlib-ffi ==0.1.1
-  - netpbm ==1.0.4
-  - nettle ==0.3.0
-  - netwire ==5.0.3
-  - netwire-input ==0.0.7
-  - netwire-input-glfw ==0.0.11
-  - network ==3.1.1.1
-  - network-bsd ==2.8.1.0
-  - network-byte-order ==0.1.6
-  - network-conduit-tls ==1.3.2
-  - network-info ==0.2.0.10
-  - network-ip ==0.3.0.3
-  - network-messagepack-rpc ==0.1.2.0
-  - network-messagepack-rpc-websocket ==0.1.1.1
-  - network-simple ==0.4.5
-  - network-simple-tls ==0.4
-  - network-transport ==0.5.4
-  - network-transport-composed ==0.2.1
-  - network-uri ==2.6.4.1
-  - newtype ==0.2.2.0
-  - newtype-generics ==0.6
-  - nicify-lib ==1.0.1
-  - NineP ==0.0.2.1
-  - nix-derivation ==1.1.2
-  - nix-paths ==1.0.1
-  - nonce ==1.0.7
-  - nondeterminism ==1.4
-  - non-empty ==0.3.3
-  - nonempty-containers ==0.3.4.1
-  - nonemptymap ==0.0.6.0
-  - non-empty-sequence ==0.2.0.4
-  - nonempty-vector ==0.2.1.0
-  - nonempty-zipper ==1.0.0.2
-  - non-negative ==0.1.2
-  - not-gloss ==0.7.7.0
-  - no-value ==1.0.0.0
-  - nowdoc ==0.1.1.0
-  - nqe ==0.6.3
-  - nri-env-parser ==0.1.0.6
-  - nri-observability ==0.1.0.1
-  - nri-prelude ==0.5.0.3
-  - nsis ==0.3.3
-  - numbers ==3000.2.0.2
-  - numeric-extras ==0.1
-  - numeric-prelude ==0.4.3.3
-  - numhask ==0.6.0.2
-  - NumInstances ==1.4
-  - numtype-dk ==0.5.0.2
-  - nuxeo ==0.3.2
-  - nvim-hs ==2.1.0.4
-  - nvim-hs-contrib ==2.0.0.0
-  - nvim-hs-ghcid ==2.0.0.0
-  - oauthenticated ==0.2.1.0
-  - ObjectName ==1.1.0.1
-  - o-clock ==1.2.0.1
-  - odbc ==0.2.2
-  - oeis2 ==1.0.5
-  - ofx ==0.4.4.0
-  - old-locale ==1.0.0.7
-  - old-time ==1.1.0.3
-  - once ==0.4
-  - one-liner ==1.0
-  - one-liner-instances ==0.1.2.1
-  - OneTuple ==0.2.2.1
-  - Only ==0.1
-  - oo-prototypes ==0.1.0.0
-  - opaleye ==0.7.1.0
-  - OpenAL ==1.7.0.5
-  - openapi3 ==3.0.2.0
-  - open-browser ==0.2.1.0
-  - openexr-write ==0.1.0.2
-  - OpenGL ==3.0.3.0
-  - OpenGLRaw ==3.3.4.0
-  - openpgp-asciiarmor ==0.1.2
-  - opensource ==0.1.1.0
-  - openssl-streams ==1.2.3.0
-  - opentelemetry ==0.6.1
-  - opentelemetry-extra ==0.6.1
-  - opentelemetry-lightstep ==0.6.1
-  - opentelemetry-wai ==0.6.1
-  - operational ==0.2.3.5
-  - operational-class ==0.3.0.0
-  - optics ==0.3
-  - optics-core ==0.3.0.1
-  - optics-extra ==0.3
-  - optics-th ==0.3.0.2
-  - optics-vl ==0.2.1
-  - optional-args ==1.0.2
-  - options ==1.2.1.1
-  - optparse-applicative ==0.16.1.0
-  - optparse-generic ==1.4.4
-  - optparse-simple ==0.1.1.3
-  - optparse-text ==0.1.1.0
-  - ordered-containers ==0.2.2
-  - ormolu ==0.1.4.1
-  - overhang ==1.0.0
-  - packcheck ==0.5.1
-  - packdeps ==0.6.0.0
-  - pager ==0.1.1.0
-  - pagination ==0.2.2
-  - pagure-cli ==0.2
-  - pandoc ==2.13
-  - pandoc-plot ==1.1.1
-  - pandoc-types ==1.22
-  - pantry ==0.5.1.5
-  - parallel ==3.2.2.0
-  - parallel-io ==0.3.3
-  - parameterized ==0.5.0.0
-  - paripari ==0.7.0.0
-  - parseargs ==0.2.0.9
-  - parsec-class ==1.0.0.0
-  - parsec-numbers ==0.1.0
-  - parsec-numeric ==0.1.0.0
-  - ParsecTools ==0.0.2.0
-  - parser-combinators ==1.2.1
-  - parser-combinators-tests ==1.2.1
-  - parsers ==0.12.10
-  - partial-handler ==1.0.3
-  - partial-isomorphisms ==0.2.2.1
-  - partial-semigroup ==0.5.1.8
-  - password ==3.0.0.0
-  - password-instances ==3.0.0.0
-  - password-types ==1.0.0.0
-  - path ==0.7.0
-  - path-binary-instance ==0.1.0.1
-  - path-extensions ==0.1.1.0
-  - path-extra ==0.2.0
-  - path-io ==1.6.2
-  - path-like ==0.2.0.2
-  - path-pieces ==0.2.1
-  - path-text-utf8 ==0.0.1.6
-  - pathtype ==0.8.1.1
-  - pathwalk ==0.3.1.2
-  - pattern-arrows ==0.0.2
-  - pava ==0.1.1.1
-  - pcg-random ==0.1.3.7
-  - pcre2 ==1.1.4
-  - pcre-heavy ==1.0.0.2
-  - pcre-light ==0.4.1.0
-  - pcre-utils ==0.1.8.2
-  - pdfinfo ==1.5.4
-  - peano ==0.1.0.1
-  - pem ==0.2.4
-  - percent-format ==0.0.1
-  - peregrin ==0.3.1
-  - perfect-hash-generator ==0.2.0.6
-  - perfect-vector-shuffle ==0.1.1.1
-  - persist ==0.1.1.5
-  - persistable-record ==0.6.0.5
-  - persistable-types-HDBC-pg ==0.0.3.5
-  - persistent ==2.11.0.4
-  - persistent-documentation ==0.1.0.2
-  - persistent-mtl ==0.2.1.0
-  - persistent-mysql ==2.10.3.1
-  - persistent-pagination ==0.1.1.2
-  - persistent-postgresql ==2.11.0.1
-  - persistent-qq ==2.9.2.1
-  - persistent-sqlite ==2.11.1.0
-  - persistent-template ==2.9.1.0
-  - persistent-test ==2.0.3.5
-  - persistent-typed-db ==0.1.0.2
-  - pg-harness-client ==0.6.0
-  - pgp-wordlist ==0.1.0.3
-  - pg-transact ==0.3.1.1
-  - phantom-state ==0.2.1.2
-  - pid1 ==0.1.2.0
-  - pinboard ==0.10.2.0
-  - pipes ==4.3.15
-  - pipes-aeson ==0.4.1.8
-  - pipes-attoparsec ==0.5.1.5
-  - pipes-binary ==0.4.2
-  - pipes-bytestring ==2.1.7
-  - pipes-concurrency ==2.0.12
-  - pipes-csv ==1.4.3
-  - pipes-extras ==1.0.15
-  - pipes-fastx ==0.3.0.0
-  - pipes-group ==1.0.12
-  - pipes-http ==1.0.6
-  - pipes-network ==0.6.5
-  - pipes-network-tls ==0.4
-  - pipes-ordered-zip ==1.2.1
-  - pipes-parse ==3.0.9
-  - pipes-random ==1.0.0.5
-  - pipes-safe ==2.3.3
-  - pipes-wai ==3.2.0
-  - pkcs10 ==0.2.0.0
-  - pkgtreediff ==0.4
-  - place-cursor-at ==1.0.1
-  - placeholders ==0.1
-  - plaid ==0.1.0.4
-  - plotlyhs ==0.2.1
-  - pointed ==5.0.2
-  - pointedlist ==0.6.1
-  - pointless-fun ==1.1.0.6
-  - poll ==0.0.0.2
-  - poly ==0.5.0.0
-  - poly-arity ==0.1.0
-  - polynomials-bernstein ==1.1.2
-  - polyparse ==1.13
-  - pooled-io ==0.0.2.2
-  - port-utils ==0.2.1.0
-  - posix-paths ==0.2.1.6
-  - possibly ==1.0.0.0
-  - postgres-options ==0.2.0.0
-  - postgresql-binary ==0.12.4
-  - postgresql-libpq ==0.9.4.3
-  - postgresql-libpq-notify ==0.2.0.0
-  - postgresql-orm ==0.5.1
-  - postgresql-simple ==0.6.4
-  - postgresql-typed ==0.6.2.0
-  - postgrest ==7.0.1
-  - post-mess-age ==0.2.1.0
-  - pptable ==0.3.0.0
-  - pqueue ==1.4.1.3
-  - prairie ==0.0.1.0
-  - prefix-units ==0.2.0
-  - prelude-compat ==0.0.0.2
-  - prelude-safeenum ==0.1.1.2
-  - prettyclass ==1.0.0.0
-  - pretty-class ==1.0.1.1
-  - pretty-diff ==0.4.0.3
-  - pretty-hex ==1.1
-  - prettyprinter ==1.7.0
-  - prettyprinter-ansi-terminal ==1.1.2
-  - prettyprinter-compat-annotated-wl-pprint ==1.1
-  - prettyprinter-compat-ansi-wl-pprint ==1.0.1
-  - prettyprinter-compat-wl-pprint ==1.0.0.1
-  - prettyprinter-convert-ansi-wl-pprint ==1.1.1
-  - pretty-relative-time ==0.2.0.0
-  - pretty-show ==1.10
-  - pretty-simple ==4.0.0.0
-  - pretty-sop ==0.2.0.3
-  - pretty-terminal ==0.1.0.0
-  - primes ==0.2.1.0
-  - primitive ==0.7.1.0
-  - primitive-addr ==0.1.0.2
-  - primitive-extras ==0.10.1
-  - primitive-unaligned ==0.1.1.1
-  - primitive-unlifted ==0.1.3.0
-  - print-console-colors ==0.1.0.0
-  - probability ==0.2.7
-  - process-extras ==0.7.4
-  - product-isomorphic ==0.0.3.3
-  - product-profunctors ==0.11.0.2
-  - profiterole ==0.1
-  - profunctors ==5.5.2
-  - projectroot ==0.2.0.1
-  - project-template ==0.2.1.0
-  - prometheus ==2.2.2
-  - prometheus-client ==1.0.1
-  - prometheus-wai-middleware ==1.0.1.0
-  - promises ==0.3
-  - prompt ==0.1.1.2
-  - prospect ==0.1.0.0
-  - proto3-wire ==1.2.0
-  - protobuf ==0.2.1.3
-  - protobuf-simple ==0.1.1.0
-  - protocol-buffers ==2.4.17
-  - protocol-buffers-descriptor ==2.4.17
-  - protocol-radius ==0.0.1.1
-  - protocol-radius-test ==0.1.0.1
-  - proto-lens ==0.7.0.0
-  - proto-lens-protobuf-types ==0.7.0.0
-  - proto-lens-protoc ==0.7.0.0
-  - proto-lens-runtime ==0.7.0.0
-  - proto-lens-setup ==0.4.0.4
-  - protolude ==0.3.0
-  - proxied ==0.3.1
-  - psqueues ==0.2.7.2
-  - publicsuffix ==0.20200526
-  - pulse-simple ==0.1.14
-  - pureMD5 ==2.1.3
-  - purescript-bridge ==0.14.0.0
-  - pushbullet-types ==0.4.1.0
-  - pusher-http-haskell ==2.1.0.0
-  - pvar ==1.0.0.0
-  - PyF ==0.9.0.3
-  - qchas ==1.1.0.1
-  - qm-interpolated-string ==0.3.0.0
-  - qrcode-core ==0.9.4
-  - qrcode-juicypixels ==0.8.2
-  - quadratic-irrational ==0.1.1
-  - QuasiText ==0.1.2.6
-  - QuickCheck ==2.14.2
-  - quickcheck-arbitrary-adt ==0.3.1.0
-  - quickcheck-assertions ==0.3.0
-  - quickcheck-classes ==0.6.5.0
-  - quickcheck-classes-base ==0.6.2.0
-  - quickcheck-higherorder ==0.1.0.0
-  - quickcheck-instances ==0.3.25.2
-  - quickcheck-io ==0.2.0
-  - quickcheck-simple ==0.1.1.1
-  - quickcheck-special ==0.1.0.6
-  - quickcheck-text ==0.1.2.1
-  - quickcheck-transformer ==0.3.1.1
-  - quickcheck-unicode ==1.0.1.0
-  - quiet ==0.2
-  - quote-quot ==0.2.0.0
-  - radius ==0.7.1.0
-  - rainbow ==0.34.2.2
-  - rainbox ==0.26.0.0
-  - ral ==0.2
-  - rampart ==1.1.0.2
-  - ramus ==0.1.2
-  - rando ==0.0.0.4
-  - random ==1.1
-  - random-bytestring ==0.1.4
-  - random-fu ==0.2.7.4
-  - random-shuffle ==0.0.4
-  - random-source ==0.3.0.8
-  - random-tree ==0.6.0.5
-  - range ==0.3.0.2
-  - ranged-list ==0.1.0.0
-  - Ranged-sets ==0.4.0
-  - range-set-list ==0.1.3.1
-  - rank1dynamic ==0.4.1
-  - rank2classes ==1.4.1
-  - Rasterific ==0.7.5.3
-  - rasterific-svg ==0.3.3.2
-  - ratel ==1.0.14
-  - rate-limit ==1.4.2
-  - ratel-wai ==1.1.5
-  - rattle ==0.2
-  - rattletrap ==11.0.1
-  - Rattus ==0.5
-  - rawfilepath ==0.2.4
-  - rawstring-qm ==0.2.3.0
-  - raw-strings-qq ==1.1
-  - rcu ==0.2.5
-  - rdf ==0.1.0.5
-  - rdtsc ==1.3.0.1
-  - re2 ==0.3
-  - readable ==0.3.1
-  - read-editor ==0.1.0.2
-  - read-env-var ==1.0.0.0
-  - rebase ==1.6.1
-  - record-dot-preprocessor ==0.2.10
-  - record-hasfield ==1.0
-  - records-sop ==0.1.1.0
-  - record-wrangler ==0.1.1.0
-  - recursion-schemes ==5.2.2.1
-  - reducers ==3.12.3
-  - refact ==0.3.0.2
-  - ref-fd ==0.4.0.2
-  - refined ==0.6.2
-  - reflection ==2.1.6
-  - reform ==0.2.7.4
-  - reform-blaze ==0.2.4.3
-  - reform-hamlet ==0.0.5.3
-  - reform-happstack ==0.2.5.4
-  - RefSerialize ==0.4.0
-  - ref-tf ==0.4.0.2
-  - regex ==1.1.0.0
-  - regex-applicative ==0.3.4
-  - regex-applicative-text ==0.1.0.1
-  - regex-base ==0.94.0.1
-  - regex-compat ==0.95.2.1
-  - regex-compat-tdfa ==0.95.1.4
-  - regex-pcre ==0.95.0.0
-  - regex-pcre-builtin ==0.95.2.3.8.43
-  - regex-posix ==0.96.0.0
-  - regex-tdfa ==1.3.1.0
-  - regex-with-pcre ==1.1.0.0
-  - registry ==0.2.0.3
-  - reinterpret-cast ==0.1.0
-  - relapse ==1.0.0.0
-  - relational-query ==0.12.2.3
-  - relational-query-HDBC ==0.7.2.0
-  - relational-record ==0.2.2.0
-  - relational-schemas ==0.1.8.0
-  - reliable-io ==0.0.1
-  - relude ==0.7.0.0
-  - renderable ==0.2.0.1
-  - replace-attoparsec ==1.4.4.0
-  - replace-megaparsec ==1.4.4.0
-  - repline ==0.4.0.0
-  - req ==3.9.0
-  - req-conduit ==1.0.0
-  - rerebase ==1.6.1
-  - rescue ==0.4.2.1
-  - resistor-cube ==0.0.1.2
-  - resolv ==0.1.2.0
-  - resource-pool ==0.2.3.2
-  - resourcet ==1.2.4.2
-  - resourcet-pool ==0.1.0.0
-  - result ==0.2.6.0
-  - rethinkdb-client-driver ==0.0.25
-  - retry ==0.8.1.2
-  - rev-state ==0.1.2
-  - rfc1751 ==0.1.3
-  - rfc5051 ==0.2
-  - rhbzquery ==0.4.3
-  - rhine ==0.7.0
-  - rhine-gloss ==0.7.0
-  - rigel-viz ==0.2.0.0
-  - rio ==0.1.20.0
-  - rio-orphans ==0.1.2.0
-  - rio-prettyprint ==0.1.1.0
-  - roc-id ==0.1.0.0
-  - rocksdb-haskell ==1.0.1
-  - rocksdb-haskell-jprupp ==2.1.3
-  - rocksdb-query ==0.4.2
-  - roles ==0.2.0.0
-  - rope-utf16-splay ==0.3.2.0
-  - rosezipper ==0.2
-  - rot13 ==0.2.0.1
-  - rpmbuild-order ==0.4.3.2
-  - RSA ==2.4.1
-  - runmemo ==1.0.0.1
-  - rvar ==0.2.0.6
-  - safe ==0.3.19
-  - safe-coloured-text ==0.0.0.0
-  - safecopy ==0.10.4.2
-  - safe-decimal ==0.2.0.0
-  - safe-exceptions ==0.1.7.1
-  - safe-foldable ==0.1.0.0
-  - safeio ==0.0.5.0
-  - safe-json ==1.1.1.1
-  - safe-money ==0.9
-  - SafeSemaphore ==0.10.1
-  - safe-tensor ==0.2.1.1
-  - salak ==0.3.6
-  - salak-yaml ==0.3.5.3
-  - saltine ==0.1.1.1
-  - salve ==1.0.11
-  - sample-frame ==0.0.3
-  - sample-frame-np ==0.0.4.1
-  - sampling ==0.3.5
-  - say ==0.1.0.1
-  - sbp ==2.6.3
-  - scalpel ==0.6.2
-  - scalpel-core ==0.6.2
-  - scanf ==0.1.0.0
-  - scanner ==0.3.1
-  - scheduler ==1.5.0
-  - scientific ==0.3.6.2
-  - scotty ==0.12
-  - scrypt ==0.5.0
-  - sdl2 ==2.5.3.0
-  - sdl2-gfx ==0.2
-  - sdl2-image ==2.0.0
-  - sdl2-mixer ==1.1.0
-  - sdl2-ttf ==2.1.2
-  - search-algorithms ==0.3.1
-  - secp256k1-haskell ==0.5.0
-  - securemem ==0.1.10
-  - selda ==0.5.1.0
-  - selda-json ==0.1.1.0
-  - selda-postgresql ==0.1.8.1
-  - selda-sqlite ==0.1.7.1
-  - selections ==0.3.0.0
-  - selective ==0.4.2
-  - semialign ==1.1.0.1
-  - semialign-indexed ==1.1
-  - semialign-optics ==1.1
-  - semigroupoid-extras ==5
-  - semigroupoids ==5.3.5
-  - semigroups ==0.19.1
-  - semirings ==0.6
-  - semiring-simple ==1.0.0.1
-  - semver ==0.4.0.1
-  - sendfile ==0.7.11.1
-  - sendgrid-v3 ==0.3.0.0
-  - seqalign ==0.2.0.4
-  - seqid ==0.6.2
-  - seqid-streams ==0.7.2
-  - sequence-formats ==1.6.1
-  - sequenceTools ==1.4.0.5
-  - serf ==0.1.1.0
-  - serialise ==0.2.3.0
-  - servant ==0.18.2
-  - servant-blaze ==0.9.1
-  - servant-client ==0.18.2
-  - servant-client-core ==0.18.2
-  - servant-conduit ==0.15.1
-  - servant-docs ==0.11.8
-  - servant-errors ==0.1.6.0
-  - servant-exceptions ==0.2.1
-  - servant-exceptions-server ==0.2.1
-  - servant-foreign ==0.15.3
-  - servant-http-streams ==0.18.2
-  - servant-machines ==0.15.1
-  - servant-multipart ==0.12
-  - servant-openapi3 ==2.0.1.1
-  - servant-pipes ==0.15.2
-  - servant-rawm ==1.0.0.0
-  - servant-server ==0.18.2
-  - servant-swagger ==1.1.10
-  - servant-swagger-ui ==0.3.4.3.37.2
-  - servant-swagger-ui-core ==0.3.4
-  - serverless-haskell ==0.12.6
-  - serversession ==1.0.2
-  - serversession-frontend-wai ==1.0
-  - ses-html ==0.4.0.0
-  - set-cover ==0.1.1
-  - setenv ==0.1.1.3
-  - setlocale ==1.0.0.10
-  - sexp-grammar ==2.3.0
-  - SHA ==1.6.4.4
-  - shake-language-c ==0.12.0
-  - shake-plus ==0.3.3.1
-  - shake-plus-extended ==0.4.1.0
-  - shakespeare ==2.0.25
-  - shared-memory ==0.2.0.0
-  - shell-conduit ==5.0.0
-  - shell-escape ==0.2.0
-  - shellmet ==0.0.4.0
-  - shelltestrunner ==1.9
-  - shell-utility ==0.1
-  - shelly ==1.9.0
-  - shikensu ==0.3.11
-  - shortcut-links ==0.5.1.1
-  - should-not-typecheck ==2.1.0
-  - show-combinators ==0.2.0.0
-  - siggy-chardust ==1.0.0
-  - signal ==0.1.0.4
-  - silently ==1.2.5.1
-  - simple-affine-space ==0.1.1
-  - simple-cabal ==0.1.3
-  - simple-cmd ==0.2.3
-  - simple-cmd-args ==0.1.6
-  - simple-log ==0.9.12
-  - simple-reflect ==0.3.3
-  - simple-sendfile ==0.2.30
-  - simple-templates ==1.0.0
-  - simple-vec3 ==0.6.0.1
-  - simplistic-generics ==2.0.0
-  - since ==0.0.0
-  - singleton-bool ==0.1.5
-  - singleton-nats ==0.4.5
-  - singletons ==2.7
-  - singletons-presburger ==0.6.0.0
-  - siphash ==1.0.3
-  - sitemap-gen ==0.1.0.0
-  - sized ==1.0.0.0
-  - skein ==1.0.9.4
-  - skews ==0.1.0.3
-  - skip-var ==0.1.1.0
-  - skylighting ==0.10.5.1
-  - skylighting-core ==0.10.5.1
-  - slack-api ==0.12
-  - slack-progressbar ==0.1.0.1
-  - slick ==1.1.1.0
-  - slist ==0.2.0.0
-  - slynx ==0.5.0.2
-  - smallcheck ==1.2.1
-  - smash ==0.1.2
-  - smash-aeson ==0.1.0.0
-  - smash-lens ==0.1.0.1
-  - smash-microlens ==0.1.0.0
-  - smoothie ==0.4.2.11
-  - smtp-mail ==0.3.0.0
-  - snap-blaze ==0.2.1.5
-  - snap-core ==1.0.4.2
-  - snap-server ==1.1.2.0
-  - snowflake ==0.1.1.1
-  - soap ==0.2.3.6
-  - soap-openssl ==0.1.0.2
-  - soap-tls ==0.1.1.4
-  - socket ==0.8.3.0
-  - socks ==0.6.1
-  - some ==1.0.3
-  - sop-core ==0.5.0.1
-  - sort ==1.0.0.0
-  - sorted-list ==0.2.1.0
-  - sourcemap ==0.1.6
-  - sox ==0.2.3.1
-  - soxlib ==0.0.3.1
-  - spacecookie ==1.0.0.0
-  - sparse-linear-algebra ==0.3.1
-  - sparse-tensor ==0.2.1.5
-  - spatial-math ==0.5.0.1
-  - special-values ==0.1.0.0
-  - speculate ==0.4.4
-  - speedy-slice ==0.3.2
-  - Spintax ==0.3.6
-  - splice ==0.6.1.1
-  - splint ==1.0.1.4
-  - split ==0.2.3.4
-  - splitmix ==0.1.0.3
-  - spoon ==0.3.1
-  - spreadsheet ==0.1.3.8
-  - sqlcli ==0.2.2.0
-  - sqlcli-odbc ==0.2.0.1
-  - sqlite-simple ==0.4.18.0
-  - sql-words ==0.1.6.4
-  - squeal-postgresql ==0.7.0.1
-  - squeather ==0.6.0.0
-  - srcloc ==0.5.1.2
-  - stache ==2.2.1
-  - stackcollapse-ghc ==0.0.1.3
-  - stack-templatizer ==0.1.0.2
-  - stateref ==0.3
-  - StateVar ==1.2.1
-  - static-text ==0.2.0.6
-  - statistics ==0.15.2.0
-  - status-notifier-item ==0.3.0.5
-  - stb-image-redux ==0.2.1.3
-  - step-function ==0.2
-  - stm-chans ==3.0.0.4
-  - stm-conduit ==4.0.1
-  - stm-containers ==1.2
-  - stm-delay ==0.1.1.1
-  - stm-extras ==0.1.0.3
-  - stm-hamt ==1.2.0.6
-  - stm-lifted ==2.5.0.0
-  - STMonadTrans ==0.4.5
-  - stm-split ==0.0.2.1
-  - stopwatch ==0.1.0.6
-  - storable-complex ==0.2.3.0
-  - storable-endian ==0.2.6
-  - storable-record ==0.0.5
-  - storable-tuple ==0.0.3.3
-  - storablevector ==0.2.13.1
-  - store ==0.7.10
-  - store-core ==0.4.4.4
-  - store-streaming ==0.2.0.3
-  - stratosphere ==0.59.1
-  - streaming ==0.2.3.0
-  - streaming-attoparsec ==1.0.0.1
-  - streaming-bytestring ==0.2.0
-  - streaming-commons ==0.2.2.1
-  - streamly ==0.7.3
-  - streams ==3.3
-  - strict ==0.4.0.1
-  - strict-concurrency ==0.2.4.3
-  - strict-list ==0.1.5
-  - strict-tuple ==0.1.4
-  - strict-tuple-lens ==0.1.0.1
-  - stringbuilder ==0.5.1
-  - string-class ==0.1.7.0
-  - string-combinators ==0.6.0.5
-  - string-conv ==0.1.2
-  - string-conversions ==0.4.0.1
-  - string-interpolate ==0.3.1.0
-  - string-qq ==0.0.4
-  - string-random ==0.1.4.1
-  - stringsearch ==0.3.6.6
-  - string-transform ==1.1.1
-  - stripe-concepts ==1.0.2.6
-  - stripe-core ==2.6.2
-  - stripe-haskell ==2.6.2
-  - stripe-http-client ==2.6.2
-  - stripe-tests ==2.6.2
-  - strive ==5.0.14
-  - structs ==0.1.5
-  - structured ==0.1.0.1
-  - structured-cli ==2.7.0.1
-  - subcategories ==0.1.1.0
-  - sum-type-boilerplate ==0.1.1
-  - sundown ==0.6
-  - superbuffer ==0.3.1.1
-  - svg-tree ==0.6.2.4
-  - swagger ==0.3.0
-  - swagger2 ==2.6
-  - sweet-egison ==0.1.1.3
-  - swish ==0.10.0.4
-  - syb ==0.7.2.1
-  - sydtest ==0.1.0.0
-  - sydtest-discover ==0.0.0.0
-  - sydtest-persistent-sqlite ==0.0.0.0
-  - sydtest-servant ==0.0.0.0
-  - sydtest-wai ==0.0.0.0
-  - sydtest-yesod ==0.0.0.0
-  - symbol ==0.2.4
-  - symengine ==0.1.2.0
-  - symmetry-operations-symbols ==0.0.2.1
-  - sysinfo ==0.1.1
-  - system-argv0 ==0.1.1
-  - systemd ==2.3.0
-  - system-fileio ==0.3.16.4
-  - system-filepath ==0.4.14
-  - system-info ==0.5.2
-  - tabular ==0.2.2.8
-  - taffybar ==3.2.3
-  - tagchup ==0.4.1.1
-  - tagged ==0.8.6.1
-  - tagged-binary ==0.2.0.1
-  - tagged-identity ==0.1.3
-  - tagged-transformer ==0.8.1
-  - tagshare ==0.0
-  - tagsoup ==0.14.8
-  - tao ==1.0.0
-  - tao-example ==1.0.0
-  - tar ==0.5.1.1
-  - tar-conduit ==0.3.2
-  - tardis ==0.4.3.0
-  - tasty ==1.4.1
-  - tasty-ant-xml ==1.1.8
-  - tasty-bench ==0.2.5
-  - tasty-dejafu ==2.0.0.7
-  - tasty-discover ==4.2.2
-  - tasty-expected-failure ==0.12.3
-  - tasty-focus ==1.0.1
-  - tasty-golden ==2.3.4
-  - tasty-hedgehog ==1.0.1.0
-  - tasty-hspec ==1.1.6
-  - tasty-hunit ==0.10.0.3
-  - tasty-hunit-compat ==0.2.0.1
-  - tasty-kat ==0.0.3
-  - tasty-leancheck ==0.0.1
-  - tasty-lua ==0.2.3.2
-  - tasty-program ==1.0.5
-  - tasty-quickcheck ==0.10.1.2
-  - tasty-rerun ==1.1.18
-  - tasty-silver ==3.2.1
-  - tasty-smallcheck ==0.8.2
-  - tasty-test-reporter ==0.1.1.4
-  - tasty-th ==0.1.7
-  - tasty-wai ==0.1.1.1
-  - Taxonomy ==2.1.0
-  - TCache ==0.12.1
-  - tce-conf ==1.3
-  - tdigest ==0.2.1.1
-  - template-haskell-compat-v0208 ==0.1.5
-  - temporary ==1.3
-  - temporary-rc ==1.2.0.3
-  - temporary-resourcet ==0.1.0.1
-  - tensorflow-test ==0.1.0.0
-  - tensors ==0.1.5
-  - termbox ==0.3.0
-  - terminal-progress-bar ==0.4.1
-  - terminal-size ==0.3.2.1
-  - test-framework ==0.8.2.0
-  - test-framework-hunit ==0.3.0.2
-  - test-framework-leancheck ==0.0.1
-  - test-framework-quickcheck2 ==0.3.0.5
-  - test-framework-smallcheck ==0.2
-  - test-fun ==0.1.0.0
-  - testing-type-modifiers ==0.1.0.1
-  - texmath ==0.12.2
-  - text-ansi ==0.1.1
-  - text-binary ==0.2.1.1
-  - text-builder ==0.6.6.2
-  - text-conversions ==0.3.1
-  - text-format ==0.3.2
-  - text-icu ==0.7.0.1
-  - text-latin1 ==0.3.1
-  - text-ldap ==0.1.1.13
-  - textlocal ==0.1.0.5
-  - text-manipulate ==0.3.0.0
-  - text-metrics ==0.3.0
-  - text-postgresql ==0.0.3.1
-  - text-printer ==0.5.0.1
-  - text-regex-replace ==0.1.1.4
-  - text-region ==0.3.1.0
-  - text-short ==0.1.3
-  - text-show ==3.9
-  - text-show-instances ==3.8.4
-  - text-zipper ==0.11
-  - tfp ==1.0.2
-  - tf-random ==0.5
-  - th-abstraction ==0.4.2.0
-  - th-bang-compat ==0.0.1.0
-  - th-compat ==0.1.2
-  - th-constraint-compat ==0.0.1.0
-  - th-data-compat ==0.1.0.0
-  - th-desugar ==1.11
-  - th-env ==0.1.0.2
-  - these ==1.1.1.1
-  - these-lens ==1.0.1.2
-  - these-optics ==1.0.1.2
-  - these-skinny ==0.7.4
-  - th-expand-syns ==0.4.8.0
-  - th-extras ==0.0.0.4
-  - th-lift ==0.8.2
-  - th-lift-instances ==0.1.18
-  - th-nowq ==0.1.0.5
-  - th-orphans ==0.13.11
-  - th-printf ==0.7
-  - thread-hierarchy ==0.3.0.2
-  - thread-local-storage ==0.2
-  - threads ==0.5.1.6
-  - thread-supervisor ==0.2.0.0
-  - threepenny-gui ==0.9.0.0
-  - th-reify-compat ==0.0.1.5
-  - th-reify-many ==0.1.9
-  - throttle-io-stream ==0.2.0.1
-  - through-text ==0.1.0.0
-  - throwable-exceptions ==0.1.0.9
-  - th-strict-compat ==0.1.0.1
-  - th-test-utils ==1.1.0
-  - th-utilities ==0.2.4.3
-  - thyme ==0.3.5.5
-  - tidal ==1.7.3
-  - tile ==0.3.0.0
-  - time-compat ==1.9.5
-  - timeit ==2.0
-  - timelens ==0.2.0.2
-  - time-lens ==0.4.0.2
-  - time-locale-compat ==0.1.1.5
-  - time-locale-vietnamese ==1.0.0.0
-  - time-manager ==0.0.0
-  - time-parsers ==0.1.2.1
-  - timerep ==2.0.1.0
-  - timer-wheel ==0.3.0
-  - time-units ==1.0.0
-  - timezone-olson ==0.2.0
-  - timezone-series ==0.1.9
-  - tinylog ==0.15.0
-  - titlecase ==1.0.1
-  - tldr ==0.9.0
-  - tls ==1.5.5
-  - tls-debug ==0.4.8
-  - tls-session-manager ==0.0.4
-  - tlynx ==0.5.0.2
-  - tmapchan ==0.0.3
-  - tmapmvar ==0.0.4
-  - tmp-postgres ==1.34.1.0
-  - tomland ==1.3.2.0
-  - tonalude ==0.1.1.1
-  - topograph ==1.0.0.1
-  - torsor ==0.1
-  - tostring ==0.2.1.1
-  - transaction ==0.1.1.3
-  - transformers-base ==0.4.5.2
-  - transformers-bifunctors ==0.1
-  - transformers-compat ==0.6.6
-  - transformers-fix ==1.0
-  - traverse-with-class ==1.0.1.0
-  - tree-diff ==0.2
-  - tree-fun ==0.8.1.0
-  - tree-view ==0.5.1
-  - trifecta ==2.1.1
-  - triplesec ==0.2.2.1
-  - tsv2csv ==0.1.0.2
-  - ttc ==0.4.0.0
-  - ttl-hashtables ==1.4.1.0
-  - ttrie ==0.1.2.1
-  - tuple ==0.3.0.2
-  - tuples-homogenous-h98 ==0.1.1.0
-  - tuple-sop ==0.3.1.0
-  - tuple-th ==0.2.5
-  - turtle ==1.5.22
-  - typecheck-plugin-nat-simple ==0.1.0.2
-  - TypeCompose ==0.9.14
-  - typed-process ==0.2.6.0
-  - typed-uuid ==0.0.0.2
-  - type-equality ==1
-  - type-errors ==0.2.0.0
-  - type-errors-pretty ==0.0.1.1
-  - type-hint ==0.1
-  - type-level-integers ==0.0.1
-  - type-level-kv-list ==1.1.0
-  - type-level-natural-number ==2.0
-  - type-level-numbers ==0.1.1.1
-  - type-map ==0.1.6.0
-  - type-natural ==1.1.0.0
-  - typenums ==0.1.4
-  - type-of-html ==1.6.2.0
-  - type-of-html-static ==0.1.0.2
-  - type-operators ==0.2.0.0
-  - typerep-map ==0.3.3.0
-  - type-spec ==0.4.0.0
-  - tzdata ==0.2.20201021.0
-  - ua-parser ==0.7.6.0
-  - uglymemo ==0.1.0.1
-  - ulid ==0.3.0.0
-  - unagi-chan ==0.4.1.3
-  - unbounded-delays ==0.1.1.1
-  - unboxed-ref ==0.4.0.0
-  - unboxing-vector ==0.2.0.0
-  - uncaught-exception ==0.1.0
-  - uncertain ==0.3.1.0
-  - unconstrained ==0.1.0.2
-  - unexceptionalio ==0.5.1
-  - unexceptionalio-trans ==0.5.1
-  - unicode ==0.0.1.1
-  - unicode-show ==0.1.0.4
-  - unicode-transforms ==0.3.7.1
-  - unification-fd ==0.11.1
-  - union-find ==0.2
-  - unipatterns ==0.0.0.0
-  - uniplate ==1.6.13
-  - uniprot-kb ==0.1.2.0
-  - uniq-deep ==1.2.0
-  - unique ==0.0.1
-  - unique-logic ==0.4
-  - unique-logic-tf ==0.5.1
-  - unit-constraint ==0.0.0
-  - universe ==1.2.1
-  - universe-base ==1.1.2
-  - universe-instances-base ==1.1
-  - universe-instances-extended ==1.1.2
-  - universe-instances-trans ==1.1
-  - universe-reverse-instances ==1.1.1
-  - universe-some ==1.2.1
-  - universum ==1.7.2
-  - unix-bytestring ==0.3.7.3
-  - unix-compat ==0.5.3
-  - unix-time ==0.4.7
-  - unliftio ==0.2.14
-  - unliftio-core ==0.2.0.1
-  - unliftio-pool ==0.2.1.1
-  - unliftio-streams ==0.1.1.1
-  - unlit ==0.4.0.0
-  - unordered-containers ==0.2.13.0
-  - unsafe ==0.0
-  - urbit-hob ==0.3.3
-  - uri-bytestring ==0.3.3.0
-  - uri-bytestring-aeson ==0.1.0.8
-  - uri-encode ==1.5.0.7
-  - url ==2.1.3
-  - users ==0.5.0.0
-  - utf8-conversions ==0.1.0.4
-  - utf8-light ==0.4.2
-  - utf8-string ==1.0.2
-  - util ==0.1.17.1
-  - utility-ht ==0.0.16
-  - uuid ==1.3.14
-  - uuid-types ==1.0.4
-  - validation ==1.1.1
-  - validation-selective ==0.1.0.1
-  - validity ==0.11.0.0
-  - validity-aeson ==0.2.0.4
-  - validity-bytestring ==0.4.1.1
-  - validity-containers ==0.5.0.4
-  - validity-path ==0.4.0.1
-  - validity-persistent ==0.0.0.0
-  - validity-primitive ==0.0.0.1
-  - validity-scientific ==0.2.0.3
-  - validity-text ==0.3.1.1
-  - validity-time ==0.4.0.0
-  - validity-unordered-containers ==0.2.0.3
-  - validity-uuid ==0.1.0.3
-  - validity-vector ==0.2.0.3
-  - valor ==0.1.0.0
-  - vault ==0.3.1.5
-  - vec ==0.4
-  - vector ==0.12.3.0
-  - vector-algorithms ==0.8.0.4
-  - vector-binary-instances ==0.2.5.2
-  - vector-buffer ==0.4.1
-  - vector-builder ==0.3.8.1
-  - vector-bytes-instances ==0.1.1
-  - vector-circular ==0.1.3
-  - vector-instances ==3.4
-  - vector-mmap ==0.0.3
-  - vector-rotcev ==0.1.0.0
-  - vector-sized ==1.4.3.1
-  - vector-space ==0.16
-  - vector-split ==1.0.0.2
-  - vector-th-unbox ==0.2.1.9
-  - verbosity ==0.4.0.0
-  - versions ==4.0.3
-  - vformat ==0.14.1.0
-  - vformat-aeson ==0.1.0.1
-  - vformat-time ==0.1.0.0
-  - ViennaRNAParser ==1.3.3
-  - vinyl ==0.13.1
-  - void ==0.7.3
-  - vty ==5.33
-  - wai ==3.2.3
-  - wai-app-static ==3.1.7.2
-  - wai-conduit ==3.0.0.4
-  - wai-cors ==0.2.7
-  - wai-enforce-https ==0.0.2.1
-  - wai-eventsource ==3.0.0
-  - wai-extra ==3.1.6
-  - wai-feature-flags ==0.1.0.1
-  - wai-handler-launch ==3.0.3.1
-  - wai-logger ==2.3.6
-  - wai-middleware-auth ==0.2.4.1
-  - wai-middleware-caching ==0.1.0.2
-  - wai-middleware-clacks ==0.1.0.1
-  - wai-middleware-static ==0.9.0
-  - wai-rate-limit ==0.1.0.0
-  - wai-rate-limit-redis ==0.1.0.0
-  - wai-saml2 ==0.2.1.2
-  - wai-session ==0.3.3
-  - wai-slack-middleware ==0.2.0
-  - wai-websockets ==3.0.1.2
-  - wakame ==0.1.0.0
-  - warp ==3.3.14
-  - warp-tls ==3.3.0
-  - warp-tls-uid ==0.2.0.6
-  - wave ==0.2.0
-  - wcwidth ==0.0.2
-  - webby ==1.0.1
-  - webdriver ==0.9.0.1
-  - webex-teams-api ==0.2.0.1
-  - webex-teams-conduit ==0.2.0.1
-  - webex-teams-pipes ==0.2.0.1
-  - webgear-server ==0.2.1
-  - webrtc-vad ==0.1.0.3
-  - websockets ==0.12.7.2
-  - websockets-snap ==0.10.3.1
-  - weigh ==0.0.16
-  - wide-word ==0.1.1.2
-  - wikicfp-scraper ==0.1.0.12
-  - wild-bind ==0.1.2.7
-  - wild-bind-x11 ==0.2.0.12
-  - Win32 ==2.6.1.0
-  - Win32-notify ==0.3.0.3
-  - windns ==0.1.0.1
-  - witch ==0.0.0.5
-  - witherable ==0.4.1
-  - within ==0.2.0.1
-  - with-location ==0.1.0
-  - with-utf8 ==1.0.2.2
-  - wizards ==1.0.3
-  - wl-pprint-annotated ==0.1.0.1
-  - wl-pprint-console ==0.1.0.2
-  - wl-pprint-text ==1.2.0.1
-  - word24 ==2.0.1
-  - word8 ==0.1.3
-  - word-trie ==0.3.0
-  - word-wrap ==0.4.1
-  - world-peace ==1.0.2.0
-  - wrap ==0.0.0
-  - wreq ==0.5.3.3
-  - writer-cps-exceptions ==0.1.0.1
-  - writer-cps-mtl ==0.1.1.6
-  - writer-cps-transformers ==0.5.6.1
-  - wss-client ==0.3.0.0
-  - wuss ==1.1.18
-  - X11 ==1.9.2
-  - X11-xft ==0.3.1
-  - x11-xim ==0.0.9.0
-  - x509 ==1.7.5
-  - x509-store ==1.6.7
-  - x509-system ==1.6.6
-  - x509-validation ==1.6.11
-  - Xauth ==0.1
-  - xdg-basedir ==0.2.2
-  - xdg-desktop-entry ==0.1.1.1
-  - xdg-userdirs ==0.1.0.2
-  - xeno ==0.4.2
-  - xlsx ==0.8.3
-  - xlsx-tabular ==0.2.2.1
-  - xml ==1.3.14
-  - xml-basic ==0.1.3.1
-  - xml-conduit ==1.9.1.0
-  - xml-conduit-writer ==0.1.1.2
-  - xmlgen ==0.6.2.2
-  - xml-hamlet ==0.5.0.1
-  - xml-helpers ==1.0.0
-  - xml-html-qq ==0.1.0.1
-  - xml-indexed-cursor ==0.1.1.0
-  - xml-lens ==0.3
-  - xml-picklers ==0.3.6
-  - xml-to-json ==2.0.1
-  - xml-to-json-fast ==2.0.0
-  - xml-types ==0.3.8
-  - xmonad ==0.15
-  - xmonad-contrib ==0.16
-  - xmonad-extras ==0.15.3
-  - xss-sanitize ==0.3.6
-  - xxhash-ffi ==0.2.0.0
-  - yaml ==0.11.5.0
-  - yamlparse-applicative ==0.1.0.3
-  - yesod ==1.6.1.0
-  - yesod-auth ==1.6.10.2
-  - yesod-auth-hashdb ==1.7.1.5
-  - yesod-auth-oauth2 ==0.6.3.0
-  - yesod-bin ==1.6.1
-  - yesod-core ==1.6.19.0
-  - yesod-fb ==0.6.1
-  - yesod-form ==1.6.7
-  - yesod-gitrev ==0.2.1
-  - yesod-markdown ==0.12.6.8
-  - yesod-newsfeed ==1.7.0.0
-  - yesod-page-cursor ==2.0.0.6
-  - yesod-paginator ==1.1.1.0
-  - yesod-persistent ==1.6.0.6
-  - yesod-sitemap ==1.6.0
-  - yesod-static ==1.6.1.0
-  - yesod-test ==1.6.12
-  - yesod-websockets ==0.3.0.3
-  - yes-precure5-command ==5.5.3
-  - yi-rope ==0.11
-  - yjsvg ==0.2.0.1
-  - yjtools ==0.9.18
-  - yoga ==0.0.0.5
-  - youtube ==0.2.1.1
-  - zenacy-html ==2.0.3
-  - zenacy-unicode ==1.0.1
-  - zero ==0.1.5
-  - zeromq4-haskell ==0.8.0
-  - zeromq4-patterns ==0.3.1.0
-  - zim-parser ==0.2.1.0
-  - zio ==0.1.0.2
-  - zip ==1.7.0
-  - zip-archive ==0.4.1
-  - zipper-extra ==0.1.3.2
-  - zippers ==0.3.1
-  - zip-stream ==0.2.1.0
-  - zlib ==0.6.2.3
-  - zlib-bindings ==0.1.1.5
-  - zlib-lens ==0.1.2.1
-  - zot ==0.0.3
-  - zstd ==0.1.2.0
-  - ztail ==1.2.0.2
-  - zydiskell ==0.2.0.0
-
-extra-packages:
-  - base16-bytestring < 1               # required for cabal-install etc.
-  - Cabal == 2.2.*                      # required for jailbreak-cabal etc.
-  - Cabal == 2.4.*                      # required for cabal-install etc.
-  - Cabal == 3.2.*                      # required for cabal-install etc.
-  - dependent-map == 0.2.4.0            # required by Hasura 1.3.1, 2020-08-20
-  - dependent-sum == 0.4                # required by Hasura 1.3.1, 2020-08-20
-  - dhall == 1.29.0                     # required for ats-pkg
-  - Diff < 0.4                          # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
-  - ghc-tcplugins-extra ==0.3.2         # required for polysemy-plugin 0.2.5.0
-  - haddock == 2.23.*                   # required on GHC < 8.10.x
-  - haddock-api == 2.23.*               # required on GHC < 8.10.x
-  - haddock-library ==1.7.*             # required by stylish-cabal-0.5.0.0
-  - happy == 1.19.9                     # for purescript
-  - hinotify == 0.3.9                   # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
-  - hlint < 3.3                         # We don‘t have ghc-lib-parser 9.0.X yet.
-  - immortal == 0.2.2.1                 # required by Hasura 1.3.1, 2020-08-20
-  - lsp-test < 0.14                     # needed for hls 1.0.0
-  - mmorph == 1.1.3                     # Newest working version of mmorph on ghc 8.6.5. needed for hls
-  - network == 2.6.3.1                  # required by pkgs/games/hedgewars/default.nix, 2020-11-15
-  - optparse-applicative < 0.16         # needed for niv-0.2.19
-  - refinery == 0.3.*                   # required by hls-tactics-plugin-1.0.0.0
-  - resolv == 0.1.1.2                   # required to build cabal-install-3.0.0.0 with pre ghc-8.8.x
-
-package-maintainers:
-  peti:
-    - cabal-install
-    - cabal2nix
-    - cabal2spec
-    - distribution-nixpkgs
-    - funcmp
-    - git-annex
-    - hackage-db
-    - hledger
-    - hledger-interest
-    - hledger-ui
-    - hledger-web
-    - hopenssl
-    - hsdns
-    - hsemail
-    - hsyslog
-    - jailbreak-cabal
-    - language-nix
-    - logging-facade-syslog
-    - nix-paths
-    - pandoc
-    - structured-haskell-mode
-    - titlecase
-    - xmonad
-    - xmonad-contrib
-  gridaphobe:
-    - located-base
-  jb55:
-    # - bson-lens
-    - cased
-    - elm-export-persistent
-    # - pipes-mongodb
-    - streaming-wai
-  kiwi:
-    - config-schema
-    - config-value
-    - glirc
-    - irc-core
-    - matterhorn
-    - mattermost-api
-    - mattermost-api-qc
-    - Unique
-  psibi:
-    - path-pieces
-    - persistent
-    - persistent-sqlite
-    - persistent-template
-    - shakespeare
-  abbradar:
-    - Agda
-  roberth:
-    - arion-compose
-    - hercules-ci-agent
-    - hercules-ci-api
-    - hercules-ci-api-agent
-    - hercules-ci-api-core
-    - hercules-ci-cli
-    - hercules-ci-cnix-expr
-    - hercules-ci-cnix-store
-  cdepillabout:
-    - pretty-simple
-    - spago
-  rkrzr:
-    - icepeak
-  terlar:
-    - nix-diff
-  maralorn:
-    - reflex-dom
-    - cabal-fmt
-    - shh
-    - neuron
-    - releaser
-    - taskwarrior
-    - haskell-language-server
-    - shake-bench
-    - iCalendar
-    - stm-containers
-  sorki:
-    - cayenne-lpp
-    - data-stm32
-    - gcodehs
-    - nix-derivation
-    - nix-narinfo
-    - ttn
-    - ttn-client
-    - update-nix-fetchgit
-    - zre
-  utdemir:
-    - nix-tree
-  turion:
-    - rhine
-    - rhine-gloss
-    - essence-of-live-coding
-    - essence-of-live-coding-gloss
-    - essence-of-live-coding-pulse
-    - essence-of-live-coding-quickcheck
-    - Agda
-    - dunai
-    - finite-typelits
-    - pulse-simple
-    - simple-affine-space
-  sternenseemann:
-    # also maintain upstream package
-    - spacecookie
-    - gopher-proxy
-    # other packages I can help out for
-    - systemd
-    - fast-logger
-    - Euterpea2
-    - utc
-    - socket
-    - gitit
-    - yarn-lock
-    - yarn2nix
-  poscat:
-    - hinit
-
-unsupported-platforms:
-  alsa-mixer:                                   [ x86_64-darwin ]
-  alsa-pcm:                                     [ x86_64-darwin ]
-  alsa-seq:                                     [ x86_64-darwin ]
-  AWin32Console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  barbly:                                       [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
-  bindings-directfb:                            [ x86_64-darwin ]
-  d3d11binding:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  DirectSound:                                  [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9base:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9d3d:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9d3dx:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  freenect:                                     [ x86_64-darwin ]
-  FTGL:                                         [ x86_64-darwin ]
-  gi-ostree:                                    [ x86_64-darwin ]
-  gtk-mac-integration:                          [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
-  hcwiid:                                       [ x86_64-darwin ]
-  HFuse:                                        [ x86_64-darwin ]
-  hommage-ds:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  lio-fs:                                       [ x86_64-darwin ]
-  midi-alsa:                                    [ x86_64-darwin ]
-  pam:                                          [ x86_64-darwin ]
-  PortMidi:                                     [ x86_64-darwin ]
-  Raincat:                                      [ x86_64-darwin ]
-  reactivity:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  rtlsdr:                                       [ x86_64-darwin ]
-  rubberband:                                   [ x86_64-darwin ]
-  sdl2-mixer:                                   [ x86_64-darwin ]
-  sdl2-ttf:                                     [ x86_64-darwin ]
-  tokyotyrant-haskell:                          [ x86_64-darwin ]
-  vulkan:                                       [ i686-linux, armv7l-linux ]
-  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux ]
-  Win32-console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-dhcp-server:                            [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-errors:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-extras:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-junction-point:                         [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-notify:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-security:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-services-wrapper:                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-services:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32:                                        [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  xattr:                                        [ x86_64-darwin ]
-  XInput:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  xmobar:                                       [ x86_64-darwin ]
-
-dont-distribute-packages:
-  # Depends on shine, which is a ghcjs project.
-  - shine-varying
-
-  # these packages depend on software with an unfree license
-  - accelerate-bignum
-  - accelerate-blas
-  - accelerate-cublas
-  - accelerate-cuda
-  - accelerate-cufft
-  - accelerate-examples
-  - accelerate-fft
-  - accelerate-fourier-benchmark
-  - accelerate-io-array
-  - accelerate-io-bmp
-  - accelerate-io-bytestring
-  - accelerate-io-cereal
-  - accelerate-io-JuicyPixels
-  - accelerate-io-repa
-  - accelerate-io-vector
-  - accelerate-kullback-liebler
-  - accelerate-llvm-ptx
-  - bindings-yices
-  - boolector
-  - ccelerate-cuda
-  - containers-accelerate
-  - cplex-hs
-  - cublas
-  - cuda # 2020-08-18 because of dependency nvidia-x11
-  - cufft
-  - cusolver
-  - cusparse
-  - gloss-raster-accelerate
-  - hashable-accelerate
-  - libnvvm
-  - matlab
-  - nvvm
-  - Obsidian
-  - odpic-raw
-  - patch-image
-  # license for input data unclear, dependency not on Hackage
-  # see https://github.com/NixOS/nixpkgs/pull/88604
-  - tensorflow-mnist
-  - yices-easy
-  - yices-painless
-
-  # these packages don't evaluate because they have broken (system) dependencies
-  - XML
-  - comark
-  - couch-simple
-  - diagrams-hsqml
-  - diagrams-reflex
-  - dialog
-  - fltkhs-demos
-  - fltkhs-fluid-demos
-  - fltkhs-hello-world
-  - fltkhs-themes
-  - ghcjs-dom-hello
-  - ghcjs-dom-webkit
-  - gi-javascriptcore
-  - gi-webkit
-  - gi-webkit2
-  - gi-webkit2webextension
-  - gsmenu
-  - haste-gapi
-  - haste-perch
-  - hbro
-  - hplayground
-  - hs-mesos
-  - hsqml
-  - hsqml-datamodel
-  - hsqml-datamodel-vinyl
-  - hsqml-datemodel-vinyl
-  - hsqml-demo-manic
-  - hsqml-demo-morris
-  - hsqml-demo-notes
-  - hsqml-demo-notes
-  - hsqml-demo-samples
-  - hsqml-morris
-  - hsqml-morris
-  - hstorchat
-  - imprevu-happstack
-  - jsaddle-webkit2gtk
-  - jsaddle-webkitgtk
-  - jsc
-  - lambdacat
-  - leksah
-  - manatee-all
-  - manatee-browser
-  - manatee-reader
-  - markup-preview
-  - nomyx-api
-  - nomyx-core
-  - nomyx-language
-  - nomyx-library
-  - nomyx-server
-  - passman-cli
-  - passman-core
-  - reflex-dom-colonnade
-  - reflex-dom-contrib
-  - reflex-dom-fragment-shader-canvas
-  - reflex-dom-helpers
-  - reflex-jsx
-  - sneathlane-haste
-  - spike
-  - tianbar
-  - trasa-reflex
-  - treersec
-  - wai-middleware-brotli
-  - web-browser-in-haskell
-  - webkit
-  - webkitgtk3
-  - webkitgtk3-javascriptcore
-  - websnap
-
-broken-packages:
-  # These packages don't compile or depend on packages that don't compile.
-  - 3dmodels
-  - 4Blocks
-  - a50
-  - AAI
-  - abcBridge
-  - abcnotation
-  - abeson
-  - abides
-  - abnf
-  - AbortT-monadstf
-  - AbortT-mtl
-  - AbortT-transformers
-  - abstract-par-accelerate
-  - abt
-  - AC-BuildPlatform
-  - AC-EasyRaster-GTK
-  - AC-HalfInteger
-  - ac-machine
-  - ac-machine-conduit
-  - AC-MiniTest
-  - AC-Terminal
-  - AC-VanillaArray
-  - AC-Vector
-  - AC-Vector-Fancy
-  - acc
-  - accelerate-arithmetic
-  - accelerate-fftw
-  - accelerate-fourier
-  - accelerate-llvm-native
-  - accelerate-random
-  - accelerate-typelits
-  - accelerate-utility
-  - accentuateus
-  - access-time
-  - access-token-provider
-  - achille
-  - acid-state-dist
-  - acid-state-tls
-  - ACME
-  - acme-all-monad
-  - acme-comonad
-  - acme-dont
-  - acme-flipping-tables
-  - acme-hq9plus
-  - acme-http
-  - acme-inator
-  - acme-kitchen-sink
-  - acme-left-pad
-  - acme-miscorder
-  - acme-mutable-package
-  - acme-now
-  - acme-numbersystem
-  - acme-operators
-  - acme-php
-  - acme-schoenfinkel
-  - acme-strfry
-  - acme-stringly-typed
-  - acme-this
-  - acme-zero
-  - acousticbrainz-client
-  - ActionKid
-  - activehs
-  - activehs-base
-  - activitypub
-  - activitystreams-aeson
-  - actor
-  - acts
-  - Adaptive
-  - Adaptive-Blaisorblade
-  - adaptive-containers
-  - adaptive-tuple
-  - adb
-  - addy
-  - adhoc-network
-  - adict
-  - adjunction
-  - adobe-swatch-exchange
-  - adp-multi
-  - adp-multi-monadiccp
-  - ADPfusion
-  - ADPfusionForest
-  - ADPfusionSet
-  - adtrees
-  - advent-of-code-api
-  - Advgame
-  - Advise-me
-  - AERN-Basics
-  - AERN-Net
-  - AERN-Real
-  - AERN-Real-Double
-  - AERN-Real-Interval
-  - AERN-RnToRm
-  - AERN-RnToRm-Plot
-  - aern2-mp
-  - aern2-real
-  - aeson-applicative
-  - aeson-decode
-  - aeson-diff-generic
-  - aeson-extra
-  - aeson-filthy
-  - aeson-flowtyped
-  - aeson-injector
-  - aeson-match-qq
-  - aeson-native
-  - aeson-options
-  - aeson-prefix
-  - aeson-schema
-  - aeson-schemas
-  - aeson-smart
-  - aeson-streams
-  - aeson-t
-  - aeson-tiled
-  - aeson-typescript
-  - aeson-utils
-  - aeson-via
-  - affection
-  - affine-invariant-ensemble-mcmc
-  - afv
-  - ag-pictgen
-  - Agata
-  - agda-server
-  - agda-snippets
-  - agda-snippets-hakyll
-  - agda-unused
-  - agentx
-  - AGI
-  - AhoCorasick
-  - aig
-  - aip
-  - air-th
-  - airbrake
-  - airship
-  - airtable-api
-  - aivika-distributed
-  - aivika-experiment-diagrams
-  - ajhc
-  - AlanDeniseEricLauren
-  - alerta
-  - alex-prelude
-  - alfred
-  - alga
-  - algebra-checkers
-  - algebra-dag
-  - algebra-driven-design
-  - algebra-sql
-  - algebraic
-  - algebraic-prelude
-  - algo-s
-  - algolia
-  - AlgoRhythm
-  - AlgorithmW
-  - align-text
-  - AlignmentAlgorithms
-  - Allure
-  - ally-invest
-  - alms
-  - alpha
-  - alphachar
-  - alsa
-  - alsa-gui
-  - alsa-midi
-  - alsa-pcm-tests
-  - alsa-seq-tests
-  - altcomposition
-  - alternative-extra
-  - alternative-io
-  - alto
-  - alure
-  - amazon-emailer
-  - amazon-emailer-client-snap
-  - amazon-products
-  - amazonka-ec2
-  - amazonka-s3-streaming
-  - amby
-  - AMI
-  - ampersand
-  - amqp-conduit
-  - amqp-streamly
-  - analyze
-  - analyze-client
-  - anansi-pandoc
-  - anatomy
-  - android
-  - android-activity
-  - android-lint-summary
-  - AndroidViewHierarchyImporter
-  - angel
-  - angle
-  - Animas
-  - animascii
-  - animate
-  - animate-example
-  - animate-frames
-  - animate-preview
-  - animate-sdl2
-  - annah
-  - annotated-fix
-  - Annotations
-  - anonymous-sums
-  - anonymous-sums-tests
-  - ansi-terminal-game
-  - ansigraph
-  - antagonist
-  - antfarm
-  - anticiv
-  - antigate
-  - antimirov
-  - antiope-athena
-  - antiope-contract
-  - antiope-core
-  - antiope-dynamodb
-  - antiope-es
-  - antiope-messages
-  - antiope-optparse-applicative
-  - antiope-s3
-  - antiope-shell
-  - antiope-sns
-  - antiope-sqs
-  - antiquoter
-  - antisplice
-  - antlr-haskell
-  - antlrc
-  - anydbm
-  - aop-prelude
-  - aos-signature
-  - aosd
-  - apart
-  - apecs-stm
-  - apelsin
-  - api-builder
-  - api-rpc-factom
-  - api-rpc-pegnet
-  - api-tools
-  - api-yoti
-  - apiary
-  - apiary-authenticate
-  - apiary-clientsession
-  - apiary-cookie
-  - apiary-eventsource
-  - apiary-helics
-  - apiary-http-client
-  - apiary-logger
-  - apiary-memcached
-  - apiary-mongoDB
-  - apiary-persistent
-  - apiary-purescript
-  - apiary-redis
-  - apiary-session
-  - apiary-websockets
-  - apis
-  - apns-http2
-  - apotiki
-  - app-lens
-  - appc
-  - ApplePush
-  - AppleScript
-  - applicative-fail
-  - applicative-parsec
-  - applicative-quoters
-  - applicative-splice
-  - apply-unordered
-  - approveapi
-  - approx
-  - ApproxFun-hs
-  - arb-fft
-  - arbb-vm
-  - arbor-datadog
-  - arbor-monad-counter
-  - arbor-monad-logger
-  - arbor-monad-metric
-  - arbor-monad-metric-datadog
-  - arbor-postgres
-  - arch-hs
-  - arch-web
-  - archive-libarchive
-  - archiver
-  - archlinux
-  - archlinux-web
-  - archnews
-  - arduino-copilot
-  - arena
-  - arff
-  - arghwxhaskell
-  - argon
-  - argon2
-  - argparser
-  - arguedit
-  - ariadne
-  - arion
-  - arithmetic-circuits
-  - armada
-  - armor
-  - arpa
-  - arpack
-  - array-builder
-  - array-chunks
-  - array-forth
-  - array-list
-  - array-primops
-  - arrayfire
-  - arraylist
-  - ArrayRef
-  - arrow-improve
-  - arrow-list
-  - arrowapply-utils
-  - arrowp
-  - arrowp-qq
-  - ArrowVHDL
-  - artery
-  - artifact
-  - asap
-  - ascii-flatten
-  - ascii-string
-  - ascii-table
-  - ascii-vector-avc
-  - ascii85-conduit
-  - asic
-  - asil
-  - asn
-  - ASN1
-  - asn1-codec
-  - asn1-data
-  - assert
-  - assert4hs
-  - assert4hs-tasty
-  - assertions
-  - asset-map
-  - assimp
-  - assumpta
-  - ast-monad
-  - ast-monad-json
-  - astrds
-  - astview
-  - async-combinators
-  - async-dejafu
-  - async-manager
-  - async-timer
-  - asynchronous-exceptions
-  - aterm-utils
-  - atlassian-connect-core
-  - atlassian-connect-descriptor
-  - atmos-dimensional-tf
-  - atndapi
-  - atom-msp430
-  - atomic-modify
-  - atomic-primops-foreign
-  - atomic-primops-vector
-  - atomo
-  - atp
-  - atp-haskell
-  - ats-pkg
-  - ats-setup
-  - ats-storable
-  - attempt
-  - attic-schedule
-  - atto-lisp
-  - AttoBencode
-  - AttoJson
-  - attomail
-  - attoparsec-enumerator
-  - attoparsec-ip
-  - attoparsec-iteratee
-  - attoparsec-text
-  - attoparsec-text-enumerator
-  - attoparsec-trans
-  - attoparsec-uri
-  - attosplit
-  - Attrac
-  - atuin
-  - audiovisual
-  - augeas
-  - augur
-  - aur
-  - aur-api
-  - aura
-  - Aurochs
-  - authenticate-ldap
-  - authinfo-hs
-  - authoring
-  - AutoForms
-  - autom
-  - automata
-  - autonix-deps
-  - autonix-deps-kf5
-  - autopack
-  - avatar-generator
-  - avers
-  - avers-api
-  - avers-api-docs
-  - avers-server
-  - avl-static
-  - AvlTree
-  - avr-shake
-  - avro-piper
-  - awesome-prelude
-  - awesomium
-  - awesomium-glut
-  - awesomium-raw
-  - aws-cloudfront-signer
-  - aws-configuration-tools
-  - aws-dynamodb-conduit
-  - aws-dynamodb-streams
-  - aws-easy
-  - aws-ec2
-  - aws-ec2-knownhosts
-  - aws-elastic-transcoder
-  - aws-general
-  - aws-kinesis
-  - aws-kinesis-client
-  - aws-kinesis-reshard
-  - aws-lambda
-  - aws-lambda-haskell-runtime-wai
-  - aws-lambda-runtime
-  - aws-larpi
-  - aws-mfa-credentials
-  - aws-performance-tests
-  - aws-route53
-  - aws-sdk
-  - aws-sdk-text-converter
-  - aws-sdk-xml-unordered
-  - aws-ses-easy
-  - aws-sign4
-  - aws-simple
-  - aws-sns
-  - axel
-  - axiom
-  - azimuth-hs
-  - azubi
-  - azure-acs
-  - azure-email
-  - azure-functions-worker
-  - azure-service-api
-  - azure-servicebus
-  - azurify
-  - b-tree
-  - b9
-  - babylon
-  - backblaze-b2-hs
-  - backdropper
-  - backstop
-  - backtracking-exceptions
-  - backward-state
-  - bag
-  - Baggins
-  - bake
-  - ballast
-  - bamboo
-  - bamboo-launcher
-  - bamboo-plugin-highlight
-  - bamboo-plugin-photo
-  - bamboo-theme-blueprint
-  - bamboo-theme-mini-html5
-  - bamse
-  - bamstats
-  - ban-instance
-  - Bang
-  - bank-holiday-usa
-  - banwords
-  - barchart
-  - barcodes-code128
-  - barecheck
-  - Barracuda
-  - barrie
-  - barrier
-  - barrier-monad
-  - base-compat-migrate
-  - base-encoding
-  - base-feature-macros
-  - base-generics
-  - base-io-access
-  - base16
-  - base16-lens
-  - base32-bytestring
-  - base62
-  - base64-bytes
-  - base64-conduit
-  - baserock-schema
-  - basex-client
-  - BASIC
-  - basic
-  - basic-sop
-  - baskell
-  - batchd
-  - battlenet
-  - battlenet-yesod
-  - battleplace
-  - battleplace-api
-  - battleship-combinatorics
-  - battleships
-  - bayes-stack
-  - bazel-coverage-report-renderer
-  - bbi
-  - BCMtools
-  - bcp47
-  - bcp47-orphans
-  - bdcs
-  - bdcs-api
-  - bdd
-  - bdo
-  - beam
-  - beam-automigrate
-  - beam-core
-  - beam-migrate
-  - beam-mysql
-  - beam-newtype-field
-  - beam-postgres
-  - beam-sqlite
-  - beam-th
-  - beamable
-  - beautifHOL
-  - bech32
-  - bech32-th
-  - bed-and-breakfast
-  - beeminder-api
-  - Befunge93
-  - bein
-  - belka
-  - bench-graph
-  - bench-show
-  - BenchmarkHistory
-  - bencodex
-  - berkeleydb
-  - BerkeleyDBXML
-  - BerlekampAlgorithm
-  - berp
-  - bert
-  - besout
-  - bet
-  - betacode
-  - betris
-  - bff
-  - bglib
-  - bgmax
-  - bgzf
-  - bhoogle
-  - bibdb
-  - bidi-icu
-  - bidirectional
-  - bidirectionalization-combined
-  - bidispec
-  - bidispec-extras
-  - BiGUL
-  - billboard-parser
-  - billeksah-forms
-  - billeksah-main
-  - billeksah-pane
-  - billeksah-services
-  - binary-bits
-  - binary-communicator
-  - binary-derive
-  - binary-ext
-  - binary-file
-  - binary-indexed-tree
-  - binary-protocol
-  - binary-protocol-zmq
-  - binary-streams
-  - binary-tagged
-  - binary-typed
-  - bind-marshal
-  - BinderAnn
-  - binding-core
-  - binding-gtk
-  - binding-wx
-  - bindings-apr
-  - bindings-apr-util
-  - bindings-bfd
-  - bindings-cctools
-  - bindings-common
-  - bindings-dc1394
-  - bindings-eskit
-  - bindings-EsounD
-  - bindings-fann
-  - bindings-fluidsynth
-  - bindings-friso
-  - bindings-gsl
-  - bindings-hamlib
-  - bindings-hdf5
-  - bindings-K8055
-  - bindings-libftdi
-  - bindings-libg15
-  - bindings-libpci
-  - bindings-librrd
-  - bindings-libstemmer
-  - bindings-libusb
-  - bindings-libv4l2
-  - bindings-linux-videodev2
-  - bindings-monetdb-mapi
-  - bindings-mpdecimal
-  - bindings-ppdev
-  - bindings-sc3
-  - bindings-sipc
-  - bindings-wlc
-  - bindynamic
-  - binembed
-  - binembed-example
-  - bio
-  - bio-sequence
-  - bioace
-  - bioalign
-  - Biobase
-  - BiobaseBlast
-  - BiobaseDotP
-  - BiobaseENA
-  - BiobaseEnsembl
-  - BiobaseFasta
-  - BiobaseFR3D
-  - BiobaseHTTP
-  - BiobaseHTTPTools
-  - BiobaseInfernal
-  - BiobaseMAF
-  - BiobaseNewick
-  - BiobaseTrainingData
-  - BiobaseTurner
-  - BiobaseTypes
-  - BiobaseVienna
-  - BiobaseXNA
-  - biocore
-  - biofasta
-  - biofastq
-  - biohazard
-  - BioHMM
-  - bioinformatics-toolkit
-  - biophd
-  - biopsl
-  - biosff
-  - biostockholm
-  - bip32
-  - birch-beer
-  - bird
-  - BirdPP
-  - birds-of-paradise
-  - bisect-binary
-  - bishbosh
-  - bit-array
-  - bit-stream
-  - bitcoin-address
-  - bitcoin-api
-  - bitcoin-api-extra
-  - bitcoin-block
-  - bitcoin-compact-filters
-  - bitcoin-hs
-  - bitcoin-keys
-  - bitcoin-rpc
-  - bitcoin-script
-  - bitcoin-scripting
-  - bitcoin-tx
-  - bitcoin-types
-  - bitcoind-regtest
-  - bitcoind-rpc
-  - Bitly
-  - bitly-cli
-  - bitmaps
-  - bits-atomic
-  - bits-conduit
-  - bits-extras
-  - bitset
-  - bitspeak
-  - BitStringRandomMonad
-  - BitSyntax
-  - bittorrent
-  - bitwise-enum
-  - bitx-bitcoin
-  - bizzlelude
-  - bizzlelude-js
-  - bkr
-  - bla
-  - blakesum
-  - blakesum-demo
-  - blas
-  - BlastHTTP
-  - blastxml
-  - blatex
-  - blaze-builder-enumerator
-  - blaze-colonnade
-  - blaze-html-contrib
-  - blaze-html-hexpat
-  - blaze-html-truncate
-  - blaze-json
-  - blaze-textual-native
-  - blazeT
-  - ble
-  - blink1
-  - blip
-  - bliplib
-  - Blobs
-  - blockchain
-  - blockhash
-  - Blogdown
-  - blogination
-  - BlogLiterately
-  - BlogLiterately-diagrams
-  - bloodhound
-  - bloodhound-amazonka-auth
-  - bloomfilter-redis
-  - blosum
-  - bloxorz
-  - blubber
-  - blubber-server
-  - Blueprint
-  - bluetile
-  - bluetileutils
-  - blunk-hask-tests
-  - blunt
-  - bno055-haskell
-  - bogocopy
-  - bogre-banana
-  - boilerplate
-  - bolt
-  - boltzmann-brain
-  - bond
-  - bond-haskell
-  - bond-haskell-compiler
-  - bookkeeper
-  - bookkeeper-permissions
-  - Bookshelf
-  - boolean-normal-forms
-  - boolexpr
-  - boombox
-  - boomslang
-  - boopadoop
-  - boots-app
-  - boots-cloud
-  - boots-web
-  - borel
-  - boring-window-switcher
-  - bot
-  - botpp
-  - bound-extras
-  - bounded-array
-  - bowntz
-  - box
-  - box-csv
-  - box-socket
-  - braid
-  - brain-bleep
-  - Bravo
-  - breakout
-  - breve
-  - brians-brain
-  - brick-dropdownmenu
-  - bricks
-  - bricks-internal
-  - bricks-internal-test
-  - bricks-parsec
-  - bricks-rendering
-  - bricks-syntax
-  - brillig
-  - broccoli
-  - brok
-  - broker-haskell
-  - bronyradiogermany-common
-  - bronyradiogermany-streaming
-  - brotli
-  - brotli-conduit
-  - brotli-streams
-  - browscap
-  - bsd-sysctl
-  - bson
-  - bson-generic
-  - bson-generics
-  - bson-lens
-  - bsparse
-  - btree
-  - btree-concurrent
-  - buchhaltung
-  - buffer
-  - buffer-builder
-  - buffer-builder-aeson
-  - BufferedSocket
-  - buffet
-  - buffon
-  - bugsnag-haskell
-  - bugzilla
-  - build
-  - buildable
-  - buildbox
-  - buildbox-tools
-  - builder
-  - buildwrapper
-  - bullet
-  - bulletproofs
-  - bulmex
-  - bumper
-  - bunz
-  - burnt-explorer
-  - burst-detection
-  - bus-pirate
-  - Buster
-  - buster
-  - buster-gtk
-  - buster-network
-  - butter
-  - butterflies
-  - bv-sized
-  - byline
-  - bytable
-  - bytearray-parsing
-  - bytebuild
-  - bytehash
-  - bytelog
-  - byteslice
-  - bytesmith
-  - bytestring-arbitrary
-  - bytestring-builder-varword
-  - bytestring-class
-  - bytestring-csv
-  - bytestring-plain
-  - bytestring-read
-  - bytestring-rematch
-  - bytestring-show
-  - bytestring-substring
-  - bytestring-time
-  - bytestring-trie
-  - bytestring-typenats
-  - bytestringparser
-  - bytestringparser-temporary
-  - bytestringreadp
-  - c-dsl
-  - c-io
-  - c-mosquitto
-  - c0check
-  - c0parser
-  - c10k
-  - c2ats
-  - cab
-  - cabal-appimage
-  - cabal-audit
-  - cabal-bounds
-  - cabal-bundle-clib
-  - cabal-cache
-  - cabal-cargs
-  - cabal-constraints
-  - cabal-db
-  - cabal-dependency-licenses
-  - cabal-dev
-  - cabal-dir
-  - cabal-edit
-  - cabal-file-th
-  - cabal-ghc-dynflags
-  - cabal-ghci
-  - cabal-graphdeps
-  - Cabal-ide-backend
-  - cabal-info
-  - cabal-install-bundle
-  - cabal-install-ghc72
-  - cabal-install-ghc74
-  - cabal-lenses
-  - cabal-meta
-  - cabal-mon
-  - cabal-nirvana
-  - cabal-progdeps
-  - cabal-query
-  - cabal-setup
-  - cabal-sort
-  - cabal-src
-  - cabal-test
-  - cabal-test-quickcheck
-  - cabal-upload
-  - cabal2arch
-  - cabal2doap
-  - cabal2ebuild
-  - cabal2ghci
-  - cabalgraph
-  - cabalish
-  - cabalmdvrpm
-  - cabalQuery
-  - cabalrpmdeps
-  - CabalSearch
-  - cabalvchk
-  - cabin
-  - cabocha
-  - cache-polysemy
-  - cached
-  - caching
-  - caching-vault
-  - cacophony
-  - cafeteria-prelude
-  - caffegraph
-  - cairo-core
-  - cake
-  - cake3
-  - cakyrespa
-  - cal-layout
-  - cal3d
-  - cal3d-examples
-  - cal3d-opengl
-  - calamity
-  - calc
-  - calculator
-  - caldims
-  - caledon
-  - calenderweek
-  - call
-  - call-alloy
-  - call-haskell-from-anything
-  - camfort
-  - campfire
-  - candid
-  - canon
-  - canonical-filepath
-  - canonical-json
-  - canteven-http
-  - canteven-listen-http
-  - canteven-log
-  - canteven-parsedate
-  - cantor
-  - cao
-  - cap
-  - Capabilities
-  - capnp
-  - capped-list
-  - capri
-  - car-pool
-  - caramia
-  - carbonara
-  - carboncopy
-  - cardano-coin-selection
-  - carettah
-  - CarneadesDSL
-  - CarneadesIntoDung
-  - carte
-  - cartel
-  - Cartesian
-  - casa-abbreviations-and-acronyms
-  - casadi-bindings
-  - casadi-bindings-control
-  - casadi-bindings-core
-  - casadi-bindings-internal
-  - casadi-bindings-ipopt-interface
-  - casadi-bindings-snopt-interface
-  - Cascade
-  - cascading
-  - caseof
-  - cases
-  - cash
-  - cassandra-cql
-  - Cassava
-  - cassava-conduit
-  - cassava-records
-  - cassette
-  - cassy
-  - castle
-  - casui
-  - catamorphism
-  - Catana
-  - catch-fd
-  - categorical-algebra
-  - category-extras
-  - category-traced
-  - catnplus
-  - cautious-file
-  - cautious-gen
-  - cayley-client
-  - CBOR
-  - CC-delcont-alt
-  - CC-delcont-cxe
-  - CC-delcont-exc
-  - CC-delcont-ref
-  - CC-delcont-ref-tf
-  - CCA
-  - cci
-  - ccnx
-  - cctools-workqueue
-  - cedict
-  - cef
-  - cef3-raw
-  - cef3-simple
-  - ceilometer-common
-  - cellrenderer-cairo
-  - celtchar
-  - cerberus
-  - cereal-derive
-  - cereal-enumerator
-  - cereal-ieee754
-  - cereal-io-streams
-  - cereal-plus
-  - cereal-streams
-  - certificate
-  - cf
-  - cfenv
-  - cfipu
-  - cflp
-  - cfopu
-  - cg
-  - cgen
-  - cgi-utils
-  - cgrep
-  - chainweb-mining-client
-  - chakra
-  - chalkboard
-  - chalkboard-viewer
-  - character-cases
-  - charade
-  - chart-cli
-  - Chart-fltkhs
-  - chart-histogram
-  - Chart-simple
-  - chart-svg
-  - chart-svg-various
-  - Chart-tests
-  - chart-unit
-  - charter
-  - chatty-text
-  - chatwork
-  - cheapskate-terminal
-  - check-pvp
-  - Checked
-  - checked
-  - checkmate
-  - chell-quickcheck
-  - chessIO
-  - chevalier-common
-  - chiasma
-  - chiphunk
-  - chitauri
-  - Chitra
-  - choose
-  - choose-exe
-  - chorale
-  - chorale-geo
-  - chp
-  - chp-mtl
-  - chp-plus
-  - chp-spec
-  - chp-transformers
-  - chr-core
-  - chr-lang
-  - chr-parse
-  - ChristmasTree
-  - chromatin
-  - chronograph
-  - chronos-bench
-  - chu2
-  - chunks
-  - chunky
-  - church
-  - church-maybe
-  - churros
-  - cielo
-  - cil
-  - cinvoke
-  - cio
-  - cipher-blowfish
-  - ciphersaber2
-  - circlehs
-  - circular
-  - citation-resolve
-  - citeproc-hs
-  - citeproc-hs-pandoc-filter
-  - cj-token
-  - cjk
-  - cl3
-  - cl3-hmatrix-interface
-  - cl3-linear-interface
-  - clac
-  - clafer
-  - claferIG
-  - claferwiki
-  - clang-compilation-database
-  - clang-pure
-  - clanki
-  - clarifai
-  - CLASE
-  - clash
-  - clash-ghc
-  - clash-lib
-  - clash-multisignal
-  - clash-prelude
-  - Clash-Royale-Hack-Cheats
-  - clash-systemverilog
-  - clash-verilog
-  - clash-vhdl
-  - classify-frog
-  - ClassLaws
-  - classy-influxdb-simple
-  - classy-miso
-  - classy-parallel
-  - classyplate
-  - ClassyPrelude
-  - clckwrks
-  - clckwrks-cli
-  - clckwrks-dot-com
-  - clckwrks-plugin-bugs
-  - clckwrks-plugin-ircbot
-  - clckwrks-plugin-mailinglist
-  - clckwrks-plugin-media
-  - clckwrks-plugin-page
-  - clckwrks-plugin-redirect
-  - clckwrks-theme-bootstrap
-  - clckwrks-theme-clckwrks
-  - clckwrks-theme-geo-bootstrap
-  - cld2
-  - Clean
-  - clean-unions
-  - cless
-  - clevercss
-  - clexer
-  - CLI
-  - cli-builder
-  - cli-extras
-  - cli-git
-  - cli-nix
-  - clickhouse-haskell
-  - clif
-  - clifford
-  - clifm
-  - clingo
-  - clippard
-  - clipper
-  - clippings
-  - clisparkline
-  - clit
-  - clocked
-  - clogparse
-  - clone-all
-  - closure
-  - cloud-haskell
-  - cloud-seeder
-  - cloudfront-signer
-  - clr-inline
-  - clua
-  - cluss
-  - ClustalParser
-  - clustering
-  - clustertools
-  - clutterhs
-  - cmark-highlight
-  - cmark-patterns
-  - cmark-sections
-  - cmath
-  - cmathml3
-  - CMCompare
-  - cmd-item
-  - cmdlib
-  - cmdtheline
-  - cmf
-  - cmonad
-  - cmph
-  - cmptype
-  - CMQ
-  - cmt
-  - cmv
-  - cnc-spec-compiler
-  - co-log-polysemy
-  - co-log-polysemy-formatting
-  - co-log-sys
-  - Coadjute
-  - coalpit
-  - cobot-io
-  - cobot-tools
-  - code-builder
-  - codec
-  - codec-beam
-  - codec-libevent
-  - codec-rpm
-  - codecov-haskell
-  - codemonitor
-  - codepad
-  - codeworld-api
-  - codex
-  - codo-notation
-  - coercible-utils
-  - coin
-  - coinbase-exchange
-  - coinbase-pro
-  - coincident-root-loci
-  - colada
-  - colchis
-  - collada-output
-  - collapse-duplication
-  - collapse-util
-  - collection-json
-  - collections
-  - collections-api
-  - collections-base-instances
-  - colonnade
-  - color-counter
-  - colorless
-  - colorless-http-client
-  - colorless-scotty
-  - colour-space
-  - coltrane
-  - columbia
-  - columnar
-  - com
-  - comark-syntax
-  - combinat
-  - combinat-diagrams
-  - combinator-interactive
-  - combinatorial-problems
-  - Combinatorrent
-  - combobuffer
-  - comic
-  - Command
-  - commander
-  - Commando
-  - commodities
-  - commsec
-  - commsec-keyexchange
-  - ComonadSheet
-  - compact-list
-  - compact-map
-  - compact-mutable
-  - compact-mutable-vector
-  - compact-socket
-  - compact-string
-  - compact-string-fix
-  - compact-word-vectors
-  - Compactable
-  - compactable
-  - compdata
-  - compdata-automata
-  - compdata-dags
-  - compdata-param
-  - compendium-client
-  - competition
-  - compilation
-  - complex-generic
-  - complexity
-  - compose-trans
-  - composite-opaleye
-  - composite-swagger
-  - composition-tree
-  - comprehensions-ghc
-  - compressed
-  - compstrat
-  - comptrans
-  - computational-algebra
-  - computational-geometry
-  - computations
-  - concraft
-  - concraft-hr
-  - concraft-pl
-  - concrete-haskell
-  - concrete-haskell-autogen
-  - concrete-relaxng-parser
-  - concrete-typerep
-  - concurrency-benchmarks
-  - concurrent-buffer
-  - Concurrent-Cache
-  - concurrent-machines
-  - concurrent-state
-  - Concurrential
-  - Condor
-  - condor
-  - condorcet
-  - conductive-base
-  - conductive-hsc3
-  - conductive-song
-  - conduit-audio-lame
-  - conduit-audio-samplerate
-  - conduit-find
-  - conduit-iconv
-  - conduit-network-stream
-  - conduit-resumablesink
-  - conduit-throttle
-  - conduit-tokenize-attoparsec
-  - conduit-vfs
-  - conduit-vfs-zip
-  - conf
-  - confcrypt
-  - conferer-dhall
-  - conferer-provider-dhall
-  - conferer-provider-json
-  - conferer-provider-yaml
-  - conferer-snap
-  - conferer-source-dhall
-  - conferer-source-json
-  - conferer-source-yaml
-  - conffmt
-  - confide
-  - config-parser
-  - config-select
-  - config-value-getopt
-  - ConfigFileTH
-  - Configger
-  - configifier
-  - Configurable
-  - configuration
-  - configurator-ng
-  - confsolve
-  - congruence-relation
-  - conjure
-  - conkin
-  - conlogger
-  - connection-string
-  - connections
-  - Conscript
-  - consistent
-  - console-program
-  - const-math-ghc-plugin
-  - constr-eq
-  - constrained-categories
-  - constrained-category
-  - constrained-dynamic
-  - constrained-monads
-  - constraint-manip
-  - ConstraintKinds
-  - constraints-emerge
-  - constructible
-  - constructive-algebra
-  - consul-haskell
-  - Consumer
-  - consumers
-  - container
-  - containers-benchmark
-  - containers-verified
-  - ContArrow
-  - content-store
-  - context-free-grammar
-  - context-stack
-  - ContextAlgebra
-  - contiguous
-  - contiguous-checked
-  - contiguous-fft
-  - continue
-  - continuum
-  - continuum-client
-  - Contract
-  - control
-  - control-iso
-  - control-monad-attempt
-  - control-monad-exception-monadsfd
-  - control-monad-failure
-  - control-monad-failure-mtl
-  - Control-Monad-MultiPass
-  - Control-Monad-ST2
-  - contstuff-monads-tf
-  - contstuff-transformers
-  - conversions
-  - convert
-  - convert-annotation
-  - convertible-ascii
-  - convertible-text
-  - cookies
-  - coordinate
-  - copilot
-  - copilot-c99
-  - copilot-cbmc
-  - copilot-language
-  - copilot-libraries
-  - copilot-sbv
-  - copilot-theorem
-  - copr
-  - COrdering
-  - core
-  - core-haskell
-  - corebot-bliki
-  - CoreDump
-  - CoreErlang
-  - CoreFoundation
-  - corenlp-parser
-  - Coroutine
-  - coroutine-enumerator
-  - coroutine-iteratee
-  - coroutine-object
-  - couch-hs
-  - CouchDB
-  - couchdb-conduit
-  - couchdb-enumerator
-  - countable-inflections
-  - counter
-  - country-codes
-  - courier
-  - court
-  - coverage
-  - cparsing
-  - CPBrainfuck
-  - cpio-conduit
-  - cpkg
-  - CPL
-  - cplusplus-th
-  - cprng-aes-effect
-  - cpuperf
-  - cpython
-  - cql-io
-  - cql-io-tinylog
-  - cqrs-core
-  - cqrs-example
-  - cqrs-memory
-  - cqrs-postgresql
-  - cqrs-sqlite3
-  - cqrs-test
-  - cqrs-testkit
-  - cr
-  - crack
-  - craft
-  - Craft3e
-  - craftwerk
-  - craftwerk-cairo
-  - craftwerk-gtk
-  - crawlchain
-  - craze
-  - crc
-  - crc16
-  - crdt
-  - crdt-event-fold
-  - creatur
-  - credential-store
-  - crf-chain1
-  - crf-chain1-constrained
-  - crf-chain2-generic
-  - crf-chain2-tiers
-  - critbit
-  - criterion-cmp
-  - criterion-compare
-  - criterion-plus
-  - criterion-to-html
-  - criu-rpc
-  - criu-rpc-types
-  - crjdt-haskell
-  - crockford
-  - crocodile
-  - cron-compat
-  - cruncher-types
-  - crunghc
-  - crypt-sha512
-  - crypto-cipher-benchmarks
-  - crypto-classical
-  - crypto-conduit
-  - crypto-keys-ssh
-  - crypto-multihash
-  - crypto-pubkey-openssh
-  - crypto-random-effect
-  - crypto-simple
-  - cryptocipher
-  - cryptocompare
-  - cryptoconditions
-  - cryptoids
-  - cryptoids-class
-  - cryptoids-types
-  - cryptol
-  - cryptsy-api
-  - crystalfontz
-  - cse-ghc-plugin
-  - csg
-  - CSPM-cspm
-  - CSPM-FiringRules
-  - CSPM-Frontend
-  - CSPM-Interpreter
-  - CSPM-ToProlog
-  - cspmchecker
-  - cspretty
-  - css
-  - css-easings
-  - css-selectors
-  - csv-enumerator
-  - csv-nptools
-  - ctemplate
-  - ctkl
-  - ctpl
-  - cube
-  - cubical
-  - cuboid
-  - cuckoo
-  - curl-runnings
-  - currency-codes
-  - currency-convert
-  - curry-frontend
-  - CurryDB
-  - curryer-rpc
-  - cursedcsv
-  - cursor-fuzzy-time-gen
-  - curves
-  - custom-prelude
-  - CV
-  - cv-combinators
-  - cypher
-  - d-bus
-  - d3js
-  - dag
-  - DAG-Tournament
-  - damnpacket
-  - Dangerous
-  - danibot
-  - Dao
-  - dao
-  - dapi
-  - darcs-benchmark
-  - darcs-beta
-  - darcs-buildpackage
-  - darcs-cabalized
-  - darcs-fastconvert
-  - darcs-graph
-  - darcs-monitor
-  - darcs2dot
-  - darcsden
-  - DarcsHelpers
-  - darcswatch
-  - darkplaces-demo
-  - darkplaces-rcon
-  - darkplaces-rcon-util
-  - darkplaces-text
-  - dash-haskell
-  - data-accessor-monads-fd
-  - data-accessor-monads-tf
-  - data-aviary
-  - data-base
-  - data-basic
-  - data-check
-  - data-combinator-gen
-  - data-concurrent-queue
-  - data-construction
-  - data-cycle
-  - data-dispersal
-  - data-diverse-lens
-  - data-easy
-  - data-elf
-  - data-embed
-  - data-emoticons
-  - data-filepath
-  - data-fin
-  - data-fin-simple
-  - data-flagset
-  - data-interval
-  - data-ivar
-  - data-kiln
-  - data-layer
-  - data-lens
-  - data-lens-fd
-  - data-lens-ixset
-  - data-lens-template
-  - data-map-multikey
-  - data-nat
-  - data-object
-  - data-object-json
-  - data-object-yaml
-  - data-pprint
-  - data-quotientref
-  - data-r-tree
-  - data-reify-cse
-  - data-repr
-  - data-result
-  - data-rev
-  - Data-Rope
-  - data-rope
-  - data-rtuple
-  - data-size
-  - data-spacepart
-  - data-standards
-  - data-store
-  - data-stringmap
-  - data-structure-inferrer
-  - data-sword
-  - data-type
-  - data-util
-  - data-validation
-  - data-variant
-  - database-id-class
-  - database-id-groundhog
-  - database-study
-  - datadog
-  - datadog-tracing
-  - datafix
-  - dataflow
-  - datalog
-  - datapacker
-  - datasets
-  - DataTreeView
-  - dataurl
-  - DataVersion
-  - date-conversions
-  - dates
-  - datetime
-  - datetime-sb
-  - dawdle
-  - dawg
-  - dbcleaner
-  - dbf
-  - DBFunctor
-  - dbjava
-  - DBlimited
-  - dbm
-  - dbmigrations-mysql
-  - dbmigrations-postgresql
-  - dbmigrations-sqlite
-  - DBus
-  - dbus-client
-  - dbus-core
-  - dbus-qq
-  - dclabel
-  - dclabel-eci11
-  - dcpu16
-  - ddate
-  - ddc-base
-  - ddc-build
-  - ddc-code
-  - ddc-core
-  - ddc-core-babel
-  - ddc-core-eval
-  - ddc-core-flow
-  - ddc-core-llvm
-  - ddc-core-salt
-  - ddc-core-simpl
-  - ddc-core-tetra
-  - ddc-driver
-  - ddc-interface
-  - ddc-source-tetra
-  - ddc-tools
-  - ddc-war
-  - ddci-core
-  - dead-code-detection
-  - dead-simple-json
-  - Deadpan-DDP
-  - debug
-  - debug-me
-  - debug-trace-var
-  - debug-tracy
-  - decepticons
-  - decidable
-  - decimal-arithmetic
-  - decimal-literals
-  - DecisionTree
-  - decoder-conduit
-  - dedukti
-  - deep-transformations
-  - DeepArrow
-  - deepcontrol
-  - DeepDarkFantasy
-  - deeplearning-hs
-  - deepseq-bounded
-  - deepseq-magic
-  - deepseq-th
-  - deepzoom
-  - defargs
-  - DefendTheKing
-  - deka
-  - deka-tests
-  - delaunay
-  - delicious
-  - delimited-text
-  - delimiter-separated
-  - delta
-  - delta-h
-  - Delta-Lambda
-  - delude
-  - demarcate
-  - denominate
-  - dense
-  - dense-int-set
-  - dep-t
-  - dep-t-advice
-  - dependent-hashmap
-  - dependent-monoidal-map
-  - dependent-state
-  - depends
-  - dephd
-  - deptrack-core
-  - deptrack-devops
-  - deptrack-dot
-  - dequeue
-  - derangement
-  - derivation-trees
-  - derive
-  - derive-enumerable
-  - derive-gadt
-  - derive-IG
-  - derive-monoid
-  - derive-trie
-  - derp-lib
-  - describe
-  - descript-lang
-  - deterministic-game-engine
-  - detour-via-uom
-  - deunicode
-  - devil
-  - devtools
-  - dewdrop
-  - dfinity-radix-tree
-  - Dflow
-  - dfsbuild
-  - dgim
-  - dgs
-  - dhall-check
-  - dhall-docs
-  - dhall-fly
-  - dhall-nix
-  - dhall-nixpkgs
-  - dhall-recursive-adt
-  - dhall-text
-  - dhall-to-cabal
-  - dhcp-lease-parser
-  - dhrun
-  - dia-base
-  - dia-functions
-  - diagrams-boolean
-  - diagrams-braille
-  - diagrams-builder
-  - diagrams-cairo
-  - diagrams-canvas
-  - diagrams-graphviz
-  - diagrams-gtk
-  - diagrams-haddock
-  - diagrams-html5
-  - diagrams-pandoc
-  - diagrams-pdf
-  - diagrams-pgf
-  - diagrams-qrcode
-  - diagrams-rasterific
-  - diagrams-rubiks-cube
-  - diagrams-tikz
-  - diagrams-wx
-  - dib
-  - dice2tex
-  - dicom
-  - dictionaries
-  - dictparser
-  - diet
-  - diff
-  - diffcabal
-  - difference-monoid
-  - DifferenceLogic
-  - differential
-  - DifferentialEvolution
-  - diffmap
-  - difftodo
-  - digestive-bootstrap
-  - digestive-foundation-lucid
-  - digestive-functors-aeson
-  - digestive-functors-happstack
-  - digestive-functors-hsp
-  - DigitalOcean
-  - digitalocean-kzs
-  - digits
-  - dimensional-codata
-  - dimensional-tf
-  - DimensionalHash
-  - dingo-core
-  - dingo-example
-  - dingo-widgets
-  - diohsc
-  - diophantine
-  - diplomacy
-  - diplomacy-server
-  - direct-binary-files
-  - direct-fastcgi
-  - direct-http
-  - direct-plugins
-  - direct-rocksdb
-  - directed-cubical
-  - directory-contents
-  - direm
-  - dirfiles
-  - discogs-haskell
-  - discord-gateway
-  - discord-hs
-  - discord-register
-  - discord-rest
-  - discord-types
-  - discordian-calendar
-  - discrete
-  - DiscussionSupportSystem
-  - Dish
-  - disjoint-containers
-  - disjoint-set
-  - disjoint-set-stateful
-  - Dist
-  - dist-upload
-  - distance
-  - DisTract
-  - distributed-fork-aws-lambda
-  - distributed-process
-  - distributed-process-async
-  - distributed-process-azure
-  - distributed-process-client-server
-  - distributed-process-ekg
-  - distributed-process-execution
-  - distributed-process-extras
-  - distributed-process-fsm
-  - distributed-process-lifted
-  - distributed-process-monad-control
-  - distributed-process-p2p
-  - distributed-process-platform
-  - distributed-process-registry
-  - distributed-process-simplelocalnet
-  - distributed-process-supervisor
-  - distributed-process-systest
-  - distributed-process-task
-  - distributed-process-tests
-  - distributed-process-zookeeper
-  - distribution
-  - distribution-plot
-  - diversity
-  - dixi
-  - djembe
-  - djinn-th
-  - dl-fedora
-  - dmcc
-  - dmenu
-  - dmenu-pkill
-  - dmenu-pmount
-  - dmenu-search
-  - DMuCheck
-  - DnaProteinAlignment
-  - dnscache
-  - dnsrbl
-  - dnssd
-  - dobutok
-  - doc-review
-  - doccheck
-  - docidx
-  - docker
-  - docker-build-cacher
-  - dockercook
-  - docopt
-  - docrecords
-  - DocTest
-  - doctest-discover-configurator
-  - doctest-prop
-  - docusign-base
-  - docusign-base-minimal
-  - docusign-client
-  - docusign-example
-  - docvim
-  - doi
-  - DOM
-  - domain
-  - domain-core
-  - domain-optics
-  - domplate
-  - dot-linker
-  - dotfs
-  - doublify-toolkit
-  - dow
-  - download-media-content
-  - downloader
-  - dozenal
-  - dozens
-  - DP
-  - dph-base
-  - dph-examples
-  - dph-lifted-base
-  - dph-lifted-copy
-  - dph-lifted-vseg
-  - dph-prim-interface
-  - dph-prim-par
-  - dph-prim-seq
-  - dpkg
-  - DPM
-  - dpor
-  - dragen
-  - drawille
-  - drClickOn
-  - dresdner-verkehrsbetriebe
-  - DrHylo
-  - DrIFT
-  - DrIFT-cabalized
-  - drifter
-  - drifter-postgresql
-  - drifter-sqlite
-  - drmaa
-  - drone
-  - dropbox
-  - dropbox-sdk
-  - dropsolve
-  - ds-kanren
-  - DSA
-  - dsc
-  - DSH
-  - dsh-sql
-  - dsmc
-  - dsmc-tools
-  - dson
-  - dson-parsec
-  - DSTM
-  - dstring
-  - DTC
-  - dtd
-  - dtd-text
-  - dtw
-  - dualizer
-  - duet
-  - dumb-cas
-  - dump-core
-  - dunai-core
-  - Dung
-  - duplo
-  - dura
-  - Dust
-  - Dust-crypto
-  - Dust-tools
-  - Dust-tools-pcap
-  - dvault
-  - dvda
-  - dvdread
-  - dvi-processing
-  - dwarf
-  - dwarfadt
-  - dyckword
-  - dyepack
-  - dynamic-cabal
-  - dynamic-graphs
-  - dynamic-mvector
-  - dynamic-object
-  - dynamic-plot
-  - dynamic-pp
-  - DynamicTimeWarp
-  - dynamodb-simple
-  - dynloader
-  - dynobud
-  - DysFRP
-  - DysFRP-Cairo
-  - DysFRP-Craftwerk
-  - dywapitchtrack
-  - dzen-dhall
-  - dzen-utils
-  - each
-  - earclipper
-  - early
-  - easy-api
-  - easy-bitcoin
-  - easyjson
-  - easyplot
-  - easytensor
-  - easytensor-vulkan
-  - easytest
-  - ebeats
-  - ebnf-bff
-  - ec2-unikernel
-  - eccrypto
-  - eccrypto-ed25519-bindings
-  - ecma262
-  - ecu
-  - eddie
-  - ede
-  - edenmodules
-  - edenskel
-  - edentv
-  - edge
-  - edges
-  - edis
-  - edit
-  - edit-lenses
-  - editable
-  - editline
-  - EditTimeReport
-  - effect-handlers
-  - effect-monad
-  - effect-stack
-  - effin
-  - egison
-  - egison-pattern-src
-  - egison-pattern-src-haskell-mode
-  - egison-pattern-src-th-mode
-  - egison-quote
-  - egison-tutorial
-  - ehaskell
-  - ehs
-  - eibd-client-simple
-  - eigen
-  - Eight-Ball-Pool-Hack-Cheats
-  - eio
-  - either-list-functions
-  - either-unwrap
-  - EitherT
-  - ejdb2-binding
-  - ekg-bosun
-  - ekg-carbon
-  - ekg-cloudwatch
-  - ekg-elastic
-  - ekg-elasticsearch
-  - ekg-log
-  - ekg-push
-  - ekg-rrd
-  - ekg-wai
-  - elerea-examples
-  - elevator
-  - elision
-  - elliptic-curve
-  - elm-street
-  - elm-websocket
-  - elsa
-  - elynx
-  - elynx-tree
-  - emacs-keys
-  - emacs-module
-  - email
-  - email-header
-  - email-postmark
-  - emailaddress
-  - emailparse
-  - embeddock
-  - embeddock-example
-  - embla
-  - embroidery
-  - emgm
-  - Emping
-  - Empty
-  - empty-monad
-  - enchant
-  - encoding
-  - encoding-io
-  - encryptable
-  - engine-io
-  - engine-io-growler
-  - engine-io-snap
-  - engine-io-wai
-  - engine-io-yesod
-  - entangle
-  - EntrezHTTP
-  - entwine
-  - enum-text
-  - enum-text-rio
-  - enum-utf8
-  - EnumContainers
-  - enumerate
-  - enumerate-function
-  - enumerator
-  - enumerator-fd
-  - enumerator-tf
-  - enumfun
-  - EnumMap
-  - enummapmap
-  - env-extra
-  - env-parser
-  - envstatus
-  - epanet-haskell
-  - epass
-  - ephemeral
-  - epi-sim
-  - epic
-  - epoll
-  - eprocess
-  - epubname
-  - Eq
-  - EqualitySolver
-  - equational-reasoning-induction
-  - equeue
-  - erf-native
-  - erlang
-  - erlang-ffi
-  - eros
-  - eros-client
-  - eros-http
-  - error-codes
-  - error-context
-  - error-continuations
-  - error-list
-  - error-loc
-  - error-message
-  - error-util
-  - errors-ext
-  - ersaconcat
-  - ersatz
-  - ersatz-toysat
-  - ert
-  - escape-artist
-  - escoger
-  - esotericbot
-  - EsounD
-  - espial
-  - ess
-  - estimators
-  - EstProgress
-  - estreps
-  - Etage
-  - Etage-Graph
-  - EtaMOO
-  - eternal
-  - Eternal10Seconds
-  - eternity
-  - eternity-timestamped
-  - ether
-  - Etherbunny
-  - ethereum-analyzer
-  - ethereum-analyzer-cli
-  - ethereum-analyzer-webui
-  - ethereum-client-haskell
-  - ethereum-merkle-patricia-db
-  - ethereum-rlp
-  - euphoria
-  - eurofxref
-  - evdev
-  - evdev-streamly
-  - eve-cli
-  - event
-  - event-driven
-  - event-monad
-  - eventful-dynamodb
-  - eventful-postgresql
-  - eventful-sql-common
-  - eventful-sqlite
-  - eventlog2html
-  - eventloop
-  - EventSocket
-  - eventsource-geteventstore-store
-  - eventstore
-  - every-bit-counts
-  - ewe
-  - exact-cover
-  - exact-real-positional
-  - except-exceptions
-  - exception-monads-fd
-  - exceptional
-  - exceptionfree-readfile
-  - exchangerates
-  - execs
-  - executor
-  - exference
-  - exh
-  - exherbo-cabal
-  - exif
-  - exigo-schema
-  - exinst-deepseq
-  - exinst-hashable
-  - exists
-  - exitcode
-  - exp-extended
-  - expand
-  - expat-enumerator
-  - expiring-containers
-  - explain
-  - explicit-constraint-lens
-  - explicit-determinant
-  - explicit-iomodes
-  - explicit-iomodes-bytestring
-  - explicit-iomodes-text
-  - explicit-sharing
-  - explore
-  - exposed-containers
-  - expression-parser
-  - expressions
-  - expressions-z3
-  - expresso
-  - extcore
-  - extemp
-  - extended-categories
-  - extensible-data
-  - extensible-effects-concurrent
-  - extensible-skeleton
-  - external-sort
-  - Extra
-  - extract-dependencies
-  - extractelf
-  - extralife
-  - ez-couch
-  - ez3
-  - f-algebra-gen
-  - f-ree-hack-cheats-free-v-bucks-generator
-  - Facebook-Password-Hacker-Online-Latest-Version
-  - faceted
-  - factory
-  - Facts
-  - facts
-  - factual-api
-  - fadno
-  - fadno-braids
-  - fadno-xml
-  - failable-list
-  - failure-detector
-  - FailureT
-  - fake
-  - fake-type
-  - faktory
-  - falling-turnip
-  - fallingblocks
-  - family-tree
-  - fast-arithmetic
-  - fast-combinatorics
-  - fast-digits
-  - fast-nats
-  - fasta
-  - fastbayes
-  - fastedit
-  - fastirc
-  - fastly
-  - fastpbkdf2
-  - FastPush
-  - fastsum
-  - FastxPipe
-  - fathead-util
-  - fault-tree
-  - fay-builder
-  - fay-hsx
-  - fay-simplejson
-  - fb-persistent
-  - fbmessenger-api
-  - fbrnch
-  - fca
-  - fcache
-  - fcd
-  - fcf-containers
-  - fcg
-  - fckeditor
-  - fclabels-monadlib
-  - fcm-client
-  - FComp
-  - fdo-trash
-  - feature-flipper
-  - feature-flipper-postgres
-  - fedora-img-dl
-  - fedora-packages
-  - feed-cli
-  - feed-collect
-  - feed-crawl
-  - feed-gipeda
-  - feed-translator
-  - feed2lj
-  - feed2twitter
-  - fei-base
-  - fei-cocoapi
-  - fei-dataiter
-  - fei-datasets
-  - fei-examples
-  - fei-modelzoo
-  - fei-nn
-  - feldspar-compiler
-  - feldspar-language
-  - fenfire
-  - FermatsLastMargin
-  - fernet
-  - FerryCore
-  - festung
-  - Feval
-  - fez-conf
-  - ffeed
-  - fficxx
-  - ffmpeg-tutorials
-  - ffunctor
-  - fgl-extras-decompositions
-  - fibon
-  - ficketed
-  - fields
-  - FieldTrip
-  - fieldwise
-  - fig
-  - file-collection
-  - file-command-qq
-  - file-embed-poly
-  - file-location
-  - filecache
-  - filediff
-  - FileManip
-  - FileManipCompat
-  - fileneglect
-  - filepath-crypto
-  - filepath-io-access
-  - FilePather
-  - filepather
-  - fileplow
-  - Files
-  - FileSystem
-  - filesystem-abstractions
-  - filesystem-conduit
-  - filesystem-enumerator
-  - filesystem-trees
-  - fillit
-  - Fin
-  - final-pretty-printer
-  - Finance-Quote-Yahoo
-  - Finance-Treasury
-  - find-clumpiness
-  - find-conduit
-  - find-source-files
-  - findhttp
-  - fingertree-psqueue
-  - fingertree-tf
-  - finitary-derive
-  - FiniteMap
-  - firefly-example
-  - first-and-last
-  - first-class-instances
-  - firstify
-  - FirstOrderTheory
-  - fishfood
-  - fit
-  - fits-parse
-  - fitsio
-  - fix-imports
-  - fix-parser-simple
-  - fix-symbols-gitit
-  - fixed-point
-  - fixed-point-vector
-  - fixed-point-vector-space
-  - fixed-precision
-  - fixed-storable-array
-  - fixed-timestep
-  - fixed-vector-binary
-  - fixed-vector-cborg
-  - fixed-vector-cereal
-  - fixed-width
-  - fixer
-  - fixfile
-  - fixhs
-  - fixie
-  - fizzbuzz
-  - fizzbuzz-as-a-service
-  - flac
-  - flac-picture
-  - flaccuraterip
-  - flamethrower
-  - flamingra
-  - flashblast
-  - flat-maybe
-  - flatbuffers
-  - flay
-  - flexible-time
-  - flexiwrap
-  - flexiwrap-smallcheck
-  - flickr
-  - flink-statefulfun
-  - Flippi
-  - flite
-  - float-binstring
-  - floating-bits
-  - flow-er
-  - flowdock
-  - flowdock-api
-  - flowdock-rest
-  - flower
-  - flowlocks-framework
-  - flowsim
-  - flp
-  - fltkhs
-  - fltkhs-fluid-examples
-  - fluent-logger
-  - fluffy-parser
-  - fluidsynth
-  - flux-monoid
-  - FM-SBLEX
-  - fmark
-  - FModExRaw
-  - fmt-for-rio
-  - fmt-terminal-colors
-  - fn-extra
-  - foldl-incremental
-  - foldl-statistics
-  - foldl-transduce
-  - foldl-transduce-attoparsec
-  - folds-common
-  - follow
-  - follower
-  - foma
-  - font-opengl-basic4x6
-  - foo
-  - for-free
-  - forbidden-fruit
-  - fordo
-  - forecast-io
-  - foreign-var
-  - forest
-  - forest-fire
-  - Forestry
-  - forex2ledger
-  - forger
-  - ForkableT
-  - formal
-  - FormalGrammars
-  - format
-  - format-status
-  - formatn
-  - formattable
-  - forml
-  - formlets
-  - formlets-hsp
-  - formura
-  - ForSyDe
-  - forsyde-deep
-  - forth-hll
-  - Fortnite-Hack-Cheats-Free-V-Bucks-Generator
-  - fortran-src
-  - fortran-src-extras
-  - fortytwo
-  - foscam-directory
-  - foscam-filename
-  - foscam-sort
-  - Foster
-  - fp-ieee
-  - fpco-api
-  - fplll
-  - fpnla-examples
-  - FPretty
-  - fptest
-  - Fractaler
-  - fractals
-  - fraction
-  - frag
-  - frame-markdown
-  - Frames-beam
-  - Frames-dsv
-  - Frames-map-reduce
-  - franchise
-  - Frank
-  - fraxl
-  - freddy
-  - free-algebras
-  - free-category
-  - free-concurrent
-  - free-game
-  - free-http
-  - free-operational
-  - free-theorems
-  - free-theorems-counterexamples
-  - free-theorems-seq
-  - free-theorems-seq-webui
-  - free-theorems-webui
-  - free-v-bucks-generator-no-survey
-  - free-v-bucks-generator-ps4-no-survey
-  - freekick2
-  - freelude
-  - freer-converse
-  - freer-effects
-  - freer-simple-catching
-  - freer-simple-http
-  - freer-simple-profiling
-  - freer-simple-random
-  - freer-simple-time
-  - freesect
-  - freesound
-  - freetype-simple
-  - FreeTypeGL
-  - freq
-  - fresh
-  - friday-devil
-  - friday-scale-dct
-  - friendly
-  - front
-  - frown
-  - frp-arduino
-  - frpnow
-  - frpnow-gloss
-  - frpnow-gtk
-  - frpnow-gtk3
-  - frpnow-vty
-  - fs-events
-  - fsh-csv
-  - fsmActions
-  - fst
-  - fsutils
-  - fswait
-  - fswatch
-  - ft-generator
-  - ftdi
-  - FTGL-bytestring
-  - ftp-client
-  - ftp-client-conduit
-  - ftp-conduit
-  - ftphs
-  - FTPLine
-  - ftree
-  - ftshell
-  - full-sessions
-  - funbot
-  - funbot-client
-  - funbot-git-hook
-  - funcons-lambda-cbv-mp
-  - funcons-simple
-  - funcons-tools
-  - funcons-values
-  - function-combine
-  - function-instances-algebra
-  - functional-arrow
-  - functor
-  - functor-combinators
-  - functor-combo
-  - functor-friends
-  - functor-infix
-  - functor-products
-  - functor-utils
-  - functorm
-  - funflow
-  - funflow-nix
-  - Fungi
-  - funion
-  - funnyprint
-  - funpat
-  - funsat
-  - funspection
-  - fused-effects-resumable
-  - fused-effects-squeal
-  - fused-effects-th
-  - fusion
-  - futun
-  - future
-  - fuzzy-time-gen
-  - fuzzy-timings
-  - fwgl
-  - fwgl-glfw
-  - fwgl-javascript
-  - fxpak
-  - g-npm
-  - g2
-  - g2q
-  - g4ip
-  - gact
-  - galois-fft
-  - galois-field
-  - game-probability
-  - gameclock
-  - gamgee
-  - Gamgine
-  - gamma
-  - Ganymede
-  - garepinoh
-  - gargoyle-postgresql-connect
-  - gargoyle-postgresql-nix
-  - gas
-  - gather
-  - gbu
-  - gc-monitoring-wai
-  - gconf
-  - gdax
-  - gdiff-ig
-  - gdiff-th
-  - GeBoP
-  - gedcom
-  - geek
-  - geek-server
-  - gegl
-  - gelatin
-  - gelatin-freetype2
-  - gelatin-fruity
-  - gelatin-gl
-  - gelatin-sdl2
-  - gelatin-shaders
-  - gemini-textboard
-  - gemstone
-  - gen-imports
-  - gen-passwd
-  - Genbank
-  - gencheck
-  - gender
-  - genders
-  - Gene-CluEDO
-  - general-prelude
-  - GeneralTicTacToe
-  - generator
-  - generators
-  - generic-accessors
-  - generic-binary
-  - generic-church
-  - generic-enum
-  - generic-enumeration
-  - generic-labels
-  - generic-lens-labels
-  - generic-lucid-scaffold
-  - generic-maybe
-  - generic-override-aeson
-  - generic-pretty
-  - generic-server
-  - generic-storable
-  - generic-tree
-  - generic-trie
-  - generic-xml
-  - generic-xmlpickler
-  - generics-mrsop
-  - generics-mrsop-gdiff
-  - genericserialize
-  - genesis
-  - genesis-test
-  - genetics
-  - GenI
-  - geni-gui
-  - geni-util
-  - geniconvert
-  - geniplate
-  - geniserver
-  - genprog
-  - GenSmsPdu
-  - gentlemark
-  - GenussFold
-  - genvalidity-persistent
-  - geo-resolver
-  - GeocoderOpenCage
-  - geodetic
-  - geodetic-types
-  - geojson-types
-  - geolite-csv
-  - geom2d
-  - GeomPredicates-SSE
-  - geos
-  - Get
-  - getemx
-  - getflag
-  - GGg
-  - ggtsTC
-  - gh-labeler
-  - ghc-clippy-plugin
-  - ghc-core-smallstep
-  - ghc-datasize
-  - ghc-dump-core
-  - ghc-dump-tree
-  - ghc-dump-util
-  - ghc-dup
-  - ghc-events-analyze
-  - ghc-events-parallel
-  - ghc-generic-instances
-  - ghc-imported-from
-  - ghc-instances
-  - ghc-justdoit
-  - ghc-man-completion
-  - ghc-mod
-  - ghc-parmake
-  - ghc-pkg-autofix
-  - ghc-pkg-lib
-  - ghc-plugs-out
-  - ghc-proofs
-  - ghc-session
-  - ghc-simple
-  - ghc-srcspan-plugin
-  - ghc-syb
-  - ghc-syb-utils
-  - ghc-tags-core
-  - ghc-tags-plugin
-  - ghc-time-alloc-prof
-  - ghc-usage
-  - ghc-vis
-  - ghci-dap
-  - ghci-diagrams
-  - ghci-haskeline
-  - ghci-history-parser
-  - ghci-lib
-  - ghci-ng
-  - ghci-pretty
-  - ghcjs-dom-jsffi
-  - ghcjs-fetch
-  - ghcjs-hplay
-  - ghcjs-promise
-  - ghcjs-xhr
-  - ghclive
-  - ghcprofview
-  - ghcup
-  - ght
-  - gi-cairo-again
-  - gi-graphene
-  - gi-gsk
-  - gi-gstaudio
-  - gi-gstpbutils
-  - gi-gsttag
-  - gi-gtkosxapplication
-  - gi-gtksheet
-  - gi-handy
-  - gi-poppler
-  - gi-wnck
-  - giak
-  - Gifcurry
-  - ginsu
-  - gipeda
-  - giphy-api
-  - GiST
-  - gist
-  - git
-  - git-all
-  - git-checklist
-  - git-config
-  - git-cuk
-  - git-date
-  - git-fmt
-  - git-gpush
-  - git-jump
-  - git-monitor
-  - git-object
-  - git-remote-ipfs
-  - git-repair
-  - git-sanity
-  - git-vogue
-  - gitdo
-  - github-backup
-  - github-data
-  - github-tools
-  - github-utils
-  - github-webhook-handler
-  - github-webhook-handler-snap
-  - githud
-  - gitignore
-  - gitlab-api
-  - gitlib
-  - gitlib-cmdline
-  - gitlib-cross
-  - gitlib-libgit2
-  - gitlib-s3
-  - gitlib-sample
-  - gitlib-test
-  - gitlib-utils
-  - gitson
-  - gitter
-  - givegif
-  - glade
-  - gladexml-accessor
-  - glapp
-  - glazier
-  - glazier-pipes
-  - glazier-react
-  - glazier-react-examples
-  - glazier-react-widget
-  - Gleam
-  - GLFW
-  - GLFW-b-demo
-  - GLFW-OGL
-  - GLFW-task
-  - gli
-  - glider-nlp
-  - GLMatrix
-  - glob-posix
-  - global
-  - global-config
-  - global-variables
-  - glome-hs
-  - GlomeTrace
-  - GlomeView
-  - gloss-banana
-  - gloss-devil
-  - gloss-examples
-  - gloss-export
-  - gloss-game
-  - gloss-sodium
-  - glpk-headers
-  - glpk-hs
-  - gltf-codec
-  - glue
-  - gmap
-  - gmndl
-  - gnome-desktop
-  - gnomevfs
-  - gnss-converters
-  - gnuidn
-  - goa
-  - goal-core
-  - goal-geometry
-  - goal-probability
-  - goal-simulation
-  - goatee
-  - goatee-gtk
-  - gochan
-  - godot-haskell
-  - gofer-prelude
-  - goldplate
-  - gooey
-  - google-cloud
-  - google-drive
-  - google-html5-slide
-  - google-mail-filters
-  - google-maps-geocoding
-  - google-oauth2
-  - google-oauth2-easy
-  - google-oauth2-jwt
-  - google-search
-  - google-server-api
-  - google-static-maps
-  - google-translate
-  - GoogleCodeJam
-  - GoogleDirections
-  - googleplus
-  - googlepolyline
-  - GoogleSB
-  - GoogleTranslate
-  - gopherbot
-  - gopro-plus
-  - gore-and-ash
-  - gore-and-ash-actor
-  - gore-and-ash-async
-  - gore-and-ash-demo
-  - gore-and-ash-glfw
-  - gore-and-ash-lambdacube
-  - gore-and-ash-logging
-  - gore-and-ash-network
-  - gore-and-ash-sdl
-  - gore-and-ash-sync
-  - GotoT-transformers
-  - gpah
-  - GPipe
-  - GPipe-Collada
-  - GPipe-Examples
-  - GPipe-GLFW
-  - GPipe-TextureLoad
-  - gps
-  - gps2htmlReport
-  - GPX
-  - gpx-conduit
-  - grab
-  - grab-form
-  - graceful
-  - grafana
-  - graflog
-  - Grafos
-  - grakn
-  - grammar-combinators
-  - GrammarProducts
-  - grammatical-parsers
-  - grapefruit-examples
-  - grapefruit-frp
-  - grapefruit-records
-  - grapefruit-ui
-  - grapefruit-ui-gtk
-  - graph-core
-  - graph-matchings
-  - graph-rewriting
-  - graph-rewriting-cl
-  - graph-rewriting-gl
-  - graph-rewriting-lambdascope
-  - graph-rewriting-layout
-  - graph-rewriting-ski
-  - graph-rewriting-strategies
-  - graph-rewriting-trs
-  - graph-rewriting-ww
-  - graph-serialize
-  - graph-utils
-  - graph-visit
-  - Graph500
-  - graphbuilder
-  - graphene
-  - GraphHammer
-  - GraphHammer-examples
-  - graphics-drawingcombinators
-  - graphics-formats-collada
-  - graphicsFormats
-  - graphicstools
-  - graphmod-plugin
-  - graphql
-  - graphql-api
-  - graphql-client
-  - graphql-utils
-  - graphql-w-persistent
-  - graphted
-  - graphtype
-  - graphula
-  - graphula-core
-  - graql
-  - grasp
-  - gray-code
-  - greencard
-  - greencard-lib
-  - greg-client
-  - gremlin-haskell
-  - Grempa
-  - grenade
-  - grid-proto
-  - gridbounds
-  - gridland
-  - grm
-  - groot
-  - gross
-  - GroteTrap
-  - groundhog-converters
-  - groundhog-mysql
-  - group-theory
-  - group-with
-  - grouped-list
-  - groups-generic
-  - growler
-  - GrowlNotify
-  - grpc-api-etcd
-  - grpc-etcd-client
-  - grpc-haskell
-  - grpc-haskell-core
-  - gruff
-  - gruff-examples
-  - gscholar-rss
-  - gsl-random
-  - gsl-random-fu
-  - gstorable
-  - gstreamer
-  - GTALib
-  - gtfs
-  - gtfs-realtime
-  - gtk-serialized-event
-  - gtk-toy
-  - gtk2hs-hello
-  - gtk2hs-rpn
-  - Gtk2hsGenerics
-  - gtk3-mac-integration
-  - gtkglext
-  - GtkGLTV
-  - gtkimageview
-  - gtkrsync
-  - gtksourceview2
-  - gtksourceview3
-  - GtkTV
-  - guarded-rewriting
-  - guess-combinator
-  - GuiHaskell
-  - GuiTV
-  - gulcii
-  - gw
-  - gyah-bin
-  - gym-http-api
-  - h-booru
-  - h-gpgme
-  - h-reversi
-  - h2048
-  - h2c
-  - haar
-  - habit
-  - hablo
-  - hablog
-  - HABQT
-  - Hach
-  - hack-contrib
-  - hack-contrib-press
-  - hack-frontend-happstack
-  - hack-handler-cgi
-  - hack-handler-epoll
-  - hack-handler-evhttp
-  - hack-handler-fastcgi
-  - hack-handler-happstack
-  - hack-handler-hyena
-  - hack-handler-kibro
-  - hack-handler-simpleserver
-  - hack-middleware-cleanpath
-  - hack-middleware-clientsession
-  - hack-middleware-jsonp
-  - hack2-handler-happstack-server
-  - hack2-handler-mongrel2-http
-  - hack2-handler-snap-server
-  - hack2-handler-warp
-  - hackage-api
-  - hackage-diff
-  - hackage-mirror
-  - hackage-processing
-  - hackage-proxy
-  - hackage-repo-tool
-  - hackage-server
-  - hackage-whatsnew
-  - hackage2hwn
-  - hackage2twitter
-  - hackager
-  - hackernews
-  - HackMail
-  - hackmanager
-  - hackport
-  - hactor
-  - hactors
-  - haddock
-  - haddock-api
-  - haddock-cheatsheet
-  - haddock-leksah
-  - haddock-test
-  - haddocset
-  - hadoop-formats
-  - hadoop-rpc
-  - hadoop-tools
-  - hafar
-  - haggis
-  - Haggressive
-  - hahp
-  - haiji
-  - hailgun-send
-  - hails-bin
-  - hairy
-  - hakaru
-  - hakismet
-  - hakka
-  - hako
-  - hakyll
-  - hakyll-agda
-  - hakyll-alectryon
-  - hakyll-blaze-templates
-  - hakyll-contrib
-  - hakyll-contrib-csv
-  - hakyll-contrib-elm
-  - hakyll-contrib-hyphenation
-  - hakyll-contrib-links
-  - hakyll-dhall
-  - hakyll-dir-list
-  - hakyll-elm
-  - hakyll-favicon
-  - hakyll-filestore
-  - hakyll-images
-  - hakyll-ogmarkup
-  - hakyll-process
-  - hakyll-R
-  - hakyll-sass
-  - hakyll-series
-  - hakyll-shakespeare
-  - hakyll-shortcode
-  - hakyll-shortcut-links
-  - hakyll-typescript
-  - hal
-  - halberd
-  - HaLeX
-  - halfs
-  - halipeto
-  - halive
-  - hall-symbols
-  - halma
-  - halma-gui
-  - halma-telegram-bot
-  - halves
-  - ham
-  - HaMinitel
-  - hampp
-  - hamsql
-  - hamtmap
-  - hamusic
-  - hanabi-dealer
-  - handa-gdata
-  - handle-like
-  - HandlerSocketClient
-  - handsy
-  - Hangman
-  - hannahci
-  - hans
-  - hans-pcap
-  - hanspell
-  - haphviz
-  - happindicator
-  - happindicator3
-  - happlets
-  - happlets-lib-gtk
-  - happraise
-  - HAppS-Data
-  - happs-hsp
-  - happs-hsp-template
-  - HAppS-IxSet
-  - HAppS-Server
-  - HAppS-State
-  - happs-tutorial
-  - HAppS-Util
-  - happstack
-  - happstack-auth
-  - happstack-authenticate
-  - happstack-contrib
-  - happstack-data
-  - happstack-dlg
-  - happstack-facebook
-  - happstack-fay
-  - happstack-fay-ajax
-  - happstack-foundation
-  - happstack-hamlet
-  - happstack-heist
-  - happstack-helpers
-  - happstack-hstringtemplate
-  - happstack-ixset
-  - happstack-jmacro
-  - happstack-lite
-  - happstack-monad-peel
-  - happstack-plugins
-  - happstack-server-tls-cryptonite
-  - happstack-state
-  - happstack-util
-  - happstack-yui
-  - happy-hour
-  - happybara
-  - happybara-webkit
-  - happybara-webkit-server
-  - HappyTree
-  - hapstone
-  - HaPy
-  - haquery
-  - haquil
-  - harchive
-  - hArduino
-  - hardware-edsl
-  - HaRe
-  - harg
-  - hark
-  - harmony
-  - HarmTrace
-  - haroonga
-  - haroonga-httpd
-  - harpy
-  - harvest-api
-  - has
-  - has-th
-  - hasbolt
-  - hasbolt-extras
-  - HasCacBDD
-  - hascard
-  - hascas
-  - Haschoo
-  - HasGP
-  - hash
-  - hashable-extras
-  - hashable-generics
-  - hashable-orphans
-  - hashabler
-  - hashed-storage
-  - Hashell
-  - hashflare
-  - hashring
-  - hashtables-plus
-  - hasim
-  - hask
-  - hask-home
-  - haskarrow
-  - haskbot-core
-  - haskdeep
-  - haskeem
-  - haskeline-class
-  - haskelisp
-  - haskell-abci
-  - haskell-aliyun
-  - haskell-awk
-  - haskell-bitmex-client
-  - haskell-bitmex-rest
-  - haskell-brainfuck
-  - haskell-ci
-  - haskell-cnc
-  - haskell-coffee
-  - haskell-compression
-  - haskell-conll
-  - haskell-course-preludes
-  - haskell-debug-adapter
-  - haskell-disque
-  - haskell-docs
-  - haskell-eigen-util
-  - haskell-formatter
-  - haskell-ftp
-  - haskell-generate
-  - haskell-go-checkers
-  - haskell-holes-th
-  - haskell-igraph
-  - haskell-in-space
-  - haskell-kubernetes
-  - haskell-lsp-client
-  - haskell-ml
-  - haskell-mpfr
-  - haskell-mpi
-  - haskell-names
-  - haskell-neo4j-client
-  - haskell-openflow
-  - haskell-overridez
-  - haskell-packages
-  - haskell-pdf-presenter
-  - haskell-platform-test
-  - haskell-player
-  - haskell-plot
-  - haskell-postal
-  - haskell-read-editor
-  - haskell-reflect
-  - haskell-rules
-  - haskell-spacegoo
-  - haskell-src-exts-observe
-  - haskell-src-exts-prisms
-  - haskell-src-exts-qq
-  - haskell-src-exts-sc
-  - haskell-src-match
-  - haskell-src-meta-mwotton
-  - haskell-stack-trace-plugin
-  - haskell-token-utils
-  - haskell-tools-ast
-  - haskell-tools-ast-fromghc
-  - haskell-tools-ast-gen
-  - haskell-tools-ast-trf
-  - haskell-tools-backend-ghc
-  - haskell-tools-builtin-refactorings
-  - haskell-tools-cli
-  - haskell-tools-daemon
-  - haskell-tools-debug
-  - haskell-tools-demo
-  - haskell-tools-experimental-refactorings
-  - haskell-tools-prettyprint
-  - haskell-tools-refactor
-  - haskell-tools-rewrite
-  - haskell-tor
-  - haskell-type-exts
-  - haskell-typescript
-  - haskell-tyrant
-  - haskell2010
-  - haskell2020
-  - haskell98
-  - haskell98libraries
-  - HaskellAnalysisProgram
-  - haskelldb
-  - haskelldb-connect-hdbc
-  - haskelldb-connect-hdbc-catchio-mtl
-  - haskelldb-connect-hdbc-catchio-tf
-  - haskelldb-connect-hdbc-catchio-transformers
-  - haskelldb-connect-hdbc-lifted
-  - haskelldb-dynamic
-  - haskelldb-flat
-  - haskelldb-hdbc
-  - haskelldb-hdbc-mysql
-  - haskelldb-hdbc-odbc
-  - haskelldb-hdbc-postgresql
-  - haskelldb-hdbc-sqlite3
-  - haskelldb-hsql
-  - haskelldb-hsql-mysql
-  - haskelldb-hsql-odbc
-  - haskelldb-hsql-postgresql
-  - haskelldb-hsql-sqlite3
-  - haskelldb-th
-  - haskelldb-wx
-  - haskellish
-  - HaskellLM
-  - HaskellNet
-  - HaskellNet-SSL
-  - HaskellNN
-  - Haskelloids
-  - haskellscrabble
-  - haskellscript
-  - HaskellTorrent
-  - HaskellTutorials
-  - haskelm
-  - haskelzinc
-  - haskeme
-  - haskey
-  - haskey-mtl
-  - haskgame
-  - haskheap
-  - haskhol-core
-  - haskmon
-  - haskoin
-  - haskoin-bitcoind
-  - haskoin-core
-  - haskoin-crypto
-  - haskoin-node
-  - haskoin-protocol
-  - haskoin-script
-  - haskoin-store
-  - haskoin-store-data
-  - haskoin-util
-  - haskoin-wallet
-  - haskoon
-  - haskoon-httpspec
-  - haskoon-salvia
-  - haskore
-  - haskore-realtime
-  - haskore-supercollider
-  - haskore-synthesizer
-  - HaskRel
-  - hasktorch
-  - hasktorch-codegen
-  - hasktorch-ffi-th
-  - hasktorch-ffi-thc
-  - hasktorch-indef
-  - hasktorch-signatures
-  - hasktorch-signatures-partial
-  - hasktorch-signatures-support
-  - hasktorch-zoo
-  - haskus-binary
-  - haskus-system-build
-  - haskus-utils
-  - haskus-utils-compat
-  - haskus-utils-data
-  - haskus-utils-types
-  - haskus-utils-variant
-  - haskus-web
-  - haskyapi
-  - haslo
-  - hasloGUI
-  - hasmin
-  - hasparql-client
-  - hasql-backend
-  - hasql-class
-  - hasql-cursor-query
-  - hasql-cursor-transaction
-  - hasql-dynamic-statements
-  - hasql-generic
-  - hasql-postgres
-  - hasql-postgres-options
-  - hasql-queue
-  - hasql-simple
-  - hasql-th
-  - hasql-url
-  - hastache
-  - hastache-aeson
-  - haste
-  - haste-app
-  - haste-lib
-  - haste-markup
-  - haste-prim
-  - Hate
-  - hatex-guide
-  - HaTeX-meta
-  - HaTeX-qq
-  - hats
-  - hatt
-  - haven
-  - haverer
-  - HaVSA
-  - hawitter
-  - Hawk
-  - hax
-  - haxl-amazonka
-  - haxl-facebook
-  - haxparse
-  - haxr-th
-  - haxy
-  - hayland
-  - Hayoo
-  - hayoo-cli
-  - hback
-  - hbayes
-  - hbb
-  - hbcd
-  - hBDD-CMUBDD
-  - hBDD-CUDD
-  - hbeanstalk
-  - hbeat
-  - hbf
-  - hblas
-  - hblock
-  - hburg
-  - hcad
-  - HCard
-  - hcc
-  - hcg-minus
-  - hcg-minus-cairo
-  - hcheat
-  - hcheckers
-  - hchesslib
-  - HCL
-  - hcltest
-  - hCM
-  - hcoap
-  - hcom
-  - hcount
-  - hcron
-  - hCsound
-  - hcube
-  - hdaemonize-buildfix
-  - hdbc-aeson
-  - HDBC-mysql
-  - HDBC-postgresql-hstore
-  - hdbc-postgresql-hstore
-  - hdbi
-  - hdbi-conduit
-  - hdbi-postgresql
-  - hdbi-sqlite
-  - hdbi-tests
-  - hdevtools
-  - hdf
-  - hDFA
-  - hdiff
-  - hdigest
-  - hdirect
-  - hdis86
-  - hdiscount
-  - hdm
-  - hdo
-  - hdocs
-  - hdph
-  - hdph-closure
-  - hdr-histogram
-  - HDRUtils
-  - headergen
-  - heap-console
-  - heapsort
-  - heart-app
-  - heart-core
-  - heartbeat-streams
-  - heatitup
-  - heatitup-complete
-  - heavy-log-shortcuts
-  - heavy-logger
-  - heavy-logger-amazon
-  - heavy-logger-instances
-  - hebrew-time
-  - hecc
-  - heckle
-  - hedgehog-checkers
-  - hedgehog-checkers-lens
-  - hedgehog-fakedata
-  - hedgehog-gen-json
-  - hedgehog-generic
-  - hedgehog-golden
-  - hedgehog-servant
-  - Hedi
-  - hedis-config
-  - hedis-namespace
-  - hedis-pile
-  - hedis-simple
-  - hedis-tags
-  - hedn-functor
-  - hedra
-  - heidi
-  - hein
-  - heist-aeson
-  - heist-async
-  - helics
-  - helics-wai
-  - helisp
-  - helium
-  - helix
-  - hell
-  - hellage
-  - hellnet
-  - help-esb
-  - hemkay
-  - hemokit
-  - hen
-  - henet
-  - hepevt
-  - her-lexer
-  - her-lexer-parsec
-  - HERA
-  - herbalizer
-  - HerbiePlugin
-  - heredocs
-  - Hermes
-  - hermit
-  - hermit-syb
-  - herms
-  - herringbone
-  - herringbone-embed
-  - herringbone-wai
-  - hesh
-  - hesql
-  - hetero-dict
-  - heterogeneous-list-literals
-  - heterolist
-  - hetris
-  - heukarya
-  - hevm
-  - hevolisa
-  - hevolisa-dph
-  - hex-text
-  - HExcel
-  - hexchat
-  - hexif
-  - hexmino
-  - hexml-lens
-  - hexpat-iteratee
-  - hexpat-pickle-generic
-  - hexpr
-  - hexpress
-  - hexquote
-  - hexstring
-  - hext
-  - hextream
-  - heyefi
-  - heyting-algebras
-  - hF2
-  - hfann
-  - hfd
-  - hfiar
-  - HFitUI
-  - hfmt
-  - hfoil
-  - hfov
-  - hfractal
-  - HFrequencyQueue
-  - hfusion
-  - hg-buildpackage
-  - hgalib
-  - hgdbmi
-  - HGE2D
-  - hgearman
-  - hGelf
-  - hgen
-  - hgeometric
-  - hgeometry-ipe
-  - hgeometry-svg
-  - hgeos
-  - hgettext
-  - hgis
-  - hgithub
-  - hgmp
-  - hgom
-  - hgopher
-  - HGraphStorage
-  - hgrep
-  - hgrib
-  - hharp
-  - HHDL
-  - hhp
-  - hhwloc
-  - hi
-  - hi3status
-  - hiccup
-  - hichi
-  - hid-examples
-  - hidden-char
-  - hie-core
-  - hieraclus
-  - hierarchical-clustering-diagrams
-  - hierarchical-exceptions
-  - hierarchical-spectral-clustering
-  - hierarchy
-  - hiernotify
-  - Hieroglyph
-  - higgledy
-  - HiggsSet
-  - higherorder
-  - highjson
-  - highjson-swagger
-  - highjson-th
-  - highlight-versions
-  - highWaterMark
-  - himg
-  - himpy
-  - hindent
-  - hindley-milner
-  - hinduce-classifier
-  - hinduce-classifier-decisiontree
-  - hinduce-examples
-  - hinquire
-  - hinstaller
-  - hint-server
-  - hinter
-  - hinterface
-  - hinvaders
-  - hinze-streams
-  - hip
-  - hipbot
-  - hipchat-hs
-  - hipe
-  - Hipmunk-Utils
-  - hircules
-  - hirt
-  - Hish
-  - hissmetrics
-  - hist-pl
-  - hist-pl-dawg
-  - hist-pl-fusion
-  - hist-pl-lexicon
-  - hist-pl-lmf
-  - hist-pl-types
-  - historian
-  - hit
-  - hit-graph
-  - hit-on
-  - HJavaScript
-  - hjcase
-  - hjs
-  - HJScript
-  - hjson-query
-  - hjsonpointer
-  - hjsonschema
-  - hjugement-cli
-  - HJVM
-  - hkd-delta
-  - hkd-lens
-  - hkt
-  - hlbfgsb
-  - hlcm
-  - HLearn-algebra
-  - HLearn-approximation
-  - HLearn-classification
-  - HLearn-datastructures
-  - HLearn-distributions
-  - hledger-api
-  - hledger-chart
-  - hledger-irr
-  - hledger-vty
-  - hlibBladeRF
-  - hlibev
-  - hlibfam
-  - HList
-  - hlivy
-  - HLogger
-  - hlogger
-  - hlongurl
-  - hlrdb
-  - hlrdb-core
-  - hls
-  - hls-exactprint-utils
-  - hlwm
-  - hly
-  - hmark
-  - hmarkup
-  - hmatrix-banded
-  - hmatrix-mmap
-  - hmatrix-nipals
-  - hmatrix-sparse
-  - hmatrix-static
-  - hmatrix-sundials
-  - hmatrix-svdlibc
-  - hmatrix-syntax
-  - hmatrix-tests
-  - hmeap
-  - hmeap-utils
-  - hmenu
-  - hmep
-  - hmk
-  - HMM
-  - hmm
-  - hmm-hmatrix
-  - hmm-lapack
-  - hMollom
-  - hmp3
-  - Hmpf
-  - hmt
-  - hmt-diagrams
-  - hmumps
-  - hnetcdf
-  - HNM
-  - hnormalise
-  - ho-rewriting
-  - hoauth
-  - hob
-  - hobbes
-  - hobbits
-  - hocilib
-  - hocker
-  - hodatime
-  - HODE
-  - hoe
-  - Hoed
-  - hOff-display
-  - hog
-  - hogg
-  - hoggl
-  - hogre
-  - hogre-examples
-  - hois
-  - hol
-  - hold-em
-  - hole
-  - holmes
-  - Holumbus-Searchengine
-  - holy-project
-  - homeomorphic
-  - hommage
-  - homoiconic
-  - homplexity
-  - HongoDB
-  - honi
-  - hoobuddy
-  - hood
-  - hood-off
-  - hood2
-  - hoodie
-  - hoodle
-  - hoodle-builder
-  - hoodle-core
-  - hoodle-extra
-  - hoodle-parser
-  - hoodle-publish
-  - hoodle-render
-  - hoodle-types
-  - hoogle-index
-  - hooks-dir
-  - hoop
-  - hoopl
-  - hoovie
-  - hopencc
-  - hopencl
-  - HOpenCV
-  - hopfield
-  - hops
-  - hoq
-  - horizon
-  - horname
-  - hosc-json
-  - hosts-server
-  - hothasktags
-  - hotswap
-  - hourglass-fuzzy-parsing
-  - houseman
-  - hp2any-core
-  - hp2any-graph
-  - hp2any-manager
-  - hpack-convert
-  - hpack-dhall
-  - hpaco
-  - hpaco-lib
-  - hpage
-  - hpapi
-  - hpaste
-  - hpasteit
-  - HPath
-  - hpc-coveralls
-  - hpc-tracer
-  - hPDB
-  - hPDB-examples
-  - HPDF
-  - hpg
-  - HPi
-  - hpio
-  - hplaylist
-  - HPlot
-  - hpodder
-  - HPong
-  - hpqtypes
-  - hpqtypes-extras
-  - hprotoc
-  - hprotoc-fork
-  - hps
-  - hps-cairo
-  - hps-kmeans
-  - hPushover
-  - hpygments
-  - hpylos
-  - hpyrg
-  - hpython
-  - hquantlib
-  - hquantlib-time
-  - hR
-  - hranker
-  - HRay
-  - hreader
-  - hreader-lens
-  - hreq-client
-  - hreq-conduit
-  - hreq-core
-  - Hricket
-  - hricket
-  - hriemann
-  - HROOT
-  - HROOT-core
-  - HROOT-graf
-  - HROOT-hist
-  - HROOT-io
-  - HROOT-math
-  - HROOT-tree
-  - hs-blake2
-  - hs-brotli
-  - hs-carbon-examples
-  - hs-cdb
-  - hs-conllu
-  - hs-di
-  - hs-dotnet
-  - hs-excelx
-  - hs-ffmpeg
-  - hs-fltk
-  - hs-gen-iface
-  - hs-gizapp
-  - hs-inspector
-  - hs-java
-  - hs-json-rpc
-  - hs-logo
-  - hs-nombre-generator
-  - hs-pattrans
-  - hs-pgms
-  - hs-pkg-config
-  - hs-pkpass
-  - hs-re
-  - hs-rqlite
-  - hs-rs-notify
-  - hs-scrape
-  - hs-snowtify
-  - hs-speedscope
-  - hs-tags
-  - hs-twitter
-  - hs-twitterarchiver
-  - hs-vcard
-  - hs-watchman
-  - hs2bf
-  - Hs2lib
-  - hs2ps
-  - hsaml2
-  - hsautogui
-  - hsay
-  - hsbackup
-  - hsbc
-  - hsbencher
-  - hsbencher-codespeed
-  - hsbencher-fusion
-  - hsc3
-  - hsc3-auditor
-  - hsc3-cairo
-  - hsc3-data
-  - hsc3-db
-  - hsc3-dot
-  - hsc3-forth
-  - hsc3-graphs
-  - hsc3-lang
-  - hsc3-lisp
-  - hsc3-plot
-  - hsc3-process
-  - hsc3-rec
-  - hsc3-rw
-  - hsc3-server
-  - hsc3-sf
-  - hsc3-sf-hsndfile
-  - hsc3-unsafe
-  - hsc3-utils
-  - hscaffold
-  - hscamwire
-  - hscassandra
-  - hscd
-  - hsclock
-  - hscope
-  - hScraper
-  - hscuid
-  - hsdev
-  - hsdif
-  - hsdip
-  - hsdns-cache
-  - Hsed
-  - hsendxmpp
-  - hsenv
-  - HSet
-  - hset
-  - hsfacter
-  - hsfcsh
-  - HSFFIG
-  - hsfilt
-  - hsforce
-  - HSGEP
-  - hsgnutls
-  - hsgnutls-yj
-  - hsgsom
-  - HsHaruPDF
-  - HSHHelpers
-  - HsHTSLib
-  - HsHyperEstraier
-  - hsI2C
-  - hSimpleDB
-  - hsimport
-  - hsinspect
-  - hsinspect-lsp
-  - HsJudy
-  - hskeleton
-  - hslackbuilder
-  - hslibsvm
-  - hslinks
-  - hslogger-reader
-  - hslogger-template
-  - hslogstash
-  - hsluv-haskell
-  - hsmagick
-  - HSmarty
-  - hsmodetweaks
-  - Hsmtlib
-  - hsmtpclient
-  - hsnock
-  - hsns
-  - hsnsq
-  - hsntp
-  - hsoptions
-  - HSoundFile
-  - hsoz
-  - hsp-cgi
-  - hsparql
-  - HsParrot
-  - hspear
-  - hspec-expectations-json
-  - hspec-expectations-match
-  - hspec-expectations-pretty
-  - hspec-experimental
-  - hspec-hashable
-  - hspec-jenkins
-  - hspec-monad-control
-  - hspec-pg-transact
-  - hspec-setup
-  - hspec-shouldbe
-  - hspec-snap
-  - hspec-structured-formatter
-  - hspec-test-sandbox
-  - hspec-webdriver
-  - hspec2
-  - hspecVariant
-  - HsPerl5
-  - hspkcs11
-  - hspread
-  - hspresent
-  - hsprocess
-  - hsql
-  - hsql-mysql
-  - hsql-odbc
-  - hsql-postgresql
-  - hsql-sqlite3
-  - hsreadability
-  - hsrelp
-  - hsseccomp
-  - hsSqlite3
-  - hssqlppp
-  - hssqlppp-th
-  - HsSVN
-  - hstar
-  - hstats
-  - hstatsd
-  - hstest
-  - hstidy
-  - hstox
-  - hstradeking
-  - HStringTemplateHelpers
-  - hstyle
-  - hstzaar
-  - hsubconvert
-  - hsudoku
-  - HsWebots
-  - hswip
-  - hsx
-  - hsx-jmacro
-  - hsx-xhtml
-  - hsXenCtrl
-  - hsyscall
-  - hsyslog-tcp
-  - hszephyr
-  - HTab
-  - htags
-  - hTalos
-  - htar
-  - htdp-image
-  - hTensor
-  - htestu
-  - HTF
-  - HTicTacToe
-  - htiled
-  - htlset
-  - html-charset
-  - html-kure
-  - html-rules
-  - html-tokenizer
-  - hts
-  - htsn
-  - htsn-import
-  - htssets
-  - http-attoparsec
-  - http-client-auth
-  - http-client-lens
-  - http-client-request-modifiers
-  - http-client-session
-  - http-client-streams
-  - http-client-websockets
-  - http-conduit-browser
-  - http-conduit-downloader
-  - http-directory
-  - http-dispatch
-  - http-enumerator
-  - http-grammar
-  - http-io-streams
-  - http-kinder
-  - http-listen
-  - http-monad
-  - http-pony
-  - http-pony-serve-wai
-  - http-proxy
-  - http-querystring
-  - http-response-decoder
-  - http-rfc7807
-  - http-server
-  - http-shed
-  - http-wget
-  - http2-client-grpc
-  - http2-grpc-proto-lens
-  - http2-grpc-proto3-wire
-  - https-everywhere-rules
-  - https-everywhere-rules-raw
-  - httpspec
-  - htune
-  - htvm
-  - htzaar
-  - huck
-  - HueAPI
-  - huff
-  - huffman
-  - hugs2yc
-  - hulk
-  - HulkImport
-  - human-parse
-  - human-text
-  - humble-prelude
-  - hums
-  - hunch
-  - HUnit-Diff
-  - hunit-gui
-  - hunit-rematch
-  - hunp
-  - hunspell-hs
-  - hunt-searchengine
-  - hunt-server
-  - hup
-  - hurdle
-  - hurl
-  - hurriyet
-  - husk-scheme
-  - husk-scheme-libs
-  - husky
-  - hutton
-  - huttons-razor
-  - huzzy
-  - hVOIDP
-  - hw-all
-  - hw-aws-sqs-conduit
-  - hw-ci-assist
-  - hw-dsv
-  - hw-json
-  - hw-json-lens
-  - hw-json-simd
-  - hw-json-simple-cursor
-  - hw-json-standard-cursor
-  - hw-kafka-avro
-  - hw-prim-bits
-  - hw-simd
-  - hw-simd-cli
-  - hw-uri
-  - hwall-auth-iitk
-  - hweblib
-  - hwhile
-  - hworker
-  - hworker-ses
-  - hwormhole
-  - hws
-  - hwsl2
-  - hwsl2-bytevector
-  - hwsl2-reducers
-  - hx
-  - HXMPP
-  - hxmppc
-  - hxournal
-  - HXQ
-  - hxt-pickle-utils
-  - hxthelper
-  - hxweb
-  - hyahtzee
-  - hyakko
-  - hybrid
-  - hydra-hs
-  - hydra-print
-  - Hydrogen
-  - hydrogen
-  - hydrogen-cli
-  - hydrogen-cli-args
-  - hydrogen-data
-  - hydrogen-multimap
-  - hydrogen-parsing
-  - hydrogen-prelude
-  - hydrogen-prelude-parsec
-  - hydrogen-syntax
-  - hydrogen-util
-  - hyena
-  - hylide
-  - hylolib
-  - hylotab
-  - hyloutils
-  - hyper-extra
-  - hyper-haskell-server
-  - hyperdrive
-  - hyperfunctions
-  - hyperion
-  - hyperloglogplus
-  - hyperpublic
-  - hypher
-  - hzk
-  - hzulip
-  - i18n
-  - I1M
-  - i3ipc
-  - iap-verifier
-  - ib-api
-  - iban
-  - ical
-  - ice40-prim
-  - IcoGrid
-  - iconv-typed
-  - ide-backend
-  - ide-backend-common
-  - ide-backend-server
-  - ideas
-  - ideas-math
-  - ideas-math-types
-  - ideas-statistics
-  - idempotent
-  - identifiers
-  - idiii
-  - idna2008
-  - IDynamic
-  - ieee-utils
-  - iexcloud
-  - ifcxt
-  - IFS
-  - ig
-  - ige
-  - ige-mac-integration
-  - ignore
-  - igraph
-  - ihaskell
-  - ihaskell-aeson
-  - ihaskell-basic
-  - ihaskell-blaze
-  - ihaskell-charts
-  - ihaskell-diagrams
-  - ihaskell-display
-  - ihaskell-gnuplot
-  - ihaskell-graphviz
-  - ihaskell-hatex
-  - ihaskell-hvega
-  - ihaskell-inline-r
-  - ihaskell-juicypixels
-  - ihaskell-magic
-  - ihaskell-parsec
-  - ihaskell-plot
-  - ihaskell-rlangqq
-  - ihaskell-widgets
-  - ihttp
-  - illuminate
-  - imagepaste
-  - imap
-  - imapget
-  - imbib
-  - imgur
-  - imgurder
-  - imj-animation
-  - imj-base
-  - imj-game-hamazed
-  - imj-measure-stdout
-  - imj-prelude
-  - imm
-  - immortal-worker
-  - imparse
-  - imperative-edsl
-  - imperative-edsl-vhdl
-  - ImperativeHaskell
-  - impl
-  - implicit-logging
-  - implicit-params
-  - importify
-  - imports
-  - impossible
-  - imprint
-  - improve
-  - INblobs
-  - inch
-  - inchworm
-  - incremental-computing
-  - incremental-maps
-  - increments
-  - indentation
-  - indentation-core
-  - indentation-parsec
-  - indentation-trifecta
-  - indents
-  - index-core
-  - indexation
-  - IndexedList
-  - indextype
-  - indices
-  - indieweb-algorithms
-  - inf-interval
-  - infer-upstream
-  - infernal
-  - infernu
-  - infinity
-  - infix
-  - InfixApplicative
-  - inflist
-  - informative
-  - ini-qq
-  - inilist
-  - initialize
-  - inject-function
-  - inline-asm
-  - inline-java
-  - inserts
-  - inspector-wrecker
-  - instana-haskell-trace-sdk
-  - instance-map
-  - instant-aeson
-  - instant-bytes
-  - instant-deepseq
-  - instant-generics
-  - instant-hashable
-  - instant-zipper
-  - instapaper-sender
-  - instinct
-  - int-multimap
-  - intcode
-  - integer-pure
-  - integreat
-  - intel-aes
-  - intensional-datatys
-  - interlude-l
-  - internetmarke
-  - intero
-  - interpol
-  - interpolatedstring-qq
-  - interpolatedstring-qq-mwotton
-  - interpolatedstring-qq2
-  - interruptible
-  - interval
-  - IntFormats
-  - intricacy
-  - intro-prelude
-  - introduction
-  - introduction-test
-  - intset
-  - invert
-  - invertible-hlist
-  - invertible-syntax
-  - io-capture
-  - io-choice
-  - io-reactive
-  - ioctl
-  - ion
-  - IOR
-  - IORefCAS
-  - iostring
-  - iothread
-  - iotransaction
-  - ip
-  - ip-quoter
-  - ip2location
-  - ip2proxy
-  - ipatch
-  - ipc
-  - ipfs
-  - ipfs-api
-  - ipld-cid
-  - ipopt-hs
-  - ipprint
-  - iptables-helpers
-  - iptadmin
-  - IPv6DB
-  - Irc
-  - irc-dcc
-  - irc-fun-bot
-  - irc-fun-client
-  - irc-fun-color
-  - irc-fun-messages
-  - irc-fun-types
-  - iri
-  - iridium
-  - iron-mq
-  - ironforge
-  - irt
-  - isdicom
-  - isevaluated
-  - ismtp
-  - IsNull
-  - iso8601-duration
-  - isobmff
-  - isobmff-builder
-  - isohunt
-  - isotope
-  - itcli
-  - itemfield
-  - iter-stats
-  - iteratee
-  - iteratee-compress
-  - iteratee-mtl
-  - iteratee-parsec
-  - iteratee-stm
-  - iterIO
-  - iterio-server
-  - iterm-show
-  - iterm-show-diagrams
-  - iterm-show-JuicyPixels
-  - ivor
-  - ivory
-  - ivory-avr-atmega328p-registers
-  - ivory-backend-c
-  - ivory-bitdata
-  - ivory-eval
-  - ivory-examples
-  - ivory-hw
-  - ivory-opts
-  - ivory-quickcheck
-  - ivory-serialize
-  - ivory-stdlib
-  - ivy-web
-  - ixdopp
-  - ixmonad
-  - ixshader
-  - iyql
-  - j
-  - j2hs
-  - jack-bindings
-  - JackMiniMix
-  - jackminimix
-  - jacobi-roots
-  - jaeger-flamegraph
-  - jail
-  - jalla
-  - jarfind
-  - jarify
-  - jason
-  - java-bridge
-  - java-bridge-extras
-  - java-character
-  - java-reflect
-  - javascript-bridge
-  - Javasf
-  - javasf
-  - Javav
-  - javav
-  - jbi
-  - jcdecaux-vls
-  - Jdh
-  - jdi
-  - jenga
-  - jenkinsPlugins2nix
-  - jespresso
-  - jinquantities
-  - jmacro
-  - jmacro-rpc
-  - jmacro-rpc-happstack
-  - jmacro-rpc-snap
-  - jml-web-service
-  - jmonkey
-  - jni
-  - jobqueue
-  - jobs-ui
-  - join
-  - join-api
-  - joinlist
-  - jonathanscard
-  - jot
-  - jpeg
-  - js-good-parts
-  - jsaddle-hello
-  - jsaddle-wkwebview
-  - JsContracts
-  - jsmw
-  - json-alt
-  - json-assertions
-  - json-ast-json-encoder
-  - json-ast-quickcheck
-  - json-autotype
-  - json-b
-  - json-builder
-  - JSON-Combinator
-  - JSON-Combinator-Examples
-  - json-encoder
-  - json-enumerator
-  - json-extra
-  - json-fu
-  - json-incremental-decoder
-  - json-litobj
-  - json-pointer-hasql
-  - json-pointy
-  - json-python
-  - json-query
-  - json-rpc-client
-  - json-schema
-  - json-sop
-  - json-syntax
-  - json-to-haskell
-  - json-togo
-  - json-tokens
-  - json-tools
-  - json-tracer
-  - json2
-  - json2-hdbc
-  - JSONb
-  - jsonextfilter
-  - JsonGrammar
-  - jsonifier
-  - jsonnet
-  - jsonresume
-  - jsonrpc-conduit
-  - jsons-to-schema
-  - jsonschema-gen
-  - jsonsql
-  - jsontsv
-  - jsonxlsx
-  - jspath
-  - juandelacosa
-  - judge
-  - judy
-  - JuicyPixels-blp
-  - JuicyPixels-canvas
-  - JunkDB
-  - JunkDB-driver-gdbm
-  - JunkDB-driver-hashtables
-  - jupyter
-  - JuPyTer-notebook
-  - JustParse
-  - jvm
-  - jvm-batching
-  - jvm-binary
-  - jvm-parser
-  - jvm-streaming
-  - JYU-Utils
-  - kademlia
-  - kafka-client
-  - kafka-client-sync
-  - kafka-device
-  - kafka-device-glut
-  - kafka-device-joystick
-  - kafka-device-leap
-  - kafka-device-spacenav
-  - kafka-device-vrpn
-  - kaleidoscope
-  - Kalman
-  - kalman
-  - kangaroo
-  - kansas-lava
-  - kansas-lava-cores
-  - kansas-lava-papilio
-  - kansas-lava-shake
-  - karakuri
-  - karps
-  - katip-elasticsearch
-  - katip-kafka
-  - katip-raven
-  - katip-rollbar
-  - katip-scalyr-scribe
-  - katip-syslog
-  - katt
-  - katydid
-  - kawaii
-  - kawhi
-  - kd-tree
-  - kdesrc-build-extra
-  - keccak
-  - keera-hails-i18n
-  - keera-hails-mvc-environment-gtk
-  - keera-hails-mvc-model-lightmodel
-  - keera-hails-mvc-model-protectedmodel
-  - keera-hails-mvc-solutions-gtk
-  - keera-hails-reactive-cbmvar
-  - keera-hails-reactive-fs
-  - keera-hails-reactive-gtk
-  - keera-hails-reactive-htmldom
-  - keera-hails-reactive-network
-  - keera-hails-reactive-polling
-  - keera-hails-reactive-wx
-  - keera-hails-reactive-yampa
-  - keera-hails-reactivelenses
-  - keera-hails-reactivevalues
-  - kempe
-  - kerry
-  - Ketchup
-  - keter
-  - kevin
-  - keyed
-  - keyring
-  - keysafe
-  - keystore
-  - keyvaluehash
-  - keyword-args
-  - khph
-  - kicad-data
-  - kickass-torrents-dump-parser
-  - kickchan
-  - kif-parser
-  - kit
-  - kleene
-  - kmeans-par
-  - kmeans-vector
-  - kmonad
-  - kmp-dfa
-  - knead
-  - knead-arithmetic
-  - knit-haskell
-  - knots
-  - koellner-phonetic
-  - kontra-config
-  - korfu
-  - kparams
-  - kqueue
-  - kraken
-  - krapsh
-  - Kriens
-  - krpc
-  - ks-test
-  - KSP
-  - ktx
-  - ktx-codec
-  - kubernetes-client
-  - kubernetes-client-core
-  - kuifje
-  - kure
-  - kure-your-boilerplate
-  - kurita
-  - KyotoCabinet
-  - l-bfgs-b
-  - L-seed
-  - labeled-graph
-  - laborantin-hs
-  - labsat
-  - labyrinth
-  - labyrinth-server
-  - lackey
-  - lagrangian
-  - laika
-  - lambda-bridge
-  - lambda-calculator
-  - lambda-canvas
-  - lambda-devs
-  - lambda-options
-  - lambda-toolbox
-  - lambda2js
-  - lambdaBase
-  - lambdabot-utils
-  - lambdabot-zulip
-  - lambdacms-core
-  - lambdacms-media
-  - lambdacube
-  - lambdacube-bullet
-  - lambdacube-compiler
-  - lambdacube-core
-  - lambdacube-edsl
-  - lambdacube-engine
-  - lambdacube-examples
-  - lambdacube-gl
-  - lambdacube-ir
-  - lambdacube-samples
-  - LambdaDesigner
-  - lambdaFeed
-  - LambdaHack
-  - LambdaINet
-  - Lambdajudge
-  - lambdaLit
-  - LambdaNet
-  - LambdaPrettyQuote
-  - LambdaShell
-  - lambdatex
-  - lambdatwit
-  - Lambdaya
-  - lambdaya-bus
-  - lambdiff
-  - lame
-  - lame-tester
-  - lang
-  - language-asn
-  - language-boogie
-  - language-c-comments
-  - language-c-inline
-  - language-conf
-  - language-csharp
-  - language-dart
-  - language-dickinson
-  - language-dockerfile
-  - language-eiffel
-  - language-elm
-  - language-fortran
-  - language-gcl
-  - language-go
-  - language-guess
-  - language-hcl
-  - language-java-classfile
-  - language-kort
-  - language-lua-qq
-  - language-lua2
-  - language-mixal
-  - language-Modula2
-  - language-ninja
-  - language-oberon
-  - language-objc
-  - language-ocaml
-  - language-openscad
-  - language-pig
-  - language-puppet
-  - language-python-colour
-  - language-qux
-  - language-rust
-  - language-sh
-  - language-spelling
-  - language-sqlite
-  - language-sygus
-  - language-thrift
-  - language-tl
-  - language-typescript
-  - language-vhdl
-  - language-webidl
-  - lapack
-  - lapack-carray
-  - lapack-comfort-array
-  - lapack-ffi
-  - large-hashable
-  - Lastik
-  - lat
-  - latest-npm-version
-  - latex-formulae-hakyll
-  - latex-formulae-image
-  - latex-formulae-pandoc
-  - latex-svg-hakyll
-  - latex-svg-image
-  - latex-svg-pandoc
-  - LATS
-  - launchdarkly-server-sdk
-  - launchpad-control
-  - lawless-concurrent-machines
-  - layered-state
-  - layers
-  - layers-game
-  - layout
-  - layout-bootstrap
-  - layout-rules
-  - layouting
-  - lazy-hash
-  - lazy-hash-cache
-  - lazy-io-streams
-  - lazy-priority-queue
-  - lazy-search
-  - lazyarray
-  - lazyboy
-  - lazyset
-  - LazyVault
-  - ld-intervals
-  - lda
-  - ldapply
-  - LDAPv3
-  - ldif
-  - leaf
-  - leaky
-  - lean
-  - leanpub-wreq
-  - leapseconds
-  - learn
-  - learn-physics-examples
-  - Learning
-  - leb128
-  - leetify
-  - legion
-  - legion-discovery
-  - legion-discovery-client
-  - legion-extra
-  - leksah-server
-  - lendingclub
-  - lens-filesystem
-  - lens-labels
-  - lens-prelude
-  - lens-process
-  - lens-simple
-  - lens-text-encoding
-  - lens-th-rewrite
-  - lens-time
-  - lens-toml-parser
-  - lens-tutorial
-  - lens-typelevel
-  - lens-utils
-  - lensref
-  - lentil
-  - level-monad
-  - Level0
-  - levmar
-  - levmar-chart
-  - lex-applicative
-  - lfst
-  - lgtk
-  - lha
-  - lhae
-  - lhc
-  - lhe
-  - lhs2TeX-hl
-  - lhslatex
-  - libarchive
-  - LibClang
-  - libconfig
-  - libcspm
-  - libexpect
-  - libfuse3
-  - libGenI
-  - libhbb
-  - libinfluxdb
-  - libjenkins
-  - libjwt-typed
-  - liblastfm
-  - liblawless
-  - liblinear-enumerator
-  - libltdl
-  - libmolude
-  - libnix
-  - liboath-hs
-  - liboleg
-  - libpafe
-  - libpq
-  - libraft
-  - librandomorg
-  - librato
-  - libssh2
-  - libssh2-conduit
-  - libsystemd-daemon
-  - libtagc
-  - libxls
-  - libxml-enumerator
-  - libxslt
-  - lie
-  - life-sync
-  - lifetimes
-  - lifted-base-tf
-  - lifted-protolude
-  - lifter
-  - ligature
-  - lightning-haskell
-  - lightstep-haskell
-  - lighttpd-conf
-  - lighttpd-conf-qq
-  - lilypond
-  - Limit
-  - limp-cbc
-  - linda
-  - linden
-  - line-bot-sdk
-  - line-drawing
-  - linear-algebra-cblas
-  - linear-base
-  - linear-circuit
-  - linear-code
-  - linear-maps
-  - linear-opengl
-  - linear-vect
-  - linearmap-category
-  - linearscan
-  - linearscan-hoopl
-  - LinearSplit
-  - lines-of-action
-  - LinkChecker
-  - linkchk
-  - linkcore
-  - linked-list-with-iterator
-  - linkedhashmap
-  - linklater
-  - linnet
-  - linnet-aeson
-  - linnet-conduit
-  - linode
-  - linode-v4
-  - linux-blkid
-  - linux-cgroup
-  - linux-kmod
-  - linux-perf
-  - linux-ptrace
-  - linx-gateway
-  - lio-eci11
-  - lio-simple
-  - lion
-  - lipsum-gen
-  - liquid
-  - liquid-base
-  - liquid-bytestring
-  - liquid-containers
-  - liquid-ghc-prim
-  - liquid-parallel
-  - liquid-platform
-  - liquid-prelude
-  - liquid-vector
-  - liquidhaskell
-  - liquidhaskell-cabal
-  - Liquorice
-  - list-fusion-probe
-  - list-mux
-  - list-prompt
-  - list-remote-forwards
-  - list-t-attoparsec
-  - list-t-html-parser
-  - list-t-http-client
-  - list-t-text
-  - list-witnesses
-  - list-zip-def
-  - list-zipper
-  - listenbrainz-client
-  - listlike-instances
-  - ListT
-  - liszt
-  - lit
-  - literals
-  - LiterateMarkdown
-  - little-logger
-  - live-sequencer
-  - ll-picosat
-  - llsd
-  - llvm
-  - llvm-analysis
-  - llvm-base
-  - llvm-base-types
-  - llvm-base-util
-  - llvm-data-interop
-  - llvm-dsl
-  - llvm-extension
-  - llvm-extra
-  - llvm-ffi
-  - llvm-ffi-tools
-  - llvm-general
-  - llvm-general-pure
-  - llvm-general-quote
-  - llvm-ht
-  - llvm-pkg-config
-  - llvm-pretty
-  - llvm-pretty-bc-parser
-  - llvm-tf
-  - llvm-tools
-  - lmonad
-  - lmonad-yesod
-  - load-balancing
-  - load-font
-  - local-address
-  - local-search
-  - localize
-  - located
-  - located-monad-logger
-  - loch
-  - locked-poll
-  - log
-  - log-postgres
-  - log-utils
-  - log-warper
-  - log2json
-  - log4hs
-  - logentries
-  - logger
-  - logging-effect-extra
-  - logging-effect-extra-file
-  - logging-effect-extra-handler
-  - Logic
-  - logic-classes
-  - LogicGrowsOnTrees
-  - LogicGrowsOnTrees-MPI
-  - LogicGrowsOnTrees-network
-  - LogicGrowsOnTrees-processes
-  - logicst
-  - logict-state
-  - logplex-parse
-  - lojban
-  - lojbanParser
-  - lojbanXiragan
-  - lojysamban
-  - lol
-  - lol-apps
-  - lol-benches
-  - lol-calculus
-  - lol-cpp
-  - lol-repa
-  - lol-tests
-  - lol-typing
-  - loli
-  - longboi
-  - longshot
-  - lookup-tables
-  - loop-effin
-  - loop-while
-  - loopbreaker
-  - looper
-  - loops
-  - loopy
-  - lord
-  - lorem
-  - lorentz
-  - loris
-  - loshadka
-  - lostcities
-  - loup
-  - lowgl
-  - lp-diagrams-svg
-  - LRU
-  - ls-usb
-  - lscabal
-  - lsfrom
-  - LslPlus
-  - lsystem
-  - lti13
-  - ltk
-  - LTS
-  - lua-bc
-  - luachunk
-  - luautils
-  - lucid-colonnade
-  - lucienne
-  - Lucu
-  - luhn
-  - lui
-  - luis-client
-  - luka
-  - luminance
-  - luminance-samples
-  - lushtags
-  - luthor
-  - lvish
-  - lvmlib
-  - lxc
-  - lxd-client
-  - lye
-  - Lykah
-  - lz4-bytes
-  - lz4-conduit
-  - lz4-frame-conduit
-  - lzip
-  - lzma-enumerator
-  - lzma-streams
-  - lzo
-  - maam
-  - mac
-  - macaroon-shop
-  - macbeth-lib
-  - machinecell
-  - machines-amazonka
-  - machines-attoparsec
-  - machines-binary
-  - machines-bytestring
-  - machines-directory
-  - machines-encoding
-  - machines-io
-  - machines-process
-  - machines-zlib
-  - macho
-  - maclight
-  - macos-corelibs
-  - macosx-make-standalone
-  - macrm
-  - madlang
-  - mage
-  - magic-tyfams
-  - magic-wormhole
-  - magicbane
-  - MagicHaskeller
-  - magico
-  - magma
-  - mahoro
-  - maid
-  - mail-pool
-  - mail-reports
-  - mailchimp
-  - mailchimp-subscribe
-  - MailchimpSimple
-  - mailgun
-  - majordomo
-  - majority
-  - make-hard-links
-  - make-monofoldable-foldable
-  - make-package
-  - makedo
-  - makefile
-  - mallard
-  - manatee
-  - manatee-anything
-  - manatee-core
-  - manatee-curl
-  - manatee-editor
-  - manatee-filemanager
-  - manatee-imageviewer
-  - manatee-ircclient
-  - manatee-mplayer
-  - manatee-pdfviewer
-  - manatee-processmanager
-  - manatee-template
-  - manatee-terminal
-  - manatee-welcome
-  - mandrill
-  - mandulia
-  - mangopay
-  - manifold-random
-  - manifolds
-  - Map
-  - map-exts
-  - mapalgebra
-  - Mapping
-  - mappy
-  - marionetta
-  - markdown-kate
-  - markdown-pap
-  - markdown2svg
-  - marked-pretty
-  - markov-processes
-  - markov-realization
-  - markup
-  - marmalade-upload
-  - marquise
-  - mars
-  - marvin
-  - marvin-interpolate
-  - masakazu-bot
-  - MASMGen
-  - massiv-persist
-  - massiv-serialise
-  - master-plan
-  - matchers
-  - math-grads
-  - math-interpolate
-  - math-metric
-  - math-programming
-  - math-programming-glpk
-  - math-programming-tests
-  - mathblog
-  - mathflow
-  - mathlink
-  - matrix-as-xyz
-  - matrix-market
-  - matrix-sized
-  - matsuri
-  - maude
-  - maxent
-  - maxent-learner-hw
-  - maxent-learner-hw-gui
-  - maxsharing
-  - maybench
-  - MaybeT
-  - MaybeT-monads-tf
-  - MaybeT-transformers
-  - MazesOfMonad
-  - MBot
-  - mbox-tools
-  - mbug
-  - MC-Fold-DP
-  - mcl
-  - mcm
-  - mcmaster-gloss-examples
-  - mcmc
-  - mcmc-samplers
-  - mcmc-synthesis
-  - mcpi
-  - mdapi
-  - mdcat
-  - mDNSResponder-client
-  - mdp
-  - mealstrom
-  - mealy
-  - MeanShift
-  - Measure
-  - mecab
-  - mech
-  - Mecha
-  - Mechs
-  - mechs
-  - mediabus
-  - mediabus-fdk-aac
-  - mediabus-rtp
-  - mediawiki
-  - medium-sdk-haskell
-  - mega-sdist
-  - megalisp
-  - mellon-core
-  - mellon-gpio
-  - mellon-web
-  - melody
-  - memcache
-  - memcache-conduit
-  - memcache-haskell
-  - memcached-binary
-  - memis
-  - memo-ptr
-  - memoization-utils
-  - memorypool
-  - menoh
-  - menshen
-  - mergeful-persistent
-  - mergeless-persistent
-  - merkle-patricia-db
-  - merkle-tree
-  - messagepack-rpc
-  - messente
-  - meta-misc
-  - meta-par
-  - meta-par-accelerate
-  - metadata
-  - MetaHDBC
-  - metaheuristics
-  - MetaObject
-  - metaplug
-  - metar
-  - metar-http
-  - metric
-  - Metrics
-  - metricsd-client
-  - metronome
-  - mezzo
-  - mezzolens
-  - MFlow
-  - mgeneric
-  - Mhailist
-  - MHask
-  - mi
-  - Michelangelo
-  - miconix-test
-  - micro-gateway
-  - micro-recursion-schemes
-  - microbase
-  - microformats2-parser
-  - microformats2-types
-  - microgroove
-  - microlens-each
-  - micrologger
-  - microsoft-translator
-  - MicrosoftTranslator
-  - mida
-  - midi-music-box
-  - midi-utils
-  - midimory
-  - midisurface
-  - mighttpd
-  - migrant-core
-  - migrant-hdbc
-  - migrant-postgresql-simple
-  - migrant-sqlite-simple
-  - mikmod
-  - mikrokosmos
-  - miku
-  - milena
-  - mime-directory
-  - minecraft-data
-  - minesweeper
-  - mini-egison
-  - miniforth
-  - minilens
-  - minilight
-  - minilight-lua
-  - minimung
-  - minions
-  - minioperational
-  - miniplex
-  - minirotate
-  - ministg
-  - minizinc-process
-  - minst-idx
-  - mios
-  - MIP
-  - MIP-glpk
-  - mirror-tweet
-  - miso
-  - miso-action-logger
-  - miso-examples
-  - miss
-  - miss-porcelain
-  - missing-py2
-  - MissingPy
-  - mit-3qvpPyAi6mH
-  - mix-arrows
-  - mixed-strategies
-  - mixpanel-client
-  - mkbndl
-  - mkcabal
-  - ml-w
-  - mlist
-  - mm2
-  - mmark
-  - mmark-cli
-  - mmark-ext
-  - mmsyn7h
-  - mmtf
-  - mmtl
-  - mmtl-base
-  - moan
-  - Mobile-Legends-Hack-Cheats
-  - modelicaparser
-  - modify-fasta
-  - modsplit
-  - modular-prelude
-  - modular-prelude-classy
-  - modularity
-  - module-management
-  - modulespection
-  - modulo
-  - Moe
-  - moe
-  - MoeDict
-  - moesocks
-  - mohws
-  - mole
-  - mollie-api-haskell
-  - monad-atom
-  - monad-atom-simple
-  - monad-bayes
-  - monad-branch
-  - monad-exception
-  - monad-fork
-  - monad-http
-  - monad-interleave
-  - monad-levels
-  - monad-lgbt
-  - monad-log
-  - monad-lrs
-  - monad-mersenne-random
-  - monad-metrics-extensible
-  - monad-mock
-  - monad-open
-  - monad-parallel-progressbar
-  - monad-param
-  - monad-persist
-  - monad-ran
-  - monad-recorder
-  - monad-state
-  - monad-statevar
-  - monad-ste
-  - monad-stlike-io
-  - monad-stlike-stm
-  - monad-task
-  - monad-timing
-  - monad-tx
-  - monad-unify
-  - monad-var
-  - monad-wrap
-  - monadacme
-  - MonadCatchIO-mtl
-  - MonadCatchIO-mtl-foreign
-  - MonadCatchIO-transformers
-  - MonadCatchIO-transformers-foreign
-  - MonadCompose
-  - monadic-recursion-schemes
-  - monadiccp
-  - monadiccp-gecode
-  - Monadius
-  - MonadLab
-  - monadLib-compose
-  - monadloc-pp
-  - monadlog
-  - Monadoro
-  - monadplus
-  - monads-fd
-  - MonadStack
-  - monarch
-  - Monaris
-  - Monatron
-  - Monatron-IO
-  - mondo
-  - monetdb-mapi
-  - money
-  - mongoDB
-  - mongodb-queue
-  - mongrel2-handler
-  - monitor
-  - monky
-  - mono-foldable
-  - Monocle
-  - monoid
-  - monoid-absorbing
-  - monoid-owns
-  - monoidplus
-  - monoids
-  - monopati
-  - monte-carlo
-  - months
-  - monus
-  - monzo
-  - moo
-  - morfette
-  - morfeusz
-  - morley
-  - morloc
-  - morpheus-graphql
-  - morpheus-graphql-app
-  - morpheus-graphql-cli
-  - morpheus-graphql-subscriptions
-  - morphisms-functors
-  - morphisms-functors-inventory
-  - morphisms-objects
-  - morte
-  - mosaico-lib
-  - moto-postgresql
-  - motor-diagrams
-  - motor-reflection
-  - mount
-  - movie-monad
-  - mp
-  - mpdmate
-  - mpppc
-  - mprelude
-  - mpretty
-  - mpris
-  - mprover
-  - mps
-  - mptcp-pm
-  - mpvguihs
-  - mqtt
-  - mqtt-hs
-  - mrifk
-  - mrm
-  - ms
-  - msgpack
-  - msgpack-aeson
-  - msgpack-binary
-  - msgpack-idl
-  - msgpack-rpc
-  - msgpack-rpc-conduit
-  - msh
-  - msi-kb-backlit
-  - MSQueue
-  - MTGBuilder
-  - mtgoxapi
-  - mtl-c
-  - mtl-evil-instances
-  - mtl-extras
-  - mtl-tf
-  - mtlx
-  - mtp
-  - mu-avro
-  - mu-graphql
-  - mu-grpc-client
-  - mu-grpc-common
-  - mu-grpc-server
-  - mu-kafka
-  - mu-lens
-  - mu-optics
-  - mu-persistent
-  - mu-prometheus
-  - mu-protobuf
-  - mu-rpc
-  - mu-schema
-  - mu-servant-server
-  - mu-tracing
-  - MuCheck
-  - MuCheck-Hspec
-  - MuCheck-HUnit
-  - MuCheck-QuickCheck
-  - MuCheck-SmallCheck
-  - mud
-  - muesli
-  - mulang
-  - multext-east-msd
-  - multi-cabal
-  - multi-instance
-  - multi-trie
-  - multiaddr
-  - multiarg
-  - multibase
-  - multifocal
-  - multihash
-  - multihash-serialise
-  - multilinear
-  - multilinear-io
-  - multipass
-  - multipath
-  - multiplate-simplified
-  - multiplicity
-  - multipool-persistent-postgresql
-  - multirec
-  - multirec-alt-deriver
-  - multirec-binary
-  - multisetrewrite
-  - multivariant
-  - Munkres-simple
-  - muon
-  - murder
-  - murmur
-  - murmur3
-  - murmurhash3
-  - mushu
-  - music-graphics
-  - music-parts
-  - music-pitch
-  - music-preludes
-  - music-score
-  - music-sibelius
-  - music-suite
-  - music-util
-  - musicbrainz-email
-  - musicScroll
-  - musicxml
-  - musicxml2
-  - mustache-haskell
-  - mutable-iter
-  - MutationOrder
-  - mute-unmute
-  - mvar-lock
-  - mvc
-  - mvc-updates
-  - mvclient
-  - mxnet
-  - mxnet-dataiter
-  - mxnet-examples
-  - mxnet-nn
-  - mxnet-nnvm
-  - my-package-testing
-  - my-test-docs
-  - myanimelist-export
-  - myo
-  - MyPrimes
-  - mysnapsession
-  - mysnapsession-example
-  - mysql-effect
-  - mysql-haskell-openssl
-  - mysql-simple-quasi
-  - mysql-simple-typed
-  - mystem
-  - myTestlll
-  - mywatch
-  - myxine-client
-  - mzv
-  - n-tuple
-  - n2o-protocols
-  - n2o-web
-  - nagios-plugin-ekg
-  - nakadi-client
-  - named-lock
-  - named-servant
-  - named-servant-client
-  - named-servant-server
-  - named-sop
-  - namelist
-  - namespace
-  - nano-hmac
-  - nano-md5
-  - nanocurses
-  - nanomsg
-  - nanomsg-haskell
-  - nanoparsec
-  - NanoProlog
-  - nanovg
-  - nanovg-simple
-  - nanq
-  - naperian
-  - NaperianNetCDF
-  - naqsha
-  - narc
-  - nat-sized-numbers
-  - nationstates
-  - nats-client
-  - nats-queue
-  - natural
-  - natural-number
-  - NaturalLanguageAlphabets
-  - NaturalSort
-  - naver-translate
-  - nbt
-  - NearContextAlgebra
-  - neat
-  - needle
-  - neet
-  - nehe-tuts
-  - neither
-  - neko-lib
-  - Neks
-  - nemesis-titan
-  - neptune-backend
-  - nerf
-  - nero
-  - nero-wai
-  - nero-warp
-  - nest
-  - nested-routes
-  - nested-sequence
-  - NestedFunctor
-  - nestedmap
-  - net-spider
-  - net-spider-cli
-  - net-spider-pangraph
-  - net-spider-rpl
-  - net-spider-rpl-cli
-  - netclock
-  - netcore
-  - netease-fm
-  - netlines
-  - netrium
-  - NetSNMP
-  - netspec
-  - netstring-enumerator
-  - nettle-frp
-  - nettle-netkit
-  - nettle-openflow
-  - netwire-input-javascript
-  - netwire-vinylglfw-examples
-  - network-address
-  - network-anonymous-i2p
-  - network-anonymous-tor
-  - network-api-support
-  - network-arbitrary
-  - network-attoparsec
-  - network-bitcoin
-  - network-builder
-  - network-bytestring
-  - network-carbon
-  - network-connection
-  - network-dns
-  - network-enumerator
-  - network-hans
-  - network-house
-  - network-interfacerequest
-  - network-messagepack-rpc-websocket
-  - network-minihttp
-  - network-msgpack-rpc
-  - network-netpacket
-  - network-packet-linux
-  - network-protocol-xmpp
-  - network-rpca
-  - network-server
-  - network-service
-  - network-simple-sockaddr
-  - network-simple-wss
-  - network-socket-options
-  - network-stream
-  - network-topic-models
-  - network-transport-amqp
-  - network-transport-inmemory
-  - network-uri-json
-  - network-voicetext
-  - network-wai-router
-  - network-websocket
-  - networked-game
-  - neural
-  - neural-network-blashs
-  - neural-network-hmatrix
-  - newhope
-  - newports
-  - newsletter
-  - newsletter-mailgun
-  - newt
-  - newtype-deriving
-  - newtype-th
-  - newtype-zoo
-  - next-ref
-  - nextstep-plist
-  - nfc
-  - NGrams
-  - ngrams-loader
-  - ngx-export-tools-extra
-  - niagra
-  - nibblestring
-  - nice-html
-  - nicovideo-translator
-  - nikepub
-  - Ninjas
-  - nirum
-  - nitro
-  - nix-delegate
-  - nix-deploy
-  - nix-eval
-  - nix-freeze-tree
-  - nix-thunk
-  - nix-tools
-  - nixfromnpm
-  - nixpkgs-update
-  - nkjp
-  - nlp-scores
-  - nlp-scores-scripts
-  - nm
-  - NMap
-  - nntp
-  - no-role-annots
-  - noether
-  - nofib-analyse
-  - nofib-analyze
-  - noise
-  - noli
-  - nom
-  - Nomyx
-  - Nomyx-Core
-  - Nomyx-Language
-  - Nomyx-Rules
-  - Nomyx-Web
-  - non-empty-zipper
-  - NonEmpty
-  - nonempty-lift
-  - NonEmptyList
-  - normalization-insensitive
-  - NoSlow
-  - not-gloss-examples
-  - notcpp
-  - notifications-tray-icon
-  - notmuch-haskell
-  - notmuch-web
-  - NoTrace
-  - now-haskell
-  - np-extras
-  - np-linear
-  - nptools
-  - ntp-control
-  - ntrip-client
-  - nuha
-  - null-canvas
-  - nullary
-  - nullpipe
-  - numbered-semigroups
-  - NumberSieves
-  - NumberTheory
-  - numerals
-  - numerals-base
-  - numeric-ode
-  - numeric-qq
-  - numeric-ranges
-  - numerical
-  - numhask-array
-  - numhask-free
-  - numhask-hedgehog
-  - numhask-histogram
-  - numhask-prelude
-  - numhask-range
-  - numhask-space
-  - numhask-test
-  - Nussinov78
-  - Nutri
-  - NXT
-  - NXTDSL
-  - nylas
-  - nymphaea
-  - nyx-game
-  - oanda-rest-api
-  - oasis-xrd
-  - oauth2-jwt-bearer
-  - oauthenticated
-  - obd
-  - obdd
-  - oberon0
-  - obj
-  - Object
-  - objectid
-  - ObjectIO
-  - objective
-  - oblivious-transfer
-  - ocaml-export
-  - ochan
-  - octane
-  - octohat
-  - octopus
-  - Octree
-  - oculus
-  - odbc
-  - odd-jobs
-  - OddWord
-  - oden-go-packages
-  - oeis2
-  - off-simple
-  - OGL
-  - ogmarkup
-  - ohloh-hs
-  - oi
-  - oidc-client
-  - ois-input-manager
-  - olwrapper
-  - om-actor
-  - om-elm
-  - om-fail
-  - om-http-logging
-  - omaketex
-  - ombra
-  - Omega
-  - omega
-  - omnifmt
-  - on-a-horse
-  - on-demand-ssh-tunnel
-  - onama
-  - ONC-RPC
-  - oneormore
-  - online
-  - online-csv
-  - onpartitions
-  - OnRmt
-  - onu-course
-  - op
-  - opaleye-classy
-  - opaleye-sqlite
-  - opaleye-trans
-  - open-adt
-  - open-adt-tutorial
-  - open-haddock
-  - open-pandoc
-  - open-signals
-  - open-typerep
-  - open-union
-  - OpenAFP
-  - OpenAFP-Utils
-  - openai-hs
-  - openai-servant
-  - openapi-petstore
-  - openapi-typed
-  - openapi3
-  - openapi3-code-generator
-  - opench-meteo
-  - OpenCL
-  - OpenCLRaw
-  - OpenCLWrappers
-  - opencv-raw
-  - opendatatable
-  - OpenGLCheck
-  - opengles
-  - openid-connect
-  - OpenSCAD
-  - opensoundcontrol-ht
-  - openssh-github-keys
-  - openssh-protocol
-  - opentelemetry-http-client
-  - opentheory-char
-  - opentok
-  - opentracing-jaeger
-  - opentracing-zipkin-v1
-  - opentype
-  - OpenVG
-  - OpenVGRaw
-  - openweathermap
-  - Operads
-  - operate-do
-  - operational-extra
-  - oplang
-  - opn
-  - optima
-  - optima-for-hasql
-  - optimal-blocks
-  - optimization
-  - optimusprime
-  - optional
-  - options-time
-  - optparse-applicative-simple
-  - optparse-enum
-  - optparse-helper
-  - orc
-  - orchestrate
-  - OrchestrateDB
-  - orchid
-  - orchid-demo
-  - order-maintenance
-  - order-statistics
-  - ordinal
-  - Ordinary
-  - ordrea
-  - oref
-  - org-mode
-  - org-mode-lucid
-  - organize-imports
-  - orgmode
-  - orgstat
-  - origami
-  - orizentic
-  - OrPatterns
-  - osc
-  - oscpacking
-  - oset
-  - Oslo-Vectize
-  - OSM
-  - osm-conduit
-  - osm-download
-  - oso2pdf
-  - osx-ar
-  - ot
-  - OTP
-  - otp-authenticator
-  - ottparse-pretty
-  - overloaded
-  - overloaded-records
-  - overture
-  - pack
-  - package-description-remote
-  - package-o-tron
-  - package-vt
-  - packed
-  - packed-dawg
-  - packed-multikey-map
-  - packedstring
-  - packer-messagepack
-  - packman
-  - packunused
-  - pacman-memcache
-  - padKONTROL
-  - pads-haskell
-  - pagarme
-  - PageIO
-  - pagure-hook-receiver
-  - Paillier
-  - pairing
-  - palette
-  - pam
-  - pan-os-syslog
-  - panda
-  - pandoc-citeproc
-  - pandoc-csv2table
-  - pandoc-filter-graphviz
-  - pandoc-filter-indent
-  - pandoc-include
-  - pandoc-japanese-filters
-  - pandoc-lens
-  - pandoc-markdown-ghci-filter
-  - pandoc-placetable
-  - pandoc-plantuml-diagrams
-  - pandoc-pyplot
-  - pandoc-sidenote
-  - pandoc-unlit
-  - pandoc-utils
-  - PandocAgda
-  - pang-a-lambda
-  - pangraph
-  - panpipe
-  - pansite
-  - pantry-tmp
-  - papa
-  - papa-base
-  - papa-base-export
-  - papa-base-implement
-  - papa-export
-  - papa-implement
-  - papa-include
-  - papa-prelude
-  - papa-prelude-core
-  - papa-prelude-lens
-  - papa-prelude-semigroupoids
-  - papa-prelude-semigroups
-  - papa-semigroupoids
-  - papa-semigroupoids-implement
-  - paphragen
-  - papillon
-  - pappy
-  - paprika
-  - par-dual
-  - paragon
-  - Paraiso
-  - Parallel-Arrows-Eden
-  - parallel-tasks
-  - parameterized-utils
-  - paranoia
-  - parco
-  - parco-attoparsec
-  - parco-parsec
-  - parcom-lib
-  - parconc-examples
-  - pareto
-  - parochial
-  - parquet-hs
-  - Parry
-  - parse-help
-  - parseargs
-  - parsec-free
-  - parsec-parsers
-  - parsec-pratt
-  - parsec2
-  - parsec3
-  - parseerror-eq
-  - parsely
-  - parser-combinators-tests
-  - parser-helper
-  - parser241
-  - parsergen
-  - parsers-megaparsec
-  - parsestar
-  - parsimony
-  - parsnip
-  - partage
-  - partial-lens
-  - partial-records
-  - partly
-  - passage
-  - passman
-  - PasswordGenerator
-  - passwords
-  - pasta
-  - pastis
-  - pasty
-  - patat
-  - patches-vector
-  - Pathfinder
-  - pathfindingcore
-  - PathTree
-  - patronscraper
-  - patterns
-  - paypal-adaptive-hoops
-  - paypal-api
-  - paypal-rest-client
-  - pb
-  - pb-next
-  - pbc4hs
-  - PBKDF2
-  - pcap-enumerator
-  - pcapng
-  - pcd-loader
-  - pcf
-  - pcf-font
-  - pcf-font-embed
-  - PCLT
-  - PCLT-DB
-  - pcre-light-extra
-  - pdf-slave
-  - pdf-slave-template
-  - pdf-toolbox-content
-  - pdf-toolbox-core
-  - pdf-toolbox-document
-  - pdf-toolbox-viewer
-  - pdfname
-  - pdfsplit
-  - pdftotext
-  - pdynload
-  - peakachu
-  - PeanoWitnesses
-  - pec
-  - pecoff
-  - pedersen-commitment
-  - pedestrian-dag
-  - peg
-  - peggy
-  - pell
-  - pencil
-  - penntreebank-megaparsec
-  - penny
-  - penny-bin
-  - penny-lib
-  - penrose
-  - peparser
-  - percent-encoder
-  - perceptron
-  - perceptual-hash
-  - peregrin
-  - perf
-  - perf-analysis
-  - PerfectHash
-  - perfecthash
-  - perhaps
-  - periodic
-  - periodic-server
-  - perm
-  - permutation
-  - permutations
-  - permute
-  - PermuteEffects
-  - persist2er
-  - Persistence
-  - persistent-audit
-  - persistent-cereal
-  - persistent-database-url
-  - persistent-equivalence
-  - persistent-hssqlppp
-  - persistent-map
-  - persistent-migration
-  - persistent-mongoDB
-  - persistent-mysql-haskell
-  - persistent-odbc
-  - persistent-protobuf
-  - persistent-ratelimit
-  - persistent-redis
-  - persistent-relational-record
-  - persistent-template-classy
-  - persistent-test
-  - persistent-vector
-  - persistent-zookeeper
-  - persona
-  - persona-idp
-  - pesca
-  - peyotls
-  - peyotls-codec
-  - pez
-  - pg-extras
-  - pg-harness
-  - pg-harness-server
-  - pg-recorder
-  - pg-store
-  - pg-transact
-  - pgdl
-  - pgf2
-  - pgsql-simple
-  - pgstream
-  - phasechange
-  - phaser
-  - phoityne
-  - phone-numbers
-  - phone-push
-  - phonetic-languages-examples
-  - phonetic-languages-properties
-  - phonetic-languages-simplified-lists-examples
-  - phonetic-languages-simplified-properties-lists
-  - phonetic-languages-simplified-properties-lists-double
-  - phooey
-  - photoname
-  - phraskell
-  - Phsu
-  - phybin
-  - pi-calculus
-  - pi-forall
-  - pi-hoole
-  - pia-forward
-  - pianola
-  - picedit
-  - pickle
-  - picologic
-  - picoparsec
-  - pictikz
-  - pier
-  - pier-core
-  - piet
-  - pig
-  - pinboard
-  - pinch
-  - pinch-gen
-  - pinchot
-  - ping
-  - pinpon
-  - Pipe
-  - pipe-enumerator
-  - pipes-async
-  - pipes-attoparsec-streaming
-  - pipes-bgzf
-  - pipes-brotli
-  - pipes-cacophony
-  - pipes-cereal
-  - pipes-cereal-plus
-  - pipes-conduit
-  - pipes-core
-  - pipes-courier
-  - pipes-errors
-  - pipes-extra
-  - pipes-files
-  - pipes-illumina
-  - pipes-interleave
-  - pipes-io
-  - pipes-key-value-csv
-  - pipes-mongodb
-  - pipes-p2p
-  - pipes-p2p-examples
-  - pipes-protolude
-  - pipes-rt
-  - pipes-s3
-  - pipes-shell
-  - pipes-sqlite-simple
-  - pipes-transduce
-  - pipes-vector
-  - pipes-zeromq4
-  - pisigma
-  - Piso
-  - pit
-  - pitchtrack
-  - pivotal-tracker
-  - pixel-printer
-  - pixelated-avatar-generator
-  - pixiv
-  - pkcs10
-  - pkcs7
-  - pkggraph
-  - pkgtreediff
-  - plailude
-  - plan-applicative
-  - plan-b
-  - planar-graph
-  - planb-token-introspection
-  - planet-mitchell
-  - planet-mitchell-test
-  - plankton
-  - plat
-  - platinum-parsing
-  - PlayingCards
-  - plist
-  - plist-buddy
-  - plocketed
-  - plot-gtk
-  - plot-gtk-ui
-  - plot-gtk3
-  - Plot-ho-matic
-  - plot-lab
-  - plots
-  - PlslTools
-  - plugins
-  - plugins-auto
-  - plugins-multistage
-  - plumbers
-  - plur
-  - plural
-  - plzwrk
-  - png-file
-  - pngload
-  - pngload-fixed
-  - pocket
-  - pocket-dns
-  - point-octree
-  - pointedalternative
-  - pointfree-fancy
-  - pointful
-  - pointless-haskell
-  - pointless-lenses
-  - pointless-rewrite
-  - poke
-  - pokemon-go-protobuf-types
-  - poker-eval
-  - pokitdok
-  - polar-configfile
-  - polar-shader
-  - polh-lexicon
-  - Pollutocracy
-  - poly-cont
-  - poly-control
-  - polydata
-  - polydata-core
-  - polynomial
-  - polysemy-chronos
-  - polysemy-conc
-  - polysemy-http
-  - polysemy-log
-  - polysemy-log-co
-  - polysemy-log-di
-  - polysemy-methodology
-  - polysemy-methodology-composite
-  - polysemy-optics
-  - polysemy-path
-  - polysemy-RandomFu
-  - polysemy-resume
-  - polysemy-test
-  - polysemy-time
-  - polyseq
-  - polytypeable
-  - polytypeable-utils
-  - pomaps
-  - pomodoro
-  - pomohoro
-  - ponder
-  - pong-server
-  - pontarius-xmpp
-  - pool
-  - pool-conduit
-  - pop3-client
-  - popenhs
-  - popkey
-  - poppler
-  - porcupine-core
-  - porcupine-http
-  - porcupine-s3
-  - portager
-  - porte
-  - PortFusion
-  - ports
-  - poseidon
-  - poseidon-postgis
-  - positron
-  - posix-acl
-  - posix-api
-  - posix-realtime
-  - posix-waitpid
-  - postcodes
-  - postgres-embedded
-  - postgres-tmp
-  - postgres-websockets
-  - postgresql-lo-stream
-  - postgresql-named
-  - postgresql-query
-  - postgresql-simple-bind
-  - postgresql-simple-migration
-  - postgresql-simple-named
-  - postgresql-simple-queue
-  - postgresql-simple-sop
-  - postgresql-simple-typed
-  - postgresql-simple-url
-  - postgresql-syntax
-  - postgresql-tx-query
-  - postgresql-tx-squeal
-  - postgresql-tx-squeal-compat-simple
-  - postgresql-typed-lifted
-  - postgrest-ws
-  - postie
-  - postmark
-  - postmark-streams
-  - postmaster
-  - potato-tool
-  - potoki
-  - potoki-cereal
-  - potoki-conduit
-  - potoki-core
-  - potoki-hasql
-  - potoki-zlib
-  - potrace-diagrams
-  - powermate
-  - powerpc
-  - powerqueue-levelmem
-  - powerqueue-sqs
-  - pprecord
-  - PPrinter
-  - pqc
-  - pqueue-mtl
-  - practice-room
-  - praglude
-  - preamble
-  - precursor
-  - pred-set
-  - pred-trie
-  - predicate-class
-  - predicate-transformers
-  - predicate-typed
-  - prednote
-  - prednote-test
-  - prefork
-  - pregame
-  - preliminaries
-  - Prelude
-  - prelude-generalize
-  - prelude-plus
-  - preprocess-haskell
-  - preprocessor
-  - preql
-  - presburger
-  - present
-  - press
-  - presto-hdbc
-  - pretty-ghci
-  - pretty-ncols
-  - pretty-types
-  - prettyprinter-lucid
-  - prettyprinter-vty
-  - preview
-  - prim-array
-  - prim-instances
-  - prim-ref
-  - primal
-  - primal-memory
-  - primes-type
-  - primitive-atomic
-  - primitive-checked
-  - primitive-containers
-  - primitive-convenience
-  - primitive-foreign
-  - primitive-indexed
-  - primitive-maybe
-  - primitive-simd
-  - primitive-sort
-  - primitive-stablename
-  - PrimitiveArray-Pretty
-  - primula-board
-  - primula-bot
-  - pringletons
-  - print-debugger
-  - printcess
-  - Printf-TH
-  - prints
-  - priority-queue
-  - PriorityChansConverger
-  - ProbabilityMonads
-  - probable
-  - proc
-  - process-conduit
-  - process-iterio
-  - process-leksah
-  - process-listlike
-  - process-progress
-  - process-qq
-  - process-streaming
-  - processing
-  - processmemory
-  - procrastinating-variable
-  - procstat
-  - producer
-  - prof-flamegraph
-  - prof2dot
-  - prof2pretty
-  - profunctor-monad
-  - progress
-  - progress-meter
-  - progress-reporting
-  - progressbar
-  - progression
-  - progressive
-  - proj4-hs-bindings
-  - project-m36
-  - projectile
-  - prolens
-  - prolog-graph
-  - prologue
-  - prolude
-  - prometheus-effect
-  - promise
-  - pronounce
-  - proof-combinators
-  - propane
-  - Proper
-  - properties
-  - property-list
-  - proplang
-  - prosidy
-  - prosidyc
-  - prosper
-  - proteaaudio
-  - proteaaudio-sdl
-  - proteome
-  - proto-lens-arbitrary
-  - proto-lens-combinators
-  - proto-lens-descriptors
-  - proto-lens-optparse
-  - proto3-suite
-  - proto3-wire
-  - protobuf-native
-  - protocol
-  - protocol-buffers-descriptor-fork
-  - protocol-buffers-fork
-  - protolude-lifted
-  - proton
-  - proton-haskell
-  - prototype
-  - prove-everywhere-server
-  - provenience
-  - proxy-kindness
-  - proxy-mapping
-  - psc-ide
-  - pseudo-boolean
-  - pseudo-trie
-  - PTQ
-  - ptr-poker
-  - publicsuffixlistcreate
-  - publish
-  - pubnub
-  - pubsub
-  - puffytools
-  - pugixml
-  - Pugs
-  - pugs-compat
-  - pugs-DrIFT
-  - pugs-hsregex
-  - PUH-Project
-  - punkt
-  - Pup-Events
-  - Pup-Events-Demo
-  - Pup-Events-Server
-  - puppetresources
-  - pure-cdb
-  - pure-io
-  - pure-priority-queue
-  - pure-priority-queue-tests
-  - pure-zlib
-  - purescheme-wai-routing-core
-  - purescript
-  - purescript-ast
-  - purescript-cst
-  - purescript-iso
-  - purescript-tsd-gen
-  - push-notifications
-  - push-notify
-  - push-notify-apn
-  - push-notify-ccs
-  - push-notify-general
-  - pusher-haskell
-  - pusher-ws
-  - pushme
-  - putlenses
-  - puzzle-draw
-  - puzzle-draw-cmdline
-  - pvd
-  - pyffi
-  - pyfi
-  - python-pickle
-  - q4c12-twofinger
-  - qc-oi-testgenerator
-  - qd
-  - qd-vec
-  - qed
-  - qhs
-  - qhull-simple
-  - qif
-  - QIO
-  - QLearn
-  - qlinear
-  - qnap-decrypt
-  - qr-imager
-  - qr-repa
-  - qsem
-  - QuadEdge
-  - QuadTree
-  - quantfin
-  - quantification
-  - quantum-arrow
-  - quantum-random
-  - quarantimer
-  - qudb
-  - Quelea
-  - quenya-verb
-  - queryparser
-  - queryparser-demo
-  - queryparser-hive
-  - queryparser-presto
-  - queryparser-vertica
-  - questioner
-  - queuelike
-  - quick-schema
-  - QuickAnnotate
-  - quickbench
-  - quickbooks
-  - quickcheck-arbitrary-template
-  - quickcheck-poly
-  - quickcheck-property-comb
-  - quickcheck-property-monad
-  - quickcheck-regex
-  - quickcheck-relaxng
-  - quickcheck-rematch
-  - quickcheck-report
-  - quickcheck-state-machine
-  - quickcheck-state-machine-distributed
-  - quickcheck-string-random
-  - quickcheck-webdriver
-  - QuickCheckVariant
-  - quickjs-hs
-  - QuickPlot
-  - quickpull
-  - quickset
-  - Quickson
-  - quickspec
-  - quicktest
-  - quickwebapp
-  - quipper
-  - quipper-algorithms
-  - quipper-all
-  - quipper-cabal
-  - quipper-core
-  - quipper-demos
-  - quipper-language
-  - quipper-libraries
-  - quipper-rendering
-  - quipper-tools
-  - quipper-utils
-  - quiver
-  - quiver-binary
-  - quiver-bytestring
-  - quiver-cell
-  - quiver-csv
-  - quiver-enumerator
-  - quiver-groups
-  - quiver-http
-  - quiver-instances
-  - quiver-interleave
-  - quiver-sort
-  - quokka
-  - quoridor-hs
-  - qux
-  - R-pandoc
-  - raaz
-  - RabbitMQ
-  - rad
-  - radian
-  - radium
-  - radium-formula-parser
-  - radix
-  - rados-haskell
-  - raft
-  - rail-compiler-editor
-  - rails-session
-  - rainbow-tests
-  - raketka
-  - rakhana
-  - rakuten
-  - ralist
-  - rallod
-  - raml
-  - rand-vars
-  - randfile
-  - rando
-  - random-access-list
-  - random-derive
-  - random-eff
-  - random-effin
-  - random-hypergeometric
-  - random-stream
-  - RandomDotOrg
-  - Range
-  - range-set-list
-  - range-space
-  - rangemin
-  - Ranka
-  - rapid
-  - rapid-term
-  - rasa
-  - rasa-example-config
-  - rasa-ext-bufs
-  - rasa-ext-cmd
-  - rasa-ext-cursors
-  - rasa-ext-files
-  - rasa-ext-logger
-  - rasa-ext-slate
-  - rasa-ext-status-bar
-  - rasa-ext-style
-  - rasa-ext-views
-  - rasa-ext-vim
-  - rascal
-  - Rasenschach
-  - rating-chgk-info
-  - rational-list
-  - rattle
-  - rattletrap
-  - raven-haskell-scotty
-  - raw-feldspar
-  - rawr
-  - raz
-  - razom-text-util
-  - rbr
-  - rbst
-  - rc
-  - rclient
-  - rdioh
-  - react-flux
-  - react-flux-servant
-  - react-haskell
-  - react-tutorial-haskell-server
-  - reaction-logic
-  - reactive-bacon
-  - reactive-balsa
-  - reactive-banana
-  - reactive-banana-automation
-  - reactive-banana-bunch
-  - reactive-banana-gi-gtk
-  - reactive-banana-sdl
-  - reactive-banana-sdl2
-  - reactive-banana-threepenny
-  - reactive-banana-wx
-  - reactive-fieldtrip
-  - reactive-glut
-  - reactive-jack
-  - reactive-midyim
-  - reactive-thread
-  - reactor
-  - read-bounded
-  - read-ctags
-  - read-io
-  - readability
-  - readline
-  - readline-statevar
-  - readme-lhs
-  - readpyc
-  - readshp
-  - really-simple-xml-parser
-  - reanimate
-  - reanimate-svg
-  - reasonable-lens
-  - record
-  - record-aeson
-  - record-encode
-  - record-gl
-  - record-preprocessor
-  - record-syntax
-  - records
-  - records-th
-  - recursion-schemes
-  - recursion-schemes-ext
-  - recursors
-  - red-black-record
-  - reddit
-  - redis-hs
-  - redis-simple
-  - redland
-  - Redmine
-  - reduce-equations
-  - reedsolomon
-  - reenact
-  - Ref
-  - ref
-  - ref-mtl
-  - refcount
-  - Referees
-  - references
-  - refh
-  - refined-http-api-data
-  - reflection-extras
-  - reflex-animation
-  - reflex-backend-socket
-  - reflex-backend-wai
-  - reflex-basic-host
-  - reflex-dom-retractable
-  - reflex-dom-svg
-  - reflex-dynamic-containers
-  - reflex-fsnotify
-  - reflex-gadt-api
-  - reflex-ghci
-  - reflex-gi-gtk
-  - reflex-gloss
-  - reflex-gloss-scene
-  - reflex-libtelnet
-  - reflex-localize
-  - reflex-localize-dom
-  - reflex-orphans
-  - reflex-process
-  - reflex-sdl2
-  - reflex-transformers
-  - reflex-vty
-  - reformat
-  - refractor
-  - refresht
-  - refurb
-  - reg-alloc
-  - reg-alloc-graph-color
-  - regex-deriv
-  - regex-dfa
-  - regex-generator
-  - regex-parsec
-  - regex-pcre-text
-  - regex-pderiv
-  - regex-posix-unittest
-  - regex-tdfa-pipes
-  - regex-tdfa-quasiquoter
-  - regex-tdfa-rc
-  - regex-tdfa-text
-  - regex-tdfa-unittest
-  - regex-tdfa-utf8
-  - regex-tre
-  - regex-type
-  - regex-wrapper
-  - regex-xmlschema
-  - regexp-tries
-  - regexpr-symbolic
-  - regexqq
-  - regional-pointers
-  - regions
-  - regions-monadsfd
-  - regions-monadstf
-  - regions-mtl
-  - register-machine-typelevel
-  - registry
-  - registry-hedgehog
-  - regress
-  - regression-simple
-  - regular
-  - regular-extras
-  - regular-web
-  - regular-xmlpickler
-  - reheat
-  - rehoo
-  - rei
-  - reified-records
-  - reify
-  - relacion
-  - relapse
-  - relational-postgresql8
-  - relational-query-postgresql-pure
-  - relative-date
-  - relevant-time
-  - reload
-  - remark
-  - remarks
-  - remote
-  - remote-debugger
-  - remote-json
-  - remote-json-client
-  - remote-json-server
-  - remote-monad
-  - remotion
-  - render-utf8
-  - repa-algorithms
-  - repa-array
-  - repa-bytestring
-  - repa-convert
-  - repa-devil
-  - repa-eval
-  - repa-examples
-  - repa-flow
-  - repa-linear-algebra
-  - repa-plugin
-  - repa-scalar
-  - repa-series
-  - repa-stream
-  - repa-v4l2
-  - repl
-  - RepLib
-  - replica
-  - replicant
-  - ReplicateEffects
-  - repo-based-blog
-  - repr
-  - representable-functors
-  - representable-tries
-  - reprinter
-  - reproject
-  - req-conduit
-  - req-oauth2
-  - req-url-extra
-  - reqcatcher
-  - request-monad
-  - rere
-  - rescue
-  - reserve
-  - reservoir
-  - resin
-  - resistor-cube
-  - resolve
-  - resolve-trivial-conflicts
-  - resource-effect
-  - resource-embed
-  - resource-pool-catchio
-  - resource-simple
-  - respond
-  - rest-client
-  - rest-core
-  - rest-example
-  - rest-gen
-  - rest-happstack
-  - rest-snap
-  - rest-stringmap
-  - rest-types
-  - rest-wai
-  - restartable
-  - restful-snap
-  - restricted-workers
-  - restyle
-  - rethinkdb
-  - rethinkdb-client-driver
-  - rethinkdb-model
-  - rethinkdb-wereHamster
-  - retryer
-  - reverse-geocoding
-  - reversi
-  - ReviewBoard
-  - rewrite
-  - rewrite-inspector
-  - rewriting
-  - rezoom
-  - rfc
-  - rfc-env
-  - rfc-http-client
-  - rfc-prelude
-  - rfc-psql
-  - rfc-redis
-  - rfc-servant
-  - rg
-  - rhbzquery
-  - rhythm-game-tutorial
-  - rib
-  - ribbit
-  - RichConditional
-  - ridley
-  - ridley-extras
-  - riemann
-  - riff
-  - ring-buffer
-  - ring-buffers
-  - rio-process-pool
-  - riot
-  - risc-v
-  - risc386
-  - riscv-isa
-  - Ritt-Wu
-  - rivers
-  - rivet
-  - rivet-migration
-  - rivet-simple-deploy
-  - RJson
-  - rl-satton
-  - Rlang-QQ
-  - rlglue
-  - RLP
-  - rlwe-challenges
-  - rmonad
-  - RMP
-  - RNAdesign
-  - RNAdraw
-  - RNAFold
-  - RNAFoldProgs
-  - RNAlien
-  - RNAwolf
-  - rncryptor
-  - rob
-  - robin
-  - robots-txt
-  - roc-cluster
-  - roc-cluster-demo
-  - rock
-  - rocksdb-haskell
-  - rocksdb-haskell-jprupp
-  - rocksdb-query
-  - roku-api
-  - rollbar
-  - rollbar-cli
-  - rollbar-client
-  - rollbar-hs
-  - rollbar-wai
-  - rollbar-yesod
-  - roller
-  - RollingDirectory
-  - ron-rdt
-  - ron-schema
-  - ron-storage
-  - rope
-  - rose-trees
-  - rose-trie
-  - rosebud
-  - roshask
-  - rosmsg
-  - rosmsg-bin
-  - rosso
-  - rotating-log
-  - rounded
-  - rounded-hw
-  - rounding
-  - roundtrip-aeson
-  - roundtrip-xml
-  - route-planning
-  - rowrecord
-  - rpc
-  - rpc-framework
-  - rpf
-  - rpm
-  - rpmbuild-order
-  - rrule
-  - rsagl
-  - rsagl-frp
-  - rsagl-math
-  - rspp
-  - rss
-  - rss-conduit
-  - rss2irc
-  - rstream
-  - rtcm
-  - RtMidi
-  - rtnetlink
-  - rtorrent-rpc
-  - rts-loader
-  - ruby-marshal
-  - ruby-qq
-  - ruff
-  - ruin
-  - ruler
-  - ruler-core
-  - run-st
-  - rungekutta
-  - runhs
-  - runmany
-  - runtime-arbitrary
-  - rv
-  - rws
-  - RxHaskell
-  - s-expression
-  - S3
-  - SableCC2Hs
-  - safe-buffer-monad
-  - safe-coerce
-  - safe-freeze
-  - safe-globals
-  - safe-lazy-io
-  - safe-length
-  - safe-numeric
-  - safe-plugins
-  - safe-printf
-  - safecopy-migrate
-  - safecopy-store
-  - safeint
-  - safepath
-  - safer-file-handles
-  - safer-file-handles-bytestring
-  - safer-file-handles-text
-  - saferoute
-  - sai-shape-syb
-  - sajson
-  - sak
-  - salak-toml
-  - Salsa
-  - saltine-quickcheck
-  - salvia
-  - salvia-demo
-  - salvia-extras
-  - salvia-protocol
-  - salvia-sessions
-  - salvia-websocket
-  - samtools
-  - samtools-conduit
-  - samtools-enumerator
-  - samtools-iteratee
-  - sandlib
-  - sandman
-  - sarasvati
-  - sarsi
-  - sasl
-  - sat
-  - sat-micro-hs
-  - satchmo
-  - satchmo-backends
-  - satchmo-examples
-  - satchmo-funsat
-  - satchmo-minisat
-  - satchmo-toysat
-  - Saturnin
-  - savage
-  - sax
-  - SBench
-  - sbvPlugin
-  - sc2-lowlevel
-  - sc2-proto
-  - sc2-support
-  - sc3-rdu
-  - scalable-server
-  - scaleimage
-  - SCalendar
-  - scalendar
-  - scalp-webhooks
-  - scalpel-search
-  - scan-metadata
-  - scan-vector-machine
-  - scc
-  - scenegraph
-  - scgi
-  - schedevr
-  - schedule-planner
-  - schedyield
-  - schema
-  - schemas
-  - schematic
-  - scholdoc
-  - scholdoc-citeproc
-  - scholdoc-texmath
-  - scholdoc-types
-  - sci-ratio
-  - SciBaseTypes
-  - scidb-hquery
-  - scientific-notation
-  - SciFlow
-  - SciFlow-drmaa
-  - scion
-  - scion-browser
-  - scons2dot
-  - scope
-  - scope-cairo
-  - scottish
-  - scotty-binding-play
-  - scotty-blaze
-  - scotty-fay
-  - scotty-form
-  - scotty-format
-  - scotty-hastache
-  - scotty-params-parser
-  - scotty-resource
-  - scotty-rest
-  - scotty-session
-  - scotty-tls
-  - scotty-view
-  - scp-streams
-  - scrabble-bot
-  - scrapbook
-  - scrapbook-core
-  - scrape-changes
-  - ScratchFs
-  - script-monad
-  - SCRIPTWriter
-  - scrobble
-  - Scurry
-  - scythe
-  - scyther-proof
-  - sde-solver
-  - sdl2-cairo-image
-  - sdl2-compositor
-  - sdl2-fps
-  - sdr
-  - seakale
-  - seakale-postgresql
-  - seakale-tests
-  - sec
-  - secdh
-  - seclib
-  - second-transfer
-  - secp256k1
-  - secp256k1-haskell
-  - secp256k1-legacy
-  - secret-santa
-  - secrm
-  - secure-sockets
-  - SecureHash-SHA3
-  - secureUDP
-  - sednaDBXML
-  - seitz-symbol
-  - selectors
-  - SelectSequencesFromMSA
-  - selenium
-  - selenium-server
-  - self-extract
-  - selinux
-  - semantic-source
-  - Semantique
-  - semdoc
-  - semi-iso
-  - semialign-extras
-  - semibounded-lattices
-  - Semigroup
-  - semigroupoids-syntax
-  - semigroups-actions
-  - semiring
-  - semiring-num
-  - sendgrid-haskell
-  - sendgrid-v3
-  - sensei
-  - sensenet
-  - sensu-run
-  - sentence-jp
-  - sentry
-  - seonbi
-  - seqaid
-  - SeqAlign
-  - seqloc
-  - seqloc-datafiles
-  - sequent-core
-  - sequor
-  - serialize-instances
-  - serialport
-  - serokell-util
-  - serpentine
-  - serv
-  - serv-wai
-  - servant-aeson-specs
-  - servant-auth-cookie
-  - servant-auth-docs
-  - servant-auth-hmac
-  - servant-auth-token
-  - servant-auth-token-acid
-  - servant-auth-token-api
-  - servant-auth-token-leveldb
-  - servant-auth-token-persistent
-  - servant-auth-token-rocksdb
-  - servant-auth-wordpress
-  - servant-avro
-  - servant-cassava
-  - servant-checked-exceptions
-  - servant-checked-exceptions-core
-  - servant-cli
-  - servant-client-js
-  - servant-client-namedargs
-  - servant-csharp
-  - servant-db
-  - servant-db-postgresql
-  - servant-dhall
-  - servant-docs-simple
-  - servant-ede
-  - servant-ekg
-  - servant-elm
-  - servant-event-stream
-  - servant-examples
-  - servant-fiat-content
-  - servant-generate
-  - servant-generic
-  - servant-github
-  - servant-haxl-client
-  - servant-hmac-auth
-  - servant-http-streams
-  - servant-http2-client
-  - servant-iCalendar
-  - servant-jquery
-  - servant-js
-  - servant-JuicyPixels
-  - servant-kotlin
-  - servant-matrix-param
-  - servant-mock
-  - servant-multipart
-  - servant-namedargs
-  - servant-nix
-  - servant-openapi3
-  - servant-pagination
-  - servant-pandoc
-  - servant-polysemy
-  - servant-pool
-  - servant-postgresql
-  - servant-proto-lens
-  - servant-purescript
-  - servant-pushbullet-client
-  - servant-py
-  - servant-quickcheck
-  - servant-rawm-client
-  - servant-rawm-docs
-  - servant-reason
-  - servant-reflex
-  - servant-router
-  - servant-scotty
-  - servant-seo
-  - servant-serf
-  - servant-server-namedargs
-  - servant-smsc-ru
-  - servant-snap
-  - servant-static-th
-  - servant-streaming
-  - servant-streaming-client
-  - servant-streaming-docs
-  - servant-streaming-server
-  - servant-swagger-tags
-  - servant-to-elm
-  - servant-waargonaut
-  - servant-yaml
-  - servant-zeppelin
-  - servant-zeppelin-client
-  - servant-zeppelin-server
-  - servant-zeppelin-swagger
-  - server-generic
-  - serversession
-  - serversession-backend-acid-state
-  - serversession-backend-persistent
-  - serversession-backend-redis
-  - serversession-frontend-snap
-  - serversession-frontend-wai
-  - serversession-frontend-yesod
-  - services
-  - ses-html-snaplet
-  - SessionLogger
-  - sessions
-  - sessiontypes
-  - sessiontypes-distributed
-  - Set
-  - set-of
-  - set-with
-  - setdown
-  - setgame
-  - setoid
-  - setters
-  - sexp
-  - sexp-grammar
-  - sexpr-parser
-  - sext
-  - SFML
-  - SFML-control
-  - sfmt
-  - sfnt2woff
-  - SFont
-  - SG
-  - sgd
-  - SGdemo
-  - sgf
-  - SGplus
-  - sgrep
-  - sh2md
-  - sha-streams
-  - sha1
-  - shade
-  - shadower
-  - shake-bindist
-  - shake-cabal-build
-  - shake-dhall
-  - shake-extras
-  - shake-minify
-  - shake-minify-css
-  - shake-pack
-  - shake-path
-  - shake-persist
-  - shakebook
-  - shaker
-  - shakespeare-babel
-  - shakespeare-sass
-  - shapefile
-  - shapely-data
-  - shared-buffer
-  - shared-fields
-  - she
-  - shelduck
-  - shell-pipe
-  - Shellac
-  - Shellac-compatline
-  - Shellac-editline
-  - Shellac-haskeline
-  - Shellac-readline
-  - shellish
-  - shellmate
-  - shellmate-extras
-  - shimmer
-  - shine-examples
-  - shivers-cfg
-  - shoap
-  - shopify
-  - shortcut-links
-  - shorten-strings
-  - ShortestPathProblems
-  - show-prettyprint
-  - showdown
-  - Shpadoinkle-backend-pardiff
-  - Shpadoinkle-backend-snabbdom
-  - Shpadoinkle-backend-static
-  - Shpadoinkle-developer-tools
-  - Shpadoinkle-disembodied
-  - Shpadoinkle-examples
-  - Shpadoinkle-html
-  - Shpadoinkle-router
-  - Shpadoinkle-streaming
-  - Shpadoinkle-template
-  - Shpadoinkle-widgets
-  - shpider
-  - shuffle
-  - shwifty
-  - si-clock
-  - sibe
-  - sifflet
-  - sifflet-lib
-  - sigma-ij
-  - sign
-  - signable
-  - signals
-  - signature
-  - signed-multiset
-  - signify-hs
-  - silkscreen
-  - silvi
-  - simd
-  - simgi
-  - simple-actors
-  - simple-atom
-  - simple-bluetooth
-  - simple-c-value
-  - simple-conduit
-  - simple-config
-  - simple-css
-  - simple-download
-  - simple-eval
-  - simple-firewire
-  - simple-genetic-algorithm
-  - simple-index
-  - simple-log-syslog
-  - simple-logging
-  - simple-money
-  - simple-neural-networks
-  - simple-nix
-  - simple-pascal
-  - simple-pipe
-  - simple-rope
-  - simple-server
-  - simple-sql-parser
-  - simple-stacked-vm
-  - simple-tabular
-  - simple-tar
-  - simple-ui
-  - simple-units
-  - simple-vec3
-  - simple-zipper
-  - simpleargs
-  - simpleconfig
-  - SimpleGL
-  - simpleirc
-  - simpleirc-lens
-  - SimpleLog
-  - simplenote
-  - simpleprelude
-  - SimpleServer
-  - simplesmtpclient
-  - simplest-sqlite
-  - simseq
-  - singleton-dict
-  - singleton-typelits
-  - singletons-base
-  - singletons-th
-  - singnal
-  - singular-factory
-  - sink
-  - siphon
-  - siren-json
-  - sirkel
-  - sitepipe
-  - sixfiguregroup
-  - sized-grid
-  - sized-types
-  - sized-vector
-  - sizes
-  - sjsp
-  - SJW
-  - skeletal-set
-  - skeleton
-  - skeletons
-  - skell
-  - skemmtun
-  - skews
-  - skulk
-  - skylark-client
-  - skylighting-lucid
-  - skype4hs
-  - slack
-  - slack-notify-haskell
-  - slack-verify
-  - slack-web
-  - slave-thread
-  - sliceofpy
-  - slidemews
-  - Slides
-  - slim
-  - slip32
-  - sloane
-  - slot-lambda
-  - sloth
-  - slug
-  - slugify
-  - slynx
-  - small-bytearray-builder
-  - smallarray
-  - smallcheck-kind-generics
-  - smallcheck-laws
-  - smallcheck-lens
-  - smallpt-hs
-  - smallstring
-  - smap
-  - smartcheck
-  - smartconstructor
-  - smartGroup
-  - smartword
-  - smcdel
-  - sme
-  - smerdyakov
-  - smiles
-  - smith
-  - smith-cli
-  - smith-client
-  - Smooth
-  - smsaero
-  - smt-lib
-  - smt2-parser
-  - SmtLib
-  - smtlib2
-  - smtlib2-debug
-  - smtlib2-pipe
-  - smtlib2-quickcheck
-  - smtlib2-timing
-  - smtp-mail-ng
-  - SMTPClient
-  - smtps-gmail
-  - smuggler
-  - smuggler2
-  - snake
-  - snake-game
-  - snap-accept
-  - snap-auth-cli
-  - snap-blaze-clay
-  - snap-configuration-utilities
-  - snap-elm
-  - snap-error-collector
-  - snap-extras
-  - snap-routes
-  - snap-stream
-  - snap-testing
-  - snap-utils
-  - snap-web-routes
-  - snaplet-acid-state
-  - snaplet-actionlog
-  - snaplet-amqp
-  - snaplet-auth-acid
-  - snaplet-coffee
-  - snaplet-css-min
-  - snaplet-customauth
-  - snaplet-environments
-  - snaplet-fay
-  - snaplet-hasql
-  - snaplet-haxl
-  - snaplet-hdbc
-  - snaplet-hslogger
-  - snaplet-influxdb
-  - snaplet-lss
-  - snaplet-mandrill
-  - snaplet-mongoDB
-  - snaplet-mongodb-minimalistic
-  - snaplet-mysql-simple
-  - snaplet-oauth
-  - snaplet-persistent
-  - snaplet-postgresql-simple
-  - snaplet-postmark
-  - snaplet-purescript
-  - snaplet-recaptcha
-  - snaplet-redis
-  - snaplet-redson
-  - snaplet-rest
-  - snaplet-riak
-  - snaplet-sass
-  - snaplet-scoped-session
-  - snaplet-sedna
-  - snaplet-ses-html
-  - snaplet-sqlite-simple
-  - snaplet-sqlite-simple-jwt-auth
-  - snaplet-stripe
-  - snaplet-tasks
-  - snaplet-typed-sessions
-  - snaplet-wordpress
-  - snappy-conduit
-  - snappy-iteratee
-  - sndfile-enumerators
-  - sneakyterm
-  - SNet
-  - snipcheck
-  - snm
-  - snmp
-  - snorkels
-  - snow-white
-  - snowflake-core
-  - snowflake-server
-  - snowtify
-  - Snusmumrik
-  - SoccerFun
-  - SoccerFunGL
-  - socket-activation
-  - socket-io
-  - socket-sctp
-  - socket-unix
-  - socketed
-  - socketio
-  - sockets
-  - sockets-and-pipes
-  - socketson
-  - sodium
-  - soegtk
-  - softfloat-hs
-  - solga
-  - solga-swagger
-  - solr
-  - sonic-visualiser
-  - Sonnex
-  - SoOSiM
-  - sorted
-  - sorting
-  - sorty
-  - souffle-dsl
-  - souffle-haskell
-  - sound-collage
-  - sounddelay
-  - soundgen
-  - source-code-server
-  - SourceGraph
-  - sousit
-  - soyuz
-  - SpaceInvaders
-  - spacepart
-  - SpacePrivateers
-  - spake2
-  - spanout
-  - sparkle
-  - sparrow
-  - spars
-  - sparse
-  - sparse-lin-alg
-  - sparsebit
-  - sparsecheck
-  - sparser
-  - spata
-  - special-functors
-  - special-keys
-  - specialize-th
-  - species
-  - spectral-clustering
-  - speculation
-  - speculation-transformers
-  - speechmatics
-  - spelling-suggest
-  - sphero
-  - sphinx
-  - sphinx-cli
-  - sphinxesc
-  - spice
-  - SpinCounter
-  - spir-v
-  - spiros
-  - splay
-  - splaytree
-  - spline3
-  - splines
-  - splint
-  - split-morphism
-  - splitter
-  - Spock
-  - Spock-api-ghcjs
-  - Spock-auth
-  - Spock-lucid
-  - Spock-worker
-  - spoonutil
-  - spoty
-  - Sprig
-  - sprinkles
-  - spritz
-  - sproxy
-  - sproxy-web
-  - sproxy2
-  - spsa
-  - spy
-  - sql-simple
-  - sql-simple-mysql
-  - sql-simple-pool
-  - sql-simple-postgresql
-  - sql-simple-sqlite
-  - sqlcipher
-  - sqlite
-  - sqlite-simple-errors
-  - sqlite-simple-typed
-  - sqlvalue-list
-  - sqsd-local
-  - squeal-postgresql
-  - squeeze
-  - sr-extra
-  - srcinst
-  - sscan
-  - sscgi
-  - ssh
-  - ssh-tunnel
-  - sshd-lint
-  - sssp
-  - sstable
-  - SSTG
-  - st2
-  - stable-heap
-  - stable-maps
-  - stable-marriage
-  - stable-memo
-  - stable-tree
-  - stack-bump
-  - stack-fix
-  - stack-hpc-coveralls
-  - stack-lib
-  - stack-network
-  - stack-prism
-  - stack-run
-  - stack-run-auto
-  - stack-type
-  - stack-wrapper
-  - stack2cabal
-  - stack2nix
-  - stackage
-  - stackage-build-plan
-  - stackage-cabal
-  - stackage-cli
-  - stackage-curator
-  - stackage-metadata
-  - stackage-query
-  - stackage-sandbox
-  - stackage-setup
-  - stackage-to-hackage
-  - stackage-types
-  - stackage-upload
-  - stackage2nix
-  - stackcollapse-ghc
-  - staged-gg
-  - standalone-derive-topdown
-  - standalone-haddock
-  - starling
-  - stash
-  - Stasis
-  - state
-  - state-bag
-  - state-plus
-  - state-record
-  - stateful-mtl
-  - static-canvas
-  - static-closure
-  - static-tensor
-  - static-text
-  - statistics-dirichlet
-  - statistics-fusion
-  - statistics-hypergeometric-genvar
-  - stats
-  - statsd
-  - statsd-client
-  - statsdi
-  - statvfs
-  - stb-image-redux
-  - stc-lang
-  - stdata
-  - stdf
-  - stdio
-  - steambrowser
-  - stego-uuid
-  - stemmer
-  - stemmer-german
-  - stepwise
-  - stern-brocot
-  - stgi
-  - STL
-  - STLinkUSB
-  - stm-chunked-queues
-  - stm-firehose
-  - stm-promise
-  - stm-stats
-  - STM32-Zombie
-  - stmcontrol
-  - stochastic
-  - StockholmAlignment
-  - stocks
-  - Stomp
-  - storable
-  - storable-static-array
-  - storablevector-streamfusion
-  - stp
-  - str
-  - Strafunski-ATermLib
-  - Strafunski-Sdf2Haskell
-  - Strafunski-StrategyLib
-  - StrappedTemplates
-  - stratum-tool
-  - stratux
-  - stratux-demo
-  - stratux-http
-  - stratux-types
-  - stratux-websockets
-  - stream
-  - stream-fusion
-  - stream-monad
-  - streamdeck
-  - streamed
-  - streaming-base64
-  - streaming-benchmarks
-  - streaming-brotli
-  - streaming-cassava
-  - streaming-concurrency
-  - streaming-conduit
-  - streaming-events
-  - streaming-fft
-  - streaming-lzma
-  - streaming-osm
-  - streaming-pcap
-  - streaming-png
-  - streaming-process
-  - streaming-sort
-  - streaming-utils
-  - streaming-with
-  - streamly-archive
-  - streamly-fsnotify
-  - streamly-lmdb
-  - streamproc
-  - strelka
-  - strict-base-types
-  - strict-data
-  - strict-ghc-plugin
-  - strict-tuple-lens
-  - StrictBench
-  - StrictCheck
-  - strictly
-  - string-isos
-  - string-quote
-  - string-typelits
-  - stringlike
-  - stringtable-atom
-  - stripe
-  - stripe-hs
-  - stripe-http-streams
-  - stripe-scotty
-  - stripe-signature
-  - stripe-wreq
-  - strongswan-sql
-  - structural-induction
-  - structural-traversal
-  - structured-mongoDB
-  - structures
-  - stt
-  - stunclient
-  - stunts
-  - stutter
-  - stylish-cabal
-  - stylist
-  - stylized
-  - suavemente
-  - sub-state
-  - subhask
-  - subleq-toolchain
-  - submark
-  - subsample
-  - substring-parser
-  - subwordgraph
-  - successors
-  - suffix-array
-  - suffixarray
-  - SuffixStructures
-  - sugarhaskell
-  - suitable
-  - summoner
-  - summoner-tui
-  - sump
-  - sunlight
-  - sunroof-compiler
-  - sunroof-examples
-  - sunroof-server
-  - super-user-spark
-  - superbubbles
-  - supercollider-ht
-  - supercollider-midi
-  - superconstraints
-  - superevent
-  - supermonad
-  - supernova
-  - supero
-  - supervisor
-  - supplemented
-  - surjective
-  - sv
-  - sv-cassava
-  - sv-core
-  - sv-svfactor
-  - SVD2HS
-  - svfactor
-  - svg-builder-fork
-  - SVG2Q
-  - svg2q
-  - svgcairo
-  - svgone
-  - svgutils
-  - svm-light-utils
-  - svm-simple
-  - svndump
-  - swagger-petstore
-  - swagger-test
-  - swapper
-  - swearjure
-  - sweet-egison
-  - swf
-  - swift-lda
-  - swiss-ephemeris
-  - switch
-  - sws
-  - syb-extras
-  - syb-with-class-instances-text
-  - SybWidget
-  - syfco
-  - sylvia
-  - sym
-  - sym-plot
-  - symantic
-  - symantic-atom
-  - symantic-cli
-  - symantic-http
-  - symantic-http-client
-  - symantic-http-demo
-  - symantic-http-pipes
-  - symantic-http-server
-  - symantic-http-test
-  - symantic-lib
-  - symantic-parser
-  - symantic-xml
-  - symbiote
-  - symbolic-link
-  - symengine
-  - symengine-hs
-  - symmetry-operations-symbols
-  - sync
-  - sync-mht
-  - syncthing-hs
-  - syntactic
-  - syntax
-  - syntax-attoparsec
-  - syntax-example
-  - syntax-example-json
-  - syntax-pretty
-  - syntax-printer
-  - syntax-trees
-  - syntax-trees-fork-bairyn
-  - SyntaxMacros
-  - syntaxnet-haskell
-  - synthesizer
-  - synthesizer-llvm
-  - sys-process
-  - Sysmon
-  - system-canonicalpath
-  - system-command
-  - system-extra
-  - system-inotify
-  - system-lifted
-  - system-linux-proc
-  - system-locale
-  - system-random-effect
-  - systemstats
-  - t-regex
-  - t3-client
-  - t3-server
-  - ta
-  - table
-  - table-layout
-  - table-tennis
-  - tableaux
-  - Tables
-  - tables
-  - tablestorage
-  - Tablify
-  - tabloid
-  - tabs
-  - tag-bits
-  - tag-stream
-  - tagged-exception-core
-  - tagged-list
-  - tagged-th
-  - tagged-timers
-  - taglib-api
-  - tagsoup-ht
-  - tagsoup-megaparsec
-  - tagsoup-navigate
-  - tagsoup-parsec
-  - tagsoup-selection
-  - tagstew
-  - tai
-  - tai64
-  - takahashi
-  - Takusen
-  - takusen-oracle
-  - tal
-  - tamarin-prover
-  - tamarin-prover-term
-  - tamarin-prover-theory
-  - tamarin-prover-utils
-  - Tape
-  - tapioca
-  - target
-  - task
-  - task-distribution
-  - TaskMonad
-  - tasty-auto
-  - tasty-bdd
-  - tasty-checklist
-  - tasty-fail-fast
-  - tasty-grading-system
-  - tasty-groundhog-converters
-  - tasty-hedgehog-coverage
-  - tasty-html
-  - tasty-integrate
-  - tasty-jenkins-xml
-  - tasty-laws
-  - tasty-lens
-  - tasty-mgolden
-  - tasty-silver
-  - tasty-stats
-  - tasty-test-vector
-  - tateti-tateti
-  - Taxonomy
-  - TaxonomyTools
-  - TBC
-  - TBit
-  - tbox
-  - tcache-AWS
-  - tccli
-  - tcod-haskell
-  - tcp
-  - tcp-streams-openssl
-  - tdd-util
-  - tdigest-Chart
-  - tdlib
-  - tdlib-gen
-  - tdlib-types
-  - tds
-  - TeaHS
-  - teams
-  - techlab
-  - teeth
-  - telegram
-  - telegram-api
-  - telegram-bot
-  - telegram-bot-simple
-  - telegram-raw-api
-  - telegram-types
-  - teleport
-  - teleshell
-  - tellbot
-  - tempi
-  - template-default
-  - template-haskell-util
-  - template-hsml
-  - template-yj
-  - templateify
-  - templatepg
-  - tempodb
-  - temporal-csound
-  - tempus
-  - tensor
-  - tensor-safe
-  - tensorflow
-  - tensorflow-core-ops
-  - tensorflow-logging
-  - tensorflow-opgen
-  - tensorflow-ops
-  - term-rewriting
-  - termbox-banana
-  - termbox-bindings
-  - terminal-text
-  - termination-combinators
-  - termplot
-  - terntup
-  - terraform-http-backend-pass
-  - terrahs
-  - tersmu
-  - tesla
-  - test-fixture
-  - test-framework-doctest
-  - test-framework-quickcheck
-  - test-framework-sandbox
-  - test-framework-skip
-  - test-framework-testing-feat
-  - test-framework-th-prime
-  - test-karya
-  - test-pkg
-  - test-sandbox
-  - test-sandbox-compose
-  - test-sandbox-hunit
-  - test-sandbox-quickcheck
-  - test-shouldbe
-  - test-simple
-  - testbench
-  - testCom
-  - testcontainers
-  - testloop
-  - testpack
-  - testpattern
-  - testrunner
-  - TeX-my-math
-  - tex2txt
-  - texbuilder
-  - texrunner
-  - text-all
-  - text-and-plots
-  - text-ascii
-  - text-containers
-  - text-format-heavy
-  - text-generic-pretty
-  - text-icu-normalized
-  - text-lens
-  - text-lips
-  - text-markup
-  - text-normal
-  - text-offset
-  - text-plus
-  - text-position
-  - text-register-machine
-  - text-replace
-  - text-trie
-  - text-utf8
-  - text-utils
-  - text-xml-qq
-  - text-zipper-monad
-  - text1
-  - textmatetags
-  - textocat-api
-  - textual
-  - tfp-th
-  - tftp
-  - tga
-  - th-alpha
-  - th-build
-  - th-context
-  - th-dict-discovery
-  - th-fold
-  - th-format
-  - th-instance-reification
-  - th-instances
-  - th-kinds
-  - th-kinds-fork
-  - th-lego
-  - th-pprint
-  - th-sccs
-  - th-tc
-  - th-to-exp
-  - th-traced
-  - th-typegraph
-  - thank-you-stars
-  - theatre
-  - thentos-cookie-session
-  - Theora
-  - theoremquest
-  - theoremquest-client
-  - thih
-  - thimk
-  - Thingie
-  - thock
-  - thorn
-  - threadmanager
-  - threepenny-editors
-  - threepenny-gui-contextmenu
-  - threepenny-gui-flexbox
-  - thrift
-  - throttled-io-loop
-  - thumbnail-plus
-  - thumbnail-polish
-  - tic-tac-toe
-  - tickle
-  - TicTacToe
-  - tictactoe3d
-  - tidal-midi
-  - tidal-serial
-  - tidal-vis
-  - tie-knot
-  - tiempo
-  - tiger
-  - tightrope
-  - tighttp
-  - timberc
-  - time-extras
-  - time-exts
-  - time-http
-  - time-io-access
-  - time-machine
-  - time-qq
-  - time-quote
-  - time-recurrence
-  - time-series
-  - time-series-lib
-  - time-w3c
-  - time-warp
-  - timecalc
-  - timemap
-  - timeout
-  - timeout-with-results
-  - timeparsers
-  - TimePiece
-  - timeprint
-  - timeseries
-  - timeutils
-  - timezone-detect
-  - timezone-olson-th
-  - timezone-unix
-  - tini
-  - tintin
-  - tiny-scheduler
-  - TinyLaunchbury
-  - tinyMesh
-  - tinytemplate
-  - TinyURL
-  - tinyXml
-  - tip-haskell-frontend
-  - tip-lib
-  - titan
-  - titan-debug-yampa
-  - titan-record-yampa
-  - Titim
-  - tkhs
-  - tkyprof
-  - tls-extra
-  - tlynx
-  - tmp-postgres
-  - tn
-  - to-haskell
-  - to-string-class
-  - to-string-instances
-  - toboggan
-  - todo
-  - todos
-  - tofromxml
-  - toilet
-  - token-limiter
-  - token-search
-  - tokenify
-  - tokenizer-streaming
-  - tokstyle
-  - toktok
-  - tokyocabinet-haskell
-  - tokyotyrant-haskell
-  - tomato-rubato-openal
-  - toml
-  - tonatona-google-server-api
-  - tonatona-persistent-postgresql
-  - tonatona-persistent-sqlite
-  - tonatona-servant
-  - too-many-cells
-  - toodles
-  - Top
-  - top
-  - topkata
-  - torch
-  - TORCS
-  - total-map
-  - TotalMap
-  - touched
-  - Tournament
-  - toxcore
-  - toxcore-c
-  - toxiproxy-haskell
-  - toysolver
-  - tpar
-  - tpb
-  - tptp
-  - trace
-  - trace-call
-  - trace-function-call
-  - traced
-  - tracetree
-  - tracing
-  - tracing-control
-  - tracked-files
-  - tracker
-  - trackit
-  - traction
-  - tracy
-  - traildb
-  - trajectory
-  - transactional-events
-  - transf
-  - transfer-db
-  - transformations
-  - TransformeR
-  - transformers-compose
-  - transformers-convert
-  - transformers-lift
-  - transformers-runnable
-  - TransformersStepByStep
-  - transient-universe
-  - transient-universe-tls
-  - translatable-intset
-  - translate
-  - translate-cli
-  - trasa
-  - trasa-client
-  - trasa-extra
-  - trasa-form
-  - trasa-server
-  - trasa-th
-  - traversal-template
-  - travis
-  - travis-meta-yaml
-  - trawl
-  - traypoweroff
-  - treap
-  - tree-render-text
-  - tree-traversals
-  - TreeCounter
-  - treemap
-  - treemap-html
-  - treemap-html-tools
-  - TreeStructures
-  - Treiber
-  - trek-app
-  - trek-db
-  - tremulous-query
-  - TrendGraph
-  - trhsx
-  - triangulation
-  - TrieMap
-  - tries
-  - trigger
-  - trim
-  - trimpolya
-  - tripLL
-  - trivia
-  - trivial-constraint
-  - tropical
-  - tropical-geometry
-  - true-name
-  - truelevel
-  - trurl
-  - tsession
-  - tsession-happstack
-  - tsp-viz
-  - tsparse
-  - tsuntsun
-  - tsvsql
-  - tsweb
-  - ttask
-  - tttool
-  - tubes
-  - tuntap
-  - tuntap-simple
-  - tup-functor
-  - tuple-gen
-  - tuple-lenses
-  - tuple-morph
-  - tuple-ops
-  - tupleinstances
-  - turing-machines
-  - turing-music
-  - turingMachine
-  - turtle-options
-  - TV
-  - tweak
-  - twee
-  - tweet-hs
-  - twentefp-eventloop-graphics
-  - twentefp-eventloop-trees
-  - twentefp-graphs
-  - twentefp-rosetree
-  - twentefp-trees
-  - twentefp-websockets
-  - twentyseven
-  - twfy-api-client
-  - twhs
-  - twidge
-  - twilight-stm
-  - twilio
-  - twill
-  - twine
-  - twirp
-  - twitter
-  - twitter-conduit
-  - twitter-enumerator
-  - twitter-feed
-  - tx
-  - txt
-  - txtblk
-  - TYB
-  - tyfam-witnesses
-  - typalyze
-  - type-assertions
-  - type-cache
-  - type-cereal
-  - type-combinators
-  - type-combinators-quote
-  - type-combinators-singletons
-  - type-digits
-  - type-eq
-  - type-fun
-  - type-indexed-queues
-  - type-int
-  - type-interpreter
-  - type-level-bst
-  - type-level-natural-number-induction
-  - type-level-natural-number-operations
-  - type-list
-  - type-of-html-static
-  - type-ord
-  - type-ord-spine-cereal
-  - type-prelude
-  - type-sets
-  - type-settheory
-  - type-spine
-  - type-structure
-  - type-sub-th
-  - type-tree
-  - type-unary
-  - typeable-th
-  - TypeClass
-  - typed-encoding
-  - typed-encoding-encoding
-  - typed-spreadsheet
-  - typed-streams
-  - typed-wire
-  - typedflow
-  - typedquery
-  - typehash
-  - TypeIlluminator
-  - typelevel
-  - typelevel-rewrite-rules
-  - typelevel-tensor
-  - TypeNat
-  - typenums
-  - typeparams
-  - types-compat
-  - typesafe-precure
-  - typescript-docs
-  - typograffiti
-  - typson-beam
-  - typson-esqueleto
-  - typson-selda
-  - tyro
-  - u2f
-  - uber
-  - uberlast
-  - ucam-webauth
-  - ucam-webauth-types
-  - ucd
-  - uconv
-  - udp-conduit
-  - udp-streaming
-  - uhc-light
-  - uhc-util
-  - uhexdump
-  - uhttpc
-  - ui-command
-  - UMM
-  - unagi-bloomfilter
-  - unamb-custom
-  - unbound
-  - unbounded-delays-units
-  - unboxed-containers
-  - unboxed-references
-  - unbreak
-  - unescaping-print
-  - unfix-binders
-  - uni-events
-  - uni-graphs
-  - uni-htk
-  - uni-posixutil
-  - uni-reactor
-  - uni-uDrawGraph
-  - uni-util
-  - unicode-normalization
-  - unicode-prelude
-  - unicode-show
-  - unicode-symbols
-  - unicode-tricks
-  - uniform-io
-  - union
-  - union-map
-  - uniprot-kb
-  - uniqueid
-  - uniquely-represented-sets
-  - uniqueness-periods-vector-examples
-  - uniqueness-periods-vector-properties
-  - units-attoparsec
-  - unittyped
-  - unitym-yesod
-  - universal-binary
-  - universe
-  - universe-instances-base
-  - universe-instances-extended
-  - universe-instances-trans
-  - universe-th
-  - unix-fcntl
-  - unix-handle
-  - unix-process-conduit
-  - unix-recursive
-  - unix-simple
-  - unlifted-list
-  - unliftio-messagebox
-  - unliftio-streams
-  - unm-hip
-  - unordered-containers-rematch
-  - unordered-graphs
-  - unordered-intmap
-  - unpack-funcs
-  - unpacked-either
-  - unpacked-maybe
-  - unpacked-maybe-numeric
-  - unpacked-these
-  - unpacked-validation
-  - unparse-attoparsec
-  - unroll-ghc-plugin
-  - unsafely
-  - unscramble
-  - unsequential
-  - unused
-  - uom-plugin
-  - up
-  - Updater
-  - uploadcare
-  - upskirt
-  - urbit-airlock
-  - urbit-api
-  - urbit-hob
-  - ureader
-  - urembed
-  - uri
-  - uri-conduit
-  - uri-encoder
-  - uri-enumerator
-  - uri-enumerator-file
-  - uri-parse
-  - uri-template
-  - uri-templater
-  - url-bytes
-  - url-decoders
-  - url-generic
-  - URLb
-  - urlcheck
-  - urldecode
-  - UrlDisp
-  - urldisp-happstack
-  - urlencoded
-  - urlpath
-  - URLT
-  - urn
-  - urn-random
-  - urxml
-  - usb
-  - usb-enumerator
-  - usb-hid
-  - usb-id-database
-  - usb-iteratee
-  - usb-safe
-  - userid
-  - users-mysql-haskell
-  - users-persistent
-  - utf
-  - utf8-prelude
-  - utf8-validator
-  - UTFTConverter
-  - util-exception
-  - util-logict
-  - util-plus
-  - util-primitive
-  - util-primitive-control
-  - util-universe
-  - uu-cco
-  - uu-cco-examples
-  - uu-cco-hut-parsing
-  - uu-cco-uu-parsinglib
-  - uuagc-bootstrap
-  - uuagc-diagrams
-  - uuid-aeson
-  - uuid-bytes
-  - uuid-crypto
-  - uvector
-  - uvector-algorithms
-  - uxadt
-  - v4l2
-  - v4l2-examples
-  - vabal
-  - vabal-lib
-  - vacuum
-  - vacuum-cairo
-  - vacuum-graphviz
-  - vacuum-opengl
-  - vacuum-ubigraph
-  - valid-names
-  - validate-input
-  - validated-types
-  - Validation
-  - validations
-  - value-supply
-  - vampire
-  - var
-  - varan
-  - variable-precision
-  - variables
-  - variation
-  - vault-tool-server
-  - vault-trans
-  - vaultaire-common
-  - vcache
-  - vcache-trie
-  - vcard
-  - vcatt
-  - vcf
-  - vcsgui
-  - vcswrapper
-  - Vec-Boolean
-  - Vec-OpenGLRaw
-  - Vec-Transform
-  - vect-floating
-  - vect-floating-accelerate
-  - vect-opengl
-  - vector-bytestring
-  - vector-clock
-  - vector-conduit
-  - vector-endian
-  - vector-functorlazy
-  - vector-heterogenous
-  - vector-instances-collections
-  - vector-random
-  - vector-read-instances
-  - vector-space-map
-  - vector-space-opengl
-  - vector-space-points
-  - vector-static
-  - vector-text
-  - vega-view
-  - venzone
-  - Verba
-  - verbalexpressions
-  - verdict
-  - verdict-json
-  - verifiable-expressions
-  - verify
-  - verilog
-  - verismith
-  - versioning
-  - versioning-servant
-  - vflow-types
-  - vfr-waypoints
-  - vgrep
-  - vhd
-  - vhdl
-  - vicinity
-  - ViennaRNA-extras
-  - viewprof
-  - views
-  - vigilance
-  - Villefort
-  - vimeta
-  - vimus
-  - vintage-basic
-  - vinyl-json
-  - vinyl-named-sugar
-  - vinyl-operational
-  - vinyl-plus
-  - vinyl-utils
-  - vinyl-vectors
-  - virthualenv
-  - visibility
-  - vision
-  - visual-graphrewrite
-  - visual-prof
-  - visualize-cbn
-  - vitrea
-  - vk-aws-route53
-  - VKHS
-  - vocoder
-  - vocoder-audio
-  - vocoder-conduit
-  - vocoder-dunai
-  - voicebase
-  - vowpal-utils
-  - voyeur
-  - vpq
-  - VRML
-  - vte
-  - vtegtk3
-  - vty-examples
-  - vty-menu
-  - vty-ui
-  - vty-ui-extras
-  - vulkan-api
-  - waargonaut
-  - wacom-daemon
-  - waddle
-  - wahsp
-  - wai-cli
-  - wai-devel
-  - wai-git-http
-  - wai-graceful
-  - wai-handler-devel
-  - wai-handler-fastcgi
-  - wai-handler-hal
-  - wai-handler-scgi
-  - wai-handler-snap
-  - wai-handler-webkit
-  - wai-hmac-auth
-  - wai-lens
-  - wai-lite
-  - wai-logger-buffered
-  - wai-logger-prefork
-  - wai-make-assets
-  - wai-middleware-cache
-  - wai-middleware-cache-redis
-  - wai-middleware-catch
-  - wai-middleware-consul
-  - wai-middleware-content-type
-  - wai-middleware-crowd
-  - wai-middleware-delegate
-  - wai-middleware-etag
-  - wai-middleware-headers
-  - wai-middleware-hmac-client
-  - wai-middleware-preprocessor
-  - wai-middleware-rollbar
-  - wai-middleware-route
-  - wai-middleware-static-caching
-  - wai-middleware-travisci
-  - wai-middleware-validation
-  - wai-rate-limit-redis
-  - wai-request-spec
-  - wai-responsible
-  - wai-router
-  - wai-routes
-  - wai-routing
-  - wai-secure-cookies
-  - wai-session-alt
-  - wai-session-mysql
-  - wai-session-postgresql
-  - wai-static-cache
-  - wai-thrift
-  - wai-throttler
-  - waitfree
-  - waitra
-  - waldo
-  - wallpaper
-  - warc
-  - warp-dynamic
-  - warp-static
-  - warp-systemd
-  - warped
-  - WashNGo
-  - wasm
-  - watchdog
-  - watcher
-  - watchit
-  - WAVE
-  - WaveFront
-  - wavefront
-  - wavefront-obj
-  - wavesurfer
-  - wavy
-  - weak-bag
-  - weather-api
-  - web-css
-  - web-encodings
-  - web-mongrel2
-  - web-output
-  - web-page
-  - web-push
-  - web-rep
-  - web-routes-quasi
-  - web-routes-regular
-  - web-routes-transformers
-  - web-routing
-  - web3
-  - webapi
-  - webapp
-  - webauthn
-  - WebBits
-  - WebBits-Html
-  - WebBits-multiplate
-  - webcloud
-  - WebCont
-  - webcrank
-  - webcrank-dispatch
-  - webcrank-wai
-  - webdriver-angular
-  - webdriver-snoy
-  - webdriver-w3c
-  - WeberLogic
-  - webfinger-client
-  - webify
-  - webkit-javascriptcore
-  - webmention
-  - Webrexp
-  - webserver
-  - webshow
-  - websockets-rpc
-  - webwire
-  - WEditor
-  - WEditorBrick
-  - WEditorHyphen
-  - weekdaze
-  - weighted
-  - weighted-regexp
-  - welshy
-  - werewolf
-  - werewolf-slack
-  - what4
-  - Wheb
-  - wheb-mongo
-  - wheb-redis
-  - wheb-strapped
-  - while-lang-parser
-  - whim
-  - whiskers
-  - whitespace
-  - whois
-  - why3
-  - wide-word
-  - wide-word-instances
-  - WikimediaParser
-  - wikipedia4epub
-  - wild-bind-indicator
-  - wild-bind-task-x11
-  - windns
-  - windowslive
-  - winerror
-  - winery
-  - winio
-  - Wired
-  - wires
-  - wiring
-  - witty
-  - wkt
-  - wkt-geom
-  - wl-pprint-ansiterm
-  - wl-pprint-extras
-  - wl-pprint-terminfo
-  - WL500gPControl
-  - WL500gPLib
-  - wlc-hs
-  - WMSigner
-  - wobsurv
-  - woe
-  - woffex
-  - wol
-  - wolf
-  - word
-  - word2vec-model
-  - WordAlignment
-  - wordchoice
-  - wordify
-  - wordlist
-  - WordNet
-  - WordNet-ghc74
-  - wordpass
-  - wordpress-auth
-  - wordsearch
-  - work-time
-  - workdays
-  - Workflow
-  - workflow-extra
-  - workflow-osx
-  - workflow-pure
-  - workflow-types
-  - workflow-windows
-  - wp-archivebot
-  - wraxml
-  - wrecker
-  - wrecker-ui
-  - wreq-patchable
-  - wreq-sb
-  - wright
-  - writer-cps-full
-  - writer-cps-lens
-  - writer-cps-monads-tf
-  - writer-cps-morph
-  - ws
-  - wsdl
-  - wsedit
-  - wshterm
-  - wsjtx-udp
-  - wss-client
-  - wtk
-  - wtk-gtk
-  - wu-wei
-  - wumpus-basic
-  - wumpus-core
-  - wumpus-drawing
-  - wumpus-microprint
-  - wumpus-tree
-  - WURFL
-  - wxAsteroids
-  - WXDiffCtrl
-  - wxdirect
-  - wxFruit
-  - WxGeneric
-  - wxhnotepad
-  - wxSimpleCanvas
-  - wxturtle
-  - wyvern
-  - x-dsp
-  - X11-extras
-  - X11-rm
-  - X11-xdamage
-  - X11-xfixes
-  - xchat-plugin
-  - xcp
-  - xdcc
-  - xdot
-  - Xec
-  - xenstore
-  - xfconf
-  - xformat
-  - xhaskell-library
-  - xhb
-  - xhb-atom-cache
-  - xhb-ewmh
-  - xilinx-lava
-  - xine
-  - xing-api
-  - xkbcommon
-  - xkcd
-  - xleb
-  - xls
-  - xlsior
-  - xlsx-tabular
-  - xlsx-templater
-  - xml-catalog
-  - xml-conduit-decode
-  - xml-conduit-selectors
-  - xml-conduit-stylist
-  - xml-enumerator
-  - xml-enumerator-combinators
-  - xml-html-conduit-lens
-  - xml-monad
-  - xml-parsec
-  - xml-pipe
-  - xml-prettify
-  - xml-push
-  - xml-query
-  - xml-query-xml-conduit
-  - xml-query-xml-types
-  - xml-tydom-conduit
-  - xml-tydom-core
-  - xml2json
-  - xml2x
-  - XmlHtmlWriter
-  - xmltv
-  - XMMS
-  - xmms2-client
-  - xmms2-client-glib
-  - xmonad-bluetilebranch
-  - xmonad-contrib-bluetilebranch
-  - xmonad-contrib-gpl
-  - xmonad-dbus
-  - xmonad-eval
-  - xmonad-vanessa
-  - xmonad-windownames
-  - xmpipe
-  - XMPP
-  - xor
-  - xorshift-plus
-  - Xorshift128Plus
-  - xournal-builder
-  - xournal-convert
-  - xournal-parser
-  - xournal-render
-  - xournal-types
-  - xrefcheck
-  - xsact
-  - XSaiga
-  - xsd
-  - xslt
-  - xtc
-  - xxhash
-  - y0l0bot
-  - yabi-muno
-  - Yablog
-  - yackage
-  - YACPong
-  - yahoo-finance-api
-  - yahoo-finance-conduit
-  - yahoo-prices
-  - yahoo-web-search
-  - yajl
-  - yajl-enumerator
-  - yall
-  - yam
-  - yam-config
-  - yam-datasource
-  - yam-logger
-  - yam-redis
-  - yam-servant
-  - yam-transaction
-  - yam-transaction-odbc
-  - yam-web
-  - yaml-pretty-extras
-  - yaml-rpc
-  - yaml-rpc-scotty
-  - yaml-rpc-snap
-  - yaml-unscrambler
-  - YamlReference
-  - yampa-glfw
-  - yampa-gloss
-  - yampa-glut
-  - yampa-sdl2
-  - yampa-test
-  - yampa2048
-  - YampaSynth
-  - yandex-translate
-  - yaop
-  - yap
-  - yarr
-  - yarr-image-io
-  - yasi
-  - yavie
-  - yaya-test
-  - yaya-unsafe-test
-  - ycextra
-  - yeamer
-  - yeller
-  - yeshql
-  - yeshql-hdbc
-  - yeshql-postgresql-simple
-  - yesod-angular
-  - yesod-angular-ui
-  - yesod-articles
-  - yesod-auth-account
-  - yesod-auth-account-fork
-  - yesod-auth-bcrypt
-  - yesod-auth-bcryptdb
-  - yesod-auth-deskcom
-  - yesod-auth-hmac-keccak
-  - yesod-auth-kerberos
-  - yesod-auth-ldap
-  - yesod-auth-ldap-mediocre
-  - yesod-auth-ldap-native
-  - yesod-auth-lti13
-  - yesod-auth-nopassword
-  - yesod-auth-oauth2
-  - yesod-auth-pam
-  - yesod-auth-smbclient
-  - yesod-auth-zendesk
-  - yesod-bootstrap
-  - yesod-colonnade
-  - yesod-comments
-  - yesod-content-pdf
-  - yesod-continuations
-  - yesod-crud
-  - yesod-crud-persist
-  - yesod-datatables
-  - yesod-dsl
-  - yesod-examples
-  - yesod-fast-devel
-  - yesod-fay
-  - yesod-filter
-  - yesod-form-richtext
-  - yesod-gitrev
-  - yesod-goodies
-  - yesod-ip
-  - yesod-job-queue
-  - yesod-links
-  - yesod-lucid
-  - yesod-mangopay
-  - yesod-markdown
-  - yesod-media-simple
-  - yesod-page-cursor
-  - yesod-paginate
-  - yesod-pagination
-  - yesod-paypal-rest
-  - yesod-platform
-  - yesod-pnotify
-  - yesod-pure
-  - yesod-purescript
-  - yesod-raml
-  - yesod-raml-bin
-  - yesod-raml-docs
-  - yesod-raml-mock
-  - yesod-recaptcha
-  - yesod-routes
-  - yesod-routes-flow
-  - yesod-routes-typescript
-  - yesod-rst
-  - yesod-s3
-  - yesod-sass
-  - yesod-session-redis
-  - yesod-static-angular
-  - yesod-static-remote
-  - yesod-test-json
-  - yesod-tls
-  - yesod-vend
-  - yesod-worker
-  - YFrob
-  - yggdrasil
-  - yhccore
-  - yhseq
-  - yi
-  - yi-contrib
-  - yi-core
-  - yi-dynamic-configuration
-  - yi-emacs-colours
-  - yi-frontend-pango
-  - yi-frontend-vty
-  - yi-fuzzy-open
-  - yi-ireader
-  - yi-keymap-cua
-  - yi-keymap-emacs
-  - yi-keymap-vim
-  - yi-language
-  - yi-misc-modes
-  - yi-mode-haskell
-  - yi-mode-javascript
-  - yi-monokai
-  - yi-snippet
-  - yi-solarized
-  - yi-spolsky
-  - yices
-  - yjftp
-  - yjftp-libs
-  - yoctoparsec
-  - yoda
-  - Yogurt
-  - Yogurt-Standalone
-  - yoko
-  - york-lava
-  - yql
-  - yst
-  - yu-auth
-  - yu-core
-  - yu-launch
-  - yu-tool
-  - yu-utils
-  - yuuko
-  - yx
-  - yxdb-utils
-  - Z-Data
-  - Z-IO
-  - Z-MessagePack
-  - Z-YAML
-  - z3-encoding
-  - z85
-  - zabt
-  - zampolit
-  - zasni-gerna
-  - zbar
-  - ZEBEDDE
-  - zendesk-api
-  - zenhack-prelude
-  - zeno
-  - zephyr
-  - zerobin
-  - zeromq-haskell
-  - zeromq3-conduit
-  - zeromq3-haskell
-  - zeromq4-clone-pattern
-  - zeromq4-conduit
-  - zeromq4-patterns
-  - zeroth
-  - zettelkast
-  - ZFS
-  - zifter
-  - zifter-cabal
-  - zifter-git
-  - zifter-google-java-format
-  - zifter-hindent
-  - zifter-hlint
-  - zifter-stack
-  - zigbee-znet25
-  - zip-conduit
-  - zipedit
-  - zipkin
-  - zipper
-  - zippo
-  - ziptastic-client
-  - ziptastic-core
-  - zlib-enum
-  - zm
-  - ZMachine
-  - zmcat
-  - zmidi-score
-  - zoneinfo
-  - zoom
-  - zoom-cache
-  - zoom-cache-pcm
-  - zoom-cache-sndfile
-  - zoom-refs
-  - zoovisitor
-  - zsdd
-  - zsh-battery
-  - zsyntax
-  - ztar
-  - zuramaru
-  - Zwaluw
-  - zxcvbn-dvorak
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
new file mode 100644
index 000000000000..bc9881ee1fca
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -0,0 +1,5336 @@
+broken-packages:
+  # These packages don't compile.
+  - 3d-graphics-examples
+  - 3dmodels
+  - AAI
+  - abcnotation
+  - abeson
+  - abides
+  - abnf
+  - AbortT-transformers
+  - abstract-par-accelerate
+  - abt
+  - AC-BuildPlatform
+  - acc
+  - accelerate-fftw
+  - accelerate-llvm-native
+  - accelerate-random
+  - accelerate-utility
+  - accentuateus
+  - access-time
+  - AC-EasyRaster-GTK
+  - AC-HalfInteger
+  - achille
+  - acid-state-dist
+  - acid-state-tls
+  - ac-machine
+  - ACME
+  - acme-all-monad
+  - acme-comonad
+  - acme-dont
+  - acme-flipping-tables
+  - acme-hq9plus
+  - acme-http
+  - acme-inator
+  - acme-kitchen-sink
+  - acme-left-pad
+  - acme-memorandom
+  - acme-miscorder
+  - acme-mutable-package
+  - acme-now
+  - acme-numbersystem
+  - acme-operators
+  - acme-schoenfinkel
+  - acme-strfry
+  - acme-stringly-typed
+  - acme-this
+  - acme-zalgo
+  - acme-zero
+  - AC-MiniTest
+  - AC-Terminal
+  - ActionKid
+  - activehs-base
+  - activitypub
+  - activitystreams-aeson
+  - acts
+  - AC-VanillaArray
+  - AC-Vector
+  - Adaptive
+  - Adaptive-Blaisorblade
+  - adaptive-containers
+  - adaptive-tuple
+  - adb
+  - adjunction
+  - adobe-swatch-exchange
+  - ADPfusion
+  - adp-multi
+  - adtrees
+  - aern2-mp
+  - AERN-Basics
+  - aeson-applicative
+  - aeson-decode
+  - aeson-diff-generic
+  - aeson-filthy
+  - aeson-flowtyped
+  - aeson-match-qq
+  - aeson-options
+  - aeson-prefix
+  - aeson-schema
+  - aeson-schemas
+  - aeson-smart
+  - aeson-streams
+  - aeson-t
+  - aeson-tiled
+  - aeson-typescript
+  - aeson-utils
+  - aeson-via
+  - affection
+  - affine-invariant-ensemble-mcmc
+  - Agata
+  - agda-language-server
+  - agda-snippets
+  - AGI
+  - ag-pictgen
+  - AhoCorasick
+  - aig
+  - airbrake
+  - airtable-api
+  - air-th
+  - ajhc
+  - AlanDeniseEricLauren
+  - alerta
+  - alex-prelude
+  - alfred
+  - alga
+  - algebra-dag
+  - algebraic
+  - algebraic-prelude
+  - AlgorithmW
+  - algo-s
+  - align-text
+  - ally-invest
+  - alphachar
+  - alsa
+  - alsa-midi
+  - altcomposition
+  - alternative-extra
+  - alternative-io
+  - alto
+  - alure
+  - amazon-emailer
+  - amazon-products
+  - amby
+  - AMI
+  - amqp-conduit
+  - analyze
+  - anansi-pandoc
+  - android
+  - android-activity
+  - android-lint-summary
+  - angel
+  - angle
+  - Animas
+  - animascii
+  - animate
+  - annotated-fix
+  - anonymous-sums
+  - ansigraph
+  - antfarm
+  - antigate
+  - antimirov
+  - antiope-optparse-applicative
+  - antiquoter
+  - antisplice
+  - antlr-haskell
+  - anydbm
+  - aop-prelude
+  - aosd
+  - aos-signature
+  - apart
+  - apecs-stm
+  - api-builder
+  - api-rpc-factom
+  - apns-http2
+  - appc
+  - app-lens
+  - AppleScript
+  - applicative-fail
+  - applicative-parsec
+  - applicative-quoters
+  - applicative-splice
+  - apply-unordered
+  - approveapi
+  - approx
+  - ApproxFun-hs
+  - arbb-vm
+  - arb-fft
+  - arbor-monad-counter
+  - arbor-monad-logger
+  - arbor-monad-metric
+  - arbor-postgres
+  - archiver
+  - archlinux
+  - archnews
+  - arena
+  - argon2
+  - argparser
+  - arguedit
+  - arion
+  - armada
+  - arpa
+  - arpack
+  - arrayfire
+  - array-primops
+  - ArrayRef
+  - arrowapply-utils
+  - arrow-improve
+  - arrow-list
+  - arrowp
+  - arrowp-qq
+  - ArrowVHDL
+  - artery
+  - artifact
+  - asap
+  - ascii85-conduit
+  - ascii-flatten
+  - ascii-string
+  - ascii-vector-avc
+  - asil
+  - asn
+  - asn1-codec
+  - asn1-data
+  - assert
+  - assert4hs
+  - assert4hs-core
+  - assertions
+  - asset-map
+  - assumpta
+  - ast-monad
+  - astrds
+  - async-combinators
+  - async-dejafu
+  - asynchronous-exceptions
+  - async-manager
+  - async-timer
+  - aterm-utils
+  - atndapi
+  - atomic-modify
+  - atomic-primops-vector
+  - atom-msp430
+  - atomo
+  - atp-haskell
+  - ats-pkg
+  - ats-setup
+  - ats-storable
+  - attempt
+  - attic-schedule
+  - AttoBencode
+  - atto-lisp
+  - attomail
+  - attoparsec-text
+  - attoparsec-trans
+  - attosplit
+  - Attrac
+  - augeas
+  - augur
+  - aur
+  - aur-api
+  - Aurochs
+  - authenticate-ldap
+  - authinfo-hs
+  - auto
+  - autom
+  - automata
+  - autonix-deps
+  - autopack
+  - avatar-generator
+  - avl-static
+  - avr-shake
+  - awesome-prelude
+  - awesomium-raw
+  - aws-cloudfront-signer
+  - aws-easy
+  - aws-ec2
+  - aws-ec2-knownhosts
+  - aws-general
+  - aws-larpi
+  - aws-performance-tests
+  - aws-route53
+  - aws-sdk-text-converter
+  - aws-simple
+  - axel
+  - azubi
+  - azure-acs
+  - azure-email
+  - azurify
+  - b9
+  - backstop
+  - backtracking-exceptions
+  - backward-state
+  - bag
+  - Baggins
+  - bake
+  - Bang
+  - ban-instance
+  - bank-holiday-usa
+  - banwords
+  - barchart
+  - barcodes-code128
+  - barecheck
+  - barrie
+  - barrier
+  - barrier-monad
+  - base16
+  - base64-conduit
+  - base-compat-migrate
+  - base-encoding
+  - base-feature-macros
+  - base-generics
+  - base-io-access
+  - basex-client
+  - basic
+  - basic-sop
+  - baskell
+  - battlenet
+  - battleship-combinatorics
+  - bazel-coverage-report-renderer
+  - BCMtools
+  - bdd
+  - bdo
+  - beam
+  - beamable
+  - beam-core
+  - bech32
+  - bed-and-breakfast
+  - beeminder-api
+  - Befunge93
+  - BenchmarkHistory
+  - bench-show
+  - bencodex
+  - berkeleydb
+  - BerkeleyDBXML
+  - bert
+  - besout
+  - bet
+  - betacode
+  - betris
+  - bgmax
+  - bgzf
+  - bhoogle
+  - bibdb
+  - bidi-icu
+  - bidirectional
+  - bidirectionalization-combined
+  - bidispec
+  - bidispec-extras
+  - BiGUL
+  - billeksah-services
+  - binary-bits
+  - binary-communicator
+  - binary-derive
+  - binary-ext
+  - binary-indexed-tree
+  - binary-protocol
+  - binary-typed
+  - BinderAnn
+  - binding-gtk
+  - bindings-apr
+  - bindings-bfd
+  - bindings-cctools
+  - bindings-common
+  - bindings-dc1394
+  - bindings-eskit
+  - bindings-EsounD
+  - bindings-fann
+  - bindings-fluidsynth
+  - bindings-friso
+  - bindings-gsl
+  - bindings-hamlib
+  - bindings-hdf5
+  - bindings-K8055
+  - bindings-levmar
+  - bindings-libftdi
+  - bindings-libg15
+  - bindings-libpci
+  - bindings-librrd
+  - bindings-libstemmer
+  - bindings-libusb
+  - bindings-libv4l2
+  - bindings-monetdb-mapi
+  - bindings-mpdecimal
+  - bindings-sc3
+  - bindings-sipc
+  - bindings-wlc
+  - bind-marshal
+  - bindynamic
+  - binembed
+  - bio
+  - BiobaseNewick
+  - biocore
+  - biohazard
+  - bio-sequence
+  - birds-of-paradise
+  - bisect-binary
+  - bishbosh
+  - bitcoin-hs
+  - bitcoin-script
+  - bits-atomic
+  - bits-conduit
+  - bitset
+  - bits-extras
+  - bitspeak
+  - bit-stream
+  - BitStringRandomMonad
+  - bitx-bitcoin
+  - bizzlelude-js
+  - bkr
+  - blakesum
+  - blas
+  - blaze-html-contrib
+  - blaze-html-hexpat
+  - blaze-html-truncate
+  - blaze-json
+  - blazeT
+  - blaze-textual-native
+  - bliplib
+  - blockchain
+  - blockhash
+  - Blogdown
+  - bloodhound
+  - bloomfilter-redis
+  - blosum
+  - blubber-server
+  - Blueprint
+  - bluetileutils
+  - blunk-hask-tests
+  - bogocopy
+  - boilerplate
+  - bolt
+  - boltzmann-brain
+  - bond
+  - bookkeeper
+  - boolean-normal-forms
+  - boolexpr
+  - boombox
+  - boots-app
+  - boring-window-switcher
+  - bot
+  - botpp
+  - bottom
+  - bounded-array
+  - bound-extras
+  - braid
+  - brain-bleep
+  - Bravo
+  - brians-brain
+  - brick-dropdownmenu
+  - bricks-internal
+  - brillig
+  - broccoli
+  - brok
+  - broker-haskell
+  - bronyradiogermany-common
+  - brotli
+  - browscap
+  - bsd-sysctl
+  - bson-generic
+  - bson-generics
+  - bsparse
+  - btree-concurrent
+  - buffer
+  - buffer-builder-aeson
+  - BufferedSocket
+  - buffet
+  - buffon
+  - buffon-machines
+  - bugsnag-haskell
+  - bugzilla
+  - build
+  - buildable
+  - buildbox
+  - builder
+  - bullet
+  - bumper
+  - bunz
+  - burst-detection
+  - buster
+  - Buster
+  - butter
+  - buttplug-hs-core
+  - bv-sized
+  - bytable
+  - bytearray-parsing
+  - bytestring-arbitrary
+  - bytestring-builder-varword
+  - bytestring-class
+  - bytestring-csv
+  - bytestringparser
+  - bytestringparser-temporary
+  - bytestring-plain
+  - bytestringreadp
+  - bytestring-rematch
+  - bytestring-show
+  - bytestring-substring
+  - bytestring-time
+  - bytestring-trie
+  - bytestring-typenats
+  - c0parser
+  - c10k
+  - c2ats
+  - cabal2doap
+  - cabal2ebuild
+  - cabal2ghci
+  - cabal-audit
+  - cabal-bundle-clib
+  - cabal-constraints
+  - cabal-db
+  - cabal-dependency-licenses
+  - cabal-dev
+  - cabal-dir
+  - cabal-edit
+  - cabal-file-th
+  - cabal-ghc-dynflags
+  - cabal-ghci
+  - cabalgraph
+  - cabal-graphdeps
+  - Cabal-ide-backend
+  - cabal-info
+  - cabal-install-bundle
+  - cabal-install-ghc72
+  - cabal-install-ghc74
+  - cabalish
+  - cabal-lenses
+  - cabal-meta
+  - cabal-mon
+  - cabal-nirvana
+  - cabal-progdeps
+  - cabalQuery
+  - CabalSearch
+  - cabal-setup
+  - cabal-sort
+  - cabal-src
+  - cabal-test-quickcheck
+  - cabal-upload
+  - cabalvchk
+  - cabin
+  - cabocha
+  - cached
+  - cache-polysemy
+  - caching
+  - cacophony
+  - caerbannog
+  - cafeteria-prelude
+  - caffegraph
+  - cairo-core
+  - cake3
+  - cal3d
+  - calamity
+  - caledon
+  - calenderweek
+  - call-alloy
+  - cal-layout
+  - call-haskell-from-anything
+  - canon
+  - canonical-filepath
+  - canonical-json
+  - canteven-listen-http
+  - canteven-log
+  - canteven-parsedate
+  - cantor
+  - Capabilities
+  - capnp
+  - capped-list
+  - capri
+  - caramia
+  - carbonara
+  - carettah
+  - CarneadesDSL
+  - carte
+  - Cartesian
+  - casa-abbreviations-and-acronyms
+  - casadi-bindings-internal
+  - Cascade
+  - cascading
+  - caseof
+  - Cassava
+  - cassava-conduit
+  - cassava-records
+  - cassette
+  - castle
+  - catamorphism
+  - Catana
+  - catch-fd
+  - category-traced
+  - catnplus
+  - cautious-file
+  - cautious-gen
+  - cayene-lpp
+  - cayley-client
+  - CCA
+  - CC-delcont-cxe
+  - CC-delcont-exc
+  - CC-delcont-ref
+  - CC-delcont-ref-tf
+  - cci
+  - ccnx
+  - c-dsl
+  - cedict
+  - cef
+  - cef3-raw
+  - cellrenderer-cairo
+  - cerberus
+  - cereal-derive
+  - cereal-ieee754
+  - cereal-plus
+  - cf
+  - cfenv
+  - cg
+  - cgen
+  - cgi-utils
+  - chalkboard
+  - chalmers-lava2000
+  - character-cases
+  - charter
+  - chart-histogram
+  - Chart-simple
+  - chatty-text
+  - chatwork
+  - checked
+  - Checked
+  - checkmate
+  - chell-quickcheck
+  - chiasma
+  - Chitra
+  - choose
+  - chorale
+  - chp
+  - chp-spec
+  - ChristmasTree
+  - chronograph
+  - chr-parse
+  - chunky
+  - church
+  - church-maybe
+  - cielo
+  - cil
+  - cinvoke
+  - c-io
+  - cio
+  - cipher-blowfish
+  - circlehs
+  - circular
+  - citeproc-hs
+  - cjk
+  - cj-token
+  - clang-compilation-database
+  - clang-pure
+  - clanki
+  - clarifai
+  - CLASE
+  - clash-prelude
+  - Clash-Royale-Hack-Cheats
+  - ClassLaws
+  - classy-influxdb-simple
+  - classy-parallel
+  - classyplate
+  - ClassyPrelude
+  - cld2
+  - Clean
+  - clean-unions
+  - clevercss
+  - clexer
+  - CLI
+  - cli-builder
+  - clickhouse-haskell
+  - clif
+  - clifm
+  - clingo
+  - clippard
+  - clipper
+  - clisparkline
+  - clit
+  - clogparse
+  - clone-all
+  - closure
+  - cloudfront-signer
+  - clr-inline
+  - cluss
+  - clustering
+  - cmark-highlight
+  - cmark-patterns
+  - cmark-sections
+  - cmath
+  - cmd-item
+  - cmdlib
+  - cmdtheline
+  - cmf
+  - cmonad
+  - c-mosquitto
+  - cmph
+  - CMQ
+  - cmt
+  - coalpit
+  - cobot-io
+  - cobot-tools
+  - code-builder
+  - codec-beam
+  - codec-libevent
+  - codecov-haskell
+  - codepad
+  - codeworld-api
+  - codex
+  - codo-notation
+  - coin
+  - coinbase-pro
+  - coincident-root-loci
+  - colchis
+  - collada-output
+  - collapse-util
+  - collections
+  - collections-api
+  - co-log-polysemy
+  - co-log-sys
+  - colonnade
+  - colorless
+  - coltrane
+  - com
+  - comark-syntax
+  - combinat-diagrams
+  - combinatorial-problems
+  - combinator-interactive
+  - combobuffer
+  - Command
+  - commander
+  - Commando
+  - commodities
+  - commonmark-cli
+  - commsec
+  - compactable
+  - Compactable
+  - compact-list
+  - compact-map
+  - compact-mutable-vector
+  - compact-socket
+  - compact-string
+  - compact-string-fix
+  - compdata-dags
+  - compdata-param
+  - competition
+  - compilation
+  - complex-generic
+  - compose-trans
+  - composite-opaleye
+  - composition-tree
+  - comprehensions-ghc
+  - compressed
+  - compstrat
+  - comptrans
+  - computational-geometry
+  - computations
+  - ConClusion
+  - concrete-relaxng-parser
+  - concrete-typerep
+  - concurrent-buffer
+  - Concurrent-Cache
+  - Concurrential
+  - concurrent-state
+  - condorcet
+  - conductive-base
+  - conduit-audio-lame
+  - conduit-audio-samplerate
+  - conduit-find
+  - conduit-iconv
+  - conduit-network-stream
+  - conduit-resumablesink
+  - conduit-throttle
+  - conduit-tokenize-attoparsec
+  - conduit-vfs
+  - conf
+  - conferer-provider-json
+  - conferer-snap
+  - conferer-source-json
+  - confide
+  - ConfigFileTH
+  - config-parser
+  - Configurable
+  - configuration
+  - config-value-getopt
+  - confsolve
+  - congruence-relation
+  - conjure
+  - conkin
+  - conlogger
+  - connection-string
+  - Conscript
+  - consistent
+  - console-program
+  - const-math-ghc-plugin
+  - constrained-categories
+  - constrained-category
+  - constrained-dynamic
+  - constrained-monads
+  - ConstraintKinds
+  - constraints-emerge
+  - constr-eq
+  - constructive-algebra
+  - consul-haskell
+  - Consumer
+  - containers-benchmark
+  - containers-verified
+  - ContArrow
+  - content-store
+  - ContextAlgebra
+  - context-free-grammar
+  - context-stack
+  - contiguous-checked
+  - continue
+  - Contract
+  - control-iso
+  - control-monad-failure
+  - control-monad-failure-mtl
+  - Control-Monad-ST2
+  - contstuff-monads-tf
+  - contstuff-transformers
+  - convert-annotation
+  - copilot-sbv
+  - copr
+  - COrdering
+  - core
+  - corebot-bliki
+  - CoreDump
+  - CoreErlang
+  - core-haskell
+  - Coroutine
+  - coroutine-object
+  - CouchDB
+  - couchdb-conduit
+  - couch-hs
+  - counter
+  - courier
+  - court
+  - coverage
+  - cparsing
+  - cpio-conduit
+  - cplusplus-th
+  - cpuperf
+  - cpython
+  - cql-io
+  - cqrs-core
+  - cr
+  - crack
+  - Craft3e
+  - craftwerk
+  - crawlchain
+  - crc
+  - crc16
+  - crdt-event-fold
+  - creatur
+  - credential-store
+  - critbit
+  - criterion-compare
+  - criterion-plus
+  - criterion-to-html
+  - criu-rpc-types
+  - crjdt-haskell
+  - crocodile
+  - cruncher-types
+  - crunghc
+  - crypto-cipher-benchmarks
+  - crypto-classical
+  - cryptocompare
+  - cryptoconditions
+  - cryptoids-types
+  - crypto-keys-ssh
+  - crypto-multihash
+  - crypto-pubkey-openssh
+  - crypto-random-effect
+  - crypto-simple
+  - cryptsy-api
+  - cse-ghc-plugin
+  - CSPM-FiringRules
+  - CSPM-Frontend
+  - cspretty
+  - css
+  - css-easings
+  - css-selectors
+  - csv-nptools
+  - ctemplate
+  - ctkl
+  - cubical
+  - cuboid
+  - cuckoo
+  - curl-runnings
+  - currency-convert
+  - CurryDB
+  - curryer-rpc
+  - curry-frontend
+  - curves
+  - custom-prelude
+  - CV
+  - d3js
+  - dag
+  - DAG-Tournament
+  - damnpacket
+  - danibot
+  - dao
+  - Dao
+  - darcs2dot
+  - darcs-buildpackage
+  - darcs-cabalized
+  - darcs-graph
+  - darcs-monitor
+  - darkplaces-rcon
+  - darkplaces-text
+  - data-accessor-monads-tf
+  - data-aviary
+  - data-base
+  - database-id-groundhog
+  - database-study
+  - data-check
+  - data-combinator-gen
+  - data-concurrent-queue
+  - data-construction
+  - data-dispersal
+  - data-diverse-lens
+  - datadog
+  - data-easy
+  - data-embed
+  - data-emoticons
+  - data-filepath
+  - data-fin
+  - data-fin-simple
+  - datafix
+  - data-flagset
+  - data-ivar
+  - data-kiln
+  - data-lens
+  - datalog
+  - data-map-multikey
+  - data-nat
+  - data-object
+  - datapacker
+  - data-pprint
+  - data-quotientref
+  - data-reify-cse
+  - data-repr
+  - data-rev
+  - data-rope
+  - Data-Rope
+  - data-r-tree
+  - data-size
+  - data-spacepart
+  - data-standards
+  - data-store
+  - data-stringmap
+  - data-sword
+  - DataTreeView
+  - data-type
+  - data-util
+  - data-validation
+  - data-variant
+  - DataVersion
+  - dates
+  - datetime
+  - datetime-sb
+  - dawdle
+  - dawg
+  - dbcleaner
+  - dbf
+  - DBFunctor
+  - DBlimited
+  - dbm
+  - dbmigrations-mysql
+  - dbmigrations-postgresql
+  - dbmigrations-sqlite
+  - d-bus
+  - DBus
+  - dbus-core
+  - dbus-qq
+  - dclabel
+  - dclabel-eci11
+  - dcpu16
+  - ddc-base
+  - ddc-code
+  - dead-code-detection
+  - Deadpan-DDP
+  - dead-simple-json
+  - debug-me
+  - debug-tracy
+  - decepticons
+  - decimal-literals
+  - DecisionTree
+  - decoder-conduit
+  - deepcontrol
+  - DeepDarkFantasy
+  - deepseq-bounded
+  - deepseq-magic
+  - deepseq-th
+  - deep-transformations
+  - deka
+  - Delta-Lambda
+  - delude
+  - demarcate
+  - denominate
+  - dense-int-set
+  - dependent-hashmap
+  - dependent-monoidal-map
+  - depends
+  - dep-t
+  - deptrack-core
+  - derangement
+  - derivation-trees
+  - derive
+  - derive-enumerable
+  - derive-gadt
+  - derive-monoid
+  - derive-trie
+  - derp-lib
+  - describe
+  - descript-lang
+  - deterministic-game-engine
+  - deunicode
+  - devil
+  - Dflow
+  - dfsbuild
+  - dgim
+  - dgs
+  - dhall-check
+  - dhall-fly
+  - dhall-text
+  - dhall-to-cabal
+  - dhrun
+  - dia-base
+  - diagrams-boolean
+  - diagrams-builder
+  - diagrams-canvas
+  - diagrams-graphviz
+  - diagrams-gtk
+  - diagrams-pdf
+  - diagrams-qrcode
+  - diagrams-tikz
+  - dib
+  - dice2tex
+  - dicom
+  - dictionaries
+  - dictparser
+  - diet
+  - diff
+  - diffcabal
+  - differential
+  - DifferentialEvolution
+  - diffmap
+  - difftodo
+  - digestive-bootstrap
+  - digestive-foundation-lucid
+  - digestive-functors-aeson
+  - digestive-functors-happstack
+  - digest-pure
+  - DigitalOcean
+  - digitalocean-kzs
+  - digits
+  - DimensionalHash
+  - dimensional-tf
+  - diohsc
+  - diophantine
+  - direct-binary-files
+  - directed-cubical
+  - direct-fastcgi
+  - direct-http
+  - directory-contents
+  - direct-plugins
+  - direct-rocksdb
+  - direm
+  - discord-haskell
+  - discordian-calendar
+  - discord-types
+  - discrete
+  - DiscussionSupportSystem
+  - Dish
+  - disjoint-containers
+  - disjoint-set
+  - disjoint-set-stateful
+  - Dist
+  - distance
+  - distributed-fork-aws-lambda
+  - distributed-process
+  - distribution
+  - dist-upload
+  - djembe
+  - djinn-th
+  - dmcc
+  - dmenu
+  - dnscache
+  - dnsrbl
+  - dnssd
+  - dobutok
+  - doccheck
+  - docidx
+  - docker
+  - docker-build-cacher
+  - dockercook
+  - dockerfile-creator
+  - docopt
+  - docrecords
+  - doctest-discover-configurator
+  - doctest-prop
+  - docusign-example
+  - docvim
+  - domplate
+  - dotfs
+  - dot-linker
+  - doublify-toolkit
+  - downloader
+  - dozenal
+  - dozens
+  - dph-base
+  - dpkg
+  - DPM
+  - dpor
+  - dragen
+  - drawille
+  - drClickOn
+  - dresdner-verkehrsbetriebe
+  - DrIFT
+  - DrIFT-cabalized
+  - drifter-postgresql
+  - drmaa
+  - drone
+  - DSA
+  - dsc
+  - ds-kanren
+  - dsmc
+  - dson
+  - dson-parsec
+  - dstring
+  - DTC
+  - dtd-text
+  - dtw
+  - dualizer
+  - duet
+  - dump-core
+  - dunai-core
+  - Dung
+  - duplo
+  - dura
+  - Dust-crypto
+  - dvault
+  - dvdread
+  - dvi-processing
+  - dwarf
+  - dwarfadt
+  - dyckword
+  - dyepack
+  - dynamic-graphs
+  - dynamic-mvector
+  - dynamic-object
+  - dynamic-pp
+  - DynamicTimeWarp
+  - dynamodb-simple
+  - dynloader
+  - DysFRP
+  - dywapitchtrack
+  - dzen-dhall
+  - dzen-utils
+  - each
+  - earclipper
+  - early
+  - easy-api
+  - easy-bitcoin
+  - easyjson
+  - easyplot
+  - easytest
+  - ebeats
+  - ebnf-bff
+  - eccrypto
+  - ecma262
+  - ecu
+  - eddie
+  - ede
+  - edenmodules
+  - edis
+  - edit
+  - edit-lenses
+  - editline
+  - effect-handlers
+  - effect-monad
+  - effect-stack
+  - effin
+  - egison-pattern-src
+  - ehaskell
+  - ehs
+  - eibd-client-simple
+  - eigen
+  - Eight-Ball-Pool-Hack-Cheats
+  - eio
+  - EitherT
+  - either-unwrap
+  - ejdb2-binding
+  - ekg-bosun
+  - ekg-carbon
+  - ekg-elastic
+  - ekg-elasticsearch
+  - ekg-log
+  - ekg-push
+  - ekg-rrd
+  - ekg-wai
+  - elevator
+  - elision
+  - elm-street
+  - elm-websocket
+  - emacs-module
+  - emailaddress
+  - email-header
+  - email-postmark
+  - embla
+  - emgm
+  - Emping
+  - Empty
+  - empty-monad
+  - enchant
+  - encoding
+  - encoding-io
+  - encryptable
+  - engine-io-snap
+  - engine-io-wai
+  - engine-io-yesod
+  - entwine
+  - EnumContainers
+  - enumerator
+  - enumfun
+  - EnumMap
+  - enummapmap
+  - enum-utf8
+  - env-parser
+  - envstatus
+  - epanet-haskell
+  - epass
+  - epic
+  - epoll
+  - eprocess
+  - epubname
+  - Eq
+  - EqualitySolver
+  - equational-reasoning-induction
+  - equeue
+  - erlang
+  - erlang-ffi
+  - eros
+  - errata
+  - error-context
+  - error-continuations
+  - error-list
+  - error-loc
+  - error-util
+  - ersaconcat
+  - ersatz
+  - ert
+  - escape-artist
+  - escoger
+  - espial
+  - ess
+  - estimators
+  - EstProgress
+  - Etage
+  - eternal
+  - ethereum-rlp
+  - euphoria
+  - eurofxref
+  - evdev
+  - eve-cli
+  - event
+  - event-driven
+  - eventful-dynamodb
+  - eventful-sql-common
+  - eventlog2html
+  - eventloop
+  - eventstore
+  - ewe
+  - exact-cover
+  - exact-real-positional
+  - except-exceptions
+  - exceptional
+  - exceptionfree-readfile
+  - exchangerates
+  - execs
+  - executor
+  - exh
+  - exherbo-cabal
+  - exif
+  - exigo-schema
+  - exinst-deepseq
+  - exinst-hashable
+  - exists
+  - exitcode
+  - exp-cache
+  - exp-extended
+  - explain
+  - explicit-constraint-lens
+  - explicit-determinant
+  - explicit-iomodes
+  - exposed-containers
+  - expression-parser
+  - expressions
+  - expresso
+  - extcore
+  - extended-categories
+  - extensible-effects-concurrent
+  - extensible-skeleton
+  - external-sort
+  - Extra
+  - extractelf
+  - extralife
+  - ez3
+  - ez-couch
+  - Facebook-Password-Hacker-Online-Latest-Version
+  - faceted
+  - facts
+  - fadno-braids
+  - failable-list
+  - failure-detector
+  - fakedata
+  - fake-type
+  - faktory
+  - f-algebra-gen
+  - fastbayes
+  - fast-combinatorics
+  - fastedit
+  - fastly
+  - fast-nats
+  - fastpbkdf2
+  - FastPush
+  - FastxPipe
+  - fathead-util
+  - fay-builder
+  - fay-hsx
+  - fay-simplejson
+  - fbmessenger-api
+  - fb-persistent
+  - fca
+  - fcache
+  - fcg
+  - fckeditor
+  - fclabels-monadlib
+  - fcm-client
+  - fdo-trash
+  - feature-flipper
+  - fedora-packages
+  - feed-cli
+  - feed-collect
+  - feed-crawl
+  - fenfire
+  - fernet
+  - FerryCore
+  - Feval
+  - fez-conf
+  - ffeed
+  - fficxx
+  - ffunctor
+  - fgl-extras-decompositions
+  - fibon
+  - fieldwise
+  - fig
+  - file-collection
+  - file-command-qq
+  - filediff
+  - file-embed-poly
+  - file-location
+  - FileManip
+  - FileManipCompat
+  - fileneglect
+  - Files
+  - FileSystem
+  - filesystem-abstractions
+  - filesystem-conduit
+  - filesystem-trees
+  - fillit
+  - final-pretty-printer
+  - Finance-Quote-Yahoo
+  - find-conduit
+  - find-source-files
+  - fingertree-psqueue
+  - fingertree-tf
+  - finitary-derive
+  - firefly-example
+  - first-and-last
+  - first-class-instances
+  - fit
+  - fitsio
+  - fits-parse
+  - fixed-point
+  - fixedprec
+  - fixed-precision
+  - fixed-storable-array
+  - fixed-timestep
+  - fixed-vector-binary
+  - fixed-vector-cborg
+  - fixed-vector-cereal
+  - fixed-width
+  - fixer
+  - fixfile
+  - fixie
+  - fix-symbols-gitit
+  - fizzbuzz
+  - fizzbuzz-as-a-service
+  - flac
+  - flaccuraterip
+  - flamethrower
+  - flamingra
+  - flat-maybe
+  - flay
+  - flexible-time
+  - flickr
+  - flight-kml
+  - flink-statefulfun
+  - float-binstring
+  - floating-bits
+  - flowdock
+  - flowdock-rest
+  - flow-er
+  - flowlocks-framework
+  - flp
+  - fltkhs
+  - fluffy-parser
+  - fluidsynth
+  - flux-monoid
+  - fmark
+  - FModExRaw
+  - fn-extra
+  - foldl-incremental
+  - foldl-statistics
+  - foldl-transduce
+  - folds-common
+  - follow
+  - font-opengl-basic4x6
+  - forbidden-fruit
+  - fordo
+  - forecast-io
+  - foreign-var
+  - forest
+  - forest-fire
+  - forex2ledger
+  - for-free
+  - forger
+  - ForkableT
+  - formatn
+  - formattable
+  - formura
+  - ForSyDe
+  - forsyde-deep
+  - Fortnite-Hack-Cheats-Free-V-Bucks-Generator
+  - fortran-src
+  - fortytwo
+  - foscam-filename
+  - fpco-api
+  - FPretty
+  - fptest
+  - Fractaler
+  - fractals
+  - fraction
+  - frag
+  - Frames-map-reduce
+  - franchise
+  - fraxl
+  - freddy
+  - free-concurrent
+  - free-game
+  - f-ree-hack-cheats-free-v-bucks-generator
+  - free-http
+  - free-operational
+  - freer-effects
+  - freer-simple-catching
+  - freer-simple-http
+  - freer-simple-profiling
+  - freer-simple-random
+  - freer-simple-time
+  - freesect
+  - freesound
+  - free-theorems
+  - FreeTypeGL
+  - freetype-simple
+  - free-v-bucks-generator-no-survey
+  - free-v-bucks-generator-ps4-no-survey
+  - freq
+  - fresh
+  - friday-devil
+  - friday-scale-dct
+  - friendly
+  - frown
+  - frp-arduino
+  - frpnow
+  - fs-events
+  - fsh-csv
+  - fsmActions
+  - fst
+  - fsutils
+  - fswait
+  - fswatch
+  - ft-generator
+  - FTGL-bytestring
+  - ftp-client
+  - ftp-conduit
+  - ftphs
+  - full-sessions
+  - funbot-client
+  - funcons-values
+  - function-instances-algebra
+  - functor
+  - functor-combinators
+  - functor-friends
+  - functor-infix
+  - functorm
+  - functor-products
+  - functor-utils
+  - funflow
+  - Fungi
+  - funpat
+  - funspection
+  - fused-effects-exceptions
+  - fused-effects-resumable
+  - fusion
+  - futun
+  - future
+  - fuzzy-time-gen
+  - fuzzy-timings
+  - fwgl
+  - g4ip
+  - galois-field
+  - gameclock
+  - game-probability
+  - gamgee
+  - gamma
+  - Ganymede
+  - garepinoh
+  - gargoyle-postgresql-nix
+  - gas
+  - gather
+  - gc-monitoring-wai
+  - gconf
+  - gdiff-th
+  - gegl
+  - gelatin
+  - gemstone
+  - gencheck
+  - gender
+  - genders
+  - general-prelude
+  - GeneralTicTacToe
+  - generator
+  - generators
+  - generic-accessors
+  - generic-binary
+  - generic-church
+  - generic-enum
+  - generic-enumeration
+  - generic-labels
+  - generic-lens-labels
+  - generic-lucid-scaffold
+  - generic-maybe
+  - generic-override-aeson
+  - generic-pretty
+  - genericserialize
+  - generic-server
+  - generics-mrsop
+  - generic-storable
+  - generic-tree
+  - generic-trie
+  - generic-xml
+  - generic-xmlpickler
+  - genetics
+  - gen-imports
+  - geniplate
+  - gen-passwd
+  - genprog
+  - gentlemark
+  - genvalidity-persistent
+  - GeocoderOpenCage
+  - geodetics
+  - geodetic-types
+  - geojson-types
+  - geom2d
+  - GeomPredicates-SSE
+  - geo-resolver
+  - geos
+  - Get
+  - getflag
+  - GGg
+  - ggtsTC
+  - ghc-clippy-plugin
+  - ghc-core-smallstep
+  - ghc-datasize
+  - ghc-dump-tree
+  - ghc-dup
+  - ghc-events-analyze
+  - ghc-events-parallel
+  - ghc-generic-instances
+  - ghci-diagrams
+  - ghci-haskeline
+  - ghci-history-parser
+  - ghci-lib
+  - ghci-ng
+  - ghcjs-dom-jsffi
+  - ghcjs-fetch
+  - ghcjs-promise
+  - ghcjs-xhr
+  - ghc-justdoit
+  - ghclive
+  - ghc-man-completion
+  - ghc-parmake
+  - ghc-pkg-autofix
+  - ghc-pkg-lib
+  - ghc-plugs-out
+  - ghcprofview
+  - ghc-proofs
+  - ghc-session
+  - ghc-simple
+  - ghc-srcspan-plugin
+  - ghc-syb
+  - ghc-syb-utils
+  - ghc-tags
+  - ghc-tags-core
+  - ghc-time-alloc-prof
+  - ghc-usage
+  - gh-labeler
+  - giak
+  - Gifcurry
+  - gi-graphene
+  - gi-gsttag
+  - gi-gtkosxapplication
+  - gi-gtksheet
+  - gi-handy
+  - ginsu
+  - gipeda
+  - giphy-api
+  - gist
+  - GiST
+  - git
+  - git-all
+  - git-checklist
+  - git-config
+  - git-cuk
+  - git-date
+  - gitdo
+  - github-backup
+  - github-data
+  - github-tools
+  - github-utils
+  - github-webhook-handler
+  - githud
+  - gitignore
+  - git-jump
+  - gitlab-api
+  - gitlib-cmdline
+  - gitlib-utils
+  - git-repair
+  - git-sanity
+  - gitson
+  - gitter
+  - git-vogue
+  - gi-vips
+  - gi-wnck
+  - glade
+  - glapp
+  - Gleam
+  - GLFW
+  - GLFW-b-demo
+  - gli
+  - glider-nlp
+  - GLMatrix
+  - global-variables
+  - glob-posix
+  - GlomeTrace
+  - gloss-banana
+  - gloss-export
+  - gloss-game
+  - glpk-headers
+  - gltf-codec
+  - glue
+  - g-npm
+  - goa
+  - goal-core
+  - gochan
+  - godot-haskell
+  - gofer-prelude
+  - gooey
+  - google-cloud
+  - GoogleCodeJam
+  - google-html5-slide
+  - google-oauth2
+  - google-oauth2-easy
+  - googlepolyline
+  - google-search
+  - google-translate
+  - gopherbot
+  - gopro-plus
+  - gore-and-ash
+  - GotoT-transformers
+  - gpah
+  - GPipe
+  - GPipe-Core
+  - gpx-conduit
+  - grab
+  - graceful
+  - grafana
+  - Grafos
+  - grakn
+  - grapefruit-frp
+  - Graph500
+  - Graphalyze
+  - graphbuilder
+  - graphene
+  - graphics-drawingcombinators
+  - graphics-formats-collada
+  - graph-matchings
+  - graphmod-plugin
+  - graphql-api
+  - graphql-utils
+  - graphql-w-persistent
+  - graph-rewriting
+  - graph-serialize
+  - graphted
+  - graphula-core
+  - graph-utils
+  - graql
+  - grasp
+  - gray-code
+  - greencard
+  - greg-client
+  - gremlin-haskell
+  - Grempa
+  - grenade
+  - grm
+  - groot
+  - gross
+  - GroteTrap
+  - groundhog-converters
+  - groundhog-mysql
+  - grouped-list
+  - group-theory
+  - group-with
+  - growler
+  - grpc-api-etcd
+  - gsl-random
+  - gstreamer
+  - GTALib
+  - gtfs-realtime
+  - gtk2hs-hello
+  - gtk2hs-rpn
+  - gtk3-mac-integration
+  - gtkglext
+  - gtksourceview2
+  - gtksourceview3
+  - gtk-toy
+  - gulcii
+  - gw
+  - gyah-bin
+  - gym-http-api
+  - h2048
+  - h2c
+  - haar
+  - HABQT
+  - hack2-handler-warp
+  - hackage2hwn
+  - hackage-api
+  - hackage-diff
+  - hackage-mirror
+  - hackage-processing
+  - hackage-proxy
+  - hackager
+  - hackage-repo-tool
+  - hackage-whatsnew
+  - hackernews
+  - hack-frontend-happstack
+  - hack-handler-cgi
+  - hack-handler-happstack
+  - hack-handler-kibro
+  - HackMail
+  - hackport
+  - hactor
+  - hactors
+  - haddock-api
+  - haddock-cheatsheet
+  - haddock-leksah
+  - haddock-test
+  - hadoop-formats
+  - hadoop-rpc
+  - hafar
+  - Haggressive
+  - hahp
+  - haiji
+  - hailgun-send
+  - hairy
+  - hakaru
+  - hakismet
+  - hakka
+  - hako
+  - hakyll-blaze-templates
+  - hakyll-contrib
+  - hakyll-contrib-csv
+  - hakyll-contrib-elm
+  - hakyll-contrib-links
+  - hakyll-dhall
+  - hakyll-dir-list
+  - hakyll-process
+  - hakyll-R
+  - hakyll-series
+  - hakyll-shortcode
+  - hakyll-shortcut-links
+  - HaLeX
+  - halfs
+  - halipeto
+  - halive
+  - halma
+  - halves
+  - hampp
+  - hamsql
+  - hamtmap
+  - hanabi-dealer
+  - handa-gdata
+  - handle-like
+  - HandlerSocketClient
+  - handsy
+  - Hangman
+  - hannahci
+  - hans
+  - hanspell
+  - haphviz
+  - hapistrano
+  - happindicator
+  - happindicator3
+  - happlets
+  - happraise
+  - happstack
+  - happstack-fay-ajax
+  - happstack-foundation
+  - happstack-hamlet
+  - happstack-heist
+  - happstack-hstringtemplate
+  - happstack-lite
+  - happstack-monad-peel
+  - happstack-server-tls-cryptonite
+  - happstack-util
+  - HAppS-Util
+  - happybara
+  - happybara-webkit-server
+  - happy-hour
+  - HappyTree
+  - hapstone
+  - HaPy
+  - haquery
+  - harchive
+  - haroonga
+  - harpy
+  - harvest-api
+  - has
+  - hasbolt-extras
+  - HasCacBDD
+  - hascard
+  - hascas
+  - Haschoo
+  - hash
+  - hashable-extras
+  - hashable-generics
+  - hashable-orphans
+  - hashabler
+  - hashed-storage
+  - hashring
+  - hashtables-plus
+  - hasim
+  - hask
+  - haskbot-core
+  - haskeline-class
+  - haskelisp
+  - haskell2010
+  - haskell2020
+  - haskell98
+  - haskell98libraries
+  - HaskellAnalysisProgram
+  - haskell-awk
+  - haskell-bitmex-rest
+  - haskell-brainfuck
+  - haskell-cnc
+  - haskell-coffee
+  - haskell-compression
+  - haskell-conll
+  - haskell-course-preludes
+  - haskelldb
+  - haskelldb-wx
+  - haskell-disque
+  - haskell-formatter
+  - haskell-generate
+  - haskell-go-checkers
+  - haskell-holes-th
+  - haskell-igraph
+  - haskell-in-space
+  - haskell-kubernetes
+  - HaskellLM
+  - haskell-lsp-client
+  - haskell-ml
+  - haskell-mpfr
+  - haskell-mpi
+  - haskell-names
+  - haskell-neo4j-client
+  - HaskellNet-SSL
+  - HaskellNN
+  - Haskelloids
+  - haskell-openflow
+  - haskell-overridez
+  - haskell-packages
+  - haskell-player
+  - haskell-plot
+  - haskell-postal
+  - haskell-read-editor
+  - haskell-rules
+  - haskellscrabble
+  - haskellscript
+  - haskell-snake
+  - haskell-spacegoo
+  - haskell-src-exts-prisms
+  - haskell-src-exts-qq
+  - haskell-src-exts-sc
+  - haskell-src-match
+  - haskell-src-meta-mwotton
+  - haskell-stack-trace-plugin
+  - HaskellTorrent
+  - HaskellTutorials
+  - haskell-type-exts
+  - haskell-typescript
+  - haskell-tyrant
+  - haskelzinc
+  - haskeme
+  - haskey
+  - haskheap
+  - haskhol-core
+  - hasklepias
+  - haskmon
+  - haskoin
+  - haskoin-util
+  - haskore
+  - hasktorch-codegen
+  - hasktorch-ffi-th
+  - hasktorch-signatures-partial
+  - hasktorch-signatures-support
+  - haskus-binary
+  - haskyapi
+  - hasmin
+  - hasqlator-mysql
+  - hasql-backend
+  - hasql-class
+  - hasql-cursor-transaction
+  - hasql-dynamic-statements
+  - hasql-generic
+  - hasql-simple
+  - hastache
+  - haste
+  - haste-prim
+  - hatex-guide
+  - hats
+  - hatt
+  - haven
+  - haverer
+  - hax
+  - haxl-amazonka
+  - haxl-facebook
+  - haxparse
+  - haxr-th
+  - hayland
+  - hayoo-cli
+  - hBDD-CMUBDD
+  - hBDD-CUDD
+  - hbeanstalk
+  - hbeat
+  - hblas
+  - hblock
+  - h-booru
+  - hburg
+  - hcad
+  - HCard
+  - hcc
+  - hcg-minus
+  - hchesslib
+  - hcltest
+  - hcoap
+  - hcom
+  - hcount
+  - hcron
+  - hCsound
+  - hcube
+  - hdaemonize-buildfix
+  - hdbc-aeson
+  - HDBC-mysql
+  - hdbc-postgresql-hstore
+  - HDBC-postgresql-hstore
+  - hdevtools
+  - hDFA
+  - hdigest
+  - hdis86
+  - hdiscount
+  - hdm
+  - hdo
+  - hdph-closure
+  - hdr-histogram
+  - HDRUtils
+  - headergen
+  - heap-console
+  - heapsort
+  - heart-core
+  - hebrew-time
+  - heckle
+  - hedgehog-checkers
+  - hedgehog-generic
+  - hedgehog-golden
+  - hedgehog-servant
+  - hedis-config
+  - hedis-namespace
+  - hedis-simple
+  - hedis-tags
+  - hedra
+  - hein
+  - heist-async
+  - helisp
+  - helix
+  - hell
+  - help-esb
+  - hemkay
+  - HERA
+  - herbalizer
+  - HerbiePlugin
+  - heredocs
+  - her-lexer
+  - Hermes
+  - herms
+  - hetero-dict
+  - heterogeneous-list-literals
+  - hetris
+  - heukarya
+  - hevm
+  - HExcel
+  - hexchat
+  - hexif
+  - hexmino
+  - hexml-lens
+  - hexpat-pickle-generic
+  - hexpr
+  - hexpress
+  - hexquote
+  - hexstring
+  - hext
+  - heyefi
+  - hF2
+  - hfann
+  - HFitUI
+  - hfmt
+  - hfoil
+  - hfov
+  - hfractal
+  - HFrequencyQueue
+  - hfusion
+  - hg-buildpackage
+  - hgdbmi
+  - HGE2D
+  - hgearman
+  - hGelf
+  - hgeometric
+  - hgeometry-ipe
+  - hgettext
+  - hgis
+  - hgom
+  - hgopher
+  - h-gpgme
+  - HGraphStorage
+  - hgrep
+  - hgrib
+  - hharp
+  - HHDL
+  - hhwloc
+  - hi
+  - hi3status
+  - hichi
+  - hidden-char
+  - hid-examples
+  - hie-core
+  - hieraclus
+  - hierarchical-env
+  - hierarchical-exceptions
+  - hierarchy
+  - hiernotify
+  - higgledy
+  - higherorder
+  - highjson
+  - highlight-versions
+  - highWaterMark
+  - himg
+  - hindley-milner
+  - hinquire
+  - hinstaller
+  - hinter
+  - hinterface
+  - hipchat-hs
+  - hipe
+  - Hipmunk
+  - hipsql-api
+  - hircules
+  - Hish
+  - hissmetrics
+  - historian
+  - hist-pl-types
+  - hit-on
+  - HJavaScript
+  - hjcase
+  - hjs
+  - hjsonpointer
+  - hjson-query
+  - hjugement-protocol
+  - HJVM
+  - hkd-delta
+  - hkd-lens
+  - hkt
+  - hlbfgsb
+  - hledger-chart
+  - hledger-flow
+  - hledger-irr
+  - hledger-vty
+  - hlibBladeRF
+  - hlibev
+  - hlibfam
+  - HList
+  - hlivy
+  - hlogger
+  - HLogger
+  - hlongurl
+  - hlrdb-core
+  - hls-exactprint-utils
+  - hls-floskell-plugin
+  - hls-fourmolu-plugin
+  - hls-pragmas-plugin
+  - hlwm
+  - hmarkup
+  - hmatrix-banded
+  - hmatrix-mmap
+  - hmatrix-nipals
+  - hmatrix-sparse
+  - hmatrix-static
+  - hmatrix-sundials
+  - hmatrix-svdlibc
+  - hmatrix-syntax
+  - hmatrix-tests
+  - hmenu
+  - hmk
+  - hmm
+  - HMM
+  - hmm-hmatrix
+  - hMollom
+  - hmp3
+  - Hmpf
+  - hmumps
+  - hnetcdf
+  - hnn
+  - hoauth
+  - hobbes
+  - hocilib
+  - hocker
+  - hodatime
+  - HODE
+  - hoe
+  - hog
+  - hogg
+  - hois
+  - hol
+  - hold-em
+  - hole
+  - holmes
+  - homeomorphic
+  - homoiconic
+  - homplexity
+  - honi
+  - hoobuddy
+  - hood2
+  - hoodle-types
+  - hood-off
+  - hoogle-index
+  - hooks-dir
+  - hoop
+  - hoopl
+  - hopencc
+  - hopencl
+  - HOpenCV
+  - hopfield
+  - hops
+  - ho-rewriting
+  - horizon
+  - horname
+  - hosc-json
+  - hosts-server
+  - hothasktags
+  - hotswap
+  - hourglass-fuzzy-parsing
+  - houseman
+  - hp2any-core
+  - hpack-convert
+  - hpapi
+  - hpasteit
+  - HPath
+  - hpc-coveralls
+  - hpg
+  - HPi
+  - hpio
+  - hplaylist
+  - hpodder
+  - hpqtypes
+  - hprotoc
+  - hps-kmeans
+  - hPushover
+  - hpygments
+  - hpylos
+  - hpyrg
+  - hquantlib-time
+  - hR
+  - hreq-core
+  - h-reversi
+  - hricket
+  - Hricket
+  - hs2bf
+  - hs2ps
+  - hsaml2
+  - hsay
+  - hsbc
+  - hsbencher
+  - hsc3
+  - hsc3-rw
+  - hsc3-sf
+  - hscaffold
+  - hscamwire
+  - hs-carbon-examples
+  - hscd
+  - hs-cdb
+  - hsclock
+  - hScraper
+  - hscuid
+  - hs-di
+  - hsdif
+  - hsdip
+  - hsdns-cache
+  - hs-dotnet
+  - hsenv
+  - HSet
+  - hs-excelx
+  - hsfcsh
+  - HSFFIG
+  - hsfilt
+  - hs-fltk
+  - hsforce
+  - hs-gizapp
+  - hsgnutls
+  - hsgnutls-yj
+  - hsgsom
+  - HsHaruPDF
+  - HsHTSLib
+  - HsHyperEstraier
+  - hsI2C
+  - hSimpleDB
+  - hsimport
+  - hsinspect-lsp
+  - hs-java
+  - hs-json-rpc
+  - HsJudy
+  - hskeleton
+  - hslackbuilder
+  - hslibsvm
+  - hslinks
+  - hslogger-reader
+  - hslogger-template
+  - hs-logo
+  - hsluv-haskell
+  - hsmagick
+  - hsmodetweaks
+  - Hsmtlib
+  - hsmtpclient
+  - hs-nombre-generator
+  - hsns
+  - hsnsq
+  - hsntp
+  - hsoptions
+  - hsoz
+  - hsparql
+  - hs-pattrans
+  - hsp-cgi
+  - hspear
+  - hspec2
+  - hspec-expectations-match
+  - hspec-experimental
+  - hspec-jenkins
+  - hspec-monad-control
+  - hspec-snap
+  - hspec-structured-formatter
+  - hspec-webdriver
+  - HsPerl5
+  - hs-pgms
+  - hspkcs11
+  - hs-pkg-config
+  - hspread
+  - hspresent
+  - hspretty
+  - hsql
+  - hs-re
+  - hsrelp
+  - hs-rqlite
+  - hs-rs-notify
+  - hs-scrape
+  - hsseccomp
+  - hs-snowtify
+  - hs-speedscope
+  - hsSqlite3
+  - hssqlppp
+  - HsSVN
+  - hs-tags
+  - hstats
+  - hstatsd
+  - hstest
+  - hstidy
+  - hs-twitter
+  - hs-twitterarchiver
+  - hstyle
+  - hsudoku
+  - hs-vcard
+  - hs-watchman
+  - hsx
+  - hsXenCtrl
+  - hsyscall
+  - hsyslog-tcp
+  - hszephyr
+  - hTalos
+  - htar
+  - htdp-image
+  - hTensor
+  - htestu
+  - HTicTacToe
+  - htiled
+  - htlset
+  - html-charset
+  - html-kure
+  - html-rules
+  - html-tokenizer
+  - htsn
+  - htsn-import
+  - htssets
+  - http2-client
+  - http2-grpc-proto-lens
+  - http-attoparsec
+  - http-client-lens
+  - http-client-request-modifiers
+  - http-client-session
+  - http-client-streams
+  - http-client-websockets
+  - http-conduit-browser
+  - http-conduit-downloader
+  - http-directory
+  - http-dispatch
+  - http-grammar
+  - http-kinder
+  - http-listen
+  - http-monad
+  - http-pony
+  - http-pony-serve-wai
+  - http-proxy
+  - http-querystring
+  - http-response-decoder
+  - http-server
+  - http-shed
+  - http-wget
+  - htune
+  - htvm
+  - htzaar
+  - huck
+  - HueAPI
+  - huff
+  - huffman
+  - HulkImport
+  - human-parse
+  - human-text
+  - humble-prelude
+  - hums
+  - hunch
+  - HUnit-Diff
+  - hunit-rematch
+  - hunspell-hs
+  - hup
+  - hurriyet
+  - hutton
+  - huttons-razor
+  - hVOIDP
+  - hwall-auth-iitk
+  - hw-ci-assist
+  - hweblib
+  - hwhile
+  - hw-json-simd
+  - hworker
+  - hw-simd
+  - hwsl2
+  - hx
+  - HXQ
+  - hxt-cache
+  - hxt-pickle-utils
+  - hyakko
+  - hydra-hs
+  - hydra-print
+  - hydrogen
+  - hydrogen-multimap
+  - hylide
+  - hylolib
+  - hyperdrive
+  - hyperfunctions
+  - hyperion
+  - hyperloglogplus
+  - hypher
+  - hzulip
+  - i18n
+  - I1M
+  - i3ipc
+  - iap-verifier
+  - iban
+  - ib-api
+  - ical
+  - icepeak
+  - IcoGrid
+  - iconv-typed
+  - ideas
+  - idempotent
+  - identifiers
+  - idiii
+  - idna2008
+  - IDynamic
+  - ieee-utils
+  - iexcloud
+  - ifcxt
+  - IFS
+  - ig
+  - ige
+  - ignore
+  - igraph
+  - ihaskell-parsec
+  - ihaskell-widgets
+  - illuminate
+  - imagepaste
+  - imapget
+  - imgur
+  - imj-prelude
+  - immortal-worker
+  - imperative-edsl
+  - ImperativeHaskell
+  - impl
+  - implicit-logging
+  - implicit-params
+  - imports
+  - impossible
+  - imprint
+  - inchworm
+  - indentation-core
+  - index-core
+  - indextype
+  - indices
+  - infer-upstream
+  - infinity
+  - inf-interval
+  - infix
+  - inflist
+  - informative
+  - inilist
+  - ini-qq
+  - initialize
+  - inject-function
+  - inline-asm
+  - inserts
+  - instana-haskell-trace-sdk
+  - instance-map
+  - instant-generics
+  - instinct
+  - intcode
+  - integer-pure
+  - integreat
+  - intel-aes
+  - intensional-datatys
+  - interlude-l
+  - internetmarke
+  - intero
+  - interpol
+  - interpolatedstring-qq2
+  - interruptible
+  - interval
+  - IntFormats
+  - int-multimap
+  - intricacy
+  - introduction
+  - intro-prelude
+  - invert
+  - invertible-syntax
+  - io-capture
+  - io-choice
+  - ioctl
+  - IOR
+  - io-reactive
+  - iostring
+  - iothread
+  - iotransaction
+  - ip2location
+  - ip2proxy
+  - ipfs
+  - ipopt-hs
+  - ip-quoter
+  - iptables-helpers
+  - IPv6DB
+  - Irc
+  - irc-dcc
+  - irc-fun-types
+  - iridium
+  - iron-mq
+  - irt
+  - isdicom
+  - IsNull
+  - iso8601-duration
+  - isobmff
+  - isotope
+  - itcli
+  - itemfield
+  - iteratee
+  - iterIO
+  - it-has
+  - ivory
+  - ixdopp
+  - ixmonad
+  - ixshader
+  - j
+  - jack-bindings
+  - jackminimix
+  - JackMiniMix
+  - jacobi-roots
+  - jaeger-flamegraph
+  - jalla
+  - jarfind
+  - jarify
+  - jason
+  - java-bridge
+  - javascript-bridge
+  - javav
+  - Javav
+  - jbi
+  - jcdecaux-vls
+  - Jdh
+  - jdi
+  - jenga
+  - jenkinsPlugins2nix
+  - jespresso
+  - jinquantities
+  - jml-web-service
+  - jni
+  - jobqueue
+  - join-api
+  - joinlist
+  - jonathanscard
+  - jpeg
+  - jsaddle-hello
+  - jsaddle-wkwebview
+  - js-good-parts
+  - json2
+  - json-alt
+  - json-assertions
+  - json-ast-quickcheck
+  - json-builder
+  - json-encoder
+  - jsonextfilter
+  - json-extra
+  - json-fu
+  - json-litobj
+  - jsonnet
+  - json-pointer-hasql
+  - json-pointy
+  - json-python
+  - jsonresume
+  - json-rpc-client
+  - json-schema
+  - jsonschema-gen
+  - jsonsql
+  - json-tools
+  - json-tracer
+  - jsontsv
+  - jsonxlsx
+  - judge
+  - judy
+  - JuicyPixels-blp
+  - JuicyPixels-canvas
+  - JunkDB
+  - jupyter
+  - JustParse
+  - jvm-binary
+  - jvm-parser
+  - JYU-Utils
+  - kademlia
+  - kafka-client
+  - kafka-client-sync
+  - kalman
+  - Kalman
+  - kangaroo
+  - karps
+  - katip-kafka
+  - katip-raven
+  - katip-scalyr-scribe
+  - katip-syslog
+  - katt
+  - katydid
+  - kawaii
+  - kawhi
+  - kdesrc-build-extra
+  - kd-tree
+  - keccak
+  - keera-hails-reactivevalues
+  - kempe
+  - kerry
+  - Ketchup
+  - keter
+  - keyed
+  - keyring
+  - khph
+  - kickass-torrents-dump-parser
+  - kickchan
+  - kmonad
+  - kmp-dfa
+  - koellner-phonetic
+  - kontra-config
+  - kparams
+  - kqueue
+  - kraken
+  - krapsh
+  - Kriens
+  - krpc
+  - KSP
+  - ktx
+  - ktx-codec
+  - kuifje
+  - kure-your-boilerplate
+  - KyotoCabinet
+  - labeled-graph
+  - lagrangian
+  - lambda2js
+  - lambdaBase
+  - lambdabot-utils
+  - lambda-bridge
+  - lambda-canvas
+  - lambdacms-core
+  - lambdacube-ir
+  - Lambdajudge
+  - LambdaNet
+  - lambdatex
+  - lambda-toolbox
+  - lambdatwit
+  - Lambdaya
+  - lame
+  - lame-tester
+  - language-asn
+  - language-c-comments
+  - language-c-inline
+  - language-conf
+  - language-csharp
+  - language-dart
+  - language-dockerfile
+  - language-elm
+  - language-gcl
+  - language-go
+  - language-guess
+  - language-hcl
+  - language-java-classfile
+  - language-lua2
+  - language-lua-qq
+  - language-mixal
+  - language-objc
+  - language-ocaml
+  - language-openscad
+  - language-pig
+  - language-puppet
+  - language-rust
+  - language-sh
+  - language-sqlite
+  - language-sygus
+  - language-tl
+  - language-typescript
+  - language-vhdl
+  - language-webidl
+  - lapack-ffi
+  - Lastik
+  - latest-npm-version
+  - latex-formulae-image
+  - latex-svg-image
+  - LATS
+  - launchpad-control
+  - lawless-concurrent-machines
+  - layers
+  - layout
+  - layout-bootstrap
+  - lazyarray
+  - lazyboy
+  - lazy-priority-queue
+  - lazyset
+  - LazyVault
+  - l-bfgs-b
+  - lda
+  - ldif
+  - ld-intervals
+  - leaf
+  - leapseconds
+  - learn
+  - Learning
+  - learn-physics-examples
+  - leb128
+  - leetify
+  - lendingclub
+  - lens-filesystem
+  - lens-labels
+  - lens-prelude
+  - lens-process
+  - lensref
+  - lens-simple
+  - lens-text-encoding
+  - lens-th-rewrite
+  - lens-time
+  - lens-toml-parser
+  - lens-tutorial
+  - lens-typelevel
+  - Level0
+  - level-monad
+  - lfst
+  - lhc
+  - lhs2TeX-hl
+  - lhslatex
+  - LibClang
+  - libexpect
+  - libfuse3
+  - libGenI
+  - libhbb
+  - libinfluxdb
+  - libjenkins
+  - libjwt-typed
+  - libltdl
+  - libnix
+  - liboath-hs
+  - liboleg
+  - libpafe
+  - libpq
+  - librandomorg
+  - libssh2
+  - libsystemd-daemon
+  - libtagc
+  - libxls
+  - libxslt
+  - lie
+  - life-sync
+  - lifted-protolude
+  - lifter
+  - ligature
+  - lilypond
+  - Limit
+  - limp-cbc
+  - linda
+  - linden
+  - linear-algebra-cblas
+  - linear-base
+  - linear-code
+  - linear-maps
+  - linear-opengl
+  - linearscan
+  - linear-vect
+  - line-drawing
+  - lines-of-action
+  - linkedhashmap
+  - linked-list-with-iterator
+  - linklater
+  - linode
+  - linode-v4
+  - linux-blkid
+  - linux-cgroup
+  - linux-kmod
+  - linux-perf
+  - linx-gateway
+  - lio-simple
+  - lipsum-gen
+  - liquid
+  - liquidhaskell
+  - liquidhaskell-cabal
+  - Liquorice
+  - list-fusion-probe
+  - listlike-instances
+  - list-mux
+  - list-prompt
+  - list-remote-forwards
+  - ListT
+  - list-t-http-client
+  - list-t-text
+  - list-zip-def
+  - list-zipper
+  - liszt
+  - lit
+  - literals
+  - LiterateMarkdown
+  - ll-picosat
+  - llsd
+  - llvm-base
+  - llvm-ffi
+  - llvm-ffi-tools
+  - llvm-general-pure
+  - llvm-ht
+  - llvm-pkg-config
+  - llvm-pretty
+  - lmonad
+  - load-balancing
+  - load-font
+  - local-address
+  - located
+  - located-monad-logger
+  - loch
+  - log2json
+  - log4hs
+  - logentries
+  - logger
+  - logging-effect-extra-file
+  - logging-effect-extra-handler
+  - Logic
+  - logicst
+  - logict-state
+  - logplex-parse
+  - log-warper
+  - lojbanParser
+  - lojbanXiragan
+  - lol
+  - lol-calculus
+  - longboi
+  - lookup-tables
+  - loopbreaker
+  - looper
+  - loops
+  - loop-while
+  - loopy
+  - lord
+  - lorem
+  - loris
+  - loshadka
+  - lowgl
+  - lp-diagrams-svg
+  - LRU
+  - lscabal
+  - L-seed
+  - lsfrom
+  - ltext
+  - ltiv1p1
+  - ltk
+  - LTS
+  - lua-bc
+  - luautils
+  - luis-client
+  - luka
+  - luminance
+  - lushtags
+  - luthor
+  - lvmlib
+  - lxc
+  - lxd-client
+  - lye
+  - lz4-frame-conduit
+  - lzip
+  - lzma-streams
+  - lzo
+  - maam
+  - mac
+  - macaroon-shop
+  - machinecell
+  - machines-bytestring
+  - machines-directory
+  - machines-encoding
+  - machines-zlib
+  - macho
+  - maclight
+  - macos-corelibs
+  - macrm
+  - madlang
+  - mage
+  - MagicHaskeller
+  - magic-tyfams
+  - magma
+  - mailchimp
+  - MailchimpSimple
+  - mailchimp-subscribe
+  - makedo
+  - makefile
+  - make-hard-links
+  - make-monofoldable-foldable
+  - make-package
+  - mallard
+  - mandrill
+  - mandulia
+  - mangopay
+  - Map
+  - mapalgebra
+  - map-exts
+  - Mapping
+  - mappy
+  - markdown-kate
+  - marked-pretty
+  - markov-realization
+  - mars
+  - marvin-interpolate
+  - MASMGen
+  - massiv-persist
+  - massiv-serialise
+  - master-plan
+  - mathflow
+  - math-grads
+  - math-interpolate
+  - math-metric
+  - math-programming
+  - matrix-as-xyz
+  - matrix-market
+  - matrix-sized
+  - maude
+  - maxent-learner-hw
+  - maybench
+  - MaybeT
+  - MaybeT-monads-tf
+  - MazesOfMonad
+  - MBot
+  - mbox-tools
+  - mbug
+  - mcl
+  - mcm
+  - mcmaster-gloss-examples
+  - mcmc-synthesis
+  - mcpi
+  - mdapi
+  - mdcat
+  - mdp
+  - mealstrom
+  - MeanShift
+  - Measure
+  - mecab
+  - mech
+  - Mecha
+  - mechs
+  - Mechs
+  - mediabus
+  - mediawiki
+  - medium-sdk-haskell
+  - megalisp
+  - mega-sdist
+  - mellon-core
+  - melody
+  - memcached-binary
+  - memcache-haskell
+  - memis
+  - memoization-utils
+  - memo-ptr
+  - memorable-bits
+  - memorypool
+  - menoh
+  - menshen
+  - merkle-tree
+  - messagepack-rpc
+  - messente
+  - metadata
+  - MetaHDBC
+  - metaheuristics
+  - meta-misc
+  - meta-par
+  - metric
+  - metricsd-client
+  - mezzo
+  - mezzolens
+  - mgeneric
+  - MHask
+  - mi
+  - miconix-test
+  - microbase
+  - microgroove
+  - microlens-each
+  - micrologger
+  - micro-recursion-schemes
+  - microsoft-translator
+  - mida
+  - midi-music-box
+  - midisurface
+  - midi-utils
+  - migrant-hdbc
+  - migrant-postgresql-simple
+  - mikmod
+  - mikrokosmos
+  - miku
+  - milena
+  - mime-directory
+  - minilens
+  - minilight
+  - minions
+  - miniplex
+  - minirotate
+  - ministg
+  - minizinc-process
+  - minst-idx
+  - mios
+  - MIP
+  - mirror-tweet
+  - miso-action-logger
+  - miso-examples
+  - mit-3qvpPyAi6mH
+  - mix-arrows
+  - mixpanel-client
+  - mltool
+  - ml-w
+  - mm2
+  - mmark
+  - mmtf
+  - mmtl
+  - Mobile-Legends-Hack-Cheats
+  - modelicaparser
+  - modular-prelude
+  - module-management
+  - modulespection
+  - moe
+  - Moe
+  - MoeDict
+  - moesocks
+  - mohws
+  - mollie-api-haskell
+  - monadacme
+  - monad-atom
+  - monad-atom-simple
+  - monad-bayes
+  - monad-branch
+  - MonadCatchIO-transformers
+  - MonadCompose
+  - monad-fork
+  - monad-http
+  - monadiccp
+  - monadic-recursion-schemes
+  - monad-interleave
+  - Monadius
+  - monad-levels
+  - monad-lgbt
+  - monadLib-compose
+  - monadloc-pp
+  - monad-log
+  - monadlog
+  - monad-lrs
+  - monad-mersenne-random
+  - monad-mock
+  - monad-open
+  - Monadoro
+  - monad-parallel-progressbar
+  - monad-param
+  - monad-persist
+  - monadplus
+  - monad-ran
+  - monad-recorder
+  - monads-fd
+  - MonadStack
+  - monad-statevar
+  - monad-ste
+  - monad-stlike-io
+  - monad-task
+  - monad-timing
+  - monad-tx
+  - monad-unify
+  - monad-wrap
+  - Monatron
+  - mondo
+  - money
+  - mongodb-queue
+  - monitor
+  - mono-foldable
+  - monoid
+  - monoid-absorbing
+  - monoid-owns
+  - monoidplus
+  - monoids
+  - monopati
+  - months
+  - monus
+  - monzo
+  - morfette
+  - morfeusz
+  - morpheus-graphql-cli
+  - morphisms-functors
+  - morphisms-objects
+  - morte
+  - moto-postgresql
+  - motor-reflection
+  - mount
+  - movie-monad
+  - mpppc
+  - mpris
+  - mpvguihs
+  - mqtt
+  - mqtt-hs
+  - mrifk
+  - mrm
+  - ms
+  - msgpack
+  - msgpack-binary
+  - msh
+  - msi-kb-backlit
+  - MTGBuilder
+  - mtl-c
+  - mtl-evil-instances
+  - mtl-extras
+  - mtl-tf
+  - mtlx
+  - mtp
+  - MuCheck
+  - mud
+  - muesli
+  - mulang
+  - multext-east-msd
+  - multiaddr
+  - multiarg
+  - multi-except
+  - multihash
+  - multi-instance
+  - multilinear
+  - multipass
+  - multipath
+  - multiplate-simplified
+  - multipool-persistent-postgresql
+  - multirec
+  - multivariant
+  - Munkres-simple
+  - muon
+  - murmur
+  - murmur3
+  - mushu
+  - musicScroll
+  - music-util
+  - musicxml
+  - mustache-haskell
+  - mvar-lock
+  - mvc
+  - mxnet
+  - mxnet-nnvm
+  - myanimelist-export
+  - myo
+  - my-package-testing
+  - MyPrimes
+  - mysnapsession
+  - mysql-effect
+  - mysql-simple-quasi
+  - mystem
+  - my-test-docs
+  - myxine-client
+  - mzv
+  - n2o-protocols
+  - nagios-plugin-ekg
+  - named-lock
+  - named-servant-server
+  - named-sop
+  - namelist
+  - nanocurses
+  - nano-hmac
+  - nano-md5
+  - nanomsg
+  - nanomsg-haskell
+  - nanoparsec
+  - NanoProlog
+  - nanovg
+  - nanq
+  - naperian
+  - naqsha
+  - narc
+  - nationstates
+  - nats-client
+  - nat-sized-numbers
+  - natural
+  - NaturalLanguageAlphabets
+  - NaturalSort
+  - naver-translate
+  - nbt
+  - neat
+  - needle
+  - neet
+  - nehe-tuts
+  - neither
+  - neko-lib
+  - Neks
+  - neptune-backend
+  - nero
+  - nest
+  - NestedFunctor
+  - nestedmap
+  - nested-sequence
+  - netclock
+  - netease-fm
+  - netrium
+  - NetSNMP
+  - netspec
+  - net-spider
+  - netwire-input-javascript
+  - netwire-vinylglfw-examples
+  - network-address
+  - network-api-support
+  - network-attoparsec
+  - network-bitcoin
+  - network-builder
+  - network-bytestring
+  - network-dns
+  - networked-game
+  - network-house
+  - network-metrics
+  - network-msg
+  - network-msgpack-rpc
+  - network-packet-linux
+  - network-server
+  - network-service
+  - network-simple-sockaddr
+  - network-simple-wss
+  - network-socket-options
+  - network-transport-amqp
+  - network-transport-inmemory
+  - network-transport-tests
+  - network-uri-json
+  - network-voicetext
+  - network-wai-router
+  - neural
+  - neural-network-blashs
+  - neural-network-hmatrix
+  - newhope
+  - newports
+  - newsletter
+  - newt
+  - newtype-deriving
+  - newtype-th
+  - next-ref
+  - nextstep-plist
+  - nfc
+  - NGrams
+  - niagra
+  - nibblestring
+  - nice-html
+  - nicovideo-translator
+  - nitro
+  - nix-delegate
+  - nix-deploy
+  - nix-eval
+  - nix-freeze-tree
+  - nixfromnpm
+  - nixpkgs-update
+  - nix-tools
+  - nkjp
+  - nlp-scores
+  - nm
+  - NMap
+  - nntp
+  - noether
+  - nofib-analyse
+  - nofib-analyze
+  - noise
+  - nom
+  - NonEmpty
+  - nonempty-lift
+  - non-empty-zipper
+  - no-role-annots
+  - notcpp
+  - not-gloss-examples
+  - notifications-tray-icon
+  - NoTrace
+  - now-haskell
+  - np-extras
+  - np-linear
+  - nptools
+  - ntp-control
+  - ntrip-client
+  - n-tuple
+  - nullary
+  - null-canvas
+  - nullpipe
+  - numbered-semigroups
+  - NumberSieves
+  - NumberTheory
+  - numerals
+  - numerals-base
+  - numeric-qq
+  - numeric-ranges
+  - numhask
+  - numhask-array
+  - numhask-free
+  - numhask-prelude
+  - numhask-space
+  - Nutri
+  - NXTDSL
+  - nylas
+  - nyx-game
+  - oanda-rest-api
+  - oasis-xrd
+  - oauth2-jwt-bearer
+  - oauthenticated
+  - Object
+  - ObjectIO
+  - objective
+  - oblivious-transfer
+  - ocaml-export
+  - Octree
+  - odbc
+  - OddWord
+  - oden-go-packages
+  - oeis2
+  - OGL
+  - ogmarkup
+  - oi
+  - oidc-client
+  - om-actor
+  - omaketex
+  - ombra
+  - om-doh
+  - omega
+  - Omega
+  - om-elm
+  - om-fail
+  - om-http-logging
+  - omnifmt
+  - on-a-horse
+  - onama
+  - ONC-RPC
+  - on-demand-ssh-tunnel
+  - one-liner-instances
+  - oneormore
+  - onpartitions
+  - onu-course
+  - op
+  - opaleye-classy
+  - opaleye-sqlite
+  - open-adt
+  - OpenAFP
+  - openai-hs
+  - openapi3-code-generator
+  - openapi-petstore
+  - openapi-typed
+  - opencc
+  - opench-meteo
+  - OpenCL
+  - OpenCLRaw
+  - OpenCLWrappers
+  - opencv-raw
+  - opendatatable
+  - opengles
+  - open-haddock
+  - openid-connect
+  - open-pandoc
+  - open-signals
+  - opensoundcontrol-ht
+  - openssh-protocol
+  - opentelemetry-http-client
+  - opentheory-char
+  - opentok
+  - opentype
+  - OpenVGRaw
+  - Operads
+  - operate-do
+  - operational-extra
+  - oplang
+  - opn
+  - optima
+  - optimization
+  - optional
+  - options-time
+  - optparse-applicative-simple
+  - optparse-helper
+  - orc
+  - orchestrate
+  - OrchestrateDB
+  - ordered
+  - order-statistics
+  - ordinal
+  - Ordinary
+  - ordrea
+  - oref
+  - organize-imports
+  - org-mode
+  - orgmode
+  - origami
+  - orizentic
+  - OrPatterns
+  - osc
+  - oscpacking
+  - oset
+  - Oslo-Vectize
+  - osm-conduit
+  - oso2pdf
+  - osx-ar
+  - ot
+  - OTP
+  - ottparse-pretty
+  - overloaded
+  - overloaded-records
+  - overture
+  - pack
+  - package-description-remote
+  - package-o-tron
+  - package-vt
+  - packed
+  - packed-dawg
+  - packed-multikey-map
+  - packedstring
+  - packer-messagepack
+  - packman
+  - packunused
+  - pacman-memcache
+  - pads-haskell
+  - pagarme
+  - pagure-hook-receiver
+  - Paillier
+  - palette
+  - PandocAgda
+  - pandoc-citeproc
+  - pandoc-filter-graphviz
+  - pandoc-filter-indent
+  - pandoc-include
+  - pandoc-lens
+  - pandoc-markdown-ghci-filter
+  - pandoc-placetable
+  - pandoc-pyplot
+  - pandoc-unlit
+  - pandoc-utils
+  - pang-a-lambda
+  - pangraph
+  - panpipe
+  - pansite
+  - pantry-tmp
+  - papa-base-export
+  - papa-include
+  - papa-prelude
+  - papa-prelude-core
+  - papa-prelude-lens
+  - papa-prelude-semigroupoids
+  - papa-prelude-semigroups
+  - papa-semigroupoids-implement
+  - paphragen
+  - papillon
+  - pappy
+  - paragon
+  - parallel-tasks
+  - paranoia
+  - parco
+  - parcom-lib
+  - par-dual
+  - pareto
+  - parochial
+  - Parry
+  - parseargs
+  - parsec2
+  - parsec3
+  - parsec-free
+  - parsec-parsers
+  - parsec-pratt
+  - parseerror-eq
+  - parsely
+  - parser241
+  - parser-combinators-tests
+  - parsergen
+  - parser-helper
+  - parsers-megaparsec
+  - parsimony
+  - parsley
+  - parsnip
+  - partage
+  - partial-records
+  - partly
+  - passage
+  - passman
+  - passman-core
+  - PasswordGenerator
+  - passwords
+  - pasta
+  - pastis
+  - pasty
+  - patat
+  - patches-vector
+  - Pathfinder
+  - pathfindingcore
+  - PathTree
+  - patronscraper
+  - paypal-adaptive-hoops
+  - paypal-api
+  - paypal-rest-client
+  - pb
+  - pbc4hs
+  - PBKDF2
+  - pb-next
+  - pcd-loader
+  - pcf-font
+  - pcgen
+  - PCLT
+  - pcre-light-extra
+  - pdfname
+  - pdf-slave-template
+  - pdfsplit
+  - pdf-toolbox-viewer
+  - pdftotext
+  - pdynload
+  - PeanoWitnesses
+  - pecoff
+  - pedersen-commitment
+  - pedestrian-dag
+  - peg
+  - peggy
+  - pencil
+  - penntreebank-megaparsec
+  - percent-encoder
+  - perceptron
+  - peregrin
+  - perf
+  - PerfectHash
+  - perhaps
+  - periodic
+  - periodic-common
+  - permutation
+  - permutations
+  - permute
+  - persist2er
+  - Persistence
+  - persistent-cereal
+  - persistent-database-url
+  - persistent-discover
+  - persistent-documentation
+  - persistent-equivalence
+  - persistent-migration
+  - persistent-mongoDB
+  - persistent-mysql-haskell
+  - persistent-odbc
+  - persistent-protobuf
+  - persistent-ratelimit
+  - persistent-redis
+  - persistent-relational-record
+  - persistent-template-classy
+  - persistent-zookeeper
+  - persona
+  - pesca
+  - pez
+  - pgdl
+  - pg-extras
+  - pgf2
+  - pg-harness
+  - pg-harness-server
+  - pg-recorder
+  - pg-store
+  - pgstream
+  - phasechange
+  - phaser
+  - phoityne
+  - phone-numbers
+  - phone-push
+  - phonetic-languages-properties
+  - phonetic-languages-simplified-properties-lists
+  - phonetic-languages-simplified-properties-lists-double
+  - phraskell
+  - Phsu
+  - phybin
+  - pia-forward
+  - pi-calculus
+  - picedit
+  - pickle
+  - picologic
+  - picoparsec
+  - pictikz
+  - pier-core
+  - piet
+  - pi-forall
+  - pig
+  - pi-hoole
+  - pinch
+  - pinchot
+  - Pipe
+  - pipes-async
+  - pipes-bgzf
+  - pipes-cereal
+  - pipes-core
+  - pipes-errors
+  - pipes-interleave
+  - pipes-io
+  - pipes-protolude
+  - pipes-rt
+  - pipes-s3
+  - pipes-shell
+  - pipes-sqlite-simple
+  - pipes-transduce
+  - pipes-vector
+  - pipes-zeromq4
+  - Piso
+  - pit
+  - pivotal-tracker
+  - pixelated-avatar-generator
+  - pixel-printer
+  - pkcs10
+  - pkcs7
+  - pkggraph
+  - plailude
+  - plan-applicative
+  - planar-graph
+  - plan-b
+  - planb-token-introspection
+  - planet-mitchell-test
+  - plankton
+  - plat
+  - platinum-parsing
+  - PlayingCards
+  - plist
+  - plist-buddy
+  - plot-gtk
+  - plot-gtk3
+  - plot-gtk-ui
+  - plot-lab
+  - plugins-auto
+  - plugins-multistage
+  - plumbers
+  - plur
+  - plural
+  - plzwrk
+  - pngload-fixed
+  - pocket
+  - pointedalternative
+  - pointfree-fancy
+  - pointful
+  - pointless-haskell
+  - pokemon-go-protobuf-types
+  - poker-eval
+  - pokitdok
+  - polar-configfile
+  - polar-shader
+  - Pollutocracy
+  - poly-cont
+  - poly-control
+  - polydata-core
+  - polynomial
+  - polysemy-zoo
+  - polytypeable
+  - pomohoro
+  - ponder
+  - pong-server
+  - pool
+  - pool-conduit
+  - pop3-client
+  - popkey
+  - poppler
+  - portager
+  - porte
+  - PortFusion
+  - positron
+  - posix-acl
+  - posix-api
+  - posix-realtime
+  - posix-waitpid
+  - postcodes
+  - postgres-embedded
+  - postgresql-lo-stream
+  - postgresql-named
+  - postgresql-simple-bind
+  - postgresql-simple-named
+  - postgresql-simple-sop
+  - postgresql-simple-url
+  - postgresql-syntax
+  - postgresql-typed-lifted
+  - postgres-tmp
+  - postgrest-ws
+  - postgres-websockets
+  - postie
+  - postmark-streams
+  - postmaster
+  - potato-tool
+  - potoki-core
+  - powerdns
+  - powermate
+  - powerpc
+  - powerqueue-levelmem
+  - pprecord
+  - PPrinter
+  - pqc
+  - praglude
+  - preamble
+  - precursor
+  - predicate-class
+  - predicate-typed
+  - prednote
+  - prefork
+  - pregame
+  - preliminaries
+  - Prelude
+  - prelude-generalize
+  - prelude-plus
+  - preprocess-haskell
+  - preprocessor
+  - preql
+  - presburger
+  - present
+  - press
+  - pretty-ghci
+  - pretty-ncols
+  - prettyprinter-vty
+  - prim-array
+  - primes-type
+  - prim-instances
+  - PrimitiveArray-Pretty
+  - primitive-atomic
+  - primitive-checked
+  - primitive-convenience
+  - primitive-foreign
+  - primitive-indexed
+  - primitive-maybe
+  - primitive-simd
+  - primitive-stablename
+  - prim-ref
+  - pringletons
+  - printcess
+  - print-debugger
+  - prints
+  - PriorityChansConverger
+  - priority-queue
+  - probable
+  - process-conduit
+  - processing
+  - process-leksah
+  - process-listlike
+  - processmemory
+  - procrastinating-variable
+  - procstat
+  - prof2pretty
+  - prof-flamegraph
+  - profunctor-monad
+  - progress
+  - progression
+  - progressive
+  - progress-meter
+  - progress-reporting
+  - proj4-hs-bindings
+  - projectile
+  - prolog-graph
+  - promise
+  - pronounce
+  - proof-combinators
+  - Proper
+  - properties
+  - property-list
+  - prosidy
+  - prosper
+  - proteaaudio
+  - proteaaudio-sdl
+  - protocol
+  - protocol-buffers-fork
+  - proto-lens-arbitrary
+  - proto-lens-combinators
+  - proto-lens-optparse
+  - protolude-lifted
+  - proton-haskell
+  - prototype
+  - prove-everywhere-server
+  - provenience
+  - proxy-kindness
+  - proxy-mapping
+  - pseudo-trie
+  - PTQ
+  - ptr-poker
+  - publicsuffixlistcreate
+  - publish
+  - pubnub
+  - pubsub
+  - pugixml
+  - pugs-DrIFT
+  - PUH-Project
+  - Pup-Events-Server
+  - pure-io
+  - pure-priority-queue
+  - purescript-cst
+  - pure-zlib
+  - pusher-haskell
+  - pusher-ws
+  - pushme
+  - push-notifications
+  - putlenses
+  - puzzle-draw
+  - pyffi
+  - pyfi
+  - python-pickle
+  - q4c12-twofinger
+  - qc-oi-testgenerator
+  - qd
+  - qed
+  - qhull-simple
+  - qif
+  - QIO
+  - QLearn
+  - qlinear
+  - qnap-decrypt
+  - qr-imager
+  - qsem
+  - QuadEdge
+  - QuadTree
+  - quantfin
+  - quantification
+  - quantum-arrow
+  - quarantimer
+  - qudb
+  - quenya-verb
+  - QuickAnnotate
+  - quickbooks
+  - quickcheck-property-comb
+  - quickcheck-property-monad
+  - quickcheck-rematch
+  - quickcheck-report
+  - QuickCheckVariant
+  - quickcheck-webdriver
+  - quickjs-hs
+  - QuickPlot
+  - quickpull
+  - quick-schema
+  - quickset
+  - Quickson
+  - quickspec
+  - quickwebapp
+  - quipper-core
+  - quipper-utils
+  - quiver
+  - quokka
+  - quoridor-hs
+  - raaz
+  - RabbitMQ
+  - rad
+  - radian
+  - radium
+  - radium-formula-parser
+  - radix
+  - rados-haskell
+  - raft
+  - rakhana
+  - rakuten
+  - raml
+  - randfile
+  - rando
+  - random-access-list
+  - random-derive
+  - RandomDotOrg
+  - random-eff
+  - random-stream
+  - rand-vars
+  - Range
+  - rangemin
+  - range-set-list
+  - rapid
+  - rapid-term
+  - rascal
+  - Rasenschach
+  - rational-list
+  - rattle
+  - rattletrap
+  - raven-haskell-scotty
+  - raz
+  - rbst
+  - rclient
+  - react-flux
+  - react-haskell
+  - reaction-logic
+  - reactive-bacon
+  - reactive-banana-gi-gtk
+  - reactive-banana-sdl2
+  - reactive-banana-threepenny
+  - reactive-thread
+  - react-tutorial-haskell-server
+  - readability
+  - read-bounded
+  - read-ctags
+  - read-io
+  - readline
+  - readme-lhs
+  - readshp
+  - really-simple-xml-parser
+  - reanimate-svg
+  - reasonable-lens
+  - record
+  - record-encode
+  - records
+  - recursors
+  - red-black-record
+  - redis-hs
+  - redis-simple
+  - redland
+  - Redmine
+  - reedsolomon
+  - reenact
+  - ref
+  - Ref
+  - refcount
+  - Referees
+  - references
+  - refined-http-api-data
+  - reflection-extras
+  - reflex-basic-host
+  - reflex-dom-contrib
+  - reflex-dom-helper
+  - reflex-dom-helpers
+  - reflex-dom-retractable
+  - reflex-dom-svg
+  - reflex-dynamic-containers
+  - reflex-fsnotify
+  - reflex-gadt-api
+  - reflex-gi-gtk
+  - reflex-gloss
+  - reflex-jsx
+  - reflex-libtelnet
+  - reflex-orphans
+  - reflex-sdl2
+  - reflex-transformers
+  - reflex-vty
+  - ref-mtl
+  - reformat
+  - refractor
+  - refresht
+  - reg-alloc
+  - regex-dfa
+  - regex-generator
+  - regex-parsec
+  - regex-posix-unittest
+  - regexpr-symbolic
+  - regexqq
+  - regex-tdfa-pipes
+  - regex-tdfa-quasiquoter
+  - regex-tdfa-rc
+  - regex-tdfa-text
+  - regex-tdfa-unittest
+  - regex-tdfa-utf8
+  - regex-tre
+  - regex-type
+  - regions
+  - register-machine-typelevel
+  - registry
+  - regress
+  - regression-simple
+  - regular
+  - rehoo
+  - rei
+  - reified-records
+  - reify
+  - relacion
+  - relapse
+  - relational-postgresql8
+  - relational-query-postgresql-pure
+  - relevant-time
+  - reload
+  - remark
+  - remarks
+  - remote
+  - remote-debugger
+  - remote-monad
+  - reorder-expression
+  - repa-algorithms
+  - repa-bytestring
+  - repa-devil
+  - repa-eval
+  - repa-linear-algebra
+  - repa-scalar
+  - repa-series
+  - repl
+  - RepLib
+  - replica
+  - ReplicateEffects
+  - repo-based-blog
+  - representable-functors
+  - reproject
+  - reqcatcher
+  - req-conduit
+  - request-monad
+  - req-url-extra
+  - reserve
+  - reservoir
+  - resin
+  - resolve
+  - resolve-trivial-conflicts
+  - resource-effect
+  - resource-embed
+  - restartable
+  - restyle
+  - rethinkdb
+  - rethinkdb-client-driver
+  - rethinkdb-wereHamster
+  - retryer
+  - reverse-geocoding
+  - reversi
+  - ReviewBoard
+  - rewrite-inspector
+  - rfc-prelude
+  - rhbzquery
+  - ribbit
+  - ribosome
+  - RichConditional
+  - ridley
+  - riemann
+  - riff
+  - ring-buffer
+  - riscv-isa
+  - Ritt-Wu
+  - rivers
+  - rivet-migration
+  - rivet-simple-deploy
+  - RJson
+  - rlglue
+  - RLP
+  - rl-satton
+  - robin
+  - robots-txt
+  - roc-cluster
+  - roku-api
+  - rollbar
+  - rollbar-client
+  - rollbar-hs
+  - roller
+  - ron-rdt
+  - rope
+  - rosebud
+  - rose-trees
+  - rosmsg
+  - rosso
+  - rotating-log
+  - rounding
+  - roundtrip-aeson
+  - rowrecord
+  - R-pandoc
+  - rpc-framework
+  - rpm
+  - rpmbuild-order
+  - rrule
+  - rspp
+  - rss
+  - rss2irc
+  - rstream
+  - RtMidi
+  - rtnetlink
+  - rtorrent-rpc
+  - rts-loader
+  - ruby-marshal
+  - ruby-qq
+  - ruff
+  - ruin
+  - rungekutta
+  - runhs
+  - runmany
+  - rws
+  - RxHaskell
+  - SableCC2Hs
+  - safe-buffer-monad
+  - safe-coerce
+  - safe-coloured-text-gen
+  - safe-coloured-text-layout
+  - safe-coloured-text-terminfo
+  - safecopy-migrate
+  - safecopy-store
+  - safe-freeze
+  - safe-globals
+  - safeint
+  - safe-lazy-io
+  - safe-length
+  - safepath
+  - safe-plugins
+  - safe-printf
+  - saferoute
+  - sajson
+  - salak-toml
+  - Salsa
+  - salvia-protocol
+  - sandlib
+  - sandman
+  - sarasvati
+  - sat
+  - satchmo
+  - Saturnin
+  - savage
+  - sax
+  - sbvPlugin
+  - sc2-proto
+  - scaleimage
+  - scalendar
+  - scanner-attoparsec
+  - scc
+  - scenegraph
+  - scgi
+  - schedevr
+  - schedule-planner
+  - schedyield
+  - schemas
+  - scholdoc-types
+  - SciBaseTypes
+  - scidb-hquery
+  - sci-ratio
+  - scons2dot
+  - scottish
+  - scotty-binding-play
+  - scotty-blaze
+  - scotty-fay
+  - scotty-form
+  - scotty-format
+  - scotty-params-parser
+  - scotty-resource
+  - scotty-rest
+  - scotty-session
+  - scotty-tls
+  - scotty-view
+  - scrapbook-core
+  - scrape-changes
+  - ScratchFs
+  - script-monad
+  - scrobble
+  - scythe
+  - scyther-proof
+  - sdl2-cairo-image
+  - sdl2-compositor
+  - sdl2-fps
+  - sdr
+  - seakale
+  - sec
+  - secdh
+  - seclib
+  - second-transfer
+  - secp256k1
+  - secp256k1-haskell
+  - secp256k1-legacy
+  - secret-santa
+  - SecureHash-SHA3
+  - secure-sockets
+  - secureUDP
+  - selectors
+  - selenium
+  - selinux
+  - semantic-source
+  - Semantique
+  - semdoc
+  - semialign-extras
+  - semibounded-lattices
+  - Semigroup
+  - semigroupoids-syntax
+  - semigroups-actions
+  - sendgrid-haskell
+  - sendgrid-v3
+  - sensei
+  - sensu-run
+  - sentry
+  - SeqAlign
+  - sequent-core
+  - serialize-instances
+  - serialport
+  - serokell-util
+  - servant-aeson-specs
+  - servant-auth-cookie
+  - servant-auth-hmac
+  - servant-auth-token-api
+  - servant-avro
+  - servant-client-js
+  - servant-db
+  - servant-dhall
+  - servant-docs-simple
+  - servant-ekg
+  - servant-elm
+  - servant-fiat-content
+  - servant-generate
+  - servant-generic
+  - servant-github
+  - servant-haxl-client
+  - servant-hmac-auth
+  - servant-http-streams
+  - servant-jquery
+  - servant-js
+  - servant-JuicyPixels
+  - servant-kotlin
+  - servant-mock
+  - servant-namedargs
+  - servant-nix
+  - servant-pagination
+  - servant-pandoc
+  - servant-pool
+  - servant-proto-lens
+  - servant-purescript
+  - servant-pushbullet-client
+  - servant-py
+  - servant-quickcheck
+  - servant-reason
+  - servant-reflex
+  - servant-router
+  - servant-scotty
+  - servant-seo
+  - servant-smsc-ru
+  - servant-static-th
+  - servant-streaming
+  - servant-to-elm
+  - servant-yaml
+  - servant-zeppelin
+  - server-generic
+  - serversession-backend-persistent
+  - serversession-backend-redis
+  - serversession-frontend-yesod
+  - services
+  - ses-html-snaplet
+  - SessionLogger
+  - sessions
+  - sessiontypes
+  - Set
+  - setgame
+  - set-of
+  - setoid
+  - setters
+  - set-with
+  - sexp
+  - sexpr-parser
+  - sext
+  - SFML
+  - sfmt
+  - sfnt2woff
+  - SG
+  - sgd
+  - SGplus
+  - sh2md
+  - shade
+  - shadower
+  - shake-bindist
+  - shakebook
+  - shake-cabal-build
+  - shake-dhall
+  - shake-extras
+  - shake-minify
+  - shake-pack
+  - shake-path
+  - shake-persist
+  - shakespeare-babel
+  - shakespeare-sass
+  - shared-buffer
+  - shared-fields
+  - sha-streams
+  - she
+  - Shellac
+  - shellish
+  - shellmate
+  - shell-pipe
+  - shimmer
+  - shine-examples
+  - shivers-cfg
+  - shoap
+  - shopify
+  - shorten-strings
+  - show-prettyprint
+  - Shpadoinkle-backend-snabbdom
+  - Shpadoinkle-streaming
+  - shwifty
+  - sifflet
+  - sifflet-lib
+  - signed-multiset
+  - simd
+  - simple-actors
+  - simpleargs
+  - simple-atom
+  - simple-bluetooth
+  - simple-conduit
+  - simple-config
+  - simpleconfig
+  - simple-css
+  - simple-download
+  - simple-eval
+  - simple-genetic-algorithm
+  - simple-index
+  - simpleirc
+  - simple-logging
+  - simple-log-syslog
+  - simple-money
+  - simple-neural-networks
+  - simplenote
+  - simple-pipe
+  - simpleprelude
+  - simple-rope
+  - simple-server
+  - simplesmtpclient
+  - simple-sql-parser
+  - simple-stacked-vm
+  - simplest-sqlite
+  - simple-tabular
+  - simple-tar
+  - simple-ui
+  - simple-units
+  - simple-vec3
+  - simplexmq
+  - simple-zipper
+  - singleton-dict
+  - singletons-th
+  - singleton-typelits
+  - singnal
+  - singular-factory
+  - sink
+  - sitepipe
+  - sixfiguregroup
+  - sized-grid
+  - sized-types
+  - sized-vector
+  - sizes
+  - sjsp
+  - SJW
+  - skeletal-set
+  - skell
+  - skemmtun
+  - skews
+  - skulk
+  - skylighting-lucid
+  - skype4hs
+  - slack
+  - slack-notify-haskell
+  - slack-verify
+  - slave-thread
+  - sliceofpy
+  - Slides
+  - slim
+  - sloane
+  - sloth
+  - slot-lambda
+  - slug
+  - slugify
+  - smallarray
+  - smallcheck-kind-generics
+  - smallcheck-laws
+  - smallcheck-lens
+  - smallpt-hs
+  - smap
+  - smartcheck
+  - smartconstructor
+  - smartGroup
+  - sme
+  - smerdyakov
+  - smiles
+  - smsaero
+  - smt2-parser
+  - smt-lib
+  - SmtLib
+  - smtlib2
+  - SMTPClient
+  - smtp-mail-ng
+  - smtps-gmail
+  - smuggler
+  - smuggler2
+  - snake
+  - snake-game
+  - snap-accept
+  - snap-blaze-clay
+  - snap-configuration-utilities
+  - snap-error-collector
+  - snaplet-acid-state
+  - snaplet-amqp
+  - snaplet-css-min
+  - snaplet-customauth
+  - snaplet-environments
+  - snaplet-fay
+  - snaplet-hslogger
+  - snaplet-influxdb
+  - snaplet-mongodb-minimalistic
+  - snaplet-persistent
+  - snaplet-postgresql-simple
+  - snaplet-sass
+  - snaplet-scoped-session
+  - snaplet-ses-html
+  - snaplet-sqlite-simple
+  - snaplet-typed-sessions
+  - snappy-conduit
+  - snap-routes
+  - snap-stream
+  - snap-testing
+  - snap-web-routes
+  - sneakyterm
+  - SNet
+  - snipcheck
+  - snorkels
+  - snowtify
+  - socket-activation
+  - socketed
+  - socketio
+  - sockets-and-pipes
+  - socket-sctp
+  - socketson
+  - socket-unix
+  - sodium
+  - soegtk
+  - softfloat-hs
+  - solga
+  - sonic-visualiser
+  - Sonnex
+  - SoOSiM
+  - sorted
+  - sorting
+  - sorty
+  - souffle-haskell
+  - sound-collage
+  - sousit
+  - soyuz
+  - SpaceInvaders
+  - spacepart
+  - SpacePrivateers
+  - spake2
+  - spanout
+  - spars
+  - sparse
+  - sparsecheck
+  - sparse-lin-alg
+  - special-functors
+  - special-keys
+  - speculate
+  - speculation
+  - sphinx
+  - sphinxesc
+  - spiros
+  - spir-v
+  - splay
+  - splaytree
+  - splint
+  - split-morphism
+  - splitter
+  - Spock
+  - Spock-api-ghcjs
+  - spoonutil
+  - spoty
+  - Sprig
+  - spritz
+  - spsa
+  - spy
+  - sqlcipher
+  - sqlite
+  - sqlite-simple-errors
+  - sql-simple
+  - sqlvalue-list
+  - sqsd-local
+  - squeal-postgresql
+  - srcinst
+  - sscan
+  - ssh
+  - ssh-tunnel
+  - SSTG
+  - st2
+  - stable-heap
+  - stable-maps
+  - stable-marriage
+  - stable-memo
+  - stack2cabal
+  - stack2nix
+  - stackage-cli
+  - stackage-curator
+  - stackage-metadata
+  - stackage-to-hackage
+  - stackage-types
+  - stack-bump
+  - stackcollapse-ghc
+  - stack-fix
+  - stack-lib
+  - stack-prism
+  - stack-run
+  - stack-type
+  - stack-wrapper
+  - staged-gg
+  - standalone-derive-topdown
+  - standalone-haddock
+  - starling
+  - stash
+  - Stasis
+  - state
+  - state-bag
+  - state-plus
+  - state-record
+  - static-canvas
+  - static-tensor
+  - statistics-dirichlet
+  - statistics-fusion
+  - statistics-hypergeometric-genvar
+  - stats
+  - statsd
+  - statvfs
+  - stb-image-redux
+  - stc-lang
+  - stdata
+  - stdf
+  - stdio
+  - steambrowser
+  - stego-uuid
+  - stemmer
+  - stemmer-german
+  - stepwise
+  - stern-brocot
+  - stgi
+  - STL
+  - stm-chunked-queues
+  - stm-firehose
+  - stm-promise
+  - stm-stats
+  - stochastic
+  - Stomp
+  - storable
+  - storable-static-array
+  - stp
+  - str
+  - Strafunski-ATermLib
+  - Strafunski-StrategyLib
+  - StrappedTemplates
+  - stratum-tool
+  - stratux-types
+  - stream
+  - streamdeck
+  - streamed
+  - stream-fusion
+  - streaming-conduit
+  - streaming-events
+  - streaming-lzma
+  - streaming-osm
+  - streaming-pcap
+  - streaming-png
+  - streaming-utils
+  - streaming-with
+  - streamly-fsnotify
+  - stream-monad
+  - streamproc
+  - StrictBench
+  - StrictCheck
+  - strict-ghc-plugin
+  - strictly
+  - strict-tuple-lens
+  - string-isos
+  - stringlike
+  - string-quote
+  - stringtable-atom
+  - stripe
+  - stripe-hs
+  - stripe-http-streams
+  - stripe-signature
+  - stripe-tests
+  - strongswan-sql
+  - structural-traversal
+  - structures
+  - stt
+  - stunclient
+  - stylish-cabal
+  - stylized
+  - subleq-toolchain
+  - submark
+  - subsample
+  - sub-state
+  - subwordgraph
+  - suffix-array
+  - suffixarray
+  - SuffixStructures
+  - sugarhaskell
+  - suitable
+  - summoner
+  - sunlight
+  - sunroof-compiler
+  - superbubbles
+  - superevent
+  - supermonad
+  - supernova
+  - supero
+  - super-user-spark
+  - supervisor
+  - supplemented
+  - surjective
+  - sv-core
+  - SVD2HS
+  - svfactor
+  - svg-builder-fork
+  - svgcairo
+  - svgutils
+  - svm-light-utils
+  - svm-simple
+  - svndump
+  - swagger-petstore
+  - swagger-test
+  - swf
+  - swift-lda
+  - swiss-ephemeris
+  - swisstable
+  - syb-extras
+  - SybWidget
+  - syb-with-class-instances-text
+  - syfco
+  - sym
+  - symantic
+  - symantic-cli
+  - symantic-http-test
+  - symantic-parser
+  - symantic-xml
+  - symbolic-link
+  - symengine
+  - symengine-hs
+  - sync
+  - sync-mht
+  - syntax-trees
+  - syntax-trees-fork-bairyn
+  - synthesizer
+  - synthesizer-alsa
+  - Sysmon
+  - sys-process
+  - system-canonicalpath
+  - system-command
+  - system-extra
+  - system-inotify
+  - system-lifted
+  - system-linux-proc
+  - system-locale
+  - system-random-effect
+  - t3-server
+  - table
+  - tableaux
+  - table-layout
+  - tables
+  - Tables
+  - tablestorage
+  - table-tennis
+  - Tablify
+  - tabloid
+  - tabs
+  - tag-bits
+  - tagged-exception-core
+  - tagged-timers
+  - taglib-api
+  - tagsoup-ht
+  - tagsoup-megaparsec
+  - tagsoup-parsec
+  - tagsoup-selection
+  - tai
+  - tai64
+  - takahashi
+  - Takusen
+  - takusen-oracle
+  - tamarin-prover-utils
+  - Tape
+  - tapioca
+  - TaskMonad
+  - tasty-auto
+  - tasty-fail-fast
+  - tasty-grading-system
+  - tasty-hedgehog-coverage
+  - tasty-mgolden
+  - tasty-stats
+  - tasty-test-vector
+  - TBC
+  - TBit
+  - tcache-AWS
+  - tcod-haskell
+  - tcp
+  - tcp-streams-openssl
+  - tds
+  - teams
+  - teeth
+  - telegram
+  - telegram-api
+  - teleport
+  - teleshell
+  - tellbot
+  - tempi
+  - template-default
+  - template-haskell-util
+  - template-hsml
+  - templateify
+  - templatepg
+  - template-yj
+  - tempodb
+  - temporal-csound
+  - tempus
+  - tensor
+  - tensorflow
+  - tensorflow-opgen
+  - tensor-safe
+  - termbox-bindings
+  - termination-combinators
+  - termplot
+  - term-rewriting
+  - terntup
+  - terraform-http-backend-pass
+  - tersmu
+  - testCom
+  - testcontainers
+  - test-fixture
+  - test-framework-doctest
+  - test-framework-quickcheck
+  - test-framework-skip
+  - test-framework-testing-feat
+  - test-framework-th-prime
+  - testloop
+  - testpack
+  - testpattern
+  - test-pkg
+  - testrunner
+  - test-sandbox
+  - test-shouldbe
+  - tex2txt
+  - texbuilder
+  - texrunner
+  - text1
+  - text-all
+  - text-and-plots
+  - text-ascii
+  - text-containers
+  - text-format-heavy
+  - text-generic-pretty
+  - text-icu-normalized
+  - text-lens
+  - text-lips
+  - text-markup
+  - text-normal
+  - textocat-api
+  - text-offset
+  - text-position
+  - text-register-machine
+  - text-replace
+  - textual
+  - text-utf8
+  - text-xml-qq
+  - text-zipper-monad
+  - tfp-th
+  - tftp
+  - tga
+  - thank-you-stars
+  - th-build
+  - th-dict-discovery
+  - thentos-cookie-session
+  - Theora
+  - theoremquest
+  - th-fold
+  - th-format
+  - thih
+  - Thingie
+  - th-instance-reification
+  - th-kinds
+  - th-kinds-fork
+  - th-lego
+  - thock
+  - thorn
+  - th-pprint
+  - threadmanager
+  - threepenny-editors
+  - threepenny-gui-contextmenu
+  - threepenny-gui-flexbox
+  - thrift
+  - Thrift
+  - throttled-io-loop
+  - th-sccs
+  - th-tc
+  - th-to-exp
+  - th-traced
+  - thumbnail-plus
+  - tianbar
+  - TicTacToe
+  - tictactoe3d
+  - tidal-midi
+  - tidal-vis
+  - tie-knot
+  - tiempo
+  - tiger
+  - tightrope
+  - timecalc
+  - time-extras
+  - time-machine
+  - timemap
+  - timeout
+  - timeout-with-results
+  - timeparsers
+  - TimePiece
+  - time-qq
+  - time-quote
+  - time-recurrence
+  - time-series
+  - timeseries
+  - time-series-lib
+  - timeutils
+  - time-w3c
+  - timezone-detect
+  - timezone-olson-th
+  - tini
+  - tintin
+  - TinyLaunchbury
+  - tiny-scheduler
+  - tinytemplate
+  - TinyURL
+  - tinyXml
+  - titan-debug-yampa
+  - titan-record-yampa
+  - Titim
+  - tkhs
+  - tkyprof
+  - tmp-postgres
+  - todo
+  - tofromxml
+  - to-haskell
+  - toilet
+  - tokenify
+  - tokenizer-streaming
+  - token-limiter
+  - token-search
+  - tokstyle
+  - tokyocabinet-haskell
+  - tokyotyrant-haskell
+  - tomato-rubato-openal
+  - toml
+  - tonatona-persistent-postgresql
+  - tonatona-persistent-sqlite
+  - tonatona-servant
+  - toodles
+  - Top
+  - torch
+  - TORCS
+  - to-string-class
+  - TotalMap
+  - touched
+  - Tournament
+  - toxiproxy-haskell
+  - tptp
+  - trace
+  - trace-call
+  - traced
+  - trace-function-call
+  - tracetree
+  - tracing-control
+  - tracked-files
+  - tracker
+  - trackit
+  - traction
+  - tracy
+  - traildb
+  - transactional-events
+  - TransformeR
+  - transformers-compose
+  - transformers-lift
+  - transformers-runnable
+  - TransformersStepByStep
+  - transient
+  - transient-universe
+  - translatable-intset
+  - translate
+  - translate-cli
+  - traversal-template
+  - travis
+  - travis-meta-yaml
+  - trawl
+  - traypoweroff
+  - treap
+  - treemap
+  - treemap-html
+  - tree-render-text
+  - TreeStructures
+  - tree-traversals
+  - t-regex
+  - tremulous-query
+  - TrendGraph
+  - trhsx
+  - trigger
+  - trim
+  - tripLL
+  - trivia
+  - tropical
+  - tropical-geometry
+  - true-name
+  - tsession
+  - tsparse
+  - tsp-viz
+  - tsuntsun
+  - tsvsql
+  - ttask
+  - tttool
+  - tubes
+  - tuntap
+  - tuple-gen
+  - tupleinstances
+  - tuple-lenses
+  - turing-machines
+  - turing-music
+  - turtle-options
+  - tweak
+  - twentefp-websockets
+  - twfy-api-client
+  - twhs
+  - twilio
+  - twine
+  - twirp
+  - twitter-feed
+  - tx
+  - txtblk
+  - TYB
+  - tyfam-witnesses
+  - typalyze
+  - typeable-th
+  - type-combinators
+  - typed-encoding
+  - typedflow
+  - typedquery
+  - typed-time
+  - typed-wire
+  - type-eq
+  - type-fun
+  - typehash
+  - type-indexed-queues
+  - type-int
+  - type-interpreter
+  - type-level-bst
+  - type-level-natural-number-induction
+  - type-level-natural-number-operations
+  - typelevel-tensor
+  - type-list
+  - TypeNat
+  - type-of-html-static
+  - typeparams
+  - type-prelude
+  - typesafe-precure
+  - types-compat
+  - type-settheory
+  - type-spine
+  - type-tree
+  - type-unary
+  - typograffiti
+  - tyro
+  - uberlast
+  - ucam-webauth-types
+  - ucd
+  - uconv
+  - udp-conduit
+  - udp-streaming
+  - uhexdump
+  - uhttpc
+  - ui-command
+  - ulid
+  - unamb-custom
+  - unbounded-delays-units
+  - unboxed-containers
+  - unboxed-references
+  - unbreak
+  - unfix-binders
+  - unfoldable
+  - unicode-prelude
+  - unicode-show
+  - unicode-symbols
+  - unicode-tricks
+  - uniform-fileio
+  - union-map
+  - uniprot-kb
+  - uniqueid
+  - uniquely-represented-sets
+  - uniqueness-periods-vector-properties
+  - units-attoparsec
+  - unittyped
+  - unitym-yesod
+  - uni-util
+  - universal-binary
+  - unix-handle
+  - unix-process-conduit
+  - unix-recursive
+  - unlifted-list
+  - unliftio-messagebox
+  - unm-hip
+  - unordered-containers-rematch
+  - unordered-graphs
+  - unordered-intmap
+  - unpacked-either
+  - unpacked-maybe
+  - unpack-funcs
+  - unroll-ghc-plugin
+  - unsafely
+  - unsatisfiable
+  - unsequential
+  - unused
+  - uom-plugin
+  - Updater
+  - uploadcare
+  - upskirt
+  - uri
+  - uri-conduit
+  - uri-encoder
+  - uri-parse
+  - uri-template
+  - uri-templater
+  - URLb
+  - urlcheck
+  - urldecode
+  - url-decoders
+  - urldisp-happstack
+  - urlencoded
+  - url-generic
+  - urn
+  - urn-random
+  - urxml
+  - users-mysql-haskell
+  - users-persistent
+  - utf
+  - utf8-prelude
+  - utf8-validator
+  - UTFTConverter
+  - util-logict
+  - util-plus
+  - util-primitive
+  - util-universe
+  - uuagc-bootstrap
+  - uu-cco
+  - uuid-aeson
+  - uuid-orphans
+  - uvector
+  - uxadt
+  - vabal-lib
+  - vacuum
+  - validated-types
+  - Validation
+  - validations
+  - valid-names
+  - value-supply
+  - vampire
+  - var
+  - varan
+  - variables
+  - variadic
+  - variation
+  - vaultaire-common
+  - vault-tool-server
+  - vault-trans
+  - vcache
+  - vcatt
+  - vcf
+  - vcswrapper
+  - Vec-Boolean
+  - Vec-OpenGLRaw
+  - vect-floating
+  - vect-opengl
+  - vector-bytestring
+  - vector-clock
+  - vector-conduit
+  - vector-fftw
+  - vector-functorlazy
+  - vector-heterogenous
+  - vector-random
+  - vector-read-instances
+  - vector-space-map
+  - vector-space-opengl
+  - vector-space-points
+  - vector-static
+  - Vec-Transform
+  - Verba
+  - verbalexpressions
+  - verdict
+  - verify
+  - verilog
+  - verismith
+  - versioning
+  - vformat
+  - vhd
+  - vhdl
+  - vicinity
+  - viewprof
+  - views
+  - Villefort
+  - vimus
+  - vintage-basic
+  - vinyl-json
+  - vinyl-named-sugar
+  - vinyl-plus
+  - vinyl-utils
+  - vinyl-vectors
+  - virthualenv
+  - visibility
+  - visualize-cbn
+  - visual-prof
+  - vitrea
+  - vk-aws-route53
+  - VKHS
+  - vowpal-utils
+  - voyeur
+  - vpq
+  - VRML
+  - vte
+  - vtegtk3
+  - vty-examples
+  - vty-menu
+  - vty-ui
+  - wacom-daemon
+  - waddle
+  - wai-git-http
+  - wai-graceful
+  - wai-handler-devel
+  - wai-handler-fastcgi
+  - wai-handler-scgi
+  - wai-handler-webkit
+  - wai-hmac-auth
+  - wai-lens
+  - wai-lite
+  - wai-logger-buffered
+  - wai-logger-prefork
+  - wai-make-assets
+  - wai-middleware-catch
+  - wai-middleware-crowd
+  - wai-middleware-delegate
+  - wai-middleware-etag
+  - wai-middleware-headers
+  - wai-middleware-hmac-client
+  - wai-middleware-preprocessor
+  - wai-middleware-static-caching
+  - wai-middleware-travisci
+  - wai-rate-limit-redis
+  - wai-request-spec
+  - wai-responsible
+  - wai-router
+  - wai-routes
+  - wai-routing
+  - wai-secure-cookies
+  - wai-session-alt
+  - wai-session-mysql
+  - wai-session-postgresql
+  - wai-session-redis
+  - wai-static-cache
+  - waitfree
+  - wai-throttler
+  - waitra
+  - wallpaper
+  - warc
+  - warp-dynamic
+  - warp-grpc
+  - warp-static
+  - warp-systemd
+  - wasm
+  - watchdog
+  - watcher
+  - watchit
+  - wavefront
+  - wavefront-obj
+  - weak-bag
+  - weather-api
+  - webapp
+  - WebBits
+  - webcloud
+  - webcrank
+  - webcrank-dispatch
+  - web-css
+  - webdriver-angular
+  - webdriver-snoy
+  - web-encodings
+  - WeberLogic
+  - webfinger-client
+  - webkit-javascriptcore
+  - webmention
+  - web-output
+  - web-push
+  - Webrexp
+  - web-routes-quasi
+  - web-routes-transformers
+  - webshow
+  - websockets-rpc
+  - webwire
+  - WEditor
+  - weekdaze
+  - weighted-regexp
+  - welshy
+  - werewolf
+  - Wheb
+  - while-lang-parser
+  - whim
+  - whiskers
+  - whois
+  - why3
+  - wide-word
+  - WikimediaParser
+  - windns
+  - winerror
+  - Wired
+  - wires
+  - wiring
+  - witty
+  - wkt
+  - wkt-geom
+  - WL500gPLib
+  - wl-pprint-extras
+  - WMSigner
+  - woe
+  - woffex
+  - wol
+  - word2vec-model
+  - wordify
+  - wordlist
+  - WordNet
+  - WordNet-ghc74
+  - wordpass
+  - wordpress-auth
+  - wordsearch
+  - workdays
+  - Workflow
+  - workflow-osx
+  - workflow-windows
+  - work-time
+  - wp-archivebot
+  - wreq-patchable
+  - wreq-sb
+  - writer-cps-lens
+  - writer-cps-monads-tf
+  - writer-cps-morph
+  - wsdl
+  - wsedit
+  - wsjtx-udp
+  - wtk
+  - wumpus-core
+  - wxdirect
+  - X11-extras
+  - X11-rm
+  - X11-xdamage
+  - X11-xfixes
+  - xchat-plugin
+  - xcp
+  - x-dsp
+  - Xec
+  - xenstore
+  - xfconf
+  - xformat
+  - xhaskell-library
+  - xhb
+  - xilinx-lava
+  - xine
+  - xing-api
+  - xkbcommon
+  - xkcd
+  - xleb
+  - xls
+  - xlsior
+  - xlsx-templater
+  - xml2json
+  - xml-conduit-decode
+  - xml-conduit-selectors
+  - xml-conduit-stylist
+  - xml-html-conduit-lens
+  - XmlHtmlWriter
+  - xml-parsec
+  - xml-prettify
+  - xml-query
+  - xml-tydom-core
+  - XMMS
+  - xmonad-bluetilebranch
+  - xmonad-contrib-gpl
+  - xmonad-dbus
+  - xmonad-eval
+  - xmonad-vanessa
+  - xmonad-wallpaper
+  - xmonad-windownames
+  - xor
+  - Xorshift128Plus
+  - xorshift-plus
+  - xournal-types
+  - xrefcheck
+  - xsact
+  - xsd
+  - xslt
+  - xxhash
+  - y0l0bot
+  - yabi-muno
+  - yackage
+  - yahoo-finance-api
+  - yahoo-finance-conduit
+  - yahoo-prices
+  - yahoo-web-search
+  - yajl
+  - yall
+  - yam-app
+  - yam-config
+  - yaml-pretty-extras
+  - YamlReference
+  - yaml-rpc
+  - yampa2048
+  - yampa-glfw
+  - yampa-gloss
+  - yampa-glut
+  - yampa-sdl2
+  - YampaSynth
+  - yampa-test
+  - yam-servant
+  - yandex-translate
+  - yaop
+  - yap
+  - yarr
+  - yaya-test
+  - yaya-unsafe-test
+  - yeller
+  - yeshql-hdbc
+  - yeshql-postgresql-simple
+  - yesod-angular
+  - yesod-angular-ui
+  - yesod-auth-account
+  - yesod-auth-account-fork
+  - yesod-auth-bcrypt
+  - yesod-auth-bcryptdb
+  - yesod-auth-deskcom
+  - yesod-auth-hmac-keccak
+  - yesod-auth-kerberos
+  - yesod-auth-ldap-mediocre
+  - yesod-auth-ldap-native
+  - yesod-auth-nopassword
+  - yesod-auth-pam
+  - yesod-auth-smbclient
+  - yesod-auth-zendesk
+  - yesod-bootstrap
+  - yesod-comments
+  - yesod-content-pdf
+  - yesod-crud
+  - yesod-crud-persist
+  - yesod-datatables
+  - yesod-dsl
+  - yesod-fast-devel
+  - yesod-filter
+  - yesod-form-richtext
+  - yesod-gitrev
+  - yesod-goodies
+  - yesod-job-queue
+  - yesod-links
+  - yesod-lucid
+  - yesod-paginate
+  - yesod-pagination
+  - yesod-pnotify
+  - yesod-pure
+  - yesod-raml
+  - yesod-recaptcha
+  - yesod-routes
+  - yesod-routes-flow
+  - yesod-rst
+  - yesod-s3
+  - yesod-sass
+  - yesod-static-angular
+  - yesod-static-remote
+  - yesod-test-json
+  - yesod-tls
+  - yesod-vend
+  - yesod-worker
+  - YFrob
+  - yggdrasil
+  - yhccore
+  - yhseq
+  - yices
+  - yi-contrib
+  - yi-monokai
+  - yi-solarized
+  - yi-spolsky
+  - yoda
+  - yst
+  - yu-core
+  - yu-tool
+  - yxdb-utils
+  - z3-encoding
+  - z85
+  - zabt
+  - zampolit
+  - Z-Data
+  - ZEBEDDE
+  - zendesk-api
+  - zenhack-prelude
+  - zeno
+  - zeromq4-clone-pattern
+  - zeromq4-conduit
+  - zeromq4-patterns
+  - zeromq-haskell
+  - zettelkast
+  - ZFS
+  - zifter
+  - zigbee-znet25
+  - zip-conduit
+  - zipedit
+  - zipkin
+  - ziptastic-core
+  - zm
+  - ZMachine
+  - zmidi-score
+  - zoneinfo
+  - zoom
+  - zoom-refs
+  - zsdd
+  - zsh-battery
+  - zsyntax
+  - ztar
+  - Zwaluw
+  - zxcvbn-dvorak
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
new file mode 100644
index 000000000000..6f3808103063
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -0,0 +1,519 @@
+# pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+
+compiler: ghc-8.10.4
+
+core-packages:
+  - array-0.5.4.0
+  - base-4.14.1.0
+  - binary-0.8.8.0
+  - bytestring-0.10.12.0
+  - Cabal-3.2.1.0
+  - containers-0.6.2.1
+  - deepseq-1.4.4.0
+  - directory-1.3.6.0
+  - exceptions-0.10.4
+  - filepath-1.4.2.1
+  - ghc-8.10.4
+  - ghc-boot-8.10.4
+  - ghc-boot-th-8.10.4
+  - ghc-compact-0.1.0.0
+  - ghc-heap-8.10.4
+  - ghc-prim-0.6.1
+  - ghci-8.10.4
+  - haskeline-0.8.0.1
+  - hpc-0.6.1.0
+  - integer-gmp-1.0.3.0
+  - libiserv-8.10.4
+  - mtl-2.2.2
+  - parsec-3.1.14.0
+  - pretty-1.1.3.6
+  - process-1.6.9.0
+  - rts-1.0
+  - stm-2.5.0.0
+  - template-haskell-2.16.0.0
+  - terminfo-0.4.1.4
+  - text-1.2.4.1
+  - time-1.9.3
+  - transformers-0.5.6.2
+  - unix-2.7.2.2
+  - xhtml-3000.2.2.1
+
+  # Hack: The following package is a core package of GHCJS. If we don't declare
+  # it, then hackage2nix will generate a Hackage database where all dependants
+  # of this library are marked as "broken".
+  - ghcjs-base-0
+
+# This is a list of packages with versions from the latest Stackage LTS release.
+#
+# The packages and versions in this list cause the `hackage2nix` tool to
+# generate the package at the given version.
+#
+# For instance, with a line like the following:
+#
+# - aeson ==1.4.6.0
+#
+# `hackage2nix` will generate the `aeson` package at version 1.4.6.0 in the
+# ./hackage-packages.nix file.
+#
+# Since the packages in the LTS package set are sometimes older than the latest
+# on Hackage, `hackage2nix` is smart enough to also generate the latest version
+# of a given package.
+#
+# In the above example with aeson, if there was version 1.5.0.0 of aeson
+# available on Hackage, `hackage2nix` would generate two packages, `aeson`
+# at version 1.4.6.0 and `aeson_1_5_0_0` at version 1.5.0.0.
+#
+# WARNING: This list is generated semiautomatically based on the most recent
+# LTS package set. If you want to add entries to it, you must do so before the
+# comment saying "# LTS Haskell x.y". Any changes after that comment will be
+# lost the next time `update-stackage.sh` runs.
+default-package-overrides:
+  # This was only intended for ghc-7.0.4, and has very old deps, one hidden behind a flag
+  - MissingH ==1.4.2.0
+  # gi-gdkx11-4.x requires gtk-4.x, which is still under development and
+  # not yet available in Nixpkgs
+  - gi-gdkx11 < 4
+  # Needs Cabal 3.4 for Setup.hs
+  - gi-javascriptcore < 4.0.23 #
+  - gi-soup < 2.4.24 #
+  - gi-webkit2 < 4.0.27 #
+  # 2021-05-11: not all diagrams libraries have adjusted to
+  # monoid-extras 0.6 yet, keep them pinned to lower versions
+  # until we can do a full migration, see
+  # https://github.com/diagrams/diagrams-core/issues/115
+  # We can keep this pin at most until base 4.15
+  - monoid-extras < 0.6
+  - diagrams-core < 1.5.0
+  - diagrams-lib < 1.4.4
+  # 2021-05-11: Pin for hls 1.1.0
+  - ghcide == 1.2.*
+  - hls-plugin-api == 1.1.0.0
+  - hls-explicit-imports-plugin < 1.0.0.2
+  # 2021-05-12: remove once versions >= 5.0.0 is in stackage
+  - futhark < 0.19.5
+  # 2021-06-05: remove once pandoc 2.14 is in stackage
+  - pandoc-crossref < 0.3.11.0
+
+extra-packages:
+  - base16-bytestring < 1               # required for cabal-install etc.
+  - Cabal == 2.2.*                      # required for jailbreak-cabal etc.
+  - Cabal == 2.4.*                      # required for cabal-install etc.
+  - Cabal == 3.2.*                      # required for cabal-install etc.
+  - dependent-map == 0.2.4.0            # required by Hasura 1.3.1, 2020-08-20
+  - dependent-sum == 0.4                # required by Hasura 1.3.1, 2020-08-20
+  - dhall == 1.29.0                     # required for ats-pkg
+  - Diff < 0.4                          # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
+  - ghc-tcplugins-extra ==0.3.2         # required for polysemy-plugin 0.2.5.0
+  - haddock == 2.23.*                   # required on GHC < 8.10.x
+  - haddock-api == 2.23.*               # required on GHC < 8.10.x
+  - haddock-library ==1.7.*             # required by stylish-cabal-0.5.0.0
+  - happy == 1.19.9                     # for purescript
+  - hinotify == 0.3.9                   # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
+  - hlint < 3.3                         # We don‘t have ghc-lib-parser 9.0.X yet.
+  - immortal == 0.2.2.1                 # required by Hasura 1.3.1, 2020-08-20
+  - mmorph == 1.1.3                     # Newest working version of mmorph on ghc 8.6.5. needed for hls
+  - network == 2.6.3.1                  # required by pkgs/games/hedgewars/default.nix, 2020-11-15
+  - optparse-applicative < 0.16         # needed for niv-0.2.19
+  - refinery == 0.3.*                   # required by hls-tactics-plugin-1.0.0.0
+  - resolv == 0.1.1.2                   # required to build cabal-install-3.0.0.0 with pre ghc-8.8.x
+  - sbv == 7.13                         # required for pkgs.petrinizer
+  - crackNum < 3.0                      # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
+  - gi-gdk == 3.0.24                    # 2021-05-07: For haskell-gi 0.25 without gtk4
+  - gi-gtk < 4.0                        # 2021-05-07: For haskell-gi 0.25 without gtk4
+  - gi-gdkx11 == 3.0.11                 # 2021-05-07: For haskell-gi 0.25 without gtk4
+  - ShellCheck == 0.7.1                 # 2021-05-09: haskell-ci 0.12.1 pins this version
+
+package-maintainers:
+  abbradar:
+    - Agda
+  berberman:
+    - nvfetcher
+    - arch-web
+    - uusi
+  bdesham:
+    - pinboard-notes-backup
+  cdepillabout:
+    - password
+    - password-instances
+    - pretty-simple
+    - spago
+    - termonad
+  expipiplus1:
+    - VulkanMemoryAllocator
+    - autoapply
+    - exact-real
+    - language-c
+    - orbits
+    - update-nix-fetchgit
+    - vector-sized
+    - vulkan
+    - vulkan-utils
+  erictapen:
+    - hakyll
+    - hakyll-contrib-hyphenation
+    - webify
+  Gabriel439:
+    - annah
+    - bench
+    - break
+    - dhall-bash
+    - dhall-docs
+    - dhall-json
+    - dhall-lsp-server
+    - dhall-nix
+    - dhall-nixpkgs
+    - dhall-openapi
+    - dhall-text
+    - dhall-yaml
+    - dhall
+    - dirstream
+    - errors
+    - foldl
+    - index-core
+    - lens-tutorial
+    - list-transformer
+    - managed
+    - mmorph
+    - morte
+    - mvc-updates
+    - mvc
+    - nix-derivation
+    - nix-diff
+    - optional-args
+    - optparse-generic
+    - pipes-bytestring
+    - pipes-concurrency
+    - pipes-csv
+    - pipes-extras
+    - pipes-group
+    - pipes-http
+    - pipes-parse
+    - pipes-safe
+    - pipes
+    - server-generic
+    - total
+    - turtle
+    - typed-spreadsheet
+  gridaphobe:
+    - located-base
+  jb55:
+    # - bson-lens
+    - cased
+    - elm-export-persistent
+    # - pipes-mongodb
+    - streaming-wai
+  kiwi:
+    - config-schema
+    - config-value
+    - glirc
+    - irc-core
+    - matterhorn
+    - mattermost-api
+    - mattermost-api-qc
+    - Unique
+  maralorn:
+    - arbtt
+    - cabal-fmt
+    - generic-optics
+    - ghcup
+    - ghcide
+    - haskell-language-server
+    - hedgehog
+    - hlint
+    - hmatrix
+    - iCalendar
+    - neuron
+    - optics
+    - reflex-dom
+    - releaser
+    - req
+    - shake-bench
+    - shh
+    - snap
+    - stm-containers
+    - streamly
+    - taskwarrior
+  pacien:
+    - ldgallery-compiler
+  peti:
+    - cabal-install
+    - cabal2nix
+    - cabal2spec
+    - distribution-nixpkgs
+    - funcmp
+    - git-annex
+    - hackage-db
+    - hledger
+    - hledger-interest
+    - hledger-ui
+    - hledger-web
+    - hopenssl
+    - hsdns
+    - hsemail
+    - hsyslog
+    - jailbreak-cabal
+    - language-nix
+    - logging-facade-syslog
+    - nix-paths
+    - pandoc
+    - structured-haskell-mode
+    - titlecase
+    - xmonad
+    - xmonad-contrib
+  poscat:
+    - hinit
+  psibi:
+    - path-pieces
+    - persistent
+    - persistent-sqlite
+    - persistent-template
+    - shakespeare
+  roberth:
+    - arion-compose
+    - hercules-ci-agent
+    - hercules-ci-api
+    - hercules-ci-api-agent
+    - hercules-ci-api-core
+    - hercules-ci-cli
+    - hercules-ci-cnix-expr
+    - hercules-ci-cnix-store
+  rvl:
+    - taffybar
+    - arbtt
+    - lentil
+  sorki:
+    - cayenne-lpp
+    - data-stm32
+    - gcodehs
+    - nix-derivation
+    - nix-narinfo
+    - ttn
+    - ttn-client
+    - update-nix-fetchgit
+    - zre
+  sternenseemann:
+    # also maintain upstream package
+    - spacecookie
+    - gopher-proxy
+    # other packages I can help out for
+    - systemd
+    - fast-logger
+    - flat
+    - Euterpea2
+    - utc
+    - socket
+    - gitit
+    - yarn-lock
+    - yarn2nix
+    - large-hashable
+    - haskell-ci
+    - diagrams
+    # owothia
+    - irc-client
+    - chatter
+    - envy
+  terlar:
+    - nix-diff
+  turion:
+    - rhine
+    - rhine-gloss
+    - essence-of-live-coding
+    - essence-of-live-coding-gloss
+    - essence-of-live-coding-pulse
+    - essence-of-live-coding-quickcheck
+    - Agda
+    - dunai
+    - finite-typelits
+    - pulse-simple
+    - simple-affine-space
+  utdemir:
+    - nix-tree
+
+unsupported-platforms:
+  Allure:                                       [ x86_64-darwin ]
+  alsa-mixer:                                   [ x86_64-darwin ]
+  alsa-pcm:                                     [ x86_64-darwin ]
+  alsa-seq:                                     [ x86_64-darwin ]
+  AWin32Console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  barbly:                                       [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
+  bdcs-api:                                     [ x86_64-darwin ]
+  bindings-directfb:                            [ x86_64-darwin ]
+  bindings-sane:                                [ x86_64-darwin ]
+  bustle:                                       [ x86_64-darwin ] # uses glibc-specific ptsname_r
+  charsetdetect:                                [ aarch64-linux ] # not supported by vendored lib / not configured properly https://github.com/batterseapower/libcharsetdetect/issues/3
+  crackNum:                                     [ aarch64-linux ] # depends on sbv, which is not supported on aarch64-linux
+  cut-the-crap:                                 [ x86_64-darwin ]
+  d3d11binding:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  DirectSound:                                  [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  dx9base:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  dx9d3d:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  dx9d3dx:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Euterpea:                                     [ x86_64-darwin ]
+  follow-file:                                  [ x86_64-darwin ]
+  freenect:                                     [ x86_64-darwin ]
+  FTGL:                                         [ x86_64-darwin ]
+  ghcjs-dom-hello:                              [ x86_64-darwin ]
+  gi-dbusmenugtk3:                              [ x86_64-darwin ]
+  gi-dbusmenu:                                  [ x86_64-darwin ]
+  gi-ggit:                                      [ x86_64-darwin ]
+  gi-ibus:                                      [ x86_64-darwin ]
+  gi-ostree:                                    [ x86_64-darwin ]
+  gi-vte:                                       [ x86_64-darwin ]
+  gnome-keyring:                                [ x86_64-darwin ]
+  gtk-mac-integration:                          [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
+  gtk-sni-tray:                                 [ x86_64-darwin ]
+  haskell-snake:                                [ x86_64-darwin ]
+  hcwiid:                                       [ x86_64-darwin ]
+  HFuse:                                        [ x86_64-darwin ]
+  hidapi:                                       [ x86_64-darwin ]
+  hinotify-bytestring:                          [ x86_64-darwin ]
+  hommage-ds:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  honk:                                         [ x86_64-darwin ]
+  hpapi:                                        [ x86_64-darwin ]
+  HSoM:                                         [ x86_64-darwin ]
+  iwlib:                                        [ x86_64-darwin ]
+  jsaddle-webkit2gtk:                           [ x86_64-darwin ]
+  LambdaHack:                                   [ x86_64-darwin ]
+  large-hashable:                               [ aarch64-linux ] # https://github.com/factisresearch/large-hashable/issues/17
+  libmodbus:                                    [ x86_64-darwin ]
+  libsystemd-journal:                           [ x86_64-darwin ]
+  libtelnet:                                    [ x86_64-darwin ]
+  libzfs:                                       [ x86_64-darwin ]
+  linearEqSolver:                               [ aarch64-linux ]
+  linux-evdev:                                  [ x86_64-darwin ]
+  linux-file-extents:                           [ x86_64-darwin ]
+  linux-inotify:                                [ x86_64-darwin ]
+  linux-mount:                                  [ x86_64-darwin ]
+  linux-namespaces:                             [ x86_64-darwin ]
+  lio-fs:                                       [ x86_64-darwin ]
+  logging-facade-journald:                      [ x86_64-darwin ]
+  midi-alsa:                                    [ x86_64-darwin ]
+  mpi-hs:                                       [ aarch64-linux, x86_64-darwin ]
+  mpi-hs-binary:                                [ aarch64-linux, x86_64-darwin ]
+  mpi-hs-cereal:                                [ aarch64-linux, x86_64-darwin ]
+  mpi-hs-store:                                 [ aarch64-linux, x86_64-darwin ]
+  mplayer-spot:                                 [ aarch64-linux ]
+  netlink:                                      [ x86_64-darwin ]
+  oculus:                                       [ x86_64-darwin ]
+  pam:                                          [ x86_64-darwin ]
+  parport:                                      [ x86_64-darwin ]
+  password:                                     [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
+  password-instances:                           [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
+  persist-state:                                [ aarch64-linux, armv7l-linux ] # https://github.com/minad/persist-state/blob/6fd68c0b8b93dec78218f6d5a1f4fa06ced4e896/src/Data/PersistState.hs#L122-L128
+  piyo:                                         [ x86_64-darwin ]
+  PortMidi-simple:                              [ x86_64-darwin ]
+  PortMidi:                                     [ x86_64-darwin ]
+  posix-api:                                    [ x86_64-darwin ]
+  Raincat:                                      [ x86_64-darwin ]
+  reactive-balsa:                               [ x86_64-darwin ] # depends on alsa-core
+  reactivity:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  reflex-dom-fragment-shader-canvas:            [ x86_64-darwin, aarch64-linux ]
+  reflex-dom:                                   [ x86_64-darwin, aarch64-linux ]
+  reflex-localize-dom:                          [ x86_64-darwin, aarch64-linux ]
+  rtlsdr:                                       [ x86_64-darwin ]
+  rubberband:                                   [ x86_64-darwin ]
+  sbv:                                          [ aarch64-linux ]
+  scat:                                         [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
+  scrypt:                                       [ aarch64-linux, armv7l-linux ] # https://github.com/informatikr/scrypt/issues/8
+  sdl2-mixer:                                   [ x86_64-darwin ]
+  sdl2-ttf:                                     [ x86_64-darwin ]
+  synthesizer-alsa:                             [ x86_64-darwin ]
+  taffybar:                                     [ x86_64-darwin ]
+  termonad:                                     [ x86_64-darwin ]
+  tokyotyrant-haskell:                          [ x86_64-darwin ]
+  udev:                                         [ x86_64-darwin ]
+  Unixutils-shadow:                             [ x86_64-darwin ]
+  verifiable-expressions:                       [ aarch64-linux ]
+  vrpn:                                         [ x86_64-darwin ]
+  vulkan:                                       [ i686-linux, armv7l-linux, x86_64-darwin ]
+  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux, x86_64-darwin ]
+  vulkan-utils:                                 [ x86_64-darwin ]
+  webkit2gtk3-javascriptcore:                   [ x86_64-darwin ]
+  Win32-console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-dhcp-server:                            [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-errors:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-extras:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32:                                        [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-junction-point:                         [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-notify:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-security:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-services:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-services-wrapper:                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  xattr:                                        [ x86_64-darwin ]
+  xgboost-haskell:                              [ aarch64-linux, armv7l-linux ]
+  XInput:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  xmobar:                                       [ x86_64-darwin ]
+  xmonad-extras:                                [ x86_64-darwin ]
+  xmonad-volume:                                [ x86_64-darwin ]
+
+dont-distribute-packages:
+  # Depends on shine, which is a ghcjs project.
+  - shine-varying
+
+  # these packages depend on software with an unfree license
+  - accelerate-bignum
+  - accelerate-blas
+  - accelerate-cublas
+  - accelerate-cuda
+  - accelerate-cufft
+  - accelerate-examples
+  - accelerate-fft
+  - accelerate-fourier-benchmark
+  - accelerate-io-array
+  - accelerate-io-bmp
+  - accelerate-io-bytestring
+  - accelerate-io-cereal
+  - accelerate-io-JuicyPixels
+  - accelerate-io-repa
+  - accelerate-io-vector
+  - accelerate-kullback-liebler
+  - accelerate-llvm-ptx
+  - bindings-yices
+  - boolector
+  - ccelerate-cuda
+  - containers-accelerate
+  - cplex-hs
+  - cublas
+  - cuda # 2020-08-18 because of dependency nvidia-x11
+  - cufft
+  - cusolver
+  - cusparse
+  - gloss-raster-accelerate
+  - hashable-accelerate
+  - libnvvm
+  - matlab
+  - nvvm
+  - Obsidian
+  - odpic-raw
+  - patch-image
+  # license for input data unclear, dependency not on Hackage
+  # see https://github.com/NixOS/nixpkgs/pull/88604
+  - tensorflow-mnist
+  - yices-easy
+  - yices-painless
+
+  # These packages don‘t build because they use deprecated webkit versions.
+  - diagrams-hsqml
+  - dialog
+  - ghcjs-dom-webkit
+  - gi-webkit
+  - hs-mesos
+  - hsqml
+  - hsqml-datamodel
+  - hsqml-demo-manic
+  - hsqml-demo-notes
+  - hsqml-demo-samples
+  - hstorchat
+  - jsaddle-webkitgtk
+  - jsc
+  - lambdacat
+  - manatee-all
+  - manatee-browser
+  - manatee-reader
+  - markup-preview
+  - spike
+  - web-browser-in-haskell
+  - webkit
+  - webkitgtk3
+  - webkitgtk3-javascriptcore
+  - websnap
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
new file mode 100644
index 000000000000..bfe0b93b3e41
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -0,0 +1,2724 @@
+# Stackage Nightly 2021-06-01
+# This file is auto-generated by
+# maintainers/scripts/haskell/update-stackage.sh
+default-package-overrides:
+  - abstract-deque ==0.3
+  - abstract-par ==0.3.3
+  - AC-Angle ==1.0
+  - accuerr ==0.2.0.2
+  - ace ==0.6
+  - action-permutations ==0.0.0.1
+  - ad ==4.4.1
+  - adjunctions ==4.4
+  - adler32 ==0.1.2.0
+  - aern2-mp ==0.2.6.0
+  - aern2-real ==0.2.6.0
+  - aeson ==1.5.6.0
+  - aeson-attoparsec ==0.0.0
+  - aeson-better-errors ==0.9.1.0
+  - aeson-casing ==0.2.0.0
+  - aeson-combinators ==0.0.5.0
+  - aeson-commit ==1.3
+  - aeson-compat ==0.3.9
+  - aeson-default ==0.9.1.0
+  - aeson-diff ==1.1.0.9
+  - aeson-generic-compat ==0.0.1.3
+  - aeson-lens ==0.5.0.0
+  - aeson-optics ==1.1.0.1
+  - aeson-picker ==0.1.0.5
+  - aeson-pretty ==0.8.8
+  - aeson-qq ==0.8.3
+  - aeson-schemas ==1.3.3
+  - aeson-typescript ==0.3.0.1
+  - aeson-with ==0.1.2.0
+  - aeson-yak ==0.1.1.3
+  - aeson-yaml ==1.1.0.0
+  - Agda ==2.6.1.3
+  - agda2lagda ==0.2020.11.1
+  - al ==0.1.4.2
+  - alarmclock ==0.7.0.5
+  - alerts ==0.1.2.0
+  - alex ==3.2.6
+  - alex-meta ==0.3.0.13
+  - alg ==0.2.13.1
+  - algebraic-graphs ==0.5
+  - Allure ==0.10.2.0
+  - almost-fix ==0.0.2
+  - alsa-core ==0.5.0.1
+  - alsa-mixer ==0.3.0
+  - alsa-pcm ==0.6.1.1
+  - alsa-seq ==0.6.0.8
+  - alternative-vector ==0.0.0
+  - ALUT ==2.4.0.3
+  - amazonka-apigateway ==1.6.1
+  - amazonka-application-autoscaling ==1.6.1
+  - amazonka-appstream ==1.6.1
+  - amazonka-athena ==1.6.1
+  - amazonka-autoscaling ==1.6.1
+  - amazonka-budgets ==1.6.1
+  - amazonka-certificatemanager ==1.6.1
+  - amazonka-cloudformation ==1.6.1
+  - amazonka-cloudfront ==1.6.1
+  - amazonka-cloudhsm ==1.6.1
+  - amazonka-cloudsearch ==1.6.1
+  - amazonka-cloudsearch-domains ==1.6.1
+  - amazonka-cloudtrail ==1.6.1
+  - amazonka-cloudwatch ==1.6.1
+  - amazonka-cloudwatch-events ==1.6.1
+  - amazonka-cloudwatch-logs ==1.6.1
+  - amazonka-codebuild ==1.6.1
+  - amazonka-codecommit ==1.6.1
+  - amazonka-codedeploy ==1.6.1
+  - amazonka-codepipeline ==1.6.1
+  - amazonka-cognito-identity ==1.6.1
+  - amazonka-cognito-idp ==1.6.1
+  - amazonka-cognito-sync ==1.6.1
+  - amazonka-config ==1.6.1
+  - amazonka-core ==1.6.1
+  - amazonka-datapipeline ==1.6.1
+  - amazonka-devicefarm ==1.6.1
+  - amazonka-directconnect ==1.6.1
+  - amazonka-discovery ==1.6.1
+  - amazonka-dms ==1.6.1
+  - amazonka-ds ==1.6.1
+  - amazonka-dynamodb ==1.6.1
+  - amazonka-dynamodb-streams ==1.6.1
+  - amazonka-ecr ==1.6.1
+  - amazonka-ecs ==1.6.1
+  - amazonka-efs ==1.6.1
+  - amazonka-elasticache ==1.6.1
+  - amazonka-elasticbeanstalk ==1.6.1
+  - amazonka-elasticsearch ==1.6.1
+  - amazonka-elastictranscoder ==1.6.1
+  - amazonka-elb ==1.6.1
+  - amazonka-elbv2 ==1.6.1
+  - amazonka-emr ==1.6.1
+  - amazonka-gamelift ==1.6.1
+  - amazonka-glacier ==1.6.1
+  - amazonka-glue ==1.6.1
+  - amazonka-health ==1.6.1
+  - amazonka-iam ==1.6.1
+  - amazonka-importexport ==1.6.1
+  - amazonka-inspector ==1.6.1
+  - amazonka-iot ==1.6.1
+  - amazonka-iot-dataplane ==1.6.1
+  - amazonka-kinesis ==1.6.1
+  - amazonka-kinesis-analytics ==1.6.1
+  - amazonka-kinesis-firehose ==1.6.1
+  - amazonka-kms ==1.6.1
+  - amazonka-lambda ==1.6.1
+  - amazonka-lightsail ==1.6.1
+  - amazonka-marketplace-analytics ==1.6.1
+  - amazonka-marketplace-metering ==1.6.1
+  - amazonka-ml ==1.6.1
+  - amazonka-opsworks ==1.6.1
+  - amazonka-opsworks-cm ==1.6.1
+  - amazonka-pinpoint ==1.6.1
+  - amazonka-polly ==1.6.1
+  - amazonka-rds ==1.6.1
+  - amazonka-redshift ==1.6.1
+  - amazonka-rekognition ==1.6.1
+  - amazonka-route53 ==1.6.1
+  - amazonka-route53-domains ==1.6.1
+  - amazonka-s3 ==1.6.1
+  - amazonka-sdb ==1.6.1
+  - amazonka-servicecatalog ==1.6.1
+  - amazonka-ses ==1.6.1
+  - amazonka-shield ==1.6.1
+  - amazonka-sms ==1.6.1
+  - amazonka-snowball ==1.6.1
+  - amazonka-sns ==1.6.1
+  - amazonka-sqs ==1.6.1
+  - amazonka-ssm ==1.6.1
+  - amazonka-stepfunctions ==1.6.1
+  - amazonka-storagegateway ==1.6.1
+  - amazonka-sts ==1.6.1
+  - amazonka-support ==1.6.1
+  - amazonka-swf ==1.6.1
+  - amazonka-test ==1.6.1
+  - amazonka-waf ==1.6.1
+  - amazonka-workspaces ==1.6.1
+  - amazonka-xray ==1.6.1
+  - amqp ==0.22.0
+  - amqp-utils ==0.6.1.1
+  - annotated-wl-pprint ==0.7.0
+  - ansi-terminal ==0.11
+  - ansi-wl-pprint ==0.6.9
+  - ANum ==0.2.0.2
+  - apecs ==0.9.2
+  - apecs-gloss ==0.2.4
+  - apecs-physics ==0.4.5
+  - api-field-json-th ==0.1.0.2
+  - api-maker ==0.1.0.0
+  - ap-normalize ==0.1.0.1
+  - appar ==0.1.8
+  - appendmap ==0.1.5
+  - apply-refact ==0.9.3.0
+  - apportionment ==0.0.0.3
+  - approximate ==0.3.4
+  - approximate-equality ==1.1.0.2
+  - app-settings ==0.2.0.12
+  - arbor-lru-cache ==0.1.1.1
+  - arithmoi ==0.11.0.1
+  - array-memoize ==0.6.0
+  - arrow-extras ==0.1.0.1
+  - arrows ==0.4.4.2
+  - ascii ==1.0.1.4
+  - ascii-case ==1.0.0.4
+  - ascii-char ==1.0.0.8
+  - asciidiagram ==1.3.3.3
+  - ascii-group ==1.0.0.4
+  - ascii-predicates ==1.0.0.4
+  - ascii-progress ==0.3.3.0
+  - ascii-superset ==1.0.1.4
+  - ascii-th ==1.0.0.4
+  - asif ==6.0.4
+  - asn1-encoding ==0.9.6
+  - asn1-parse ==0.9.5
+  - asn1-types ==0.3.4
+  - assert-failure ==0.1.2.5
+  - assoc ==1.0.2
+  - astro ==0.4.3.0
+  - async ==2.2.3
+  - async-extra ==0.2.0.0
+  - async-pool ==0.9.1
+  - async-refresh ==0.3.0.0
+  - async-refresh-tokens ==0.4.0.0
+  - atom-basic ==0.2.5
+  - atomic-primops ==0.8.4
+  - atomic-write ==0.2.0.7
+  - attoparsec ==0.13.2.5
+  - attoparsec-base64 ==0.0.0
+  - attoparsec-binary ==0.2
+  - attoparsec-expr ==0.1.1.2
+  - attoparsec-iso8601 ==1.0.2.0
+  - attoparsec-path ==0.0.0.1
+  - audacity ==0.0.2
+  - aur ==7.0.6
+  - aura ==3.2.4
+  - authenticate ==1.3.5
+  - authenticate-oauth ==1.6.0.1
+  - autoexporter ==1.1.20
+  - auto-update ==0.1.6
+  - avers ==0.0.17.1
+  - avro ==0.5.2.0
+  - aws-cloudfront-signed-cookies ==0.2.0.6
+  - aws-xray-client ==0.1.0.0
+  - aws-xray-client-wai ==0.1.0.0
+  - backprop ==0.2.6.4
+  - backtracking ==0.1.0
+  - bank-holidays-england ==0.2.0.6
+  - barbies ==2.0.2.0
+  - base16 ==0.3.0.1
+  - base16-bytestring ==1.0.1.0
+  - base16-lens ==0.1.3.2
+  - base32 ==0.2.0.0
+  - base32-lens ==0.1.1.1
+  - base32string ==0.9.1
+  - base58-bytestring ==0.1.0
+  - base58string ==0.10.0
+  - base64 ==0.4.2.3
+  - base64-bytestring ==1.1.0.0
+  - base64-bytestring-type ==1.0.1
+  - base64-lens ==0.3.1
+  - base64-string ==0.2
+  - base-compat ==0.11.2
+  - base-compat-batteries ==0.11.2
+  - basement ==0.0.12
+  - base-orphans ==0.8.4
+  - base-prelude ==1.4
+  - base-unicode-symbols ==0.2.4.2
+  - basic-prelude ==0.7.0
+  - bazel-runfiles ==0.12
+  - bbdb ==0.8
+  - bcp47 ==0.2.0.4
+  - bcp47-orphans ==0.1.0.4
+  - bcrypt ==0.0.11
+  - bech32 ==1.1.0
+  - bech32-th ==1.0.2
+  - bench ==1.0.12
+  - benchpress ==0.2.2.16
+  - between ==0.11.0.0
+  - bibtex ==0.1.0.6
+  - bifunctors ==5.5.11
+  - bimap ==0.4.0
+  - bimaps ==0.1.0.2
+  - bimap-server ==0.1.0.1
+  - bin ==0.1.1
+  - binary-conduit ==1.3.1
+  - binary-ext ==2.0.4
+  - binary-ieee754 ==0.1.0.0
+  - binary-instances ==1.0.1
+  - binary-list ==1.1.1.2
+  - binary-orphans ==1.0.1
+  - binary-parser ==0.5.7
+  - binary-parsers ==0.2.4.0
+  - binary-search ==2.0.0
+  - binary-shared ==0.8.3
+  - binary-tagged ==0.3
+  - bindings-DSL ==1.0.25
+  - bindings-GLFW ==3.3.2.0
+  - bindings-libzip ==1.0.1
+  - bindings-uname ==0.1
+  - bins ==0.1.2.0
+  - bitarray ==0.0.1.1
+  - bits ==0.5.3
+  - bitset-word8 ==0.1.1.2
+  - bits-extra ==0.0.2.0
+  - bitvec ==1.1.1.0
+  - bitwise-enum ==1.0.1.0
+  - blake2 ==0.3.0
+  - blanks ==0.5.0
+  - blas-carray ==0.1.0.1
+  - blas-comfort-array ==0.0.0.2
+  - blas-ffi ==0.1
+  - blaze-bootstrap ==0.1.0.1
+  - blaze-builder ==0.4.2.1
+  - blaze-html ==0.9.1.2
+  - blaze-markup ==0.8.2.8
+  - blaze-svg ==0.3.6.1
+  - blaze-textual ==0.2.1.0
+  - bmp ==1.2.6.3
+  - BNFC ==2.9.1
+  - BNFC-meta ==0.6.1
+  - board-games ==0.3
+  - boltzmann-samplers ==0.1.1.0
+  - Boolean ==0.2.4
+  - boolean-like ==0.1.1.0
+  - boolsimplifier ==0.1.8
+  - boots ==0.2.0.1
+  - bordacount ==0.1.0.0
+  - boring ==0.2
+  - both ==0.1.1.1
+  - bound ==2.0.3
+  - BoundedChan ==1.0.3.0
+  - bounded-queue ==1.0.0
+  - boundingboxes ==0.2.3
+  - bower-json ==1.0.0.1
+  - boxes ==0.1.5
+  - brick ==0.62
+  - broadcast-chan ==0.2.1.1
+  - bsb-http-chunked ==0.0.0.4
+  - bson ==0.4.0.1
+  - btrfs ==0.2.0.0
+  - buffer-builder ==0.2.4.7
+  - buffer-pipe ==0.0
+  - bugsnag-haskell ==0.0.4.1
+  - bugsnag-hs ==0.2.0.3
+  - bugzilla-redhat ==0.3.1
+  - burrito ==1.2.0.2
+  - butcher ==1.3.3.2
+  - buttplug-hs-core ==0.1.0.0
+  - bv ==0.5
+  - bv-little ==1.1.1
+  - byteable ==0.1.1
+  - byte-count-reader ==0.10.1.3
+  - bytedump ==1.0
+  - byte-order ==0.1.2.0
+  - byteorder ==1.0.4
+  - bytes ==0.17.1
+  - byteset ==0.1.1.0
+  - bytestring-builder ==0.10.8.2.0
+  - bytestring-conversion ==0.3.1
+  - bytestring-lexing ==0.5.0.2
+  - bytestring-mmap ==0.2.2
+  - bytestring-strict-builder ==0.4.5.4
+  - bytestring-to-vector ==0.3.0.1
+  - bytestring-tree-builder ==0.2.7.9
+  - bz2 ==1.0.1.0
+  - bzlib ==0.5.1.0
+  - bzlib-conduit ==0.3.0.2
+  - c14n ==0.1.0.1
+  - c2hs ==0.28.7
+  - cabal-appimage ==0.3.0.2
+  - cabal-debian ==5.1
+  - cabal-doctest ==1.0.8
+  - cabal-file ==0.1.1
+  - cabal-flatpak ==0.1.0.2
+  - cabal-plan ==0.7.2.0
+  - cabal-rpm ==2.0.8
+  - cache ==0.1.3.0
+  - cacophony ==0.10.1
+  - calendar-recycling ==0.0.0.1
+  - call-stack ==0.3.0
+  - can-i-haz ==0.3.1.0
+  - capability ==0.4.0.0
+  - ca-province-codes ==1.0.0.0
+  - cardano-coin-selection ==1.0.1
+  - carray ==0.1.6.8
+  - casa-client ==0.0.1
+  - casa-types ==0.0.2
+  - cased ==0.1.0.0
+  - case-insensitive ==1.2.1.0
+  - cases ==0.1.4.1
+  - casing ==0.1.4.1
+  - cassava ==0.5.2.0
+  - cassava-conduit ==0.6.0
+  - cassava-megaparsec ==2.0.2
+  - cast ==0.1.0.2
+  - category ==0.2.5.0
+  - cayley-client ==0.4.15
+  - cborg ==0.2.5.0
+  - cborg-json ==0.2.2.0
+  - cdar-mBound ==0.1.0.2
+  - c-enum ==0.1.0.1
+  - cereal ==0.5.8.1
+  - cereal-conduit ==0.8.0
+  - cereal-text ==0.1.0.2
+  - cereal-vector ==0.2.0.1
+  - cfenv ==0.1.0.0
+  - cgi ==3001.5.0.0
+  - chan ==0.0.4.1
+  - ChannelT ==0.0.0.7
+  - character-cases ==0.1.0.6
+  - charset ==0.3.8
+  - charsetdetect-ae ==1.1.0.4
+  - Chart ==1.9.3
+  - chaselev-deque ==0.5.0.5
+  - ChasingBottoms ==1.3.1.10
+  - cheapskate ==0.1.1.2
+  - cheapskate-highlight ==0.1.0.0
+  - cheapskate-lucid ==0.1.0.0
+  - checkers ==0.5.6
+  - checksum ==0.0
+  - chimera ==0.3.1.0
+  - chiphunk ==0.1.4.0
+  - choice ==0.2.2
+  - chronologique ==0.3.1.3
+  - chronos ==1.1.1
+  - chronos-bench ==0.2.0.2
+  - chunked-data ==0.3.1
+  - cipher-aes ==0.2.11
+  - cipher-camellia ==0.0.2
+  - cipher-des ==0.0.6
+  - cipher-rc4 ==0.1.4
+  - circle-packing ==0.1.0.6
+  - circular ==0.3.1.1
+  - citeproc ==0.3.0.9
+  - clash-ghc ==1.4.2
+  - clash-lib ==1.4.2
+  - clash-prelude ==1.4.2
+  - classy-prelude ==1.5.0
+  - classy-prelude-conduit ==1.5.0
+  - clay ==0.13.3
+  - clientsession ==0.9.1.2
+  - climb ==0.3.3
+  - Clipboard ==2.3.2.0
+  - clock ==0.8
+  - clock-extras ==0.1.0.2
+  - closed ==0.2.0.1
+  - clumpiness ==0.17.0.2
+  - ClustalParser ==1.3.0
+  - cmark ==0.6
+  - cmark-gfm ==0.2.2
+  - cmark-lucid ==0.1.0.0
+  - cmdargs ==0.10.21
+  - codec-beam ==0.2.0
+  - code-page ==0.2.1
+  - collect-errors ==0.1.5.0
+  - co-log-concurrent ==0.5.0.0
+  - co-log-core ==0.2.1.1
+  - Color ==0.3.1
+  - colorful-monoids ==0.2.1.3
+  - colorize-haskell ==1.0.1
+  - colour ==2.3.5
+  - combinatorial ==0.1.0.1
+  - comfort-array ==0.4.1
+  - comfort-graph ==0.0.3.1
+  - commonmark ==0.1.1.4
+  - commonmark-extensions ==0.2.0.4
+  - commonmark-pandoc ==0.2.0.1
+  - commutative ==0.0.2
+  - comonad ==5.0.8
+  - comonad-extras ==4.0.1
+  - compactmap ==0.1.4.2.1
+  - compdata ==0.12.1
+  - compensated ==0.8.3
+  - compiler-warnings ==0.1.0
+  - composable-associations ==0.1.0.0
+  - composable-associations-aeson ==0.1.0.1
+  - composite-aeson ==0.7.5.0
+  - composite-aeson-path ==0.7.5.0
+  - composite-aeson-refined ==0.7.5.0
+  - composite-aeson-throw ==0.1.0.0
+  - composite-base ==0.7.5.0
+  - composite-binary ==0.7.5.0
+  - composite-ekg ==0.7.5.0
+  - composite-hashable ==0.7.5.0
+  - composite-tuple ==0.1.2.0
+  - composite-xstep ==0.1.0.0
+  - composition ==1.0.2.2
+  - composition-extra ==2.0.0
+  - concise ==0.1.0.1
+  - concurrency ==1.11.0.1
+  - concurrent-extra ==0.7.0.12
+  - concurrent-output ==1.10.12
+  - concurrent-split ==0.0.1.1
+  - concurrent-supply ==0.1.8
+  - cond ==0.4.1.1
+  - conduino ==0.2.2.0
+  - conduit ==1.3.4.1
+  - conduit-algorithms ==0.0.11.0
+  - conduit-combinators ==1.3.0
+  - conduit-concurrent-map ==0.1.1
+  - conduit-extra ==1.3.5
+  - conduit-parse ==0.2.1.0
+  - conduit-zstd ==0.0.2.0
+  - conferer ==1.1.0.0
+  - conferer-aeson ==1.1.0.1
+  - conferer-hspec ==1.1.0.0
+  - conferer-warp ==1.1.0.0
+  - config-ini ==0.2.4.0
+  - configurator ==0.3.0.0
+  - configurator-export ==0.1.0.1
+  - configurator-pg ==0.2.5
+  - connection ==0.3.1
+  - connection-pool ==0.2.2
+  - console-style ==0.0.2.1
+  - constraint ==0.1.4.0
+  - constraints ==0.13
+  - constraints-extras ==0.3.1.0
+  - constraint-tuples ==0.1.2
+  - construct ==0.3.0.2
+  - contravariant ==1.5.3
+  - contravariant-extras ==0.3.5.2
+  - control-bool ==0.2.1
+  - control-dsl ==0.2.1.3
+  - control-monad-free ==0.6.2
+  - control-monad-omega ==0.3.2
+  - convertible ==1.1.1.0
+  - cookie ==0.4.5
+  - core-data ==0.2.1.9
+  - core-program ==0.2.7.1
+  - core-text ==0.3.0.0
+  - countable ==1.0
+  - country ==0.2.1
+  - cpphs ==1.20.9.1
+  - cprng-aes ==0.6.1
+  - cpu ==0.1.2
+  - cpuinfo ==0.1.0.2
+  - crackNum ==3.1
+  - crc32c ==0.0.0
+  - credential-store ==0.1.2
+  - criterion ==1.5.9.0
+  - criterion-measurement ==0.1.2.0
+  - cron ==0.7.0
+  - crypto-api ==0.13.3
+  - crypto-cipher-types ==0.0.9
+  - crypto-enigma ==0.1.1.6
+  - cryptohash ==0.11.9
+  - cryptohash-cryptoapi ==0.1.4
+  - cryptohash-md5 ==0.11.100.1
+  - cryptohash-sha1 ==0.11.100.1
+  - cryptohash-sha256 ==0.11.102.0
+  - cryptohash-sha512 ==0.11.100.1
+  - cryptonite ==0.28
+  - cryptonite-conduit ==0.2.2
+  - cryptonite-openssl ==0.7
+  - crypto-numbers ==0.2.7
+  - crypto-pubkey ==0.2.8
+  - crypto-pubkey-types ==0.4.3
+  - crypto-random ==0.0.9
+  - crypto-random-api ==0.2.0
+  - csp ==1.4.0
+  - css-syntax ==0.1.0.0
+  - css-text ==0.1.3.0
+  - c-struct ==0.1.0.1
+  - csv ==0.1.2
+  - ctrie ==0.2
+  - cubicbezier ==0.6.0.6
+  - cubicspline ==0.1.2
+  - cuckoo-filter ==0.2.0.2
+  - cue-sheet ==2.0.1
+  - curl ==1.3.8
+  - currencies ==0.2.0.0
+  - currency ==0.2.0.0
+  - cursor ==0.3.0.0
+  - cursor-brick ==0.1.0.0
+  - cursor-fuzzy-time ==0.0.0.0
+  - cursor-gen ==0.3.0.0
+  - cutter ==0.0
+  - cyclotomic ==1.1.1
+  - czipwith ==1.0.1.3
+  - d10 ==0.2.1.6
+  - data-accessor ==0.2.3
+  - data-accessor-mtl ==0.2.0.4
+  - data-accessor-template ==0.2.1.16
+  - data-accessor-transformers ==0.2.1.7
+  - data-ascii ==1.0.0.6
+  - data-binary-ieee754 ==0.4.4
+  - data-bword ==0.1.0.1
+  - data-checked ==0.3
+  - data-clist ==0.1.2.3
+  - data-compat ==0.1.0.3
+  - data-default ==0.7.1.1
+  - data-default-class ==0.1.2.0
+  - data-default-instances-containers ==0.0.1
+  - data-default-instances-dlist ==0.0.1
+  - data-default-instances-old-locale ==0.0.1
+  - data-diverse ==4.7.0.0
+  - datadog ==0.2.5.0
+  - data-dword ==0.3.2
+  - data-endian ==0.1.1
+  - data-fix ==0.3.1
+  - data-forest ==0.1.0.8
+  - data-has ==0.4.0.0
+  - data-hash ==0.2.0.1
+  - data-interval ==2.1.0
+  - data-inttrie ==0.1.4
+  - data-lens-light ==0.1.2.2
+  - data-memocombinators ==0.5.1
+  - data-msgpack ==0.0.13
+  - data-msgpack-types ==0.0.3
+  - data-or ==1.0.0.5
+  - data-ordlist ==0.4.7.0
+  - data-ref ==0.0.2
+  - data-reify ==0.6.3
+  - data-serializer ==0.3.5
+  - data-textual ==0.3.0.3
+  - dataurl ==0.1.0.0
+  - DAV ==1.3.4
+  - DBFunctor ==0.1.2.1
+  - dbus ==1.2.17
+  - dbus-hslogger ==0.1.0.1
+  - debian ==4.0.2
+  - debian-build ==0.10.2.0
+  - debug-trace-var ==0.2.0
+  - dec ==0.0.4
+  - Decimal ==0.5.2
+  - declarative ==0.5.4
+  - deepseq-generics ==0.2.0.0
+  - deepseq-instances ==0.1.0.1
+  - deferred-folds ==0.9.17
+  - dejafu ==2.4.0.2
+  - dense-linear-algebra ==0.1.0.0
+  - dependent-map ==0.4.0.0
+  - dependent-sum ==0.7.1.0
+  - dependent-sum-template ==0.1.0.3
+  - depq ==0.4.2
+  - deque ==0.4.3
+  - deriveJsonNoPrefix ==0.1.0.1
+  - derive-topdown ==0.0.2.2
+  - deriving-aeson ==0.2.6.1
+  - deriving-compat ==0.5.10
+  - derulo ==1.0.10
+  - dhall ==1.38.1
+  - dhall-bash ==1.0.36
+  - dhall-json ==1.7.6
+  - dhall-lsp-server ==1.0.14
+  - dhall-yaml ==1.2.6
+  - diagrams-solve ==0.1.3
+  - dialogflow-fulfillment ==0.1.1.4
+  - di-core ==1.0.4
+  - dictionary-sharing ==0.1.0.0
+  - Diff ==0.4.0
+  - digest ==0.0.1.2
+  - digits ==0.3.1
+  - dimensional ==1.4
+  - di-monad ==1.3.1
+  - directory-tree ==0.12.1
+  - direct-sqlite ==2.3.26
+  - dirichlet ==0.1.0.4
+  - discount ==0.1.1
+  - disk-free-space ==0.1.0.1
+  - distributed-closure ==0.4.2.0
+  - distribution-opensuse ==1.1.1
+  - distributive ==0.6.2.1
+  - dl-fedora ==0.9
+  - dlist ==0.8.0.8
+  - dlist-instances ==0.1.1.1
+  - dlist-nonempty ==0.1.1
+  - dns ==4.0.1
+  - dockerfile ==0.2.0
+  - doclayout ==0.3.0.2
+  - doctemplates ==0.9
+  - doctest ==0.16.3
+  - doctest-discover ==0.2.0.0
+  - doctest-driver-gen ==0.3.0.3
+  - doctest-exitcode-stdio ==0.0
+  - doctest-extract ==0.1
+  - doctest-lib ==0.1
+  - doldol ==0.4.1.2
+  - do-list ==1.0.1
+  - do-notation ==0.1.0.2
+  - dot ==0.3
+  - dotenv ==0.8.0.7
+  - dotgen ==0.4.3
+  - dotnet-timespan ==0.0.1.0
+  - double-conversion ==2.0.2.0
+  - download ==0.3.2.7
+  - download-curl ==0.1.4
+  - drinkery ==0.4
+  - dsp ==0.2.5.1
+  - dual ==0.1.1.1
+  - dublincore-xml-conduit ==0.1.0.2
+  - dunai ==0.7.0
+  - duration ==0.2.0.0
+  - dvorak ==0.1.0.0
+  - dynamic-state ==0.3.1
+  - dyre ==0.9.1
+  - eap ==0.9.0.2
+  - earcut ==0.1.0.4
+  - Earley ==0.13.0.1
+  - easy-file ==0.2.2
+  - Ebnf2ps ==1.0.15
+  - echo ==0.1.4
+  - ecstasy ==0.2.1.0
+  - ed25519 ==0.0.5.0
+  - edit-distance ==0.2.2.1
+  - edit-distance-vector ==1.0.0.4
+  - editor-open ==0.6.0.0
+  - egison ==4.1.2
+  - egison-pattern-src ==0.2.1.2
+  - egison-pattern-src-th-mode ==0.2.1.2
+  - either ==5.0.1.1
+  - either-both ==0.1.1.1
+  - either-unwrap ==1.1
+  - ekg ==0.4.0.15
+  - ekg-core ==0.1.1.7
+  - ekg-json ==0.1.0.6
+  - ekg-statsd ==0.2.5.0
+  - elerea ==2.9.0
+  - elf ==0.30
+  - eliminators ==0.7
+  - elm2nix ==0.2.1
+  - elm-bridge ==0.6.1
+  - elm-core-sources ==1.0.0
+  - elm-export ==0.6.0.1
+  - elynx ==0.5.0.2
+  - elynx-markov ==0.5.0.2
+  - elynx-nexus ==0.5.0.2
+  - elynx-seq ==0.5.0.2
+  - elynx-tools ==0.5.0.2
+  - elynx-tree ==0.5.0.2
+  - email-validate ==2.3.2.13
+  - emd ==0.2.0.0
+  - emojis ==0.1
+  - enclosed-exceptions ==1.0.3
+  - ENIG ==0.0.1.0
+  - entropy ==0.4.1.6
+  - enummapset ==0.6.0.3
+  - enumset ==0.0.5
+  - enum-subset-generate ==0.1.0.0
+  - envelope ==0.2.2.0
+  - envparse ==0.4.1
+  - envy ==2.1.0.0
+  - epub-metadata ==4.5
+  - eq ==4.2.1
+  - equal-files ==0.0.5.3
+  - equational-reasoning ==0.7.0.0
+  - equivalence ==0.3.5
+  - erf ==2.0.0.0
+  - error-or ==0.1.2.0
+  - error-or-utils ==0.1.1
+  - errors ==2.3.0
+  - errors-ext ==0.4.2
+  - ersatz ==0.4.9
+  - esqueleto ==3.5.0.0
+  - essence-of-live-coding ==0.2.5
+  - essence-of-live-coding-gloss ==0.2.5
+  - essence-of-live-coding-pulse ==0.2.5
+  - essence-of-live-coding-quickcheck ==0.2.5
+  - etc ==0.4.1.0
+  - eve ==0.1.9.0
+  - eventful-core ==0.2.0
+  - eventful-test-helpers ==0.2.0
+  - event-list ==0.1.2
+  - eventstore ==1.4.1
+  - every ==0.0.1
+  - exact-combinatorics ==0.2.0.9
+  - exact-pi ==0.5.0.1
+  - exception-hierarchy ==0.1.0.4
+  - exception-mtl ==0.4.0.1
+  - exceptions ==0.10.4
+  - exception-transformers ==0.4.0.9
+  - exception-via ==0.1.0.0
+  - executable-path ==0.0.3.1
+  - exit-codes ==1.0.0
+  - exomizer ==1.0.0
+  - experimenter ==0.1.0.12
+  - expiring-cache-map ==0.0.6.1
+  - explicit-exception ==0.1.10
+  - exp-pairs ==0.2.1.0
+  - express ==0.1.12
+  - extended-reals ==0.2.4.0
+  - extensible-effects ==5.0.0.1
+  - extensible-exceptions ==0.1.1.4
+  - extra ==1.7.9
+  - extractable-singleton ==0.0.1
+  - extrapolate ==0.4.4
+  - fail ==4.9.0.0
+  - failable ==1.2.4.0
+  - fakedata ==0.8.0
+  - fakedata-parser ==0.1.0.0
+  - fakefs ==0.3.0.2
+  - fakepull ==0.3.0.2
+  - faktory ==1.0.3.0
+  - fast-digits ==0.3.0.0
+  - fast-logger ==3.0.5
+  - fast-math ==1.0.2
+  - fb ==2.1.1
+  - fclabels ==2.0.5.1
+  - feature-flags ==0.1.0.1
+  - fedora-dists ==1.1.2
+  - fedora-haskell-tools ==0.9
+  - feed ==1.3.2.0
+  - FenwickTree ==0.1.2.1
+  - fft ==0.1.8.7
+  - fgl ==5.7.0.3
+  - file-embed ==0.0.14.0
+  - file-embed-lzma ==0
+  - filelock ==0.1.1.5
+  - filemanip ==0.3.6.3
+  - filepath-bytestring ==1.4.2.1.7
+  - file-path-th ==0.1.0.0
+  - filepattern ==0.1.2
+  - fileplow ==0.1.0.0
+  - filtrable ==0.1.4.0
+  - fin ==0.2
+  - FindBin ==0.0.5
+  - fingertree ==0.1.4.2
+  - finite-typelits ==0.1.4.2
+  - first-class-families ==0.8.0.1
+  - first-class-patterns ==0.3.2.5
+  - fitspec ==0.4.8
+  - fixed ==0.3
+  - fixed-length ==0.2.2.1
+  - fixed-vector ==1.2.0.0
+  - fixed-vector-hetero ==0.6.1.0
+  - fix-whitespace ==0.0.5
+  - flac ==0.2.0
+  - flac-picture ==0.1.2
+  - flags-applicative ==0.1.0.3
+  - flat ==0.4.4
+  - flat-mcmc ==1.5.2
+  - flexible-defaults ==0.0.3
+  - FloatingHex ==0.5
+  - floatshow ==0.2.4
+  - flow ==1.0.22
+  - flush-queue ==1.0.0
+  - fmlist ==0.9.4
+  - fmt ==0.6.1.2
+  - fn ==0.3.0.2
+  - focus ==1.0.2
+  - focuslist ==0.1.0.2
+  - foldable1 ==0.1.0.0
+  - fold-debounce ==0.2.0.9
+  - fold-debounce-conduit ==0.2.0.6
+  - foldl ==1.4.11
+  - folds ==0.7.6
+  - follow-file ==0.0.3
+  - FontyFruity ==0.5.3.5
+  - foreign-store ==0.2
+  - ForestStructures ==0.0.1.0
+  - forkable-monad ==0.2.0.3
+  - forma ==1.1.3
+  - format-numbers ==0.1.0.1
+  - formatting ==6.3.7
+  - foundation ==0.0.26.1
+  - fourmolu ==0.3.0.0
+  - free ==5.1.5
+  - free-categories ==0.2.0.2
+  - freenect ==1.2.1
+  - freer-simple ==1.2.1.1
+  - freetype2 ==0.2.0
+  - free-vl ==0.1.4
+  - friendly-time ==0.4.1
+  - from-sum ==0.2.3.0
+  - frontmatter ==0.1.0.2
+  - fsnotify ==0.3.0.1
+  - fsnotify-conduit ==0.1.1.1
+  - ftp-client ==0.5.1.4
+  - ftp-client-conduit ==0.5.0.5
+  - funcmp ==1.9
+  - function-builder ==0.3.0.1
+  - functor-classes-compat ==1.0.1
+  - functor-combinators ==0.3.6.0
+  - fusion-plugin ==0.2.2
+  - fusion-plugin-types ==0.1.0
+  - fuzzcheck ==0.1.1
+  - fuzzy ==0.1.0.0
+  - fuzzy-dates ==0.1.1.2
+  - fuzzyset ==0.2.1
+  - fuzzy-time ==0.1.0.0
+  - gauge ==0.2.5
+  - gd ==3000.7.3
+  - gdp ==0.0.3.0
+  - general-games ==1.1.1
+  - generic-aeson ==0.2.0.12
+  - generic-arbitrary ==0.1.0
+  - generic-constraints ==1.1.1.1
+  - generic-data ==0.9.2.0
+  - generic-data-surgery ==0.3.0.0
+  - generic-deriving ==1.13.1
+  - generic-functor ==0.2.0.0
+  - generic-lens ==2.1.0.0
+  - generic-lens-core ==2.1.0.0
+  - generic-monoid ==0.1.0.1
+  - generic-optics ==2.1.0.0
+  - GenericPretty ==1.2.2
+  - generic-random ==1.4.0.0
+  - generics-eot ==0.4.0.1
+  - generics-sop ==0.5.1.1
+  - generics-sop-lens ==0.2.0.1
+  - geniplate-mirror ==0.7.7
+  - genvalidity ==0.11.0.0
+  - genvalidity-aeson ==0.3.0.0
+  - genvalidity-bytestring ==0.6.0.0
+  - genvalidity-containers ==0.9.0.0
+  - genvalidity-criterion ==0.2.0.0
+  - genvalidity-hspec ==0.7.0.4
+  - genvalidity-hspec-aeson ==0.3.1.1
+  - genvalidity-hspec-binary ==0.2.0.4
+  - genvalidity-hspec-cereal ==0.2.0.4
+  - genvalidity-hspec-hashable ==0.2.0.5
+  - genvalidity-hspec-optics ==0.1.1.2
+  - genvalidity-hspec-persistent ==0.0.0.1
+  - genvalidity-mergeful ==0.2.0.0
+  - genvalidity-mergeless ==0.2.0.0
+  - genvalidity-path ==0.3.0.4
+  - genvalidity-persistent ==0.0.0.0
+  - genvalidity-property ==0.5.0.1
+  - genvalidity-scientific ==0.2.1.1
+  - genvalidity-sydtest ==0.0.0.0
+  - genvalidity-sydtest-aeson ==0.0.0.0
+  - genvalidity-sydtest-hashable ==0.0.0.0
+  - genvalidity-sydtest-lens ==0.0.0.0
+  - genvalidity-sydtest-persistent ==0.0.0.1
+  - genvalidity-text ==0.7.0.2
+  - genvalidity-time ==0.3.0.0
+  - genvalidity-typed-uuid ==0.0.0.2
+  - genvalidity-unordered-containers ==0.3.0.1
+  - genvalidity-uuid ==0.1.0.4
+  - genvalidity-vector ==0.3.0.1
+  - geojson ==4.0.2
+  - getopt-generics ==0.13.0.4
+  - ghc-byteorder ==4.11.0.0.10
+  - ghc-check ==0.5.0.4
+  - ghc-core ==0.5.6
+  - ghc-events ==0.17.0
+  - ghc-exactprint ==0.6.4
+  - ghcid ==0.8.7
+  - ghci-hexcalc ==0.1.1.0
+  - ghcjs-codemirror ==0.0.0.2
+  - ghc-lib ==8.10.4.20210206
+  - ghc-lib-parser ==8.10.4.20210206
+  - ghc-lib-parser-ex ==8.10.0.19
+  - ghc-parser ==0.2.3.0
+  - ghc-paths ==0.1.0.12
+  - ghc-prof ==1.4.1.8
+  - ghc-source-gen ==0.4.0.0
+  - ghc-syntax-highlighter ==0.0.6.0
+  - ghc-tcplugins-extra ==0.4.1
+  - ghc-trace-events ==0.1.2.2
+  - ghc-typelits-extra ==0.4.2
+  - ghc-typelits-knownnat ==0.7.5
+  - ghc-typelits-natnormalise ==0.7.4
+  - ghc-typelits-presburger ==0.6.0.0
+  - ghost-buster ==0.1.1.0
+  - gi-atk ==2.0.22
+  - gi-cairo ==1.0.24
+  - gi-cairo-connector ==0.1.0
+  - gi-cairo-render ==0.1.0
+  - gi-dbusmenu ==0.4.8
+  - gi-dbusmenugtk3 ==0.4.9
+  - gi-gdk ==3.0.23
+  - gi-gdkpixbuf ==2.0.24
+  - gi-gdkx11 ==3.0.10
+  - gi-gio ==2.0.27
+  - gi-glib ==2.0.24
+  - gi-gobject ==2.0.25
+  - gi-graphene ==1.0.2
+  - gi-gtk ==3.0.36
+  - gi-gtk-hs ==0.3.9
+  - gi-harfbuzz ==0.0.3
+  - ginger ==0.10.1.0
+  - gingersnap ==0.3.1.0
+  - gi-pango ==1.0.23
+  - githash ==0.1.5.0
+  - github-release ==1.3.7
+  - github-rest ==1.0.3
+  - github-types ==0.2.1
+  - github-webhooks ==0.15.0
+  - gitlab-haskell ==0.2.5
+  - gitrev ==1.3.1
+  - gi-xlib ==2.0.9
+  - gl ==0.9
+  - glabrous ==2.0.4
+  - GLFW-b ==3.3.0.0
+  - Glob ==0.10.1
+  - gloss ==1.13.2.1
+  - gloss-rendering ==1.13.1.1
+  - GLURaw ==2.0.0.4
+  - GLUT ==2.7.0.16
+  - gluturtle ==0.0.58.1
+  - gnuplot ==0.5.6.1
+  - goldplate ==0.2.0
+  - google-isbn ==1.0.3
+  - gopher-proxy ==0.1.1.2
+  - gothic ==0.1.6
+  - gpolyline ==0.1.0.1
+  - graph-core ==0.3.0.0
+  - graphite ==0.10.0.1
+  - graphql-client ==1.1.1
+  - graphs ==0.7.1
+  - graphula ==2.0.0.5
+  - graphviz ==2999.20.1.0
+  - graph-wrapper ==0.2.6.0
+  - gravatar ==0.8.0
+  - greskell ==1.2.0.1
+  - greskell-core ==0.1.3.6
+  - greskell-websocket ==0.1.2.5
+  - groom ==0.1.2.1
+  - group-by-date ==0.1.0.4
+  - groups ==0.5.3
+  - gtk-sni-tray ==0.1.6.2
+  - gtk-strut ==0.1.3.0
+  - guarded-allocation ==0.0.1
+  - H ==0.9.0.1
+  - hackage-db ==2.1.1
+  - hackage-security ==0.6.0.1
+  - haddock-library ==1.9.0
+  - hadoop-streaming ==0.2.0.3
+  - hakyll-convert ==0.3.0.4
+  - hal ==0.4.8
+  - half ==0.3.1
+  - hall-symbols ==0.1.0.6
+  - hamtsolo ==1.0.3
+  - HandsomeSoup ==0.4.2
+  - hapistrano ==0.4.1.3
+  - happstack-server ==7.7.1
+  - happy ==1.20.0
+  - happy-meta ==0.2.0.11
+  - HasBigDecimal ==0.1.1
+  - hasbolt ==0.1.5.0
+  - hashable ==1.3.0.0
+  - hashable-time ==0.2.1
+  - hashids ==1.0.2.4
+  - hashing ==0.1.0.1
+  - hashmap ==1.3.3
+  - hashtables ==1.2.4.1
+  - haskeline ==0.8.1.2
+  - haskell-awk ==1.2.0.1
+  - haskell-gi ==0.24.7
+  - haskell-gi-base ==0.24.5
+  - haskell-gi-overloading ==1.0
+  - haskell-import-graph ==1.0.4
+  - haskell-lexer ==1.1
+  - haskell-lsp ==0.24.0.0
+  - haskell-lsp-types ==0.24.0.0
+  - haskell-names ==0.9.9
+  - HaskellNet ==0.6
+  - haskell-src ==1.0.3.1
+  - haskell-src-exts ==1.23.1
+  - haskell-src-exts-util ==0.2.5
+  - haskell-src-meta ==0.8.7
+  - haskey-btree ==0.3.0.1
+  - hasql ==1.4.5.1
+  - hasql-notifications ==0.2.0.0
+  - hasql-optparse-applicative ==0.3.0.6
+  - hasql-pool ==0.5.2
+  - hasql-queue ==1.2.0.2
+  - hasql-transaction ==1.0.0.2
+  - hasty-hamiltonian ==1.3.4
+  - HaTeX ==3.22.3.0
+  - HaXml ==1.25.5
+  - haxr ==3000.11.4.1
+  - HCodecs ==0.5.2
+  - hdaemonize ==0.5.6
+  - HDBC ==2.4.0.3
+  - HDBC-session ==0.1.2.0
+  - headroom ==0.4.1.0
+  - heap ==1.0.4
+  - heaps ==0.4
+  - hebrew-time ==0.1.2
+  - hedgehog ==1.0.5
+  - hedgehog-corpus ==0.2.0
+  - hedgehog-fakedata ==0.0.1.4
+  - hedgehog-fn ==1.0
+  - hedgehog-quickcheck ==0.1.1
+  - hedis ==0.14.4
+  - hedn ==0.3.0.2
+  - here ==1.2.13
+  - heredoc ==0.2.0.0
+  - heterocephalus ==1.0.5.4
+  - hexml ==0.3.4
+  - hexml-lens ==0.2.1
+  - hexpat ==0.20.13
+  - hformat ==0.3.3.1
+  - hfsevents ==0.1.6
+  - hgrev ==0.2.6
+  - hidapi ==0.1.7
+  - hie-bios ==0.7.5
+  - hi-file-parser ==0.1.2.0
+  - higher-leveldb ==0.6.0.0
+  - highlighting-kate ==0.6.4
+  - hinfo ==0.0.3.0
+  - hinotify ==0.4.1
+  - hint ==0.9.0.4
+  - hjsmin ==0.2.0.4
+  - hkd-default ==1.1.0.0
+  - hkgr ==0.3
+  - hlibcpuid ==0.2.0
+  - hlibgit2 ==0.18.0.16
+  - hlibsass ==0.1.10.1
+  - hmatrix ==0.20.2
+  - hmatrix-backprop ==0.1.3.0
+  - hmatrix-gsl ==0.19.0.1
+  - hmatrix-gsl-stats ==0.4.1.8
+  - hmatrix-morpheus ==0.1.1.2
+  - hmatrix-vector-sized ==0.1.3.0
+  - hmm-lapack ==0.4
+  - hmpfr ==0.4.4
+  - hnock ==0.4.0
+  - hoauth2 ==1.16.0
+  - hOpenPGP ==2.9.5
+  - hopenpgp-tools ==0.23.6
+  - hopfli ==0.2.2.1
+  - hosc ==0.18.1
+  - hostname ==1.0
+  - hostname-validate ==1.0.0
+  - hourglass ==0.2.12
+  - hourglass-orphans ==0.1.0.0
+  - hp2pretty ==0.10
+  - hpack ==0.34.4
+  - hpack-dhall ==0.5.2
+  - hpc-codecov ==0.3.0.0
+  - hpc-lcov ==1.0.1
+  - hprotoc ==2.4.17
+  - hruby ==0.3.8.1
+  - hsass ==0.8.0
+  - hs-bibutils ==6.10.0.0
+  - hsc2hs ==0.68.7
+  - hscolour ==1.24.4
+  - hsdns ==1.8
+  - hsebaysdk ==0.4.1.0
+  - hsemail ==2.2.1
+  - hs-functors ==0.1.7.1
+  - hs-GeoIP ==0.3
+  - hsini ==0.5.1.2
+  - hsinstall ==2.6
+  - HSlippyMap ==3.0.1
+  - hslogger ==1.3.1.0
+  - hslua ==1.3.0.1
+  - hslua-aeson ==1.0.3.1
+  - hslua-module-doclayout ==0.2.0.1
+  - hslua-module-path ==0.1.0.1
+  - hslua-module-system ==0.2.2.1
+  - hslua-module-text ==0.3.0.1
+  - HsOpenSSL ==0.11.7
+  - HsOpenSSL-x509-system ==0.1.0.4
+  - hsp ==0.10.0
+  - hspec ==2.7.10
+  - hspec-attoparsec ==0.1.0.2
+  - hspec-checkers ==0.1.0.2
+  - hspec-contrib ==0.5.1
+  - hspec-core ==2.7.10
+  - hspec-discover ==2.7.10
+  - hspec-expectations ==0.8.2
+  - hspec-expectations-json ==1.0.0.4
+  - hspec-expectations-lifted ==0.10.0
+  - hspec-expectations-pretty-diff ==0.7.2.5
+  - hspec-golden ==0.1.0.3
+  - hspec-golden-aeson ==0.7.0.0
+  - hspec-hedgehog ==0.0.1.2
+  - hspec-junit-formatter ==1.0.0.4
+  - hspec-leancheck ==0.0.4
+  - hspec-megaparsec ==2.2.0
+  - hspec-meta ==2.7.8
+  - hspec-need-env ==0.1.0.7
+  - hspec-parsec ==0
+  - hspec-smallcheck ==0.5.2
+  - hspec-tables ==0.0.1
+  - hspec-wai ==0.11.0
+  - hspec-wai-json ==0.11.0
+  - hs-php-session ==0.0.9.3
+  - hsshellscript ==3.5.0
+  - hs-tags ==0.1.5
+  - HStringTemplate ==0.8.7
+  - HSvm ==0.1.1.3.22
+  - HsYAML ==0.2.1.0
+  - HsYAML-aeson ==0.2.0.0
+  - hsyslog ==5.0.2
+  - htaglib ==1.2.0
+  - HTF ==0.14.0.6
+  - html ==1.0.1.2
+  - html-conduit ==1.3.2.1
+  - html-entities ==1.1.4.5
+  - html-entity-map ==0.1.0.0
+  - htoml ==1.0.0.3
+  - http2 ==3.0.1
+  - HTTP ==4000.3.16
+  - http-api-data ==0.4.2
+  - http-client ==0.6.4.1
+  - http-client-openssl ==0.3.2.0
+  - http-client-overrides ==0.1.1.0
+  - http-client-tls ==0.3.5.3
+  - http-common ==0.8.2.1
+  - http-conduit ==2.3.8
+  - http-date ==0.0.11
+  - http-directory ==0.1.8
+  - http-download ==0.2.0.0
+  - httpd-shed ==0.4.1.1
+  - http-link-header ==1.2.0
+  - http-media ==0.8.0.0
+  - http-query ==0.1.0.1
+  - http-reverse-proxy ==0.6.0
+  - http-streams ==0.8.7.2
+  - http-types ==0.12.3
+  - human-readable-duration ==0.2.1.4
+  - HUnit ==1.6.2.0
+  - HUnit-approx ==1.1.1.1
+  - hunit-dejafu ==2.0.0.4
+  - hvect ==0.4.0.0
+  - hvega ==0.11.0.1
+  - hw-balancedparens ==0.4.1.1
+  - hw-bits ==0.7.2.1
+  - hw-conduit ==0.2.1.0
+  - hw-conduit-merges ==0.2.1.0
+  - hw-diagnostics ==0.0.1.0
+  - hw-dsv ==0.4.1.0
+  - hweblib ==0.6.3
+  - hw-eliasfano ==0.1.2.0
+  - hw-excess ==0.2.3.0
+  - hw-fingertree ==0.1.2.0
+  - hw-fingertree-strict ==0.1.2.0
+  - hw-hedgehog ==0.1.1.0
+  - hw-hspec-hedgehog ==0.1.1.0
+  - hw-int ==0.0.2.0
+  - hw-ip ==2.4.2.0
+  - hw-json ==1.3.2.2
+  - hw-json-simd ==0.1.1.0
+  - hw-json-simple-cursor ==0.1.1.0
+  - hw-json-standard-cursor ==0.2.3.1
+  - hw-kafka-client ==4.0.3
+  - hw-mquery ==0.2.1.0
+  - hw-packed-vector ==0.2.1.0
+  - hw-parser ==0.1.1.0
+  - hw-prim ==0.6.3.0
+  - hw-rankselect ==0.13.4.0
+  - hw-rankselect-base ==0.3.4.1
+  - hw-simd ==0.1.2.0
+  - hw-streams ==0.0.1.0
+  - hw-string-parse ==0.0.0.4
+  - hw-succinct ==0.1.0.1
+  - hw-xml ==0.5.1.0
+  - hxt ==9.3.1.22
+  - hxt-charproperties ==9.5.0.0
+  - hxt-css ==0.1.0.3
+  - hxt-curl ==9.1.1.1
+  - hxt-expat ==9.1.1
+  - hxt-http ==9.1.5.2
+  - hxt-regex-xmlschema ==9.2.0.7
+  - hxt-tagsoup ==9.1.4
+  - hxt-unicode ==9.0.2.4
+  - hybrid-vectors ==0.2.2
+  - hyper ==0.2.1.1
+  - hyperloglog ==0.4.4
+  - hyphenation ==0.8.1
+  - iconv ==0.4.1.3
+  - identicon ==0.2.2
+  - ieee754 ==0.8.0
+  - if ==0.1.0.0
+  - iff ==0.0.6
+  - ihaskell ==0.10.2.0
+  - ihs ==0.1.0.3
+  - ilist ==0.4.0.1
+  - imagesize-conduit ==1.1
+  - Imlib ==0.1.2
+  - immortal ==0.3
+  - immortal-queue ==0.1.0.1
+  - inbox ==0.1.0
+  - include-file ==0.1.0.4
+  - incremental-parser ==0.5.0.2
+  - indents ==0.5.0.1
+  - indexed ==0.1.3
+  - indexed-containers ==0.1.0.2
+  - indexed-list-literals ==0.2.1.3
+  - indexed-profunctors ==0.1.1
+  - indexed-traversable ==0.1.1
+  - indexed-traversable-instances ==0.1
+  - infer-license ==0.2.0
+  - inflections ==0.4.0.6
+  - influxdb ==1.9.1.2
+  - ini ==0.4.1
+  - inj ==1.0
+  - inline-c ==0.9.1.4
+  - inline-c-cpp ==0.4.0.3
+  - inline-r ==0.10.4
+  - inliterate ==0.1.0
+  - input-parsers ==0.2.2
+  - insert-ordered-containers ==0.2.5
+  - inspection-testing ==0.4.5.0
+  - instance-control ==0.1.2.0
+  - int-cast ==0.2.0.0
+  - integer-logarithms ==1.0.3.1
+  - integer-roots ==1.0
+  - integration ==0.2.1
+  - intern ==0.9.4
+  - interpolate ==0.2.1
+  - interpolatedstring-perl6 ==1.0.2
+  - interpolation ==0.1.1.1
+  - interpolator ==1.1.0.2
+  - IntervalMap ==0.6.1.2
+  - intervals ==0.9.2
+  - intro ==0.9.0.0
+  - intset-imperative ==0.1.0.0
+  - invariant ==0.5.4
+  - invertible ==0.2.0.7
+  - invertible-grammar ==0.1.3
+  - io-machine ==0.2.0.0
+  - io-manager ==0.1.0.3
+  - io-memoize ==1.1.1.0
+  - io-region ==0.1.1
+  - io-storage ==0.3
+  - io-streams ==1.5.2.1
+  - io-streams-haproxy ==1.0.1.0
+  - ip6addr ==1.0.2
+  - ipa ==0.3.1
+  - iproute ==1.7.11
+  - IPv6Addr ==2.0.2
+  - ipynb ==0.1.0.1
+  - ipython-kernel ==0.10.2.1
+  - irc ==0.6.1.0
+  - irc-client ==1.1.2.1
+  - irc-conduit ==0.3.0.4
+  - irc-ctcp ==0.1.3.0
+  - isbn ==1.1.0.2
+  - islink ==0.1.0.0
+  - iso3166-country-codes ==0.20140203.8
+  - iso639 ==0.1.0.3
+  - iso8601-time ==0.1.5
+  - iterable ==3.0
+  - ixset-typed ==0.5
+  - ixset-typed-binary-instance ==0.1.0.2
+  - ixset-typed-conversions ==0.1.2.0
+  - ixset-typed-hashable-instance ==0.1.0.2
+  - ix-shapable ==0.1.0
+  - jack ==0.7.2
+  - jalaali ==1.0.0.0
+  - jira-wiki-markup ==1.3.5
+  - jose ==0.8.4
+  - jose-jwt ==0.9.2
+  - js-chart ==2.9.4.1
+  - js-dgtable ==0.5.2
+  - js-flot ==0.8.3
+  - js-jquery ==3.3.1
+  - json-feed ==1.0.13
+  - jsonpath ==0.2.0.0
+  - json-rpc ==1.0.3
+  - json-rpc-generic ==0.2.1.5
+  - JuicyPixels ==3.3.5
+  - JuicyPixels-blurhash ==0.1.0.3
+  - JuicyPixels-extra ==0.5.0
+  - JuicyPixels-scale-dct ==0.1.2
+  - junit-xml ==0.1.0.2
+  - justified-containers ==0.3.0.0
+  - jwt ==0.10.0
+  - kan-extensions ==5.2.2
+  - kanji ==3.4.1
+  - katip ==0.8.5.0
+  - katip-logstash ==0.1.0.0
+  - kawhi ==0.3.0
+  - kazura-queue ==0.1.0.4
+  - kdt ==0.2.4
+  - keep-alive ==0.2.0.0
+  - keycode ==0.2.2
+  - keys ==3.12.3
+  - ki ==0.2.0.1
+  - kind-apply ==0.3.2.0
+  - kind-generics ==0.4.1.0
+  - kind-generics-th ==0.2.2.2
+  - kmeans ==0.1.3
+  - koji ==0.0.2
+  - koofr-client ==1.0.0.3
+  - krank ==0.2.2
+  - kubernetes-webhook-haskell ==0.2.0.3
+  - l10n ==0.1.0.1
+  - labels ==0.3.3
+  - lackey ==1.0.15
+  - lambdabot-core ==5.3.0.1
+  - LambdaHack ==0.10.2.0
+  - lame ==0.2.0
+  - language-avro ==0.1.3.1
+  - language-bash ==0.9.2
+  - language-c ==0.8.3
+  - language-c-quote ==0.13
+  - language-docker ==10.0.1
+  - language-java ==0.2.9
+  - language-javascript ==0.7.1.0
+  - language-protobuf ==1.0.1
+  - language-python ==0.5.8
+  - language-thrift ==0.12.0.0
+  - lapack ==0.3.2
+  - lapack-carray ==0.0.3
+  - lapack-comfort-array ==0.0.0.1
+  - lapack-ffi ==0.0.3
+  - lapack-ffi-tools ==0.1.2.1
+  - largeword ==1.2.5
+  - latex ==0.1.0.4
+  - lattices ==2.0.2
+  - lawful ==0.1.0.0
+  - lazy-csv ==0.5.1
+  - lazyio ==0.1.0.4
+  - lazysmallcheck ==0.6
+  - lca ==0.4
+  - leancheck ==0.9.6
+  - leancheck-instances ==0.0.4
+  - leapseconds-announced ==2017.1.0.1
+  - learn-physics ==0.6.5
+  - lens ==4.19.2
+  - lens-action ==0.2.5
+  - lens-aeson ==1.1.1
+  - lens-csv ==0.1.1.0
+  - lens-datetime ==0.3
+  - lens-family ==2.0.0
+  - lens-family-core ==2.0.0
+  - lens-family-th ==0.5.2.0
+  - lens-misc ==0.0.2.0
+  - lens-process ==0.4.0.0
+  - lens-properties ==4.11.1
+  - lens-regex ==0.1.3
+  - lens-regex-pcre ==1.1.0.0
+  - lenz ==0.4.2.0
+  - leveldb-haskell ==0.6.5
+  - libBF ==0.6.2
+  - libffi ==0.1
+  - libgit ==0.3.1
+  - libgraph ==1.14
+  - libjwt-typed ==0.2
+  - libmpd ==0.10.0.0
+  - liboath-hs ==0.0.1.2
+  - libyaml ==0.1.2
+  - LibZip ==1.0.1
+  - lifted-async ==0.10.2
+  - lifted-base ==0.2.3.12
+  - lift-generics ==0.2
+  - lift-type ==0.1.0.1
+  - line ==4.0.1
+  - linear ==1.21.5
+  - linear-circuit ==0.1.0.2
+  - linenoise ==0.3.2
+  - linux-file-extents ==0.2.0.0
+  - linux-namespaces ==0.1.3.0
+  - liquid-fixpoint ==0.8.10.2
+  - List ==0.6.2
+  - ListLike ==4.7.4
+  - list-predicate ==0.1.0.1
+  - listsafe ==0.1.0.1
+  - list-singleton ==1.0.0.5
+  - list-t ==1.0.4
+  - list-transformer ==1.0.7
+  - ListTree ==0.2.3
+  - literatex ==0.1.0.0
+  - little-rio ==0.2.2
+  - llvm-hs ==9.0.1
+  - llvm-hs-pure ==9.0.0
+  - lmdb ==0.2.5
+  - load-env ==0.2.1.0
+  - loc ==0.1.3.10
+  - locators ==0.3.0.3
+  - loch-th ==0.2.2
+  - lockfree-queue ==0.2.3.1
+  - log-domain ==0.13.1
+  - logfloat ==0.13.3.3
+  - logging ==3.0.5
+  - logging-facade ==0.3.0
+  - logging-facade-syslog ==1
+  - logict ==0.7.1.0
+  - logstash ==0.1.0.1
+  - loop ==0.3.0
+  - lrucache ==1.2.0.1
+  - lrucaching ==0.3.3
+  - lsp ==1.2.0.0
+  - lsp-test ==0.14.0.0
+  - lsp-types ==1.2.0.0
+  - lucid ==2.9.12.1
+  - lucid-cdn ==0.2.2.0
+  - lucid-extras ==0.2.2
+  - lukko ==0.1.1.3
+  - lz4-frame-conduit ==0.1.0.1
+  - lzma ==0.0.0.3
+  - lzma-conduit ==1.2.1
+  - machines ==0.7.2
+  - machines-binary ==7.0.0.0
+  - magic ==1.1
+  - magico ==0.0.2.1
+  - mainland-pretty ==0.7.1
+  - main-tester ==0.2.0.1
+  - makefile ==1.1.0.0
+  - managed ==1.0.8
+  - MapWith ==0.2.0.0
+  - markdown ==0.1.17.4
+  - markdown-unlit ==0.5.1
+  - markov-chain ==0.0.3.4
+  - massiv ==0.6.0.0
+  - massiv-io ==0.4.1.0
+  - massiv-persist ==0.1.0.0
+  - massiv-serialise ==0.1.0.0
+  - massiv-test ==0.1.6.1
+  - mathexpr ==0.3.0.0
+  - math-extras ==0.1.1.0
+  - math-functions ==0.3.4.2
+  - matplotlib ==0.7.5
+  - matrices ==0.5.0
+  - matrix ==0.3.6.1
+  - matrix-as-xyz ==0.1.2.2
+  - matrix-market-attoparsec ==0.1.1.3
+  - matrix-static ==0.3
+  - maximal-cliques ==0.1.1
+  - mbox ==0.3.4
+  - mbox-utility ==0.0.3.1
+  - mcmc ==0.4.0.0
+  - mcmc-types ==1.0.3
+  - medea ==1.2.0
+  - median-stream ==0.7.0.0
+  - med-module ==0.1.2.1
+  - megaparsec ==9.0.1
+  - megaparsec-tests ==9.0.1
+  - membrain ==0.0.0.2
+  - memory ==0.15.0
+  - MemoTrie ==0.6.10
+  - mercury-api ==0.1.0.2
+  - mergeful ==0.2.0.0
+  - mergeless ==0.3.0.0
+  - mersenne-random-pure64 ==0.2.2.0
+  - messagepack ==0.5.4
+  - metrics ==0.4.1.1
+  - mfsolve ==0.3.2.0
+  - microlens ==0.4.12.0
+  - microlens-aeson ==2.3.1
+  - microlens-contra ==0.1.0.2
+  - microlens-ghc ==0.4.13
+  - microlens-mtl ==0.2.0.1
+  - microlens-platform ==0.4.2
+  - microlens-process ==0.2.0.2
+  - microlens-th ==0.4.3.10
+  - microspec ==0.2.1.3
+  - microstache ==1.0.1.2
+  - midair ==0.2.0.1
+  - midi ==0.2.2.2
+  - mighty-metropolis ==2.0.0
+  - mime-mail ==0.5.1
+  - mime-mail-ses ==0.4.3
+  - mime-types ==0.1.0.9
+  - mini-egison ==1.0.0
+  - minimal-configuration ==0.1.4
+  - minimorph ==0.3.0.0
+  - minio-hs ==1.5.3
+  - miniutter ==0.5.1.1
+  - min-max-pqueue ==0.1.0.2
+  - mintty ==0.1.2
+  - missing-foreign ==0.1.1
+  - mixed-types-num ==0.5.7.0
+  - mltool ==0.2.0.1
+  - mmap ==0.5.9
+  - mmark ==0.0.7.2
+  - mmark-cli ==0.0.5.0
+  - mmark-ext ==0.2.1.3
+  - mmorph ==1.1.5
+  - mnist-idx ==0.1.2.8
+  - mnist-idx-conduit ==0.4.0.0
+  - mockery ==0.3.5
+  - mock-time ==0.1.0
+  - mod ==0.1.2.2
+  - model ==0.5
+  - modern-uri ==0.3.4.1
+  - modular ==0.1.0.8
+  - monad-chronicle ==1.0.0.1
+  - monad-control ==1.0.2.3
+  - monad-control-aligned ==0.0.1.1
+  - monad-coroutine ==0.9.1.2
+  - monad-extras ==0.6.0
+  - monadic-arrays ==0.2.2
+  - monad-journal ==0.8.1
+  - monadlist ==0.0.2
+  - monad-logger ==0.3.36
+  - monad-logger-json ==0.1.0.0
+  - monad-logger-logstash ==0.1.0.0
+  - monad-logger-prefix ==0.1.12
+  - monad-loops ==0.4.3
+  - monad-memo ==0.5.3
+  - monad-metrics ==0.2.2.0
+  - monad-par ==0.3.5
+  - monad-parallel ==0.7.2.4
+  - monad-par-extras ==0.3.3
+  - monad-peel ==0.2.1.2
+  - monad-primitive ==0.1
+  - monad-products ==4.0.1
+  - MonadPrompt ==1.0.0.5
+  - MonadRandom ==0.5.3
+  - monad-resumption ==0.1.4.0
+  - monad-skeleton ==0.1.5
+  - monad-st ==0.2.4.1
+  - monads-tf ==0.1.0.3
+  - monad-time ==0.3.1.0
+  - monad-unlift ==0.2.0
+  - monad-unlift-ref ==0.2.1
+  - mongoDB ==2.7.0.0
+  - monoid-subclasses ==1.0.1
+  - monoid-transformer ==0.0.4
+  - mono-traversable ==1.0.15.1
+  - mono-traversable-instances ==0.1.1.0
+  - mono-traversable-keys ==0.1.0
+  - more-containers ==0.2.2.2
+  - morpheus-graphql ==0.17.0
+  - morpheus-graphql-app ==0.17.0
+  - morpheus-graphql-client ==0.17.0
+  - morpheus-graphql-core ==0.17.0
+  - morpheus-graphql-subscriptions ==0.17.0
+  - moss ==0.2.0.0
+  - mountpoints ==1.0.2
+  - mpi-hs ==0.7.2.0
+  - mpi-hs-binary ==0.1.1.0
+  - mpi-hs-cereal ==0.1.0.0
+  - mtl-compat ==0.2.2
+  - mtl-prelude ==2.0.3.1
+  - multiarg ==0.30.0.10
+  - multi-containers ==0.1.1
+  - multimap ==1.2.1
+  - multipart ==0.2.1
+  - multiset ==0.3.4.3
+  - multistate ==0.8.0.3
+  - murmur3 ==1.0.4
+  - murmur-hash ==0.1.0.9
+  - MusicBrainz ==0.4.1
+  - mustache ==2.3.1
+  - mutable-containers ==0.3.4
+  - mwc-probability ==2.3.1
+  - mwc-random ==0.14.0.0
+  - mwc-random-monad ==0.7.3.1
+  - mx-state-codes ==1.0.0.0
+  - mysql ==0.2.0.1
+  - mysql-simple ==0.4.6
+  - n2o ==0.11.1
+  - nagios-check ==0.3.2
+  - names-th ==0.3.0.1
+  - nano-erl ==0.1.0.1
+  - nanospec ==0.2.2
+  - nats ==1.1.2
+  - natural-induction ==0.2.0.0
+  - natural-sort ==0.1.2
+  - natural-transformation ==0.4
+  - ndjson-conduit ==0.1.0.5
+  - neat-interpolation ==0.5.1.2
+  - netcode-io ==0.0.2
+  - netlib-carray ==0.1
+  - netlib-comfort-array ==0.0.0.1
+  - netlib-ffi ==0.1.1
+  - net-mqtt ==0.7.1.0
+  - net-mqtt-lens ==0.1.0.0
+  - netpbm ==1.0.4
+  - nettle ==0.3.0
+  - netwire ==5.0.3
+  - netwire-input ==0.0.7
+  - netwire-input-glfw ==0.0.11
+  - network ==3.1.1.1
+  - network-bsd ==2.8.1.0
+  - network-byte-order ==0.1.6
+  - network-conduit-tls ==1.3.2
+  - network-info ==0.2.0.10
+  - network-ip ==0.3.0.3
+  - network-messagepack-rpc ==0.1.2.0
+  - network-messagepack-rpc-websocket ==0.1.1.1
+  - network-run ==0.2.4
+  - network-simple ==0.4.5
+  - network-simple-tls ==0.4
+  - network-transport ==0.5.4
+  - network-transport-composed ==0.2.1
+  - network-uri ==2.6.4.1
+  - newtype ==0.2.2.0
+  - newtype-generics ==0.6
+  - nicify-lib ==1.0.1
+  - NineP ==0.0.2.1
+  - nix-derivation ==1.1.2
+  - nix-paths ==1.0.1
+  - nonce ==1.0.7
+  - nondeterminism ==1.4
+  - non-empty ==0.3.3
+  - nonempty-containers ==0.3.4.1
+  - nonemptymap ==0.0.6.0
+  - non-empty-sequence ==0.2.0.4
+  - nonempty-vector ==0.2.1.0
+  - nonempty-zipper ==1.0.0.2
+  - non-negative ==0.1.2
+  - not-gloss ==0.7.7.0
+  - no-value ==1.0.0.0
+  - nowdoc ==0.1.1.0
+  - nqe ==0.6.3
+  - nri-env-parser ==0.1.0.7
+  - nri-observability ==0.1.0.2
+  - nri-prelude ==0.6.0.0
+  - nsis ==0.3.3
+  - numbers ==3000.2.0.2
+  - numeric-extras ==0.1
+  - numeric-prelude ==0.4.3.3
+  - numhask ==0.7.1.0
+  - NumInstances ==1.4
+  - numtype-dk ==0.5.0.2
+  - nuxeo ==0.3.2
+  - nvim-hs ==2.1.0.4
+  - nvim-hs-contrib ==2.0.0.0
+  - nvim-hs-ghcid ==2.0.0.0
+  - oauthenticated ==0.2.1.0
+  - ObjectName ==1.1.0.1
+  - o-clock ==1.2.0.1
+  - odbc ==0.2.2
+  - oeis2 ==1.0.5
+  - ofx ==0.4.4.0
+  - old-locale ==1.0.0.7
+  - old-time ==1.1.0.3
+  - once ==0.4
+  - one-liner ==1.0
+  - OneTuple ==0.2.2.1
+  - Only ==0.1
+  - oo-prototypes ==0.1.0.0
+  - opaleye ==0.7.1.0
+  - OpenAL ==1.7.0.5
+  - openapi3 ==3.1.0
+  - open-browser ==0.2.1.0
+  - openexr-write ==0.1.0.2
+  - OpenGL ==3.0.3.0
+  - OpenGLRaw ==3.3.4.0
+  - openpgp-asciiarmor ==0.1.2
+  - opensource ==0.1.1.0
+  - openssl-streams ==1.2.3.0
+  - opentelemetry ==0.6.1
+  - opentelemetry-extra ==0.6.1
+  - opentelemetry-lightstep ==0.6.1
+  - opentelemetry-wai ==0.6.1
+  - operational ==0.2.3.5
+  - operational-class ==0.3.0.0
+  - optics ==0.3
+  - optics-core ==0.3.0.1
+  - optics-extra ==0.3
+  - optics-th ==0.3.0.2
+  - optics-vl ==0.2.1
+  - optional-args ==1.0.2
+  - options ==1.2.1.1
+  - optparse-applicative ==0.16.1.0
+  - optparse-generic ==1.4.4
+  - optparse-simple ==0.1.1.3
+  - optparse-text ==0.1.1.0
+  - ordered-containers ==0.2.2
+  - ormolu ==0.1.4.1
+  - overhang ==1.0.0
+  - packcheck ==0.5.1
+  - packdeps ==0.6.0.0
+  - pager ==0.1.1.0
+  - pagination ==0.2.2
+  - pagure-cli ==0.2
+  - pandoc ==2.13
+  - pandoc-dhall-decoder ==0.1.0.1
+  - pandoc-plot ==1.2.2
+  - pandoc-throw ==0.1.0.0
+  - pandoc-types ==1.22
+  - pantry ==0.5.2.1
+  - parallel ==3.2.2.0
+  - parameterized ==0.5.0.0
+  - paripari ==0.7.0.0
+  - parseargs ==0.2.0.9
+  - parsec-class ==1.0.0.0
+  - parsec-numbers ==0.1.0
+  - parsec-numeric ==0.1.0.0
+  - ParsecTools ==0.0.2.0
+  - parser-combinators ==1.2.1
+  - parser-combinators-tests ==1.2.1
+  - parsers ==0.12.10
+  - partial-handler ==1.0.3
+  - partial-isomorphisms ==0.2.2.1
+  - partial-semigroup ==0.5.1.12
+  - password ==3.0.0.0
+  - password-instances ==3.0.0.0
+  - password-types ==1.0.0.0
+  - path ==0.7.1
+  - path-binary-instance ==0.1.0.1
+  - path-extensions ==0.1.1.0
+  - path-extra ==0.2.0
+  - path-io ==1.6.2
+  - path-like ==0.2.0.2
+  - path-pieces ==0.2.1
+  - path-text-utf8 ==0.0.1.6
+  - pathtype ==0.8.1.1
+  - pathwalk ==0.3.1.2
+  - pattern-arrows ==0.0.2
+  - pava ==0.1.1.1
+  - pcg-random ==0.1.3.7
+  - pcre2 ==1.1.5
+  - pcre-heavy ==1.0.0.2
+  - pcre-light ==0.4.1.0
+  - pcre-utils ==0.1.8.2
+  - pdfinfo ==1.5.4
+  - peano ==0.1.0.1
+  - pem ==0.2.4
+  - percent-format ==0.0.1
+  - peregrin ==0.3.1
+  - perfect-hash-generator ==0.2.0.6
+  - perfect-vector-shuffle ==0.1.1.1
+  - persist ==0.1.1.5
+  - persistable-record ==0.6.0.5
+  - persistable-types-HDBC-pg ==0.0.3.5
+  - persistent ==2.13.0.2
+  - persistent-mtl ==0.2.1.0
+  - persistent-mysql ==2.13.0.1
+  - persistent-pagination ==0.1.1.2
+  - persistent-postgresql ==2.13.0.1
+  - persistent-qq ==2.12.0.1
+  - persistent-sqlite ==2.13.0.3
+  - persistent-template ==2.12.0.0
+  - persistent-test ==2.13.0.3
+  - persistent-typed-db ==0.1.0.4
+  - pg-harness-client ==0.6.0
+  - pgp-wordlist ==0.1.0.3
+  - pg-transact ==0.3.1.1
+  - phantom-state ==0.2.1.2
+  - pid1 ==0.1.2.0
+  - pinboard ==0.10.2.0
+  - pipes ==4.3.16
+  - pipes-aeson ==0.4.1.8
+  - pipes-attoparsec ==0.5.1.5
+  - pipes-binary ==0.4.2
+  - pipes-bytestring ==2.1.7
+  - pipes-concurrency ==2.0.12
+  - pipes-csv ==1.4.3
+  - pipes-extras ==1.0.15
+  - pipes-fastx ==0.3.0.0
+  - pipes-group ==1.0.12
+  - pipes-http ==1.0.6
+  - pipes-network ==0.6.5
+  - pipes-network-tls ==0.4
+  - pipes-ordered-zip ==1.2.1
+  - pipes-parse ==3.0.9
+  - pipes-random ==1.0.0.5
+  - pipes-safe ==2.3.3
+  - pipes-wai ==3.2.0
+  - pkcs10 ==0.2.0.0
+  - pkgtreediff ==0.4.1
+  - place-cursor-at ==1.0.1
+  - placeholders ==0.1
+  - plaid ==0.1.0.4
+  - plotlyhs ==0.2.1
+  - pointed ==5.0.2
+  - pointedlist ==0.6.1
+  - pointless-fun ==1.1.0.6
+  - poll ==0.0.0.2
+  - poly ==0.5.0.0
+  - poly-arity ==0.1.0
+  - polynomials-bernstein ==1.1.2
+  - polyparse ==1.13
+  - polysemy ==1.5.0.0
+  - polysemy-plugin ==0.3.0.0
+  - pooled-io ==0.0.2.2
+  - port-utils ==0.2.1.0
+  - posix-paths ==0.3.0.0
+  - possibly ==1.0.0.0
+  - postgres-options ==0.2.0.0
+  - postgresql-binary ==0.12.4
+  - postgresql-libpq ==0.9.4.3
+  - postgresql-libpq-notify ==0.2.0.0
+  - postgresql-orm ==0.5.1
+  - postgresql-simple ==0.6.4
+  - postgresql-typed ==0.6.2.0
+  - postgrest ==7.0.1
+  - post-mess-age ==0.2.1.0
+  - pptable ==0.3.0.0
+  - pqueue ==1.4.1.3
+  - prairie ==0.0.1.0
+  - prefix-units ==0.2.0
+  - prelude-compat ==0.0.0.2
+  - prelude-safeenum ==0.1.1.2
+  - prettyclass ==1.0.0.0
+  - pretty-class ==1.0.1.1
+  - pretty-diff ==0.4.0.3
+  - pretty-hex ==1.1
+  - prettyprinter ==1.7.0
+  - prettyprinter-ansi-terminal ==1.1.2
+  - prettyprinter-compat-annotated-wl-pprint ==1.1
+  - prettyprinter-compat-ansi-wl-pprint ==1.0.1
+  - prettyprinter-compat-wl-pprint ==1.0.0.1
+  - prettyprinter-convert-ansi-wl-pprint ==1.1.1
+  - pretty-relative-time ==0.2.0.0
+  - pretty-show ==1.10
+  - pretty-simple ==4.0.0.0
+  - pretty-sop ==0.2.0.3
+  - pretty-terminal ==0.1.0.0
+  - primes ==0.2.1.0
+  - primitive ==0.7.1.0
+  - primitive-addr ==0.1.0.2
+  - primitive-extras ==0.10.1
+  - primitive-unaligned ==0.1.1.1
+  - primitive-unlifted ==0.1.3.0
+  - prim-uniq ==0.2
+  - print-console-colors ==0.1.0.0
+  - probability ==0.2.7
+  - process-extras ==0.7.4
+  - product-isomorphic ==0.0.3.3
+  - product-profunctors ==0.11.0.2
+  - profiterole ==0.1
+  - profunctors ==5.5.2
+  - projectroot ==0.2.0.1
+  - project-template ==0.2.1.0
+  - prometheus ==2.2.2
+  - prometheus-client ==1.0.1
+  - prometheus-wai-middleware ==1.0.1.0
+  - promises ==0.3
+  - prompt ==0.1.1.2
+  - prospect ==0.1.0.0
+  - proto3-wire ==1.2.2
+  - protobuf ==0.2.1.3
+  - protobuf-simple ==0.1.1.0
+  - protocol-buffers ==2.4.17
+  - protocol-buffers-descriptor ==2.4.17
+  - protocol-radius ==0.0.1.1
+  - protocol-radius-test ==0.1.0.1
+  - proto-lens ==0.7.0.0
+  - proto-lens-protobuf-types ==0.7.0.0
+  - proto-lens-protoc ==0.7.0.0
+  - proto-lens-runtime ==0.7.0.0
+  - proto-lens-setup ==0.4.0.4
+  - protolude ==0.3.0
+  - proxied ==0.3.1
+  - psqueues ==0.2.7.2
+  - publicsuffix ==0.20200526
+  - pulse-simple ==0.1.14
+  - pureMD5 ==2.1.3
+  - purescript-bridge ==0.14.0.0
+  - pushbullet-types ==0.4.1.0
+  - pusher-http-haskell ==2.1.0.2
+  - pvar ==1.0.0.0
+  - PyF ==0.9.0.3
+  - qchas ==1.1.0.1
+  - qm-interpolated-string ==0.3.0.0
+  - qrcode-core ==0.9.4
+  - qrcode-juicypixels ==0.8.2
+  - quadratic-irrational ==0.1.1
+  - QuasiText ==0.1.2.6
+  - QuickCheck ==2.14.2
+  - quickcheck-arbitrary-adt ==0.3.1.0
+  - quickcheck-assertions ==0.3.0
+  - quickcheck-classes ==0.6.5.0
+  - quickcheck-classes-base ==0.6.2.0
+  - quickcheck-higherorder ==0.1.0.0
+  - quickcheck-instances ==0.3.25.2
+  - quickcheck-io ==0.2.0
+  - quickcheck-simple ==0.1.1.1
+  - quickcheck-special ==0.1.0.6
+  - quickcheck-text ==0.1.2.1
+  - quickcheck-transformer ==0.3.1.1
+  - quickcheck-unicode ==1.0.1.0
+  - quiet ==0.2
+  - quote-quot ==0.2.0.0
+  - radius ==0.7.1.0
+  - rainbow ==0.34.2.2
+  - rainbox ==0.26.0.0
+  - ral ==0.2
+  - rampart ==1.1.0.3
+  - ramus ==0.1.2
+  - rando ==0.0.0.4
+  - random ==1.2.0
+  - random-bytestring ==0.1.4
+  - random-fu ==0.2.7.7
+  - random-shuffle ==0.0.4
+  - random-source ==0.3.0.11
+  - random-tree ==0.6.0.5
+  - range ==0.3.0.2
+  - ranged-list ==0.1.0.0
+  - Ranged-sets ==0.4.0
+  - range-set-list ==0.1.3.1
+  - rank1dynamic ==0.4.1
+  - rank2classes ==1.4.1
+  - Rasterific ==0.7.5.4
+  - rasterific-svg ==0.3.3.2
+  - ratel ==1.0.15
+  - rate-limit ==1.4.2
+  - ratel-wai ==1.1.5
+  - rattle ==0.2
+  - rattletrap ==11.1.1
+  - Rattus ==0.5
+  - rawfilepath ==0.2.4
+  - rawstring-qm ==0.2.3.0
+  - raw-strings-qq ==1.1
+  - rcu ==0.2.5
+  - rdf ==0.1.0.5
+  - rdtsc ==1.3.0.1
+  - re2 ==0.3
+  - readable ==0.3.1
+  - read-editor ==0.1.0.2
+  - read-env-var ==1.0.0.0
+  - rebase ==1.6.1
+  - record-dot-preprocessor ==0.2.11
+  - record-hasfield ==1.0
+  - records-sop ==0.1.1.0
+  - record-wrangler ==0.1.1.0
+  - recursion-schemes ==5.2.2.1
+  - reducers ==3.12.3
+  - refact ==0.3.0.2
+  - ref-fd ==0.5
+  - refined ==0.6.2
+  - reflection ==2.1.6
+  - reform ==0.2.7.4
+  - reform-blaze ==0.2.4.3
+  - reform-hamlet ==0.0.5.3
+  - reform-happstack ==0.2.5.4
+  - RefSerialize ==0.4.0
+  - ref-tf ==0.5
+  - regex ==1.1.0.0
+  - regex-applicative ==0.3.4
+  - regex-applicative-text ==0.1.0.1
+  - regex-base ==0.94.0.1
+  - regex-compat ==0.95.2.1
+  - regex-compat-tdfa ==0.95.1.4
+  - regex-pcre ==0.95.0.0
+  - regex-pcre-builtin ==0.95.2.3.8.43
+  - regex-posix ==0.96.0.0
+  - regex-tdfa ==1.3.1.0
+  - regex-with-pcre ==1.1.0.0
+  - registry ==0.2.0.3
+  - reinterpret-cast ==0.1.0
+  - relapse ==1.0.0.0
+  - relational-query ==0.12.2.3
+  - relational-query-HDBC ==0.7.2.0
+  - relational-record ==0.2.2.0
+  - relational-schemas ==0.1.8.0
+  - reliable-io ==0.0.1
+  - relude ==0.7.0.0
+  - renderable ==0.2.0.1
+  - replace-attoparsec ==1.4.4.0
+  - replace-megaparsec ==1.4.4.0
+  - repline ==0.4.0.0
+  - req ==3.9.0
+  - req-conduit ==1.0.0
+  - rerebase ==1.6.1
+  - rescue ==0.4.2.1
+  - resistor-cube ==0.0.1.2
+  - resolv ==0.1.2.0
+  - resource-pool ==0.2.3.2
+  - resourcet ==1.2.4.2
+  - result ==0.2.6.0
+  - rethinkdb-client-driver ==0.0.25
+  - retry ==0.8.1.2
+  - rev-state ==0.1.2
+  - rfc1751 ==0.1.3
+  - rfc5051 ==0.2
+  - rhbzquery ==0.4.3
+  - rhine ==0.7.0
+  - rhine-gloss ==0.7.0
+  - rigel-viz ==0.2.0.0
+  - rio ==0.1.20.0
+  - rio-orphans ==0.1.2.0
+  - rio-prettyprint ==0.1.1.0
+  - roc-id ==0.1.0.0
+  - rocksdb-haskell ==1.0.1
+  - rocksdb-haskell-jprupp ==2.1.3
+  - rocksdb-query ==0.4.2
+  - roles ==0.2.0.0
+  - rope-utf16-splay ==0.3.2.0
+  - rosezipper ==0.2
+  - rot13 ==0.2.0.1
+  - rpmbuild-order ==0.4.5
+  - rp-tree ==0.3.6
+  - RSA ==2.4.1
+  - runmemo ==1.0.0.1
+  - rvar ==0.2.0.6
+  - safe ==0.3.19
+  - safe-coloured-text ==0.0.0.0
+  - safecopy ==0.10.4.2
+  - safe-decimal ==0.2.0.0
+  - safe-exceptions ==0.1.7.1
+  - safe-foldable ==0.1.0.0
+  - safeio ==0.0.5.0
+  - safe-json ==1.1.1.1
+  - safe-money ==0.9
+  - SafeSemaphore ==0.10.1
+  - safe-tensor ==0.2.1.1
+  - salak ==0.3.6
+  - salak-yaml ==0.3.5.3
+  - saltine ==0.1.1.1
+  - salve ==1.0.11
+  - sample-frame ==0.0.3
+  - sample-frame-np ==0.0.4.1
+  - sampling ==0.3.5
+  - sandwich ==0.1.0.6
+  - sandwich-quickcheck ==0.1.0.5
+  - sandwich-slack ==0.1.0.4
+  - sandwich-webdriver ==0.1.0.4
+  - say ==0.1.0.1
+  - sbp ==2.6.3
+  - sbv ==8.15
+  - scalpel ==0.6.2
+  - scalpel-core ==0.6.2
+  - scanf ==0.1.0.0
+  - scanner ==0.3.1
+  - scheduler ==1.5.0
+  - scientific ==0.3.7.0
+  - scotty ==0.12
+  - scrypt ==0.5.0
+  - sdl2 ==2.5.3.0
+  - sdl2-gfx ==0.2
+  - sdl2-image ==2.0.0
+  - sdl2-mixer ==1.1.0
+  - sdl2-ttf ==2.1.2
+  - search-algorithms ==0.3.1
+  - secp256k1-haskell ==0.5.0
+  - securemem ==0.1.10
+  - selda ==0.5.1.0
+  - selda-json ==0.1.1.0
+  - selda-postgresql ==0.1.8.1
+  - selda-sqlite ==0.1.7.1
+  - selections ==0.3.0.0
+  - selective ==0.4.2
+  - semialign ==1.1.0.1
+  - semialign-indexed ==1.1
+  - semialign-optics ==1.1
+  - semigroupoid-extras ==5
+  - semigroupoids ==5.3.5
+  - semigroups ==0.19.1
+  - semirings ==0.6
+  - semiring-simple ==1.0.0.1
+  - semver ==0.4.0.1
+  - sendfile ==0.7.11.1
+  - sendgrid-v3 ==0.3.0.0
+  - seqalign ==0.2.0.4
+  - seqid ==0.6.2
+  - seqid-streams ==0.7.2
+  - sequence-formats ==1.6.1
+  - sequenceTools ==1.4.0.5
+  - serf ==0.1.1.0
+  - serialise ==0.2.3.0
+  - servant ==0.18.2
+  - servant-auth ==0.4.0.0
+  - servant-auth-client ==0.4.1.0
+  - servant-auth-docs ==0.2.10.0
+  - servant-auth-server ==0.4.6.0
+  - servant-auth-swagger ==0.2.10.1
+  - servant-auth-wordpress ==1.0.0.2
+  - servant-blaze ==0.9.1
+  - servant-client ==0.18.2
+  - servant-client-core ==0.18.2
+  - servant-conduit ==0.15.1
+  - servant-docs ==0.11.8
+  - servant-elm ==0.7.2
+  - servant-errors ==0.1.6.0
+  - servant-exceptions ==0.2.1
+  - servant-exceptions-server ==0.2.1
+  - servant-foreign ==0.15.3
+  - servant-http-streams ==0.18.2
+  - servant-machines ==0.15.1
+  - servant-multipart ==0.12
+  - servant-openapi3 ==2.0.1.2
+  - servant-pipes ==0.15.2
+  - servant-rawm ==1.0.0.0
+  - servant-server ==0.18.2
+  - servant-swagger ==1.1.10
+  - servant-swagger-ui ==0.3.5.3.47.1
+  - servant-swagger-ui-core ==0.3.5
+  - serverless-haskell ==0.12.6
+  - serversession ==1.0.2
+  - serversession-frontend-wai ==1.0
+  - ses-html ==0.4.0.0
+  - set-cover ==0.1.1
+  - setenv ==0.1.1.3
+  - setlocale ==1.0.0.10
+  - sexp-grammar ==2.3.0
+  - SHA ==1.6.4.4
+  - shake-language-c ==0.12.0
+  - shake-plus ==0.3.3.1
+  - shake-plus-extended ==0.4.1.0
+  - shakespeare ==2.0.25
+  - shared-memory ==0.2.0.0
+  - shell-conduit ==5.0.0
+  - shell-escape ==0.2.0
+  - shellmet ==0.0.4.0
+  - shelltestrunner ==1.9
+  - shell-utility ==0.1
+  - shelly ==1.9.0
+  - shikensu ==0.3.11
+  - shortcut-links ==0.5.1.1
+  - should-not-typecheck ==2.1.0
+  - show-combinators ==0.2.0.0
+  - siggy-chardust ==1.0.0
+  - signal ==0.1.0.4
+  - silently ==1.2.5.1
+  - simple-affine-space ==0.1.1
+  - simple-cabal ==0.1.3
+  - simple-cmd ==0.2.3
+  - simple-cmd-args ==0.1.6
+  - simple-log ==0.9.12
+  - simple-reflect ==0.3.3
+  - simple-sendfile ==0.2.30
+  - simple-templates ==1.0.0
+  - simple-vec3 ==0.6.0.1
+  - simplistic-generics ==2.0.0
+  - since ==0.0.0
+  - singleton-bool ==0.1.5
+  - singleton-nats ==0.4.5
+  - singletons ==2.7
+  - singletons-presburger ==0.6.0.0
+  - siphash ==1.0.3
+  - sitemap-gen ==0.1.0.0
+  - sized ==1.0.0.0
+  - skein ==1.0.9.4
+  - skews ==0.1.0.3
+  - skip-var ==0.1.1.0
+  - skylighting ==0.10.5.1
+  - skylighting-core ==0.10.5.1
+  - slack-api ==0.12
+  - slack-progressbar ==0.1.0.1
+  - slick ==1.1.1.0
+  - slist ==0.2.0.0
+  - slynx ==0.5.0.2
+  - smallcheck ==1.2.1
+  - smash ==0.1.2
+  - smash-aeson ==0.1.0.0
+  - smash-lens ==0.1.0.1
+  - smash-microlens ==0.1.0.0
+  - smoothie ==0.4.2.11
+  - smtp-mail ==0.3.0.0
+  - snap-blaze ==0.2.1.5
+  - snap-core ==1.0.4.2
+  - snap-server ==1.1.2.0
+  - snowflake ==0.1.1.1
+  - soap ==0.2.3.6
+  - soap-openssl ==0.1.0.2
+  - soap-tls ==0.1.1.4
+  - socket ==0.8.3.0
+  - socks ==0.6.1
+  - some ==1.0.2
+  - sop-core ==0.5.0.1
+  - sort ==1.0.0.0
+  - sorted-list ==0.2.1.0
+  - sourcemap ==0.1.6.1
+  - sox ==0.2.3.1
+  - soxlib ==0.0.3.1
+  - spacecookie ==1.0.0.0
+  - sparse-linear-algebra ==0.3.1
+  - sparse-tensor ==0.2.1.5
+  - spatial-math ==0.5.0.1
+  - special-values ==0.1.0.0
+  - speculate ==0.4.6
+  - speedy-slice ==0.3.2
+  - Spintax ==0.3.6
+  - splice ==0.6.1.1
+  - splint ==1.0.1.4
+  - split ==0.2.3.4
+  - splitmix ==0.1.0.3
+  - splitmix-distributions ==0.9.0.0
+  - spoon ==0.3.1
+  - spreadsheet ==0.1.3.8
+  - sqlcli ==0.2.2.0
+  - sqlcli-odbc ==0.2.0.1
+  - sqlite-simple ==0.4.18.0
+  - sql-words ==0.1.6.4
+  - squeal-postgresql ==0.7.0.1
+  - squeather ==0.8.0.0
+  - srcloc ==0.6
+  - stache ==2.3.0
+  - stackcollapse-ghc ==0.0.1.3
+  - stack-templatizer ==0.1.0.2
+  - stateref ==0.3
+  - StateVar ==1.2.1
+  - static-text ==0.2.0.6
+  - statistics ==0.15.2.0
+  - status-notifier-item ==0.3.0.5
+  - stb-image-redux ==0.2.1.3
+  - step-function ==0.2
+  - stm-chans ==3.0.0.4
+  - stm-conduit ==4.0.1
+  - stm-containers ==1.2
+  - stm-delay ==0.1.1.1
+  - stm-extras ==0.1.0.3
+  - stm-hamt ==1.2.0.6
+  - stm-lifted ==2.5.0.0
+  - STMonadTrans ==0.4.5
+  - stm-split ==0.0.2.1
+  - stopwatch ==0.1.0.6
+  - storable-complex ==0.2.3.0
+  - storable-endian ==0.2.6
+  - storable-record ==0.0.5
+  - storable-tuple ==0.0.3.3
+  - storablevector ==0.2.13.1
+  - store ==0.7.11
+  - store-core ==0.4.4.4
+  - store-streaming ==0.2.0.3
+  - stratosphere ==0.59.1
+  - Stream ==0.4.7.2
+  - streaming ==0.2.3.0
+  - streaming-attoparsec ==1.0.0.1
+  - streaming-bytestring ==0.2.0
+  - streaming-commons ==0.2.2.1
+  - streamly ==0.7.3
+  - streams ==3.3
+  - streamt ==0.5.0.0
+  - strict ==0.4.0.1
+  - strict-concurrency ==0.2.4.3
+  - strict-list ==0.1.5
+  - strict-tuple ==0.1.4
+  - strict-tuple-lens ==0.1.0.1
+  - stringbuilder ==0.5.1
+  - string-class ==0.1.7.0
+  - string-combinators ==0.6.0.5
+  - string-conv ==0.1.2
+  - string-conversions ==0.4.0.1
+  - string-interpolate ==0.3.1.1
+  - string-qq ==0.0.4
+  - string-random ==0.1.4.1
+  - stringsearch ==0.3.6.6
+  - string-transform ==1.1.1
+  - stripe-concepts ==1.0.2.6
+  - stripe-core ==2.6.2
+  - stripe-haskell ==2.6.2
+  - stripe-http-client ==2.6.2
+  - strive ==5.0.14
+  - structs ==0.1.6
+  - structured ==0.1.0.1
+  - structured-cli ==2.7.0.1
+  - subcategories ==0.1.1.0
+  - sum-type-boilerplate ==0.1.1
+  - sundown ==0.6
+  - superbuffer ==0.3.1.1
+  - svg-tree ==0.6.2.4
+  - swagger ==0.3.0
+  - swagger2 ==2.6
+  - sweet-egison ==0.1.1.3
+  - swish ==0.10.0.4
+  - syb ==0.7.2.1
+  - sydtest ==0.1.0.0
+  - sydtest-discover ==0.0.0.0
+  - sydtest-persistent-sqlite ==0.0.0.0
+  - sydtest-servant ==0.0.0.0
+  - sydtest-wai ==0.0.0.0
+  - sydtest-yesod ==0.0.0.0
+  - symbol ==0.2.4
+  - symengine ==0.1.2.0
+  - symmetry-operations-symbols ==0.0.2.1
+  - sysinfo ==0.1.1
+  - system-argv0 ==0.1.1
+  - systemd ==2.3.0
+  - system-fileio ==0.3.16.4
+  - system-filepath ==0.4.14
+  - system-info ==0.5.2
+  - tabular ==0.2.2.8
+  - tagchup ==0.4.1.1
+  - tagged ==0.8.6.1
+  - tagged-binary ==0.2.0.1
+  - tagged-identity ==0.1.3
+  - tagged-transformer ==0.8.1
+  - tagshare ==0.0
+  - tagsoup ==0.14.8
+  - tao ==1.0.0
+  - tao-example ==1.0.0
+  - tar ==0.5.1.1
+  - tar-conduit ==0.3.2
+  - tardis ==0.4.3.0
+  - tasty ==1.4.1
+  - tasty-ant-xml ==1.1.8
+  - tasty-bench ==0.2.5
+  - tasty-dejafu ==2.0.0.7
+  - tasty-discover ==4.2.2
+  - tasty-expected-failure ==0.12.3
+  - tasty-focus ==1.0.1
+  - tasty-golden ==2.3.4
+  - tasty-hedgehog ==1.0.1.0
+  - tasty-hspec ==1.1.6
+  - tasty-hunit ==0.10.0.3
+  - tasty-hunit-compat ==0.2.0.1
+  - tasty-inspection-testing ==0.1
+  - tasty-kat ==0.0.3
+  - tasty-leancheck ==0.0.1
+  - tasty-lua ==0.2.3.2
+  - tasty-program ==1.0.5
+  - tasty-quickcheck ==0.10.1.2
+  - tasty-rerun ==1.1.18
+  - tasty-silver ==3.2.1
+  - tasty-smallcheck ==0.8.2
+  - tasty-test-reporter ==0.1.1.4
+  - tasty-th ==0.1.7
+  - tasty-wai ==0.1.1.1
+  - Taxonomy ==2.2.0
+  - TCache ==0.12.1
+  - tce-conf ==1.3
+  - tdigest ==0.2.1.1
+  - template-haskell-compat-v0208 ==0.1.5
+  - temporary ==1.3
+  - temporary-rc ==1.2.0.3
+  - temporary-resourcet ==0.1.0.1
+  - tensorflow-test ==0.1.0.0
+  - tensors ==0.1.5
+  - termbox ==0.3.0
+  - terminal-progress-bar ==0.4.1
+  - terminal-size ==0.3.2.1
+  - test-framework ==0.8.2.0
+  - test-framework-hunit ==0.3.0.2
+  - test-framework-leancheck ==0.0.1
+  - test-framework-quickcheck2 ==0.3.0.5
+  - test-framework-smallcheck ==0.2
+  - test-fun ==0.1.0.0
+  - testing-type-modifiers ==0.1.0.1
+  - texmath ==0.12.2
+  - text-ansi ==0.1.1
+  - text-binary ==0.2.1.1
+  - text-builder ==0.6.6.2
+  - text-conversions ==0.3.1
+  - text-format ==0.3.2
+  - text-icu ==0.7.1.0
+  - text-latin1 ==0.3.1
+  - text-ldap ==0.1.1.13
+  - textlocal ==0.1.0.5
+  - text-manipulate ==0.3.0.0
+  - text-metrics ==0.3.0
+  - text-postgresql ==0.0.3.1
+  - text-printer ==0.5.0.1
+  - text-regex-replace ==0.1.1.4
+  - text-region ==0.3.1.0
+  - text-short ==0.1.3
+  - text-show ==3.9
+  - text-show-instances ==3.8.4
+  - text-zipper ==0.11
+  - tfp ==1.0.2
+  - tf-random ==0.5
+  - th-abstraction ==0.4.2.0
+  - th-bang-compat ==0.0.1.0
+  - th-compat ==0.1.2
+  - th-constraint-compat ==0.0.1.0
+  - th-data-compat ==0.1.0.0
+  - th-desugar ==1.11
+  - th-env ==0.1.0.2
+  - these ==1.1.1.1
+  - these-lens ==1.0.1.2
+  - these-optics ==1.0.1.2
+  - these-skinny ==0.7.4
+  - th-expand-syns ==0.4.8.0
+  - th-extras ==0.0.0.4
+  - th-lift ==0.8.2
+  - th-lift-instances ==0.1.18
+  - th-nowq ==0.1.0.5
+  - th-orphans ==0.13.11
+  - th-printf ==0.7
+  - thread-hierarchy ==0.3.0.2
+  - thread-local-storage ==0.2
+  - threads ==0.5.1.6
+  - thread-supervisor ==0.2.0.0
+  - threepenny-gui ==0.9.1.0
+  - th-reify-compat ==0.0.1.5
+  - th-reify-many ==0.1.9
+  - throttle-io-stream ==0.2.0.1
+  - through-text ==0.1.0.0
+  - throwable-exceptions ==0.1.0.9
+  - th-strict-compat ==0.1.0.1
+  - th-test-utils ==1.1.0
+  - th-utilities ==0.2.4.3
+  - thyme ==0.3.5.5
+  - tidal ==1.7.4
+  - tile ==0.3.0.0
+  - time-compat ==1.9.5
+  - timeit ==2.0
+  - timelens ==0.2.0.2
+  - time-lens ==0.4.0.2
+  - time-locale-compat ==0.1.1.5
+  - time-locale-vietnamese ==1.0.0.0
+  - time-manager ==0.0.0
+  - time-parsers ==0.1.2.1
+  - timerep ==2.0.1.0
+  - timer-wheel ==0.3.0
+  - time-units ==1.0.0
+  - timezone-olson ==0.2.0
+  - timezone-series ==0.1.9
+  - tinylog ==0.15.0
+  - titlecase ==1.0.1
+  - tldr ==0.9.0
+  - tls ==1.5.5
+  - tls-debug ==0.4.8
+  - tls-session-manager ==0.0.4
+  - tlynx ==0.5.0.2
+  - tmapchan ==0.0.3
+  - tmapmvar ==0.0.4
+  - tmp-postgres ==1.34.1.0
+  - tomland ==1.3.2.0
+  - tonalude ==0.1.1.1
+  - topograph ==1.0.0.1
+  - torsor ==0.1
+  - tostring ==0.2.1.1
+  - transaction ==0.1.1.3
+  - transformers-base ==0.4.5.2
+  - transformers-bifunctors ==0.1
+  - transformers-compat ==0.6.6
+  - transformers-fix ==1.0
+  - traverse-with-class ==1.0.1.0
+  - tree-diff ==0.2
+  - tree-fun ==0.8.1.0
+  - tree-view ==0.5.1
+  - trifecta ==2.1.1
+  - triplesec ==0.2.2.1
+  - trivial-constraint ==0.7.0.0
+  - tsv2csv ==0.1.0.2
+  - ttc ==0.4.0.0
+  - ttl-hashtables ==1.4.1.0
+  - ttrie ==0.1.2.1
+  - tuple ==0.3.0.2
+  - tuples-homogenous-h98 ==0.1.1.0
+  - tuple-sop ==0.3.1.0
+  - tuple-th ==0.2.5
+  - turtle ==1.5.22
+  - typecheck-plugin-nat-simple ==0.1.0.2
+  - TypeCompose ==0.9.14
+  - typed-process ==0.2.6.0
+  - typed-uuid ==0.1.0.0
+  - type-equality ==1
+  - type-errors ==0.2.0.0
+  - type-errors-pretty ==0.0.1.1
+  - type-hint ==0.1
+  - type-level-integers ==0.0.1
+  - type-level-kv-list ==1.1.0
+  - type-level-natural-number ==2.0
+  - type-level-numbers ==0.1.1.1
+  - typelits-witnesses ==0.4.0.0
+  - type-map ==0.1.6.0
+  - type-natural ==1.1.0.0
+  - typenums ==0.1.4
+  - type-of-html ==1.6.2.0
+  - type-of-html-static ==0.1.0.2
+  - type-operators ==0.2.0.0
+  - typerep-map ==0.3.3.0
+  - type-spec ==0.4.0.0
+  - tzdata ==0.2.20201021.0
+  - ua-parser ==0.7.6.0
+  - uglymemo ==0.1.0.1
+  - unagi-chan ==0.4.1.3
+  - unbounded-delays ==0.1.1.1
+  - unboxed-ref ==0.4.0.0
+  - unboxing-vector ==0.2.0.0
+  - uncaught-exception ==0.1.0
+  - uncertain ==0.3.1.0
+  - unconstrained ==0.1.0.2
+  - unexceptionalio ==0.5.1
+  - unexceptionalio-trans ==0.5.1
+  - unicode ==0.0.1.1
+  - unicode-show ==0.1.0.4
+  - unicode-transforms ==0.3.7.1
+  - unification-fd ==0.11.1
+  - union-find ==0.2
+  - unipatterns ==0.0.0.0
+  - uniplate ==1.6.13
+  - uniprot-kb ==0.1.2.0
+  - uniq-deep ==1.2.0
+  - unique ==0.0.1
+  - unique-logic ==0.4
+  - unique-logic-tf ==0.5.1
+  - unit-constraint ==0.0.0
+  - universe ==1.2.1
+  - universe-base ==1.1.2
+  - universe-dependent-sum ==1.3
+  - universe-instances-base ==1.1
+  - universe-instances-extended ==1.1.2
+  - universe-instances-trans ==1.1
+  - universe-reverse-instances ==1.1.1
+  - universe-some ==1.2.1
+  - universum ==1.7.2
+  - unix-bytestring ==0.3.7.3
+  - unix-compat ==0.5.3
+  - unix-time ==0.4.7
+  - unliftio ==0.2.17
+  - unliftio-core ==0.2.0.1
+  - unliftio-pool ==0.2.1.1
+  - unliftio-streams ==0.1.1.1
+  - unlit ==0.4.0.0
+  - unordered-containers ==0.2.14.0
+  - unsafe ==0.0
+  - urbit-hob ==0.3.3
+  - uri-bytestring ==0.3.3.0
+  - uri-bytestring-aeson ==0.1.0.8
+  - uri-encode ==1.5.0.7
+  - url ==2.1.3
+  - users ==0.5.0.0
+  - utf8-conversions ==0.1.0.4
+  - utf8-light ==0.4.2
+  - utf8-string ==1.0.2
+  - util ==0.1.17.1
+  - utility-ht ==0.0.16
+  - uuid ==1.3.15
+  - uuid-types ==1.0.5
+  - validation ==1.1.1
+  - validation-selective ==0.1.0.1
+  - validity ==0.11.0.0
+  - validity-aeson ==0.2.0.4
+  - validity-bytestring ==0.4.1.1
+  - validity-containers ==0.5.0.4
+  - validity-path ==0.4.0.1
+  - validity-persistent ==0.0.0.0
+  - validity-primitive ==0.0.0.1
+  - validity-scientific ==0.2.0.3
+  - validity-text ==0.3.1.1
+  - validity-time ==0.4.0.0
+  - validity-unordered-containers ==0.2.0.3
+  - validity-uuid ==0.1.0.3
+  - validity-vector ==0.2.0.3
+  - valor ==0.1.0.0
+  - vault ==0.3.1.5
+  - vcs-ignore ==0.0.1.0
+  - vec ==0.4
+  - vector ==0.12.3.0
+  - vector-algorithms ==0.8.0.4
+  - vector-binary-instances ==0.2.5.2
+  - vector-buffer ==0.4.1
+  - vector-builder ==0.3.8.1
+  - vector-bytes-instances ==0.1.1
+  - vector-circular ==0.1.3
+  - vector-instances ==3.4
+  - vector-mmap ==0.0.3
+  - vector-rotcev ==0.1.0.0
+  - vector-sized ==1.4.3.1
+  - vector-space ==0.16
+  - vector-split ==1.0.0.2
+  - vector-th-unbox ==0.2.1.9
+  - verbosity ==0.4.0.0
+  - versions ==4.0.3
+  - vformat ==0.14.1.0
+  - vformat-aeson ==0.1.0.1
+  - vformat-time ==0.1.0.0
+  - ViennaRNAParser ==1.3.3
+  - vinyl ==0.13.3
+  - void ==0.7.3
+  - vty ==5.33
+  - wai ==3.2.3
+  - wai-app-static ==3.1.7.2
+  - wai-conduit ==3.0.0.4
+  - wai-cors ==0.2.7
+  - wai-enforce-https ==0.0.2.1
+  - wai-eventsource ==3.0.0
+  - wai-extra ==3.1.6
+  - wai-feature-flags ==0.1.0.1
+  - wai-handler-launch ==3.0.3.1
+  - wai-logger ==2.3.6
+  - wai-middleware-auth ==0.2.4.1
+  - wai-middleware-caching ==0.1.0.2
+  - wai-middleware-clacks ==0.1.0.1
+  - wai-middleware-static ==0.9.0
+  - wai-rate-limit ==0.1.0.0
+  - wai-rate-limit-redis ==0.1.0.0
+  - wai-saml2 ==0.2.1.2
+  - wai-session ==0.3.3
+  - wai-session-redis ==0.1.0.2
+  - wai-slack-middleware ==0.2.0
+  - wai-websockets ==3.0.1.2
+  - wakame ==0.1.0.0
+  - warp ==3.3.16
+  - warp-tls ==3.3.1
+  - warp-tls-uid ==0.2.0.6
+  - wave ==0.2.0
+  - wcwidth ==0.0.2
+  - webby ==1.0.1
+  - webdriver ==0.9.0.1
+  - webex-teams-api ==0.2.0.1
+  - webex-teams-conduit ==0.2.0.1
+  - webex-teams-pipes ==0.2.0.1
+  - webgear-server ==0.2.1
+  - webrtc-vad ==0.1.0.3
+  - websockets ==0.12.7.2
+  - websockets-snap ==0.10.3.1
+  - weigh ==0.0.16
+  - wide-word ==0.1.1.2
+  - wikicfp-scraper ==0.1.0.12
+  - wild-bind ==0.1.2.7
+  - wild-bind-x11 ==0.2.0.12
+  - Win32 ==2.6.1.0
+  - Win32-notify ==0.3.0.3
+  - windns ==0.1.0.1
+  - witch ==0.3.3.0
+  - witherable ==0.4.1
+  - within ==0.2.0.1
+  - with-location ==0.1.0
+  - with-utf8 ==1.0.2.2
+  - wizards ==1.0.3
+  - wl-pprint-annotated ==0.1.0.1
+  - wl-pprint-console ==0.1.0.2
+  - wl-pprint-text ==1.2.0.1
+  - word24 ==2.0.1
+  - word8 ==0.1.3
+  - wordpress-auth ==1.0.0.1
+  - word-trie ==0.3.0
+  - word-wrap ==0.4.1
+  - world-peace ==1.0.2.0
+  - wrap ==0.0.0
+  - wreq ==0.5.3.3
+  - writer-cps-exceptions ==0.1.0.1
+  - writer-cps-mtl ==0.1.1.6
+  - writer-cps-transformers ==0.5.6.1
+  - wss-client ==0.3.0.0
+  - wuss ==1.1.18
+  - X11 ==1.9.2
+  - X11-xft ==0.3.1
+  - x11-xim ==0.0.9.0
+  - x509 ==1.7.5
+  - x509-store ==1.6.7
+  - x509-system ==1.6.6
+  - x509-validation ==1.6.11
+  - Xauth ==0.1
+  - xdg-basedir ==0.2.2
+  - xdg-userdirs ==0.1.0.2
+  - xeno ==0.4.2
+  - xlsx ==0.8.3
+  - xlsx-tabular ==0.2.2.1
+  - xml ==1.3.14
+  - xml-basic ==0.1.3.1
+  - xml-conduit ==1.9.1.1
+  - xml-conduit-writer ==0.1.1.2
+  - xmlgen ==0.6.2.2
+  - xml-hamlet ==0.5.0.1
+  - xml-helpers ==1.0.0
+  - xml-html-qq ==0.1.0.1
+  - xml-indexed-cursor ==0.1.1.0
+  - xml-lens ==0.3
+  - xml-picklers ==0.3.6
+  - xml-to-json ==2.0.1
+  - xml-to-json-fast ==2.0.0
+  - xml-types ==0.3.8
+  - xmonad ==0.15
+  - xmonad-contrib ==0.16
+  - xmonad-extras ==0.15.3
+  - xss-sanitize ==0.3.6
+  - xxhash-ffi ==0.2.0.0
+  - yaml ==0.11.5.0
+  - yamlparse-applicative ==0.1.0.4
+  - yesod ==1.6.1.1
+  - yesod-auth ==1.6.10.3
+  - yesod-auth-hashdb ==1.7.1.7
+  - yesod-auth-oauth2 ==0.6.3.4
+  - yesod-bin ==1.6.1
+  - yesod-core ==1.6.20.1
+  - yesod-fb ==0.6.1
+  - yesod-form ==1.6.7
+  - yesod-gitrev ==0.2.1
+  - yesod-markdown ==0.12.6.11
+  - yesod-newsfeed ==1.7.0.0
+  - yesod-page-cursor ==2.0.0.8
+  - yesod-paginator ==1.1.1.0
+  - yesod-persistent ==1.6.0.7
+  - yesod-sitemap ==1.6.0
+  - yesod-static ==1.6.1.0
+  - yesod-test ==1.6.12
+  - yesod-websockets ==0.3.0.3
+  - yes-precure5-command ==5.5.3
+  - yi-rope ==0.11
+  - yjsvg ==0.2.0.1
+  - yjtools ==0.9.18
+  - yoga ==0.0.0.5
+  - youtube ==0.2.1.1
+  - zenacy-html ==2.0.3
+  - zenacy-unicode ==1.0.1
+  - zero ==0.1.5
+  - zeromq4-haskell ==0.8.0
+  - zeromq4-patterns ==0.3.1.0
+  - zim-parser ==0.2.1.0
+  - zio ==0.1.0.2
+  - zip ==1.7.0
+  - zip-archive ==0.4.1
+  - zipper-extra ==0.1.3.2
+  - zippers ==0.3.1
+  - zip-stream ==0.2.1.0
+  - zlib ==0.6.2.3
+  - zlib-bindings ==0.1.1.5
+  - zlib-lens ==0.1.2.1
+  - zot ==0.0.3
+  - zstd ==0.1.2.0
+  - ztail ==1.2.0.2
+  - zydiskell ==0.2.0.0
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
new file mode 100644
index 000000000000..e813a2a83475
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -0,0 +1,3282 @@
+# This file is automatically generated by
+# maintainers/scripts/haskell/regenerate-transitive-broken-packages.sh
+# It is supposed to list all haskellPackages that cannot evaluate because they
+# depend on a dependency marked as broken.
+dont-distribute-packages:
+
+ - 4Blocks
+ - a50
+ - abcBridge
+ - AbortT-monadstf
+ - AbortT-mtl
+ - accelerate-arithmetic
+ - accelerate-fourier
+ - accelerate-typelits
+ - access-token-provider
+ - ac-machine-conduit
+ - acme-php
+ - acme-safe
+ - acousticbrainz-client
+ - activehs
+ - actor
+ - AC-Vector-Fancy
+ - addy
+ - adhoc-network
+ - adict
+ - ADPfusionForest
+ - ADPfusionSet
+ - adp-multi-monadiccp
+ - Advgame
+ - Advise-me
+ - aern2-real
+ - aern2-real_0_2_7_0
+ - AERN-Net
+ - AERN-Real
+ - AERN-Real-Double
+ - AERN-Real-Interval
+ - AERN-RnToRm
+ - AERN-RnToRm-Plot
+ - aeson-native
+ - afv
+ - agda-server
+ - agda-snippets-hakyll
+ - agentx
+ - aip
+ - airship
+ - aivika-distributed
+ - algebra-checkers
+ - algebra-driven-design
+ - algebra-sql
+ - algolia
+ - AlgoRhythm
+ - AlignmentAlgorithms
+ - alms
+ - alpha
+ - alsa-gui
+ - alsa-pcm-tests
+ - alsa-seq-tests
+ - amazon-emailer-client-snap
+ - ampersand
+ - amqp-streamly
+ - analyze-client
+ - anatomy
+ - AndroidViewHierarchyImporter
+ - animate-example
+ - animate-frames
+ - animate-preview
+ - animate-sdl2
+ - annah
+ - Annotations
+ - anonymous-sums-tests
+ - antagonist
+ - anticiv
+ - antlrc
+ - apelsin
+ - apiary
+ - apiary-authenticate
+ - apiary-clientsession
+ - apiary-cookie
+ - apiary-eventsource
+ - apiary-helics
+ - apiary-http-client
+ - apiary-logger
+ - apiary-memcached
+ - apiary-mongoDB
+ - apiary-persistent
+ - apiary-purescript
+ - apiary-redis
+ - apiary-session
+ - apiary-websockets
+ - api-rpc-pegnet
+ - apis
+ - api-yoti
+ - apotiki
+ - ApplePush
+ - approx-rand-test
+ - arbor-monad-metric-datadog
+ - archlinux-web
+ - arduino-copilot
+ - arff
+ - arghwxhaskell
+ - argon
+ - ariadne
+ - arithmetic-circuits
+ - array-forth
+ - arraylist
+ - ascii-table
+ - asic
+ - ASN1
+ - assert4hs-hspec
+ - assert4hs-tasty
+ - assimp
+ - ast-monad-json
+ - astview
+ - atlassian-connect-core
+ - atmos-dimensional-tf
+ - atomic-primops-foreign
+ - atp
+ - AttoJson
+ - attoparsec-enumerator
+ - attoparsec-ip
+ - attoparsec-iteratee
+ - attoparsec-text-enumerator
+ - attoparsec-uri
+ - atuin
+ - audiovisual
+ - aura
+ - authoring
+ - AutoForms
+ - autonix-deps-kf5
+ - avers
+ - avers-api
+ - avers-api-docs
+ - avers-server
+ - AvlTree
+ - avro-piper
+ - awesomium
+ - awesomium-glut
+ - aws-configuration-tools
+ - aws-dynamodb-conduit
+ - aws-dynamodb-streams
+ - aws-elastic-transcoder
+ - aws-kinesis
+ - aws-kinesis-client
+ - aws-kinesis-reshard
+ - aws-lambda
+ - aws-mfa-credentials
+ - aws-sdk
+ - aws-sdk-xml-unordered
+ - aws-sign4
+ - aws-sns
+ - axiom
+ - azimuth-hs
+ - azure-functions-worker
+ - azure-service-api
+ - azure-servicebus
+ - babylon
+ - backblaze-b2-hs
+ - backdropper
+ - ballast
+ - bamboo
+ - bamboo-launcher
+ - bamboo-plugin-highlight
+ - bamboo-plugin-photo
+ - bamboo-theme-blueprint
+ - bamboo-theme-mini-html5
+ - bamse
+ - bamstats
+ - Barracuda
+ - base16-lens
+ - base32-bytestring
+ - base62
+ - base64-bytes
+ - baserock-schema
+ - BASIC
+ - batchd
+ - battlenet-yesod
+ - battleships
+ - bayes-stack
+ - bbi
+ - bdcs
+ - bdcs-api
+ - beam-automigrate
+ - beam-migrate
+ - beam-mysql
+ - beam-newtype-field
+ - beam-postgres
+ - beam-sqlite
+ - beam-th
+ - beautifHOL
+ - bech32-th
+ - bein
+ - belka
+ - BerlekampAlgorithm
+ - berp
+ - bff
+ - bglib
+ - billboard-parser
+ - billeksah-forms
+ - billeksah-main
+ - billeksah-pane
+ - binary-file
+ - binary-protocol-zmq
+ - binary-streams
+ - bindings-apr-util
+ - bindings-linux-videodev2
+ - bindings-ppdev
+ - binding-wx
+ - binembed-example
+ - bioace
+ - bioalign
+ - Biobase
+ - BiobaseBlast
+ - BiobaseDotP
+ - BiobaseENA
+ - BiobaseEnsembl
+ - BiobaseFasta
+ - BiobaseFR3D
+ - BiobaseHTTP
+ - BiobaseHTTPTools
+ - BiobaseInfernal
+ - BiobaseMAF
+ - BiobaseTrainingData
+ - BiobaseTurner
+ - BiobaseTypes
+ - BiobaseVienna
+ - BiobaseXNA
+ - biofasta
+ - biofastq
+ - BioHMM
+ - bioinformatics-toolkit
+ - biophd
+ - biopsl
+ - biosff
+ - biostockholm
+ - bip32
+ - birch-beer
+ - bird
+ - BirdPP
+ - bit-array
+ - bitcoin-address
+ - bitcoin-api
+ - bitcoin-api-extra
+ - bitcoin-block
+ - bitcoin-compact-filters
+ - bitcoind-regtest
+ - bitcoind-rpc
+ - bitcoin-keys
+ - bitcoin-rpc
+ - bitcoin-scripting
+ - bitcoin-tx
+ - bitcoin-types
+ - Bitly
+ - bitly-cli
+ - bitmaps
+ - bittorrent
+ - bla
+ - blakesum-demo
+ - BlastHTTP
+ - blastxml
+ - blatex
+ - blaze-builder-enumerator
+ - blaze-colonnade
+ - ble
+ - blink1
+ - blip
+ - Blobs
+ - blogination
+ - BlogLiterately
+ - BlogLiterately-diagrams
+ - bloodhound-amazonka-auth
+ - bloxorz
+ - blubber
+ - bluetile
+ - blunt
+ - bno055-haskell
+ - bogre-banana
+ - bond-haskell
+ - bond-haskell-compiler
+ - bookkeeper-permissions
+ - Bookshelf
+ - boomslang
+ - boopadoop
+ - boots-cloud
+ - boots-web
+ - borel
+ - bowntz
+ - box
+ - box-csv
+ - box-socket
+ - breakout
+ - bricks
+ - bricks-internal-test
+ - bricks-parsec
+ - bricks-rendering
+ - bricks-syntax
+ - bronyradiogermany-streaming
+ - brotli-conduit
+ - brotli-streams
+ - b-tree
+ - btree
+ - buchhaltung
+ - buildbox-tools
+ - buildwrapper
+ - bulletproofs
+ - bulmex
+ - burnt-explorer
+ - bus-pirate
+ - buster-gtk
+ - buster-network
+ - butterflies
+ - bv-sized-lens
+ - bytebuild
+ - bytehash
+ - bytelog
+ - bytesmith
+ - bytestring-read
+ - c0check
+ - cabal2arch
+ - cabal-bounds
+ - cabal-cache
+ - cabal-cargs
+ - cabalmdvrpm
+ - cabal-query
+ - cabalrpmdeps
+ - cabal-test
+ - cake
+ - cakyrespa
+ - cal3d-examples
+ - cal3d-opengl
+ - calc
+ - calculator
+ - caldims
+ - call
+ - camfort
+ - campfire
+ - candid
+ - canteven-http
+ - cao
+ - cap
+ - carboncopy
+ - CarneadesIntoDung
+ - car-pool
+ - cartel
+ - casadi-bindings
+ - casadi-bindings-control
+ - casadi-bindings-core
+ - casadi-bindings-ipopt-interface
+ - casadi-bindings-snopt-interface
+ - cash
+ - cassandra-cql
+ - cassandra-thrift
+ - cassy
+ - casui
+ - categorical-algebra
+ - category-extras
+ - CBOR
+ - CC-delcont-alt
+ - cctools-workqueue
+ - cef3-simple
+ - ceilometer-common
+ - celtchar
+ - cereal-enumerator
+ - cereal-io-streams
+ - cereal-streams
+ - certificate
+ - cfipu
+ - cflp
+ - cfopu
+ - cgrep
+ - chainweb-mining-client
+ - chakra
+ - chalkboard-viewer
+ - charade
+ - chart-cli
+ - Chart-fltkhs
+ - chart-svg
+ - chart-svg-various
+ - chart-unit
+ - cheapskate-terminal
+ - check-pvp
+ - chevalier-common
+ - chitauri
+ - choose-exe
+ - chorale-geo
+ - chp-mtl
+ - chp-plus
+ - chp-transformers
+ - chr-core
+ - chr-lang
+ - chromatin
+ - chu2
+ - chunks
+ - ciphersaber2
+ - citation-resolve
+ - citeproc-hs-pandoc-filter
+ - clac
+ - clafer
+ - claferIG
+ - claferwiki
+ - clash
+ - clash-ghc
+ - clash-lib
+ - clash-multisignal
+ - clash-prelude-quickcheck
+ - clash-systemverilog
+ - clash-verilog
+ - clash-vhdl
+ - classify-frog
+ - classy-miso
+ - clckwrks
+ - clckwrks-cli
+ - clckwrks-dot-com
+ - clckwrks-plugin-bugs
+ - clckwrks-plugin-ircbot
+ - clckwrks-plugin-mailinglist
+ - clckwrks-plugin-media
+ - clckwrks-plugin-page
+ - clckwrks-plugin-redirect
+ - clckwrks-theme-bootstrap
+ - clckwrks-theme-clckwrks
+ - clckwrks-theme-geo-bootstrap
+ - cless
+ - click-clack
+ - clifford
+ - clippings
+ - clocked
+ - cloud-haskell
+ - cloud-seeder
+ - cloudyfs
+ - clua
+ - ClustalParser
+ - clustertools
+ - clutterhs
+ - cmathml3
+ - CMCompare
+ - cmptype
+ - cmv
+ - cnc-spec-compiler
+ - Coadjute
+ - codec
+ - code-conjure
+ - codec-rpm
+ - codemonitor
+ - cognimeta-utils
+ - coinbase-exchange
+ - colada
+ - collapse-duplication
+ - collection-json
+ - collections-base-instances
+ - co-log-polysemy-formatting
+ - color-counter
+ - colorless-http-client
+ - colorless-scotty
+ - colour-space
+ - columbia
+ - comark
+ - Combinatorrent
+ - comic
+ - commsec-keyexchange
+ - comonad-random
+ - ComonadSheet
+ - compact-mutable
+ - complexity
+ - computational-algebra
+ - concraft
+ - concraft-hr
+ - concraft-pl
+ - concrete-haskell
+ - concrete-haskell-autogen
+ - condor
+ - Condor
+ - conductive-hsc3
+ - conductive-song
+ - conduit-vfs-zip
+ - confcrypt
+ - conferer-provider-dhall
+ - conferer-provider-yaml
+ - conferer-source-dhall
+ - conferer-source-yaml
+ - conffmt
+ - Configger
+ - configifier
+ - config-select
+ - configurator-ng
+ - constraint-manip
+ - constructible
+ - consumers
+ - container
+ - containers-accelerate
+ - continuum
+ - continuum-client
+ - control
+ - control-monad-attempt
+ - control-monad-exception-monadsfd
+ - Control-Monad-MultiPass
+ - conversions
+ - convert
+ - convertible-ascii
+ - convertible-text
+ - coordinate
+ - copilot
+ - copilot-c99
+ - copilot-cbmc
+ - copilot-language
+ - copilot-libraries
+ - copilot-theorem
+ - CoreFoundation
+ - coroutine-enumerator
+ - coroutine-iteratee
+ - couchdb-enumerator
+ - couch-simple
+ - CPBrainfuck
+ - CPL
+ - cprng-aes-effect
+ - cql-io-tinylog
+ - cqrs-example
+ - cqrs-memory
+ - cqrs-postgresql
+ - cqrs-sqlite3
+ - cqrs-test
+ - cqrs-testkit
+ - craft
+ - craftwerk-cairo
+ - craftwerk-gtk
+ - craze
+ - crf-chain1
+ - crf-chain1-constrained
+ - crf-chain2-generic
+ - crf-chain2-tiers
+ - criu-rpc
+ - crockford
+ - cron-compat
+ - cryptocipher
+ - crypto-conduit
+ - cryptoids
+ - cryptoids-class
+ - cryptol
+ - crystalfontz
+ - csg
+ - cspmchecker
+ - CSPM-cspm
+ - CSPM-Interpreter
+ - CSPM-ToProlog
+ - csv-enumerator
+ - ctpl
+ - cube
+ - cursedcsv
+ - cursor-fuzzy-time-gen
+ - cv-combinators
+ - cypher
+ - Dangerous
+ - dapi
+ - darcs-benchmark
+ - darcs-beta
+ - darcsden
+ - darcs-fastconvert
+ - DarcsHelpers
+ - darcswatch
+ - darkplaces-demo
+ - darkplaces-rcon-util
+ - dash-haskell
+ - data-accessor-monads-fd
+ - data-basic
+ - data-cycle
+ - datadog-tracing
+ - data-elf
+ - dataflow
+ - data-layer
+ - data-lens-fd
+ - data-lens-ixset
+ - data-lens-template
+ - data-object-json
+ - data-object-yaml
+ - data-result
+ - data-rtuple
+ - data-structure-inferrer
+ - date-conversions
+ - dbjava
+ - dbus-client
+ - ddate
+ - ddc-build
+ - ddc-core
+ - ddc-core-babel
+ - ddc-core-eval
+ - ddc-core-flow
+ - ddc-core-llvm
+ - ddc-core-salt
+ - ddc-core-simpl
+ - ddc-core-tetra
+ - ddc-driver
+ - ddci-core
+ - ddc-interface
+ - ddc-source-tetra
+ - ddc-tools
+ - ddc-war
+ - debug
+ - debug-trace-var
+ - decidable
+ - decimal-arithmetic
+ - dedukti
+ - deeplearning-hs
+ - deepzoom
+ - defargs
+ - DefendTheKing
+ - definitive-graphics
+ - deka-tests
+ - delaunay
+ - delicious
+ - delimited-text
+ - delimiter-separated
+ - delta
+ - delta-h
+ - dependent-state
+ - dephd
+ - dep-t-advice
+ - deptrack-devops
+ - deptrack-dot
+ - dequeue
+ - derive-IG
+ - detour-via-uom
+ - devtools
+ - dewdrop
+ - dfinity-radix-tree
+ - dhall-docs
+ - dhcp-lease-parser
+ - dia-functions
+ - diagrams-haddock
+ - diagrams-html5
+ - diagrams-pandoc
+ - diagrams-pgf
+ - diagrams-reflex
+ - diagrams-wx
+ - DifferenceLogic
+ - difference-monoid
+ - digestive-functors-hsp
+ - dingo-core
+ - dingo-example
+ - dingo-widgets
+ - diplomacy
+ - diplomacy-server
+ - dirfiles
+ - discogs-haskell
+ - discord-gateway
+ - discord-hs
+ - discord-register
+ - discord-rest
+ - DisTract
+ - distributed-process-async
+ - distributed-process-azure
+ - distributed-process-client-server
+ - distributed-process-ekg
+ - distributed-process-execution
+ - distributed-process-extras
+ - distributed-process-fsm
+ - distributed-process-lifted
+ - distributed-process-monad-control
+ - distributed-process-p2p
+ - distributed-process-platform
+ - distributed-process-registry
+ - distributed-process-simplelocalnet
+ - distributed-process-supervisor
+ - distributed-process-systest
+ - distributed-process-task
+ - distributed-process-tests
+ - distributed-process-zookeeper
+ - distribution-plot
+ - dixi
+ - dl-fedora
+ - dmenu-pkill
+ - dmenu-pmount
+ - dmenu-search
+ - DMuCheck
+ - DnaProteinAlignment
+ - doc-review
+ - DocTest
+ - doi
+ - DOM
+ - domain
+ - domain-core
+ - domain-optics
+ - dow
+ - download-media-content
+ - DP
+ - dph-examples
+ - dph-lifted-base
+ - dph-lifted-copy
+ - dph-lifted-vseg
+ - dph-prim-interface
+ - dph-prim-par
+ - dph-prim-seq
+ - DrHylo
+ - dropbox-sdk
+ - dropsolve
+ - DSH
+ - dsh-sql
+ - dsmc-tools
+ - DSTM
+ - dtd
+ - dumb-cas
+ - Dust
+ - Dust-tools
+ - Dust-tools-pcap
+ - dvda
+ - dynamic-cabal
+ - dynamic-plot
+ - dynobud
+ - DysFRP-Cairo
+ - DysFRP-Craftwerk
+ - eccrypto-ed25519-bindings
+ - ecdsa
+ - edenskel
+ - edentv
+ - edge
+ - edges
+ - editable
+ - EditTimeReport
+ - effective-aspects-mzv
+ - egison
+ - egison-pattern-src-haskell-mode
+ - egison-pattern-src-th-mode
+ - egison-quote
+ - egison-tutorial
+ - elerea-examples
+ - eliminators_0_8
+ - elliptic-curve
+ - elsa
+ - emacs-keys
+ - email
+ - emailparse
+ - embeddock
+ - embeddock-example
+ - embroidery
+ - engine-io-growler
+ - entangle
+ - EntrezHTTP
+ - enumerate
+ - enumerate-function
+ - enumerator-fd
+ - enumerator-tf
+ - ephemeral
+ - erf-native
+ - eros-client
+ - eros-http
+ - error-message
+ - errors-ext
+ - ersatz-toysat
+ - esotericbot
+ - EsounD
+ - estreps
+ - Etage-Graph
+ - EtaMOO
+ - Eternal10Seconds
+ - eternity
+ - eternity-timestamped
+ - ether
+ - Etherbunny
+ - ethereum-analyzer
+ - ethereum-analyzer-cli
+ - ethereum-analyzer-webui
+ - ethereum-client-haskell
+ - ethereum-merkle-patricia-db
+ - evdev-streamly
+ - eventful-postgresql
+ - eventful-sqlite
+ - event-monad
+ - EventSocket
+ - eventsource-geteventstore-store
+ - every-bit-counts
+ - exception-monads-fd
+ - exference
+ - expand
+ - expat-enumerator
+ - expiring-containers
+ - explicit-iomodes-bytestring
+ - explicit-iomodes-text
+ - explicit-sharing
+ - explore
+ - expressions-z3
+ - extemp
+ - extensible-data
+ - extract-dependencies
+ - extrapolate
+ - Facts
+ - factual-api
+ - FailureT
+ - fakedata-quickcheck
+ - fallingblocks
+ - falling-turnip
+ - family-tree
+ - fast-digits
+ - fastirc
+ - fault-tree
+ - fbrnch
+ - fcd
+ - FComp
+ - feature-flipper-postgres
+ - fedora-img-dl
+ - feed2lj
+ - feed2twitter
+ - feed-gipeda
+ - feed-translator
+ - fei-base
+ - fei-cocoapi
+ - fei-dataiter
+ - fei-datasets
+ - fei-examples
+ - fei-modelzoo
+ - fei-nn
+ - feldspar-compiler
+ - feldspar-language
+ - FermatsLastMargin
+ - festung
+ - ffmpeg-tutorials
+ - ficketed
+ - fields
+ - FieldTrip
+ - filepath-crypto
+ - filepather
+ - FilePather
+ - filepath-io-access
+ - filesystem-enumerator
+ - Finance-Treasury
+ - find-clumpiness
+ - findhttp
+ - FiniteMap
+ - firstify
+ - FirstOrderTheory
+ - fixed-point-vector
+ - fixed-point-vector-space
+ - fixhs
+ - fix-parser-simple
+ - flac-picture
+ - flashblast
+ - flatbuffers
+ - flexiwrap
+ - flexiwrap-smallcheck
+ - Flippi
+ - flite
+ - flowdock-api
+ - flower
+ - flowsim
+ - fltkhs-demos
+ - fltkhs-fluid-demos
+ - fltkhs-fluid-examples
+ - fltkhs-hello-world
+ - fltkhs-themes
+ - fluent-logger
+ - fluent-logger-conduit
+ - FM-SBLEX
+ - foldl-transduce-attoparsec
+ - follower
+ - foo
+ - Forestry
+ - formal
+ - FormalGrammars
+ - format
+ - format-status
+ - forml
+ - formlets
+ - formlets-hsp
+ - forth-hll
+ - fortran-src-extras
+ - foscam-directory
+ - foscam-sort
+ - Foster
+ - fp-ieee
+ - fplll
+ - fpnla-examples
+ - frame-markdown
+ - Frames-beam
+ - Frames-dsv
+ - Frank
+ - freekick2
+ - freelude
+ - freer-converse
+ - free-theorems-counterexamples
+ - free-theorems-seq
+ - free-theorems-seq-webui
+ - free-theorems-webui
+ - frpnow-gloss
+ - frpnow-gtk
+ - frpnow-gtk3
+ - frpnow-vty
+ - ftdi
+ - ftp-client-conduit
+ - FTPLine
+ - ftree
+ - ftshell
+ - funbot
+ - funbot-git-hook
+ - funcons-lambda-cbv-mp
+ - funcons-simple
+ - funcons-tools
+ - functional-arrow
+ - function-combine
+ - functor-combo
+ - funflow-nix
+ - funion
+ - funnyprint
+ - funsat
+ - fused-effects-squeal
+ - fwgl-glfw
+ - fwgl-javascript
+ - fxpak
+ - g2
+ - g2q
+ - gact
+ - galois-fft
+ - Gamgine
+ - gargoyle-postgresql-connect
+ - gbu
+ - gdax
+ - gdiff-ig
+ - GeBoP
+ - gedcom
+ - geek
+ - geek-server
+ - gelatin-freetype2
+ - gelatin-fruity
+ - gelatin-gl
+ - gelatin-sdl2
+ - gelatin-shaders
+ - Genbank
+ - Gene-CluEDO
+ - generics-mrsop-gdiff
+ - genesis
+ - genesis-test
+ - GenI
+ - geniconvert
+ - geni-gui
+ - geniserver
+ - geni-util
+ - GenSmsPdu
+ - GenussFold
+ - geodetic
+ - geolite-csv
+ - getemx
+ - ghc-imported-from
+ - ghc-instances
+ - ghci-pretty
+ - ghcjs-hplay
+ - ghc-mod
+ - ghc-tags-plugin
+ - ghc-vis
+ - ght
+ - gi-cairo-again
+ - gi-gsk
+ - gi-gstpbutils
+ - gi-gtk_4_0_4
+ - git-fmt
+ - git-gpush
+ - github-webhook-handler-snap
+ - gitlib-cross
+ - gitlib-s3
+ - git-object
+ - git-remote-ipfs
+ - givegif
+ - gladexml-accessor
+ - glazier
+ - glazier-pipes
+ - glazier-react
+ - glazier-react-examples
+ - glazier-react-widget
+ - GLFW-OGL
+ - GLFW-task
+ - global
+ - global-config
+ - glome-hs
+ - GlomeView
+ - gloss-devil
+ - gloss-examples
+ - gloss-sodium
+ - gmap
+ - gmndl
+ - gnome-desktop
+ - gnomevfs
+ - gnss-converters
+ - gnuidn
+ - goal-geometry
+ - goal-probability
+ - goal-simulation
+ - goat
+ - GoogleDirections
+ - google-drive
+ - google-mail-filters
+ - google-maps-geocoding
+ - googleplus
+ - GoogleSB
+ - google-static-maps
+ - GoogleTranslate
+ - gore-and-ash-actor
+ - gore-and-ash-async
+ - gore-and-ash-demo
+ - gore-and-ash-glfw
+ - gore-and-ash-lambdacube
+ - gore-and-ash-logging
+ - gore-and-ash-network
+ - gore-and-ash-sdl
+ - gore-and-ash-sync
+ - GPipe-Collada
+ - GPipe-Examples
+ - GPipe-GLFW
+ - GPipe-GLFW4
+ - GPipe-TextureLoad
+ - gps
+ - gps2htmlReport
+ - GPX
+ - grab-form
+ - graflog
+ - grammar-combinators
+ - GrammarProducts
+ - grapefruit-examples
+ - grapefruit-records
+ - grapefruit-ui
+ - grapefruit-ui-gtk
+ - GraphHammer
+ - GraphHammer-examples
+ - graphicsFormats
+ - graphicstools
+ - graphql-client
+ - graph-rewriting-cl
+ - graph-rewriting-gl
+ - graph-rewriting-lambdascope
+ - graph-rewriting-layout
+ - graph-rewriting-ski
+ - graph-rewriting-strategies
+ - graph-rewriting-trs
+ - graph-rewriting-ww
+ - graphtype
+ - graph-visit
+ - greencard-lib
+ - gridbounds
+ - gridland
+ - grid-proto
+ - GrowlNotify
+ - grpc-etcd-client
+ - grpc-haskell
+ - grpc-haskell-core
+ - gruff
+ - gruff-examples
+ - gscholar-rss
+ - gsl-random-fu
+ - gsmenu
+ - gstorable
+ - gtfs
+ - gtk2hs-cast-glade
+ - gtk2hs-cast-gnomevfs
+ - gtk2hs-cast-gtkglext
+ - gtk2hs-cast-gtksourceview2
+ - Gtk2hsGenerics
+ - GtkGLTV
+ - gtkimageview
+ - gtkrsync
+ - gtk-serialized-event
+ - guarded-rewriting
+ - guess-combinator
+ - GuiHaskell
+ - GuiTV
+ - habit
+ - hablo
+ - hablog
+ - Hach
+ - hack2-handler-happstack-server
+ - hack2-handler-mongrel2-http
+ - hack2-handler-snap-server
+ - hackage2twitter
+ - hackage-server
+ - hack-contrib
+ - hack-contrib-press
+ - hack-handler-epoll
+ - hack-handler-evhttp
+ - hack-handler-fastcgi
+ - hack-handler-hyena
+ - hack-handler-simpleserver
+ - hackmanager
+ - hack-middleware-cleanpath
+ - hack-middleware-clientsession
+ - hack-middleware-jsonp
+ - haddock
+ - haddock_2_23_1
+ - haddocset
+ - hadoop-tools
+ - haggis
+ - hails-bin
+ - hakyll-elm
+ - hakyll-ogmarkup
+ - hakyll-typescript
+ - halberd
+ - hall-symbols
+ - halma-gui
+ - halma-telegram-bot
+ - ham
+ - HaMinitel
+ - hamusic
+ - hans-pcap
+ - happlets-lib-gtk
+ - HAppS-Data
+ - happs-hsp
+ - happs-hsp-template
+ - HAppS-IxSet
+ - HAppS-Server
+ - HAppS-State
+ - happstack-auth
+ - happstack-authenticate
+ - happstack-contrib
+ - happstack-data
+ - happstack-dlg
+ - happstack-facebook
+ - happstack-fay
+ - happstack-helpers
+ - happstack-ixset
+ - happstack-jmacro
+ - happstack-plugins
+ - happstack-state
+ - happstack-yui
+ - happs-tutorial
+ - happybara-webkit
+ - haquil
+ - hArduino
+ - hardware-edsl
+ - HaRe
+ - harg
+ - hark
+ - harmony
+ - HarmTrace
+ - haroonga-httpd
+ - hascat
+ - hascat-lib
+ - hascat-setup
+ - hascat-system
+ - HasGP
+ - Hashell
+ - hashflare
+ - haskarrow
+ - haskdeep
+ - haskeem
+ - haskell-abci
+ - haskell-aliyun
+ - haskell-bitmex-client
+ - haskelldb-connect-hdbc
+ - haskelldb-connect-hdbc-catchio-mtl
+ - haskelldb-connect-hdbc-catchio-tf
+ - haskelldb-connect-hdbc-catchio-transformers
+ - haskelldb-connect-hdbc-lifted
+ - haskelldb-dynamic
+ - haskelldb-flat
+ - haskelldb-hdbc
+ - haskelldb-hdbc-mysql
+ - haskelldb-hdbc-odbc
+ - haskelldb-hdbc-postgresql
+ - haskelldb-hdbc-sqlite3
+ - haskelldb-hsql
+ - haskelldb-hsql-mysql
+ - haskelldb-hsql-odbc
+ - haskelldb-hsql-postgresql
+ - haskelldb-hsql-sqlite3
+ - haskelldb-th
+ - haskell-docs
+ - haskell-eigen-util
+ - haskell-ftp
+ - haskell-pdf-presenter
+ - haskell-platform-test
+ - haskell-reflect
+ - haskell-src-exts-observe
+ - haskell-token-utils
+ - haskell-tools-ast
+ - haskell-tools-ast-fromghc
+ - haskell-tools-ast-gen
+ - haskell-tools-ast-trf
+ - haskell-tools-backend-ghc
+ - haskell-tools-builtin-refactorings
+ - haskell-tools-cli
+ - haskell-tools-daemon
+ - haskell-tools-debug
+ - haskell-tools-demo
+ - haskell-tools-experimental-refactorings
+ - haskell-tools-prettyprint
+ - haskell-tools-refactor
+ - haskell-tools-rewrite
+ - haskell-tor
+ - haskelm
+ - haskey-mtl
+ - haskgame
+ - hask-home
+ - haskoin-bitcoind
+ - haskoin-core
+ - haskoin-crypto
+ - haskoin-node
+ - haskoin-protocol
+ - haskoin-script
+ - haskoin-store
+ - haskoin-store-data
+ - haskoin-wallet
+ - haskoon
+ - haskoon-httpspec
+ - haskoon-salvia
+ - haskore-realtime
+ - haskore-supercollider
+ - haskore-synthesizer
+ - HaskRel
+ - hasktorch
+ - hasktorch-ffi-thc
+ - hasktorch-indef
+ - hasktorch-signatures
+ - hasktorch-zoo
+ - haskus-utils-compat
+ - haskus-web
+ - haslo
+ - hasloGUI
+ - hasparql-client
+ - hasql-cursor-query
+ - hasql-postgres
+ - hasql-postgres-options
+ - hasql-queue
+ - hasql-th
+ - hastache-aeson
+ - haste-app
+ - haste-gapi
+ - haste-lib
+ - haste-markup
+ - haste-perch
+ - has-th
+ - Hate
+ - HaTeX-meta
+ - hatexmpp3
+ - HaTeX-qq
+ - HaVSA
+ - hawitter
+ - Hawk
+ - haxy
+ - Hayoo
+ - hback
+ - hbayes
+ - hbb
+ - hbcd
+ - hbf
+ - hcg-minus-cairo
+ - hcheat
+ - hcheckers
+ - hdbi
+ - hdbi-conduit
+ - hdbi-postgresql
+ - hdbi-sqlite
+ - hdbi-tests
+ - hdf
+ - hdiff
+ - hdirect
+ - hdocs
+ - hdph
+ - heart-app
+ - heatitup
+ - heavy-logger
+ - heavy-logger-amazon
+ - heavy-logger-instances
+ - heavy-log-shortcuts
+ - hecc
+ - hedgehog-checkers-lens
+ - hedgehog-fakedata
+ - hedgehog-gen-json
+ - Hedi
+ - hedis-pile
+ - heidi
+ - heist-aeson
+ - helics
+ - helics-wai
+ - helium
+ - hellage
+ - hellnet
+ - hemokit
+ - hen
+ - henet
+ - hepevt
+ - her-lexer-parsec
+ - hermit
+ - hermit-syb
+ - herringbone
+ - herringbone-embed
+ - herringbone-wai
+ - hesh
+ - hesql
+ - heterolist
+ - hevolisa
+ - hevolisa-dph
+ - hexpat-iteratee
+ - hfd
+ - hfiar
+ - hgalib
+ - HGamer3D-API
+ - HGamer3D-CAudio-Binding
+ - HGamer3D-OIS-Binding
+ - hgen
+ - hgeometry-svg
+ - hgithub
+ - hiccup
+ - hierarchical-spectral-clustering
+ - Hieroglyph
+ - HiggsSet
+ - highjson-swagger
+ - highjson-th
+ - himpy
+ - hinduce-classifier
+ - hinduce-classifier-decisiontree
+ - hinduce-examples
+ - hint-server
+ - hinvaders
+ - hinze-streams
+ - hipbot
+ - HipmunkPlayground
+ - Hipmunk-Utils
+ - hipsql-client
+ - hipsql-server
+ - hirt
+ - hist-pl
+ - hist-pl-dawg
+ - hist-pl-fusion
+ - hist-pl-lexicon
+ - hist-pl-lmf
+ - hit
+ - hit-graph
+ - HJScript
+ - hjsonschema
+ - hjugement-cli
+ - hlcm
+ - HLearn-algebra
+ - HLearn-approximation
+ - HLearn-classification
+ - HLearn-datastructures
+ - HLearn-distributions
+ - hledger-api
+ - hlrdb
+ - hls
+ - hly
+ - hmark
+ - hmeap
+ - hmeap-utils
+ - hmep
+ - hmm-lapack
+ - hmt
+ - hmt-diagrams
+ - HNM
+ - hnormalise
+ - hob
+ - Hoed
+ - hOff-display
+ - hogre
+ - hogre-examples
+ - Holumbus-Distribution
+ - Holumbus-MapReduce
+ - Holumbus-Searchengine
+ - Holumbus-Storage
+ - holy-project
+ - hommage
+ - HongoDB
+ - hood
+ - hoodie
+ - hoodle
+ - hoodle-builder
+ - hoodle-core
+ - hoodle-extra
+ - hoodle-parser
+ - hoodle-publish
+ - hoodle-render
+ - hoovie
+ - hoq
+ - hp2any-graph
+ - hp2any-manager
+ - hpaco
+ - hpaco-lib
+ - hpage
+ - hpaste
+ - hpc-tracer
+ - hPDB
+ - hPDB-examples
+ - hplayground
+ - HPlot
+ - HPong
+ - hpqtypes-extras
+ - hprotoc-fork
+ - hps
+ - hps-cairo
+ - hpython
+ - hquantlib
+ - hranker
+ - HRay
+ - hreader
+ - hreader-lens
+ - hreq-client
+ - hreq-conduit
+ - HROOT
+ - HROOT-core
+ - HROOT-graf
+ - HROOT-hist
+ - HROOT-io
+ - HROOT-math
+ - HROOT-tree
+ - hs2dot
+ - Hs2lib
+ - hsautogui
+ - hsbackup
+ - hsbencher-codespeed
+ - hsbencher-fusion
+ - hs-blake2
+ - hs-brotli
+ - hsc3-auditor
+ - hsc3-cairo
+ - hsc3-data
+ - hsc3-db
+ - hsc3-dot
+ - hsc3-forth
+ - hsc3-graphs
+ - hsc3-lang
+ - hsc3-lisp
+ - hsc3-plot
+ - hsc3-process
+ - hsc3-rec
+ - hsc3-server
+ - hsc3-sf-hsndfile
+ - hsc3-unsafe
+ - hsc3-utils
+ - hscassandra
+ - hscope
+ - hsdev
+ - Hsed
+ - hset
+ - hsfacter
+ - hs-ffmpeg
+ - hs-gen-iface
+ - HSGEP
+ - HSHHelpers
+ - hslogstash
+ - hsnock
+ - HSoundFile
+ - HsParrot
+ - hspec-expectations-pretty
+ - hspec-pg-transact
+ - hspec-setup
+ - hspec-shouldbe
+ - hspec-test-sandbox
+ - hspecVariant
+ - hs-pkpass
+ - hsprocess
+ - hsql-mysql
+ - hsql-odbc
+ - hsql-postgresql
+ - hsql-sqlite3
+ - hsqml-datamodel-vinyl
+ - hsqml-demo-morris
+ - hsqml-morris
+ - hsreadability
+ - hssqlppp-th
+ - hs-swisstable-hashtables-class
+ - hstar
+ - hstox
+ - hstradeking
+ - HStringTemplateHelpers
+ - hstzaar
+ - hsubconvert
+ - HsWebots
+ - hswip
+ - hsx-jmacro
+ - hsx-xhtml
+ - HTab
+ - hts
+ - http2-client-exe
+ - http2-client-grpc
+ - http-client-auth
+ - http-enumerator
+ - http-io-streams
+ - https-everywhere-rules
+ - https-everywhere-rules-raw
+ - httpspec
+ - hubris
+ - hugs2yc
+ - hulk
+ - hunit-gui
+ - hunp
+ - hunt-searchengine
+ - hunt-server
+ - hurdle
+ - husky
+ - huzzy
+ - hw-all
+ - hw-dsv
+ - hw-json
+ - hw-json-lens
+ - hw-json-simple-cursor
+ - hw-json-standard-cursor
+ - hw-kafka-avro
+ - hworker-ses
+ - hwormhole
+ - hws
+ - hw-simd-cli
+ - hwsl2-bytevector
+ - hwsl2-reducers
+ - hw-uri
+ - HXMPP
+ - hxmppc
+ - hxournal
+ - hxt-binary
+ - hxt-filter
+ - hxthelper
+ - hxweb
+ - hybrid
+ - Hydrogen
+ - hydrogen-cli
+ - hydrogen-cli-args
+ - hydrogen-data
+ - hydrogen-parsing
+ - hydrogen-prelude
+ - hydrogen-prelude-parsec
+ - hydrogen-syntax
+ - hydrogen-util
+ - hyena
+ - hylotab
+ - hyloutils
+ - hyperpublic
+ - ice40-prim
+ - ideas-math
+ - ideas-math-types
+ - ideas-statistics
+ - ide-backend
+ - ide-backend-common
+ - ide-backend-server
+ - ige-mac-integration
+ - ihaskell-rlangqq
+ - ihttp
+ - imap
+ - imbib
+ - imgurder
+ - imj-animation
+ - imj-base
+ - imj-game-hamazed
+ - imj-measure-stdout
+ - imm
+ - imparse
+ - imperative-edsl-vhdl
+ - importify
+ - imprevu-happstack
+ - improve
+ - INblobs
+ - inch
+ - incremental-computing
+ - incremental-maps
+ - increments
+ - indentation
+ - indentation-parsec
+ - indentation-trifecta
+ - indexation
+ - IndexedList
+ - indieweb-algorithms
+ - infernu
+ - InfixApplicative
+ - inline-java
+ - inspector-wrecker
+ - instant-aeson
+ - instant-bytes
+ - instant-deepseq
+ - instant-hashable
+ - instant-zipper
+ - instapaper-sender
+ - interpolatedstring-qq
+ - interpolatedstring-qq-mwotton
+ - introduction-test
+ - intset
+ - invertible-hlist
+ - ion
+ - IORefCAS
+ - ip
+ - ipatch
+ - ipc
+ - ipld-cid
+ - ipprint
+ - iptadmin
+ - irc-fun-bot
+ - irc-fun-client
+ - irc-fun-color
+ - irc-fun-messages
+ - iri
+ - ironforge
+ - isevaluated
+ - ismtp
+ - isobmff-builder
+ - isohunt
+ - iteratee-compress
+ - iteratee-mtl
+ - iteratee-parsec
+ - iteratee-stm
+ - iterio-server
+ - iter-stats
+ - ivor
+ - ivory-avr-atmega328p-registers
+ - ivory-backend-c
+ - ivory-bitdata
+ - ivory-eval
+ - ivory-examples
+ - ivory-hw
+ - ivory-opts
+ - ivory-quickcheck
+ - ivory-serialize
+ - ivory-stdlib
+ - ivy-web
+ - iyql
+ - j2hs
+ - jail
+ - java-bridge-extras
+ - java-character
+ - javaclass
+ - java-reflect
+ - javasf
+ - Javasf
+ - jmacro
+ - jmacro-rpc
+ - jmacro-rpc-happstack
+ - jmacro-rpc-snap
+ - jmonkey
+ - jobs-ui
+ - join
+ - jot
+ - JsContracts
+ - jsmw
+ - json2-hdbc
+ - json-ast-json-encoder
+ - json-autotype
+ - json-b
+ - JSONb
+ - JSON-Combinator
+ - JSON-Combinator-Examples
+ - json-enumerator
+ - JsonGrammar
+ - jsonifier
+ - json-incremental-decoder
+ - json-query
+ - jsons-to-schema
+ - json-syntax
+ - json-togo
+ - json-tokens
+ - jspath
+ - JunkDB-driver-gdbm
+ - JunkDB-driver-hashtables
+ - JuPyTer-notebook
+ - jvm
+ - jvm-batching
+ - jvm-streaming
+ - kafka-device
+ - kafka-device-glut
+ - kafka-device-joystick
+ - kafka-device-leap
+ - kafka-device-spacenav
+ - kafka-device-vrpn
+ - kaleidoscope
+ - kansas-lava
+ - kansas-lava-cores
+ - kansas-lava-papilio
+ - kansas-lava-shake
+ - karakuri
+ - katip-elasticsearch
+ - katip-rollbar
+ - keera-hails-i18n
+ - keera-hails-mvc-environment-gtk
+ - keera-hails-mvc-model-lightmodel
+ - keera-hails-mvc-model-protectedmodel
+ - keera-hails-mvc-solutions-gtk
+ - keera-hails-reactive-cbmvar
+ - keera-hails-reactive-fs
+ - keera-hails-reactive-gtk
+ - keera-hails-reactive-htmldom
+ - keera-hails-reactivelenses
+ - keera-hails-reactive-network
+ - keera-hails-reactive-polling
+ - keera-hails-reactive-wx
+ - keera-hails-reactive-yampa
+ - keera-posture
+ - kevin
+ - keysafe
+ - keyvaluehash
+ - keyword-args
+ - kicad-data
+ - KiCS
+ - KiCS-debugger
+ - KiCS-prophecy
+ - kif-parser
+ - kit
+ - kleene
+ - kmeans-par
+ - kmeans-vector
+ - knead
+ - knead-arithmetic
+ - knit-haskell
+ - knots
+ - korfu
+ - ks-test
+ - kubernetes-client
+ - kurita
+ - laborantin-hs
+ - labsat
+ - labyrinth
+ - labyrinth-server
+ - laika
+ - lambdabot-zulip
+ - lambda-calculator
+ - lambdacms-media
+ - lambdacube
+ - lambdacube-bullet
+ - lambdacube-compiler
+ - lambdacube-core
+ - lambdacube-edsl
+ - lambdacube-engine
+ - lambdacube-examples
+ - lambdacube-gl
+ - lambdacube-samples
+ - LambdaDesigner
+ - lambda-devs
+ - lambdaFeed
+ - LambdaINet
+ - lambdaLit
+ - lambda-options
+ - LambdaPrettyQuote
+ - LambdaShell
+ - lambdaya-bus
+ - lambdiff
+ - lang
+ - language-boogie
+ - language-eiffel
+ - language-kort
+ - language-Modula2
+ - language-ninja
+ - language-oberon
+ - language-python-colour
+ - language-qux
+ - language-spelling
+ - lapack
+ - lapack-carray
+ - lapack-comfort-array
+ - lat
+ - latex-formulae-hakyll
+ - latex-formulae-pandoc
+ - latex-svg-hakyll
+ - latex-svg-pandoc
+ - layered-state
+ - layers-game
+ - layouting
+ - lazy-hash
+ - lazy-hash-cache
+ - ldapply
+ - LDAPv3
+ - leaky
+ - lean
+ - legion
+ - legion-discovery
+ - legion-discovery-client
+ - legion-extra
+ - leksah
+ - leksah-server
+ - lens-utils
+ - levmar
+ - levmar-chart
+ - lex-applicative
+ - lgtk
+ - lha
+ - lhae
+ - lhe
+ - libconfig
+ - libcspm
+ - liblastfm
+ - liblawless
+ - liblinear-enumerator
+ - libmolude
+ - libraft
+ - librato
+ - libssh2-conduit
+ - libxml-enumerator
+ - lifetimes
+ - lifted-base-tf
+ - lightning-haskell
+ - lightstep-haskell
+ - lighttpd-conf
+ - lighttpd-conf-qq
+ - linear-circuit
+ - linearmap-category
+ - linearscan-hoopl
+ - LinearSplit
+ - LinkChecker
+ - linkchk
+ - linkcore
+ - linux-ptrace
+ - lio-eci11
+ - lion
+ - liquid-base
+ - liquid-bytestring
+ - liquid-containers
+ - liquid-ghc-prim
+ - liquidhaskell-cabal-demo
+ - liquid-parallel
+ - liquid-platform
+ - liquid-prelude
+ - liquid-vector
+ - listenbrainz-client
+ - list-t-attoparsec
+ - list-t-html-parser
+ - list-witnesses
+ - live-sequencer
+ - llvm
+ - llvm-analysis
+ - llvm-base-types
+ - llvm-base-util
+ - llvm-data-interop
+ - llvm-dsl
+ - llvm-extension
+ - llvm-extra
+ - llvm-general
+ - llvm-general-quote
+ - llvm-pretty-bc-parser
+ - llvm-tf
+ - llvm-tools
+ - lmonad-yesod
+ - localize
+ - local-search
+ - locked-poll
+ - log
+ - logging-effect-extra
+ - logic-classes
+ - LogicGrowsOnTrees
+ - LogicGrowsOnTrees-MPI
+ - LogicGrowsOnTrees-network
+ - LogicGrowsOnTrees-processes
+ - log-postgres
+ - log-utils
+ - lojban
+ - lojysamban
+ - lol-apps
+ - lol-benches
+ - lol-cpp
+ - loli
+ - lol-repa
+ - lol-tests
+ - lol-typing
+ - longshot
+ - loop-effin
+ - lorentz
+ - lostcities
+ - loup
+ - LslPlus
+ - ls-usb
+ - lsystem
+ - lti13
+ - luachunk
+ - lucid-colonnade
+ - lucienne
+ - Lucu
+ - luhn
+ - lui
+ - luminance-samples
+ - lvish
+ - Lykah
+ - lz4-conduit
+ - lzma-enumerator
+ - macbeth-lib
+ - machines-amazonka
+ - macosx-make-standalone
+ - magicbane
+ - magico
+ - magic-wormhole
+ - mahoro
+ - maid
+ - mailgun
+ - mail-pool
+ - majordomo
+ - majority
+ - manatee
+ - manatee-anything
+ - manatee-core
+ - manatee-curl
+ - manatee-editor
+ - manatee-filemanager
+ - manatee-imageviewer
+ - manatee-ircclient
+ - manatee-mplayer
+ - manatee-pdfviewer
+ - manatee-processmanager
+ - manatee-template
+ - manatee-terminal
+ - manatee-welcome
+ - manifold-random
+ - manifolds
+ - marionetta
+ - markdown2svg
+ - markdown-pap
+ - markov-processes
+ - markup
+ - marmalade-upload
+ - marquise
+ - marvin
+ - masakazu-bot
+ - matchers
+ - mathblog
+ - mathlink
+ - math-programming-glpk
+ - math-programming-tests
+ - matsuri
+ - maxent
+ - maxent-learner-hw-gui
+ - maxsharing
+ - MaybeT-transformers
+ - MC-Fold-DP
+ - mcmc
+ - mcmc-samplers
+ - mDNSResponder-client
+ - mealy
+ - mediabus-fdk-aac
+ - mediabus-rtp
+ - mellon-gpio
+ - mellon-web
+ - memcache-conduit
+ - mergeful-persistent
+ - mergeless-persistent
+ - merkle-patricia-db
+ - MetaObject
+ - meta-par-accelerate
+ - metaplug
+ - metar
+ - metar-http
+ - Metrics
+ - metronome
+ - MFlow
+ - Mhailist
+ - Michelangelo
+ - microformats2-parser
+ - microformats2-types
+ - micro-gateway
+ - MicrosoftTranslator
+ - midimory
+ - mighttpd
+ - minecraft-data
+ - minesweeper
+ - mini-egison
+ - miniforth
+ - minilight-lua
+ - minimung
+ - minioperational
+ - MIP-glpk
+ - miss
+ - MissingPy
+ - missing-py2
+ - miss-porcelain
+ - mixed-strategies
+ - mkbndl
+ - mkcabal
+ - mlist
+ - mmark-cli
+ - mmark-ext
+ - mmtl-base
+ - moan
+ - modify-fasta
+ - modsplit
+ - modularity
+ - modular-prelude-classy
+ - modulo
+ - mole
+ - MonadCatchIO-mtl
+ - MonadCatchIO-mtl-foreign
+ - MonadCatchIO-transformers-foreign
+ - monad-exception
+ - monadiccp-gecode
+ - MonadLab
+ - monad-state
+ - monad-stlike-stm
+ - monarch
+ - Monaris
+ - Monatron-IO
+ - monetdb-mapi
+ - mongrel2-handler
+ - monky
+ - Monocle
+ - monte-carlo
+ - moo
+ - moo-nad
+ - morley
+ - morloc
+ - morphisms-functors-inventory
+ - mosaico-lib
+ - motor-diagrams
+ - mp
+ - mp3decoder
+ - mpdmate
+ - mprelude
+ - mpretty
+ - mprover
+ - mps
+ - mptcp-pm
+ - msgpack-aeson
+ - msgpack-idl
+ - msgpack-rpc
+ - msgpack-rpc-conduit
+ - MSQueue
+ - mtgoxapi
+ - MuCheck-Hspec
+ - MuCheck-HUnit
+ - MuCheck-QuickCheck
+ - MuCheck-SmallCheck
+ - mu-grpc-client
+ - mu-grpc-server
+ - multibase
+ - multi-cabal
+ - multifocal
+ - multihash-serialise
+ - multilinear-io
+ - multiplicity
+ - multirec-alt-deriver
+ - multirec-binary
+ - multisetrewrite
+ - murder
+ - murmurhash3
+ - musicbrainz-email
+ - music-graphics
+ - music-parts
+ - music-pitch
+ - music-preludes
+ - music-score
+ - music-sibelius
+ - music-suite
+ - musicxml2
+ - mutable-iter
+ - MutationOrder
+ - mute-unmute
+ - mu-tracing
+ - mvclient
+ - mvc-updates
+ - mxnet-dataiter
+ - mxnet-examples
+ - mxnet-nn
+ - mysnapsession-example
+ - mysql-haskell-openssl
+ - mysql-simple-typed
+ - myTestlll
+ - mywatch
+ - n2o-web
+ - nakadi-client
+ - nanovg-simple
+ - NaperianNetCDF
+ - nats-queue
+ - natural-number
+ - NearContextAlgebra
+ - nemesis-titan
+ - nerf
+ - nero-wai
+ - nero-warp
+ - nested-routes
+ - netcore
+ - netlines
+ - net-spider-cli
+ - net-spider-pangraph
+ - net-spider-rpl
+ - net-spider-rpl-cli
+ - netstring-enumerator
+ - nettle-frp
+ - nettle-netkit
+ - nettle-openflow
+ - network-anonymous-i2p
+ - network-anonymous-tor
+ - network-connection
+ - network-enumerator
+ - network-hans
+ - network-interfacerequest
+ - network-messagepack-rpc-websocket
+ - network-minihttp
+ - network-netpacket
+ - network-pgi
+ - network-protocol-xmpp
+ - network-rpca
+ - network-stream
+ - network-topic-models
+ - network-websocket
+ - newsletter-mailgun
+ - newsynth
+ - ngrams-loader
+ - ngx-export-tools-extra
+ - nikepub
+ - Ninjas
+ - nirum
+ - nlp-scores-scripts
+ - Nomyx
+ - nomyx-api
+ - nomyx-core
+ - Nomyx-Core
+ - nomyx-language
+ - Nomyx-Language
+ - nomyx-library
+ - Nomyx-Rules
+ - nomyx-server
+ - Nomyx-Web
+ - NonEmptyList
+ - NoSlow
+ - notmuch-haskell
+ - notmuch-web
+ - nri-prelude_0_6_0_1
+ - numerical
+ - numeric-ode
+ - numhask-hedgehog
+ - numhask-histogram
+ - numhask-range
+ - numhask-test
+ - Nussinov78
+ - NXT
+ - nymphaea
+ - obd
+ - obdd
+ - oberon0
+ - obj
+ - objectid
+ - ochan
+ - octane
+ - octohat
+ - octopus
+ - oculus
+ - odd-jobs
+ - off-simple
+ - ohloh-hs
+ - ois-input-manager
+ - olwrapper
+ - one-liner_2_0
+ - online
+ - online-csv
+ - OnRmt
+ - open-adt-tutorial
+ - OpenAFP-Utils
+ - OpenGLCheck
+ - openpgp-crypto-api
+ - OpenSCAD
+ - openssh-github-keys
+ - opentracing-jaeger
+ - opentracing-zipkin-v1
+ - open-union
+ - OpenVG
+ - optima-for-hasql
+ - optimal-blocks
+ - optimusprime
+ - orchid
+ - orchid-demo
+ - order-maintenance
+ - org-mode-lucid
+ - OSM
+ - osm-download
+ - otp-authenticator
+ - padKONTROL
+ - PageIO
+ - pairing
+ - panda
+ - pandoc-japanese-filters
+ - pan-os-syslog
+ - papa
+ - papa-base
+ - papa-base-implement
+ - papa-export
+ - papa-implement
+ - papa-semigroupoids
+ - paprika
+ - Paraiso
+ - Parallel-Arrows-Eden
+ - parco-attoparsec
+ - parconc-examples
+ - parco-parsec
+ - parquet-hs
+ - parse-help
+ - parsestar
+ - partial-lens
+ - passman-cli
+ - patch-image
+ - patterns
+ - pcap-enumerator
+ - pcapng
+ - pcf
+ - pcf-font-embed
+ - PCLT-DB
+ - pdf-slave
+ - peakachu
+ - pec
+ - pell
+ - penny
+ - penny-bin
+ - penny-lib
+ - penrose
+ - peparser
+ - perdure
+ - perf-analysis
+ - perfecthash
+ - periodic-client
+ - periodic-client-exe
+ - periodic-server
+ - perm
+ - PermuteEffects
+ - persistent-audit
+ - persistent-hssqlppp
+ - persistent-map
+ - persona-idp
+ - peyotls
+ - peyotls-codec
+ - pgsql-simple
+ - pg-transact
+ - phonetic-languages-examples
+ - phonetic-languages-simplified-lists-examples
+ - phooey
+ - photoname
+ - pianola
+ - pier
+ - ping
+ - pinpon
+ - pipe-enumerator
+ - pipes-attoparsec-streaming
+ - pipes-brotli
+ - pipes-cacophony
+ - pipes-cereal-plus
+ - pipes-conduit
+ - pipes-courier
+ - pipes-extra
+ - pipes-files
+ - pipes-illumina
+ - pipes-key-value-csv
+ - pipes-p2p
+ - pipes-p2p-examples
+ - pisigma
+ - pitchtrack
+ - pkgtreediff
+ - planet-mitchell
+ - plocketed
+ - ploterific
+ - Plot-ho-matic
+ - PlslTools
+ - png-file
+ - pngload
+ - pocket-dns
+ - pointless-lenses
+ - pointless-rewrite
+ - point-octree
+ - poke
+ - polh-lexicon
+ - polydata
+ - polysemy-extra
+ - polysemy-fskvstore
+ - polysemy-kvstore-jsonfile
+ - polysemy-log-co
+ - polysemy-methodology
+ - polysemy-methodology-composite
+ - polysemy-optics
+ - polysemy-path
+ - polysemy-RandomFu
+ - polysemy-vinyl
+ - polyseq
+ - polytypeable-utils
+ - pomodoro
+ - pontarius-mediaserver
+ - popenhs
+ - porcupine-core
+ - porcupine-http
+ - porcupine-s3
+ - ports
+ - poseidon
+ - poseidon-postgis
+ - postgresql-query
+ - postgresql-simple-queue
+ - postgresql-simple-typed
+ - postgresql-tx-query
+ - postgresql-tx-squeal
+ - postgresql-tx-squeal-compat-simple
+ - postmark
+ - potoki
+ - potoki-cereal
+ - potoki-conduit
+ - potoki-hasql
+ - potoki-zlib
+ - powerqueue-sqs
+ - pqueue-mtl
+ - practice-room
+ - prednote-test
+ - pred-set
+ - pred-trie
+ - presto-hdbc
+ - preview
+ - primula-board
+ - primula-bot
+ - Printf-TH
+ - ProbabilityMonads
+ - proc
+ - process-iterio
+ - process-progress
+ - process-qq
+ - process-streaming
+ - procrastinating-structure
+ - producer
+ - prof2dot
+ - progressbar
+ - project-m36
+ - prologue
+ - prolude
+ - prometheus-effect
+ - propane
+ - proplang
+ - prosidyc
+ - proteome
+ - proto3-suite
+ - protobuf-native
+ - protocol-buffers-descriptor-fork
+ - proto-lens-descriptors
+ - proton
+ - psc-ide
+ - puffytools
+ - Pugs
+ - pugs-compat
+ - pugs-hsregex
+ - punkt
+ - Pup-Events
+ - Pup-Events-Demo
+ - puppetresources
+ - pure-cdb
+ - pure-priority-queue-tests
+ - purescript
+ - purescript-iso
+ - purescript-tsd-gen
+ - push-notify
+ - push-notify-apn
+ - push-notify-ccs
+ - push-notify-general
+ - puzzle-draw-cmdline
+ - pvd
+ - qd-vec
+ - qhs
+ - qr-repa
+ - quantum-random
+ - Quelea
+ - queryparser
+ - queryparser-demo
+ - queryparser-hive
+ - queryparser-presto
+ - queryparser-vertica
+ - questioner
+ - queuelike
+ - quickbench
+ - quickcheck-combinators
+ - quickcheck-poly
+ - quickcheck-regex
+ - quickcheck-relaxng
+ - quickcheck-state-machine
+ - quickcheck-state-machine-distributed
+ - quicktest
+ - quipper
+ - quipper-algorithms
+ - quipper-all
+ - quipper-cabal
+ - quipper-demos
+ - quipper-language
+ - quipper-libraries
+ - quipper-rendering
+ - quipper-tools
+ - quiver-binary
+ - quiver-bytestring
+ - quiver-cell
+ - quiver-csv
+ - quiver-enumerator
+ - quiver-groups
+ - quiver-http
+ - quiver-instances
+ - quiver-interleave
+ - quiver-sort
+ - qux
+ - rail-compiler-editor
+ - rails-session
+ - rainbow-tests
+ - raketka
+ - rallod
+ - random-effin
+ - random-hypergeometric
+ - range-space
+ - Ranka
+ - rasa
+ - rasa-example-config
+ - rasa-ext-bufs
+ - rasa-ext-cmd
+ - rasa-ext-cursors
+ - rasa-ext-files
+ - rasa-ext-logger
+ - rasa-ext-slate
+ - rasa-ext-status-bar
+ - rasa-ext-style
+ - rasa-ext-views
+ - rasa-ext-vim
+ - rating-chgk-info
+ - raw-feldspar
+ - rawr
+ - razom-text-util
+ - rbr
+ - rc
+ - rdioh
+ - react-flux-servant
+ - reactive
+ - reactive-banana-sdl
+ - reactive-banana-wx
+ - reactive-fieldtrip
+ - reactive-glut
+ - reactor
+ - readline-statevar
+ - readpyc
+ - reanimate
+ - record-aeson
+ - record-gl
+ - record-preprocessor
+ - records-th
+ - record-syntax
+ - reddit
+ - redHandlers
+ - reduce-equations
+ - refh
+ - reflex-animation
+ - reflex-backend-socket
+ - reflex-backend-wai
+ - reflex-dom-colonnade
+ - reflex-ghci
+ - reflex-gloss-scene
+ - reflex-process
+ - refurb
+ - reg-alloc-graph-color
+ - regex-deriv
+ - regex-genex
+ - regex-pcre-text
+ - regex-pderiv
+ - regexp-tries
+ - regex-xmlschema
+ - regional-pointers
+ - regions-monadsfd
+ - regions-monadstf
+ - regions-mtl
+ - registry-hedgehog
+ - regular-extras
+ - regular-web
+ - regular-xmlpickler
+ - reheat
+ - relative-date
+ - remote-json
+ - remote-json-client
+ - remote-json-server
+ - remotion
+ - repa-array
+ - repa-convert
+ - repa-examples
+ - repa-flow
+ - repa-plugin
+ - repa-stream
+ - repa-v4l2
+ - replicant
+ - repr
+ - representable-tries
+ - req-oauth2
+ - resistor-cube
+ - resource-pool-catchio
+ - resource-simple
+ - respond
+ - rest-client
+ - rest-core
+ - rest-example
+ - restful-snap
+ - rest-gen
+ - rest-happstack
+ - RESTng
+ - restricted-workers
+ - rest-snap
+ - rest-stringmap
+ - rest-types
+ - rest-wai
+ - rethinkdb-model
+ - rewrite
+ - rewriting
+ - rezoom
+ - rfc
+ - rfc-env
+ - rfc-http-client
+ - rfc-psql
+ - rfc-redis
+ - rfc-servant
+ - rhythm-game-tutorial
+ - rib
+ - ribosome-root
+ - ribosome-test
+ - ridley-extras
+ - rio-process-pool
+ - riot
+ - ripple
+ - risc-v
+ - rivet
+ - Rlang-QQ
+ - rlwe-challenges
+ - rmonad
+ - RMP
+ - RNAdesign
+ - RNAdraw
+ - RNAFold
+ - RNAFoldProgs
+ - RNAlien
+ - RNAwolf
+ - rncryptor
+ - rob
+ - robot
+ - roc-cluster-demo
+ - rock
+ - roguestar-engine
+ - roguestar-gl
+ - roguestar-glut
+ - rollbar-cli
+ - rollbar-wai
+ - rollbar-yesod
+ - RollingDirectory
+ - ron-schema
+ - ron-storage
+ - rose-trie
+ - roshask
+ - rosmsg-bin
+ - rounded-hw
+ - roundtrip-xml
+ - route-generator
+ - route-planning
+ - rpc
+ - rpf
+ - rsagl
+ - rsagl-frp
+ - rsagl-math
+ - rtcm
+ - ruler
+ - ruler-core
+ - runtime-arbitrary
+ - S3
+ - safe-coloured-text-layout-gen
+ - safe-numeric
+ - safer-file-handles
+ - safer-file-handles-bytestring
+ - safer-file-handles-text
+ - sai-shape-syb
+ - sak
+ - saltine-quickcheck
+ - salvia
+ - salvia-demo
+ - salvia-extras
+ - salvia-sessions
+ - salvia-websocket
+ - samtools
+ - samtools-conduit
+ - samtools-enumerator
+ - samtools-iteratee
+ - sarsi
+ - sasl
+ - satchmo-backends
+ - satchmo-examples
+ - satchmo-funsat
+ - satchmo-minisat
+ - satchmo-toysat
+ - sat-micro-hs
+ - SBench
+ - sc2hs
+ - sc2-lowlevel
+ - sc2-support
+ - sc3-rdu
+ - scalable-server
+ - SCalendar
+ - scalpel-search
+ - scalp-webhooks
+ - scan-vector-machine
+ - schema
+ - schematic
+ - scholdoc
+ - scholdoc-citeproc
+ - scholdoc-texmath
+ - scientific-notation
+ - SciFlow
+ - SciFlow-drmaa
+ - scion
+ - scion-browser
+ - scope
+ - scope-cairo
+ - scotty-hastache
+ - scp-streams
+ - scrabble-bot
+ - scrapbook
+ - SCRIPTWriter
+ - Scurry
+ - sde-solver
+ - seakale-postgresql
+ - seakale-tests
+ - secrm
+ - sednaDBXML
+ - seitz-symbol
+ - SelectSequencesFromMSA
+ - selenium-server
+ - self-extract
+ - semi-iso
+ - semiring
+ - semiring-num
+ - sensenet
+ - sentence-jp
+ - seonbi
+ - seqaid
+ - seqloc
+ - seqloc-datafiles
+ - sequor
+ - serpentine
+ - serv
+ - servant-auth-token
+ - servant-auth-token-acid
+ - servant-auth-token-leveldb
+ - servant-auth-token-persistent
+ - servant-auth-token-rocksdb
+ - servant-auth-wordpress
+ - servant-cli
+ - servant-client-namedargs
+ - servant-csharp
+ - servant-db-postgresql
+ - servant-ede
+ - servant-event-stream
+ - servant-examples
+ - servant-http2-client
+ - servant-matrix-param
+ - servant-polysemy
+ - servant-postgresql
+ - servant-server-namedargs
+ - servant-snap
+ - servant-streaming-client
+ - servant-streaming-docs
+ - servant-streaming-server
+ - servant-swagger-tags
+ - servant-waargonaut
+ - servant-zeppelin-client
+ - servant-zeppelin-server
+ - servant-zeppelin-swagger
+ - serv-wai
+ - sessiontypes-distributed
+ - setdown
+ - s-expression
+ - SFML-control
+ - SFont
+ - SGdemo
+ - sgf
+ - sgrep
+ - sha1
+ - shake-minify-css
+ - shaker
+ - shapefile
+ - shapely-data
+ - shelduck
+ - Shellac-compatline
+ - Shellac-editline
+ - Shellac-haskeline
+ - Shellac-readline
+ - shellmate-extras
+ - shine-varying
+ - ShortestPathProblems
+ - showdown
+ - Shpadoinkle-backend-pardiff
+ - Shpadoinkle-backend-static
+ - Shpadoinkle-developer-tools
+ - Shpadoinkle-disembodied
+ - Shpadoinkle-examples
+ - Shpadoinkle-html
+ - Shpadoinkle-router
+ - Shpadoinkle-template
+ - Shpadoinkle-widgets
+ - shpider
+ - shuffle
+ - sibe
+ - si-clock
+ - sigma-ij
+ - signable
+ - signals
+ - signature
+ - signify-hs
+ - silvi
+ - simgi
+ - simple-c-value
+ - simple-firewire
+ - SimpleGL
+ - simpleirc-lens
+ - SimpleLog
+ - simple-nix
+ - simple-pascal
+ - SimpleServer
+ - simseq
+ - singleton-nats_0_4_6
+ - singletons-base
+ - siphon
+ - siren-json
+ - sirkel
+ - skeleton
+ - skeletons
+ - skylark-client
+ - slidemews
+ - slip32
+ - small-bytearray-builder
+ - smallstring
+ - smartword
+ - smcdel
+ - smith
+ - smith-cli
+ - smith-client
+ - Smooth
+ - smtlib2-debug
+ - smtlib2-pipe
+ - smtlib2-quickcheck
+ - smtlib2-timing
+ - smtp2mta
+ - snap-auth-cli
+ - snap-elm
+ - snap-extras
+ - snaplet-actionlog
+ - snaplet-auth-acid
+ - snaplet-coffee
+ - snaplet-hasql
+ - snaplet-haxl
+ - snaplet-hdbc
+ - snaplet-lss
+ - snaplet-mandrill
+ - snaplet-mongoDB
+ - snaplet-mysql-simple
+ - snaplet-oauth
+ - snaplet-postmark
+ - snaplet-recaptcha
+ - snaplet-redson
+ - snaplet-rest
+ - snaplet-riak
+ - snaplet-sedna
+ - snaplet-sqlite-simple-jwt-auth
+ - snaplet-stripe
+ - snaplet-tasks
+ - snaplet-wordpress
+ - snappy-iteratee
+ - snap-utils
+ - sndfile-enumerators
+ - sneathlane-haste
+ - snm
+ - snmp
+ - snowflake-core
+ - snowflake-server
+ - snow-white
+ - Snusmumrik
+ - SoccerFun
+ - SoccerFunGL
+ - sock2stream
+ - sockets
+ - solga-swagger
+ - solr
+ - souffle-dsl
+ - sounddelay
+ - soundgen
+ - source-code-server
+ - SourceGraph
+ - sparkle
+ - sparrow
+ - sparsebit
+ - sparser
+ - spata
+ - specialize-th
+ - species
+ - spectral-clustering
+ - speculation-transformers
+ - speechmatics
+ - spelling-suggest
+ - sphero
+ - sphinx-cli
+ - spice
+ - SpinCounter
+ - spline3
+ - splines
+ - Spock-auth
+ - Spock-lucid
+ - Spock-worker
+ - sprinkles
+ - sproxy
+ - sproxy2
+ - sproxy-web
+ - sqlite-simple-typed
+ - sql-simple-mysql
+ - sql-simple-pool
+ - sql-simple-postgresql
+ - sql-simple-sqlite
+ - sr-extra
+ - sscgi
+ - sshd-lint
+ - sssp
+ - sstable
+ - stable-tree
+ - stackage
+ - stackage2nix
+ - stackage-build-plan
+ - stackage-cabal
+ - stackage-query
+ - stackage-sandbox
+ - stackage-setup
+ - stackage-upload
+ - stack-hpc-coveralls
+ - stack-network
+ - stack-run-auto
+ - starrover2
+ - stateful-mtl
+ - static-closure
+ - statsd-client
+ - statsdi
+ - STLinkUSB
+ - STM32-Zombie
+ - stmcontrol
+ - StockholmAlignment
+ - storablevector-streamfusion
+ - Strafunski-Sdf2Haskell
+ - stratux
+ - stratux-demo
+ - stratux-http
+ - stratux-websockets
+ - streaming-base64
+ - streaming-brotli
+ - streaming-concurrency
+ - streaming-fft
+ - streaming-process
+ - streaming-sort
+ - strelka
+ - strict-data
+ - string-typelits
+ - stripe-haskell
+ - stripe-http-client
+ - stripe-scotty
+ - structural-induction
+ - structured-mongoDB
+ - stunts
+ - stutter
+ - subhask
+ - substring-parser
+ - summoner-tui
+ - sump
+ - sunroof-examples
+ - sunroof-server
+ - supercollider-ht
+ - supercollider-midi
+ - superconstraints
+ - sv
+ - sv-cassava
+ - svg2q
+ - SVG2Q
+ - svgone
+ - sv-svfactor
+ - swapper
+ - swearjure
+ - sweet-egison
+ - switch
+ - sylvia
+ - symantic-atom
+ - symantic-lib
+ - symbiote
+ - symmetry-operations-symbols
+ - sym-plot
+ - syncthing-hs
+ - syntax
+ - syntax-attoparsec
+ - syntax-example
+ - syntax-example-json
+ - SyntaxMacros
+ - syntaxnet-haskell
+ - syntax-pretty
+ - syntax-printer
+ - synthesizer-llvm
+ - systemstats
+ - t3-client
+ - ta
+ - tagged-list
+ - tagged-th
+ - tagsoup-navigate
+ - tagstew
+ - tag-stream
+ - tal
+ - tamarin-prover
+ - tamarin-prover-term
+ - tamarin-prover-theory
+ - target
+ - task
+ - task-distribution
+ - tasty-bdd
+ - tasty-groundhog-converters
+ - tasty-integrate
+ - tasty-jenkins-xml
+ - tasty-laws
+ - tasty-lens
+ - tateti-tateti
+ - Taxonomy
+ - TaxonomyTools
+ - tbox
+ - tccli
+ - tdd-util
+ - tdlib
+ - tdlib-gen
+ - tdlib-types
+ - TeaHS
+ - techlab
+ - telegram-bot
+ - telegram-raw-api
+ - telegram-types
+ - tensorflow-core-ops
+ - tensorflow-logging
+ - tensorflow-ops
+ - terminal-text
+ - terrahs
+ - testbench
+ - test-framework-sandbox
+ - test-sandbox-compose
+ - test-sandbox-hunit
+ - test-sandbox-quickcheck
+ - test-simple
+ - TeX-my-math
+ - textmatetags
+ - text-plus
+ - text-trie
+ - text-xml-generic
+ - th-alpha
+ - th-context
+ - theatre
+ - theoremquest-client
+ - thimk
+ - th-instances
+ - th-typegraph
+ - thumbnail-polish
+ - tickle
+ - tic-tac-toe
+ - tidal-serial
+ - tighttp
+ - timberc
+ - time-exts
+ - time-http
+ - time-io-access
+ - timeprint
+ - time-warp
+ - timezone-unix
+ - tinyMesh
+ - tip-haskell-frontend
+ - tip-lib
+ - titan
+ - tls-extra
+ - tn
+ - toboggan
+ - todos
+ - toktok
+ - too-many-cells
+ - top
+ - topkata
+ - to-string-instances
+ - total-map
+ - toxcore
+ - toxcore-c
+ - toysolver
+ - tpar
+ - tpb
+ - trajectory
+ - transf
+ - transfer-db
+ - transformations
+ - transformers-convert
+ - transient-universe-tls
+ - trasa
+ - trasa-client
+ - trasa-extra
+ - trasa-form
+ - trasa-reflex
+ - trasa-server
+ - trasa-th
+ - TreeCounter
+ - treemap-html-tools
+ - treersec
+ - Treiber
+ - trek-app
+ - trek-db
+ - triangulation
+ - TrieMap
+ - tries
+ - trimpolya
+ - truelevel
+ - trurl
+ - tsession-happstack
+ - tsweb
+ - tuntap-simple
+ - tup-functor
+ - tuple-hlist
+ - tuple-morph
+ - tuple-ops
+ - turingMachine
+ - twentefp-eventloop-graphics
+ - twentefp-eventloop-trees
+ - twentefp-graphs
+ - twentefp-rosetree
+ - twentefp-trees
+ - twentyseven
+ - twidge
+ - twilight-stm
+ - twill
+ - twitter
+ - twitter-enumerator
+ - type-assertions
+ - type-cache
+ - type-cereal
+ - TypeClass
+ - type-combinators-quote
+ - type-combinators-singletons
+ - typed-encoding-encoding
+ - type-digits
+ - typed-spreadsheet
+ - typed-streams
+ - TypeIlluminator
+ - typelevel
+ - typelevel-rewrite-rules
+ - type-ord
+ - type-ord-spine-cereal
+ - typescript-docs
+ - type-sets
+ - type-structure
+ - type-sub-th
+ - typson-beam
+ - typson-esqueleto
+ - typson-selda
+ - u2f
+ - uber
+ - ucam-webauth
+ - uhc-light
+ - uhc-util
+ - UMM
+ - unagi-bloomfilter
+ - unbound
+ - unfoldable-restricted
+ - unicode-normalization
+ - uni-events
+ - uniformBase
+ - uniform-io
+ - uni-graphs
+ - uni-htk
+ - uni-posixutil
+ - uniqueness-periods-vector-examples
+ - uni-reactor
+ - uni-uDrawGraph
+ - universe-th
+ - unix-fcntl
+ - unix-simple
+ - unpacked-maybe-numeric
+ - unpacked-these
+ - unpacked-validation
+ - unparse-attoparsec
+ - unscramble
+ - up
+ - urbit-airlock
+ - urbit-api
+ - urbit-hob
+ - ureader
+ - urembed
+ - uri-enumerator
+ - uri-enumerator-file
+ - url-bytes
+ - UrlDisp
+ - urlpath
+ - URLT
+ - usb
+ - usb-enumerator
+ - usb-hid
+ - usb-id-database
+ - usb-iteratee
+ - usb-safe
+ - util-exception
+ - util-primitive-control
+ - uu-cco-examples
+ - uu-cco-hut-parsing
+ - uu-cco-uu-parsinglib
+ - uuid-bytes
+ - uuid-crypto
+ - uvector-algorithms
+ - v4l2
+ - v4l2-examples
+ - vabal
+ - vacuum-cairo
+ - vacuum-graphviz
+ - vacuum-opengl
+ - vacuum-ubigraph
+ - variable-precision
+ - vcache-trie
+ - vcard
+ - vcsgui
+ - vect-floating-accelerate
+ - vector-endian
+ - vector-instances-collections
+ - vector-text
+ - venzone
+ - verdict-json
+ - versioning-servant
+ - vflow-types
+ - vformat-aeson
+ - vformat-time
+ - vfr-waypoints
+ - ViennaRNA-extras
+ - vigilance
+ - vinyl-operational
+ - vision
+ - visual-graphrewrite
+ - vocoder
+ - vocoder-audio
+ - vocoder-conduit
+ - vocoder-dunai
+ - voicebase
+ - vty-ui-extras
+ - waargonaut
+ - wahsp
+ - wai-cli
+ - wai-devel
+ - wai-dispatch
+ - wai-handler-snap
+ - wai-hastache
+ - wai-middleware-brotli
+ - wai-middleware-cache
+ - wai-middleware-cache-redis
+ - wai-middleware-consul
+ - wai-middleware-content-type
+ - wai-middleware-rollbar
+ - wai-middleware-route
+ - wai-session-tokyocabinet
+ - wai-thrift
+ - waldo
+ - warped
+ - WashNGo
+ - WAVE
+ - WaveFront
+ - wavesurfer
+ - wavy
+ - web3
+ - webapi
+ - WebBits-Html
+ - WebBits-multiplate
+ - WebCont
+ - webcrank-wai
+ - webdriver-w3c
+ - web-mongrel2
+ - web-page
+ - web-rep
+ - web-routes-regular
+ - web-routing
+ - webserver
+ - WEditorBrick
+ - WEditorHyphen
+ - weighted
+ - werewolf-slack
+ - what4
+ - wheb-mongo
+ - wheb-redis
+ - wheb-strapped
+ - whitespace
+ - wide-word-instances
+ - wikipedia4epub
+ - windowslive
+ - winio
+ - WL500gPControl
+ - wlc-hs
+ - wl-pprint-ansiterm
+ - wl-pprint-terminfo
+ - wobsurv
+ - wolf
+ - WordAlignment
+ - workflow-extra
+ - workflow-pure
+ - workflow-types
+ - wraxml
+ - wrecker
+ - wrecker-ui
+ - wright
+ - writer-cps-full
+ - ws
+ - wss-client
+ - wtk-gtk
+ - wumpus-basic
+ - wumpus-drawing
+ - wumpus-microprint
+ - wumpus-tree
+ - WURFL
+ - wu-wei
+ - wx
+ - wxAsteroids
+ - wxc
+ - wxcore
+ - WXDiffCtrl
+ - wxFruit
+ - WxGeneric
+ - wxhnotepad
+ - wxSimpleCanvas
+ - wxturtle
+ - wyvern
+ - xdcc
+ - xhb-atom-cache
+ - xhb-ewmh
+ - XML
+ - xml2x
+ - xml-catalog
+ - xml-enumerator
+ - xml-enumerator-combinators
+ - xml-monad
+ - xml-pipe
+ - xml-push
+ - xml-query-xml-conduit
+ - xml-query-xml-types
+ - xmltv
+ - xml-tydom-conduit
+ - xmms2-client
+ - xmms2-client-glib
+ - xmonad-contrib-bluetilebranch
+ - xmpipe
+ - XMPP
+ - xournal-builder
+ - xournal-convert
+ - xournal-parser
+ - xournal-render
+ - XSaiga
+ - xtc
+ - Yablog
+ - YACPong
+ - yajl-enumerator
+ - yam
+ - yam-datasource
+ - yam-job
+ - yam-logger
+ - yaml-rpc-scotty
+ - yaml-rpc-snap
+ - yaml-unscrambler
+ - yam-redis
+ - yam-transaction
+ - yam-transaction-odbc
+ - yam-transaction-postgresql
+ - yam-web
+ - yarr-image-io
+ - yavie
+ - ycextra
+ - yeamer
+ - yeshql
+ - yesod-articles
+ - yesod-auth-ldap
+ - yesod-auth-lti13
+ - yesod-colonnade
+ - yesod-continuations
+ - yesod-examples
+ - yesod-ip
+ - yesod-mangopay
+ - yesod-paypal-rest
+ - yesod-platform
+ - yesod-purescript
+ - yesod-raml-bin
+ - yesod-raml-docs
+ - yesod-raml-mock
+ - yesod-routes-typescript
+ - yesod-session-redis
+ - yjftp
+ - yjftp-libs
+ - Yogurt
+ - Yogurt-Standalone
+ - yoko
+ - york-lava
+ - yql
+ - yu-launch
+ - yuuko
+ - zasni-gerna
+ - Z-Botan
+ - zephyr
+ - zerobin
+ - zeromq3-conduit
+ - zeromq3-haskell
+ - zeroth
+ - zifter-cabal
+ - zifter-git
+ - zifter-google-java-format
+ - zifter-hindent
+ - zifter-hlint
+ - zifter-stack
+ - Z-IO
+ - zipper
+ - zippo
+ - ziptastic-client
+ - zlib-enum
+ - zmcat
+ - Z-MessagePack
+ - zoom-cache
+ - zoom-cache-pcm
+ - zoom-cache-sndfile
+ - zoovisitor
+ - zuramaru
+ - Z-YAML
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
index ba00d2000737..538d5381a96a 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
@@ -101,17 +101,6 @@ self: super: builtins.intersectAttrs super {
   ormolu = enableSeparateBinOutput super.ormolu;
   ghcid = enableSeparateBinOutput super.ghcid;
 
-  # Ensure the necessary frameworks for Darwin.
-  OpenAL = if pkgs.stdenv.isDarwin
-    then addExtraLibrary super.OpenAL pkgs.darwin.apple_sdk.frameworks.OpenAL
-    else super.OpenAL;
-
-  # Ensure the necessary frameworks for Darwin.
-  proteaaudio = if pkgs.stdenv.isDarwin
-    then addExtraLibrary super.proteaaudio pkgs.darwin.apple_sdk.frameworks.AudioToolbox
-    else super.proteaaudio;
-
-
   hzk = overrideCabal super.hzk (drv: {
     preConfigure = "sed -i -e /include-dirs/d hzk.cabal";
     configureFlags = [ "--extra-include-dirs=${pkgs.zookeeper_mt}/include/zookeeper" ];
@@ -131,39 +120,11 @@ self: super: builtins.intersectAttrs super {
   # Foreign dependency name clashes with another Haskell package.
   libarchive-conduit = super.libarchive-conduit.override { archive = pkgs.libarchive; };
 
-  # Fix Darwin build.
-  halive = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.halive pkgs.darwin.apple_sdk.frameworks.AppKit
-    else super.halive;
-
   # Heist's test suite requires system pandoc
   heist = overrideCabal super.heist (drv: {
     testToolDepends = [pkgs.pandoc];
   });
 
-  # the system-fileio tests use canonicalizePath, which fails in the sandbox
-  system-fileio = if pkgs.stdenv.isDarwin then dontCheck super.system-fileio else super.system-fileio;
-
-  # Prevents needing to add `security_tool` as a run-time dependency for
-  # everything using x509-system to give access to the `security` executable.
-  x509-system =
-    if pkgs.stdenv.hostPlatform.isDarwin && !pkgs.stdenv.cc.nativeLibc
-    then
-      # darwin.security_tool is broken in Mojave (#45042)
-
-      # We will use the system provided security for now.
-      # Beware this WILL break in sandboxes!
-
-      # TODO(matthewbauer): If someone really needs this to work in sandboxes,
-      # I think we can add a propagatedImpureHost dep here, but I’m hoping to
-      # get a proper fix available soonish.
-      overrideCabal super.x509-system (drv: {
-        postPatch = (drv.postPatch or "") + ''
-          substituteInPlace System/X509/MacOS.hs --replace security /usr/bin/security
-        '';
-      })
-    else super.x509-system;
-
   # https://github.com/NixOS/cabal2nix/issues/136 and https://github.com/NixOS/cabal2nix/issues/216
   gio = disableHardening (addPkgconfigDepend (addBuildTool super.gio self.buildHaskellPackages.gtk2hs-buildtools) pkgs.glib) ["fortify"];
   glib = disableHardening (addPkgconfigDepend (addBuildTool super.glib self.buildHaskellPackages.gtk2hs-buildtools) pkgs.glib) ["fortify"];
@@ -235,6 +196,7 @@ self: super: builtins.intersectAttrs super {
   tcp-streams = dontCheck super.tcp-streams;
   holy-project = dontCheck super.holy-project;
   mustache = dontCheck super.mustache;
+  arch-web = dontCheck super.arch-web;
 
   # Tries to mess with extended POSIX attributes, but can't in our chroot environment.
   xattr = dontCheck super.xattr;
@@ -266,12 +228,6 @@ self: super: builtins.intersectAttrs super {
   # /homeless-shelter. Disabled.
   purescript = dontCheck super.purescript;
 
-  # https://github.com/haskell-foundation/foundation/pull/412
-  foundation =
-    if pkgs.stdenv.isDarwin
-    then dontCheck super.foundation
-    else super.foundation;
-
   # Hardcoded include path
   poppler = overrideCabal super.poppler (drv: {
     postPatch = ''
@@ -283,23 +239,8 @@ self: super: builtins.intersectAttrs super {
   # Uses OpenGL in testing
   caramia = dontCheck super.caramia;
 
-  llvm-hs =
-    let llvmHsWithLlvm9 = super.llvm-hs.override { llvm-config = pkgs.llvm_9; };
-    in
-    if pkgs.stdenv.isDarwin
-    then
-      overrideCabal llvmHsWithLlvm9 (oldAttrs: {
-        # One test fails on darwin.
-        doCheck = false;
-        # llvm-hs's Setup.hs file tries to add the lib/ directory from LLVM8 to
-        # the DYLD_LIBRARY_PATH environment variable.  This messes up clang
-        # when called from GHC, probably because clang is version 7, but we are
-        # using LLVM8.
-        preCompileBuildDriver = oldAttrs.preCompileBuildDriver or "" + ''
-          substituteInPlace Setup.hs --replace "addToLdLibraryPath libDir" "pure ()"
-        '';
-      })
-    else llvmHsWithLlvm9;
+  # requires llvm 9 specifically https://github.com/llvm-hs/llvm-hs/#building-from-source
+  llvm-hs = super.llvm-hs.override { llvm-config = pkgs.llvm_9; };
 
   # Needs help finding LLVM.
   spaceprobe = addBuildTool super.spaceprobe self.llvmPackages.llvm;
@@ -307,7 +248,7 @@ self: super: builtins.intersectAttrs super {
   # Tries to run GUI in tests
   leksah = dontCheck (overrideCabal super.leksah (drv: {
     executableSystemDepends = (drv.executableSystemDepends or []) ++ (with pkgs; [
-      gnome3.adwaita-icon-theme # Fix error: Icon 'window-close' not present in theme ...
+      gnome.adwaita-icon-theme # Fix error: Icon 'window-close' not present in theme ...
       wrapGAppsHook           # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
       gtk3                    # Fix error: GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is not installed
     ]);
@@ -319,16 +260,18 @@ self: super: builtins.intersectAttrs super {
     '';
   }));
 
-  # Patch to consider NIX_GHC just like xmonad does
-  dyre = appendPatch super.dyre ./patches/dyre-nix.patch;
-
-  yesod-bin = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.yesod-bin pkgs.darwin.apple_sdk.frameworks.Cocoa
-    else super.yesod-bin;
-
-  hmatrix = if pkgs.stdenv.isDarwin
-    then addBuildDepend super.hmatrix pkgs.darwin.apple_sdk.frameworks.Accelerate
-    else super.hmatrix;
+  dyre =
+    appendPatch
+      # dyre's tests appear to be trying to directly call GHC.
+      (dontCheck super.dyre)
+      # Dyre needs special support for reading the NIX_GHC env var.  This is
+      # available upstream in https://github.com/willdonnelly/dyre/pull/43, but
+      # hasn't been released to Hackage as of dyre-0.9.1.  Likely included in
+      # next version.
+      (pkgs.fetchpatch {
+        url = "https://github.com/willdonnelly/dyre/commit/c7f29d321aae343d6b314f058812dffcba9d7133.patch";
+        sha256 = "10m22k35bi6cci798vjpy4c2l08lq5nmmj24iwp0aflvmjdgscdb";
+      });
 
   # https://github.com/edwinb/EpiVM/issues/13
   # https://github.com/edwinb/EpiVM/issues/14
@@ -405,43 +348,8 @@ self: super: builtins.intersectAttrs super {
   # Looks like Avahi provides the missing library
   dnssd = super.dnssd.override { dns_sd = pkgs.avahi.override { withLibdnssdCompat = true; }; };
 
-  # Ensure the necessary frameworks are propagatedBuildInputs on darwin
-  OpenGLRaw = overrideCabal super.OpenGLRaw (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenGL ];
-    preConfigure = pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
-      frameworkPaths=($(for i in $nativeBuildInputs; do if [ -d "$i"/Library/Frameworks ]; then echo "-F$i/Library/Frameworks"; fi done))
-      frameworkPaths=$(IFS=, ; echo "''${frameworkPaths[@]}")
-      configureFlags+=$(if [ -n "$frameworkPaths" ]; then echo -n "--ghc-options=-optl=$frameworkPaths"; fi)
-    '';
-  });
-  GLURaw = overrideCabal super.GLURaw (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenGL ];
-  });
-  bindings-GLFW = overrideCabal super.bindings-GLFW (drv: {
-    doCheck = false; # requires an active X11 display
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            (with pkgs.darwin.apple_sdk.frameworks;
-                             [ AGL Cocoa OpenGL IOKit Kernel CoreVideo
-                               pkgs.darwin.CF ]);
-  });
-  OpenCL = overrideCabal super.OpenCL (drv: {
-    librarySystemDepends =
-      pkgs.lib.optionals (!pkgs.stdenv.isDarwin) drv.librarySystemDepends;
-    libraryHaskellDepends = drv.libraryHaskellDepends
-      ++ pkgs.lib.optionals pkgs.stdenv.isDarwin
-                            [ pkgs.darwin.apple_sdk.frameworks.OpenCL ];
-  });
+  # requires an X11 display
+  bindings-GLFW = dontCheck super.bindings-GLFW;
 
   # requires an X11 display in test suite
   gi-gtk-declarative = dontCheck super.gi-gtk-declarative;
@@ -474,16 +382,8 @@ self: super: builtins.intersectAttrs super {
     testHaskellDepends = (drv.testHaskellDepends or []) ++ [ self.test-framework self.test-framework-hunit ];
   });
 
-  # cabal2nix likes to generate dependencies on hinotify when hfsevents is really required
-  # on darwin: https://github.com/NixOS/cabal2nix/issues/146.
-  hinotify = if pkgs.stdenv.isDarwin then self.hfsevents else super.hinotify;
-
-  # FSEvents API is very buggy and tests are unreliable. See
-  # http://openradar.appspot.com/10207999 and similar issues.
   # https://github.com/haskell-fswatch/hfsnotify/issues/62
-  fsnotify = if pkgs.stdenv.isDarwin
-    then addBuildDepend (dontCheck super.fsnotify) pkgs.darwin.apple_sdk.frameworks.Cocoa
-    else dontCheck super.fsnotify;
+  fsnotify = dontCheck super.fsnotify;
 
   hidapi = addExtraLibrary super.hidapi pkgs.udev;
 
@@ -596,7 +496,7 @@ self: super: builtins.intersectAttrs super {
 
   # Compile manpages (which are in RST and are compiled with Sphinx).
   futhark = with pkgs;
-    overrideCabal (addBuildTools super.futhark [makeWrapper python37Packages.sphinx])
+    overrideCabal (addBuildTools super.futhark [makeWrapper python3Packages.sphinx])
       (_drv: {
         postBuild = (_drv.postBuild or "") + ''
         make -C docs man
@@ -657,10 +557,6 @@ self: super: builtins.intersectAttrs super {
 
   spago =
     let
-      # spago requires an older version of megaparsec, but it appears to work
-      # fine with newer versions.
-      spagoWithOverrides = doJailbreak super.spago;
-
       docsSearchApp_0_0_10 = pkgs.fetchurl {
         url = "https://github.com/purescript/purescript-docs-search/releases/download/v0.0.10/docs-search-app.js";
         sha256 = "0m5ah29x290r0zk19hx2wix2djy7bs4plh9kvjz6bs9r45x25pa5";
@@ -681,17 +577,8 @@ self: super: builtins.intersectAttrs super {
         sha256 = "1hjdprm990vyxz86fgq14ajn0lkams7i00h8k2i2g1a0hjdwppq6";
       };
 
-      spagoFixHpack = overrideCabal spagoWithOverrides (drv: {
+      spagoDocs = overrideCabal super.spago (drv: {
         postUnpack = (drv.postUnpack or "") + ''
-          # The source for spago is pulled directly from GitHub.  It uses a
-          # package.yaml file with hpack, not a .cabal file.  In the package.yaml file,
-          # it uses defaults from the master branch of the hspec repo.  It will try to
-          # fetch these at build-time (but it will fail if running in the sandbox).
-          #
-          # The following line modifies the package.yaml to not pull in
-          # defaults from the hspec repo.
-          substituteInPlace "$sourceRoot/package.yaml" --replace 'defaults: hspec/hspec@master' ""
-
           # Spago includes the following two files directly into the binary
           # with Template Haskell.  They are fetched at build-time from the
           # `purescript-docs-search` repo above.  If they cannot be fetched at
@@ -717,9 +604,8 @@ self: super: builtins.intersectAttrs super {
         '';
       });
 
-      # Because of the problem above with pulling in hspec defaults to the
-      # package.yaml file, the tests are disabled.
-      spagoWithoutChecks = dontCheck spagoFixHpack;
+      # Tests require network access.
+      spagoWithoutChecks = dontCheck spagoDocs;
     in
     spagoWithoutChecks;
 
@@ -741,7 +627,7 @@ self: super: builtins.intersectAttrs super {
   primitive_0_7_1_0 = dontCheck super.primitive_0_7_1_0;
 
   cut-the-crap =
-    let path = pkgs.lib.makeBinPath [ pkgs.ffmpeg_3 pkgs.youtube-dl ];
+    let path = pkgs.lib.makeBinPath [ pkgs.ffmpeg pkgs.youtube-dl ];
     in overrideCabal (addBuildTool super.cut-the-crap pkgs.makeWrapper) (_drv: {
       postInstall = ''
         wrapProgram $out/bin/cut-the-crap \
@@ -826,4 +712,125 @@ self: super: builtins.intersectAttrs super {
 
   # Tests access internet
   prune-juice = dontCheck super.prune-juice;
+
+  # based on https://github.com/gibiansky/IHaskell/blob/aafeabef786154d81ab7d9d1882bbcd06fc8c6c4/release.nix
+  ihaskell = overrideCabal super.ihaskell (drv: {
+    configureFlags = (drv.configureFlags or []) ++ [
+      # ihaskell's cabal file forces building a shared executable,
+      # but without passing --enable-executable-dynamic, the RPATH
+      # contains /build/ and leads to a build failure with nix
+      "--enable-executable-dynamic"
+    ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+      export PATH=$PWD/dist/build/ihaskell:$PATH
+      export GHC_PACKAGE_PATH=$PWD/dist/package.conf.inplace/:$GHC_PACKAGE_PATH
+    '';
+  });
+
+  # tests need to execute the built executable
+  stutter = overrideCabal super.stutter (drv: {
+    preCheck = ''
+      export PATH=dist/build/stutter:$PATH
+    '' + (drv.preCheck or "");
+  });
+
+  # Install man page and generate shell completions
+  pinboard-notes-backup = overrideCabal
+    (generateOptparseApplicativeCompletion "pnbackup" super.pinboard-notes-backup)
+    (drv: {
+      postInstall = ''
+        install -D man/pnbackup.1 $out/share/man/man1/pnbackup.1
+      '' + (drv.postInstall or "");
+    });
+
+  # set more accurate set of platforms instead of maintaining
+  # an ever growing list of platforms to exclude via unsupported-platforms
+  cpuid = overrideCabal super.cpuid {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # Pass the correct libarchive into the package.
+  streamly-archive = super.streamly-archive.override { archive = pkgs.libarchive; };
+
+  # passes the -msse2 flag which only works on x86 platforms
+  hsignal = overrideCabal super.hsignal {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # uses x86 intrinsics
+  blake3 = overrideCabal super.blake3 {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # uses x86 intrinsics, see also https://github.com/NixOS/nixpkgs/issues/122014
+  crc32c = overrideCabal super.crc32c {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # uses x86 intrinsics
+  seqalign = overrideCabal super.seqalign {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  hls-brittany-plugin = overrideCabal super.hls-brittany-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  hls-class-plugin = overrideCabal super.hls-class-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  # Tests have file permissions expections that don‘t work with the nix store.
+  hls-stylish-haskell-plugin = dontCheck super.hls-stylish-haskell-plugin;
+  hls-haddock-comments-plugin = overrideCabal super.hls-haddock-comments-plugin (drv: {
+    testToolDepends = [ pkgs.git ];
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+  hls-eval-plugin = overrideCabal super.hls-eval-plugin (drv: {
+    preCheck = ''
+      export HOME=$TMPDIR/home
+    '';
+  });
+
+  taglib = overrideCabal super.taglib (drv: {
+    librarySystemDepends = [
+      pkgs.zlib
+    ] ++ (drv.librarySystemDepends or []);
+  });
+
+  # uses x86 assembler
+  inline-asm = overrideCabal super.inline-asm {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # uses x86 assembler in C bits
+  hw-prim-bits = overrideCabal super.hw-prim-bits {
+    platforms = pkgs.lib.platforms.x86;
+  };
+
+  # random 1.2.0 has tests that indirectly depend on
+  # itself causing an infinite recursion at evaluation
+  # time
+  random = dontCheck super.random;
+
+  # Since this package is primarily used by nixpkgs maintainers and is probably
+  # not used to link against by anyone, we can make it’s closure smaller.
+  cabal2nix-unstable = justStaticExecutables super.cabal2nix-unstable;
+
+  # test suite needs local redis daemon
+  nri-redis = dontCheck super.nri-redis;
+
+  # Make tophat find itself for _compiling_ its test suite
+  tophat = overrideCabal super.tophat (drv: {
+    postPatch = ''
+      sed -i 's|"tophat"|"./dist/build/tophat/tophat"|' app-test-bin/*.hs
+    '' + (drv.postPatch or "");
+  });
 }
diff --git a/nixpkgs/pkgs/development/haskell-modules/default.nix b/nixpkgs/pkgs/development/haskell-modules/default.nix
index a4f0399cf3c6..8392e751da2d 100644
--- a/nixpkgs/pkgs/development/haskell-modules/default.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/default.nix
@@ -7,6 +7,8 @@
 , nonHackagePackages ? import ./non-hackage-packages.nix
 , configurationCommon ? import ./configuration-common.nix
 , configurationNix ? import ./configuration-nix.nix
+, configurationArm ? import ./configuration-arm.nix
+, configurationDarwin ? import ./configuration-darwin.nix
 }:
 
 let
@@ -19,17 +21,24 @@ let
     inherit stdenv haskellLib ghc buildHaskellPackages extensible-self all-cabal-hashes;
   };
 
-  commonConfiguration = configurationCommon { inherit pkgs haskellLib; };
-  nixConfiguration = configurationNix { inherit pkgs haskellLib; };
-
-  extensible-self = makeExtensible
-    (extends overrides
-      (extends packageSetConfig
-        (extends compilerConfig
-          (extends commonConfiguration
-            (extends nixConfiguration
-              (extends nonHackagePackages
-                haskellPackages))))));
+  isArm = with stdenv.hostPlatform; isAarch64 || isAarch32;
+  platformConfigurations = lib.optionals isArm [
+    (configurationArm { inherit pkgs haskellLib; })
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    (configurationDarwin { inherit pkgs haskellLib; })
+  ];
+
+  extensions = lib.composeManyExtensions ([
+    nonHackagePackages
+    (configurationNix { inherit pkgs haskellLib; })
+    (configurationCommon { inherit pkgs haskellLib; })
+  ] ++ platformConfigurations ++ [
+    compilerConfig
+    packageSetConfig
+    overrides
+  ]);
+
+  extensible-self = makeExtensible (extends extensions haskellPackages);
 
 in
 
diff --git a/nixpkgs/pkgs/development/haskell-modules/generic-builder.nix b/nixpkgs/pkgs/development/haskell-modules/generic-builder.nix
index faf80da0c7d9..a9c8f11223f7 100644
--- a/nixpkgs/pkgs/development/haskell-modules/generic-builder.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/generic-builder.nix
@@ -72,7 +72,7 @@ in
 , shellHook ? ""
 , coreSetup ? false # Use only core packages to build Setup.hs.
 , useCpphs ? false
-, hardeningDisable ? lib.optional (ghc.isHaLVM or false) "all"
+, hardeningDisable ? null
 , enableSeparateBinOutput ? false
 , enableSeparateDataOutput ? false
 , enableSeparateDocOutput ? doHaddock
@@ -417,6 +417,17 @@ stdenv.mkDerivation ({
   configurePlatforms = [];
   inherit configureFlags;
 
+  # Note: the options here must be always added, regardless of whether the
+  # package specifies `hardeningDisable`.
+  hardeningDisable = lib.optionals (args ? hardeningDisable) hardeningDisable
+    ++ lib.optional (ghc.isHaLVM or false) "all"
+    # Static libraries (ie. all of pkgsStatic.haskellPackages) fail to build
+    # because by default Nix adds `-pie` to the linker flags: this
+    # conflicts with the `-r` and `-no-pie` flags added by GHC (see
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/19580). hardeningDisable
+    # changes the default Nix behavior regarding adding "hardening" flags.
+    ++ lib.optional enableStaticLibraries "pie";
+
   configurePhase = ''
     runHook preConfigure
 
@@ -464,7 +475,12 @@ stdenv.mkDerivation ({
   installPhase = ''
     runHook preInstall
 
-    ${if !isLibrary then "${setupCommand} install" else ''
+    ${if !isLibrary && buildTarget == "" then "${setupCommand} install"
+      # ^^ if the project is not a library, and no build target is specified, we can just use "install".
+      else if !isLibrary then "${setupCommand} copy ${buildTarget}"
+      # ^^ if the project is not a library, and we have a build target, then use "copy" to install
+      # just the target specified; "install" will error here, since not all targets have been built.
+    else ''
       ${setupCommand} copy
       local packageConfDir="$out/lib/${ghc.name}/package.conf.d"
       local packageConfFile="$packageConfDir/${pname}-${version}.conf"
@@ -669,7 +685,6 @@ stdenv.mkDerivation ({
 // optionalAttrs (args ? preFixup)               { inherit preFixup; }
 // optionalAttrs (args ? postFixup)              { inherit postFixup; }
 // optionalAttrs (args ? dontStrip)              { inherit dontStrip; }
-// optionalAttrs (args ? hardeningDisable)       { inherit hardeningDisable; }
 // optionalAttrs (stdenv.buildPlatform.libc == "glibc"){ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive"; }
 )
 )
diff --git a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
index 7869388c5447..2d65d3355cc7 100644
--- a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
@@ -15,6 +15,8 @@ self: {
        executableHaskellDepends = [ base GLUT OpenGL random ];
        description = "Examples of 3D graphics programming with OpenGL";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "3dmodels" = callPackage
@@ -46,7 +48,6 @@ self: {
        description = "A tetris-like game (works with GHC 6.8.3 and Gtk2hs 0.9.13)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AAI" = callPackage
@@ -243,7 +244,6 @@ self: {
        description = "Fancy type-system stuff for AC-Vector";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ACME" = callPackage
@@ -317,7 +317,6 @@ self: {
        description = "Dynamic programming on tree and forest structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ADPfusionSet" = callPackage
@@ -343,7 +342,6 @@ self: {
        description = "Dynamic programming for Set data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-Basics" = callPackage
@@ -381,7 +379,6 @@ self: {
        description = "Compositional lazy dataflow networks for exact real number computation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-Real" = callPackage
@@ -399,7 +396,6 @@ self: {
        description = "arbitrary precision real interval arithmetic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-Real-Double" = callPackage
@@ -424,7 +420,6 @@ self: {
        description = "arbitrary precision real interval arithmetic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-Real-Interval" = callPackage
@@ -442,7 +437,6 @@ self: {
        description = "arbitrary precision real interval arithmetic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-RnToRm" = callPackage
@@ -460,7 +454,6 @@ self: {
        description = "polynomial function enclosures (PFEs) approximating exact real functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AERN-RnToRm-Plot" = callPackage
@@ -479,7 +472,6 @@ self: {
        description = "GL plotting of polynomial function enclosures (PFEs)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AES" = callPackage
@@ -582,7 +574,6 @@ self: {
        description = "ASN.1 support for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AVar" = callPackage
@@ -618,7 +609,6 @@ self: {
        description = "Monads-tf instances for the AbortT monad transformer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AbortT-mtl" = callPackage
@@ -631,7 +621,6 @@ self: {
        description = "mtl instances for the AbortT monad transformer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AbortT-transformers" = callPackage
@@ -723,7 +712,6 @@ self: {
        description = "Lisperati's adventure game in Lisp translated to Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Advise-me" = callPackage
@@ -754,7 +742,6 @@ self: {
        description = "Assessment services for the Advise-Me project";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AesonBson" = callPackage
@@ -909,7 +896,6 @@ self: {
        description = "Algorithmic music composition";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AlgorithmW" = callPackage
@@ -942,7 +928,6 @@ self: {
        description = "Collection of alignment algorithms";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Allure" = callPackage
@@ -971,8 +956,9 @@ self: {
        ];
        description = "Near-future Sci-Fi roguelike and tactical squad combat game";
        license = lib.licenses.agpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "AndroidViewHierarchyImporter" = callPackage
@@ -993,7 +979,6 @@ self: {
        description = "Android view hierarchy importer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Animas" = callPackage
@@ -1020,7 +1005,6 @@ self: {
        description = "Constructing, analyzing and destructing annotated trees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Ansi2Html" = callPackage
@@ -1067,7 +1051,6 @@ self: {
        description = "Library for Apple Push Notification Service";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AppleScript" = callPackage
@@ -1174,7 +1157,6 @@ self: {
        description = "Simple lightweight JSON parser, generator & manipulator based on ByteString";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Attrac" = callPackage
@@ -1223,7 +1205,6 @@ self: {
        description = "GUI library based upon generic programming (SYB3)";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "AvlTree" = callPackage
@@ -1236,7 +1217,6 @@ self: {
        description = "Balanced binary trees using the AVL algorithm";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BASIC" = callPackage
@@ -1249,7 +1229,6 @@ self: {
        description = "Embedded BASIC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BCMtools" = callPackage
@@ -1385,7 +1364,6 @@ self: {
        description = "An ad-hoc P2P chat program";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Befunge93" = callPackage
@@ -1461,7 +1439,6 @@ self: {
        description = "Factorization of polynomials over finite field";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiGUL" = callPackage
@@ -1540,7 +1517,6 @@ self: {
        description = "Libary for Hidden Markov Models in HMMER3 format";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Biobase" = callPackage
@@ -1563,7 +1539,6 @@ self: {
        description = "Base library for bioinformatics";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseBlast" = callPackage
@@ -1591,7 +1566,6 @@ self: {
        description = "BLAST-related tools";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseDotP" = callPackage
@@ -1604,7 +1578,6 @@ self: {
        description = "Vienna / DotBracket / ExtSS parsers";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseENA" = callPackage
@@ -1628,7 +1601,6 @@ self: {
        description = "European Nucleotide Archive data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseEnsembl" = callPackage
@@ -1647,7 +1619,6 @@ self: {
        description = "Ensembl related datastructures and functions";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseFR3D" = callPackage
@@ -1664,7 +1635,6 @@ self: {
        description = "Importer for FR3D resources";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseFasta" = callPackage
@@ -1690,7 +1660,6 @@ self: {
        description = "streaming FASTA parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseHTTP" = callPackage
@@ -1709,7 +1678,6 @@ self: {
        description = "Libary to interface with the Bioinformatics HTTP services - Entrez Ensembl";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseHTTPTools" = callPackage
@@ -1731,7 +1699,6 @@ self: {
        description = "Tools to query Bioinformatics HTTP services e.g. Entrez, Ensembl.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseInfernal" = callPackage
@@ -1771,7 +1738,6 @@ self: {
        description = "Infernal data structures and tools";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseMAF" = callPackage
@@ -1784,7 +1750,6 @@ self: {
        description = "Multiple Alignment Format";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseNewick" = callPackage
@@ -1834,7 +1799,6 @@ self: {
        description = "RNA folding training data";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseTurner" = callPackage
@@ -1853,7 +1817,6 @@ self: {
        description = "Import Turner RNA parameters";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseTypes" = callPackage
@@ -1887,7 +1850,6 @@ self: {
        description = "Collection of types for bioinformatics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseVienna" = callPackage
@@ -1904,7 +1866,6 @@ self: {
        description = "Import Vienna energy parameters";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BiobaseXNA" = callPackage
@@ -1947,7 +1908,6 @@ self: {
        description = "Efficient RNA/DNA/Protein Primary/Secondary Structure";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BirdPP" = callPackage
@@ -1962,7 +1922,6 @@ self: {
        description = "A preprocessor for Bird-style Literate Haskell comments with Haddock markup";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BitStringRandomMonad" = callPackage
@@ -1997,8 +1956,6 @@ self: {
        ];
        description = "A module to aid in the (de)serialisation of binary data";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Bitly" = callPackage
@@ -2011,7 +1968,6 @@ self: {
        description = "A library to access bit.ly URL shortener.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BlastHTTP" = callPackage
@@ -2030,7 +1986,6 @@ self: {
        description = "Libary to interface with the NCBI blast REST interface";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Blobs" = callPackage
@@ -2053,7 +2008,6 @@ self: {
        description = "Diagram editor";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BlogLiterately" = callPackage
@@ -2079,7 +2033,6 @@ self: {
        description = "A tool for posting Haskelly articles to blogs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "BlogLiterately-diagrams" = callPackage
@@ -2102,7 +2055,6 @@ self: {
        description = "Include images in blog posts with inline diagrams code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Blogdown" = callPackage
@@ -2178,7 +2130,6 @@ self: {
        description = "A simple document organizer with some wiki functionality";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Boolean" = callPackage
@@ -2297,7 +2248,6 @@ self: {
        description = "Encode/Decode values to/from CBOR";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CC-delcont" = callPackage
@@ -2328,7 +2278,6 @@ self: {
        description = "Three new monad transformers for multi-prompt delimited control";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CC-delcont-cxe" = callPackage
@@ -2464,7 +2413,6 @@ self: {
        description = "Infernal covariance model comparison";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CMQ" = callPackage
@@ -2511,7 +2459,6 @@ self: {
        description = "A simple Brainfuck interpretter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CPL" = callPackage
@@ -2528,7 +2475,6 @@ self: {
        description = "An interpreter of Hagino's Categorical Programming Language (CPL)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CSPM-CoreLanguage" = callPackage
@@ -2594,7 +2540,6 @@ self: {
        description = "An interpreter for CSPM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CSPM-ToProlog" = callPackage
@@ -2609,7 +2554,6 @@ self: {
        description = "some modules specific for the ProB tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CSPM-cspm" = callPackage
@@ -2636,7 +2580,6 @@ self: {
        description = "cspm command line tool for analyzing CSPM specifications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "CTRex" = callPackage
@@ -2907,7 +2850,6 @@ self: {
        description = "A translation from the Carneades argumentation model into Dung's AFs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Cartesian" = callPackage
@@ -3064,7 +3006,6 @@ self: {
        description = "A backend for the Chart library for FLTKHS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Chart-gtk" = callPackage
@@ -3141,8 +3082,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Tests of the Charts library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ChasingBottoms" = callPackage
@@ -3326,7 +3265,6 @@ self: {
        description = "Libary for parsing Clustal tools output";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Coadjute" = callPackage
@@ -3345,7 +3283,6 @@ self: {
        description = "A generic build tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Codec-Compression-LZF" = callPackage
@@ -3414,7 +3351,6 @@ self: {
        description = "A concurrent bittorrent client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Command" = callPackage
@@ -3470,7 +3406,6 @@ self: {
        description = "A library for expressing spreadsheet-like computations as the fixed-points of comonads";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Compactable" = callPackage
@@ -3486,6 +3421,30 @@ self: {
        broken = true;
      }) {};
 
+  "ConClusion" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, cmdargs, containers
+     , formatting, hmatrix, massiv, optics, psqueues, rio, text
+     }:
+     mkDerivation {
+       pname = "ConClusion";
+       version = "0.0.2";
+       sha256 = "1n2wyvcyh950v67z4szvnr19vdh0fg2zvhxqyfqblpb1njayy92l";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson attoparsec base containers formatting hmatrix massiv psqueues
+         rio
+       ];
+       executableHaskellDepends = [
+         aeson attoparsec base cmdargs containers formatting hmatrix massiv
+         optics psqueues rio text
+       ];
+       description = "Cluster algorithms, PCA, and chemical conformere analysis";
+       license = lib.licenses.agpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "Concurrent-Cache" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -3532,7 +3491,6 @@ self: {
        description = "Information retrieval library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ConfigFile" = callPackage
@@ -3573,7 +3531,6 @@ self: {
        description = "Parse config files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Configurable" = callPackage
@@ -3716,7 +3673,6 @@ self: {
        description = "A Library for Writing Multi-Pass Algorithms";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Control-Monad-ST2" = callPackage
@@ -3781,7 +3737,6 @@ self: {
        description = "Bindings to Mac OSX's CoreFoundation framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Coroutine" = callPackage
@@ -3943,26 +3898,26 @@ self: {
 
   "DBFunctor" = callPackage
     ({ mkDerivation, base, bytestring, cassava, cereal, containers
-     , deepseq, either, MissingH, text, time, transformers
-     , unordered-containers, vector
+     , deepseq, either, text, time, transformers, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "DBFunctor";
-       version = "0.1.1.1";
-       sha256 = "0n3qmgjf9ly5vpnsvh8rhwbd94l157d1asy95n8yqpmrb6xqc1k4";
+       version = "0.1.2.1";
+       sha256 = "0ikb4s9g1mrp4pdz1119dq1vci7mfcvcw92xs47rcin26a3ysdcz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring cassava cereal containers deepseq either MissingH
-         text time transformers unordered-containers vector
+         base bytestring cassava cereal containers deepseq either text time
+         transformers unordered-containers vector
        ];
        executableHaskellDepends = [
-         base bytestring cassava cereal containers deepseq either MissingH
-         text time transformers unordered-containers vector
+         base bytestring cassava cereal containers deepseq either text time
+         transformers unordered-containers vector
        ];
        testHaskellDepends = [
-         base bytestring cassava cereal containers deepseq either MissingH
-         text time transformers unordered-containers vector
+         base bytestring cassava cereal containers deepseq either text time
+         transformers unordered-containers vector
        ];
        description = "DBFunctor - Functional Data Management => ETL/ELT Data Processing in Haskell";
        license = lib.licenses.bsd3;
@@ -4021,7 +3976,6 @@ self: {
        description = "Distributed Mutation Analysis framework for MuCheck";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DOH" = callPackage
@@ -4059,7 +4013,6 @@ self: {
        description = "DOM Level 2 bindings for the WebBits package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DP" = callPackage
@@ -4076,7 +4029,6 @@ self: {
        description = "Pragmatic framework for dynamic programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DPM" = callPackage
@@ -4217,7 +4169,6 @@ self: {
        description = "Database Supported Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DSTM" = callPackage
@@ -4240,7 +4191,6 @@ self: {
        description = "A framework for using STM within distributed systems";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DTC" = callPackage
@@ -4266,7 +4216,6 @@ self: {
        description = "Monads for operations that can exit early and produce warnings";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Dao" = callPackage
@@ -4311,7 +4260,6 @@ self: {
        description = "Code used by Patch-Shack that seemed sensible to open for reusability";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Data-Angle" = callPackage
@@ -4483,8 +4431,6 @@ self: {
        libraryHaskellDepends = [ base haskell-src mtl TypeCompose ];
        description = "Arrows for \"deep application\"";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DeepDarkFantasy" = callPackage
@@ -4524,7 +4470,6 @@ self: {
        description = "A simple RTS game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Delta-Lambda" = callPackage
@@ -4628,7 +4573,6 @@ self: {
        description = "A theory solver for conjunctions of literals in difference logic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DifferentialEvolution" = callPackage
@@ -4729,7 +4673,6 @@ self: {
        description = "Distributed Bug Tracking System";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DiscussionSupportSystem" = callPackage
@@ -4832,7 +4775,6 @@ self: {
        description = "Frameshift-aware alignment of protein sequences with DNA sequences";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DocTest" = callPackage
@@ -4851,7 +4793,6 @@ self: {
        description = "Test interactive Haskell examples";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Docs" = callPackage
@@ -4882,7 +4823,6 @@ self: {
        description = "A tool for deriving hylomorphisms";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DrIFT" = callPackage
@@ -4959,7 +4899,6 @@ self: {
        description = "Polymorphic protocol engine";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Dust-crypto" = callPackage
@@ -5013,7 +4952,6 @@ self: {
        description = "Network filtering exploration tools";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Dust-tools-pcap" = callPackage
@@ -5036,7 +4974,6 @@ self: {
        description = "Network filtering exploration tools that rely on pcap";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DynamicTimeWarp" = callPackage
@@ -5083,7 +5020,6 @@ self: {
        description = "dysFunctional Reactive Programming on Cairo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "DysFRP-Craftwerk" = callPackage
@@ -5101,7 +5037,6 @@ self: {
        description = "dysFunctional Reactive Programming on Craftwerk";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "EEConfig" = callPackage
@@ -5216,7 +5151,6 @@ self: {
        description = "Query language and report generator for edit logs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Eight-Ball-Pool-Hack-Cheats" = callPackage
@@ -5361,7 +5295,6 @@ self: {
        description = "Libary to interface with the NCBI Entrez REST service";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Enum" = callPackage
@@ -5455,7 +5388,6 @@ self: {
        description = "Type-safe bindings to EsounD (ESD; Enlightened Sound Daemon)";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "EstProgress" = callPackage
@@ -5494,7 +5426,6 @@ self: {
        description = "A new implementation of the LambdaMOO server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) pcre;};
 
   "Etage" = callPackage
@@ -5531,7 +5462,6 @@ self: {
        description = "Data-flow based graph algorithms";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Eternal10Seconds" = callPackage
@@ -5547,7 +5477,6 @@ self: {
        description = "A 2-D shooting game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Etherbunny" = callPackage
@@ -5570,7 +5499,6 @@ self: {
        description = "A network analysis toolkit for Haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libpcap;};
 
   "EuroIT" = callPackage
@@ -5598,6 +5526,9 @@ self: {
        ];
        description = "Library for computer music research and education";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "EventSocket" = callPackage
@@ -5614,7 +5545,6 @@ self: {
        description = "Interfaces with FreeSwitch Event Socket";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Extra" = callPackage
@@ -5674,7 +5604,6 @@ self: {
        description = "Compose music";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FM-SBLEX" = callPackage
@@ -5689,7 +5618,6 @@ self: {
        description = "A set of computational morphology tools for Swedish diachronic lexicons";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FModExRaw" = callPackage
@@ -5782,7 +5710,6 @@ self: {
        description = "A command-line FTP client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Facebook-Password-Hacker-Online-Latest-Version" = callPackage
@@ -5825,7 +5752,6 @@ self: {
        description = "A collection of facts about the real world";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FailureT" = callPackage
@@ -5838,7 +5764,6 @@ self: {
        description = "Failure Monad Transformer";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FastPush" = callPackage
@@ -5903,7 +5828,6 @@ self: {
        description = "Annotate ps and pdf documents";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FerryCore" = callPackage
@@ -5954,7 +5878,6 @@ self: {
        description = "Functional 3D";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FileManip" = callPackage
@@ -6006,7 +5929,6 @@ self: {
        description = "Functions on System.FilePath";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FileSystem" = callPackage
@@ -6059,8 +5981,6 @@ self: {
        ];
        description = "Finite totally-ordered sets";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Finance-Quote-Yahoo" = callPackage
@@ -6095,7 +6015,6 @@ self: {
        description = "Obtain Treasury yield curve data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FindBin" = callPackage
@@ -6119,7 +6038,6 @@ self: {
        description = "A finite map implementation, derived from the paper: Efficient sets: a balancing act, S. Adams, Journal of functional programming 3(4) Oct 1993, pp553-562";
        license = lib.licenses.bsdOriginal;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FirstOrderTheory" = callPackage
@@ -6132,7 +6050,6 @@ self: {
        description = "Grammar and typeclass for first order theories";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FixedPoint-simple" = callPackage
@@ -6163,7 +6080,6 @@ self: {
        description = "Wiki";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FloatingHex" = callPackage
@@ -6287,7 +6203,6 @@ self: {
        description = "Comparison of trees and forests";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ForkableT" = callPackage
@@ -6326,7 +6241,6 @@ self: {
        description = "(Context-free) grammars in formal language theory";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Fortnite-Hack-Cheats-Free-V-Bucks-Generator" = callPackage
@@ -6372,7 +6286,6 @@ self: {
        description = "Utilities to generate and solve puzzles";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FpMLv53" = callPackage
@@ -6434,8 +6347,8 @@ self: {
      }:
      mkDerivation {
        pname = "Frames";
-       version = "0.7.1";
-       sha256 = "10js8xhp1v6gk6aagrzkn5c2c2gg4xml9vavpvhjfvj2jz77rfkm";
+       version = "0.7.2";
+       sha256 = "08q3zfhb6wf4b8020d63v6zpmb3834ba50hnb478vvjqd8rrp1mh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -6476,7 +6389,6 @@ self: {
        description = "A library for accessing Postgres tables as in-memory data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Frames-dsv" = callPackage
@@ -6495,7 +6407,6 @@ self: {
        description = "Alternative CSV parser for the Frames package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Frames-map-reduce" = callPackage
@@ -6505,8 +6416,8 @@ self: {
      }:
      mkDerivation {
        pname = "Frames-map-reduce";
-       version = "0.4.0.0";
-       sha256 = "1ajqkzg3q59hg1gwbamff72j9sxljqq7sghrqw5xbnxfd4867dcf";
+       version = "0.4.1.1";
+       sha256 = "0cxk86bbl6mbpg7ywb5cm8kfixl508gww8yxq6vwyrxbs7q4j25z";
        libraryHaskellDepends = [
          base containers foldl Frames hashable map-reduce-folds newtype
          profunctors vinyl
@@ -6521,16 +6432,16 @@ self: {
      }) {};
 
   "Frames-streamly" = callPackage
-    ({ mkDerivation, base, exceptions, Frames, primitive, streamly
-     , text, vinyl
+    ({ mkDerivation, base, exceptions, Frames, primitive, relude
+     , streamly, strict, text, vinyl
      }:
      mkDerivation {
        pname = "Frames-streamly";
-       version = "0.1.0.2";
-       sha256 = "0i007clm5q2rjmj7qfyig4sajk2bi1fc57w132j4vrvgp3p9p4rr";
+       version = "0.1.1.1";
+       sha256 = "05al2v7wivvpwxq0gxypbm30ch4ssxmxw1wl4k9az3dqfvr0xgal";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base exceptions Frames primitive streamly text vinyl
+         base exceptions Frames primitive relude streamly strict text vinyl
        ];
        testHaskellDepends = [ base Frames streamly text vinyl ];
        description = "A streamly layer for Frames I/O";
@@ -6549,7 +6460,6 @@ self: {
        description = "An experimental programming language with typed algebraic effects";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "FreeTypeGL" = callPackage
@@ -6671,7 +6581,6 @@ self: {
        description = "A binding for GLFW (OGL)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs.xorg) libX11; inherit (pkgs.xorg) libXrandr;};
 
   "GLFW-b" = callPackage
@@ -6722,7 +6631,6 @@ self: {
        description = "GLFW utility functions to use together with monad-task";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GLHUI" = callPackage
@@ -6842,7 +6750,6 @@ self: {
        description = "Parse GPX files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GPipe" = callPackage
@@ -6876,7 +6783,6 @@ self: {
        description = "Load GPipe meshes from Collada files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GPipe-Core" = callPackage
@@ -6898,6 +6804,8 @@ self: {
        benchmarkHaskellDepends = [ base criterion lens ];
        description = "Typesafe functional GPU graphics programming";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "GPipe-Examples" = callPackage
@@ -6916,7 +6824,6 @@ self: {
        description = "Examples for the GPipes package";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GPipe-GLFW" = callPackage
@@ -6930,7 +6837,6 @@ self: {
        description = "GLFW OpenGL context creation for GPipe";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GPipe-GLFW4" = callPackage
@@ -6960,6 +6866,7 @@ self: {
        ];
        description = "GLFW OpenGL context creation for GPipe";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "GPipe-TextureLoad" = callPackage
@@ -6972,7 +6879,6 @@ self: {
        description = "Load GPipe textures from filesystem";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GTALib" = callPackage
@@ -7015,7 +6921,6 @@ self: {
        description = "Some kind of game library or set of utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Ganymede" = callPackage
@@ -7063,7 +6968,6 @@ self: {
        description = "Several games";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GenI" = callPackage
@@ -7098,7 +7002,6 @@ self: {
        description = "A natural language generator (specifically, an FB-LTAG surface realiser)";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GenSmsPdu" = callPackage
@@ -7113,7 +7016,6 @@ self: {
        description = "Automatic SMS message generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Genbank" = callPackage
@@ -7133,7 +7035,6 @@ self: {
        description = "Libary for processing the NCBI genbank format";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Gene-CluEDO" = callPackage
@@ -7160,7 +7061,6 @@ self: {
        description = "Hox gene clustering";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GeneralTicTacToe" = callPackage
@@ -7215,7 +7115,6 @@ self: {
        description = "MCFGs for Genus-1 RNA Pseudoknots";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GeoIp" = callPackage
@@ -7420,7 +7319,6 @@ self: {
        description = "SDL Frontend for Glome ray tracer";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GoogleChart" = callPackage
@@ -7465,7 +7363,6 @@ self: {
        description = "Haskell Interface to Google Directions API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GoogleSB" = callPackage
@@ -7482,7 +7379,6 @@ self: {
        description = "Interface to Google Safe Browsing API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GoogleSuggest" = callPackage
@@ -7511,7 +7407,6 @@ self: {
        description = "Interface to Google Translate API";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GotoT-transformers" = callPackage
@@ -7561,7 +7456,6 @@ self: {
        description = "Grammar products and higher-dimensional grammars";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Graph500" = callPackage
@@ -7597,7 +7491,6 @@ self: {
        description = "GraphHammer Haskell graph analyses framework inspired by STINGER";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GraphHammer-examples" = callPackage
@@ -7616,7 +7509,6 @@ self: {
        description = "Test harness for TriangleCount analysis";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GraphSCC" = callPackage
@@ -7645,6 +7537,7 @@ self: {
        description = "Graph-Theoretic Analysis library";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "Grempa" = callPackage
@@ -7724,7 +7617,6 @@ self: {
        description = "Notification utility for Growl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Gtk2hsGenerics" = callPackage
@@ -7741,7 +7633,6 @@ self: {
        description = "Convenience functions to extend Gtk2hs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GtkGLTV" = callPackage
@@ -7758,7 +7649,6 @@ self: {
        description = "OpenGL support for Gtk-based GUIs for Tangible Values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GtkTV" = callPackage
@@ -7772,8 +7662,6 @@ self: {
        ];
        description = "Gtk-based GUIs for Tangible Values";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GuiHaskell" = callPackage
@@ -7793,7 +7681,6 @@ self: {
        description = "A graphical REPL and development environment for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "GuiTV" = callPackage
@@ -7806,7 +7693,6 @@ self: {
        description = "GUIs for Tangible Values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "H" = callPackage
@@ -7885,7 +7771,6 @@ self: {
        description = "HAppS data manipulation libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HAppS-IxSet" = callPackage
@@ -7902,7 +7787,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HAppS-Server" = callPackage
@@ -7924,7 +7808,6 @@ self: {
        description = "Web related tools and services";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HAppS-State" = callPackage
@@ -7945,7 +7828,6 @@ self: {
        description = "Event-based distributed state";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HAppS-Util" = callPackage
@@ -7996,8 +7878,6 @@ self: {
        ];
        description = "High-level library for building command line interfaces";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HCard" = callPackage
@@ -8650,7 +8530,6 @@ self: {
        description = "HJScript is a Haskell EDSL for writing JavaScript programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HJVM" = callPackage
@@ -8710,7 +8589,6 @@ self: {
        description = "Algebraic foundation for homomorphic learning";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HLearn-approximation" = callPackage
@@ -8730,7 +8608,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HLearn-classification" = callPackage
@@ -8754,7 +8631,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HLearn-datastructures" = callPackage
@@ -8771,7 +8647,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HLearn-distributions" = callPackage
@@ -8796,7 +8671,6 @@ self: {
        description = "Distributions for use with the HLearn library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HList" = callPackage
@@ -8921,7 +8795,6 @@ self: {
        description = "Happy Network Manager";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HNumeric" = callPackage
@@ -8996,8 +8869,6 @@ self: {
        testHaskellDepends = [ base HTF ];
        description = "Generation of PDF documents";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HPath" = callPackage
@@ -9071,7 +8942,6 @@ self: {
        description = "A minimal monadic PLplot interface for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {plplotd-gnome2 = null;};
 
   "HPong" = callPackage
@@ -9091,7 +8961,6 @@ self: {
        description = "A simple OpenGL Pong game based on GLFW";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT" = callPackage
@@ -9110,7 +8979,6 @@ self: {
        description = "Haskell binding to the ROOT data analysis framework";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-core" = callPackage
@@ -9125,7 +8993,6 @@ self: {
        description = "Haskell binding to ROOT Core modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-graf" = callPackage
@@ -9142,7 +9009,6 @@ self: {
        description = "Haskell binding to ROOT Graf modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-hist" = callPackage
@@ -9159,7 +9025,6 @@ self: {
        description = "Haskell binding to ROOT Hist modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-io" = callPackage
@@ -9176,7 +9041,6 @@ self: {
        description = "Haskell binding to ROOT IO modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-math" = callPackage
@@ -9193,7 +9057,6 @@ self: {
        description = "Haskell binding to ROOT Math modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HROOT-tree" = callPackage
@@ -9210,7 +9073,6 @@ self: {
        description = "Haskell binding to ROOT Tree modules";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HRay" = callPackage
@@ -9226,7 +9088,6 @@ self: {
        description = "Haskell raytracer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSFFIG" = callPackage
@@ -9268,7 +9129,6 @@ self: {
        description = "Gene Expression Programming evolutionary algorithm in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSH" = callPackage
@@ -9306,7 +9166,6 @@ self: {
        description = "Convenience functions that use HSH, instances for HSH";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSet" = callPackage
@@ -9350,8 +9209,6 @@ self: {
        testHaskellDepends = [ aeson attoparsec base HTF text ];
        description = "Small template engine";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSoM" = callPackage
@@ -9368,6 +9225,9 @@ self: {
        ];
        description = "Library for computer music education";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "HSoundFile" = callPackage
@@ -9384,7 +9244,6 @@ self: {
        description = "Audio file reading/writing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HStringTemplate" = callPackage
@@ -9422,7 +9281,6 @@ self: {
        description = "Convenience functions and instances for HStringTemplate";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSvm" = callPackage
@@ -9469,8 +9327,6 @@ self: {
        ];
        description = "The Haskell Test Framework";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HTTP" = callPackage
@@ -9522,7 +9378,6 @@ self: {
        description = "Tableau based theorem prover for hybrid logics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HTicTacToe" = callPackage
@@ -9627,7 +9482,6 @@ self: {
        description = "A (prototyped) easy to use XMPP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HXQ" = callPackage
@@ -9675,7 +9529,6 @@ self: {
        description = "An Haskell library to drive the french Minitel through a serial port";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaPy" = callPackage
@@ -9724,7 +9577,6 @@ self: {
        description = "the Haskell Refactorer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaTeX" = callPackage
@@ -9764,7 +9616,6 @@ self: {
        description = "This package is deprecated. From version 3, HaTeX does not need this anymore.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaTeX-qq" = callPackage
@@ -9781,7 +9632,6 @@ self: {
        description = "Quasiquoters for HaTeX";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaVSA" = callPackage
@@ -9802,7 +9652,6 @@ self: {
        description = "An implementation of the Version Space Algebra learning framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaXml" = callPackage
@@ -9840,7 +9689,6 @@ self: {
        description = "Simple chat";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HackMail" = callPackage
@@ -9974,7 +9822,6 @@ self: {
        description = "Harmony Analysis and Retrieval of Music";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HarmTrace-Base" = callPackage
@@ -10043,7 +9890,6 @@ self: {
        description = "A Haskell library for inference using Gaussian processes";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Haschoo" = callPackage
@@ -10083,7 +9929,6 @@ self: {
        description = "Simple shell written in Haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaskRel" = callPackage
@@ -10101,7 +9946,6 @@ self: {
        description = "HaskRel, Haskell as a DBMS with support for the relational algebra";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaskellAnalysisProgram" = callPackage
@@ -10180,8 +10024,6 @@ self: {
        ];
        description = "Client support for POP3, SMTP, and IMAP";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaskellNet-SSL" = callPackage
@@ -10301,7 +10143,6 @@ self: {
        description = "A small 2D game framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hawk" = callPackage
@@ -10324,7 +10165,6 @@ self: {
        description = "Haskell Web Application Kit";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hayoo" = callPackage
@@ -10352,7 +10192,6 @@ self: {
        description = "The Hayoo! search engine for Haskell API search on hackage";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hclip" = callPackage
@@ -10386,7 +10225,6 @@ self: {
        description = "Line oriented editor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HerbiePlugin" = callPackage
@@ -10445,7 +10283,6 @@ self: {
        description = "Purely functional 2D graphics for visualization";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HiggsSet" = callPackage
@@ -10463,7 +10300,6 @@ self: {
        description = "A multi-index set with advanced query capabilites";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hipmunk" = callPackage
@@ -10478,6 +10314,7 @@ self: {
        description = "A Haskell binding for Chipmunk";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "Hipmunk-Utils" = callPackage
@@ -10491,7 +10328,6 @@ self: {
        description = "Useful functions for Hipmunk";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HipmunkPlayground" = callPackage
@@ -10585,7 +10421,6 @@ self: {
        description = "Lightweight algorithmic debugging";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HoleyMonoid" = callPackage
@@ -10660,7 +10495,6 @@ self: {
        description = "A search and indexing engine";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Holumbus-Storage" = callPackage
@@ -10712,7 +10546,6 @@ self: {
        description = "A Simple Key Value Store";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HostAndPort" = callPackage
@@ -10769,7 +10602,6 @@ self: {
        description = "A Library and Preprocessor that makes it easier to create shared libs from Haskell programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HsASA" = callPackage
@@ -10855,20 +10687,6 @@ self: {
     ({ mkDerivation, base, bytestring, Cabal, network, openssl, time }:
      mkDerivation {
        pname = "HsOpenSSL";
-       version = "0.11.6.2";
-       sha256 = "160fpl2lcardzf4gy5dimhad69gvkkvnpp5nqbf8fcxzm4vgg76y";
-       setupHaskellDepends = [ base Cabal ];
-       libraryHaskellDepends = [ base bytestring network time ];
-       librarySystemDepends = [ openssl ];
-       testHaskellDepends = [ base bytestring ];
-       description = "Partial OpenSSL binding for Haskell";
-       license = lib.licenses.publicDomain;
-     }) {inherit (pkgs) openssl;};
-
-  "HsOpenSSL_0_11_7" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, network, openssl, time }:
-     mkDerivation {
-       pname = "HsOpenSSL";
        version = "0.11.7";
        sha256 = "0kji758bi8agcjvpbb3hpppv55qm9g2r02mamiv568zwmlkkxsm3";
        setupHaskellDepends = [ base Cabal ];
@@ -10877,7 +10695,6 @@ self: {
        testHaskellDepends = [ base bytestring ];
        description = "Partial OpenSSL binding for Haskell";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) openssl;};
 
   "HsOpenSSL-x509-system" = callPackage
@@ -10904,7 +10721,6 @@ self: {
        description = "Haskell integration with Parrot virtual machine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HsPerl5" = callPackage
@@ -10980,7 +10796,6 @@ self: {
        description = "Webots bindings for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {Controller = null; driver = null;};
 
   "HsYAML" = callPackage
@@ -11046,7 +10861,6 @@ self: {
        description = "Stream Editor in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hsmtlib" = callPackage
@@ -11140,7 +10954,6 @@ self: {
        description = "The library for generating a WebGL scene for the web";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "I1M" = callPackage
@@ -11149,8 +10962,8 @@ self: {
      }:
      mkDerivation {
        pname = "I1M";
-       version = "0.0.3";
-       sha256 = "0lk34g47iid2cfcj9zfdwbkpvhfhanh83jzh64r9sdrqgw9p25w3";
+       version = "0.1.0";
+       sha256 = "0a5bh9hlsn6hmdqinc47hxlav1isv9jh2i4x3zfyfp4y4xrp2h93";
        libraryHaskellDepends = [ array base QuickCheck ];
        testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Code for the Haskell course taught at the University of Seville";
@@ -11207,7 +11020,6 @@ self: {
        description = "Editor and interpreter for Interaction Nets";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "IOR" = callPackage
@@ -11241,7 +11053,6 @@ self: {
        description = "Atomic compare and swap for IORefs and STRefs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "IOSpec" = callPackage
@@ -11372,7 +11183,6 @@ self: {
        description = "Length- and element-indexed lists sitting somewhere between homogeneous and fully heterogeneous";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "InfixApplicative" = callPackage
@@ -11385,7 +11195,6 @@ self: {
        description = "liftA2 for infix operators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "IntFormats" = callPackage
@@ -11551,7 +11360,6 @@ self: {
        description = "A combinator library on top of a generalised JSON type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JSON-Combinator-Examples" = callPackage
@@ -11566,7 +11374,6 @@ self: {
        description = "Example uses of the JSON-Combinator library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JSONParser" = callPackage
@@ -11599,7 +11406,6 @@ self: {
        description = "JSON parser that uses byte strings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JYU-Utils" = callPackage
@@ -11651,7 +11457,6 @@ self: {
        description = "A utility to print the SourceFile attribute of one or more Java class files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Javav" = callPackage
@@ -11715,7 +11520,6 @@ self: {
        description = "Design-by-contract for JavaScript";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JsonGrammar" = callPackage
@@ -11738,7 +11542,6 @@ self: {
        description = "Combinators for bidirectional JSON parsing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JuPyTer-notebook" = callPackage
@@ -11756,7 +11559,6 @@ self: {
        description = "JuPyTer notebook parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JuicyPixels" = callPackage
@@ -11848,8 +11650,8 @@ self: {
      }:
      mkDerivation {
        pname = "JuicyPixels-extra";
-       version = "0.4.1";
-       sha256 = "0k2bz2xn15qg400xl6xs52j2abcc3js42rd9p9sy4dwlkcdmblbj";
+       version = "0.5.0";
+       sha256 = "1r6rpasakl4s7x53y6wz34rkg4xxjhh8zfm9aqdjnxc7b8ir0nbb";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base JuicyPixels ];
        testHaskellDepends = [ base hspec JuicyPixels ];
@@ -11948,7 +11750,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JunkDB-driver-hashtables" = callPackage
@@ -11964,7 +11765,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "JustParse" = callPackage
@@ -12280,7 +12080,6 @@ self: {
        description = "Lightweight Directory Access Protocol (LDAP) version 3";
        license = lib.licenses.gpl2Plus;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LParse" = callPackage
@@ -12389,7 +12188,6 @@ self: {
        description = "A type-safe EDSL for TouchDesigner written in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LambdaHack" = callPackage
@@ -12425,8 +12223,9 @@ self: {
        ];
        description = "A game engine library for tactical squad ASCII roguelike dungeon crawlers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "LambdaINet" = callPackage
@@ -12447,7 +12246,6 @@ self: {
        description = "Graphical Interaction Net Evaluator for Optimal Evaluation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LambdaNet" = callPackage
@@ -12490,7 +12288,6 @@ self: {
        description = "Quasiquoter, and Arbitrary helpers for the lambda calculus";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LambdaShell" = callPackage
@@ -12509,7 +12306,6 @@ self: {
        description = "Simple shell for evaluating lambda expressions";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Lambdajudge" = callPackage
@@ -12724,7 +12520,6 @@ self: {
        description = "Partition the sequence of items to the subsequences in the order given";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LinguisticsTypes" = callPackage
@@ -12770,7 +12565,6 @@ self: {
        description = "Check a bunch of local html files for broken links";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Liquorice" = callPackage
@@ -12943,7 +12737,6 @@ self: {
        description = "a parallel implementation of logic programming using distributed tree exploration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LogicGrowsOnTrees-MPI" = callPackage
@@ -12966,7 +12759,6 @@ self: {
        description = "an adapter for LogicGrowsOnTrees that uses MPI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {openmpi = null;};
 
   "LogicGrowsOnTrees-network" = callPackage
@@ -12993,7 +12785,6 @@ self: {
        description = "an adapter for LogicGrowsOnTrees that uses multiple processes running in a network";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LogicGrowsOnTrees-processes" = callPackage
@@ -13021,7 +12812,6 @@ self: {
        description = "an adapter for LogicGrowsOnTrees that uses multiple processes for parallelism";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "LslPlus" = callPackage
@@ -13043,7 +12833,6 @@ self: {
        description = "An execution and testing framework for the Linden Scripting Language (LSL)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Lucu" = callPackage
@@ -13065,7 +12854,6 @@ self: {
        description = "HTTP Daemonic Library";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Lykah" = callPackage
@@ -13095,7 +12883,6 @@ self: {
        description = "A static website and blog generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MASMGen" = callPackage
@@ -13142,7 +12929,6 @@ self: {
        description = "Folding algorithm based on nucleotide cyclic motifs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MFlow" = callPackage
@@ -13169,7 +12955,6 @@ self: {
        description = "stateful, RESTful web framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MHask" = callPackage
@@ -13237,7 +13022,6 @@ self: {
        description = "A GLPK backend to the MIP library";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) glpk;};
 
   "MSQueue" = callPackage
@@ -13250,7 +13034,6 @@ self: {
        description = "Michael-Scott queue";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MTGBuilder" = callPackage
@@ -13401,7 +13184,6 @@ self: {
        description = "MaybeT monad transformer using transformers instead of mtl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MazesOfMonad" = callPackage
@@ -13517,7 +13299,6 @@ self: {
        description = "A meta-object system for Haskell based on Perl 6";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Metrics" = callPackage
@@ -13530,7 +13311,6 @@ self: {
        description = "Evaluation metrics commonly used in supervised machine learning";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Mhailist" = callPackage
@@ -13550,7 +13330,6 @@ self: {
        description = "Haskell mailing list manager";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Michelangelo" = callPackage
@@ -13568,7 +13347,6 @@ self: {
        description = "OpenGL for dummies";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MicrosoftTranslator" = callPackage
@@ -13586,7 +13364,6 @@ self: {
        description = "Interface for Microsoft Translator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MiniAgda" = callPackage
@@ -13617,6 +13394,29 @@ self: {
      }:
      mkDerivation {
        pname = "MissingH";
+       version = "1.4.2.0";
+       sha256 = "1wfhpb351nrqjryf9si9j13nkvrqybhkkyc9643wqq8ywkdd59b9";
+       libraryHaskellDepends = [
+         array base containers directory filepath hslogger mtl network
+         network-bsd old-locale old-time parsec process random regex-compat
+         time unix
+       ];
+       testHaskellDepends = [
+         base containers directory errorcall-eq-instance filepath HUnit
+         old-time parsec regex-compat time unix
+       ];
+       description = "Large utility library";
+       license = lib.licenses.bsd3;
+     }) {};
+
+  "MissingH_1_4_3_0" = callPackage
+    ({ mkDerivation, array, base, containers, directory
+     , errorcall-eq-instance, filepath, hslogger, HUnit, mtl, network
+     , network-bsd, old-locale, old-time, parsec, process, random
+     , regex-compat, time, unix
+     }:
+     mkDerivation {
+       pname = "MissingH";
        version = "1.4.3.0";
        sha256 = "196cniya5wzcv2d777nr0f7hinclpals4ia1mkzzv35870pqr6lw";
        libraryHaskellDepends = [
@@ -13630,6 +13430,7 @@ self: {
        ];
        description = "Large utility library";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "MissingK" = callPackage
@@ -13670,7 +13471,6 @@ self: {
        description = "Haskell interface to Python";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Mobile-Legends-Hack-Cheats" = callPackage
@@ -13755,7 +13555,6 @@ self: {
        description = "Monad-transformer version of the Control.Exception module";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MonadCatchIO-mtl-foreign" = callPackage
@@ -13768,7 +13567,6 @@ self: {
        description = "Polymorphic combinators for working with foreign functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MonadCatchIO-transformers" = callPackage
@@ -13802,7 +13600,6 @@ self: {
        description = "Polymorphic combinators for working with foreign functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MonadCompose" = callPackage
@@ -13833,7 +13630,6 @@ self: {
        description = "Automatically generate layered monads";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MonadPrompt" = callPackage
@@ -13855,6 +13651,8 @@ self: {
        pname = "MonadRandom";
        version = "0.5.3";
        sha256 = "17qaw1gg42p9v6f87dj5vih7l88lddbyd8880ananj8avanls617";
+       revision = "1";
+       editedCabalFile = "1wpgmcv704i7x38jwalnbmx8c10vdw269gbvzjxaj4rlvff3s4sq";
        libraryHaskellDepends = [
          base mtl primitive random transformers transformers-compat
        ];
@@ -13936,7 +13734,6 @@ self: {
        description = "A simple tetris clone";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Monatron" = callPackage
@@ -13962,7 +13759,6 @@ self: {
        description = "MonadIO instances for the Monatron transformers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Monocle" = callPackage
@@ -13975,7 +13771,6 @@ self: {
        description = "Symbolic computations in strict monoidal categories with LaTeX output";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MorseCode" = callPackage
@@ -14024,7 +13819,6 @@ self: {
        description = "Automated Mutation Testing for HUnit tests";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MuCheck-Hspec" = callPackage
@@ -14040,7 +13834,6 @@ self: {
        description = "Automated Mutation Testing for Hspec tests";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MuCheck-QuickCheck" = callPackage
@@ -14056,7 +13849,6 @@ self: {
        description = "Automated Mutation Testing for QuickCheck tests";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MuCheck-SmallCheck" = callPackage
@@ -14072,7 +13864,6 @@ self: {
        description = "Automated Mutation Testing for SmallCheck tests";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Munkres" = callPackage
@@ -14164,7 +13955,6 @@ self: {
        description = "Most likely order of mutation events in RNA";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "MyPrimes" = callPackage
@@ -14251,7 +14041,6 @@ self: {
        description = "A Haskell interface to Lego Mindstorms NXT";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {bluetooth = null;};
 
   "NXTDSL" = callPackage
@@ -14308,6 +14097,24 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "NanoID" = callPackage
+    ({ mkDerivation, base, bytestring, extra, mwc-random
+     , optparse-applicative
+     }:
+     mkDerivation {
+       pname = "NanoID";
+       version = "1.2.0";
+       sha256 = "1fwbzdj7cn96fbq4vsp4582p317qw3piy237vxf79d0wmdp006zn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bytestring extra mwc-random ];
+       executableHaskellDepends = [
+         base bytestring mwc-random optparse-applicative
+       ];
+       description = "NanoID generator";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "NanoProlog" = callPackage
     ({ mkDerivation, base, containers, ListLike, uu-parsinglib }:
      mkDerivation {
@@ -14349,7 +14156,6 @@ self: {
        description = "Instances of NcStore for hypercuboids";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "NaturalLanguageAlphabets" = callPackage
@@ -14414,7 +14220,6 @@ self: {
        description = "Context Algebra of near";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Neks" = callPackage
@@ -14542,7 +14347,6 @@ self: {
        description = "Ninja game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "NoHoed" = callPackage
@@ -14574,7 +14378,6 @@ self: {
        description = "Microbenchmarks for various array libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "NoTrace" = callPackage
@@ -14620,7 +14423,6 @@ self: {
        description = "A Nomic game in haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Nomyx-Core" = callPackage
@@ -14648,7 +14450,6 @@ self: {
        description = "A Nomic game in haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Nomyx-Language" = callPackage
@@ -14669,7 +14470,6 @@ self: {
        description = "Language to express rules for Nomic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Nomyx-Rules" = callPackage
@@ -14688,7 +14488,6 @@ self: {
        description = "Language to express rules for Nomic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Nomyx-Web" = callPackage
@@ -14714,7 +14513,6 @@ self: {
        description = "Web gui for Nomyx";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "NonEmpty" = callPackage
@@ -14745,7 +14543,6 @@ self: {
        description = "A list with a length of at least one";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "NumInstances" = callPackage
@@ -14824,7 +14621,6 @@ self: {
        description = "Nussinov78 using the ADPfusion library";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Nutri" = callPackage
@@ -14893,7 +14689,6 @@ self: {
        description = "Parse OpenStreetMap files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OTP" = callPackage
@@ -15061,7 +14856,6 @@ self: {
        description = "Text UI library for performing parallel remote SSH operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OneTuple" = callPackage
@@ -15127,7 +14921,6 @@ self: {
        description = "Assorted utilities to work with AFP data streams";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OpenAL" = callPackage
@@ -15220,7 +15013,6 @@ self: {
        description = "Quickcheck instances for various data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OpenGLRaw" = callPackage
@@ -15269,7 +15061,6 @@ self: {
        description = "ADT wrapper and renderer for OpenSCAD models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OpenVG" = callPackage
@@ -15282,7 +15073,6 @@ self: {
        description = "OpenVG (ShivaVG-0.2.1) binding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "OpenVGRaw" = callPackage
@@ -15481,7 +15271,6 @@ self: {
        description = "An addon to PCLT package: enchance PCLT catalog with PostgreSQL powers";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "PDBtools" = callPackage
@@ -15588,7 +15377,6 @@ self: {
        description = "Page-oriented extraction and composition library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Paillier" = callPackage
@@ -15656,7 +15444,6 @@ self: {
        description = "a code generator for partial differential equations solvers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Parallel-Arrows-BaseSpec" = callPackage
@@ -15707,7 +15494,6 @@ self: {
        description = "Eden based backend for @Parallel-Arrows-Definition@";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Parallel-Arrows-Multicore" = callPackage
@@ -15911,7 +15697,6 @@ self: {
        description = "Permutations of effectful computations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Persistence" = callPackage
@@ -16041,7 +15826,6 @@ self: {
        description = "Real-time line plotter for generic data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "PlslTools" = callPackage
@@ -16062,7 +15846,6 @@ self: {
        description = "So far just a lint like program for PL/SQL. Diff and refactoring tools are planned";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Plural" = callPackage
@@ -16107,7 +15890,7 @@ self: {
      }) {};
 
   "PortMidi" = callPackage
-    ({ mkDerivation, alsaLib, base }:
+    ({ mkDerivation, alsa-lib, base }:
      mkDerivation {
        pname = "PortMidi";
        version = "0.2.0.0";
@@ -16115,13 +15898,13 @@ self: {
        revision = "1";
        editedCabalFile = "0h3gql271mdz3kh0jgimxv8ada34b0h4n8wnyf5i759fqxpf6w86";
        libraryHaskellDepends = [ base ];
-       librarySystemDepends = [ alsaLib ];
+       librarySystemDepends = [ alsa-lib ];
        description = "A binding for PortMedia/PortMidi";
        license = lib.licenses.bsd3;
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "PortMidi-simple" = callPackage
     ({ mkDerivation, base, PortMidi }:
@@ -16135,6 +15918,9 @@ self: {
        executableHaskellDepends = [ base PortMidi ];
        description = "Simplified PortMidi wrapper";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "PostgreSQL" = callPackage
@@ -16166,32 +15952,34 @@ self: {
 
   "PrimitiveArray" = callPackage
     ({ mkDerivation, aeson, base, binary, bits, cereal, cereal-vector
-     , containers, criterion, deepseq, DPutils, hashable, lens
-     , log-domain, mtl, OrderedBits, primitive, QuickCheck, smallcheck
-     , tasty, tasty-quickcheck, tasty-smallcheck, tasty-th, text, vector
+     , containers, criterion, deepseq, DPutils, hashable, hashtables
+     , lens, log-domain, mtl, OrderedBits, primitive, QuickCheck
+     , smallcheck, tasty, tasty-quickcheck, tasty-smallcheck, tasty-th
+     , text, unordered-containers, vector, vector-algorithms
      , vector-binary-instances, vector-th-unbox
      }:
      mkDerivation {
        pname = "PrimitiveArray";
-       version = "0.10.0.0";
-       sha256 = "0g9shj3zqk8rdp905di9i5g5bhga5msc7cs609fk3nkjm16ms0vi";
+       version = "0.10.1.0";
+       sha256 = "1qjld82q0fdaav6y9ky0bkmqjxvv48502zd3s9i1b72wn436zhib";
        libraryHaskellDepends = [
          aeson base binary bits cereal cereal-vector containers deepseq
-         DPutils hashable lens log-domain mtl OrderedBits primitive
-         QuickCheck smallcheck text vector vector-binary-instances
-         vector-th-unbox
+         DPutils hashable hashtables lens log-domain mtl OrderedBits
+         primitive QuickCheck smallcheck text unordered-containers vector
+         vector-algorithms vector-binary-instances vector-th-unbox
        ];
        testHaskellDepends = [
          aeson base binary bits cereal cereal-vector containers deepseq
-         DPutils hashable lens log-domain mtl OrderedBits primitive
-         QuickCheck smallcheck tasty tasty-quickcheck tasty-smallcheck
-         tasty-th text vector vector-binary-instances vector-th-unbox
+         DPutils hashable hashtables lens log-domain mtl OrderedBits
+         primitive QuickCheck smallcheck tasty tasty-quickcheck
+         tasty-smallcheck tasty-th text unordered-containers vector
+         vector-algorithms vector-binary-instances vector-th-unbox
        ];
        benchmarkHaskellDepends = [
          aeson base binary bits cereal cereal-vector containers criterion
-         deepseq DPutils hashable lens log-domain mtl OrderedBits primitive
-         QuickCheck smallcheck text vector vector-binary-instances
-         vector-th-unbox
+         deepseq DPutils hashable hashtables lens log-domain mtl OrderedBits
+         primitive QuickCheck smallcheck text unordered-containers vector
+         vector-algorithms vector-binary-instances vector-th-unbox
        ];
        description = "Efficient multidimensional arrays";
        license = lib.licenses.bsd3;
@@ -16230,7 +16018,6 @@ self: {
        libraryHaskellDepends = [ base haskell98 pretty template-haskell ];
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "PriorityChansConverger" = callPackage
@@ -16256,7 +16043,17 @@ self: {
        description = "Probability distribution monads";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "Probnet" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "Probnet";
+       version = "0.1.0.4";
+       sha256 = "02q4c7mp268r8f3p2f37yksssginjrs89ldqljpn80aj53ylcqyf";
+       libraryHaskellDepends = [ base ];
+       description = "Geometric Extrapolation of Integer Sequences with error prediction";
+       license = lib.licenses.mit;
      }) {};
 
   "PropLogic" = callPackage
@@ -16323,7 +16120,6 @@ self: {
        description = "A Perl 6 Implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Pup-Events" = callPackage
@@ -16344,7 +16140,6 @@ self: {
        description = "A networked event handling framework for hooking into other programs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Pup-Events-Client" = callPackage
@@ -16379,7 +16174,6 @@ self: {
        description = "A networked event handling framework for hooking into other programs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Pup-Events-PQueue" = callPackage
@@ -16519,7 +16313,6 @@ self: {
        description = "Programming with Eventual Consistency over Cassandra";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "QuickAnnotate" = callPackage
@@ -16763,7 +16556,6 @@ self: {
        description = "Binding to code that controls a Segway RMP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {canlib = null; ftd2xx = null;};
 
   "RNAFold" = callPackage
@@ -16787,7 +16579,6 @@ self: {
        description = "RNA secondary structure prediction";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RNAFoldProgs" = callPackage
@@ -16808,7 +16599,6 @@ self: {
        description = "RNA secondary structure folding";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RNAdesign" = callPackage
@@ -16835,7 +16625,6 @@ self: {
        description = "Multi-target RNA sequence design";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RNAdraw" = callPackage
@@ -16856,7 +16645,6 @@ self: {
        description = "Draw RNA secondary structures";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RNAlien" = callPackage
@@ -16890,7 +16678,6 @@ self: {
        description = "Unsupervized construction of RNA family models";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RNAwolf" = callPackage
@@ -16912,7 +16699,6 @@ self: {
        description = "RNA folding with non-canonical basepairs and base-triplets";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RSA" = callPackage
@@ -17080,7 +16866,6 @@ self: {
        description = "HTTP to XMPP omegle chats gate";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Rasenschach" = callPackage
@@ -17112,8 +16897,8 @@ self: {
      }:
      mkDerivation {
        pname = "Rasterific";
-       version = "0.7.5.3";
-       sha256 = "164ivzwrla90baqz6gapmcmi1yg5bk0sczqv4xawx3l7dzkz8ghv";
+       version = "0.7.5.4";
+       sha256 = "07silf2b85kxq7wvl5mnwrg5p0gwzlapipj9hi224i9ix1knn5f1";
        libraryHaskellDepends = [
          base bytestring containers dlist FontyFruity free JuicyPixels mtl
          primitive transformers vector vector-algorithms
@@ -17344,7 +17129,6 @@ self: {
        description = "quasiquoter for inline-R code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RollingDirectory" = callPackage
@@ -17370,7 +17154,6 @@ self: {
        description = "Limits the size of a directory's contents";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "RoyalMonad" = callPackage
@@ -17385,7 +17168,7 @@ self: {
      }) {};
 
   "RtMidi" = callPackage
-    ({ mkDerivation, alsaLib, base, deepseq, pretty-simple, tasty
+    ({ mkDerivation, alsa-lib, base, deepseq, pretty-simple, tasty
      , tasty-hunit, unliftio-core, vector
      }:
      mkDerivation {
@@ -17395,14 +17178,14 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base deepseq unliftio-core vector ];
-       librarySystemDepends = [ alsaLib ];
+       librarySystemDepends = [ alsa-lib ];
        executableHaskellDepends = [ base pretty-simple vector ];
        testHaskellDepends = [ base tasty tasty-hunit vector ];
        description = "Haskell wrapper for RtMidi, the lightweight, cross-platform MIDI I/O library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
        broken = true;
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "RxHaskell" = callPackage
     ({ mkDerivation, base, containers, stm, transformers }:
@@ -17436,7 +17219,6 @@ self: {
        description = "Library for accessing S3 compatible storage services";
        license = lib.licenses.gpl3Plus;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SBench" = callPackage
@@ -17455,7 +17237,6 @@ self: {
        description = "A benchmark suite for runtime and heap measurements over a series of inputs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SCRIPTWriter" = callPackage
@@ -17476,7 +17257,6 @@ self: {
        description = "ESCRIPT: a human friendly language for programming Bitcoin scripts";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SCalendar" = callPackage
@@ -17494,7 +17274,6 @@ self: {
        description = "This is a library for handling calendars and resource availability based on the \"top-nodes algorithm\" and set operations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SDL" = callPackage
@@ -17627,7 +17406,6 @@ self: {
        description = "Higher level library on top of SFML";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SFont" = callPackage
@@ -17640,7 +17418,6 @@ self: {
        description = "SFont SDL Bitmap Fonts";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SG" = callPackage
@@ -17668,7 +17445,6 @@ self: {
        description = "An example of using the SG and OpenGL libraries";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SGplus" = callPackage
@@ -17836,7 +17612,6 @@ self: {
        description = "STLink USB interface in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "STM32-Zombie" = callPackage
@@ -17854,7 +17629,6 @@ self: {
        description = "control a STM32F103 microcontroller";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "STM32F103xx-SVD" = callPackage
@@ -17917,7 +17691,6 @@ self: {
        description = "Code generation tool for Quartz code from a SVG";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SVGFonts" = callPackage
@@ -18105,7 +17878,6 @@ self: {
        description = "Scientific workflow management system";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SciFlow-drmaa" = callPackage
@@ -18123,7 +17895,6 @@ self: {
        description = "Scientific workflow management system";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ScratchFs" = callPackage
@@ -18163,7 +17934,6 @@ self: {
        description = "A cross platform P2P VPN application built using Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SecureHash-SHA3" = callPackage
@@ -18217,7 +17987,6 @@ self: {
        description = "Selects a representative subset of sequences from multiple sequence alignment";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Semantique" = callPackage
@@ -18298,6 +18067,34 @@ self: {
        broken = true;
      }) {};
 
+  "ShellCheck_0_7_1" = callPackage
+    ({ mkDerivation, aeson, array, base, bytestring, containers
+     , deepseq, Diff, directory, filepath, mtl, parsec, process
+     , QuickCheck, regex-tdfa
+     }:
+     mkDerivation {
+       pname = "ShellCheck";
+       version = "0.7.1";
+       sha256 = "06m4wh891nah3y0br4wh3adpsb16zawkb2ijgf1vcz61fznj6ps1";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec process QuickCheck regex-tdfa
+       ];
+       executableHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec QuickCheck regex-tdfa
+       ];
+       testHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec QuickCheck regex-tdfa
+       ];
+       description = "Shell script analysis tool";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ShellCheck" = callPackage
     ({ mkDerivation, aeson, array, base, bytestring, containers
      , deepseq, Diff, directory, filepath, mtl, parsec, process
@@ -18352,7 +18149,6 @@ self: {
        description = "\"compatline\" backend module for Shellac";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shellac-editline" = callPackage
@@ -18367,7 +18163,6 @@ self: {
        description = "Editline backend module for Shellac";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shellac-haskeline" = callPackage
@@ -18380,7 +18175,6 @@ self: {
        description = "Haskeline backend module for Shellac";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shellac-readline" = callPackage
@@ -18395,7 +18189,6 @@ self: {
        description = "Readline backend module for Shellac";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ShortestPathProblems" = callPackage
@@ -18417,7 +18210,6 @@ self: {
        description = "grammars for TSP and SHP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ShowF" = callPackage
@@ -18465,7 +18257,6 @@ self: {
        description = "A Virtual Dom in pure Haskell, based on Html as an Alignable Functor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-backend-snabbdom" = callPackage
@@ -18497,7 +18288,6 @@ self: {
        description = "A backend for rendering Shpadoinkle as Text";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-console" = callPackage
@@ -18544,7 +18334,6 @@ self: {
        description = "Chrome extension to aide in development";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-disembodied" = callPackage
@@ -18564,7 +18353,6 @@ self: {
        description = "Shpadoinkle as a static site";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-examples" = callPackage
@@ -18597,7 +18385,6 @@ self: {
        description = "Example usages of Shpadoinkle";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-html" = callPackage
@@ -18617,7 +18404,6 @@ self: {
        description = "A typed, template generated Html DSL, and helpers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-lens" = callPackage
@@ -18653,7 +18439,6 @@ self: {
        description = "A single page application rounter for Shpadoinkle based on Servant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-streaming" = callPackage
@@ -18688,7 +18473,6 @@ self: {
        description = "Read standard file formats into Shpadoinkle with Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shpadoinkle-widgets" = callPackage
@@ -18713,7 +18497,6 @@ self: {
        description = "A collection of common reusable types and components";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Shrub" = callPackage
@@ -18777,7 +18560,6 @@ self: {
        description = "A Simple Graphics Library from the SimpleH framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SimpleH" = callPackage
@@ -18815,7 +18597,6 @@ self: {
        description = "Simple, configurable logging";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SimpleServer" = callPackage
@@ -18837,7 +18618,6 @@ self: {
        description = "A simple static file server, for when apache is overkill";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SimpleTableGenerator" = callPackage
@@ -18916,7 +18696,6 @@ self: {
        description = "A tiny, lazy SMT solver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SmtLib" = callPackage
@@ -18953,7 +18732,6 @@ self: {
        description = "E-library directory based on FUSE virtual file system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zip;};
 
   "SoOSiM" = callPackage
@@ -18992,7 +18770,6 @@ self: {
        description = "Football simulation framework for teaching functional programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SoccerFunGL" = callPackage
@@ -19013,7 +18790,6 @@ self: {
        description = "OpenGL UI for the SoccerFun framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Sonnex" = callPackage
@@ -19047,7 +18823,6 @@ self: {
        description = "Static code analysis using graph-theoretic techniques";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Southpaw" = callPackage
@@ -19117,7 +18892,6 @@ self: {
        description = "Lock free Spin Counter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Spintax" = callPackage
@@ -19209,7 +18983,6 @@ self: {
        description = "Provides authentification helpers for Spock";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Spock-core" = callPackage
@@ -19266,7 +19039,6 @@ self: {
        description = "Lucid support for Spock";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Spock-worker" = callPackage
@@ -19285,7 +19057,6 @@ self: {
        description = "Background workers for Spock";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "SpreadsheetML" = callPackage
@@ -19389,7 +19160,6 @@ self: {
        description = "Libary for Stockholm aligmnent format";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Stomp" = callPackage
@@ -19440,7 +19210,6 @@ self: {
        description = "Converts SDF to Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Strafunski-StrategyLib" = callPackage
@@ -19604,7 +19373,6 @@ self: {
        description = "Syntax Macros in the form of an EDSL";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Sysmon" = callPackage
@@ -19739,8 +19507,6 @@ self: {
        libraryHaskellDepends = [ base DeepArrow TypeCompose ];
        description = "Tangible Values -- composable interfaces";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TYB" = callPackage
@@ -19885,19 +19651,18 @@ self: {
 
   "Taxonomy" = callPackage
     ({ mkDerivation, aeson, base, bytestring, either-unwrap, fgl
-     , parsec, text, vector
+     , graphviz, parsec, text, vector
      }:
      mkDerivation {
        pname = "Taxonomy";
-       version = "2.1.0";
-       sha256 = "1l64ma631q1gh57gwg09mpxz66hkhqbc9f9dn2bhy681p8ia7j50";
+       version = "2.2.0";
+       sha256 = "0rwm3p510k5nmzbdy8bxdviv37mba0bvygxq92f24wqb5gry8w9w";
        libraryHaskellDepends = [
-         aeson base bytestring either-unwrap fgl parsec text vector
+         aeson base bytestring either-unwrap fgl graphviz parsec text vector
        ];
        description = "Libary for parsing, processing and vizualization of taxonomy data";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TaxonomyTools" = callPackage
@@ -19918,7 +19683,6 @@ self: {
        description = "Tool for parsing, processing, comparing and visualizing taxonomy data";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TeX-my-math" = callPackage
@@ -19928,10 +19692,8 @@ self: {
      }:
      mkDerivation {
        pname = "TeX-my-math";
-       version = "0.202.1.0";
-       sha256 = "1cp3spzlssnnzvnxvkg59h4nnv2icvld9mdkhn97b043kvmbp4hl";
-       revision = "2";
-       editedCabalFile = "1j3nbbljj89mhhcld7dzgmixilfikwng05zcndsisnz75r1kp1gv";
+       version = "0.202.2.0";
+       sha256 = "1w074jr2qr603hjh644cvlc0n1miaz10r8mhkskq39jn184kriyl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -19948,7 +19710,6 @@ self: {
        description = "Render general Haskell math to LaTeX. Or: math typesetting with high signal-to-noise–ratio.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TeaHS" = callPackage
@@ -19965,7 +19726,6 @@ self: {
        description = "TeaHS Game Creation Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Tensor" = callPackage
@@ -20063,6 +19823,7 @@ self: {
        description = "Haskell bindings for the Apache Thrift RPC system";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "Tic-Tac-Toe" = callPackage
@@ -20295,7 +20056,6 @@ self: {
        description = "Wait-free Tree Counter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TreeStructures" = callPackage
@@ -20332,7 +20092,6 @@ self: {
        description = "Lock free Treiber stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TrendGraph" = callPackage
@@ -20369,7 +20128,6 @@ self: {
        description = "Automatic type inference of generalized tries with Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Twofish" = callPackage
@@ -20409,7 +20167,6 @@ self: {
        description = "Typing speed game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TypeCompose" = callPackage
@@ -20437,7 +20194,6 @@ self: {
        description = "TypeIlluminator is a prototype tool exploring debugging of type errors/";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "TypeNat" = callPackage
@@ -20497,7 +20253,6 @@ self: {
        description = "A small command-line accounting tool";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "URLT" = callPackage
@@ -20516,7 +20271,6 @@ self: {
        description = "Library for maintaining correctness of URLs within an application";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "URLb" = callPackage
@@ -20603,6 +20357,9 @@ self: {
        libraryHaskellDepends = [ base unix ];
        description = "A simple interface to shadow passwords (aka, shadow.h)";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "Updater" = callPackage
@@ -20628,7 +20385,6 @@ self: {
        description = "Url dispatcher. Helps to retain friendly URLs in web applications.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Useful" = callPackage
@@ -20844,7 +20600,6 @@ self: {
        description = "ViennaRNA v2 extensions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ViennaRNAParser" = callPackage
@@ -20917,7 +20672,8 @@ self: {
        ];
        description = "Bindings to the VulkanMemoryAllocator library";
        license = lib.licenses.bsd3;
-       platforms = [ "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [ "aarch64-linux" "x86_64-linux" ];
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "WAVE" = callPackage
@@ -20935,7 +20691,6 @@ self: {
        description = "WAVE audio file IO library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WEditor" = callPackage
@@ -20966,7 +20721,6 @@ self: {
        description = "Text-editor widget with dynamic line-wrapping for use with Brick";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WEditorHyphen" = callPackage
@@ -20980,7 +20734,6 @@ self: {
        description = "Language-specific hyphenation policies for WEditor";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WL500gPControl" = callPackage
@@ -20998,7 +20751,6 @@ self: {
        description = "A simple command line tools to control the Asus WL500gP router";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WL500gPLib" = callPackage
@@ -21048,7 +20800,6 @@ self: {
        description = "Convert the WURFL file into a Parsec parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WXDiffCtrl" = callPackage
@@ -21062,7 +20813,6 @@ self: {
        description = "WXDiffCtrl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WashNGo" = callPackage
@@ -21082,7 +20832,6 @@ self: {
        description = "WASH is a family of EDSLs for programming Web applications in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WaveFront" = callPackage
@@ -21100,7 +20849,6 @@ self: {
        description = "Parsers and utilities for the OBJ WaveFront 3D model format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Weather" = callPackage
@@ -21145,7 +20893,6 @@ self: {
        description = "JavaScript analysis tools";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WebBits-multiplate" = callPackage
@@ -21163,7 +20910,6 @@ self: {
        description = "A Multiplate instance for JavaScript";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WebCont" = callPackage
@@ -21183,7 +20929,6 @@ self: {
        description = "Continuation based web programming for Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WeberLogic" = callPackage
@@ -21489,7 +21234,6 @@ self: {
        description = "Bigram word pair alignments";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "WordNet" = callPackage
@@ -21571,7 +21315,6 @@ self: {
        description = "Generic (SYB3) construction of wxHaskell widgets";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "X" = callPackage
@@ -21607,6 +21350,25 @@ self: {
          inherit (pkgs.xorg) libXext; inherit (pkgs.xorg) libXinerama; 
          inherit (pkgs.xorg) libXrandr; inherit (pkgs.xorg) libXrender;};
 
+  "X11_1_10" = callPackage
+    ({ mkDerivation, base, data-default-class, libX11, libXext
+     , libXinerama, libXrandr, libXrender, libXScrnSaver
+     }:
+     mkDerivation {
+       pname = "X11";
+       version = "1.10";
+       sha256 = "1zrdqryx99izjvsrsalb65ihpmikm9r6cjlci7cfp6wlwa3i585n";
+       libraryHaskellDepends = [ base data-default-class ];
+       librarySystemDepends = [
+         libX11 libXext libXinerama libXrandr libXrender libXScrnSaver
+       ];
+       description = "A binding to the X11 graphics library";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {inherit (pkgs.xorg) libX11; inherit (pkgs.xorg) libXScrnSaver; 
+         inherit (pkgs.xorg) libXext; inherit (pkgs.xorg) libXinerama; 
+         inherit (pkgs.xorg) libXrandr; inherit (pkgs.xorg) libXrender;};
+
   "X11-extras" = callPackage
     ({ mkDerivation, base, libX11, X11 }:
      mkDerivation {
@@ -21772,7 +21534,6 @@ self: {
        description = "XMPP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "XSaiga" = callPackage
@@ -21800,7 +21561,6 @@ self: {
        description = "An implementation of a polynomial-time top-down parser suitable for NLP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Xauth" = callPackage
@@ -21880,7 +21640,6 @@ self: {
        description = "Yet Another Pong Clone using SDL";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "YFrob" = callPackage
@@ -21929,7 +21688,6 @@ self: {
        description = "A simple blog engine powered by Yesod";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "YamlReference" = callPackage
@@ -22036,7 +21794,6 @@ self: {
        description = "A MUD client library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Yogurt-Standalone" = callPackage
@@ -22057,9 +21814,31 @@ self: {
        description = "A functional MUD client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) readline;};
 
+  "Z-Botan" = callPackage
+    ({ mkDerivation, base, Cabal, directory, filepath, ghc-prim, hspec
+     , hspec-discover, HUnit, integer-gmp, QuickCheck
+     , quickcheck-instances, scientific, stm, time, Z-Data, Z-IO
+     }:
+     mkDerivation {
+       pname = "Z-Botan";
+       version = "0.3.1.0";
+       sha256 = "0920pzs9q105h32d7yp83bblhq0id5vzzw3d2pysg4dd127933xc";
+       enableSeparateDataOutput = true;
+       setupHaskellDepends = [ base Cabal directory filepath ];
+       libraryHaskellDepends = [
+         base ghc-prim integer-gmp scientific stm time Z-Data Z-IO
+       ];
+       libraryToolDepends = [ hspec-discover ];
+       testHaskellDepends = [
+         base hspec HUnit QuickCheck quickcheck-instances Z-Data Z-IO
+       ];
+       description = "Crypto for Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "Z-Data" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, case-insensitive
      , containers, deepseq, ghc-prim, hashable, hspec, hspec-discover
@@ -22068,8 +21847,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-Data";
-       version = "0.8.1.0";
-       sha256 = "19w5g5flsjnhjpvnmw7s8b5jg5nlpg0md99zgp3by8gjyigappc7";
+       version = "0.8.3.0";
+       sha256 = "1y8vgz3jps2vsg5ay9s792knfyk5cvc6549q5li51jaqibsrw99m";
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [
          base bytestring case-insensitive containers deepseq ghc-prim
@@ -22096,8 +21875,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-IO";
-       version = "0.7.1.0";
-       sha256 = "18d2q9fg4ydqpnrzvpcx1arjv4yl2966aax68fz3izgmsbp95k0l";
+       version = "0.8.1.0";
+       sha256 = "08nw9jxg2n8yls5p1dhyy976qbcj5kwv468fq1dijn91f7ylhfix";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -22113,7 +21892,6 @@ self: {
        description = "Simple and high performance IO toolkit for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Z-MessagePack" = callPackage
@@ -22124,8 +21902,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-MessagePack";
-       version = "0.4.0.1";
-       sha256 = "1i1ycf1bhahbh7d9rvz4hl5jq16mld8sya2h2xrxlvg9yqab19hy";
+       version = "0.4.1.0";
+       sha256 = "0sq4w488dyhk3nxgdw394i9n79j45hhxp3yzgw2fpmjh9xwfv1m9";
        libraryHaskellDepends = [
          base containers deepseq hashable integer-gmp primitive QuickCheck
          scientific tagged time unordered-containers Z-Data Z-IO
@@ -22139,7 +21917,6 @@ self: {
        description = "MessagePack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "Z-YAML" = callPackage
@@ -22148,8 +21925,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-YAML";
-       version = "0.3.2.0";
-       sha256 = "01v0vza54lpxijg4znp2pcnjw2z6ybvx453xqy7ljwf9289csfq8";
+       version = "0.3.3.0";
+       sha256 = "012flgd88rwya7g5lkbla4841pzq2b1b9m4jkmggk38kpbrhf515";
        libraryHaskellDepends = [
          base primitive scientific transformers unordered-containers Z-Data
          Z-IO
@@ -22158,7 +21935,6 @@ self: {
        description = "YAML tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ZEBEDDE" = callPackage
@@ -22278,7 +22054,6 @@ self: {
        description = "Compare genome assemblies";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "abacate" = callPackage
@@ -22333,7 +22108,6 @@ self: {
        description = "Bindings for ABC, A System for Sequential Synthesis and Verification";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {abc = null;};
 
   "abcnotation" = callPackage
@@ -22506,7 +22280,6 @@ self: {
        description = "Drive Aho-Corasick machines in Conduit pipelines";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "acc" = callPackage
@@ -22574,7 +22347,6 @@ self: {
        description = "Linear algebra and interpolation using the Accelerate framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "accelerate-bignum" = callPackage
@@ -22814,7 +22586,6 @@ self: {
        description = "Fast Fourier transform and convolution using the Accelerate framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "accelerate-fourier-benchmark" = callPackage
@@ -23092,7 +22863,6 @@ self: {
        description = "a typesafe way encode accelerate matrices and vectors";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "accelerate-utility" = callPackage
@@ -23159,7 +22929,6 @@ self: {
        description = "Provides Access Token for Services";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "accuerr" = callPackage
@@ -23610,6 +23379,8 @@ self: {
        libraryHaskellDepends = [ base MemoTrie random ];
        description = "Memoized random number generation";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "acme-microwave" = callPackage
@@ -23735,7 +23506,6 @@ self: {
        description = "The flexibility of Haskell and the safety of PHP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "acme-pointful-numbers" = callPackage
@@ -23892,6 +23662,8 @@ self: {
        libraryHaskellDepends = [ array base random ];
        description = "A somewhat flexible Zalgo̐ te̳͜x̥̖̉̓͞t̍̌̔ ̀̃t̴̢̞̜͓̝r̶̬̆̂̒͟á̧̡͎͔̯̰̕n̹̾̓ͬͦ̍͘ṡ̢͓͉ͮ͆l̠̖̹̗̳̖̽̌ͤ͞a͚̭͙̹̲ͭͩt͈͐o̢̭͇͍̟͐ͬ̾ͪ͜r͇.̸̅ͭ̐̀̊ͨ͛";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "acme-zero" = callPackage
@@ -23929,7 +23701,6 @@ self: {
        description = "AcousticBrainz API client";
        license = lib.licenses.cc0;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "acquire" = callPackage
@@ -23960,10 +23731,8 @@ self: {
      }:
      mkDerivation {
        pname = "active";
-       version = "0.2.0.14";
-       sha256 = "0x3b4ln6csa554qls28wbxvclkbdz3yi60i1m0q5ing0cs16fifz";
-       revision = "1";
-       editedCabalFile = "01j431dkl3ax98g974v6mgxv9xha4c0hlpjqq5fvh7l8lyjan676";
+       version = "0.2.0.15";
+       sha256 = "019xr66pahsssqr2hybs88mga4qshv1vmd22j7624wqafqm57d74";
        libraryHaskellDepends = [
          base lens linear semigroupoids semigroups vector
        ];
@@ -24001,7 +23770,6 @@ self: {
        description = "Haskell code presentation tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "activehs-base" = callPackage
@@ -24058,7 +23826,6 @@ self: {
        description = "Actors with multi-headed receive clauses";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "acts" = callPackage
@@ -24151,8 +23918,8 @@ self: {
      }:
      mkDerivation {
        pname = "adblock2privoxy";
-       version = "2.0.1";
-       sha256 = "048l78mf3ccb7l0p1zg1wsvqmvpsaqwgik29xm333y7fjlcm0kq6";
+       version = "2.0.2";
+       sha256 = "0klw0rbxp5g240igrv10808inqmlh3wr3d46zphy5xjxjih07yf3";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -24198,7 +23965,6 @@ self: {
        description = "A full-featured library for parsing, validating, and rendering email addresses";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "adhoc-network" = callPackage
@@ -24217,7 +23983,6 @@ self: {
        description = "Ad-hoc P2P network protocol";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "adict" = callPackage
@@ -24240,7 +24005,6 @@ self: {
        description = "Approximate dictionary searching";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "adjunction" = callPackage
@@ -24358,7 +24122,6 @@ self: {
        description = "Subword construction in adp-multi using monadiccp";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "adtrees" = callPackage
@@ -24394,8 +24157,6 @@ self: {
        testHaskellDepends = [ base directory filepath HUnit text ];
        description = "Advent of Code REST API bindings and servant API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "advent-of-code-ocr" = callPackage
@@ -24430,19 +24191,45 @@ self: {
      }) {};
 
   "aern2-mp" = callPackage
-    ({ mkDerivation, base, convertible, hspec, integer-logarithms, lens
-     , mixed-types-num, QuickCheck, regex-tdfa, rounded
-     , template-haskell
+    ({ mkDerivation, base, cdar-mBound, collect-errors, deepseq, hspec
+     , integer-logarithms, mixed-types-num, QuickCheck, reflection
+     , regex-tdfa, template-haskell
      }:
      mkDerivation {
        pname = "aern2-mp";
-       version = "0.1.4";
-       sha256 = "1q4ygvpxndvj0lsxb7aqw754nkxj1r2037f263g79vpjczkzzfwf";
+       version = "0.2.6.0";
+       sha256 = "0vfjgcf2pnspaixgxg8av7k0cqv5cqmy161zkgjr822n118an1ch";
        libraryHaskellDepends = [
-         base convertible hspec integer-logarithms lens mixed-types-num
-         QuickCheck regex-tdfa rounded template-haskell
+         base cdar-mBound collect-errors deepseq hspec integer-logarithms
+         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
+       ];
+       testHaskellDepends = [
+         base cdar-mBound collect-errors deepseq hspec integer-logarithms
+         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
+       ];
+       description = "Multi-precision ball (interval) arithmetic";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "aern2-mp_0_2_7_0" = callPackage
+    ({ mkDerivation, base, cdar-mBound, collect-errors, deepseq, hspec
+     , integer-logarithms, mixed-types-num, QuickCheck, reflection
+     , regex-tdfa, template-haskell
+     }:
+     mkDerivation {
+       pname = "aern2-mp";
+       version = "0.2.7.0";
+       sha256 = "1gsqaggg6mpcpl9s3z566gmbynj4l6n1fhni5b0p8pf5hj8n93gg";
+       libraryHaskellDepends = [
+         base cdar-mBound collect-errors deepseq hspec integer-logarithms
+         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
+       ];
+       testHaskellDepends = [
+         base cdar-mBound collect-errors deepseq hspec integer-logarithms
+         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
        ];
-       testHaskellDepends = [ base hspec QuickCheck ];
        description = "Multi-precision ball (interval) arithmetic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -24450,28 +24237,45 @@ self: {
      }) {};
 
   "aern2-real" = callPackage
-    ({ mkDerivation, aern2-mp, aeson, base, bytestring, containers
-     , convertible, hspec, lens, mixed-types-num, QuickCheck, random
-     , stm, transformers
+    ({ mkDerivation, aern2-mp, base, collect-errors, hspec
+     , integer-logarithms, mixed-types-num, QuickCheck
      }:
      mkDerivation {
        pname = "aern2-real";
-       version = "0.1.2";
-       sha256 = "1br2glj89xcm3iyb32yi1xwgzkva9mmvl9gih38kgg4ldidflvn8";
-       isLibrary = true;
-       isExecutable = true;
+       version = "0.2.6.0";
+       sha256 = "182vjrbdzjcpbbhmpsmv6i685jrnw94vda37646d1gph5v3hvfw6";
        libraryHaskellDepends = [
-         aern2-mp aeson base bytestring containers convertible hspec lens
-         mixed-types-num QuickCheck stm transformers
+         aern2-mp base collect-errors hspec integer-logarithms
+         mixed-types-num QuickCheck
        ];
-       executableHaskellDepends = [
-         aern2-mp base mixed-types-num QuickCheck random
+       testHaskellDepends = [
+         aern2-mp base collect-errors hspec integer-logarithms
+         mixed-types-num QuickCheck
        ];
-       testHaskellDepends = [ base hspec QuickCheck ];
-       description = "Exact real numbers via Cauchy sequences and MPFR";
+       description = "Real numbers as sequences of MPBalls";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "aern2-real_0_2_7_0" = callPackage
+    ({ mkDerivation, aern2-mp, base, collect-errors, hspec
+     , integer-logarithms, mixed-types-num, QuickCheck
+     }:
+     mkDerivation {
+       pname = "aern2-real";
+       version = "0.2.7.0";
+       sha256 = "0dsph1775rifr9vvx4w7v55bryqmh04fhk6nyk7d91yhn1sf6wc9";
+       libraryHaskellDepends = [
+         aern2-mp base collect-errors hspec integer-logarithms
+         mixed-types-num QuickCheck
+       ];
+       testHaskellDepends = [
+         aern2-mp base collect-errors hspec integer-logarithms
+         mixed-types-num QuickCheck
+       ];
+       description = "Real numbers as sequences of MPBalls";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aeson" = callPackage
@@ -24786,8 +24590,6 @@ self: {
        ];
        description = "Extra goodies for aeson";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aeson-filthy" = callPackage
@@ -24932,8 +24734,6 @@ self: {
        ];
        description = "Injecting fields into aeson values";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aeson-iproute" = callPackage
@@ -25020,7 +24820,6 @@ self: {
        description = "Fast JSON parsing and encoding (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aeson-optics" = callPackage
@@ -25340,20 +25139,21 @@ self: {
 
   "aeson-typescript" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, hspec, interpolate, mtl, process, template-haskell
-     , temporary, text, th-abstraction, unordered-containers
+     , filepath, hspec, mtl, process, string-interpolate
+     , template-haskell, temporary, text, th-abstraction
+     , unordered-containers
      }:
      mkDerivation {
        pname = "aeson-typescript";
-       version = "0.2.0.0";
-       sha256 = "15w28x2b8h402fic5agq96g51ssryvd7q3zs22n5mz9aa43qlphw";
+       version = "0.3.0.1";
+       sha256 = "0xbj6m1lxpv4qclz5msrdplpy3mdxq5icjl3fq4bwbqy5rs6vczv";
        libraryHaskellDepends = [
-         aeson base containers interpolate mtl template-haskell text
+         aeson base containers mtl string-interpolate template-haskell text
          th-abstraction unordered-containers
        ];
        testHaskellDepends = [
-         aeson base bytestring containers directory filepath hspec
-         interpolate mtl process template-haskell temporary text
+         aeson base bytestring containers directory filepath hspec mtl
+         process string-interpolate template-haskell temporary text
          th-abstraction unordered-containers
        ];
        description = "Generate TypeScript definition files from your ADTs";
@@ -25569,7 +25369,6 @@ self: {
        description = "Infinite state model checking of iterative C programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ag-pictgen" = callPackage
@@ -25611,6 +25410,8 @@ self: {
        ];
        description = "LSP server for Agda";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "agda-server" = callPackage
@@ -25632,7 +25433,6 @@ self: {
        description = "Http server for Agda (prototype)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "agda-snippets" = callPackage
@@ -25672,31 +25472,28 @@ self: {
        description = "Literate Agda support using agda-snippets, for Hakyll pages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "agda-unused" = callPackage
     ({ mkDerivation, aeson, Agda, base, containers, directory, filepath
-     , hspec, megaparsec, mtl, optparse-applicative, text
+     , hspec, mtl, optparse-applicative, text
      }:
      mkDerivation {
        pname = "agda-unused";
-       version = "0.1.0";
-       sha256 = "1g0iyv9x46ql8j9ggb6nw58274vqb6z850x26glaqcdwa3wvn1i1";
+       version = "0.2.0";
+       sha256 = "0fxrmcc0kn3jyjbij2fv72pw0r1l2rvg8wglj1i8d438jqpffigw";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         Agda base containers directory filepath megaparsec mtl text
+         Agda base containers directory filepath mtl text
        ];
        executableHaskellDepends = [
-         aeson base directory filepath mtl optparse-applicative text
+         aeson base directory mtl optparse-applicative text
        ];
        testHaskellDepends = [ base containers filepath hspec text ];
        description = "Check for unused code in an Agda project";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "agda2lagda" = callPackage
@@ -25714,6 +25511,26 @@ self: {
        license = lib.licenses.publicDomain;
      }) {};
 
+  "agda2lagda_0_2021_6_1" = callPackage
+    ({ mkDerivation, base, directory, filepath, goldplate
+     , optparse-applicative, process
+     }:
+     mkDerivation {
+       pname = "agda2lagda";
+       version = "0.2021.6.1";
+       sha256 = "1108xzl4fv86qpasg1wbc26bypd06s41kmgzybrggc76pv15hbis";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base directory filepath optparse-applicative
+       ];
+       testHaskellDepends = [ base process ];
+       testToolDepends = [ goldplate ];
+       description = "Translate .agda files into .lagda.tex files.";
+       license = lib.licenses.publicDomain;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "agentx" = callPackage
     ({ mkDerivation, base, binary, bitwise, bytestring, containers
      , data-default, Diff, fclabels, mtl, network, pipes
@@ -25734,7 +25551,6 @@ self: {
        description = "AgentX protocol for write SNMP subagents";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "agum" = callPackage
@@ -25798,7 +25614,6 @@ self: {
        description = "Aeronautical Information Package (AIP)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "air" = callPackage
@@ -25906,7 +25721,6 @@ self: {
        description = "A Webmachine-inspired HTTP library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "airtable-api" = callPackage
@@ -25975,7 +25789,6 @@ self: {
        description = "Parallel distributed discrete event simulation module for the Aivika library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aivika-experiment" = callPackage
@@ -26041,8 +25854,6 @@ self: {
        ];
        description = "Diagrams-based charting backend for the Aivika simulation library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aivika-gpss" = callPackage
@@ -26398,7 +26209,6 @@ self: {
        description = "Model and test API surfaces algebraically";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "algebra-dag" = callPackage
@@ -26435,7 +26245,6 @@ self: {
        description = "Companion library for the book Algebra-Driven Design by Sandy Maguire";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "algebra-sql" = callPackage
@@ -26463,7 +26272,6 @@ self: {
        description = "Relational Algebra and SQL Code Generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "algebraic" = callPackage
@@ -26605,7 +26413,6 @@ self: {
        description = "A client implementing the Algolia search API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "algorithmic-composition-additional" = callPackage
@@ -26837,7 +26644,6 @@ self: {
        description = "a practical affine language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "alpaca-netcode" = callPackage
@@ -26876,7 +26682,6 @@ self: {
        description = "A compiler for the Alpha language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "alphachar" = callPackage
@@ -26925,7 +26730,7 @@ self: {
      }) {};
 
   "alsa" = callPackage
-    ({ mkDerivation, alsaLib, array, base, extensible-exceptions
+    ({ mkDerivation, alsa-lib, array, base, extensible-exceptions
      , sample-frame
      }:
      mkDerivation {
@@ -26935,27 +26740,27 @@ self: {
        libraryHaskellDepends = [
          array base extensible-exceptions sample-frame
        ];
-       librarySystemDepends = [ alsaLib ];
+       librarySystemDepends = [ alsa-lib ];
        description = "Binding to the ALSA Library API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
        broken = true;
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-core" = callPackage
-    ({ mkDerivation, alsaLib, base, extensible-exceptions }:
+    ({ mkDerivation, alsa-lib, base, extensible-exceptions }:
      mkDerivation {
        pname = "alsa-core";
        version = "0.5.0.1";
        sha256 = "1avh4a419h9d2zsslg6j8hm87ppgsgqafz8ll037rk2yy1g4jl7b";
        libraryHaskellDepends = [ base extensible-exceptions ];
-       libraryPkgconfigDepends = [ alsaLib ];
+       libraryPkgconfigDepends = [ alsa-lib ];
        description = "Binding to the ALSA Library API (Exceptions)";
        license = lib.licenses.bsd3;
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-gui" = callPackage
     ({ mkDerivation, alsa-core, alsa-seq, base, midi, midi-alsa, wx
@@ -26973,11 +26778,10 @@ self: {
        description = "Some simple interactive programs for sending MIDI control messages via ALSA";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "alsa-midi" = callPackage
-    ({ mkDerivation, alsaLib, array, base, event-list, midi
+    ({ mkDerivation, alsa-lib, array, base, event-list, midi
      , non-negative
      }:
      mkDerivation {
@@ -26990,32 +26794,32 @@ self: {
        libraryHaskellDepends = [
          array base event-list midi non-negative
        ];
-       librarySystemDepends = [ alsaLib ];
-       executableSystemDepends = [ alsaLib ];
+       librarySystemDepends = [ alsa-lib ];
+       executableSystemDepends = [ alsa-lib ];
        description = "Bindings for the ALSA sequencer API (MIDI stuff)";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
        broken = true;
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-mixer" = callPackage
-    ({ mkDerivation, alsa-core, alsaLib, base, c2hs, unix }:
+    ({ mkDerivation, alsa-core, alsa-lib, base, c2hs, unix }:
      mkDerivation {
        pname = "alsa-mixer";
        version = "0.3.0";
        sha256 = "00ny2p3276jilidjs44npc8zmbhynz3f2lpmlwwl6swwx5yijsnb";
        libraryHaskellDepends = [ alsa-core base unix ];
-       librarySystemDepends = [ alsaLib ];
+       librarySystemDepends = [ alsa-lib ];
        libraryToolDepends = [ c2hs ];
        description = "Bindings to the ALSA simple mixer API";
        license = lib.licenses.bsd3;
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-pcm" = callPackage
-    ({ mkDerivation, alsa-core, alsaLib, array, base
+    ({ mkDerivation, alsa-core, alsa-lib, array, base
      , extensible-exceptions, sample-frame, semigroups, storable-record
      }:
      mkDerivation {
@@ -27028,13 +26832,13 @@ self: {
          alsa-core array base extensible-exceptions sample-frame semigroups
          storable-record
        ];
-       libraryPkgconfigDepends = [ alsaLib ];
+       libraryPkgconfigDepends = [ alsa-lib ];
        description = "Binding to the ALSA Library API (PCM audio)";
        license = lib.licenses.bsd3;
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-pcm-tests" = callPackage
     ({ mkDerivation, alsa, base }:
@@ -27048,11 +26852,10 @@ self: {
        description = "Tests for the ALSA audio signal library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "alsa-seq" = callPackage
-    ({ mkDerivation, alsa-core, alsaLib, array, base, bytestring
+    ({ mkDerivation, alsa-core, alsa-lib, array, base, bytestring
      , data-accessor, enumset, extensible-exceptions, poll, transformers
      , utility-ht
      }:
@@ -27066,13 +26869,13 @@ self: {
          alsa-core array base bytestring data-accessor enumset
          extensible-exceptions poll transformers utility-ht
        ];
-       libraryPkgconfigDepends = [ alsaLib ];
+       libraryPkgconfigDepends = [ alsa-lib ];
        description = "Binding to the ALSA Library API (MIDI sequencer)";
        license = lib.licenses.bsd3;
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-     }) {inherit (pkgs) alsaLib;};
+     }) {inherit (pkgs) alsa-lib;};
 
   "alsa-seq-tests" = callPackage
     ({ mkDerivation, alsa, base }:
@@ -27086,7 +26889,6 @@ self: {
        description = "Tests for the ALSA sequencer library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "altcomposition" = callPackage
@@ -27272,7 +27074,6 @@ self: {
        description = "Client library for amazon-emailer daemon";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "amazon-products" = callPackage
@@ -28155,8 +27956,6 @@ self: {
        ];
        description = "Amazon Elastic Compute Cloud SDK";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "amazonka-ecr" = callPackage
@@ -29268,8 +29067,6 @@ self: {
        ];
        description = "Provides conduits to upload data to S3 using the Multipart API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "amazonka-sagemaker" = callPackage
@@ -29791,7 +29588,6 @@ self: {
        description = "Toolsuite for automated design of business processes";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "amqp" = callPackage
@@ -29858,7 +29654,6 @@ self: {
        description = "A simple streamly wrapper for amqp";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "amqp-utils" = callPackage
@@ -29868,8 +29663,8 @@ self: {
      }:
      mkDerivation {
        pname = "amqp-utils";
-       version = "0.6.1.0";
-       sha256 = "0h0mjgaiyhhx8y6zd3zxm1jzd0vgc6crq3980l5cal0zv6vs9zc1";
+       version = "0.6.1.1";
+       sha256 = "1lffc76ybvk73k57qn5m6788m2nkfsqavs7mfs1kaqw38pya940c";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -29983,7 +29778,6 @@ self: {
        description = "Client for analyze service";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "anansi" = callPackage
@@ -30065,7 +29859,6 @@ self: {
        description = "Anatomy: Atomo documentation system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "android" = callPackage
@@ -30250,7 +30043,6 @@ self: {
        description = "Animation for sprites";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "animate-frames" = callPackage
@@ -30273,7 +30065,6 @@ self: {
        description = "Convert sprite frames to animate files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "animate-preview" = callPackage
@@ -30300,7 +30091,6 @@ self: {
        description = "Preview tool for sprite animation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "animate-sdl2" = callPackage
@@ -30313,7 +30103,6 @@ self: {
        description = "sdl2 + animate auxiliary library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "anki-tools" = callPackage
@@ -30358,7 +30147,7 @@ self: {
        description = "Medium-level language that desugars to Morte";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "annihilator" = callPackage
@@ -30421,7 +30210,6 @@ self: {
        description = "QuickCheck functions to accompany the anonymous-sums package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ansi-escape-codes" = callPackage
@@ -30491,8 +30279,6 @@ self: {
        ];
        description = "sdl-like functions for terminal applications, based on ansi-terminal";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ansi-wl-pprint" = callPackage
@@ -30550,7 +30336,6 @@ self: {
        description = "A web interface to Antisplice dungeons";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antfarm" = callPackage
@@ -30601,7 +30386,6 @@ self: {
        description = "This is an IRC bot for Mafia and Resistance";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antigate" = callPackage
@@ -30658,8 +30442,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-contract" = callPackage
@@ -30673,8 +30455,6 @@ self: {
        ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-core" = callPackage
@@ -30701,8 +30481,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-dynamodb" = callPackage
@@ -30725,8 +30503,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-es" = callPackage
@@ -30746,8 +30522,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-messages" = callPackage
@@ -30772,8 +30546,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-optparse-applicative" = callPackage
@@ -30825,8 +30597,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-shell" = callPackage
@@ -30856,8 +30626,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-sns" = callPackage
@@ -30881,8 +30649,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-sqs" = callPackage
@@ -30909,8 +30675,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Please see the README on Github at <https://github.com/arbor/antiope#readme>";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "antiope-swf" = callPackage
@@ -31016,7 +30780,6 @@ self: {
        description = "Haskell binding to the ANTLR parser generator C runtime library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {antlr3c = null;};
 
   "anydbm" = callPackage
@@ -31040,8 +30803,8 @@ self: {
     ({ mkDerivation, base, ghc-prim, integer-gmp }:
      mkDerivation {
        pname = "aop-prelude";
-       version = "0.4.0.0";
-       sha256 = "0jg572zz9lbhpp4bxldrc0gs0ac0f4hfcrxds77gr51xizxfa7cn";
+       version = "0.4.1.0";
+       sha256 = "1ha39yfmiw61g907h83wsjw9zyvvkzi7zbr3y9dcciv2cgnb5h6a";
        libraryHaskellDepends = [ base ghc-prim integer-gmp ];
        testHaskellDepends = [ base ghc-prim ];
        description = "prelude for Algebra of Programming";
@@ -31098,8 +30861,8 @@ self: {
     ({ mkDerivation, base, inspection-testing, transformers }:
      mkDerivation {
        pname = "ap-normalize";
-       version = "0.1.0.0";
-       sha256 = "0iqfilamnp0k170af7sw0ydn0cmba7ab06yinkl8vfppf583a4la";
+       version = "0.1.0.1";
+       sha256 = "1212zxc4qn6msk0w13yhrza2qjs79h78misllb4chng75jqi61l2";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base inspection-testing transformers ];
        description = "Self-normalizing applicative expressions";
@@ -31265,7 +31028,6 @@ self: {
        description = "Server and community browser for the game Tremulous";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "api-builder" = callPackage
@@ -31418,7 +31180,6 @@ self: {
        description = "simple json-rpc client for PegNet";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "api-tools" = callPackage
@@ -31453,8 +31214,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion text time ];
        description = "DSL for generating API boilerplate and docs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "api-yoti" = callPackage
@@ -31476,7 +31235,6 @@ self: {
        description = "Api bindings for Yoti services";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary" = callPackage
@@ -31510,7 +31268,6 @@ self: {
        description = "Simple and type safe web framework that generate web API documentation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-authenticate" = callPackage
@@ -31531,7 +31288,6 @@ self: {
        description = "authenticate support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-clientsession" = callPackage
@@ -31550,7 +31306,6 @@ self: {
        description = "clientsession support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-cookie" = callPackage
@@ -31567,7 +31322,6 @@ self: {
        description = "Cookie support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-eventsource" = callPackage
@@ -31580,7 +31334,6 @@ self: {
        description = "eventsource support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-helics" = callPackage
@@ -31601,7 +31354,6 @@ self: {
        description = "helics support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-http-client" = callPackage
@@ -31619,7 +31371,6 @@ self: {
        description = "A http client for Apiary";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-logger" = callPackage
@@ -31638,7 +31389,6 @@ self: {
        description = "fast-logger support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-memcached" = callPackage
@@ -31658,7 +31408,6 @@ self: {
        description = "memcached client for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-mongoDB" = callPackage
@@ -31677,7 +31426,6 @@ self: {
        description = "mongoDB support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-persistent" = callPackage
@@ -31696,7 +31444,6 @@ self: {
        description = "persistent support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-purescript" = callPackage
@@ -31717,7 +31464,6 @@ self: {
        description = "purescript compiler for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-redis" = callPackage
@@ -31730,7 +31476,6 @@ self: {
        description = "redis support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-session" = callPackage
@@ -31743,7 +31488,6 @@ self: {
        description = "session support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apiary-websockets" = callPackage
@@ -31756,7 +31500,6 @@ self: {
        description = "websockets support for apiary web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apioiaf-client" = callPackage
@@ -31790,7 +31533,6 @@ self: {
        description = "A Template Haskell library for generating type safe API calls";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "apns-http2" = callPackage
@@ -31851,7 +31593,6 @@ self: {
        description = "a faster debian repository";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "app-lens" = callPackage
@@ -32038,8 +31779,8 @@ self: {
      }:
      mkDerivation {
        pname = "apply-refact";
-       version = "0.9.2.0";
-       sha256 = "1j0afdl6g51wyb3g47wss15v0yl50n23k3icbyla8h89rxh74lcx";
+       version = "0.9.3.0";
+       sha256 = "1sn5g71sx8xa4ggyk49m661iip6zrzl65vb87l16l31kf79bbm7w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -32297,8 +32038,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Datadog client for Haskell";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arbor-lru-cache" = callPackage
@@ -32415,7 +32154,6 @@ self: {
        description = "Metric library backend for datadog";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arbor-postgres" = callPackage
@@ -32465,6 +32203,7 @@ self: {
        ];
        description = "Automatic Rule-Based Time Tracker";
        license = lib.licenses.gpl2Only;
+       maintainers = with lib.maintainers; [ maralorn rvl ];
      }) {};
 
   "arcgrid" = callPackage
@@ -32501,21 +32240,21 @@ self: {
      , bytestring, Cabal, conduit, conduit-extra, containers, deepseq
      , Diff, directory, filepath, hackage-db, http-client
      , http-client-tls, megaparsec, microlens, microlens-th
-     , neat-interpolation, optparse-applicative, polysemy, prettyprinter
+     , neat-interpolation, optparse-simple, polysemy, prettyprinter
      , prettyprinter-ansi-terminal, servant-client, split, tar-conduit
      , template-haskell, text
      }:
      mkDerivation {
        pname = "arch-hs";
-       version = "0.8.0.0";
-       sha256 = "1g33ss6jvvpdgpcl0kwmbvnkawq8cngphjmsbv0jcpnh17brgf8x";
+       version = "0.9.0.0";
+       sha256 = "09i5b4pdbc1x7977icq0m7amk59iy0822ki5dlhd7y74m2dmdf9z";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson algebraic-graphs arch-web base bytestring Cabal conduit
          conduit-extra containers deepseq Diff directory filepath hackage-db
          http-client http-client-tls megaparsec microlens microlens-th
-         neat-interpolation optparse-applicative polysemy prettyprinter
+         neat-interpolation optparse-simple polysemy prettyprinter
          prettyprinter-ansi-terminal servant-client split tar-conduit
          template-haskell text
        ];
@@ -32523,14 +32262,12 @@ self: {
          aeson algebraic-graphs arch-web base bytestring Cabal conduit
          conduit-extra containers deepseq Diff directory filepath hackage-db
          http-client http-client-tls megaparsec microlens microlens-th
-         neat-interpolation optparse-applicative polysemy prettyprinter
+         neat-interpolation optparse-simple polysemy prettyprinter
          prettyprinter-ansi-terminal servant-client split tar-conduit
          template-haskell text
        ];
        description = "Distribute hackage packages to archlinux";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arch-web" = callPackage
@@ -32554,8 +32291,7 @@ self: {
        ];
        description = "Arch Linux official and AUR web interface binding";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ berberman ];
      }) {};
 
   "archive" = callPackage
@@ -32595,8 +32331,6 @@ self: {
        libraryToolDepends = [ cpphs ];
        description = "Common interface using libarchive";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "archive-sig" = callPackage
@@ -32706,7 +32440,6 @@ self: {
        description = "Website maintenance for Arch Linux packages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "archnews" = callPackage
@@ -32733,8 +32466,8 @@ self: {
      }:
      mkDerivation {
        pname = "arduino-copilot";
-       version = "1.5.3";
-       sha256 = "18aa6qqgk1cd5adydyby7xm3imrg739hhmdl0m67b61gf7f3ch3x";
+       version = "1.5.4";
+       sha256 = "15z3ndcg1ycnfzvqbbfalx1gfa61pyi5n2fy1dj8qm0gqkhz23lh";
        libraryHaskellDepends = [
          base containers copilot copilot-c99 copilot-language directory
          filepath mtl optparse-applicative temporary
@@ -32743,7 +32476,6 @@ self: {
        description = "Arduino programming in haskell using the Copilot stream DSL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arena" = callPackage
@@ -32788,7 +32520,6 @@ self: {
        description = "Generate Attribute-Relation File Format (ARFF) files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arghwxhaskell" = callPackage
@@ -32803,7 +32534,6 @@ self: {
        description = "An interpreter for the Argh! programming language in wxHaskell";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "argon" = callPackage
@@ -32831,7 +32561,6 @@ self: {
        description = "Measure your code's complexity";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "argon2" = callPackage
@@ -32913,7 +32642,6 @@ self: {
        description = "Go-to-definition for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arion" = callPackage
@@ -33063,7 +32791,6 @@ self: {
        description = "Arithmetic circuits for zkSNARKs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arithmoi" = callPackage
@@ -33127,24 +32854,20 @@ self: {
 
   "armor" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, hspec, HUnit, lens, text
+     , filepath, hashable, hspec, HUnit, lens, text
      }:
      mkDerivation {
        pname = "armor";
-       version = "0.1";
-       sha256 = "0jmq6lhi1byhjzgkvnn4p481z8wik93angx7sf6cjfj5j0kqzv71";
-       revision = "4";
-       editedCabalFile = "1vnjq91pawr4r7parg2kxs01d47b3lp8jpsji270bbmimqa0nql9";
+       version = "0.2.0.1";
+       sha256 = "1pp9y7y9i01mbnkrx4870m4a4crpyzikpi4w8znn3avjbl5c1bxx";
        libraryHaskellDepends = [
-         base bytestring containers directory filepath HUnit lens
+         base bytestring containers directory filepath hashable HUnit lens
        ];
        testHaskellDepends = [
          aeson base bytestring containers directory hspec HUnit lens text
        ];
        description = "Prevent serialization backwards compatibility problems using golden tests";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arpa" = callPackage
@@ -33212,8 +32935,6 @@ self: {
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Builders for arrays";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "array-chunks" = callPackage
@@ -33231,8 +32952,6 @@ self: {
        ];
        description = "Lists of chunks";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "array-forth" = callPackage
@@ -33259,7 +32978,6 @@ self: {
        description = "A simple interpreter for arrayForth, the language used on GreenArrays chips";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "array-list" = callPackage
@@ -33274,8 +32992,6 @@ self: {
        ];
        description = "IsList instances of Array for OverloadedLists extension";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "array-memoize" = callPackage
@@ -33361,7 +33077,6 @@ self: {
        description = "Memory-efficient ArrayList implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "arrow-extras" = callPackage
@@ -33748,7 +33463,6 @@ self: {
        description = "ASCII table";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ascii-th" = callPackage
@@ -33854,7 +33568,6 @@ self: {
        description = "Action Script Instrumentation Compiler";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "asif" = callPackage
@@ -34124,6 +33837,8 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "A set of assertion for writing more readable tests cases";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "assert4hs-hspec" = callPackage
@@ -34136,6 +33851,7 @@ self: {
        testHaskellDepends = [ assert4hs-core base hspec HUnit ];
        description = "integration point of assert4hs and hspec";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "assert4hs-tasty" = callPackage
@@ -34149,7 +33865,6 @@ self: {
        description = "Provider for tasty runner to run assert4hs tests";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "assertions" = callPackage
@@ -34211,7 +33926,6 @@ self: {
        description = "The Assimp asset import library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) assimp;};
 
   "assoc" = callPackage
@@ -34322,7 +34036,6 @@ self: {
        description = "A library for writing JSON";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ast-path" = callPackage
@@ -34388,8 +34101,8 @@ self: {
      }:
      mkDerivation {
        pname = "astro";
-       version = "0.4.2.1";
-       sha256 = "0agy9a91n1sy6rgdgwvdz354x452j2lg7nr3by7z9r22rwdxwpfs";
+       version = "0.4.3.0";
+       sha256 = "1zbraw0l40r190vw9dc7bwwcrac4p6yqwng5qa8n277v6cwy5kv5";
        libraryHaskellDepends = [ base matrix time ];
        testHaskellDepends = [
          base HUnit QuickCheck test-framework test-framework-hunit
@@ -34418,7 +34131,6 @@ self: {
        description = "A GTK-based abstract syntax tree viewer for custom languages and parsers";
        license = lib.licenses.bsdOriginal;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "astview-utils" = callPackage
@@ -34735,7 +34447,6 @@ self: {
        description = "Atlassian Connect snaplet for the Snap Framework and helper code";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "atlassian-connect-descriptor" = callPackage
@@ -34757,8 +34468,6 @@ self: {
        ];
        description = "Code that helps you create a valid Atlassian Connect Descriptor";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "atmos" = callPackage
@@ -34798,7 +34507,6 @@ self: {
        description = "dimensional-tf wrapper on atmos package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "atndapi" = callPackage
@@ -34949,7 +34657,6 @@ self: {
        description = "An atomic counter implemented using the FFI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "atomic-primops-vector" = callPackage
@@ -35028,7 +34735,6 @@ self: {
        description = "Interface to automated theorem provers";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "atp-haskell" = callPackage
@@ -35383,7 +35089,6 @@ self: {
        description = "Pass input from an enumerator to an Attoparsec parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "attoparsec-expr" = callPackage
@@ -35414,7 +35119,6 @@ self: {
        description = "Parse IP data types with attoparsec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "attoparsec-iso8601" = callPackage
@@ -35448,7 +35152,6 @@ self: {
        description = "An adapter to convert attoparsec Parsers into blazing-fast Iteratees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "attoparsec-parsec" = callPackage
@@ -35507,7 +35210,6 @@ self: {
        description = "(deprecated)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "attoparsec-time" = callPackage
@@ -35558,7 +35260,6 @@ self: {
        description = "URI parser / printer using attoparsec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "attoparsec-varword" = callPackage
@@ -35606,7 +35307,6 @@ self: {
        description = "Embedded Turtle language compiler in Haskell, with Epic output";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "audacity" = callPackage
@@ -35649,7 +35349,6 @@ self: {
        description = "A battery-included audiovisual framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "augeas" = callPackage
@@ -35764,7 +35463,6 @@ self: {
        description = "A secure package manager for Arch Linux and the AUR";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "authenticate" = callPackage
@@ -35860,7 +35558,6 @@ self: {
        description = "A library for writing papers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "auto" = callPackage
@@ -35878,6 +35575,8 @@ self: {
        ];
        description = "Denotative, locally stateful programming DSL & platform";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "auto-update" = callPackage
@@ -35908,6 +35607,7 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Template Haskell to automatically pass values to functions";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "autoexporter" = callPackage
@@ -36049,7 +35749,6 @@ self: {
        description = "Generate dependencies for KDE 5 Nix expressions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "autopack" = callPackage
@@ -36153,7 +35852,6 @@ self: {
        description = "Server-side implementation of the Avers storage model";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "avers-api" = callPackage
@@ -36171,7 +35869,6 @@ self: {
        description = "Types describing the core and extended Avers APIs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "avers-api-docs" = callPackage
@@ -36191,7 +35888,6 @@ self: {
        description = "Swagger documentation for the Avers API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "avers-server" = callPackage
@@ -36213,7 +35909,6 @@ self: {
        description = "Server implementation of the Avers API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aviation-cessna172-diagrams" = callPackage
@@ -36376,7 +36071,6 @@ self: {
        description = "Tool for decoding avro";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "avwx" = callPackage
@@ -36425,7 +36119,6 @@ self: {
        description = "High-level Awesomium bindings";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "awesomium-glut" = callPackage
@@ -36438,7 +36131,6 @@ self: {
        description = "Utilities for using Awesomium with GLUT";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "awesomium-raw" = callPackage
@@ -36571,7 +36263,6 @@ self: {
        description = "Configuration types, parsers & renderers for AWS services";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-dynamodb-conduit" = callPackage
@@ -36590,7 +36281,6 @@ self: {
        description = "Conduit-based interface for AWS DynamoDB";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-dynamodb-streams" = callPackage
@@ -36614,7 +36304,6 @@ self: {
        description = "Haskell bindings for Amazon DynamoDB Streams";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-easy" = callPackage
@@ -36718,7 +36407,6 @@ self: {
        description = "Haskell suite for the Elastic Transcoder service";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-general" = callPackage
@@ -36772,7 +36460,6 @@ self: {
        description = "Bindings for Amazon Kinesis";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-kinesis-client" = callPackage
@@ -36808,7 +36495,6 @@ self: {
        description = "A producer & consumer client library for AWS Kinesis";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-kinesis-reshard" = callPackage
@@ -36838,7 +36524,6 @@ self: {
        description = "Reshard AWS Kinesis streams in response to Cloud Watch metrics";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-lambda" = callPackage
@@ -36859,7 +36544,6 @@ self: {
        description = "Haskell bindings for AWS Lambda";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-lambda-haskell-runtime" = callPackage
@@ -36870,8 +36554,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-lambda-haskell-runtime";
-       version = "4.1.0";
-       sha256 = "1zb426bj1k3b3sp5hlg0ajx19mf0vwvr39zdg6p9l9i830qfdjfw";
+       version = "4.1.1";
+       sha256 = "0w4pdyagcs7m05kccdq0x3s1d4vbr2ihqjrbill0p0gn25q9h6cc";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive exceptions hashable
          http-client http-types mtl path path-io safe-exceptions-checked
@@ -36903,8 +36587,6 @@ self: {
        ];
        description = "Run wai applications on AWS Lambda";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-lambda-runtime" = callPackage
@@ -36929,8 +36611,6 @@ self: {
        executableHaskellDepends = [ aeson base lens lens-aeson text ];
        description = "Haskell on AWS Lambda Runtime API";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-larpi" = callPackage
@@ -36970,7 +36650,6 @@ self: {
        description = "Keep your AWS credentials file up to date with MFA-carrying credentials";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-performance-tests" = callPackage
@@ -37046,7 +36725,6 @@ self: {
        description = "AWS SDK for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-sdk-text-converter" = callPackage
@@ -37091,7 +36769,6 @@ self: {
        description = "The xml parser for aws-sdk package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-ses-easy" = callPackage
@@ -37111,8 +36788,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Wrapper over Amazonka's SES";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-sign4" = callPackage
@@ -37137,7 +36812,6 @@ self: {
        description = "Amazon Web Services (AWS) Signature v4 HTTP request signer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-simple" = callPackage
@@ -37181,7 +36855,61 @@ self: {
        description = "Bindings for AWS SNS Version 2013-03-31";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "aws-xray-client" = callPackage
+    ({ mkDerivation, aeson, aeson-qq, async, base, bytestring
+     , criterion, deepseq, generic-arbitrary, hspec, http-types, lens
+     , network, QuickCheck, random, text, time
+     }:
+     mkDerivation {
+       pname = "aws-xray-client";
+       version = "0.1.0.0";
+       sha256 = "0rb46hz2y9mz0prgyb5m2v31j05cx18j6yl01pawhrb6v8pb7z00";
+       libraryHaskellDepends = [
+         aeson base bytestring deepseq http-types lens network random text
+         time
+       ];
+       testHaskellDepends = [
+         aeson aeson-qq base generic-arbitrary hspec lens QuickCheck random
+         text
+       ];
+       benchmarkHaskellDepends = [ async base criterion random time ];
+       description = "A client for AWS X-Ray";
+       license = lib.licenses.mit;
+     }) {};
+
+  "aws-xray-client-persistent" = callPackage
+    ({ mkDerivation, aws-xray-client, base, conduit, containers, lens
+     , persistent, random, resourcet, text, time
+     }:
+     mkDerivation {
+       pname = "aws-xray-client-persistent";
+       version = "0.1.0.1";
+       sha256 = "1b45g9gswr2c16xphprqkrpyh2q29kgnr10hm29zjw5pcahgc8mg";
+       libraryHaskellDepends = [
+         aws-xray-client base conduit containers lens persistent random
+         resourcet text time
+       ];
+       description = "A client for AWS X-Ray integration with Persistent";
+       license = lib.licenses.mit;
+     }) {};
+
+  "aws-xray-client-wai" = callPackage
+    ({ mkDerivation, aws-xray-client, base, bytestring, containers
+     , http-types, lens, random, text, time, unliftio, unliftio-core
+     , vault, wai
+     }:
+     mkDerivation {
+       pname = "aws-xray-client-wai";
+       version = "0.1.0.0";
+       sha256 = "1vrgx2l3f08bd73z0an15zh3fla0d5sxqvwbsk1jxkrjfy2c43rd";
+       libraryHaskellDepends = [
+         aws-xray-client base bytestring containers http-types lens random
+         text time unliftio unliftio-core vault wai
+       ];
+       description = "A client for AWS X-Ray integration with WAI";
+       license = lib.licenses.mit;
      }) {};
 
   "axel" = callPackage
@@ -37252,7 +36980,6 @@ self: {
        description = "Web EDSL for running in browsers and server nodes using transient";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "axiomatic-classes" = callPackage
@@ -37293,7 +37020,6 @@ self: {
        description = "Interact with Azimuth from Haskell";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "azubi" = callPackage
@@ -37381,7 +37107,6 @@ self: {
        description = "Azure Functions Worker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "azure-service-api" = callPackage
@@ -37401,7 +37126,6 @@ self: {
        description = "Haskell bindings for the Microsoft Azure Service Management API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "azure-servicebus" = callPackage
@@ -37420,7 +37144,6 @@ self: {
        description = "Haskell wrapper over Microsoft Azure ServiceBus REST API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "azurify" = callPackage
@@ -37478,7 +37201,6 @@ self: {
        description = "Immutable disk-based B* trees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "b9" = callPackage
@@ -37552,7 +37274,6 @@ self: {
        description = "An implementation of a simple 2-player board game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "backblaze-b2-hs" = callPackage
@@ -37586,7 +37307,6 @@ self: {
        description = "A client library to access Backblaze B2 cloud storage in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "backdropper" = callPackage
@@ -37605,7 +37325,6 @@ self: {
        description = "Rotates backdrops for X11 displays using Imagemagic";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "backprop" = callPackage
@@ -37784,7 +37503,6 @@ self: {
        description = "Shipwire API client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo" = callPackage
@@ -37806,7 +37524,6 @@ self: {
        description = "A blog engine on Hack";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo-launcher" = callPackage
@@ -37828,7 +37545,6 @@ self: {
        description = "bamboo-launcher";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo-plugin-highlight" = callPackage
@@ -37847,7 +37563,6 @@ self: {
        description = "A highlight middleware";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo-plugin-photo" = callPackage
@@ -37867,7 +37582,6 @@ self: {
        description = "A photo album middleware";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo-theme-blueprint" = callPackage
@@ -37887,7 +37601,6 @@ self: {
        description = "bamboo blueprint theme";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamboo-theme-mini-html5" = callPackage
@@ -37911,7 +37624,6 @@ self: {
        description = "bamboo mini html5 theme";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamse" = callPackage
@@ -37930,7 +37642,6 @@ self: {
        description = "A Windows Installer (MSI) generator framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bamstats" = callPackage
@@ -37945,7 +37656,6 @@ self: {
        description = "A program to extract various information from BAM alignmnet files";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ban-instance" = callPackage
@@ -38409,7 +38119,6 @@ self: {
        description = "Optics for the Base16 library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "base32" = callPackage
@@ -38451,7 +38160,6 @@ self: {
        description = "Fast base32 and base32hex codec for ByteStrings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "base32-lens" = callPackage
@@ -38573,7 +38281,6 @@ self: {
        description = "Base62 encoding and decoding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "base64" = callPackage
@@ -38625,7 +38332,6 @@ self: {
        description = "Base64 encoding of byte sequences";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "base64-bytestring" = callPackage
@@ -38764,10 +38470,10 @@ self: {
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
        pname = "basement";
-       version = "0.0.11";
-       sha256 = "0srlws74yiraqaapgcjd9p5d1fwb3zr9swcz74jpjm55fls2nn37";
-       revision = "3";
-       editedCabalFile = "1indgsrk0yhkbqlxj39qqb5xqicwkmcliggb8wn87vgfswxpi1dn";
+       version = "0.0.12";
+       sha256 = "12zsnxkgv86im2prslk6ddhy0zwpawwjc1h4ff63kpxp2xdl7i2k";
+       revision = "1";
+       editedCabalFile = "1gr3zqf9xl3wlr2ajc03h9iya3jpx2h4jyjv2vhqxdvm6myiiffb";
        libraryHaskellDepends = [ base ghc-prim ];
        description = "Foundation scrap box of array & string";
        license = lib.licenses.bsd3;
@@ -38828,7 +38534,6 @@ self: {
        description = "Baserock Definitions Schema";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "basex-client" = callPackage
@@ -39008,7 +38713,6 @@ self: {
        description = "Batch processing toolset for Linux / Unix";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "battlenet" = callPackage
@@ -39038,7 +38742,6 @@ self: {
        description = "Yesod integration for the battlenet package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "battleplace" = callPackage
@@ -39056,8 +38759,6 @@ self: {
        ];
        description = "Core definitions for BattlePlace.io service";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "battleplace-api" = callPackage
@@ -39071,8 +38772,6 @@ self: {
        ];
        description = "Public API definitions of BattlePlace.io service";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "battleship-combinatorics" = callPackage
@@ -39131,7 +38830,6 @@ self: {
        description = "A web-based implementation of battleships including an AI opponent";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bayes-stack" = callPackage
@@ -39152,7 +38850,6 @@ self: {
        description = "Framework for inferring generative probabilistic models with Gibbs sampling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bazel-coverage-report-renderer" = callPackage
@@ -39219,7 +38916,6 @@ self: {
        description = "Tools for reading Big Binary Indexed files, e.g., bigBed, bigWig";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bcp47" = callPackage
@@ -39228,8 +38924,8 @@ self: {
      }:
      mkDerivation {
        pname = "bcp47";
-       version = "0.2.0.3";
-       sha256 = "07gz8bflc3klw0370albaff8v9vlgyqgrc5lifl35vs2ia891fhn";
+       version = "0.2.0.4";
+       sha256 = "1a3z0kg88061sffawq19girs7q640jv6yn24mailz7c89ajcawj7";
        libraryHaskellDepends = [
          aeson base containers country generic-arbitrary iso639 megaparsec
          QuickCheck text
@@ -39239,8 +38935,6 @@ self: {
        ];
        description = "Language tags as specified by BCP 47";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bcp47-orphans" = callPackage
@@ -39249,8 +38943,8 @@ self: {
      }:
      mkDerivation {
        pname = "bcp47-orphans";
-       version = "0.1.0.3";
-       sha256 = "1dm65nq49zqbc6kxkh2kmsracc9a7vlbq4mpq60jh2wxgvzcfghm";
+       version = "0.1.0.4";
+       sha256 = "08kx00dxmwj0vxazcd2s88q069swnzjfnj61kla5pczaz0aqh11w";
        libraryHaskellDepends = [
          base bcp47 cassava errors esqueleto hashable http-api-data
          path-pieces persistent text
@@ -39260,8 +38954,6 @@ self: {
        ];
        description = "BCP47 orphan instances";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bcrypt" = callPackage
@@ -39321,7 +39013,6 @@ self: {
        description = "Tools for managing a content store of software packages";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) ostree;};
 
   "bdcs-api" = callPackage
@@ -39358,8 +39049,10 @@ self: {
        ];
        description = "BDCS API Server";
        license = lib.licenses.gpl3Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libgit2-glib;};
 
   "bdd" = callPackage
@@ -39466,7 +39159,6 @@ self: {
        description = "DB migration library for beam, targeting Postgres";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-core" = callPackage
@@ -39511,7 +39203,6 @@ self: {
        description = "SQL DDL support and migrations support library for Beam";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-mysql" = callPackage
@@ -39530,7 +39221,6 @@ self: {
        description = "Connection layer between beam and MySQL/MariaDB";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-newtype-field" = callPackage
@@ -39547,7 +39237,6 @@ self: {
        description = "A newtype for wrapping newtypes into beam schemas";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-postgres" = callPackage
@@ -39575,7 +39264,6 @@ self: {
        description = "Connection layer between beam and postgres";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-sqlite" = callPackage
@@ -39599,7 +39287,6 @@ self: {
        description = "Beam driver for SQLite";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-th" = callPackage
@@ -39622,7 +39309,6 @@ self: {
        description = "Template Haskell utilities for beam";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beamable" = callPackage
@@ -39678,7 +39364,6 @@ self: {
        description = "A pretty-printer for higher-order logic";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bech32" = callPackage
@@ -39726,7 +39411,6 @@ self: {
        description = "Template Haskell extensions to the Bech32 library";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bed-and-breakfast" = callPackage
@@ -39794,7 +39478,6 @@ self: {
        description = "Bein is a provenance and workflow management system for bioinformatics";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "belka" = callPackage
@@ -39824,7 +39507,6 @@ self: {
        description = "HTTP client DSL";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bench" = callPackage
@@ -39844,6 +39526,7 @@ self: {
        ];
        description = "Command-line benchmark tool";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "bench-graph" = callPackage
@@ -39860,8 +39543,6 @@ self: {
        testHaskellDepends = [ base split text ];
        description = "Plot and compare benchmarks";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bench-show" = callPackage
@@ -40033,7 +39714,6 @@ self: {
        description = "An implementation of Python 3";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bert" = callPackage
@@ -40181,7 +39861,6 @@ self: {
        description = "Bidirectionalization for Free! (POPL'09)";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bff-mono" = callPackage
@@ -40215,7 +39894,6 @@ self: {
        description = "Implementation of the BGAPI serial protocol";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bgmax" = callPackage
@@ -40413,8 +40091,8 @@ self: {
      }:
      mkDerivation {
        pname = "bifunctors";
-       version = "5.5.10";
-       sha256 = "03d96df4j1aq9z7hrk3n519g3h7fjgjf82fmgp6wxxbaigyrqwp7";
+       version = "5.5.11";
+       sha256 = "070964w7gz578379lyj6xvdbcf367csmz22cryarjr5bz9r9csrb";
        libraryHaskellDepends = [
          base base-orphans comonad containers tagged template-haskell
          th-abstraction transformers
@@ -40460,7 +40138,6 @@ self: {
        description = "A parser for the Billboard chord dataset";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "billeksah-forms" = callPackage
@@ -40479,7 +40156,6 @@ self: {
        description = "Leksah library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "billeksah-main" = callPackage
@@ -40499,7 +40175,6 @@ self: {
        description = "Leksah plugin base";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "billeksah-main-static" = callPackage
@@ -40541,7 +40216,6 @@ self: {
        description = "Leksah library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "billeksah-services" = callPackage
@@ -40779,7 +40453,6 @@ self: {
        description = "read/write binary file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "binary-generic" = callPackage
@@ -41004,7 +40677,6 @@ self: {
        description = "Monad to ease implementing a binary network protocol over ZeroMQ";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "binary-search" = callPackage
@@ -41094,7 +40766,6 @@ self: {
        description = "data serialization/deserialization io-streams library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "binary-strict" = callPackage
@@ -41137,8 +40808,6 @@ self: {
        ];
        description = "Tagged binary serialisation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "binary-tree" = callPackage
@@ -41248,8 +40917,6 @@ self: {
        testHaskellDepends = [ base HTF HUnit QuickCheck random ];
        description = "Data Binding";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "binding-gtk" = callPackage
@@ -41281,7 +40948,6 @@ self: {
        description = "Data Binding in WxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bindings" = callPackage
@@ -41385,7 +41051,6 @@ self: {
        description = "Low level bindings to Apache Portable Runtime Utility (APR Utility)";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {apr-util = null;};
 
   "bindings-audiofile" = callPackage
@@ -41655,6 +41320,7 @@ self: {
        description = "Low level bindings to the C levmar (Levenberg-Marquardt) library";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) blas; liblapack = null;};
 
   "bindings-libcddb" = callPackage
@@ -41804,7 +41470,6 @@ self: {
        description = "bindings to Video For Linux Two (v4l2) kernel interfaces";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bindings-lxc" = callPackage
@@ -41933,7 +41598,6 @@ self: {
        description = "PPDev bindings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bindings-saga-cmd" = callPackage
@@ -41966,6 +41630,9 @@ self: {
        libraryPkgconfigDepends = [ sane-backends ];
        description = "FFI bindings to libsane";
        license = lib.licenses.lgpl3Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) sane-backends;};
 
   "bindings-sc3" = callPackage
@@ -42058,7 +41725,7 @@ self: {
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
        broken = true;
-     }) {wlc = null;};
+     }) {inherit (pkgs) wlc;};
 
   "bindings-yices" = callPackage
     ({ mkDerivation, base, gmp, yices }:
@@ -42123,7 +41790,6 @@ self: {
        description = "Example project using binembed to embed data in object files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bini" = callPackage
@@ -42227,7 +41893,6 @@ self: {
        description = "Library for reading ace assembly files";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bioalign" = callPackage
@@ -42240,7 +41905,6 @@ self: {
        description = "Data structures and helper functions for calculating alignments";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biocore" = callPackage
@@ -42268,7 +41932,6 @@ self: {
        description = "Library for reading fasta sequence files";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biofastq" = callPackage
@@ -42281,7 +41944,6 @@ self: {
        description = "A library for reading FASTQ files";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biohazard" = callPackage
@@ -42343,7 +42005,6 @@ self: {
        description = "A collection of bioinformatics tools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biophd" = callPackage
@@ -42360,7 +42021,6 @@ self: {
        description = "Library for reading phd sequence files";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biopsl" = callPackage
@@ -42378,7 +42038,6 @@ self: {
        description = "Library and executables for working with PSL files";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biosff" = callPackage
@@ -42396,7 +42055,6 @@ self: {
        description = "Library and executables for working with SFF files";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "biostockholm" = callPackage
@@ -42420,7 +42078,6 @@ self: {
        description = "Parsing and rendering of Stockholm files (used by Pfam, Rfam and Infernal)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bip32" = callPackage
@@ -42442,7 +42099,6 @@ self: {
        description = "BIP-0032: Hierarchical Deterministic Wallets for Bitcoin and other cryptocurrencies";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "birch-beer" = callPackage
@@ -42478,7 +42134,6 @@ self: {
        description = "Plot a colorful tree";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bird" = callPackage
@@ -42500,15 +42155,14 @@ self: {
        description = "A simple, sinatra-inspired web framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "birds-of-paradise" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "birds-of-paradise";
-       version = "0.2.0.0";
-       sha256 = "1jkj8li8yxl9kk5i8p63p9jkdcvdznmh473n12dxzimxnh15sf1y";
+       version = "0.2.1.0";
+       sha256 = "0kjwylhya86zqsmc5q6iqrbq4kp3hqxgx3kwam2pv1ls01qdsvvy";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base ];
        description = "Birds of Paradise";
@@ -42518,21 +42172,24 @@ self: {
      }) {};
 
   "bisc" = callPackage
-    ({ mkDerivation, base, configurator, directory, filepath, mtl
-     , selda, selda-sqlite, text
+    ({ mkDerivation, base, bytestring, configurator, data-default
+     , directory, exceptions, filepath, leveldb-haskell, mtl, selda
+     , selda-sqlite, snappy, text
      }:
      mkDerivation {
        pname = "bisc";
-       version = "0.2.3.0";
-       sha256 = "0x03smkfx0qnsxznlp1591gi938f15w057hywfp9497mhvkr7mxg";
+       version = "0.3.0.0";
+       sha256 = "097b25pp6pi7rq4xhk19g1i5v7v9hyx7ldyq0y3aj1cm50s2356m";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base configurator directory filepath mtl selda selda-sqlite text
+         base bytestring configurator data-default directory exceptions
+         filepath leveldb-haskell mtl selda selda-sqlite text
        ];
-       description = "A small tool that clears qutebrowser cookies";
+       executableSystemDepends = [ snappy ];
+       description = "A small tool that clears cookies (and more)";
        license = lib.licenses.gpl3Only;
-     }) {};
+     }) {inherit (pkgs) snappy;};
 
   "bisect-binary" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, hashable
@@ -42599,7 +42256,6 @@ self: {
        description = "A bit array (aka bitset, bitmap, bit vector) API for numeric types";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bit-protocol" = callPackage
@@ -42692,7 +42348,6 @@ self: {
        description = "Bitcoin address generation and rendering. Parsing coming soon.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-api" = callPackage
@@ -42718,7 +42373,6 @@ self: {
        description = "Provides access to the RPC API of Bitcoin Core";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-api-extra" = callPackage
@@ -42742,7 +42396,6 @@ self: {
        description = "Higher level constructs on top of the bitcoin-api package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-block" = callPackage
@@ -42764,7 +42417,6 @@ self: {
        description = "Utility functions for manipulating bitcoin blocks";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-compact-filters" = callPackage
@@ -42788,7 +42440,6 @@ self: {
        description = "BIP 158 compact block filters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-hash" = callPackage
@@ -42846,7 +42497,6 @@ self: {
        description = "Bitcoin keys";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-payment-channel" = callPackage
@@ -42913,7 +42563,6 @@ self: {
        description = "Library to communicate with the Satoshi Bitcoin daemon";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-script" = callPackage
@@ -42957,7 +42606,6 @@ self: {
        description = "Resources for working with miniscript, and script descriptors";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-tx" = callPackage
@@ -42979,7 +42627,6 @@ self: {
        description = "Utility functions for manipulating bitcoin transactions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoin-types" = callPackage
@@ -43000,7 +42647,6 @@ self: {
        description = "Provides consistent low-level types used commonly among Bitcoin implementations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoind-regtest" = callPackage
@@ -43031,7 +42677,6 @@ self: {
        description = "A library for working with bitcoin-core regtest networks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitcoind-rpc" = callPackage
@@ -43054,7 +42699,6 @@ self: {
        description = "A streamlined interface to bitcoin core using Haskoin types and Servant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitly-cli" = callPackage
@@ -43071,7 +42715,6 @@ self: {
        description = "A command line tool to access bit.ly URL shortener.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitmap" = callPackage
@@ -43111,7 +42754,6 @@ self: {
        description = "Bitmap library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bits" = callPackage
@@ -43200,8 +42842,8 @@ self: {
        pname = "bits-extra";
        version = "0.0.2.0";
        sha256 = "1c54008kinzcx93kc8vcp7wq7la662m8nk82ax76i9b0gvbkk21f";
-       revision = "1";
-       editedCabalFile = "1ri4z6zj20qsyyzsrl89sjcm4ir2w6538i6l36a6ffz7f0h0ahng";
+       revision = "2";
+       editedCabalFile = "01qlnzbc3kgbyacqg9c7ldab2s91h9s4kalld0wz9q2k1d4063lv";
        libraryHaskellDepends = [ base ghc-prim vector ];
        testHaskellDepends = [
          base doctest doctest-discover ghc-prim hedgehog hspec hw-hedgehog
@@ -43357,7 +42999,6 @@ self: {
        description = "Bittorrent protocol implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bittrex" = callPackage
@@ -43439,8 +43080,6 @@ self: {
        ];
        description = "Bitwise operations on bounded enumerations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bitx-bitcoin" = callPackage
@@ -43481,8 +43120,6 @@ self: {
        ];
        description = "A lousy Prelude replacement by a lousy dude";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bizzlelude-js" = callPackage
@@ -43558,7 +43195,6 @@ self: {
        description = "a stupid cron";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "black-jewel" = callPackage
@@ -43661,7 +43297,6 @@ self: {
        description = "The BLAKE SHA-3 candidate hashes, in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blank-canvas" = callPackage
@@ -43791,7 +43426,6 @@ self: {
        description = "Library for reading Blast XML output";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blatex" = callPackage
@@ -43810,7 +43444,6 @@ self: {
        description = "Blog in LaTeX";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blaze" = callPackage
@@ -43882,7 +43515,6 @@ self: {
        description = "Enumeratees for the incremental conversion of builders to bytestrings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blaze-colonnade" = callPackage
@@ -43902,7 +43534,6 @@ self: {
        description = "blaze-html backend for colonnade";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blaze-from-html" = callPackage
@@ -44153,7 +43784,6 @@ self: {
        description = "Bluetooth Low Energy (BLE) peripherals";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blindpass" = callPackage
@@ -44188,7 +43818,6 @@ self: {
        description = "Control library for blink(1) LED from ThingM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blip" = callPackage
@@ -44208,7 +43837,6 @@ self: {
        description = "Python to bytecode compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bliplib" = callPackage
@@ -44307,7 +43935,6 @@ self: {
        description = "Very simple static blog software";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bloodhound" = callPackage
@@ -44361,7 +43988,6 @@ self: {
        description = "Adds convenient Amazon ElasticSearch Service authentication to Bloodhound";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bloomfilter" = callPackage
@@ -44440,7 +44066,6 @@ self: {
        description = "OpenGL Logic Game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blubber" = callPackage
@@ -44459,7 +44084,6 @@ self: {
        description = "The blubber client; connects to the blubber server";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "blubber-server" = callPackage
@@ -44493,8 +44117,8 @@ self: {
      }:
      mkDerivation {
        pname = "blucontrol";
-       version = "0.3.0.0";
-       sha256 = "0xh1qxfmrfjdsprl5m748j5z9w0qmww8gkj8lhghfskdzxhy0qic";
+       version = "0.3.1.0";
+       sha256 = "035lrn1j6hrvl5vs5k0q1hb3zwbqh5bvxmfxvjvv9lncv8iy2nd9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -44573,7 +44197,6 @@ self: {
        description = "full-featured tiling for the GNOME desktop environment";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) gtk2;};
 
   "bluetileutils" = callPackage
@@ -44628,7 +44251,6 @@ self: {
        description = "Convert between pointfree and pointful expressions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bmp" = callPackage
@@ -44654,7 +44276,6 @@ self: {
        description = "Library for communication with the Bosch BNO055 orientation sensor";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "board-games" = callPackage
@@ -44743,7 +44364,6 @@ self: {
        executableHaskellDepends = [ base hogre hois random ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "boilerplate" = callPackage
@@ -44907,7 +44527,6 @@ self: {
        description = "Runtime support for BOND serialization";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bond-haskell-compiler" = callPackage
@@ -44930,7 +44549,6 @@ self: {
        description = "Bond code generator for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bookkeeper" = callPackage
@@ -44972,7 +44590,6 @@ self: {
        description = "Permissions for bookkeeper records";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bookkeeping" = callPackage
@@ -45198,7 +44815,6 @@ self: {
        description = "Boomshine clone";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "boop" = callPackage
@@ -45235,7 +44851,6 @@ self: {
        description = "Mathematically sound sound synthesis";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "boots" = callPackage
@@ -45292,7 +44907,6 @@ self: {
        description = "Factory for quickly building a microservice";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "boots-web" = callPackage
@@ -45313,7 +44927,6 @@ self: {
        description = "Factory for quickly building a web application";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bootstrap-types" = callPackage
@@ -45369,7 +44982,6 @@ self: {
        description = "Metering System for OpenStack metrics provided by Vaultaire";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "boring" = callPackage
@@ -45475,6 +45087,8 @@ self: {
        ];
        description = "Encoding and decoding for the Bottom spec";
        license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "bound" = callPackage
@@ -45616,7 +45230,6 @@ self: {
        description = "audio-visual pseudo-physical simulation of colliding circles";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "box" = callPackage
@@ -45645,7 +45258,6 @@ self: {
        description = "boxes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "box-csv" = callPackage
@@ -45663,7 +45275,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "box-socket" = callPackage
@@ -45688,7 +45299,6 @@ self: {
        description = "Box websockets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "box-tuples" = callPackage
@@ -45848,6 +45458,7 @@ self: {
        libraryHaskellDepends = [ base mtl transformers ];
        description = "Break from a loop";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "breakout" = callPackage
@@ -45862,7 +45473,6 @@ self: {
        description = "A simple Breakout game implementation";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "breve" = callPackage
@@ -45886,8 +45496,6 @@ self: {
        ];
        description = "a url shortener";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "brians-brain" = callPackage
@@ -45914,8 +45522,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick";
-       version = "0.61";
-       sha256 = "0cwrsndplgw5226cpdf7aad03jjidqh5wwwgm75anmya7c5lzl2d";
+       version = "0.62";
+       sha256 = "1f74m9yxwqv3xs1jhhpww2higfz3w0v1niff257wshhrvrkigh36";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46009,7 +45617,6 @@ self: {
        description = "Bricks is a lazy functional language based on Nix";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bricks-internal" = callPackage
@@ -46046,7 +45653,6 @@ self: {
        description = "...";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bricks-parsec" = callPackage
@@ -46068,7 +45674,6 @@ self: {
        description = "...";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bricks-rendering" = callPackage
@@ -46090,7 +45695,6 @@ self: {
        description = "...";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bricks-syntax" = callPackage
@@ -46112,7 +45716,6 @@ self: {
        description = "...";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "brillig" = callPackage
@@ -46147,8 +45750,8 @@ self: {
      }:
      mkDerivation {
        pname = "brittany";
-       version = "0.13.1.1";
-       sha256 = "1z47kzmff9vdnkg4xihpdvccfy5080i05mg4j8sy3nv4mwja0ki1";
+       version = "0.13.1.2";
+       sha256 = "1pa8qgsild3zl56sdmbsllka64k05jk2p16ij3bdla4rbfw96z5g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46342,7 +45945,6 @@ self: {
        description = "Streaming interface for the BronyRadioGermany API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "brotli" = callPackage
@@ -46385,7 +45987,6 @@ self: {
        description = "Conduit interface for Brotli (RFC7932) compression";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "brotli-streams" = callPackage
@@ -46407,7 +46008,6 @@ self: {
        description = "IO-Streams interface for Brotli (RFC7932) compression";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "browscap" = callPackage
@@ -46483,8 +46083,6 @@ self: {
        ];
        description = "BSON documents are JSON-like objects with a standard binary encoding";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bson-generic" = callPackage
@@ -46522,8 +46120,6 @@ self: {
        libraryHaskellDepends = [ base bson lens text ];
        description = "BSON lenses";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bson-mapping" = callPackage
@@ -46592,7 +46188,6 @@ self: {
        description = "B-Tree on Unmanaged Heap";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "btree-concurrent" = callPackage
@@ -46669,7 +46264,6 @@ self: {
        description = "Automates most of your plain text accounting data entry in ledger format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "buffer" = callPackage
@@ -46717,8 +46311,6 @@ self: {
        ];
        description = "Library for efficiently building up buffers, one piece at a time";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "buffer-builder-aeson" = callPackage
@@ -46824,6 +46416,8 @@ self: {
        ];
        description = "Perfect simulation of discrete random variables";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "bug" = callPackage
@@ -46985,7 +46579,6 @@ self: {
        description = "Tools for working with buildbox benchmark result files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "builder" = callPackage
@@ -47040,7 +46633,6 @@ self: {
        description = "A library and an executable that provide an easy API for a Haskell IDE";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bullet" = callPackage
@@ -47094,7 +46686,6 @@ self: {
        description = "Bulletproofs are short zero-knowledge proofs without a trusted setup";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bulmex" = callPackage
@@ -47120,7 +46711,6 @@ self: {
        description = "Reflex infused with bulma (css)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bumper" = callPackage
@@ -47177,7 +46767,6 @@ self: {
        description = "List OP_RETURN cryptocurrency transaction outputs";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "burrito" = callPackage
@@ -47186,8 +46775,8 @@ self: {
      }:
      mkDerivation {
        pname = "burrito";
-       version = "1.2.0.1";
-       sha256 = "0swxc78vz1rj3q994cdnadgkanzcpm8rshvs2q49534rc2s6gq4g";
+       version = "1.2.0.2";
+       sha256 = "0d6qnajyh5v6hw89lw0d3lcan9l20zxkp8r3hq1imzbvb1mcasn5";
        libraryHaskellDepends = [
          base bytestring containers parsec template-haskell text
          transformers
@@ -47227,7 +46816,6 @@ self: {
        description = "Haskell interface to the Bus Pirate binary interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "buster" = callPackage
@@ -47263,7 +46851,6 @@ self: {
        description = "Almost but not quite entirely unlike FRP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "buster-network" = callPackage
@@ -47281,7 +46868,6 @@ self: {
        description = "Almost but not quite entirely unlike FRP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bustle" = callPackage
@@ -47314,6 +46900,9 @@ self: {
        testPkgconfigDepends = [ gio-unix ];
        description = "Draw sequence diagrams of D-Bus traffic";
        license = lib.licenses.lgpl21Plus;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {gio-unix = null; inherit (pkgs) libpcap; 
          system-glib = pkgs.glib;};
 
@@ -47381,7 +46970,6 @@ self: {
        description = "butterfly tilings";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "buttplug-hs-core" = callPackage
@@ -47412,6 +47000,8 @@ self: {
        ];
        description = "Client library for buttplug.io";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "bv" = callPackage
@@ -47466,18 +47056,21 @@ self: {
      }) {};
 
   "bv-sized" = callPackage
-    ({ mkDerivation, base, bitwise, bytestring, hedgehog, panic
-     , parameterized-utils, tasty, tasty-hedgehog, th-lift
+    ({ mkDerivation, base, bitwise, bytestring, deepseq, hedgehog
+     , MonadRandom, panic, parameterized-utils, random, tasty
+     , tasty-hedgehog, th-lift
      }:
      mkDerivation {
        pname = "bv-sized";
-       version = "1.0.2";
-       sha256 = "0lx7cm7404r71ciksv8g58797k6x02zh337ra88syhj7nzlnij5w";
+       version = "1.0.3";
+       sha256 = "1bqzj9gmx8lvfw037y4f3hibbcq6zafhm6xhjdhnvmlyc963n9v9";
        libraryHaskellDepends = [
-         base bitwise bytestring panic parameterized-utils th-lift
+         base bitwise bytestring deepseq panic parameterized-utils random
+         th-lift
        ];
        testHaskellDepends = [
-         base bytestring hedgehog parameterized-utils tasty tasty-hedgehog
+         base bytestring hedgehog MonadRandom parameterized-utils tasty
+         tasty-hedgehog
        ];
        description = "a bitvector datatype that is parameterized by the vector width";
        license = lib.licenses.bsd3;
@@ -47485,6 +47078,18 @@ self: {
        broken = true;
      }) {};
 
+  "bv-sized-lens" = callPackage
+    ({ mkDerivation, base, bv-sized, lens, parameterized-utils }:
+     mkDerivation {
+       pname = "bv-sized-lens";
+       version = "0.1.0.0";
+       sha256 = "1njwizsxpmlpb3vm460ciw2x7byfz4y0g8bhsnfiimmyn7yazdr6";
+       libraryHaskellDepends = [ base bv-sized lens parameterized-utils ];
+       description = "Well-typed lenses for bv-sized bitvectors";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "byline" = callPackage
     ({ mkDerivation, ansi-terminal, attoparsec, base, colour
      , exceptions, free, haskeline, mtl, optparse-applicative, relude
@@ -47506,8 +47111,6 @@ self: {
        ];
        description = "Library for creating command-line interfaces (colors, menus, etc.)";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytable" = callPackage
@@ -47528,8 +47131,8 @@ self: {
      }:
      mkDerivation {
        pname = "byte-count-reader";
-       version = "0.10.1.2";
-       sha256 = "11mzz8ahjlqq910s27wggk0vz9bjqxkyqs7lk8kr20cpx0by26s1";
+       version = "0.10.1.3";
+       sha256 = "1z02g8mkjwxdrbyxncbvrwg18knyiqa3w9n0x01y2xmbr279rsh0";
        libraryHaskellDepends = [ base extra parsec parsec-numbers text ];
        testHaskellDepends = [
          base extra hspec parsec parsec-numbers text
@@ -47604,7 +47207,6 @@ self: {
        description = "Serialize to a small byte arrays";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytedump" = callPackage
@@ -47646,7 +47248,6 @@ self: {
        description = "Universal hashing of bytes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytelog" = callPackage
@@ -47663,7 +47264,6 @@ self: {
        description = "Fast logging";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "byteorder" = callPackage
@@ -47728,8 +47328,6 @@ self: {
        benchmarkHaskellDepends = [ base gauge primitive ];
        description = "Slicing managed and unmanaged memory";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytesmith" = callPackage
@@ -47755,7 +47353,6 @@ self: {
        description = "Nonresumable byte parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytestring_0_11_1_0" = callPackage
@@ -47893,17 +47490,17 @@ self: {
      }) {};
 
   "bytestring-encoding" = callPackage
-    ({ mkDerivation, base, bytestring, QuickCheck, tasty, tasty-hunit
-     , tasty-quickcheck, tasty-th, text
+    ({ mkDerivation, base, bytestring, deepseq, QuickCheck, tasty
+     , tasty-hunit, tasty-quickcheck, tasty-th, text
      }:
      mkDerivation {
        pname = "bytestring-encoding";
-       version = "0.1.0.0";
-       sha256 = "05pjx59xxpi27j3qfh2cwy9ibfdsc7g0zcsfkdhsj33yxpls363d";
+       version = "0.1.1.0";
+       sha256 = "0m2w1nvj5izmb4j08c57lk89i3rnhhb0n0rz511pb6s75ijqrb71";
        libraryHaskellDepends = [ base bytestring text ];
        testHaskellDepends = [
-         base bytestring QuickCheck tasty tasty-hunit tasty-quickcheck
-         tasty-th text
+         base bytestring deepseq QuickCheck tasty tasty-hunit
+         tasty-quickcheck tasty-th text
        ];
        description = "ByteString ↔ Text converter based on GHC.IO.Encoding";
        license = lib.licenses.bsd3;
@@ -48053,7 +47650,6 @@ self: {
        description = "fast ByteString to number converting library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "bytestring-rematch" = callPackage
@@ -48361,6 +47957,18 @@ self: {
        broken = true;
      }) {};
 
+  "c-enum" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "c-enum";
+       version = "0.1.0.1";
+       sha256 = "1mg01qzmwaks9ix0269kpvjsa60fkvfc5hjn4wb47c7a6zam2rx0";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base template-haskell ];
+       description = "To make a type corresponding to an enum of C language";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "c-io" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -48419,6 +48027,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "c-struct" = callPackage
+    ({ mkDerivation, array, base, primitive, template-haskell }:
+     mkDerivation {
+       pname = "c-struct";
+       version = "0.1.0.1";
+       sha256 = "0932b00zhhss86baj6cqhvn4f66l6z8dax58l4gbaif81w9281zw";
+       libraryHaskellDepends = [ array base primitive template-haskell ];
+       testHaskellDepends = [ array base primitive template-haskell ];
+       description = "To make a wrapper for struct of C language";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "c0check" = callPackage
     ({ mkDerivation, base, c0parser }:
      mkDerivation {
@@ -48431,7 +48051,6 @@ self: {
        description = "Simple C0 Syntax Check";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "c0parser" = callPackage
@@ -48604,8 +48223,6 @@ self: {
        ];
        description = "A maintenance command of Haskell cabal packages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal" = callPackage
@@ -48633,8 +48250,6 @@ self: {
        libraryHaskellDepends = [ base Cabal filepath ];
        description = "Cabal support for creating AppImage applications";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-audit" = callPackage
@@ -48690,7 +48305,6 @@ self: {
        description = "A command line program for managing the dependency versions in a cabal file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-build-programs" = callPackage
@@ -48756,7 +48370,6 @@ self: {
        description = "CI Assistant for Haskell projects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-cargs" = callPackage
@@ -48780,7 +48393,6 @@ self: {
        description = "A command line program for extracting compiler arguments from a cabal file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-constraints" = callPackage
@@ -49415,7 +49027,6 @@ self: {
        description = "Helpers for quering .cabal files or hackageDB's 00-index.tar";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-rpm" = callPackage
@@ -49542,7 +49153,6 @@ self: {
        description = "Automated test tool for cabal projects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-test-bin" = callPackage
@@ -49649,7 +49259,6 @@ self: {
        description = "Create Arch Linux packages from Cabal packages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal2doap" = callPackage
@@ -49853,7 +49462,6 @@ self: {
        description = "Create mandriva rpm from cabal package";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabalrpmdeps" = callPackage
@@ -49869,7 +49477,6 @@ self: {
        description = "Autogenerate rpm dependencies from cabal files";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabalvchk" = callPackage
@@ -50039,8 +49646,6 @@ self: {
        ];
        description = "A vault-style cache implementation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cachix" = callPackage
@@ -50149,14 +49754,16 @@ self: {
      }:
      mkDerivation {
        pname = "caerbannog";
-       version = "0.6.0.4";
-       sha256 = "0zm6vdbsb947nd3wcniyk8mjs52r6hwyyp64w1abnazajraqask8";
+       version = "0.6.0.5";
+       sha256 = "048d46g7xnqbkb061hs3ix8rzpp1mwww9iznpgrrkvimafb0r0m0";
        libraryHaskellDepends = [ base binary bytestring ];
        testHaskellDepends = [
          base binary bytestring hspec QuickCheck random
        ];
        description = "That rabbit's got a vicious streak a mile wide!";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "caf" = callPackage
@@ -50291,7 +49898,6 @@ self: {
        description = "A build-system library and driver";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cake3" = callPackage
@@ -50341,7 +49947,6 @@ self: {
        description = "run turtle like LOGO with lojban";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cal-layout" = callPackage
@@ -50387,7 +49992,6 @@ self: {
        description = "Examples for the Cal3d animation library";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cal3d-opengl" = callPackage
@@ -50400,33 +50004,34 @@ self: {
        description = "OpenGL rendering for the Cal3D animation library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "calamity" = callPackage
-    ({ mkDerivation, aeson, async, base, bytestring, colour
-     , concurrent-extra, connection, containers, data-default-class
-     , data-flags, deepseq, deque, df1, di-core, di-polysemy, exceptions
-     , fmt, focus, generic-lens, hashable, http-api-data, http-client
-     , http-date, http-types, lens, lens-aeson, megaparsec, mime-types
-     , mtl, polysemy, polysemy-plugin, reflection, req, safe-exceptions
+    ({ mkDerivation, aeson, async, base, bytestring, calamity-commands
+     , colour, concurrent-extra, connection, containers
+     , data-default-class, data-flags, deepseq, deque, df1, di-core
+     , di-polysemy, exceptions, focus, generic-lens, hashable
+     , http-api-data, http-client, http-date, http-types, lens
+     , lens-aeson, megaparsec, mime-types, mtl, polysemy
+     , polysemy-plugin, PyF, reflection, req, safe-exceptions
      , scientific, stm, stm-chans, stm-containers, text, text-show, time
      , tls, typerep-map, unagi-chan, unboxing-vector
      , unordered-containers, vector, websockets, x509-system
      }:
      mkDerivation {
        pname = "calamity";
-       version = "0.1.28.4";
-       sha256 = "07ibhr3xngpwl7pq9ykbf6pxzlp8yx49d0qrlhyn7hj5xbswkv3f";
-       libraryHaskellDepends = [
-         aeson async base bytestring colour concurrent-extra connection
-         containers data-default-class data-flags deepseq deque df1 di-core
-         di-polysemy exceptions fmt focus generic-lens hashable
-         http-api-data http-client http-date http-types lens lens-aeson
-         megaparsec mime-types mtl polysemy polysemy-plugin reflection req
-         safe-exceptions scientific stm stm-chans stm-containers text
-         text-show time tls typerep-map unagi-chan unboxing-vector
-         unordered-containers vector websockets x509-system
+       version = "0.1.30.2";
+       sha256 = "0i0v8cb0a3mbkrb3liw60gb7zflnps5w04a6nx5aynini7mpwanj";
+       libraryHaskellDepends = [
+         aeson async base bytestring calamity-commands colour
+         concurrent-extra connection containers data-default-class
+         data-flags deepseq deque df1 di-core di-polysemy exceptions focus
+         generic-lens hashable http-api-data http-client http-date
+         http-types lens lens-aeson megaparsec mime-types mtl polysemy
+         polysemy-plugin PyF reflection req safe-exceptions scientific stm
+         stm-chans stm-containers text text-show time tls typerep-map
+         unagi-chan unboxing-vector unordered-containers vector websockets
+         x509-system
        ];
        description = "A library for writing discord bots in haskell";
        license = lib.licenses.mit;
@@ -50440,8 +50045,8 @@ self: {
      }:
      mkDerivation {
        pname = "calamity-commands";
-       version = "0.1.0.0";
-       sha256 = "0l2x65w7inib5bdfw0gzffm3pdlsylnivnjc8y82x7fi6jha8jcp";
+       version = "0.1.3.0";
+       sha256 = "0vhv63vapjc51hx6g9mjr5vgxlsfkss828wxcfjf5jd98qdv96dj";
        libraryHaskellDepends = [
          base generic-lens lens megaparsec polysemy polysemy-plugin text
          text-show unordered-containers
@@ -50462,7 +50067,6 @@ self: {
        description = "A small compiler for arithmetic expressions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "calculator" = callPackage
@@ -50485,7 +50089,6 @@ self: {
        description = "A calculator repl, with variables, functions & Mathematica like dynamic plots";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "caldims" = callPackage
@@ -50507,7 +50110,6 @@ self: {
        description = "Calculation tool and library supporting units";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "caledon" = callPackage
@@ -50585,7 +50187,6 @@ self: {
        description = "The call game engine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "call-alloy" = callPackage
@@ -50643,6 +50244,19 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "call-stack_0_4_0" = callPackage
+    ({ mkDerivation, base, filepath, nanospec }:
+     mkDerivation {
+       pname = "call-stack";
+       version = "0.4.0";
+       sha256 = "0yxq6v37kcmgv6rrna4g1ipr8mhkgf00ng2p359ybxq46j5cy2s3";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base filepath nanospec ];
+       description = "Use GHC call-stacks in a backward compatible way";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "camfort" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
      , deepseq, directory, fgl, filepath, flint, fortran-src
@@ -50679,7 +50293,6 @@ self: {
        description = "CamFort - Cambridge Fortran infrastructure";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) flint;};
 
   "camh" = callPackage
@@ -50713,7 +50326,6 @@ self: {
        description = "Haskell implementation of the Campfire API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "can-i-haz" = callPackage
@@ -50759,7 +50371,6 @@ self: {
        description = "Candid integration";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "canon" = callPackage
@@ -50842,7 +50453,6 @@ self: {
        description = "Utilities for HTTP programming";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "canteven-listen-http" = callPackage
@@ -50971,7 +50581,6 @@ self: {
        description = "CAO Compiler";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cap" = callPackage
@@ -50987,7 +50596,6 @@ self: {
        description = "Interprets and debug the cap language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "capability" = callPackage
@@ -51145,7 +50753,6 @@ self: {
        description = "Simple web-server for organizing car-pooling for an event";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "caramia" = callPackage
@@ -51206,7 +50813,6 @@ self: {
        description = "Drop emails from threads being watched into special CC folder";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cardano-coin-selection" = callPackage
@@ -51228,8 +50834,6 @@ self: {
        ];
        description = "Algorithms for coin selection and fee balancing";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cardano-transactions" = callPackage
@@ -51354,7 +50958,6 @@ self: {
        description = "Specify Cabal files in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cas-hashable" = callPackage
@@ -51500,7 +51103,6 @@ self: {
        description = "mid-level bindings to CasADi";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {casadi = null;};
 
   "casadi-bindings-control" = callPackage
@@ -51518,7 +51120,6 @@ self: {
        description = "low level bindings to casadi-control";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {casadi_control = null;};
 
   "casadi-bindings-core" = callPackage
@@ -51536,7 +51137,6 @@ self: {
        description = "autogenerated low level bindings to casadi";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {casadi = null;};
 
   "casadi-bindings-internal" = callPackage
@@ -51568,7 +51168,6 @@ self: {
        description = "low level bindings to casadi-ipopt_interface";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {casadi_ipopt_interface = null;};
 
   "casadi-bindings-snopt-interface" = callPackage
@@ -51586,7 +51185,6 @@ self: {
        description = "low level bindings to casadi-snopt_interface";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {casadi_snopt_interface = null;};
 
   "cascading" = callPackage
@@ -51698,8 +51296,6 @@ self: {
        benchmarkHaskellDepends = [ gauge mwc-random rerebase ];
        description = "A converter for spinal, snake and camel cases";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cash" = callPackage
@@ -51717,7 +51313,6 @@ self: {
        description = "the Computer Algebra SHell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "casing" = callPackage
@@ -51925,7 +51520,6 @@ self: {
        description = "Haskell client for Cassandra's CQL protocol";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cassandra-thrift" = callPackage
@@ -52125,7 +51719,6 @@ self: {
        description = "A high level driver for the Cassandra datastore";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cast" = callPackage
@@ -52214,7 +51807,6 @@ self: {
        description = "Equation Manipulator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "catalyst" = callPackage
@@ -52265,7 +51857,6 @@ self: {
        description = "Categorical Monoids and Semirings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "categories" = callPackage
@@ -52316,7 +51907,6 @@ self: {
        description = "A meta-package documenting various packages inspired by category theory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "category-printf" = callPackage
@@ -52429,6 +52019,8 @@ self: {
        testHaskellDepends = [ base base16-bytestring hspec ];
        description = "Cayenne Low Power Payload";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "cayenne-lpp" = callPackage
@@ -52559,8 +52151,8 @@ self: {
        pname = "cborg-json";
        version = "0.2.2.0";
        sha256 = "0ysilz7rrjk94sqr3a61s98hr9qfi1xg13bskmlpc6mpgi2s4s5b";
-       revision = "2";
-       editedCabalFile = "1hbabjvmyqha75v2ivyvj6yzrnj9vs3h9988j4p68x9bcwmgyjyd";
+       revision = "3";
+       editedCabalFile = "1sn2f9nfjcbr0n62n4kklbdi3pzpwrcy7ilg7m3v41nwrk53ifwy";
        libraryHaskellDepends = [
          aeson aeson-pretty base cborg scientific text unordered-containers
          vector
@@ -52636,9 +52228,32 @@ self: {
        description = "High-level interface to CCTools' WorkQueue library";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {dttools = null;};
 
+  "cdar-mBound" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq, integer-gmp
+     , parallel, QuickCheck, smallcheck, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "cdar-mBound";
+       version = "0.1.0.2";
+       sha256 = "1qzpb9kwswln7vbj0v0qm6fsi6v3v9xx701hyfg12y3f9hz096zf";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers deepseq integer-gmp ];
+       executableHaskellDepends = [ base containers deepseq integer-gmp ];
+       testHaskellDepends = [
+         base containers deepseq integer-gmp QuickCheck smallcheck tasty
+         tasty-hunit tasty-quickcheck tasty-smallcheck
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion deepseq integer-gmp parallel
+       ];
+       description = "Exact real arithmetic using Centred Dyadic Approximations";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "cdeps" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, criterion
      , directory, filepath, hspec, optparse-applicative, text
@@ -52720,7 +52335,6 @@ self: {
        description = "Simple wrapper around cef3-raw";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ceilometer-common" = callPackage
@@ -52745,7 +52359,6 @@ self: {
        description = "Common Haskell types and encoding for OpenStack Ceilometer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cellrenderer-cairo" = callPackage
@@ -52786,7 +52399,6 @@ self: {
        description = "A tool to build a novel";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cerberus" = callPackage
@@ -52891,7 +52503,6 @@ self: {
        description = "Deserialize things with cereal and enumerator";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cereal-ieee754" = callPackage
@@ -52928,7 +52539,6 @@ self: {
        description = "io-streams support for the cereal binary serialization library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cereal-plus" = callPackage
@@ -52977,7 +52587,6 @@ self: {
        description = "Use cereal to encode/decode io-streams";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cereal-text" = callPackage
@@ -53059,7 +52668,6 @@ self: {
        description = "Certificates and Key Reader/Writer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cf" = callPackage
@@ -53115,7 +52723,6 @@ self: {
        description = "cfipu processor for toy brainfuck-like language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cflp" = callPackage
@@ -53135,7 +52742,6 @@ self: {
        description = "Constraint Functional-Logic Programming in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cfopu" = callPackage
@@ -53154,7 +52760,6 @@ self: {
        description = "cfopu processor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cg" = callPackage
@@ -53268,7 +52873,6 @@ self: {
        description = "Command line tool";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chain-codes" = callPackage
@@ -53308,7 +52912,6 @@ self: {
        description = "Mining Client for Kadena Chainweb";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chakra" = callPackage
@@ -53357,7 +52960,6 @@ self: {
        description = "A REST Web Api server template for building (micro)services";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chalk" = callPackage
@@ -53401,7 +53003,6 @@ self: {
        description = "OpenGL based viewer for chalkboard rendered images";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chalmers-lava2000" = callPackage
@@ -53414,6 +53015,8 @@ self: {
        libraryHaskellDepends = [ array base process random ];
        description = "Hardware description EDSL";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "chan" = callPackage
@@ -53550,7 +53153,6 @@ self: {
        description = "Rapid prototyping websites with Snap and Heist";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "charset" = callPackage
@@ -53577,6 +53179,9 @@ self: {
        libraryHaskellDepends = [ base bytestring ];
        description = "Character set detection using Mozilla's Universal Character Set Detector";
        license = "LGPL";
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "charsetdetect-ae" = callPackage
@@ -53608,7 +53213,6 @@ self: {
        description = "Command-line utility to draw charts from input data easily";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chart-histogram" = callPackage
@@ -53652,7 +53256,6 @@ self: {
        description = "Charting library targetting SVGs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chart-svg-various" = callPackage
@@ -53677,7 +53280,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chart-unit" = callPackage
@@ -53703,7 +53305,6 @@ self: {
        description = "Native haskell charts";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "charter" = callPackage
@@ -53808,6 +53409,7 @@ self: {
        ];
        description = "A library of simple NLP algorithms";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "chatty" = callPackage
@@ -53959,7 +53561,17 @@ self: {
        description = "Initial project template from stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "check-cfg-ambiguity" = callPackage
+    ({ mkDerivation, base, containers }:
+     mkDerivation {
+       pname = "check-cfg-ambiguity";
+       version = "0.0.0.1";
+       sha256 = "1qdg707a8yq61s5rs677yc8wp00sxdrf4vpr2r3c98q2psbkxl1n";
+       libraryHaskellDepends = [ base containers ];
+       description = "Checks context free grammar for ambiguity using brute force up to given limit";
+       license = lib.licenses.bsd3;
      }) {};
 
   "check-email" = callPackage
@@ -53992,7 +53604,6 @@ self: {
        description = "Check whether module and package imports conform to the PVP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "checked" = callPackage
@@ -54146,8 +53757,8 @@ self: {
      }:
      mkDerivation {
        pname = "chessIO";
-       version = "0.6.0.0";
-       sha256 = "0lc0bif9bp4h0131cy9rss90qv026mlknr16ayxlvfn3ynyarqv8";
+       version = "0.6.1.1";
+       sha256 = "0fnbbxsnfb53pcmqs8bhszbd36d44gn9wz0j029yhfh3i1fy40yy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -54168,8 +53779,6 @@ self: {
        ];
        description = "Basic chess library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chesshs" = callPackage
@@ -54201,31 +53810,41 @@ self: {
        description = "Query interface for Chevalier";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chiasma" = callPackage
-    ({ mkDerivation, base, bytestring, data-default-class, directory
-     , either, filepath, free, HTF, lens, mtl, parsec, posix-pty
-     , process, resourcet, split, transformers, typed-process, unix
-     , unliftio
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, composition
+     , composition-extra, conduit, conduit-extra, containers, cornea
+     , data-default, deepseq, directory, either, exceptions, filepath
+     , free, hedgehog, lens, mtl, parsec, parsers, posix-pty
+     , prettyprinter, prettyprinter-ansi-terminal, process, random
+     , relude, resourcet, split, stm-chans, stm-conduit, tasty
+     , tasty-hedgehog, text, transformers, typed-process, unix, unliftio
+     , unliftio-core, uuid
      }:
      mkDerivation {
        pname = "chiasma";
-       version = "0.1.0.0";
-       sha256 = "140p3qrrdh3im5qj43swl9cvljgyc39zy7ci5048j42h8x9q7glg";
-       libraryHaskellDepends = [
-         base bytestring data-default-class directory either filepath free
-         lens mtl parsec posix-pty process resourcet split transformers
-         typed-process unix unliftio
-       ];
-       testHaskellDepends = [
-         base bytestring data-default-class directory either filepath free
-         HTF lens mtl parsec posix-pty process resourcet split transformers
-         typed-process unix unliftio
+       version = "0.2.0.0";
+       sha256 = "11pbg9mlmp15hs2wdca0qyhbc94d91xkl75jlcaksla8l1qnnz9m";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring composition composition-extra
+         conduit conduit-extra containers cornea data-default deepseq
+         directory either exceptions filepath free lens mtl parsec parsers
+         posix-pty prettyprinter prettyprinter-ansi-terminal process random
+         relude resourcet split stm-chans stm-conduit text transformers
+         typed-process unix unliftio unliftio-core uuid
+       ];
+       testHaskellDepends = [
+         aeson attoparsec base bytestring composition composition-extra
+         conduit conduit-extra containers cornea data-default deepseq
+         directory either exceptions filepath free hedgehog lens mtl parsec
+         parsers posix-pty prettyprinter prettyprinter-ansi-terminal process
+         random relude resourcet split stm-chans stm-conduit tasty
+         tasty-hedgehog text transformers typed-process unix unliftio
+         unliftio-core uuid
        ];
        description = "tmux api";
-       license = lib.licenses.mit;
+       license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {};
@@ -54267,8 +53886,6 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "Haskell bindings for Chipmunk2D physics engine";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chitauri" = callPackage
@@ -54289,7 +53906,6 @@ self: {
        description = "Helper for the Major System";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "choice" = callPackage
@@ -54331,7 +53947,6 @@ self: {
        description = "Command-line program to choose random element from a stream";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chorale" = callPackage
@@ -54369,7 +53984,6 @@ self: {
        description = "A module containing basic geo functions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chp" = callPackage
@@ -54399,7 +54013,6 @@ self: {
        description = "MTL class instances for the CHP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chp-plus" = callPackage
@@ -54417,7 +54030,6 @@ self: {
        description = "A set of high-level concurrency utilities built on Communicating Haskell Processes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chp-spec" = callPackage
@@ -54447,7 +54059,6 @@ self: {
        description = "Transformers instances for the CHP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chr-core" = callPackage
@@ -54465,7 +54076,6 @@ self: {
        description = "Constraint Handling Rules";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chr-data" = callPackage
@@ -54504,7 +54114,6 @@ self: {
        description = "AST + surface language around chr";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chr-parse" = callPackage
@@ -54569,7 +54178,6 @@ self: {
        description = "neovim package manager";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chronograph" = callPackage
@@ -54677,8 +54285,6 @@ self: {
        benchmarkHaskellDepends = [ base ];
        description = "Benchmarking tool with focus on comparing results";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chs-cabal" = callPackage
@@ -54727,7 +54333,6 @@ self: {
        description = "FFI for Chu2 Agda Web Server Interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chuchu" = callPackage
@@ -54773,7 +54378,6 @@ self: {
        description = "Simple template library with static safety";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "chunky" = callPackage
@@ -54860,8 +54464,6 @@ self: {
        ];
        description = "Channel/Arrow based streaming computation library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cielo" = callPackage
@@ -55122,7 +54724,6 @@ self: {
        description = "Implementation of CipherSaber2 RC4 cryptography";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "circ" = callPackage
@@ -55276,7 +54877,6 @@ self: {
        description = "convert document IDs such as DOI, ISBN, arXiv ID to bibliographic reference";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "citeproc" = callPackage
@@ -55305,6 +54905,33 @@ self: {
        license = lib.licenses.bsd2;
      }) {};
 
+  "citeproc_0_4" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring
+     , case-insensitive, containers, data-default, Diff, directory
+     , file-embed, filepath, mtl, pandoc-types, pretty, safe, scientific
+     , text, timeit, transformers, unicode-collation, uniplate, vector
+     , xml-conduit
+     }:
+     mkDerivation {
+       pname = "citeproc";
+       version = "0.4";
+       sha256 = "0ca6xyv0pa0w10pzn7zmpvg6583xjs8ffj16ykkrw9gjd4nlginh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring case-insensitive containers
+         data-default file-embed filepath pandoc-types safe scientific text
+         transformers unicode-collation uniplate vector xml-conduit
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers Diff directory filepath mtl pretty
+         text timeit transformers
+       ];
+       description = "Generates citations and bibliography from CSL styles";
+       license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "citeproc-hs" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , hexpat, hs-bibutils, HTTP, json, mtl, network, network-uri
@@ -55344,7 +54971,6 @@ self: {
        description = "A Pandoc filter for processing bibliographic references with citeproc-hs";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cityhash" = callPackage
@@ -55418,8 +55044,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Clifford Algebra of three dimensional space";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cl3-hmatrix-interface" = callPackage
@@ -55431,8 +55055,6 @@ self: {
        libraryHaskellDepends = [ base cl3 hmatrix ];
        description = "Interface to/from Cl3 and HMatrix";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cl3-linear-interface" = callPackage
@@ -55444,8 +55066,6 @@ self: {
        libraryHaskellDepends = [ base cl3 linear ];
        description = "Interface to/from Cl3 and Linear";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clac" = callPackage
@@ -55465,7 +55085,6 @@ self: {
        description = "Simple CLI RPN calculator";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clafer" = callPackage
@@ -55501,7 +55120,6 @@ self: {
        description = "Compiles Clafer models to other formats: Alloy, JavaScript, JSON, HTML, Dot";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "claferIG" = callPackage
@@ -55535,7 +55153,6 @@ self: {
        description = "claferIG is an interactive tool that generates instances of Clafer models";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "claferwiki" = callPackage
@@ -55556,7 +55173,6 @@ self: {
        description = "A wiki-based IDE for literate modeling with Clafer";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clang-compilation-database" = callPackage
@@ -55651,43 +55267,11 @@ self: {
        description = "CAES Language for Synchronous Hardware (CLaSH)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-ghc" = callPackage
     ({ mkDerivation, array, base, bifunctors, bytestring, Cabal
      , clash-lib, clash-prelude, concurrent-supply, containers, deepseq
-     , directory, exceptions, filepath, ghc, ghc-boot, ghc-prim
-     , ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, ghci, hashable, haskeline, integer-gmp
-     , lens, mtl, primitive, process, reflection, split
-     , template-haskell, text, time, transformers, uniplate, unix
-     , unordered-containers, utf8-string, vector
-     }:
-     mkDerivation {
-       pname = "clash-ghc";
-       version = "1.2.5";
-       sha256 = "1wxlhcpwq0m7k4f12x16ybvp4s5m45p9qk27wjkgk133fw35y3pz";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         array base bifunctors bytestring Cabal clash-lib clash-prelude
-         concurrent-supply containers deepseq directory exceptions filepath
-         ghc ghc-boot ghc-prim ghc-typelits-extra ghc-typelits-knownnat
-         ghc-typelits-natnormalise ghci hashable haskeline integer-gmp lens
-         mtl primitive process reflection split template-haskell text time
-         transformers uniplate unix unordered-containers utf8-string vector
-       ];
-       executableHaskellDepends = [ base ];
-       description = "CAES Language for Synchronous Hardware";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "clash-ghc_1_4_1" = callPackage
-    ({ mkDerivation, array, base, bifunctors, bytestring, Cabal
-     , clash-lib, clash-prelude, concurrent-supply, containers, deepseq
      , directory, exceptions, extra, filepath, ghc, ghc-boot, ghc-prim
      , ghc-typelits-extra, ghc-typelits-knownnat
      , ghc-typelits-natnormalise, ghci, hashable, haskeline, integer-gmp
@@ -55697,8 +55281,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-ghc";
-       version = "1.4.1";
-       sha256 = "0brfhgdb5ilrm4rxx8hsjsrzrj0lxppsd1g1k7m4jrdk7xp1mnlk";
+       version = "1.4.2";
+       sha256 = "04sj88mcxszgbr8rxnrwa48r2pkf7h612507gcyk131f5kf6mkss";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -55714,51 +55298,9 @@ self: {
        description = "Clash: a functional hardware description language - GHC frontend";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-lib" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, attoparsec, base, binary
-     , bytestring, clash-prelude, concurrent-supply, containers
-     , data-binary-ieee754, data-default, deepseq, directory, dlist
-     , errors, exceptions, extra, filepath, ghc, ghc-boot-th
-     , ghc-typelits-knownnat, hashable, haskell-src-exts
-     , haskell-src-meta, hint, integer-gmp, interpolate, lens, mtl
-     , ordered-containers, parsers, prettyprinter, primitive, process
-     , reducers, tasty, tasty-hunit, template-haskell, temporary
-     , terminal-size, text, text-show, time, transformers, trifecta
-     , unordered-containers, utf8-string, vector
-     , vector-binary-instances
-     }:
-     mkDerivation {
-       pname = "clash-lib";
-       version = "1.2.5";
-       sha256 = "14xi0llzm6f3ymlcfwq67d16ggdkqxrxkvr6rwmykxrca3j1b6r3";
-       revision = "1";
-       editedCabalFile = "15pvhd19yq2m1c2n33iawxngmpc6d0jfsh02038j8fbpzx68p7bw";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         aeson ansi-terminal attoparsec base binary bytestring clash-prelude
-         concurrent-supply containers data-binary-ieee754 data-default
-         deepseq directory dlist errors exceptions extra filepath ghc
-         ghc-boot-th hashable haskell-src-meta hint integer-gmp interpolate
-         lens mtl ordered-containers parsers prettyprinter primitive process
-         reducers template-haskell temporary terminal-size text text-show
-         time transformers trifecta unordered-containers utf8-string vector
-         vector-binary-instances
-       ];
-       testHaskellDepends = [
-         base clash-prelude concurrent-supply containers data-default
-         deepseq ghc ghc-typelits-knownnat haskell-src-exts lens tasty
-         tasty-hunit template-haskell text transformers unordered-containers
-       ];
-       description = "CAES Language for Synchronous Hardware - As a Library";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "clash-lib_1_4_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, array
      , attoparsec, base, base16-bytestring, binary, bytestring
      , clash-prelude, concurrent-supply, containers, cryptohash-sha256
@@ -55775,8 +55317,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-lib";
-       version = "1.4.1";
-       sha256 = "1gg2snjfhhclfmyz07l5hddn8pfh9k4l4xjba1bx5php76kyiz0v";
+       version = "1.4.2";
+       sha256 = "1gismfz0pahhgfgra8kn34i3g82ip5nfy9aj38ym3rcnpg4aw10m";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson aeson-pretty ansi-terminal array attoparsec base
@@ -55799,7 +55341,6 @@ self: {
        description = "Clash: a functional hardware description language - As a library";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-multisignal" = callPackage
@@ -55815,50 +55356,9 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-prelude" = callPackage
-    ({ mkDerivation, array, base, bifunctors, binary, bytestring, Cabal
-     , cabal-doctest, constraints, containers, criterion
-     , data-binary-ieee754, data-default-class, deepseq, doctest
-     , ghc-prim, ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, half, hashable, hedgehog, hint
-     , integer-gmp, interpolate, lens, QuickCheck
-     , quickcheck-classes-base, recursion-schemes, reflection
-     , singletons, tasty, tasty-hedgehog, tasty-hunit, tasty-quickcheck
-     , template-haskell, text, text-show, th-abstraction, th-lift
-     , th-orphans, time, transformers, type-errors, uniplate, vector
-     }:
-     mkDerivation {
-       pname = "clash-prelude";
-       version = "1.2.5";
-       sha256 = "0q97ap4a6cbf6s06934639pws9z1yyzmmaw6gj05p8jv7r4is239";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [
-         array base bifunctors binary bytestring constraints containers
-         data-binary-ieee754 data-default-class deepseq ghc-prim
-         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
-         half hashable integer-gmp interpolate lens QuickCheck
-         recursion-schemes reflection singletons template-haskell text
-         text-show th-abstraction th-lift th-orphans time transformers
-         type-errors uniplate vector
-       ];
-       testHaskellDepends = [
-         base doctest ghc-typelits-extra ghc-typelits-knownnat
-         ghc-typelits-natnormalise hedgehog hint quickcheck-classes-base
-         tasty tasty-hedgehog tasty-hunit tasty-quickcheck template-haskell
-       ];
-       benchmarkHaskellDepends = [
-         base criterion deepseq template-haskell
-       ];
-       description = "CAES Language for Synchronous Hardware - Prelude library";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "clash-prelude_1_4_1" = callPackage
     ({ mkDerivation, array, arrows, base, bifunctors, binary
      , bytestring, Cabal, cabal-doctest, constraints, containers
      , criterion, data-binary-ieee754, data-default-class, deepseq
@@ -55873,8 +55373,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-prelude";
-       version = "1.4.1";
-       sha256 = "12f3nlg6820grkjkljhyqgq43qc1x58akiy51gbxf6qp8k55akka";
+       version = "1.4.2";
+       sha256 = "04hshjdddd9sk697zvbwlq6cdvyvdfrw670ksfdxxgssyrcsid95";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          array arrows base bifunctors binary bytestring constraints
@@ -55929,7 +55429,6 @@ self: {
        description = "CAES Language for Synchronous Hardware - SystemVerilog backend";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-verilog" = callPackage
@@ -55948,7 +55447,6 @@ self: {
        description = "CAES Language for Synchronous Hardware - Verilog backend";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-vhdl" = callPackage
@@ -55967,7 +55465,6 @@ self: {
        description = "CAES Language for Synchronous Hardware - VHDL backend";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "classify" = callPackage
@@ -56011,7 +55508,6 @@ self: {
        description = "Classify sounds produced by Xenopus laevis";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "classy-influxdb-simple" = callPackage
@@ -56051,7 +55547,6 @@ self: {
        description = "Typeclass based support for Miso, the Tasty Web Framework for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "classy-parallel" = callPackage
@@ -56196,7 +55691,6 @@ self: {
        description = "A secure, reliable content management system (CMS) and blogging platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) openssl;};
 
   "clckwrks-cli" = callPackage
@@ -56220,7 +55714,6 @@ self: {
        description = "a command-line interface for adminstrating some aspects of clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-dot-com" = callPackage
@@ -56243,7 +55736,6 @@ self: {
        description = "clckwrks.com";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-bugs" = callPackage
@@ -56270,7 +55762,6 @@ self: {
        description = "bug tracking plugin for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-ircbot" = callPackage
@@ -56295,7 +55786,6 @@ self: {
        description = "ircbot plugin for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-mailinglist" = callPackage
@@ -56321,7 +55811,6 @@ self: {
        description = "mailing list plugin for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-media" = callPackage
@@ -56345,7 +55834,6 @@ self: {
        description = "media plugin for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-page" = callPackage
@@ -56372,7 +55860,6 @@ self: {
        description = "support for CMS/Blogging in clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-plugin-redirect" = callPackage
@@ -56398,7 +55885,6 @@ self: {
        description = "support redirects for CMS/Blogging in clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-theme-bootstrap" = callPackage
@@ -56417,7 +55903,6 @@ self: {
        description = "simple bootstrap based template for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-theme-clckwrks" = callPackage
@@ -56436,7 +55921,6 @@ self: {
        description = "simple bootstrap based template for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clckwrks-theme-geo-bootstrap" = callPackage
@@ -56450,7 +55934,6 @@ self: {
        description = "geo bootstrap based template for clckwrks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cld2" = callPackage
@@ -56513,7 +55996,6 @@ self: {
        description = "Colorized LESS";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clevercss" = callPackage
@@ -56596,8 +56078,6 @@ self: {
        ];
        description = "Miscellaneous utilities for building and working with command line interfaces";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cli-git" = callPackage
@@ -56614,8 +56094,6 @@ self: {
        ];
        description = "Bindings to the git command-line interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cli-nix" = callPackage
@@ -56632,8 +56110,6 @@ self: {
        ];
        description = "Bindings to the nix command-line interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cli-setup" = callPackage
@@ -56779,7 +56255,6 @@ self: {
        description = "A Clifford algebra library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clifm" = callPackage
@@ -56896,7 +56371,6 @@ self: {
        description = "A parser/generator for Kindle-format clipping files (`My Clippings.txt`),";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clisparkline" = callPackage
@@ -57020,7 +56494,6 @@ self: {
        description = "timer functionality to clock IO commands";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {QtCore = null;};
 
   "clogparse" = callPackage
@@ -57133,7 +56606,6 @@ self: {
        description = "The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cloud-seeder" = callPackage
@@ -57163,7 +56635,6 @@ self: {
        description = "A tool for interacting with AWS CloudFormation";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cloudfront-signer" = callPackage
@@ -57190,8 +56661,8 @@ self: {
      }:
      mkDerivation {
        pname = "cloudi";
-       version = "2.0.1";
-       sha256 = "0s01582a2iyibwhlkmmf4n9h0fs3w0sjip65j78c4hldc91ylvqd";
+       version = "2.0.2";
+       sha256 = "19m07hh2vrzgj6nalcm3fbrlxcv5c8ci6d9c9pihv82d444n37j6";
        libraryHaskellDepends = [
          array base binary bytestring containers network time unix zlib
        ];
@@ -57353,7 +56824,6 @@ self: {
        description = "C to Lua data wrapper generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clumpiness" = callPackage
@@ -57424,7 +56894,6 @@ self: {
        description = "Tools for manipulating sequence clusters";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "clutterhs" = callPackage
@@ -57443,7 +56912,6 @@ self: {
        description = "Bindings to the Clutter animation library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) clutter; inherit (pkgs) pango;};
 
   "cmaes" = callPackage
@@ -57610,7 +57078,6 @@ self: {
        description = "Data model, parser, serialiser and transformations for Content MathML 3";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cmd-item" = callPackage
@@ -57777,7 +57244,6 @@ self: {
        description = "Compare types of any kinds";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cmt" = callPackage
@@ -57849,7 +57315,6 @@ self: {
        description = "Detailed visualization of CMs, HMMs and their comparisions";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cnc-spec-compiler" = callPackage
@@ -57872,7 +57337,6 @@ self: {
        description = "Compiler/Translator for CnC Specification Files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cndict" = callPackage
@@ -57990,7 +57454,6 @@ self: {
        description = "A Polysemy logging effect for high quality (unstructured) logs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "co-log-sys" = callPackage
@@ -58068,8 +57531,8 @@ self: {
      }:
      mkDerivation {
        pname = "cobot-io";
-       version = "0.1.3.18";
-       sha256 = "1xyri98rlg4ph9vyjicivq8vb1kk085pbpv43ydw6qvpqlp97wk5";
+       version = "0.1.3.19";
+       sha256 = "1gs4q04iyzzfwij58bbmhz2app3gf4xj0dnd4x4bhkgwj7gmvf4m";
        libraryHaskellDepends = [
          array attoparsec base binary bytestring containers data-msgpack
          deepseq http-conduit hyraxAbif lens linear mtl split text vector
@@ -58123,6 +57586,23 @@ self: {
        broken = true;
      }) {};
 
+  "code-conjure" = callPackage
+    ({ mkDerivation, base, express, leancheck, speculate
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "code-conjure";
+       version = "0.3.2";
+       sha256 = "1mmsbs9n04vcrhaizxv6z6mkd0w5gvhvrffwyfxpfg995vf19gz9";
+       libraryHaskellDepends = [
+         base express leancheck speculate template-haskell
+       ];
+       testHaskellDepends = [ base express leancheck speculate ];
+       description = "conjure Haskell functions out of partial definitions";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "code-page" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -58156,7 +57636,6 @@ self: {
        description = "Simple bidirectional serialization";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "codec-beam" = callPackage
@@ -58232,7 +57711,6 @@ self: {
        description = "A library for manipulating RPM files";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "codecov-haskell" = callPackage
@@ -58277,7 +57755,6 @@ self: {
        description = "Tool that automatically runs arbitrary commands when files change on disk";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "codepad" = callPackage
@@ -58419,8 +57896,6 @@ self: {
        benchmarkHaskellDepends = [ base gauge ];
        description = "Utility functions for Coercible types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "coercion-extras" = callPackage
@@ -58573,7 +58048,6 @@ self: {
        description = "Connector library for the coinbase exchange";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "coinbase-pro" = callPackage
@@ -58652,7 +58126,6 @@ self: {
        description = "Colada implements incremental word class class induction using online LDA";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colchis" = callPackage
@@ -58740,7 +58213,6 @@ self: {
        description = "Collapse the duplication output into clones and return their frequencies";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "collapse-util" = callPackage
@@ -58758,6 +58230,17 @@ self: {
        broken = true;
      }) {};
 
+  "collect-errors" = callPackage
+    ({ mkDerivation, base, containers, deepseq, QuickCheck }:
+     mkDerivation {
+       pname = "collect-errors";
+       version = "0.1.5.0";
+       sha256 = "1hljcnmwpk47rivlds9901129hgkm7j8h3yhz2j1j2pga5w43ck9";
+       libraryHaskellDepends = [ base containers deepseq QuickCheck ];
+       description = "Error monad with a Float instance";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "collection-json" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hspec, hspec-discover
      , network-arbitrary, network-uri, network-uri-json, QuickCheck
@@ -58779,7 +58262,6 @@ self: {
        description = "Collection+JSON—Hypermedia Type Tools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "collections" = callPackage
@@ -58826,7 +58308,6 @@ self: {
        description = "Useful standard collections types and related functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colock" = callPackage
@@ -58886,7 +58367,6 @@ self: {
        description = "Count colors in images";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colorful-monoids" = callPackage
@@ -58954,7 +58434,6 @@ self: {
        description = "Http Client addon for Colorless";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colorless-scotty" = callPackage
@@ -58969,7 +58448,6 @@ self: {
        description = "Scotty server add-on for Colorless";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colors" = callPackage
@@ -59029,7 +58507,6 @@ self: {
        description = "Instances of the manifold-classes for colour types";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "colourista" = callPackage
@@ -59085,7 +58562,6 @@ self: {
        description = "Enhanced serialization using seeking";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "columnar" = callPackage
@@ -59103,8 +58579,6 @@ self: {
        ];
        description = "A CSV toolkit based on cassava and enum-text";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "com" = callPackage
@@ -59201,28 +58675,24 @@ self: {
      }) {};
 
   "combinat" = callPackage
-    ({ mkDerivation, array, base, containers, QuickCheck, random, tasty
-     , tasty-hunit, tasty-quickcheck, test-framework
-     , test-framework-quickcheck2, transformers
+    ({ mkDerivation, array, base, compact-word-vectors, containers
+     , QuickCheck, random, tasty, tasty-hunit, tasty-quickcheck
+     , test-framework, test-framework-quickcheck2, transformers
      }:
      mkDerivation {
        pname = "combinat";
-       version = "0.2.9.0";
-       sha256 = "1y617qyhqh2k6d51j94c0xnj54i7b86d87n0j12idxlkaiv4j5sw";
-       revision = "1";
-       editedCabalFile = "0yjvvxfmyzjhh0q050cc2wkhaahzixsw7hf27n8dky3n4cxd5bix";
+       version = "0.2.10.0";
+       sha256 = "125yf5ycya722k85iph3dqv63bpj1a862c0ahs2y0snyd2qd6h35";
        libraryHaskellDepends = [
-         array base containers random transformers
+         array base compact-word-vectors containers random transformers
        ];
        testHaskellDepends = [
-         array base containers QuickCheck random tasty tasty-hunit
-         tasty-quickcheck test-framework test-framework-quickcheck2
-         transformers
+         array base compact-word-vectors containers QuickCheck random tasty
+         tasty-hunit tasty-quickcheck test-framework
+         test-framework-quickcheck2 transformers
        ];
        description = "Generate and manipulate various combinatorial objects";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "combinat-compat" = callPackage
@@ -59404,7 +58874,6 @@ self: {
        description = "A format for describing comics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "comma" = callPackage
@@ -59539,24 +59008,49 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "commonmark_0_2" = callPackage
+    ({ mkDerivation, base, bytestring, containers, parsec, tasty
+     , tasty-bench, tasty-hunit, tasty-quickcheck, text, transformers
+     , unicode-transforms
+     }:
+     mkDerivation {
+       pname = "commonmark";
+       version = "0.2";
+       sha256 = "083xrmyxsgn6ivrxqgmjbqvv4k64n7a330pbf1n7xbsjqh78cg28";
+       libraryHaskellDepends = [
+         base bytestring containers parsec text transformers
+         unicode-transforms
+       ];
+       testHaskellDepends = [
+         base parsec tasty tasty-hunit tasty-quickcheck text
+         unicode-transforms
+       ];
+       benchmarkHaskellDepends = [ base tasty-bench text ];
+       description = "Pure Haskell commonmark parser";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "commonmark-cli" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring, commonmark
      , commonmark-extensions, commonmark-pandoc, containers, mtl
-     , pandoc-types, pretty-simple, text
+     , pandoc-types, text
      }:
      mkDerivation {
        pname = "commonmark-cli";
-       version = "0.1.0.1";
-       sha256 = "1k7s7wzphllfydki1ifzab6b4x865vwxg50xldqdar141425s84l";
+       version = "0.2";
+       sha256 = "1g3i01acaqfqiqkl5xyxvzrh0alfx3il4r4rcjs4ii1nwaljdg6j";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          aeson ansi-terminal base bytestring commonmark
          commonmark-extensions commonmark-pandoc containers mtl pandoc-types
-         pretty-simple text
+         text
        ];
        description = "Command-line commonmark converter and highlighter";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "commonmark-extensions" = callPackage
@@ -59583,6 +59077,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "commonmark-extensions_0_2_1_2" = callPackage
+    ({ mkDerivation, base, commonmark, containers, emojis, filepath
+     , network-uri, parsec, tasty, tasty-bench, tasty-hunit, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "commonmark-extensions";
+       version = "0.2.1.2";
+       sha256 = "1ky0j7086a8mqpg26j2nkrc5wfwiw5cd3h3jqncpy59vmj1prkx4";
+       libraryHaskellDepends = [
+         base commonmark containers emojis filepath network-uri parsec text
+         transformers
+       ];
+       testHaskellDepends = [
+         base commonmark parsec tasty tasty-hunit text
+       ];
+       benchmarkHaskellDepends = [ base commonmark tasty-bench text ];
+       description = "Pure Haskell commonmark parser";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "commonmark-pandoc" = callPackage
     ({ mkDerivation, base, commonmark, commonmark-extensions
      , containers, pandoc-types, text
@@ -59598,6 +59114,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "commonmark-pandoc_0_2_1" = callPackage
+    ({ mkDerivation, base, commonmark, commonmark-extensions
+     , pandoc-types, text
+     }:
+     mkDerivation {
+       pname = "commonmark-pandoc";
+       version = "0.2.1";
+       sha256 = "0i5qavci8j63d15i2c6cbm0b53kcjh7s4vxadfgf4vkp2sy1ybvw";
+       libraryHaskellDepends = [
+         base commonmark commonmark-extensions pandoc-types text
+       ];
+       description = "Bridge between commonmark and pandoc AST";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "commsec" = callPackage
     ({ mkDerivation, base, bytestring, cipher-aes128, crypto-api
      , network
@@ -59632,7 +59164,6 @@ self: {
        description = "Key agreement for commsec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "commutative" = callPackage
@@ -59780,7 +59311,6 @@ self: {
        description = "Mutable arrays living on the compact heap";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "compact-mutable-vector" = callPackage
@@ -59866,16 +59396,14 @@ self: {
      }:
      mkDerivation {
        pname = "compact-word-vectors";
-       version = "0.2.0.1";
-       sha256 = "0ix8l6vvnf62vp6716gmypwqsrs6x5pzcx5yfj24bn4gk0xak3lm";
+       version = "0.2.0.2";
+       sha256 = "1yjlymp2b8is72xvdb29rf7hc1n96zmda1j3z5alzbp4py00jww8";
        libraryHaskellDepends = [ base primitive ];
        testHaskellDepends = [
          base primitive QuickCheck random tasty tasty-hunit tasty-quickcheck
        ];
        description = "Small vectors of small integers stored very compactly";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "compactable" = callPackage
@@ -59939,8 +59467,6 @@ self: {
        ];
        description = "Compositional Data Types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "compdata-automata" = callPackage
@@ -59956,8 +59482,6 @@ self: {
        ];
        description = "Tree automata on Compositional Data Types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "compdata-dags" = callPackage
@@ -60069,8 +59593,6 @@ self: {
        ];
        description = "Client for the Compendium schema server";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "compensated" = callPackage
@@ -60174,7 +59696,6 @@ self: {
        description = "Empirical algorithmic complexity";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "componentm" = callPackage
@@ -60465,8 +59986,6 @@ self: {
        ];
        description = "Swagger for Vinyl records";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "composite-tuple" = callPackage
@@ -60705,7 +60224,6 @@ self: {
        description = "Well-kinded computational algebra library, currently supporting Groebner basis";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "computational-geometry" = callPackage
@@ -60815,7 +60333,6 @@ self: {
        description = "Morphological disambiguation based on constrained CRFs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concraft-hr" = callPackage
@@ -60838,7 +60355,6 @@ self: {
        description = "Part-of-speech tagger for Croatian";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concraft-pl" = callPackage
@@ -60868,7 +60384,6 @@ self: {
        description = "Morphological tagger for Polish";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concrete-haskell" = callPackage
@@ -60913,7 +60428,6 @@ self: {
        description = "Library for the Concrete data format";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concrete-haskell-autogen" = callPackage
@@ -60931,7 +60445,6 @@ self: {
        description = "Automatically generated Thrift definitions for the Concrete data format";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concrete-relaxng-parser" = callPackage
@@ -61027,8 +60540,6 @@ self: {
        ];
        description = "Benchmarks to compare concurrency APIs";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concurrent-barrier" = callPackage
@@ -61160,8 +60671,6 @@ self: {
        benchmarkHaskellDepends = [ base machines time ];
        description = "Concurrent networked stream transducers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "concurrent-output" = callPackage
@@ -61320,7 +60829,6 @@ self: {
        description = "Information retrieval library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "condorcet" = callPackage
@@ -61375,7 +60883,6 @@ self: {
        description = "a library with examples of using Conductive with hsc3";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conductive-song" = callPackage
@@ -61388,7 +60895,6 @@ self: {
        description = "a library of functions which are useful for composing music";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conduino" = callPackage
@@ -61840,7 +61346,6 @@ self: {
        description = "Zip archive interface for the Conduit Virtual File System";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conduit-zstd" = callPackage
@@ -61929,7 +61434,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer" = callPackage
@@ -61993,8 +61497,6 @@ self: {
        ];
        description = "Configuration for reading dhall files";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer-hedis" = callPackage
@@ -62040,7 +61542,6 @@ self: {
        description = "Configuration for reading dhall files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer-provider-json" = callPackage
@@ -62082,7 +61583,6 @@ self: {
        description = "Configuration for reading yaml files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer-snap" = callPackage
@@ -62126,7 +61626,6 @@ self: {
        description = "Configuration for reading dhall files";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer-source-json" = callPackage
@@ -62167,7 +61666,6 @@ self: {
        description = "Configuration for reading yaml files";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "conferer-warp" = callPackage
@@ -62236,7 +61734,6 @@ self: {
        description = "A .conf file formatter";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "confide" = callPackage
@@ -62344,7 +61841,6 @@ self: {
        description = "A small program for swapping out dot files";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "config-value" = callPackage
@@ -62406,7 +61902,6 @@ self: {
        description = "parser for config files, shell variables, command line args";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "configuration" = callPackage
@@ -62516,7 +62011,6 @@ self: {
        description = "The next generation of configuration management";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "configurator-pg" = callPackage
@@ -62695,20 +62189,20 @@ self: {
      }) {};
 
   "connections" = callPackage
-    ({ mkDerivation, base, containers, doctest, hedgehog }:
+    ({ mkDerivation, base, containers, doctest, extended-reals
+     , hedgehog, time
+     }:
      mkDerivation {
        pname = "connections";
-       version = "0.3.0";
-       sha256 = "0ias6f5nzd83i2x6823ypzp598d8rgp74wmhd4gk7slcyszgpj6l";
+       version = "0.3.1";
+       sha256 = "0candwv3sv6qk76a4dn3m64957462da1pyvixl8jazf0gvq1pp23";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base containers ];
+       libraryHaskellDepends = [ base containers extended-reals time ];
        executableHaskellDepends = [ base doctest ];
-       testHaskellDepends = [ base hedgehog ];
+       testHaskellDepends = [ base hedgehog time ];
        description = "Orders, Galois connections, and lattices";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "consistent" = callPackage
@@ -62968,7 +62462,6 @@ self: {
        description = "Some conviencience type functions for manipulating constraints";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "constraint-reflection" = callPackage
@@ -63055,6 +62548,8 @@ self: {
        pname = "constraints-extras";
        version = "0.3.1.0";
        sha256 = "0hr1xaxypkmd2a856ha8v3jhkh4hr6g8kar0lr4vj3jsj2h6cmks";
+       revision = "1";
+       editedCabalFile = "1hcaj1yk4f64v388zq2pd34ljkm68zds3vd8a3yhqr0xgr1wy3y7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base constraints template-haskell ];
@@ -63114,7 +62609,6 @@ self: {
        description = "Exact computation with constructible real numbers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "constructive-algebra" = callPackage
@@ -63164,10 +62658,8 @@ self: {
      }:
      mkDerivation {
        pname = "consumers";
-       version = "2.2.0.2";
-       sha256 = "0nml5hn6n95ngy1qvj6w4rkwa8r6qax0nc2vgimk68bawv4z97qd";
-       revision = "2";
-       editedCabalFile = "0fa67waf0af62kpljdksm00lvh29vm1rddfpjvy5c7lcy2a9ll97";
+       version = "2.2.0.3";
+       sha256 = "0jvh3mf7jmrv3zjplc5cjmpyj7h15573l6dlyzn3c2jhj61zjwkk";
        libraryHaskellDepends = [
          base containers exceptions extra hpqtypes lifted-base
          lifted-threads log-base monad-control monad-time mtl stm time
@@ -63181,7 +62673,6 @@ self: {
        description = "Concurrent PostgreSQL data consumers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "container" = callPackage
@@ -63196,7 +62687,6 @@ self: {
        description = "Containers abstraction and utilities";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "container-builder" = callPackage
@@ -63371,19 +62861,20 @@ self: {
      }) {};
 
   "context-free-grammar" = callPackage
-    ({ mkDerivation, array, base, containers, control-monad-omega
-     , dlist, HUnit, mtl, pretty, QuickCheck, quickcheck-properties
-     , template-haskell, test-framework, test-framework-hunit
-     , test-framework-quickcheck2
+    ({ mkDerivation, alex, array, base, containers, control-monad-omega
+     , dlist, happy, HUnit, mtl, pretty, QuickCheck
+     , quickcheck-properties, semigroups, template-haskell
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
      }:
      mkDerivation {
        pname = "context-free-grammar";
-       version = "0.1.0";
-       sha256 = "11s6v8h39iq0wy4p4y8cwpr8fjhphql07s38rgbm8qsq1hj9f3a1";
+       version = "0.1.1";
+       sha256 = "15xsm8v157jpz2v98lry7sr77nwk0785mmj3zdb21ajqnkccyb14";
        libraryHaskellDepends = [
          array base containers control-monad-omega dlist mtl pretty
-         template-haskell
+         semigroups template-haskell
        ];
+       libraryToolDepends = [ alex happy ];
        testHaskellDepends = [
          base containers HUnit pretty QuickCheck quickcheck-properties
          template-haskell test-framework test-framework-hunit
@@ -63480,8 +62971,6 @@ self: {
        ];
        description = "Unified interface for primitive arrays";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "contiguous-checked" = callPackage
@@ -63506,8 +62995,6 @@ self: {
        libraryHaskellDepends = [ base contiguous primitive semirings ];
        description = "dft of contiguous memory structures";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "continue" = callPackage
@@ -63573,7 +63060,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "continuum-client" = callPackage
@@ -63589,7 +63075,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "contra-tracer" = callPackage
@@ -63661,7 +63146,6 @@ self: {
        description = "Class of monad transformers which control operations can be lifted thru";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "control-bool" = callPackage
@@ -63743,7 +63227,6 @@ self: {
        description = "Monad transformer for attempt. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "control-monad-exception" = callPackage
@@ -63776,7 +63259,6 @@ self: {
        description = "Monads-fd instances for the EMT exceptions monad transformer";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "control-monad-exception-monadstf" = callPackage
@@ -64005,7 +63487,6 @@ self: {
        description = "Injective explicit total and partial conversions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "convert" = callPackage
@@ -64024,7 +63505,6 @@ self: {
        description = "Safe and unsafe data conversion utilities with strong type-level operation. checking.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "convert-annotation" = callPackage
@@ -64084,7 +63564,6 @@ self: {
        description = "convertible instances for ascii";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "convertible-text" = callPackage
@@ -64106,7 +63585,6 @@ self: {
        description = "Typeclasses and instances for converting between types (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cookbook" = callPackage
@@ -64151,8 +63629,6 @@ self: {
        ];
        description = "web cookies";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "coordinate" = callPackage
@@ -64166,7 +63642,6 @@ self: {
        description = "A representation of latitude and longitude";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot" = callPackage
@@ -64176,8 +63651,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot";
-       version = "3.2.1";
-       sha256 = "1gxa2sc6n7hswkzqrr9dzzgwynw7sdvccyigfhm7gcy1l79gl3iq";
+       version = "3.3";
+       sha256 = "166nin0861i2ak06gdhj6sv6zv7cc60wmqgv4mly9hjf0qp3w6j1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -64187,7 +63662,6 @@ self: {
        description = "A stream DSL for writing embedded C programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot-c99" = callPackage
@@ -64198,8 +63672,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "3.2.1";
-       sha256 = "0wi4bd0hmh05z6m7mjl69z1arhnw08v75hnwzxl6dibkrymmq286";
+       version = "3.3";
+       sha256 = "09qjfhf0dkccbi4kycwqavv7bxdpfj2j50vkljmzrxh59xq00jnz";
        libraryHaskellDepends = [
          base containers copilot-core directory filepath language-c99
          language-c99-simple language-c99-util mtl pretty
@@ -64211,7 +63685,6 @@ self: {
        description = "A compiler for Copilot targeting C99";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot-cbmc" = callPackage
@@ -64229,15 +63702,14 @@ self: {
        description = "Copilot interface to a C model-checker";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot-core" = callPackage
     ({ mkDerivation, base, dlist, mtl, pretty }:
      mkDerivation {
        pname = "copilot-core";
-       version = "3.2.1";
-       sha256 = "1h9wqv75s49vvqagcdkxx8n5vwn0fsh271v2jm60msssdd7ljwp6";
+       version = "3.3";
+       sha256 = "19k206hsqd3lw2k40cjpjhnwfjsfraagw622bxn97rk4195jqhy6";
        libraryHaskellDepends = [ base dlist mtl pretty ];
        description = "An intermediate representation for Copilot";
        license = lib.licenses.bsd3;
@@ -64249,8 +63721,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-language";
-       version = "3.2.1";
-       sha256 = "03r50k3i24rzjkc1maklq7351flzjv3cc2i6d1shib3dklzjsw8l";
+       version = "3.3";
+       sha256 = "1x39jyn82j9mydsbi8n24a2nx8j00gcxw2rsxqagjpwqx10igyr2";
        libraryHaskellDepends = [
          array base containers copilot-core copilot-theorem data-reify
          ghc-prim mtl
@@ -64258,7 +63730,6 @@ self: {
        description = "A Haskell-embedded DSL for monitoring hard real-time distributed systems";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot-libraries" = callPackage
@@ -64267,15 +63738,14 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-libraries";
-       version = "3.2.1";
-       sha256 = "1grcpc9lmqvsi3cb9j45w6hvqdljv7z0yylxf3i2i5y931gj6gpv";
+       version = "3.3";
+       sha256 = "0f8g67j26g1k5xph6zg5crypj0ys8mf0i5pazn04sy02lslsdmd9";
        libraryHaskellDepends = [
          array base containers copilot-language data-reify mtl parsec
        ];
        description = "Libraries for the Copilot language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copilot-sbv" = callPackage
@@ -64297,23 +63767,22 @@ self: {
 
   "copilot-theorem" = callPackage
     ({ mkDerivation, ansi-terminal, base, bimap, bv-sized, containers
-     , copilot-core, data-default, directory, filepath, mtl, panic
-     , parameterized-utils, parsec, pretty, process, random
+     , copilot-core, data-default, directory, filepath, libBF, mtl
+     , panic, parameterized-utils, parsec, pretty, process, random
      , transformers, what4, xml
      }:
      mkDerivation {
        pname = "copilot-theorem";
-       version = "3.2.1";
-       sha256 = "1vns5bavlm95hc57qwwjpzaq0xj5pv3dk2n1ac0rbjdbpsa3dl4l";
+       version = "3.3";
+       sha256 = "1js4j9alfnlxi6zsvcdj8zf2r04lm9rp22r6zq6qkhams6pmmxly";
        libraryHaskellDepends = [
          ansi-terminal base bimap bv-sized containers copilot-core
-         data-default directory filepath mtl panic parameterized-utils
+         data-default directory filepath libBF mtl panic parameterized-utils
          parsec pretty process random transformers what4 xml
        ];
        description = "k-induction for Copilot";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "copr" = callPackage
@@ -64438,8 +63907,8 @@ self: {
      }:
      mkDerivation {
        pname = "core-program";
-       version = "0.2.6.0";
-       sha256 = "1qyl7kcdqxfl2inx66n7pa1z2pqjxrz1bpg3jjknjj0kpw9rlhf3";
+       version = "0.2.7.1";
+       sha256 = "1bm75bdmcrjizmrspl52qqs4vq9hlyh7fjv5y5lfpkmqrs45045b";
        libraryHaskellDepends = [
          async base bytestring chronologique core-data core-text directory
          exceptions filepath fsnotify hashable hourglass mtl prettyprinter
@@ -64530,30 +63999,27 @@ self: {
        librarySystemDepends = [ rocksdb ];
        description = "Launches CoreNLP and parses the JSON output";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) rocksdb;};
 
   "cornea" = callPackage
-    ({ mkDerivation, base-noprelude, either, HTF, lens, lifted-base
-     , monad-control, mtl, relude, template-haskell, th-abstraction
-     , transformers
+    ({ mkDerivation, base, either, hedgehog, lens, lifted-base
+     , monad-control, mtl, relude, tasty, tasty-hedgehog
+     , template-haskell, th-abstraction, transformers
      }:
      mkDerivation {
        pname = "cornea";
-       version = "0.3.1.2";
-       sha256 = "04iika5r5w3347w87b8whwrxym5nzvgl5pr76fpxw78fwvi1nvzk";
+       version = "0.4.0.0";
+       sha256 = "0hm17g350gnklvgi5nsx03lgbx2zs9h4q11y2gi9zjnm6gv6gjrn";
        libraryHaskellDepends = [
-         base-noprelude either lens lifted-base monad-control mtl relude
+         base either lens lifted-base monad-control mtl relude
          template-haskell th-abstraction transformers
        ];
        testHaskellDepends = [
-         base-noprelude either HTF lens lifted-base monad-control mtl relude
-         template-haskell th-abstraction transformers
+         base either hedgehog lens lifted-base monad-control mtl relude
+         tasty tasty-hedgehog template-haskell th-abstraction transformers
        ];
        description = "classy optical monadic state";
-       license = "unknown";
-       hydraPlatforms = lib.platforms.none;
+       license = "BSD-2-Clause-Patent";
      }) {};
 
   "coroutine-enumerator" = callPackage
@@ -64566,7 +64032,6 @@ self: {
        description = "Bridge between the monad-coroutine and enumerator packages";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "coroutine-iteratee" = callPackage
@@ -64579,7 +64044,6 @@ self: {
        description = "Bridge between the monad-coroutine and iteratee packages";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "coroutine-object" = callPackage
@@ -64640,7 +64104,7 @@ self: {
        description = "A modern, lightweight, complete client for CouchDB";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-     }) {inherit (pkgs) couchdb;};
+     }) {couchdb = null;};
 
   "couchdb-conduit" = callPackage
     ({ mkDerivation, aeson, attoparsec, attoparsec-conduit, base
@@ -64699,7 +64163,6 @@ self: {
        description = "Couch DB client library using http-enumerator and aeson";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "count" = callPackage
@@ -64743,8 +64206,6 @@ self: {
        testHaskellDepends = [ base hspec QuickCheck text ];
        description = "Countable Text Inflections";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "counter" = callPackage
@@ -64794,8 +64255,6 @@ self: {
        testHaskellDepends = [ aeson base HTF HUnit ];
        description = "ISO 3166 country codes and i18n names";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "courier" = callPackage
@@ -64939,8 +64398,6 @@ self: {
        testHaskellDepends = [ base hspec hspec-megaparsec megaparsec ];
        description = "Build tool for C";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cplex-hs" = callPackage
@@ -65042,7 +64499,6 @@ self: {
        description = "Run random effect using cprng-aes, a crypto pseudo number generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cps-except" = callPackage
@@ -65201,7 +64657,6 @@ self: {
        description = "Tinylog integration for cql-io";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs" = callPackage
@@ -65254,7 +64709,6 @@ self: {
        description = "Example for cqrs package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-memory" = callPackage
@@ -65272,7 +64726,6 @@ self: {
        description = "Memory backend for the cqrs package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-postgresql" = callPackage
@@ -65297,7 +64750,6 @@ self: {
        description = "PostgreSQL backend for the cqrs package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-sqlite3" = callPackage
@@ -65319,7 +64771,6 @@ self: {
        description = "SQLite3 backend for the cqrs package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-test" = callPackage
@@ -65337,7 +64788,6 @@ self: {
        description = "Command-Query Responsibility Segregation Test Support";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-testkit" = callPackage
@@ -65356,7 +64806,6 @@ self: {
        description = "Command-Query Responsibility Segregation Test Support";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cqrs-types" = callPackage
@@ -65405,7 +64854,7 @@ self: {
        broken = true;
      }) {crack = null;};
 
-  "crackNum" = callPackage
+  "crackNum_2_4" = callPackage
     ({ mkDerivation, array, base, FloatingHex }:
      mkDerivation {
        pname = "crackNum";
@@ -65417,9 +64866,13 @@ self: {
        executableHaskellDepends = [ array base FloatingHex ];
        description = "Crack various integer, floating-point data formats";
        license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "crackNum_3_1" = callPackage
+  "crackNum" = callPackage
     ({ mkDerivation, base, directory, filepath, libBF, process, sbv
      , tasty, tasty-golden
      }:
@@ -65434,7 +64887,9 @@ self: {
        ];
        description = "Crack various integer and floating-point data formats";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "craft" = callPackage
@@ -65467,7 +64922,6 @@ self: {
        description = "A UNIX configuration management library in Haskell";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "craftwerk" = callPackage
@@ -65495,7 +64949,6 @@ self: {
        description = "Cairo backend for Craftwerk";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "craftwerk-gtk" = callPackage
@@ -65514,7 +64967,6 @@ self: {
        description = "Gtk UI for Craftwerk";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crawlchain" = callPackage
@@ -65570,7 +65022,6 @@ self: {
        description = "HTTP Racing Library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crc" = callPackage
@@ -65647,8 +65098,6 @@ self: {
        ];
        description = "Conflict-free replicated data types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crdt-event-fold" = callPackage
@@ -65781,7 +65230,6 @@ self: {
        description = "First-order, linear-chain conditional random fields";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crf-chain1-constrained" = callPackage
@@ -65802,7 +65250,6 @@ self: {
        description = "First-order, constrained, linear-chain conditional random fields";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crf-chain2-generic" = callPackage
@@ -65821,7 +65268,6 @@ self: {
        description = "Second-order, generic, constrained, linear conditional random fields";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crf-chain2-tiers" = callPackage
@@ -65841,7 +65287,6 @@ self: {
        description = "Second-order, tiered, constrained, linear conditional random fields";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "critbit" = callPackage
@@ -65929,8 +65374,6 @@ self: {
        ];
        description = "A simple tool for comparing in Criterion benchmark results";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "criterion-compare" = callPackage
@@ -66035,7 +65478,6 @@ self: {
        description = "CRIU RPC client";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "criu-rpc-types" = callPackage
@@ -66080,7 +65522,6 @@ self: {
        description = "An implementation of Douglas Crockford's base32 encoding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crocodile" = callPackage
@@ -66145,7 +65586,6 @@ self: {
        description = "Cron datatypes and Attoparsec parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cronus" = callPackage
@@ -66218,8 +65658,6 @@ self: {
        ];
        description = "Pure Haskell implelementation for GNU SHA512 crypt algorithm";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crypto-api" = callPackage
@@ -66349,7 +65787,6 @@ self: {
        description = "Conduit interface for cryptographic operations (from crypto-api)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "crypto-enigma" = callPackage
@@ -66633,7 +66070,6 @@ self: {
        description = "Symmetrical block and stream ciphers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cryptocompare" = callPackage
@@ -66837,7 +66273,6 @@ self: {
        description = "Reversable and secure encoding of object ids as a bytestring";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cryptoids-class" = callPackage
@@ -66852,7 +66287,6 @@ self: {
        description = "Typeclass-based interface to cryptoids";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cryptoids-types" = callPackage
@@ -66910,7 +66344,6 @@ self: {
        description = "Cryptol: The Language of Cryptography";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cryptonite" = callPackage
@@ -66922,6 +66355,8 @@ self: {
        pname = "cryptonite";
        version = "0.28";
        sha256 = "1nx568qv25dxhbii7lzf1hbv0dyz95z715mmxjnnrkgpwdm8ibbl";
+       revision = "1";
+       editedCabalFile = "0hqbpdsj1b4fgisr11a9gmin5r7bqr3f83wc2xxc18dr01xhrw7d";
        libraryHaskellDepends = [
          base basement bytestring deepseq ghc-prim integer-gmp memory
        ];
@@ -66935,6 +66370,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "cryptonite_0_29" = callPackage
+    ({ mkDerivation, base, basement, bytestring, deepseq, gauge
+     , ghc-prim, integer-gmp, memory, random, tasty, tasty-hunit
+     , tasty-kat, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "cryptonite";
+       version = "0.29";
+       sha256 = "13xhp3hshb8x06bw37kp16c9jpjmgfn06nkj9drz745fv8f04fnq";
+       libraryHaskellDepends = [
+         base basement bytestring deepseq ghc-prim integer-gmp memory
+       ];
+       testHaskellDepends = [
+         base bytestring memory tasty tasty-hunit tasty-kat tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring deepseq gauge memory random
+       ];
+       description = "Cryptography Primitives sink";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "cryptonite-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
      , conduit-extra, cryptonite, exceptions, memory, resourcet, tasty
@@ -67032,7 +66490,6 @@ self: {
        description = "Control Crystalfontz LCD displays";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "csa" = callPackage
@@ -67094,7 +66551,6 @@ self: {
        description = "Analytical CSG (Constructive Solid Geometry) library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "csound-catalog" = callPackage
@@ -67103,8 +66559,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-catalog";
-       version = "0.7.4";
-       sha256 = "1ca70yk13b239383q9d8fwc4qd6jm22dqinfhasd88b4iv9p46h8";
+       version = "0.7.5";
+       sha256 = "1ly2s8lxy4wdcvkvsj9nw71r5dbsxpb0z8kzvywj9a5clqid109y";
        libraryHaskellDepends = [
          base csound-expression csound-sampler sharc-timbre transformers
        ];
@@ -67131,8 +66587,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-expression";
-       version = "5.3.4";
-       sha256 = "0v5mv2yhw114y7hixh3qjy88sfrry7xfyzkwwk1dpwnq8yycp0ir";
+       version = "5.4.1";
+       sha256 = "0dyafw91ycsr71sxf7z3fbvfbp9vh8l260l9ygfxlrg37971l4pj";
        libraryHaskellDepends = [
          base Boolean colour containers csound-expression-dynamic
          csound-expression-opcodes csound-expression-typed data-default
@@ -67149,8 +66605,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-expression-dynamic";
-       version = "0.3.6";
-       sha256 = "1s4gyn4rpkpfpb0glbb39hnzkw9vr4his3s4a4azx894cymyhzg0";
+       version = "0.3.7";
+       sha256 = "1qx9qig18y89k4sxpn333hvqz74c6f56nbvaf8dfbawx5asar0jm";
        libraryHaskellDepends = [
          array base Boolean containers data-default data-fix data-fix-cse
          deriving-compat hashable transformers wl-pprint
@@ -67165,8 +66621,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-expression-opcodes";
-       version = "0.0.5.0";
-       sha256 = "1qif8nx3652883zf84w4d0l2lzlbrk9n25rn4i5mxcmlv9px06ha";
+       version = "0.0.5.1";
+       sha256 = "0h1a9yklsqbykhdinmk8znm7kfg0jd1k394cx2lirpdxn136kbcm";
        libraryHaskellDepends = [
          base csound-expression-dynamic csound-expression-typed transformers
        ];
@@ -67182,8 +66638,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-expression-typed";
-       version = "0.2.4";
-       sha256 = "1hqmwlgx0dcci7z76w4i5xcq10c4jigzbm7fvf0xxwffmhf6j752";
+       version = "0.2.5";
+       sha256 = "1bid3wxg879l69w8c1vcana0xxrggxv30dw9bqi8zww2w23id54q";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base Boolean colour containers csound-expression-dynamic
@@ -67198,8 +66654,8 @@ self: {
     ({ mkDerivation, base, csound-expression, transformers }:
      mkDerivation {
        pname = "csound-sampler";
-       version = "0.0.10.0";
-       sha256 = "0mi7w39adkn5l1h05arfap3c0ddb8j65wv96i3jrswpc3ljf3b2y";
+       version = "0.0.10.1";
+       sha256 = "1c2g83a0n4y1fvq3amj9m2hygg9rbpl5x8zsicb52qjm7vjing2i";
        libraryHaskellDepends = [ base csound-expression transformers ];
        description = "A musical sampler based on Csound";
        license = lib.licenses.bsd3;
@@ -67234,7 +66690,6 @@ self: {
        description = "A command line type checker for CSPM files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cspretty" = callPackage
@@ -67269,8 +66724,8 @@ self: {
      }:
      mkDerivation {
        pname = "css-easings";
-       version = "0.2.0.0";
-       sha256 = "0i969cp4j154ddq7x2821p53qh8dnsr7f74rsdi4y9rbbls1fnpv";
+       version = "0.2.1.0";
+       sha256 = "0mn3h7fqp4bs7rqjzc05k29man8i77dg1avcajdyysf84azklyrw";
        libraryHaskellDepends = [
          aeson base blaze-markup data-default QuickCheck scientific
          shakespeare text
@@ -67282,22 +66737,23 @@ self: {
      }) {};
 
   "css-selectors" = callPackage
-    ({ mkDerivation, aeson, alex, array, base, blaze-markup
-     , data-default, Decimal, happy, QuickCheck, shakespeare
-     , template-haskell, test-framework, test-framework-quickcheck2
-     , text
+    ({ mkDerivation, aeson, alex, array, base, binary, blaze-markup
+     , bytestring, data-default, Decimal, happy, hashable, QuickCheck
+     , shakespeare, template-haskell, test-framework
+     , test-framework-quickcheck2, text, zlib
      }:
      mkDerivation {
        pname = "css-selectors";
-       version = "0.2.1.0";
-       sha256 = "1kcxbvp96imhkdrd7w9g2z4d586lmdcpnbgl8g5w04ri85qsq162";
+       version = "0.4.0.3";
+       sha256 = "1jz7s5lpfgs6axzkmwp2is1mhsn8jsb52ahxv8my07lx0yvy1g7v";
        libraryHaskellDepends = [
-         aeson array base blaze-markup data-default Decimal QuickCheck
-         shakespeare template-haskell text
+         aeson array base binary blaze-markup bytestring data-default
+         Decimal hashable QuickCheck shakespeare template-haskell text zlib
        ];
        libraryToolDepends = [ alex happy ];
        testHaskellDepends = [
-         base QuickCheck test-framework test-framework-quickcheck2 text
+         base binary hashable QuickCheck test-framework
+         test-framework-quickcheck2 text
        ];
        description = "Parsing, rendering and manipulating css selectors in Haskell";
        license = lib.licenses.bsd3;
@@ -67391,7 +66847,6 @@ self: {
        description = "A flexible, fast, enumerator-based CSV parser library for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "csv-nptools" = callPackage
@@ -67487,7 +66942,6 @@ self: {
        description = "A programming language for text modification";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ctrie" = callPackage
@@ -67529,7 +66983,6 @@ self: {
        description = "Cubic DSL for 3D printing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cubical" = callPackage
@@ -67883,8 +67336,6 @@ self: {
        testHaskellDepends = [ aeson base bson hspec QuickCheck ];
        description = "ISO-4217 Currency Codes";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "currency-convert" = callPackage
@@ -68055,7 +67506,6 @@ self: {
        description = "Terminal tool for viewing tabular data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cursor" = callPackage
@@ -68124,7 +67574,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cursor-gen" = callPackage
@@ -68270,6 +67719,9 @@ self: {
        testToolDepends = [ c2hs ];
        description = "Cuts out uninteresting parts of videos by detecting silences";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) pocketsphinx; inherit (pkgs) sphinxbase;};
 
   "cutter" = callPackage
@@ -68307,7 +67759,6 @@ self: {
        description = "Functional Combinators for Computer Vision";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cve" = callPackage
@@ -68357,7 +67808,6 @@ self: {
        description = "Haskell bindings for the neo4j \"cypher\" query language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "czipwith" = callPackage
@@ -68601,7 +68051,6 @@ self: {
        description = "Prints a series of dates";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darcs" = callPackage
@@ -68620,8 +68069,8 @@ self: {
      }:
      mkDerivation {
        pname = "darcs";
-       version = "2.16.3";
-       sha256 = "1bf11ndz6k7fx9bb31l4l6dqfkrld3gxsrrqggcg7d57wa3yw9c9";
+       version = "2.16.4";
+       sha256 = "07dygwh6p4fsrlgxmq6r7yvxmf4n2y04izzd30jzqgs0pi9645p4";
        configureFlags = [ "-fforce-char8-encoding" "-flibrary" ];
        isLibrary = true;
        isExecutable = true;
@@ -68674,7 +68123,6 @@ self: {
        description = "Comparative benchmark suite for darcs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darcs-beta" = callPackage
@@ -68707,7 +68155,6 @@ self: {
        description = "a distributed, interactive, smart revision control system";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) curl;};
 
   "darcs-buildpackage" = callPackage
@@ -68772,7 +68219,6 @@ self: {
        description = "Import/export git fast-import streams to/from darcs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darcs-graph" = callPackage
@@ -68872,7 +68318,6 @@ self: {
        description = "Darcs repository UI and hosting/collaboration app (hub.darcs.net branch).";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darcswatch" = callPackage
@@ -68896,7 +68341,6 @@ self: {
        description = "Track application of Darcs patches";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darkplaces-demo" = callPackage
@@ -68925,7 +68369,6 @@ self: {
        description = "Utility and parser for DarkPlaces demo files";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darkplaces-rcon" = callPackage
@@ -68974,7 +68417,6 @@ self: {
        description = "Darplaces rcon utility";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "darkplaces-text" = callPackage
@@ -69015,7 +68457,6 @@ self: {
        description = "Convert package Haddock to Dash docsets (IDE docs)";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-accessor" = callPackage
@@ -69053,7 +68494,6 @@ self: {
        description = "Use Accessor to access state in monads-fd State monad class";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-accessor-monads-tf" = callPackage
@@ -69184,7 +68624,6 @@ self: {
        description = "A database library with a focus on ease of use, type safety and useful error messages";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-binary-ieee754" = callPackage
@@ -69360,7 +68799,6 @@ self: {
        description = "a cyclic doubly linked list";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-default" = callPackage
@@ -69666,7 +69104,6 @@ self: {
        description = "Executable and Linkable Format (ELF) data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-embed" = callPackage
@@ -69985,8 +69422,6 @@ self: {
        ];
        description = "Interval datatype, interval arithmetic and interval-based containers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-inttrie" = callPackage
@@ -70055,7 +69490,6 @@ self: {
        description = "Data layering utilities. Layer is a data-type which wrapps other one, but keeping additional information. If you want to access content of simple newtype object, use Lens.Wrapper instead.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-layout" = callPackage
@@ -70098,7 +69532,6 @@ self: {
        description = "Lenses";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-lens-ixset" = callPackage
@@ -70112,7 +69545,6 @@ self: {
        description = "A Lens for IxSet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-lens-light" = callPackage
@@ -70136,7 +69568,6 @@ self: {
        description = "Utilities for Data.Lens";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-list-sequences" = callPackage
@@ -70280,7 +69711,6 @@ self: {
        description = "Serialize JSON data to/from Haskell using the data-object library. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-object-yaml" = callPackage
@@ -70300,7 +69730,6 @@ self: {
        description = "Serialize data to and from Yaml files (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-or" = callPackage
@@ -70450,7 +69879,6 @@ self: {
        description = "Data types for returning results distinguishable by types";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-rev" = callPackage
@@ -70489,7 +69917,6 @@ self: {
        description = "Recursive tuple data structure. It is very usefull when implementing some lo-level operations, allowing to traverse different elements using Haskell's type classes.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-serializer" = callPackage
@@ -70645,7 +70072,6 @@ self: {
        description = "Program that infers the fastest data structure available for your program";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-sword" = callPackage
@@ -70829,8 +70255,6 @@ self: {
        libraryHaskellDepends = [ aeson base ];
        description = "Class for types with a database id";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "database-id-groundhog" = callPackage
@@ -70943,7 +70367,6 @@ self: {
        description = "Datadog tracing client and mock agent";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dataenc" = callPackage
@@ -71015,7 +70438,6 @@ self: {
        description = "Generate Graphviz documents from a Haskell representation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dataflower" = callPackage
@@ -71132,8 +70554,6 @@ self: {
        ];
        description = "Classical data sets for statistics and machine learning";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dataurl" = callPackage
@@ -71152,8 +70572,6 @@ self: {
        ];
        description = "Handle data-urls";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "date-cache" = callPackage
@@ -71178,7 +70596,6 @@ self: {
        description = "Date conversions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dates" = callPackage
@@ -71340,7 +70757,6 @@ self: {
        description = "Decompiler Bytecode Java";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dbm" = callPackage
@@ -71517,7 +70933,6 @@ self: {
        description = "Monadic and object-oriented interfaces to DBus";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dbus-core" = callPackage
@@ -71676,7 +71091,6 @@ self: {
        description = "Discordian Date Types for Haskell";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-base" = callPackage
@@ -71714,7 +71128,6 @@ self: {
        description = "Disciplined Disciple Compiler build framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-code" = callPackage
@@ -71746,7 +71159,6 @@ self: {
        description = "Disciplined Disciple Compiler core language and type checker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-babel" = callPackage
@@ -71761,7 +71173,6 @@ self: {
        description = "Disciplined Disciple Compiler PHP code generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-eval" = callPackage
@@ -71778,7 +71189,6 @@ self: {
        description = "Disciplined Disciple Compiler semantic evaluator for the core language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-flow" = callPackage
@@ -71797,7 +71207,6 @@ self: {
        description = "Disciplined Disciple Compiler data flow compiler";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-llvm" = callPackage
@@ -71815,7 +71224,6 @@ self: {
        description = "Disciplined Disciple Compiler LLVM code generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-salt" = callPackage
@@ -71832,7 +71240,6 @@ self: {
        description = "Disciplined Disciple Compiler C code generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-simpl" = callPackage
@@ -71849,7 +71256,6 @@ self: {
        description = "Disciplined Disciple Compiler code transformations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-core-tetra" = callPackage
@@ -71867,7 +71273,6 @@ self: {
        description = "Disciplined Disciple Compiler intermediate language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-driver" = callPackage
@@ -71888,7 +71293,6 @@ self: {
        description = "Disciplined Disciple Compiler top-level driver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-interface" = callPackage
@@ -71901,7 +71305,6 @@ self: {
        description = "Disciplined Disciple Compiler user interface support";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-source-tetra" = callPackage
@@ -71919,7 +71322,6 @@ self: {
        description = "Disciplined Disciple Compiler source language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-tools" = callPackage
@@ -71943,7 +71345,6 @@ self: {
        description = "Disciplined Disciple Compiler command line tools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddc-war" = callPackage
@@ -71962,7 +71363,6 @@ self: {
        description = "Disciplined Disciple Compiler test driver and buildbot";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ddci-core" = callPackage
@@ -71982,7 +71382,6 @@ self: {
        description = "Disciple Core language interactive interpreter";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dde" = callPackage
@@ -72143,7 +71542,6 @@ self: {
        description = "Simple trace-based debugger";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "debug-diff" = callPackage
@@ -72238,7 +71636,6 @@ self: {
        description = "You do not have to write variable names twice in Debug.Trace";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "debug-tracy" = callPackage
@@ -72307,7 +71704,6 @@ self: {
        description = "Combinators for manipulating dependently-typed predicates";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "decimal-arithmetic" = callPackage
@@ -72323,7 +71719,6 @@ self: {
        description = "An implementation of the General Decimal Arithmetic Specification";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "decimal-literals" = callPackage
@@ -72411,7 +71806,6 @@ self: {
        description = "A type-checker for the λΠ-modulo calculus";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "deep-transformations" = callPackage
@@ -72501,7 +71895,6 @@ self: {
        description = "Deep Learning in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "deepseq_1_4_5_0" = callPackage
@@ -72612,7 +72005,6 @@ self: {
        description = "A DeepZoom image slicer. Only known to work on 32bit Linux";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "defargs" = callPackage
@@ -72625,7 +72017,6 @@ self: {
        description = "default arguments in haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "deferred-folds" = callPackage
@@ -72832,7 +72223,6 @@ self: {
        description = "Tests for deka, decimal floating point arithmetic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delaunay" = callPackage
@@ -72850,7 +72240,6 @@ self: {
        description = "Build a Delaunay triangulation of a set of points";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delay" = callPackage
@@ -72882,7 +72271,6 @@ self: {
        description = "Accessing the del.icio.us APIs from Haskell (v2)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delimited-text" = callPackage
@@ -72899,7 +72287,6 @@ self: {
        description = "Parse character delimited textual data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delimiter-separated" = callPackage
@@ -72913,7 +72300,6 @@ self: {
        description = "Library for dealing with tab and/or comma (or other) separated files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delta" = callPackage
@@ -72938,7 +72324,6 @@ self: {
        description = "A library for detecting file changes";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delta-h" = callPackage
@@ -72961,7 +72346,6 @@ self: {
        description = "Online entropy-based model of lexical category acquisition";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "delude" = callPackage
@@ -73029,8 +72413,6 @@ self: {
        ];
        description = "Mutable and immutable dense multidimensional arrays";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dense-int-set" = callPackage
@@ -73114,7 +72496,6 @@ self: {
        description = "Giving good advice to functions in a DepT environment";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dependency" = callPackage
@@ -73213,7 +72594,6 @@ self: {
        description = "Control structure similar to Control.Monad.State, allowing multiple nested states, distinguishable by provided phantom types.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dependent-sum_0_4" = callPackage
@@ -73313,7 +72693,6 @@ self: {
        description = "Analyze quality of nucleotide sequences";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "depq" = callPackage
@@ -73362,7 +72741,6 @@ self: {
        description = "DepTrack applied to DevOps";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "deptrack-dot" = callPackage
@@ -73376,7 +72754,6 @@ self: {
        description = "Facilitate Graphviz representations of DepTrack dependencies";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "deque" = callPackage
@@ -73410,7 +72787,6 @@ self: {
        description = "A typeclass and an implementation for double-ended queues";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "derangement" = callPackage
@@ -73473,7 +72849,6 @@ self: {
        description = "Macro to derive instances for Instant-Generics using Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "derive-enumerable" = callPackage
@@ -73880,7 +73255,6 @@ self: {
        description = "JSON and CSV encoding for quantities";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "detrospector" = callPackage
@@ -73956,7 +73330,6 @@ self: {
        description = "Haskell development tool agregate";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dewdrop" = callPackage
@@ -73971,7 +73344,6 @@ self: {
        description = "Find gadgets for return-oriented programming on x86";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "df1" = callPackage
@@ -74047,7 +73419,6 @@ self: {
        description = "A generic data integrity layer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) leveldb;};
 
   "dfrac" = callPackage
@@ -74159,6 +73530,7 @@ self: {
        description = "A configuration language guaranteed to terminate";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall" = callPackage
@@ -74182,6 +73554,8 @@ self: {
        pname = "dhall";
        version = "1.38.1";
        sha256 = "0g70x2crdrkwf41gvwr718am25dmbn9bg4cml9f9va7i1vx5rsgk";
+       revision = "2";
+       editedCabalFile = "02z0jmzzp20yj46iz6i384xwc6k2anxb33smvc4yhpmhqjs0aq8a";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -74213,6 +73587,7 @@ self: {
        doCheck = false;
        description = "A configuration language guaranteed to terminate";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-bash" = callPackage
@@ -74236,6 +73611,7 @@ self: {
        ];
        description = "Compile Dhall to Bash";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-check" = callPackage
@@ -74268,6 +73644,8 @@ self: {
        pname = "dhall-docs";
        version = "1.0.5";
        sha256 = "00s1vhwilnr6hvv56w98kc1md08lw6v80v8a7yhwrmg9qggwdc12";
+       revision = "1";
+       editedCabalFile = "0y8a02jxz5cap0q4b2106ck4av7haxqlv5vjhm0nmrsq10cl4nss";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -74284,7 +73662,7 @@ self: {
        description = "Generate HTML docs from a dhall package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-fly" = callPackage
@@ -74348,6 +73726,7 @@ self: {
        ];
        description = "Convert between Dhall and JSON or YAML";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-lex" = callPackage
@@ -74381,6 +73760,8 @@ self: {
        pname = "dhall-lsp-server";
        version = "1.0.14";
        sha256 = "1jy80w3lr6c0hvn0525h5kn6fh9rj6ir942hdkilrzd9farg6qj9";
+       revision = "1";
+       editedCabalFile = "10947mmbwy5fg52s63cs7lqa6hydrg3w8ka7rfkpdiqn2q9f146r";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74396,6 +73777,7 @@ self: {
        ];
        description = "Language Server Protocol (LSP) server for Dhall";
        license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-nix" = callPackage
@@ -74406,8 +73788,8 @@ self: {
        pname = "dhall-nix";
        version = "1.1.20";
        sha256 = "14d9icvgmrphnbjjwlskh88p7vgphgb0xqd91p217bf2xhl9k2xd";
-       revision = "1";
-       editedCabalFile = "16hz1i0vkp1qsqf9dm0d9pc1kap02nzdalzjpiw2r8p3qbykaann";
+       revision = "2";
+       editedCabalFile = "1w90jrkzmbv5nasafkkv0kyfmnqkngldx2lr891113h2mqbbr3wx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74419,8 +73801,7 @@ self: {
        ];
        description = "Dhall to Nix compiler";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-nixpkgs" = callPackage
@@ -74433,6 +73814,8 @@ self: {
        pname = "dhall-nixpkgs";
        version = "1.0.4";
        sha256 = "0yr7z17dvmr1zipk29fmzm46myxxsz514587n6a7h00c56dyvnc3";
+       revision = "1";
+       editedCabalFile = "1y08jxg51sbxx0i7ra45ii2v81plzf4hssmwlrw35l8n5gib1vcg";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -74442,8 +73825,7 @@ self: {
        ];
        description = "Convert Dhall projects to Nix packages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-openapi" = callPackage
@@ -74468,6 +73850,7 @@ self: {
        ];
        description = "Convert an OpenAPI specification to a Dhall package";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhall-recursive-adt" = callPackage
@@ -74488,8 +73871,6 @@ self: {
        ];
        description = "Convert recursive ADTs from and to Dhall";
        license = lib.licenses.cc0;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dhall-text" = callPackage
@@ -74508,6 +73889,7 @@ self: {
        description = "Template text using Dhall";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -74567,6 +73949,7 @@ self: {
        ];
        description = "Convert between Dhall and YAML";
        license = lib.licenses.gpl3Only;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dhcp-lease-parser" = callPackage
@@ -74586,7 +73969,6 @@ self: {
        description = "Parse a DHCP lease file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dhrun" = callPackage
@@ -74749,7 +74131,6 @@ self: {
        description = "An EDSL for teaching Haskell with diagrams - functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams" = callPackage
@@ -74766,6 +74147,7 @@ self: {
        doHaddock = false;
        description = "Embedded domain-specific language for declarative vector graphics";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "diagrams-boolean" = callPackage
@@ -74806,8 +74188,6 @@ self: {
        ];
        description = "Braille diagrams with plain text";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-builder" = callPackage
@@ -74860,8 +74240,6 @@ self: {
        ];
        description = "Cairo backend for diagrams drawing EDSL";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-canvas" = callPackage
@@ -74931,6 +74309,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "diagrams-core_1_5_0" = callPackage
+    ({ mkDerivation, adjunctions, base, containers, distributive
+     , dual-tree, lens, linear, monoid-extras, mtl, profunctors
+     , semigroups, unordered-containers
+     }:
+     mkDerivation {
+       pname = "diagrams-core";
+       version = "1.5.0";
+       sha256 = "0y3smp3hiyfdirdak3j4048cgqv7a5q9p2jb6z8na2llys5mrmdn";
+       libraryHaskellDepends = [
+         adjunctions base containers distributive dual-tree lens linear
+         monoid-extras mtl profunctors semigroups unordered-containers
+       ];
+       description = "Core libraries for diagrams EDSL";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "diagrams-graphviz" = callPackage
     ({ mkDerivation, base, containers, diagrams-lib, fgl, graphviz
      , split
@@ -74994,7 +74390,6 @@ self: {
        description = "Preprocessor for embedding diagrams in Haddock documentation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-hsqml" = callPackage
@@ -75031,7 +74426,6 @@ self: {
        description = "HTML5 canvas backend for diagrams drawing EDSL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-lib" = callPackage
@@ -75067,6 +74461,38 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "diagrams-lib_1_4_4" = callPackage
+    ({ mkDerivation, active, adjunctions, array, base, bytestring
+     , cereal, colour, containers, criterion, data-default-class
+     , deepseq, diagrams-core, diagrams-solve, directory, distributive
+     , dual-tree, exceptions, filepath, fingertree, fsnotify, hashable
+     , intervals, JuicyPixels, lens, linear, monoid-extras, mtl
+     , numeric-extras, optparse-applicative, process, profunctors
+     , QuickCheck, semigroups, tagged, tasty, tasty-hunit
+     , tasty-quickcheck, text, transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "diagrams-lib";
+       version = "1.4.4";
+       sha256 = "09np7kj8si8kcb854f95a0cq392mgbxif8lnazbpfsa1k87d9vzy";
+       libraryHaskellDepends = [
+         active adjunctions array base bytestring cereal colour containers
+         data-default-class diagrams-core diagrams-solve directory
+         distributive dual-tree exceptions filepath fingertree fsnotify
+         hashable intervals JuicyPixels lens linear monoid-extras mtl
+         optparse-applicative process profunctors semigroups tagged text
+         transformers unordered-containers
+       ];
+       testHaskellDepends = [
+         base deepseq diagrams-solve distributive lens numeric-extras
+         QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [ base criterion diagrams-core ];
+       description = "Embedded domain-specific language for declarative graphics";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "diagrams-pandoc" = callPackage
     ({ mkDerivation, base, diagrams-builder, diagrams-cairo
      , diagrams-core, diagrams-lib, diagrams-svg, directory, filepath
@@ -75091,7 +74517,6 @@ self: {
        description = "A Pandoc filter to express diagrams inline using the Haskell EDSL _Diagrams_";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-pdf" = callPackage
@@ -75131,7 +74556,6 @@ self: {
        description = "PGF backend for diagrams drawing EDSL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-postscript" = callPackage
@@ -75178,10 +74602,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-rasterific";
-       version = "1.4.2";
-       sha256 = "161rsy3g59n3sfrbfyvd4i4hszl0zm59w21b7pk6w88n0bk8gf2l";
-       revision = "1";
-       editedCabalFile = "0q2nzcdv7j654bk8c5fjz3whiz1l6cdy21n6ah53f1s7rlsbiz0g";
+       version = "1.4.2.1";
+       sha256 = "09a1jnpc4kplg1yhv5kxhi0ph22m5xyr0vmnjv2c5wlz72c72z2z";
        libraryHaskellDepends = [
          base bytestring containers data-default-class diagrams-core
          diagrams-lib file-embed filepath FontyFruity hashable JuicyPixels
@@ -75190,8 +74612,6 @@ self: {
        testHaskellDepends = [ base diagrams-core diagrams-lib ];
        description = "Rasterific backend for diagrams";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-reflex" = callPackage
@@ -75225,8 +74645,6 @@ self: {
        ];
        description = "Library for drawing the Rubik's Cube";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diagrams-solve" = callPackage
@@ -75297,7 +74715,6 @@ self: {
        description = "Backend for rendering diagrams in wxWidgets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dialog" = callPackage
@@ -75324,8 +74741,8 @@ self: {
      }:
      mkDerivation {
        pname = "dialogflow-fulfillment";
-       version = "0.1.1.3";
-       sha256 = "10n91mfgvn3pi0rvw92ys8f4bcra4v24j0cjykrax3jdmk1wfmym";
+       version = "0.1.1.4";
+       sha256 = "0yy4h8pariapyi7pr1b237i73y4k8icjk862i9jxh9g9lilkpyzq";
        libraryHaskellDepends = [
          aeson base bytestring containers text unordered-containers
        ];
@@ -75628,7 +75045,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "differential" = callPackage
@@ -75734,6 +75150,7 @@ self: {
        description = "Pure hash functions for bytestrings";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "digest-sig" = callPackage
@@ -75889,7 +75306,6 @@ self: {
        description = "HSP support for digestive-functors";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "digestive-functors-lucid" = callPackage
@@ -76045,10 +75461,8 @@ self: {
      }:
      mkDerivation {
        pname = "dimensional";
-       version = "1.3";
-       sha256 = "0i4k7m134w3pczj8qllc59djdhisj92z78qrzap9v0f4rx8jb8r9";
-       revision = "2";
-       editedCabalFile = "10xkgwjb9kqa95jck3b9wa3sz6vcb2lkygfmcqqz6hz6j65l79r8";
+       version = "1.4";
+       sha256 = "19w6plp97ylwqgwzhfy54cvjvh0dd1gj843y59cmryckh80jap8s";
        libraryHaskellDepends = [
          base deepseq exact-pi ieee754 numtype-dk semigroups vector
        ];
@@ -76057,7 +75471,7 @@ self: {
        ];
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [ base criterion deepseq ];
-       description = "Statically checked physical dimensions, using Type Families and Data Kinds";
+       description = "Statically checked physical dimensions";
        license = lib.licenses.bsd3;
      }) {};
 
@@ -76065,13 +75479,11 @@ self: {
     ({ mkDerivation, base, dimensional, numtype-dk }:
      mkDerivation {
        pname = "dimensional-codata";
-       version = "2014.0.0.2";
-       sha256 = "1bmal7i0zvfivri5w7fbl4n0gyybnr2wy2cvz21b33jrzjblr1g0";
+       version = "2014.0.0.3";
+       sha256 = "1303i7f8c9nsr5x128qaqisny4r3fnfq7zarl4g9q0zckxgqhpgj";
        libraryHaskellDepends = [ base dimensional numtype-dk ];
        description = "CODATA Recommended Physical Constants with Dimensional Types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dimensional-tf" = callPackage
@@ -76124,7 +75536,6 @@ self: {
        description = "Dingo is a Rich Internet Application platform based on the Warp web server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dingo-example" = callPackage
@@ -76145,7 +75556,6 @@ self: {
        description = "Dingo Example";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dingo-widgets" = callPackage
@@ -76165,7 +75575,6 @@ self: {
        description = "Dingo Widgets";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dino" = callPackage
@@ -76198,8 +75607,8 @@ self: {
      }:
      mkDerivation {
        pname = "diohsc";
-       version = "0.1.5";
-       sha256 = "10336q53ghvj15gxxrdh1s10amfbyl7m69pgzg0rjxrs1p2bx7s7";
+       version = "0.1.6.1";
+       sha256 = "15shc82ii68dzpa0j9dqi6iyhqa6zbr9g2007c1na42rxhm8fg7j";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -76243,7 +75652,6 @@ self: {
        description = "Diplomacy board game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "diplomacy-server" = callPackage
@@ -76268,7 +75676,6 @@ self: {
        description = "Play Diplomacy over HTTP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dir-traverse" = callPackage
@@ -76427,14 +75834,12 @@ self: {
        broken = true;
      }) {};
 
-  "directory_1_3_6_1" = callPackage
+  "directory_1_3_6_2" = callPackage
     ({ mkDerivation, base, filepath, time, unix }:
      mkDerivation {
        pname = "directory";
-       version = "1.3.6.1";
-       sha256 = "00cr2sshzjmn57rpvjj8wvgr60x2mk8c7w1nd40wxqs8s9xaa1bi";
-       revision = "2";
-       editedCabalFile = "14kwmqa1pf1bij7qang5aihw38ch7m5prsics0p0y72jkxx98y48";
+       version = "1.3.6.2";
+       sha256 = "0zgwx7bwhw0s5xc17hfn1ps3fxn9ihv174b2s7rz63flm8lsm0y3";
        libraryHaskellDepends = [ base filepath time unix ];
        testHaskellDepends = [ base filepath time unix ];
        description = "Platform-agnostic library for filesystem operations";
@@ -76542,7 +75947,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dirichlet" = callPackage
@@ -76551,8 +75955,8 @@ self: {
      }:
      mkDerivation {
        pname = "dirichlet";
-       version = "0.1.0.2";
-       sha256 = "1xppfdz3s31md41848awahfipv5g6yhglkw2l5l3q0jc5wsc1vvw";
+       version = "0.1.0.4";
+       sha256 = "1qhkqcdzdryzds5zb9y55ckd35wij39yk2k58s7fdacnash9l3fg";
        libraryHaskellDepends = [
          base log-domain math-functions mwc-random primitive vector
        ];
@@ -76576,6 +75980,7 @@ self: {
        ];
        description = "Easily stream directory contents in constant memory";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "dirtree" = callPackage
@@ -76633,7 +76038,6 @@ self: {
        description = "Client for Discogs REST API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "discokitty" = callPackage
@@ -76663,7 +76067,6 @@ self: {
        description = "An API wrapper for Discord in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "discord-haskell" = callPackage
@@ -76674,8 +76077,8 @@ self: {
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "1.8.5";
-       sha256 = "0hp3w1d5pwfj06m72dl44cp67h99b3c43kv641vz6dff7xk75hsm";
+       version = "1.8.7";
+       sha256 = "0nby3267nhdgc8692k5c28yy0a2bzvl84dn54sg25j6nchzs991g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -76687,6 +76090,8 @@ self: {
        executableHaskellDepends = [ base text unliftio ];
        description = "Write bots for Discord in Haskell";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "discord-hs" = callPackage
@@ -76704,40 +76109,36 @@ self: {
        description = "An API wrapper for Discord in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "discord-register" = callPackage
-    ({ mkDerivation, base, calamity, dhall, di, di-polysemy
-     , generic-lens, hspec, hspec-megaparsec, megaparsec, polysemy
-     , polysemy-plugin, text, text-show, unboxing-vector
-     , unordered-containers, vector
+    ({ mkDerivation, aeson, base, binary, bytestring, calamity
+     , calamity-commands, data-flags, di, di-polysemy, generic-lens
+     , hashable, hedis, lens, megaparsec, polysemy, polysemy-plugin
+     , regex-tdfa, text, text-show, unboxing-vector
+     , unordered-containers
      }:
      mkDerivation {
        pname = "discord-register";
-       version = "0.0.1";
-       sha256 = "1crwbdkyg6k4777lcc7yi5n47xpsnvl3s1652n896k1hck7ckrr8";
+       version = "0.0.2";
+       sha256 = "01imq7m41g26x7prm223y6bagjwyzb3glwy41fg4kdd244pz02wf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base calamity dhall di di-polysemy generic-lens hspec
-         hspec-megaparsec megaparsec polysemy polysemy-plugin text text-show
-         unboxing-vector unordered-containers vector
+         aeson base binary bytestring calamity calamity-commands data-flags
+         di di-polysemy generic-lens hashable hedis lens megaparsec polysemy
+         polysemy-plugin regex-tdfa text text-show unboxing-vector
+         unordered-containers
        ];
        executableHaskellDepends = [
-         base calamity dhall di di-polysemy generic-lens hspec
-         hspec-megaparsec megaparsec polysemy polysemy-plugin text text-show
-         unboxing-vector unordered-containers vector
-       ];
-       testHaskellDepends = [
-         base calamity dhall di di-polysemy generic-lens hspec
-         hspec-megaparsec megaparsec polysemy polysemy-plugin text text-show
-         unboxing-vector unordered-containers vector
+         aeson base binary bytestring calamity calamity-commands data-flags
+         di di-polysemy generic-lens hashable hedis lens megaparsec polysemy
+         polysemy-plugin regex-tdfa text text-show unboxing-vector
+         unordered-containers
        ];
        description = "Discord verification bot";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "discord-rest" = callPackage
@@ -76758,7 +76159,6 @@ self: {
        description = "An API wrapper for Discord in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "discord-types" = callPackage
@@ -77163,7 +76563,6 @@ self: {
        description = "Cloud Haskell Async API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-azure" = callPackage
@@ -77187,7 +76586,6 @@ self: {
        description = "Microsoft Azure backend for Cloud Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-client-server" = callPackage
@@ -77218,7 +76616,6 @@ self: {
        description = "The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-ekg" = callPackage
@@ -77235,7 +76632,6 @@ self: {
        description = "Collect node stats for EKG";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-execution" = callPackage
@@ -77272,7 +76668,6 @@ self: {
        description = "Execution Framework for The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-extras" = callPackage
@@ -77304,7 +76699,6 @@ self: {
        description = "Cloud Haskell Extras";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-fsm" = callPackage
@@ -77338,7 +76732,6 @@ self: {
        description = "The Cloud Haskell implementation of Erlang/OTP gen_statem";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-lifted" = callPackage
@@ -77365,7 +76758,6 @@ self: {
        description = "monad-control style typeclass and transformer instances for Process monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-monad-control" = callPackage
@@ -77383,7 +76775,6 @@ self: {
        description = "Orphan instances for MonadBase and MonadBaseControl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-p2p" = callPackage
@@ -77405,7 +76796,6 @@ self: {
        description = "Peer-to-peer node discovery for Cloud Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-platform" = callPackage
@@ -77437,7 +76827,6 @@ self: {
        description = "The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-registry" = callPackage
@@ -77471,7 +76860,6 @@ self: {
        description = "Cloud Haskell Extended Process Registry";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-simplelocalnet" = callPackage
@@ -77495,7 +76883,6 @@ self: {
        description = "Simple zero-configuration backend for Cloud Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-supervisor" = callPackage
@@ -77528,7 +76915,6 @@ self: {
        description = "Supervisors for The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-systest" = callPackage
@@ -77549,7 +76935,6 @@ self: {
        description = "Cloud Haskell Test Support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-task" = callPackage
@@ -77587,7 +76972,6 @@ self: {
        description = "Task Framework for The Cloud Haskell Application Platform";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-tests" = callPackage
@@ -77612,7 +76996,6 @@ self: {
        description = "Tests and test support tools for distributed-process";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-process-zookeeper" = callPackage
@@ -77642,7 +77025,6 @@ self: {
        description = "A Zookeeper back-end for Cloud Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributed-static" = callPackage
@@ -77729,7 +77111,6 @@ self: {
        description = "Easily plot distributions from the distribution package..";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "distributive" = callPackage
@@ -77791,8 +77172,6 @@ self: {
        ];
        description = "Quantify the diversity of a population";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dixi" = callPackage
@@ -77831,7 +77210,6 @@ self: {
        description = "A wiki implemented with a firm theoretical foundation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "djembe" = callPackage
@@ -77911,29 +77289,6 @@ self: {
 
   "dl-fedora" = callPackage
     ({ mkDerivation, base, bytestring, directory, extra, filepath
-     , http-directory, http-types, optparse-applicative, regex-posix
-     , simple-cmd, simple-cmd-args, text, time, unix, xdg-userdirs
-     }:
-     mkDerivation {
-       pname = "dl-fedora";
-       version = "0.8";
-       sha256 = "1pd0cslszd9srr9bpcxzrm84cnk5r78xs79ig32528z0anc5ghcr";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base bytestring directory extra filepath http-directory http-types
-         optparse-applicative regex-posix simple-cmd simple-cmd-args text
-         time unix xdg-userdirs
-       ];
-       testHaskellDepends = [ base simple-cmd ];
-       description = "Fedora image download tool";
-       license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "dl-fedora_0_9" = callPackage
-    ({ mkDerivation, base, bytestring, directory, extra, filepath
      , http-client, http-client-tls, http-directory, http-types
      , optparse-applicative, regex-posix, simple-cmd, simple-cmd-args
      , text, time, unix, xdg-userdirs
@@ -77953,7 +77308,6 @@ self: {
        description = "Fedora image download tool";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dlist" = callPackage
@@ -78091,7 +77445,6 @@ self: {
        description = "dmenu script for killing applications. Sortable by process id or CPU/MEM usage.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dmenu-pmount" = callPackage
@@ -78110,7 +77463,6 @@ self: {
        description = "Mounting and unmounting linux devices as user with dmenu and pmount";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dmenu-search" = callPackage
@@ -78129,7 +77481,6 @@ self: {
        description = "dmenu script for searching the web with customizable search engines";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dns" = callPackage
@@ -78245,6 +77596,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "do-spaces" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring
+     , case-insensitive, conduit, conduit-extra, config-ini, containers
+     , cryptonite, exceptions, extra, filepath, generic-lens, hspec
+     , http-client-tls, http-conduit, http-types, memory, microlens
+     , mime-types, mtl, resourcet, text, time, transformers, xml-conduit
+     }:
+     mkDerivation {
+       pname = "do-spaces";
+       version = "0.1.0";
+       sha256 = "1xj0n2pmmwkm4ss5gvsbvw8m545w4890a3hhk1ns1vbbm06zmvsi";
+       libraryHaskellDepends = [
+         base base16-bytestring bytestring case-insensitive conduit
+         conduit-extra config-ini containers cryptonite exceptions extra
+         filepath generic-lens http-client-tls http-conduit http-types
+         memory microlens mime-types mtl text time transformers xml-conduit
+       ];
+       testHaskellDepends = [
+         base bytestring case-insensitive conduit conduit-extra containers
+         generic-lens hspec http-client-tls http-conduit http-types
+         microlens mtl resourcet text time
+       ];
+       description = "DigitalOcean Spaces API bindings";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "dobutok" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -78419,7 +77796,6 @@ self: {
        description = "Document review Web application, like http://book.realworldhaskell.org/";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "doccheck" = callPackage
@@ -78587,6 +77963,8 @@ self: {
          th-lift th-lift-instances time
        ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "doclayout" = callPackage
@@ -78884,8 +78262,6 @@ self: {
        ];
        description = "Low-level bindings to the DocuSign API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "docusign-base-minimal" = callPackage
@@ -78902,8 +78278,6 @@ self: {
        ];
        description = "Low-level bindings to the DocuSign API (only what is necessary for docusign-client)";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "docusign-client" = callPackage
@@ -78923,8 +78297,6 @@ self: {
        ];
        description = "Client bindings for the DocuSign API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "docusign-example" = callPackage
@@ -79002,7 +78374,6 @@ self: {
        description = "Automatic Bibtex and fulltext of scientific articles";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "doldol" = callPackage
@@ -79112,8 +78483,8 @@ self: {
      }:
      mkDerivation {
        pname = "domain";
-       version = "0.1";
-       sha256 = "1lr97k14wc35myckknsv3vyximqfv5vq04f5kpd8167lk3vjahm2";
+       version = "0.1.1";
+       sha256 = "0ykf1bxd0xmgdhkvd8rp14p4zccpwp5ywj2yiyh6mpp4sp03qwiw";
        libraryHaskellDepends = [
          attoparsec base bytestring domain-core foldl hashable
          parser-combinators template-haskell template-haskell-compat-v0208
@@ -79126,7 +78497,6 @@ self: {
        description = "Codegen helping you define domain models";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "domain-auth" = callPackage
@@ -79162,7 +78532,6 @@ self: {
        description = "Low-level API of \"domain\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "domain-optics" = callPackage
@@ -79182,7 +78551,6 @@ self: {
        description = "Integration of domain with optics";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dominion" = callPackage
@@ -79533,7 +78901,6 @@ self: {
        description = "Dungeons of Wor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "download" = callPackage
@@ -79577,7 +78944,6 @@ self: {
        description = "Simple tool to download images from RSS feeds (e.g. Flickr, Picasa)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "downloader" = callPackage
@@ -79664,7 +79030,6 @@ self: {
        description = "Data Parallel Haskell example programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-lifted-base" = callPackage
@@ -79682,7 +79047,6 @@ self: {
        description = "Data Parallel Haskell common definitions used by other dph-lifted packages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-lifted-copy" = callPackage
@@ -79699,7 +79063,6 @@ self: {
        description = "Data Parallel Haskell lifted array combinators. (deprecated version)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-lifted-vseg" = callPackage
@@ -79717,7 +79080,6 @@ self: {
        description = "Data Parallel Haskell lifted array combinators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-par" = callPackage
@@ -79741,7 +79103,6 @@ self: {
        description = "Data Parallel Haskell segmented arrays. (abstract interface)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-prim-par" = callPackage
@@ -79759,7 +79120,6 @@ self: {
        description = "Data Parallel Haskell segmented arrays. (production version)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-prim-seq" = callPackage
@@ -79776,7 +79136,6 @@ self: {
        description = "Data Parallel Haskell segmented arrays. (sequential implementation)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dph-seq" = callPackage
@@ -79891,8 +79250,8 @@ self: {
     ({ mkDerivation, base, ki, transformers, unagi-chan }:
      mkDerivation {
        pname = "drama";
-       version = "0.3.0.0";
-       sha256 = "17smzrvpaah2lcc2467dd61lns53q4n0bf0pl9glsv04j9kv2nl9";
+       version = "0.4.0.0";
+       sha256 = "15p8pac1xcl5iifv1g0bs09l99x6q8skid71wlyxh4g9j7hrgpdr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ki transformers unagi-chan ];
@@ -79972,8 +79331,6 @@ self: {
        ];
        description = "Simple schema management for arbitrary databases";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "drifter-postgresql" = callPackage
@@ -80015,8 +79372,6 @@ self: {
        ];
        description = "SQLite support for the drifter schema migraiton tool";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "drinkery" = callPackage
@@ -80030,6 +79385,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "driving-classes-plugin" = callPackage
+    ({ mkDerivation, base, containers, ghc }:
+     mkDerivation {
+       pname = "driving-classes-plugin";
+       version = "0.1.2.0";
+       sha256 = "013c4qs919yp8nm2ammzr55rqzcai4ybsszilg9g48bd913hzrzl";
+       libraryHaskellDepends = [ base containers ghc ];
+       testHaskellDepends = [ base ];
+       description = "Deriving without spelling out \"deriving\"";
+       license = lib.licenses.mit;
+     }) {};
+
   "drmaa" = callPackage
     ({ mkDerivation, base, c2hs, directory, drmaa, exceptions }:
      mkDerivation {
@@ -80091,8 +79458,6 @@ self: {
        ];
        description = "Dropbox API client";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dropbox-sdk" = callPackage
@@ -80115,7 +79480,6 @@ self: {
        description = "A library to access the Dropbox HTTP API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dropsolve" = callPackage
@@ -80135,7 +79499,6 @@ self: {
        description = "A command line tool for resolving dropbox conflicts. Deprecated! Please use confsolve.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "drunken-bishop" = callPackage
@@ -80216,7 +79579,6 @@ self: {
        description = "SQL backend for Database Supported Haskell (DSH)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dsmc" = callPackage
@@ -80256,7 +79618,6 @@ self: {
        description = "DSMC toolkit for rarefied gas dynamics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dson" = callPackage
@@ -80372,7 +79733,6 @@ self: {
        description = "Parse and render DTD files (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dtd-text" = callPackage
@@ -80473,8 +79833,8 @@ self: {
      }:
      mkDerivation {
        pname = "dual-tree";
-       version = "0.2.2.1";
-       sha256 = "17kdfnf0df0z5pkiifxrlmyd1xd7hjjaazd2kzyajl0gd00vbszx";
+       version = "0.2.3.0";
+       sha256 = "0qyn7kb42wvlcvb1wbf1qx3isc2y6k3hzp5iq6ab0r0llw9g6qlg";
        libraryHaskellDepends = [
          base monoid-extras newtype-generics semigroups
        ];
@@ -80605,7 +79965,6 @@ self: {
        description = "A computer “algebra” system that knows nothing about algebra, at the core";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dump" = callPackage
@@ -80825,7 +80184,6 @@ self: {
        description = "Efficient automatic differentiation and code generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dvdread" = callPackage
@@ -81037,7 +80395,6 @@ self: {
        description = "Access the functions from the Cabal library without depending on it";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dynamic-graph" = callPackage
@@ -81170,7 +80527,6 @@ self: {
        description = "Interactive diagram windows";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dynamic-pp" = callPackage
@@ -81283,27 +80639,10 @@ self: {
        description = "your dynamic optimization buddy";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dyre" = callPackage
     ({ mkDerivation, base, binary, directory, executable-path, filepath
-     , ghc-paths, io-storage, process, time, unix, xdg-basedir
-     }:
-     mkDerivation {
-       pname = "dyre";
-       version = "0.8.12";
-       sha256 = "10hnlysy4bjvvznk8v902mlk4jx95qf972clyi1l32xkqrf30972";
-       libraryHaskellDepends = [
-         base binary directory executable-path filepath ghc-paths io-storage
-         process time unix xdg-basedir
-       ];
-       description = "Dynamic reconfiguration in Haskell";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "dyre_0_9_1" = callPackage
-    ({ mkDerivation, base, binary, directory, executable-path, filepath
      , io-storage, process, time, unix, xdg-basedir
      }:
      mkDerivation {
@@ -81317,7 +80656,6 @@ self: {
        testHaskellDepends = [ base directory process ];
        description = "Dynamic reconfiguration in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "dywapitchtrack" = callPackage
@@ -81610,8 +80948,6 @@ self: {
        ];
        description = "Pure, type-indexed haskell vector, matrix, and tensor library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "easytensor-vulkan" = callPackage
@@ -81623,8 +80959,6 @@ self: {
        libraryHaskellDepends = [ base dimensions easytensor vulkan-api ];
        description = "Use easytensor with vulkan-api";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "easytest" = callPackage
@@ -81717,8 +81051,6 @@ self: {
        ];
        description = "A handy tool for uploading unikernels to Amazon's EC2";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eccrypto" = callPackage
@@ -81751,7 +81083,6 @@ self: {
        description = "provides \"ed25519\" API using \"eccrypto\"";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ecdsa" = callPackage
@@ -81943,7 +81274,6 @@ self: {
        description = "Semi-explicit parallel programming skeleton library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "edentv" = callPackage
@@ -81965,7 +81295,6 @@ self: {
        description = "A Tool to Visualize Parallel Functional Program Executions";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "edf" = callPackage
@@ -81996,7 +81325,6 @@ self: {
        description = "Top view space combat arcade game";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "edges" = callPackage
@@ -82025,7 +81353,6 @@ self: {
        description = "Tools for efficient immutable graphs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "edis" = callPackage
@@ -82159,7 +81486,6 @@ self: {
        description = "Interactive editors for Generics";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "editline" = callPackage
@@ -82391,7 +81717,6 @@ self: {
        description = "Programming language with non-linear pattern-matching against non-free data";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "egison-pattern-src" = callPackage
@@ -82435,7 +81760,6 @@ self: {
        description = "Parser and pretty printer for Egison pattern expressions in Haskell source code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "egison-pattern-src-th-mode" = callPackage
@@ -82459,7 +81783,6 @@ self: {
        description = "Parser and pretty printer for Egison pattern expressions to use with TH";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "egison-quote" = callPackage
@@ -82474,7 +81797,6 @@ self: {
        description = "A quasi quotes for using Egison expression in Haskell code";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "egison-tutorial" = callPackage
@@ -82494,7 +81816,6 @@ self: {
        description = "A tutorial program for the Egison programming language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "egyptian-fractions" = callPackage
@@ -82650,8 +81971,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Functions involving lists of Either";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "either-result" = callPackage
@@ -82789,8 +82108,6 @@ self: {
        ];
        description = "An ekg backend for Amazon Cloudwatch";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-core" = callPackage
@@ -83056,7 +82373,6 @@ self: {
        description = "Example applications for Elerea";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "elerea-sdl" = callPackage
@@ -83175,7 +82491,6 @@ self: {
        description = "Elliptic curve library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "elm-bridge" = callPackage
@@ -83667,7 +82982,6 @@ self: {
        description = "A tiny language for understanding the lambda-calculus";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "elynx" = callPackage
@@ -83685,8 +82999,6 @@ self: {
        ];
        description = "Validate and (optionally) redo ELynx analyses";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "elynx-markov" = callPackage
@@ -83787,8 +83099,36 @@ self: {
        ];
        description = "Handle phylogenetic trees";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "ema" = callPackage
+    ({ mkDerivation, aeson, async, base, blaze-html, blaze-markup
+     , commonmark, commonmark-extensions, commonmark-pandoc, containers
+     , data-default, directory, filepath, filepattern, fsnotify
+     , http-types, lvar, monad-logger, monad-logger-extras
+     , neat-interpolation, optparse-applicative, pandoc-types
+     , profunctors, relude, safe-exceptions, shower, stm, tagged, text
+     , time, unliftio, wai, wai-middleware-static, wai-websockets, warp
+     , websockets
+     }:
+     mkDerivation {
+       pname = "ema";
+       version = "0.1.0.0";
+       sha256 = "0b7drwqcdap52slnw59vx3mhpabcl72p7rinnfkzsh74jfx21vz0";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base blaze-html blaze-markup commonmark
+         commonmark-extensions commonmark-pandoc containers data-default
+         directory filepath filepattern fsnotify http-types lvar
+         monad-logger monad-logger-extras neat-interpolation
+         optparse-applicative pandoc-types profunctors relude
+         safe-exceptions shower stm tagged text time unliftio wai
+         wai-middleware-static wai-websockets warp websockets
+       ];
+       executableHaskellDepends = [ base ];
+       description = "Static site generator library with hot reload";
+       license = lib.licenses.agpl3Only;
      }) {};
 
   "emacs-keys" = callPackage
@@ -83808,7 +83148,6 @@ self: {
        description = "library to parse emacs style keybinding into the modifiers and the chars";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "emacs-module" = callPackage
@@ -83847,7 +83186,6 @@ self: {
        description = "Sending eMail in Haskell made easy";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "email-header" = callPackage
@@ -83985,7 +83323,6 @@ self: {
        description = "An email parser that will parse everything";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "embeddock" = callPackage
@@ -84003,7 +83340,6 @@ self: {
        description = "Embed the values in scope in the haddock documentation of the module";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "embeddock-example" = callPackage
@@ -84016,7 +83352,6 @@ self: {
        description = "Example of using embeddock";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "embla" = callPackage
@@ -84049,7 +83384,6 @@ self: {
        description = "support for embroidery formats in haskell";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "emd" = callPackage
@@ -84319,8 +83653,6 @@ self: {
        ];
        description = "A Haskell implementation of Engine.IO";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "engine-io-growler" = callPackage
@@ -84340,7 +83672,6 @@ self: {
        ];
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "engine-io-snap" = callPackage
@@ -84425,7 +83756,6 @@ self: {
        description = "An application (and library) to convert quipper circuits into Qpmc models";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "entropy" = callPackage
@@ -84503,8 +83833,6 @@ self: {
        ];
        description = "A text rendering and parsing toolkit for enumerated types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enum-text-rio" = callPackage
@@ -84521,8 +83849,6 @@ self: {
        ];
        description = "Making fmt available with rio";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enum-types" = callPackage
@@ -84583,7 +83909,6 @@ self: {
        description = "enumerate all the values in a finite type (automatically)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enumerate-function" = callPackage
@@ -84605,7 +83930,6 @@ self: {
        description = "simple package for inverting functions and testing totality, via brute enumeration of the domain";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enumeration" = callPackage
@@ -84652,7 +83976,6 @@ self: {
        description = "Enumerator instances for monads-fd classes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enumerator-tf" = callPackage
@@ -84665,7 +83988,6 @@ self: {
        description = "Enumerator instances for monads-tf classes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "enumfun" = callPackage
@@ -84779,8 +84101,6 @@ self: {
        ];
        description = "Safe helpers for accessing and modifying environment variables";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "env-locale" = callPackage
@@ -84882,6 +84202,7 @@ self: {
        ];
        description = "An environmentally friendly way to deal with environment variables";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "envy-extensible" = callPackage
@@ -84948,7 +84269,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "epi-sim" = callPackage
@@ -84967,8 +84287,6 @@ self: {
        ];
        description = "A library for simulating epidemics as birth-death processes";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "epic" = callPackage
@@ -85246,7 +84564,6 @@ self: {
        description = "Native Haskell implementation of the interface from the erf package";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "erlang" = callPackage
@@ -85318,7 +84635,6 @@ self: {
        description = "DEPRECATED in favor of eros-http";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eros-http" = callPackage
@@ -85339,7 +84655,6 @@ self: {
        description = "JSON HTTP interface to Eros";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "errata" = callPackage
@@ -85358,6 +84673,8 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Source code error pretty printing";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "errno" = callPackage
@@ -85393,8 +84710,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Error code functions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "error-context" = callPackage
@@ -85485,7 +84800,6 @@ self: {
        description = "Composable error messages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "error-or" = callPackage
@@ -85548,6 +84862,7 @@ self: {
        ];
        description = "Simplified error-handling";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "errors-ext" = callPackage
@@ -85568,7 +84883,6 @@ self: {
        description = "`bracket`-like functions for `ExceptT` over `IO` monad";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ersaconcat" = callPackage
@@ -85638,7 +84952,6 @@ self: {
        description = "toysat driver as backend for ersatz";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ert" = callPackage
@@ -85754,7 +85067,6 @@ self: {
        description = "Esotericbot is a sophisticated, lightweight IRC bot";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "espial" = callPackage
@@ -85827,42 +85139,14 @@ self: {
     ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
      , conduit, containers, exceptions, hspec, monad-logger, mtl, mysql
      , mysql-simple, persistent, persistent-mysql, persistent-postgresql
-     , persistent-sqlite, persistent-template, postgresql-libpq
-     , postgresql-simple, resourcet, tagged, text, time, transformers
-     , unliftio, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "esqueleto";
-       version = "3.4.1.1";
-       sha256 = "15355vc3ysqr4yd149xz7zm7iba7pb04p3yxgp1n6dxczwldjf43";
-       libraryHaskellDepends = [
-         aeson attoparsec base blaze-html bytestring conduit containers
-         monad-logger persistent resourcet tagged text time transformers
-         unliftio unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson attoparsec base blaze-html bytestring conduit containers
-         exceptions hspec monad-logger mtl mysql mysql-simple persistent
-         persistent-mysql persistent-postgresql persistent-sqlite
-         persistent-template postgresql-libpq postgresql-simple resourcet
-         tagged text time transformers unliftio unordered-containers vector
-       ];
-       description = "Type-safe EDSL for SQL queries on persistent backends";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "esqueleto_3_4_2_0" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
-     , conduit, containers, exceptions, hspec, monad-logger, mtl, mysql
-     , mysql-simple, persistent, persistent-mysql, persistent-postgresql
      , persistent-sqlite, postgresql-libpq, postgresql-simple, resourcet
      , tagged, text, time, transformers, unliftio, unordered-containers
      , vector
      }:
      mkDerivation {
        pname = "esqueleto";
-       version = "3.4.2.0";
-       sha256 = "1gmh96a0vqvxizgs2k66p06jhjcgqrm5phbvahs7b2iavaralpr3";
+       version = "3.5.0.0";
+       sha256 = "00mamdsm4yc8gdvb5zfnhnp7iqkg7h9fd5jgzrbdh9q7isyc6kiy";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-html bytestring conduit containers
          monad-logger persistent resourcet tagged text time transformers
@@ -85877,7 +85161,6 @@ self: {
        ];
        description = "Type-safe EDSL for SQL queries on persistent backends";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ess" = callPackage
@@ -86065,7 +85348,6 @@ self: {
        description = "Repeats from ESTs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "etc" = callPackage
@@ -86141,7 +85423,6 @@ self: {
        description = "Native event-sourcing database";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eternity-timestamped" = callPackage
@@ -86160,7 +85441,6 @@ self: {
        description = "Automatic timestamping for Eternity";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ether" = callPackage
@@ -86190,7 +85470,6 @@ self: {
        description = "Monad transformers and classes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-analyzer" = callPackage
@@ -86215,7 +85494,6 @@ self: {
        description = "A Ethereum contract analyzer";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-analyzer-cli" = callPackage
@@ -86244,7 +85522,6 @@ self: {
        description = "A CLI frontend for ethereum-analyzer";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-analyzer-deps" = callPackage
@@ -86291,7 +85568,6 @@ self: {
        description = "A web frontend for ethereum-analyzer";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-client-haskell" = callPackage
@@ -86321,7 +85597,6 @@ self: {
        description = "A Haskell version of an Ethereum client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-merkle-patricia-db" = callPackage
@@ -86347,7 +85622,6 @@ self: {
        description = "A modified Merkle Patricia DB";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ethereum-rlp" = callPackage
@@ -86529,7 +85803,6 @@ self: {
        description = "Bridge for working with evdev and streamly";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eve" = callPackage
@@ -86652,7 +85925,6 @@ self: {
        description = "Event-graph simulation monad transformer";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "event-transformer" = callPackage
@@ -86757,7 +86029,6 @@ self: {
        description = "Postgres implementations for eventful";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eventful-sql-common" = callPackage
@@ -86801,7 +86072,6 @@ self: {
        description = "SQLite implementations for eventful";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eventful-test-helpers" = callPackage
@@ -86906,7 +86176,6 @@ self: {
        description = "GetEventStore store implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "eventsource-store-specs" = callPackage
@@ -87062,7 +86331,6 @@ self: {
        description = "A functional pearl on encoding and decoding using question-and-answer strategies";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ewe" = callPackage
@@ -87153,8 +86421,8 @@ self: {
      }:
      mkDerivation {
        pname = "exact-real";
-       version = "0.12.4.1";
-       sha256 = "194qx4dq8c9w1nbr4vyalmvp0m1a0q1pxjckg59m7c3fsz9r88jg";
+       version = "0.12.5";
+       sha256 = "1xjj17h8a4sbja7f29xvasgzxzn58i2276ysqqkw8d5dsd5913lb";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [ base integer-gmp random ];
        testHaskellDepends = [
@@ -87164,6 +86432,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Exact real arithmetic";
        license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "exact-real-positional" = callPackage
@@ -87244,7 +86513,6 @@ self: {
        description = "Exception monad transformer instances for monads-fd classes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "exception-monads-tf" = callPackage
@@ -87480,7 +86748,6 @@ self: {
        description = "Tool to search/generate (haskell) expressions with a given type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "exh" = callPackage
@@ -87571,10 +86838,8 @@ self: {
      }:
      mkDerivation {
        pname = "exiftool";
-       version = "0.1.0.0";
-       sha256 = "015f0ai0x6iv49k4ljz8058509h8z8kkgnp7p9l4s8z54sgqfw8y";
-       revision = "1";
-       editedCabalFile = "06w0g76jddjykbvym2zgcwjsa33alm1rwshhzaw0pqm573mqbp26";
+       version = "0.1.1.0";
+       sha256 = "1z0zk9axilxp3l13n0h83csia4lvahmqkwhlfp9mswbdy8v8fqm0";
        libraryHaskellDepends = [
          aeson base base64 bytestring hashable process scientific
          string-conversions temporary text unordered-containers vector
@@ -87877,6 +87142,8 @@ self: {
          base HUnit QuickCheck random tasty tasty-hunit tasty-quickcheck
        ];
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "exp-extended" = callPackage
@@ -87928,7 +87195,6 @@ self: {
        description = "Extensible Pandoc";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "expat-enumerator" = callPackage
@@ -87945,7 +87211,6 @@ self: {
        description = "Enumerator-based API for Expat";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "experimenter" = callPackage
@@ -88020,7 +87285,6 @@ self: {
        description = "Expiring containers";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "expiring-mvar" = callPackage
@@ -88116,7 +87380,6 @@ self: {
        description = "Extends explicit-iomodes with ByteString operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "explicit-iomodes-text" = callPackage
@@ -88129,7 +87392,6 @@ self: {
        description = "Extends explicit-iomodes with Text operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "explicit-sharing" = callPackage
@@ -88144,7 +87406,6 @@ self: {
        description = "Explicit Sharing of Monadic Effects";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "explore" = callPackage
@@ -88159,7 +87420,6 @@ self: {
        description = "Experimental Plot data Reconstructor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "exploring-interpreters" = callPackage
@@ -88199,8 +87459,8 @@ self: {
     ({ mkDerivation, base, leancheck, template-haskell }:
      mkDerivation {
        pname = "express";
-       version = "0.1.4";
-       sha256 = "0rhrlynb950n2c79s3gz0vyd6b34crlhzlva0w91qbzn9dpfrays";
+       version = "0.1.12";
+       sha256 = "1055qj5ymlzshva94i1gfr6sfmjgv1rhxpx5h76fdq5ia6hkd68z";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
@@ -88257,7 +87517,6 @@ self: {
        description = "Encode and Decode expressions from Z3 ASTs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "expresso" = callPackage
@@ -88330,7 +87589,6 @@ self: {
        description = "automated printing for extemp speakers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "extend-record-data-th" = callPackage
@@ -88434,7 +87692,6 @@ self: {
        description = "Sums/products/lists/trees which can be extended in other modules";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "extensible-effects" = callPackage
@@ -88619,7 +87876,6 @@ self: {
        description = "Given a hackage package outputs the list of its dependencies";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "extractable-singleton" = callPackage
@@ -88676,14 +87932,15 @@ self: {
      }:
      mkDerivation {
        pname = "extrapolate";
-       version = "0.4.2";
-       sha256 = "1dhljcsqahpyn3khxjbxc15ih1r6kgqcagr5gbpg1d705ji7y3j0";
+       version = "0.4.4";
+       sha256 = "0indkjjahlh1isnal93w3iliy59azgdmi9lmdqz4jkbpd421zava";
        libraryHaskellDepends = [
          base express leancheck speculate template-haskell
        ];
        testHaskellDepends = [ base express leancheck speculate ];
        description = "generalize counter-examples of test properties";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ez-couch" = callPackage
@@ -88815,8 +88072,6 @@ self: {
        ];
        description = "Rational arithmetic in an irrational world";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "facts" = callPackage
@@ -88850,7 +88105,6 @@ self: {
        description = "A driver for the Factual API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fad" = callPackage
@@ -88882,8 +88136,6 @@ self: {
        ];
        description = "Minimal library for music generation and notation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fadno-braids" = callPackage
@@ -88916,8 +88168,6 @@ self: {
        ];
        description = "XML/XSD combinators/schemas/codegen";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fail" = callPackage
@@ -89014,21 +88264,19 @@ self: {
      }) {};
 
   "fake" = callPackage
-    ({ mkDerivation, base, containers, generics-sop, hspec, random
-     , text, time
+    ({ mkDerivation, base, containers, generics-sop, hspec, lens
+     , random, text, time
      }:
      mkDerivation {
        pname = "fake";
-       version = "0.1.1.3";
-       sha256 = "07ciaxbfvhajjdj5sidvy9cxpjfssjkxykrbgnghihrla78pwq1n";
+       version = "0.1.2";
+       sha256 = "03v224sag70w1ibymw1cmi3lwby25wl0254p2gzy7s330fmlbymr";
        libraryHaskellDepends = [
          base containers generics-sop random text time
        ];
-       testHaskellDepends = [ base hspec random text time ];
+       testHaskellDepends = [ base hspec lens random text time ];
        description = "Randomly generated fake data";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fake-type" = callPackage
@@ -89075,6 +88323,8 @@ self: {
        ];
        description = "Library for producing fake data";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "fakedata-parser" = callPackage
@@ -89102,6 +88352,7 @@ self: {
        ];
        description = "Fake a -> Gen a";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "fakefs" = callPackage
@@ -89146,20 +88397,20 @@ self: {
 
   "faktory" = callPackage
     ({ mkDerivation, aeson, aeson-casing, async, base, bytestring
-     , connection, cryptonite, hspec, markdown-unlit, megaparsec, memory
-     , mtl, network, random, safe-exceptions, scanner, semigroups, text
-     , time, unix, unordered-containers
+     , connection, cryptonite, errors, hspec, markdown-unlit, megaparsec
+     , memory, mtl, network, random, safe-exceptions, scanner
+     , semigroups, text, time, unix, unordered-containers
      }:
      mkDerivation {
        pname = "faktory";
-       version = "1.0.2.1";
-       sha256 = "0n1pcchzb5bxhykdjdri84g0hnbrzd76brpqqx8f6yhwll5vaxsq";
+       version = "1.0.3.0";
+       sha256 = "1igarcl4cvipndg9rhg4lpcrl09mbfkpqcp3prr14izclcldr47y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson aeson-casing base bytestring connection cryptonite megaparsec
-         memory mtl network random safe-exceptions scanner semigroups text
-         time unix unordered-containers
+         aeson aeson-casing base bytestring connection cryptonite errors
+         megaparsec memory mtl network random safe-exceptions scanner
+         semigroups text time unix unordered-containers
        ];
        executableHaskellDepends = [ aeson base safe-exceptions ];
        testHaskellDepends = [
@@ -89201,7 +88452,6 @@ self: {
        description = "Falling sand game/cellular automata simulation using regular parallel arrays";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fallingblocks" = callPackage
@@ -89221,7 +88471,6 @@ self: {
        description = "A fun falling blocks game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "familiar-reflection" = callPackage
@@ -89250,7 +88499,6 @@ self: {
        description = "A family tree library for the Haskell programming language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "farmhash" = callPackage
@@ -89282,8 +88530,6 @@ self: {
        doHaddock = false;
        description = "Fast functions on integers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fast-builder" = callPackage
@@ -89343,7 +88589,6 @@ self: {
        description = "Integer-to-digits conversion";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fast-downward" = callPackage
@@ -89368,8 +88613,8 @@ self: {
      }:
      mkDerivation {
        pname = "fast-logger";
-       version = "3.0.3";
-       sha256 = "0s7hsbii1km7dqkxa27v2fw553wqx6x00204s6iapv2k20ra0qsp";
+       version = "3.0.5";
+       sha256 = "1mbnah6n8lig494523czcd95dfn01f438qai9pf20wpa2gdbz4x6";
        libraryHaskellDepends = [
          array auto-update base bytestring directory easy-file filepath text
          unix-compat unix-time
@@ -89485,8 +88730,6 @@ self: {
        ];
        description = "A simple, mindless parser for fasta files";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fastbayes" = callPackage
@@ -89552,7 +88795,6 @@ self: {
        description = "Fast Internet Relay Chat (IRC) library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fastly" = callPackage
@@ -89633,8 +88875,6 @@ self: {
        ];
        description = "A fast open-union type suitable for 100+ contained alternatives";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fathead-util" = callPackage
@@ -89663,7 +88903,6 @@ self: {
        description = "A fault tree analysis library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fay" = callPackage
@@ -89914,16 +89153,16 @@ self: {
 
   "fbrnch" = callPackage
     ({ mkDerivation, aeson, async, base, bugzilla-redhat, bytestring
-     , config-ini, directory, email-validate, extra, filepath, haxr
-     , http-conduit, http-directory, http-query, lens, lens-aeson, mtl
+     , config-ini, directory, email-validate, extra, filepath
+     , http-conduit, http-directory, http-query, koji, lens, lens-aeson
      , network-uri, optparse-applicative, pretty-terminal, process
      , rpmbuild-order, simple-cmd, simple-cmd-args, text, time
      , typed-process, unordered-containers, utf8-string, xdg-basedir
      }:
      mkDerivation {
        pname = "fbrnch";
-       version = "0.8.0";
-       sha256 = "113mpna3crycw2kxsbniah5m71wvswy7v6j2p76ybl1qg50bq075";
+       version = "0.9";
+       sha256 = "1basamg578nyyjl677q3fax31pxcckxvdpw4f48gdmnmlnd9f6vm";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -89931,8 +89170,8 @@ self: {
        ];
        executableHaskellDepends = [
          aeson async base bugzilla-redhat bytestring config-ini directory
-         email-validate extra filepath haxr http-conduit http-directory
-         http-query mtl network-uri optparse-applicative pretty-terminal
+         email-validate extra filepath http-conduit http-directory
+         http-query koji network-uri optparse-applicative pretty-terminal
          process rpmbuild-order simple-cmd simple-cmd-args text time
          typed-process unordered-containers utf8-string xdg-basedir
        ];
@@ -89940,7 +89179,6 @@ self: {
        description = "Build and create Fedora package repos and branches";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fca" = callPackage
@@ -89997,7 +89235,6 @@ self: {
        description = "A faster way to navigate directories using the command line";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fcf-containers" = callPackage
@@ -90013,8 +89250,6 @@ self: {
        testHaskellDepends = [ base doctest first-class-families Glob ];
        description = "Data structures and algorithms for first-class-families";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fcg" = callPackage
@@ -90050,8 +89285,8 @@ self: {
      }:
      mkDerivation {
        pname = "fclabels";
-       version = "2.0.5";
-       sha256 = "0ppvc1s5bvx38y6yd6ib1wxi3y2j438xzl9iqhpr4hc1zwvsi6rx";
+       version = "2.0.5.1";
+       sha256 = "0g4ca5pm2bafsnpari7wqhy79i5qs8njb3kdknk0xsrazdsl174k";
        libraryHaskellDepends = [
          base base-orphans mtl template-haskell transformers
        ];
@@ -90204,7 +89439,6 @@ self: {
        description = "A minimally obtrusive feature flag library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fec" = callPackage
@@ -90267,7 +89501,6 @@ self: {
        description = "Fedora image download tool";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fedora-packages" = callPackage
@@ -90427,7 +89660,6 @@ self: {
        description = "CI service around gipeda";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "feed-translator" = callPackage
@@ -90450,7 +89682,6 @@ self: {
        description = "Translate syndication feeds";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "feed2lj" = callPackage
@@ -90470,7 +89701,6 @@ self: {
        description = "(unsupported)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "feed2twitter" = callPackage
@@ -90488,7 +89718,6 @@ self: {
        description = "Send posts from a feed to Twitter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fei-base" = callPackage
@@ -90517,7 +89746,6 @@ self: {
        description = "FFI to MXNet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) mxnet;};
 
   "fei-cocoapi" = callPackage
@@ -90546,7 +89774,6 @@ self: {
        description = "Cocodataset with cocoapi";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fei-dataiter" = callPackage
@@ -90574,7 +89801,6 @@ self: {
        description = "mxnet dataiters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) mxnet;};
 
   "fei-datasets" = callPackage
@@ -90605,7 +89831,6 @@ self: {
        description = "Some datasets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fei-examples" = callPackage
@@ -90627,7 +89852,6 @@ self: {
        description = "fei examples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fei-modelzoo" = callPackage
@@ -90645,7 +89869,6 @@ self: {
        description = "A collection of standard models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fei-nn" = callPackage
@@ -90668,7 +89891,6 @@ self: {
        description = "Train a neural network with MXNet in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "feldspar-compiler" = callPackage
@@ -90698,7 +89920,6 @@ self: {
        description = "Compiler for the Feldspar language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {gcc_s = null;};
 
   "feldspar-language" = callPackage
@@ -90723,7 +89944,6 @@ self: {
        description = "A functional embedded language for DSP and parallelism";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "feldspar-signal" = callPackage
@@ -90856,7 +90076,6 @@ self: {
        description = "Remote multi-db SQLCipher server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fez-conf" = callPackage
@@ -90960,7 +90179,6 @@ self: {
        description = "Tutorials on ffmpeg usage to play video/audio";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fft" = callPackage
@@ -90969,8 +90187,8 @@ self: {
      }:
      mkDerivation {
        pname = "fft";
-       version = "0.1.8.6";
-       sha256 = "0hjv3r09imb2ypgbz3qj9hf4f36v977z38gdcad3qa0334qdin1f";
+       version = "0.1.8.7";
+       sha256 = "1kkdw08qzsgjgg9z7pf5876cn2hlq22cgvc3k2amidn317n2d6vz";
        libraryHaskellDepends = [
          array base carray ix-shapable storable-complex syb transformers
        ];
@@ -91130,7 +90348,6 @@ self: {
        description = "update statically hosted file in a push stule through socketed";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fields" = callPackage
@@ -91147,7 +90364,6 @@ self: {
        description = "First-class record field combinators with infix record field syntax";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fields-json" = callPackage
@@ -91230,12 +90446,12 @@ self: {
      }:
      mkDerivation {
        pname = "file-embed";
-       version = "0.0.13.0";
-       sha256 = "1sp1qq1ph2gr5a8ismn7n9vijnfwjyh38iqn338wa8mxn2mnhc6i";
+       version = "0.0.14.0";
+       sha256 = "1b45yk17339zw53zgp8zb5sjg5xn76kryrb6dkqk747vnbdnf0h5";
        libraryHaskellDepends = [
          base bytestring directory filepath template-haskell
        ];
-       testHaskellDepends = [ base filepath ];
+       testHaskellDepends = [ base bytestring filepath ];
        description = "Use Template Haskell to embed file contents directly";
        license = lib.licenses.bsd3;
      }) {};
@@ -91372,8 +90588,6 @@ self: {
        ];
        description = "A cache system associating values to files";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filediff" = callPackage
@@ -91484,7 +90698,6 @@ self: {
        description = "Reversable and secure encoding of object ids as filepaths";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filepath-io-access" = callPackage
@@ -91497,7 +90710,6 @@ self: {
        description = "IO Access for filepath";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filepather" = callPackage
@@ -91515,7 +90727,6 @@ self: {
        description = "Functions on System.FilePath";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filepattern" = callPackage
@@ -91544,8 +90755,6 @@ self: {
        ];
        description = "Library to process and search large files or a collection of files";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filestore" = callPackage
@@ -91624,7 +90833,6 @@ self: {
        description = "Enumerator-based API for manipulating the filesystem";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "filesystem-trees" = callPackage
@@ -91789,7 +90997,6 @@ self: {
        description = "Find the clumpiness of labels in a tree";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "find-conduit" = callPackage
@@ -91858,7 +91065,6 @@ self: {
        description = "List http/html files";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fingertree" = callPackage
@@ -92192,7 +91398,6 @@ self: {
        description = "Defunctionalisation for Yhc Core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fishfood" = callPackage
@@ -92216,8 +91421,6 @@ self: {
        ];
        description = "Calculates file-size frequency-distribution";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fit" = callPackage
@@ -92296,6 +91499,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "fitspec_0_4_10" = callPackage
+    ({ mkDerivation, base, cmdargs, leancheck, pretty, template-haskell
+     }:
+     mkDerivation {
+       pname = "fitspec";
+       version = "0.4.10";
+       sha256 = "1jq4brkwq59hj8fpyfq60hywj9hx82qp0yjvyl0bmwy8jpc6j91k";
+       libraryHaskellDepends = [
+         base cmdargs leancheck template-haskell
+       ];
+       testHaskellDepends = [ base leancheck ];
+       benchmarkHaskellDepends = [ base pretty ];
+       description = "refining property sets for testing Haskell programs";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "fix-imports" = callPackage
     ({ mkDerivation, base, containers, cpphs, deepseq, directory
      , filepath, haskell-src-exts, mtl, pretty, process, split
@@ -92317,8 +91537,6 @@ self: {
        ];
        description = "Program to manage the imports of a haskell module";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fix-parser-simple" = callPackage
@@ -92333,7 +91551,6 @@ self: {
        description = "Simple fix-expression parser";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fix-symbols-gitit" = callPackage
@@ -92426,7 +91643,6 @@ self: {
        description = "Unbox instances for the fixed-point package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fixed-point-vector-space" = callPackage
@@ -92439,7 +91655,6 @@ self: {
        description = "vector-space instances for the fixed-point package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fixed-precision" = callPackage
@@ -92585,6 +91800,8 @@ self: {
        libraryHaskellDepends = [ base random ];
        description = "A fixed-precision real number type";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "fixedwidth-hs" = callPackage
@@ -92679,7 +91896,6 @@ self: {
        description = "FIX (co)parser";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fixie" = callPackage
@@ -92833,7 +92049,6 @@ self: {
        description = "Support for writing picture to FLAC metadata blocks with JuicyPixels";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flaccuraterip" = callPackage
@@ -92945,7 +92160,6 @@ self: {
        description = "Generate language learning flashcards from video";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flat" = callPackage
@@ -92972,6 +92186,7 @@ self: {
        ];
        description = "Principled and efficient bit-oriented binary serialization";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "flat-maybe" = callPackage
@@ -93052,7 +92267,6 @@ self: {
        description = "Haskell implementation of the FlatBuffers protocol";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flatparse" = callPackage
@@ -93062,8 +92276,8 @@ self: {
      }:
      mkDerivation {
        pname = "flatparse";
-       version = "0.2.0.0";
-       sha256 = "0f7nhspfj90ypylwvya3c3dzvipvc462zyc6191xd1x40wn7qms9";
+       version = "0.2.1.0";
+       sha256 = "19vwh9fqda7fp7nv7sgxafvvc5kckaayizjw2vvmd634ka0bsyrr";
        libraryHaskellDepends = [
          base bytestring containers template-haskell
        ];
@@ -93143,7 +92357,6 @@ self: {
        description = "Flexible wrappers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flexiwrap-smallcheck" = callPackage
@@ -93158,7 +92371,6 @@ self: {
        description = "SmallCheck (Serial) instances for flexiwrap";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flick-duration" = callPackage
@@ -93225,6 +92437,8 @@ self: {
        ];
        description = "Parsing of pilot tracklogs dumped as KML";
        license = lib.licenses.mpl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "flink-statefulfun" = callPackage
@@ -93291,7 +92505,6 @@ self: {
        description = "f-lite compiler, interpreter and libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flo" = callPackage
@@ -93520,7 +92733,6 @@ self: {
        description = "API integration with Flowdock";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flowdock-rest" = callPackage
@@ -93568,7 +92780,6 @@ self: {
        description = "Analyze 454 flowgrams (.SFF files)";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flowlocks-framework" = callPackage
@@ -93602,7 +92813,6 @@ self: {
        description = "Simulate 454 pyrosequencing";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "flp" = callPackage
@@ -93709,7 +92919,6 @@ self: {
        description = "Fltkhs Fluid Examples";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fltkhs-hello-world" = callPackage
@@ -93768,7 +92977,6 @@ self: {
        description = "A structured logger for Fluentd (Haskell)";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fluent-logger-conduit" = callPackage
@@ -93996,8 +93204,6 @@ self: {
        libraryHaskellDepends = [ base enum-text-rio ];
        description = "Adaptor for getting fmt to work with rio";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fmt-terminal-colors" = callPackage
@@ -94010,8 +93216,6 @@ self: {
        testHaskellDepends = [ ansi-terminal base fmt ];
        description = "ANSI terminal colors formatters for fmt library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fn" = callPackage
@@ -94174,6 +93378,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Composable, streaming, and efficient left folds";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "foldl-exceptions" = callPackage
@@ -94287,7 +93492,6 @@ self: {
        description = "Attoparsec and foldl-transduce integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "folds" = callPackage
@@ -94395,6 +93599,9 @@ self: {
        ];
        description = "Be notified when a file gets appended, solely with what was added. Warning - only works on linux and for files that are strictly appended, like log files.";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "follower" = callPackage
@@ -94414,7 +93621,6 @@ self: {
        description = "Follow Tweets anonymously";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "foma" = callPackage
@@ -94427,8 +93633,6 @@ self: {
        librarySystemDepends = [ foma ];
        description = "Simple Haskell bindings for Foma";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) foma;};
 
   "font-awesome-type" = callPackage
@@ -94472,7 +93676,6 @@ self: {
        description = "Paper soccer, an OpenGL game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "foobar" = callPackage
@@ -94746,7 +93949,6 @@ self: {
        description = "A statically typed, functional programming language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "format" = callPackage
@@ -94760,7 +93962,6 @@ self: {
        description = "Rendering from and scanning to format strings";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "format-numbers" = callPackage
@@ -94791,7 +93992,6 @@ self: {
        description = "A utility for writing the date to dzen2";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "formatn" = callPackage
@@ -94898,7 +94098,6 @@ self: {
        description = "A statically typed, functional programming language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "formlets" = callPackage
@@ -94916,7 +94115,6 @@ self: {
        description = "Formlets implemented in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "formlets-hsp" = callPackage
@@ -94934,7 +94132,6 @@ self: {
        description = "HSP support for Formlets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "formura" = callPackage
@@ -95015,7 +94212,6 @@ self: {
        description = "A simple eDSL for generating arrayForth code";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fortran-src" = callPackage
@@ -95025,8 +94221,8 @@ self: {
      }:
      mkDerivation {
        pname = "fortran-src";
-       version = "0.4.2";
-       sha256 = "03x1pxkpl41r4cf034qj5ls946azbzwdyxkp2nxxymjx0nm2lsv6";
+       version = "0.4.3";
+       sha256 = "0wmyx0zlz2hmbrag8wgm8k33z9p0c2ylf3490hf9nz9b2303wflq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95067,7 +94263,6 @@ self: {
        description = "Common functions and utils for fortran-src";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fortytwo" = callPackage
@@ -95115,7 +94310,6 @@ self: {
        description = "Foscam File format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "foscam-filename" = callPackage
@@ -95164,17 +94358,14 @@ self: {
        description = "Foscam File format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "foundation" = callPackage
     ({ mkDerivation, base, basement, gauge, ghc-prim }:
      mkDerivation {
        pname = "foundation";
-       version = "0.0.25";
-       sha256 = "0q6kx57ygmznlpf8n499hid4x6mj3180paijx0a8dgi9hh7man61";
-       revision = "1";
-       editedCabalFile = "1ps5sk50sf4b5hd87k3jqykqrwcw2wzyp50rcy6pghd61h83cjg2";
+       version = "0.0.26.1";
+       sha256 = "1hri3raqf6nhh6631gfm2yrkv4039gb0cqfa9cqmjp8bbqv28w5d";
        libraryHaskellDepends = [ base basement ghc-prim ];
        testHaskellDepends = [ base basement ];
        benchmarkHaskellDepends = [ base basement gauge ];
@@ -95214,8 +94405,8 @@ self: {
        pname = "fourmolu";
        version = "0.3.0.0";
        sha256 = "0v89dvcr8l0swj23kkakc39q6lyxjz90rqgwy7m6a5p6iv3h2wms";
-       revision = "1";
-       editedCabalFile = "1n3avdmjqkd2910lhb5spxvjgzb7icln82pcrz3cmkfmjwxnirsc";
+       revision = "2";
+       editedCabalFile = "16ky7wzmnwhzkk18r63ynq78vlrg065z6mp3hqgs92khpjr33g1l";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -95251,7 +94442,6 @@ self: {
        description = "IEEE 754-2019 compliant operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fpco-api" = callPackage
@@ -95336,7 +94526,6 @@ self: {
        description = "Haskell bindings to <https://fplll.github.io/fplll/ fplll>";
        license = lib.licenses.lgpl21Plus;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) fplll;};
 
   "fpnla" = callPackage
@@ -95373,7 +94562,6 @@ self: {
        description = "Example implementations for FPNLA library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fptest" = callPackage
@@ -95512,7 +94700,6 @@ self: {
        description = "A markdown to Frame GUI writer for Pandoc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "franchise" = callPackage
@@ -95616,15 +94803,15 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "free_5_1_6" = callPackage
+  "free_5_1_7" = callPackage
     ({ mkDerivation, base, comonad, containers, distributive
      , exceptions, indexed-traversable, mtl, profunctors, semigroupoids
      , template-haskell, th-abstraction, transformers, transformers-base
      }:
      mkDerivation {
        pname = "free";
-       version = "5.1.6";
-       sha256 = "017cyz0d89560m3a2g2gpf8imzdzzlrd1rv0m6s2lvj41i2dhzfc";
+       version = "5.1.7";
+       sha256 = "121b81wxjk30nc27ivwzxjxi1dcwc30y0gy8l6wac3dxwvkx2c5j";
        libraryHaskellDepends = [
          base comonad containers distributive exceptions indexed-traversable
          mtl profunctors semigroupoids template-haskell th-abstraction
@@ -95653,8 +94840,6 @@ self: {
        ];
        description = "Free algebras";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-categories" = callPackage
@@ -95683,8 +94868,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "efficient data types for free categories and arrows";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-concurrent" = callPackage
@@ -95823,7 +95006,6 @@ self: {
        description = "Automatically Generating Counterexamples to Naive Free Theorems";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-theorems-seq" = callPackage
@@ -95842,7 +95024,6 @@ self: {
        description = "Taming Selective Strictness";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-theorems-seq-webui" = callPackage
@@ -95862,7 +95043,6 @@ self: {
        description = "Taming Selective Strictness";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-theorems-webui" = callPackage
@@ -95883,7 +95063,6 @@ self: {
        description = "CGI-based web interface for the free-theorems package";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "free-v-bucks-generator-no-survey" = callPackage
@@ -95974,7 +95153,6 @@ self: {
        description = "A soccer game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "freelude" = callPackage
@@ -95995,7 +95173,6 @@ self: {
        description = "A generalisation of the Category->Functor->Applicative->Monad hierarchy and more";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "freenect" = callPackage
@@ -96051,7 +95228,6 @@ self: {
        description = "Handle effects conversely using monadic conversation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "freer-effects" = callPackage
@@ -96484,8 +95660,6 @@ self: {
        ];
        description = "A reactive frontend web framework";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "frontmatter" = callPackage
@@ -96576,7 +95750,6 @@ self: {
        description = "Program awesome stuff with Gloss and frpnow!";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "frpnow-gtk" = callPackage
@@ -96594,7 +95767,6 @@ self: {
        description = "Program GUIs with GTK and frpnow!";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "frpnow-gtk3" = callPackage
@@ -96609,7 +95781,6 @@ self: {
        description = "Program GUIs with GTK3 and frpnow!";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "frpnow-vty" = callPackage
@@ -96625,7 +95796,6 @@ self: {
        description = "Program terminal applications with vty and frpnow!";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "frquotes" = callPackage
@@ -96868,7 +96038,6 @@ self: {
        description = "A thin layer over USB to communicate with FTDI chips";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ftp-client" = callPackage
@@ -96905,7 +96074,6 @@ self: {
        description = "Transfer file with FTP and FTPS with Conduit";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ftp-conduit" = callPackage
@@ -96955,7 +96123,6 @@ self: {
        description = "Depth-typed functor-based trees, both top-down and bottom-up";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ftshell" = callPackage
@@ -96975,7 +96142,6 @@ self: {
        description = "Shell interface to the FreeTheorems library";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fugue" = callPackage
@@ -97068,7 +96234,6 @@ self: {
        description = "IRC bot for fun, learning, creativity and collaboration";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funbot-client" = callPackage
@@ -97120,7 +96285,6 @@ self: {
        description = "Git hook which sends events to FunBot";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funcmp" = callPackage
@@ -97173,7 +96337,6 @@ self: {
        description = "call-by-value lambda-calculus with meta-programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funcons-simple" = callPackage
@@ -97190,7 +96353,6 @@ self: {
        description = "A modular interpreter for executing SIMPLE funcons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funcons-tools" = callPackage
@@ -97218,7 +96380,6 @@ self: {
        description = "A modular interpreter for executing funcons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funcons-values" = callPackage
@@ -97260,7 +96421,6 @@ self: {
        description = "Combining functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "function-instances-algebra" = callPackage
@@ -97286,7 +96446,6 @@ self: {
        description = "Combinators that allow for a more functional/monadic style of Arrow programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "functional-kmp" = callPackage
@@ -97385,7 +96544,6 @@ self: {
        description = "Functor combinators with tries & zippers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "functor-friends" = callPackage
@@ -97538,7 +96696,6 @@ self: {
        description = "Utility functions for using funflow with nix";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fungll-combinators" = callPackage
@@ -97573,7 +96730,6 @@ self: {
        description = "A unioning file-system using HFuse";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funnyprint" = callPackage
@@ -97590,7 +96746,6 @@ self: {
        description = "funnyPrint function to colorize GHCi output";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funpat" = callPackage
@@ -97626,7 +96781,6 @@ self: {
        description = "A modern DPLL-style SAT solver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "funspection" = callPackage
@@ -97676,6 +96830,8 @@ self: {
        testToolDepends = [ markdown-unlit ];
        description = "Handle exceptions thrown in IO with fused-effects";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "fused-effects-lens" = callPackage
@@ -97779,7 +96935,6 @@ self: {
        description = "A fused-effects adapter for squeal-postgresql";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fused-effects-th" = callPackage
@@ -97796,8 +96951,6 @@ self: {
        ];
        description = "Template Haskell helpers for fused-effects";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fusion" = callPackage
@@ -97884,6 +97037,46 @@ self: {
        license = lib.licenses.isc;
      }) {};
 
+  "futhark_0_19_6" = callPackage
+    ({ mkDerivation, aeson, alex, ansi-terminal, array, base, binary
+     , blaze-html, bmp, bytestring, bytestring-to-vector, cmark-gfm
+     , containers, directory, directory-tree, dlist, file-embed
+     , filepath, free, gitrev, happy, hashable, haskeline
+     , language-c-quote, mainland-pretty, megaparsec, mtl
+     , neat-interpolation, parallel, parser-combinators, pcg-random
+     , process, process-extras, QuickCheck, regex-tdfa, srcloc, tasty
+     , tasty-hunit, tasty-quickcheck, template-haskell, temporary
+     , terminal-size, text, time, transformers, unordered-containers
+     , utf8-string, vector, vector-binary-instances, versions
+     , zip-archive, zlib
+     }:
+     mkDerivation {
+       pname = "futhark";
+       version = "0.19.6";
+       sha256 = "1wpg2ad2xv60xsdvnq3246nps3ldc00n58k7jxmh8lrx5bjzg263";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal array base binary blaze-html bmp bytestring
+         bytestring-to-vector cmark-gfm containers directory directory-tree
+         dlist file-embed filepath free gitrev hashable haskeline
+         language-c-quote mainland-pretty megaparsec mtl neat-interpolation
+         parallel pcg-random process process-extras regex-tdfa srcloc
+         template-haskell temporary terminal-size text time transformers
+         unordered-containers utf8-string vector vector-binary-instances
+         versions zip-archive zlib
+       ];
+       libraryToolDepends = [ alex happy ];
+       executableHaskellDepends = [ base text ];
+       testHaskellDepends = [
+         base containers megaparsec mtl parser-combinators QuickCheck tasty
+         tasty-hunit tasty-quickcheck text
+       ];
+       description = "An optimising compiler for a functional, array-oriented language";
+       license = lib.licenses.isc;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "futhask" = callPackage
     ({ mkDerivation, base, directory, raw-strings-qq, split }:
      mkDerivation {
@@ -98094,8 +97287,8 @@ self: {
      }:
      mkDerivation {
        pname = "fuzzyset";
-       version = "0.2.0";
-       sha256 = "0wx8bccfr1k5ax97x5w01mzrpjfwns27xgcr12xf6vbyi7q14mfg";
+       version = "0.2.1";
+       sha256 = "13hzy1qkxd7d7qirxhixi1qyrcjjvx6y3qmbggw5c0mkgckw7gpi";
        libraryHaskellDepends = [
          base data-default text text-metrics unordered-containers vector
        ];
@@ -98171,7 +97364,6 @@ self: {
        description = "FWGL GLFW backend";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fwgl-javascript" = callPackage
@@ -98188,7 +97380,6 @@ self: {
        description = "FWGL GHCJS backend";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "fx" = callPackage
@@ -98206,13 +97397,12 @@ self: {
     ({ mkDerivation, base, bytestring, serialport }:
      mkDerivation {
        pname = "fxpak";
-       version = "0.1.1";
-       sha256 = "1nnb47i17b4rc2ayzq5qaydx0ss3m8yw02pjwfmipk8398qr8ss5";
+       version = "0.1.2";
+       sha256 = "1mrpbz32aczrh5aw550p1vzvj8zqhcnmj574sc012r3z1c0g1cin";
        libraryHaskellDepends = [ base bytestring serialport ];
        description = "Interface to the FXPak/FXPak Pro USB interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "g-npm" = callPackage
@@ -98261,7 +97451,6 @@ self: {
        description = "Haskell symbolic execution engine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "g2q" = callPackage
@@ -98274,7 +97463,6 @@ self: {
        description = "G2Q allows constraint programming, via writing Haskell predicates";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "g4ip" = callPackage
@@ -98324,7 +97512,6 @@ self: {
        description = "General Alignment Clustering Tool";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "galois-fft" = callPackage
@@ -98352,7 +97539,6 @@ self: {
        description = "FFTs over finite fields";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "galois-field" = callPackage
@@ -98581,7 +97767,6 @@ self: {
        description = "Connect to gargoyle-managed postgresql instances";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gargoyle-postgresql-nix" = callPackage
@@ -98699,7 +97884,6 @@ self: {
        description = "planar graph embedding into a plane";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gc" = callPackage
@@ -98833,7 +98017,6 @@ self: {
        description = "API Wrapping for Coinbase's GDAX exchange";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gdelt" = callPackage
@@ -98875,7 +98058,6 @@ self: {
        description = "Generic diff for the instant-generics library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gdiff-th" = callPackage
@@ -98959,7 +98141,6 @@ self: {
        description = "Parser for the GEDCOM genealogy file format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geek" = callPackage
@@ -98981,7 +98162,6 @@ self: {
        description = "Geek blog engine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geek-server" = callPackage
@@ -99006,7 +98186,6 @@ self: {
        description = "Geek blog engine server";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gegl" = callPackage
@@ -99067,7 +98246,6 @@ self: {
        description = "FreeType2 based text rendering for the gelatin realtime rendering system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gelatin-fruity" = callPackage
@@ -99080,7 +98258,6 @@ self: {
        description = "Gelatin's support for rendering TTF outlines, using FontyFruity";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gelatin-gl" = callPackage
@@ -99103,7 +98280,6 @@ self: {
        description = "OpenGL rendering routines for the gelatin-picture graphics EDSL";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gelatin-sdl2" = callPackage
@@ -99122,7 +98298,6 @@ self: {
        description = "An SDL2 backend for the gelatin renderer";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gelatin-shaders" = callPackage
@@ -99136,7 +98311,6 @@ self: {
        description = "Gelatin's OpenGL shaders";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gemini-router" = callPackage
@@ -99190,8 +98364,6 @@ self: {
        ];
        description = "A barebones textboard for the Gemini protocol";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gemstone" = callPackage
@@ -99546,6 +98718,8 @@ self: {
        pname = "generic-deriving";
        version = "1.14";
        sha256 = "00nbnxxkxyjfzj3zf6sxh3im24qv485w4jb1gj36c2wn4gjdbayh";
+       revision = "1";
+       editedCabalFile = "0g17hk01sxv5lmrlnmwqhkk73y3dy3xhy7l9myyg5qnw7hm7iin9";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell th-abstraction
        ];
@@ -99755,6 +98929,7 @@ self: {
        ];
        description = "Generically derive traversals, lenses and prisms";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "generic-optics-lite" = callPackage
@@ -99772,12 +98947,13 @@ self: {
      }) {};
 
   "generic-override" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, hspec }:
      mkDerivation {
        pname = "generic-override";
-       version = "0.0.0.0";
-       sha256 = "13v5zrhhzjzm4fib5zjsp4sf1hhgx9450mmy4v12h7bgljz8xfd5";
+       version = "0.2.0.0";
+       sha256 = "0hrya5rqdrgl66hm818v6jf11hfrvra242n1sdjypkv13zxzsk6x";
        libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec ];
        description = "Provides functionality for overriding instances for generic derivation";
        license = lib.licenses.bsd3;
      }) {};
@@ -99786,8 +98962,8 @@ self: {
     ({ mkDerivation, aeson, base, generic-override, hspec, text }:
      mkDerivation {
        pname = "generic-override-aeson";
-       version = "0.0.0.0";
-       sha256 = "02xwssk7158k7hhh170knxn7f2s7slcp4sy7a4b3w4cn1r016bhz";
+       version = "0.0.0.2";
+       sha256 = "1hgrxhfssxm4l0c98ffgc20lbzy34bbhzr4vg06vqg51m4620b25";
        libraryHaskellDepends = [ aeson base generic-override ];
        testHaskellDepends = [ aeson base generic-override hspec text ];
        description = "Provides orphan instances necessary for integrating generic-override and aeson";
@@ -99817,15 +98993,13 @@ self: {
      }) {};
 
   "generic-random" = callPackage
-    ({ mkDerivation, base, deepseq, inspection-testing, QuickCheck }:
+    ({ mkDerivation, base, deepseq, QuickCheck }:
      mkDerivation {
        pname = "generic-random";
-       version = "1.3.0.1";
-       sha256 = "0d9w7xcmsb31b95fr9d5jwbsajcl1yi4347dlbw4bybil2vjwd7k";
+       version = "1.4.0.0";
+       sha256 = "12rvb1dzrfjc46n9vdcw3yv773iih8vwhrac3hpzq70yp2z77jdw";
        libraryHaskellDepends = [ base QuickCheck ];
-       testHaskellDepends = [
-         base deepseq inspection-testing QuickCheck
-       ];
+       testHaskellDepends = [ base deepseq QuickCheck ];
        description = "Generic random generators for QuickCheck";
        license = lib.licenses.mit;
      }) {};
@@ -99972,7 +99146,6 @@ self: {
        description = "Reimplementation of the gdiff algorithm for generics-mrsop";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "generics-sop" = callPackage
@@ -100047,7 +99220,6 @@ self: {
        description = "Opinionated bootstrapping for Haskell web services";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "genesis-test" = callPackage
@@ -100072,7 +99244,6 @@ self: {
        description = "Opinionated bootstrapping for Haskell web services";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "genetics" = callPackage
@@ -100112,7 +99283,6 @@ self: {
        description = "GenI graphical user interface";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geni-util" = callPackage
@@ -100137,7 +99307,6 @@ self: {
        description = "Companion tools for use with the GenI surface realiser";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geniconvert" = callPackage
@@ -100158,7 +99327,6 @@ self: {
        description = "Conversion utility for the GenI generator";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "genifunctors" = callPackage
@@ -100217,7 +99385,6 @@ self: {
        description = "Simple HTTP server for GenI results";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "genprog" = callPackage
@@ -100932,7 +100099,6 @@ self: {
        description = "Geodetic calculations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geodetic-types" = callPackage
@@ -100965,6 +100131,8 @@ self: {
        ];
        description = "Terrestrial coordinate systems and geodetic calculations";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "geohash" = callPackage
@@ -101045,7 +100213,6 @@ self: {
        description = "Geolite CSV Parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "geom2d" = callPackage
@@ -101084,6 +100251,24 @@ self: {
        broken = true;
      }) {inherit (pkgs) geos;};
 
+  "gerrit" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , http-client, http-client-tls, tasty, tasty-hunit, text
+     }:
+     mkDerivation {
+       pname = "gerrit";
+       version = "0.1.0.0";
+       sha256 = "03lcf9xvyhypzkrs6lv7dnwsxnn52vnnl6mhsbbhmpv2bf59whq2";
+       libraryHaskellDepends = [
+         aeson base bytestring containers http-client http-client-tls text
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory tasty tasty-hunit
+       ];
+       description = "A gerrit client library";
+       license = lib.licenses.asl20;
+     }) {};
+
   "getemx" = callPackage
     ({ mkDerivation, base, curl, directory, filepath, haskell98, hxt
      , mtl, old-locale, process, time
@@ -101101,7 +100286,6 @@ self: {
        description = "Fetch from emusic using .emx files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "getflag" = callPackage
@@ -101459,8 +100643,6 @@ self: {
        ];
        description = "An AST and compiler plugin for dumping GHC's Core representation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-dump-tree" = callPackage
@@ -101509,8 +100691,6 @@ self: {
        ];
        description = "Handy tools for working with ghc-dump dumps";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-dup" = callPackage
@@ -101532,8 +100712,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-events";
-       version = "0.16.0";
-       sha256 = "0cr6aj4v9j2fadwhhifjlbg4anyc05phfmy3pvd9h7gn12a2ydr9";
+       version = "0.17.0";
+       sha256 = "059csl9j391iqbxaia9kawsksgbiy3ffdk9pqabb68gqrn0b7icc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -101722,7 +100902,6 @@ self: {
        description = "Find the Haddock documentation for a symbol";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-instances" = callPackage
@@ -101745,7 +100924,6 @@ self: {
        description = "Easily import all instances contained in GHC distributed libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-justdoit" = callPackage
@@ -101957,7 +101135,6 @@ self: {
        description = "Happy Haskell Hacking";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-mtl" = callPackage
@@ -102029,8 +101206,8 @@ self: {
     ({ mkDerivation, base, cpphs, ghc, happy }:
      mkDerivation {
        pname = "ghc-parser";
-       version = "0.2.2.0";
-       sha256 = "1pygg0538nah42ll0zai081y8hv8z7lwl0vr9l2k273i4fdif7hb";
+       version = "0.2.3.0";
+       sha256 = "1sm93n6w2zqkp4dhr604bk67sis1rb6jb6imsxr64vjfm7bkigln";
        libraryHaskellDepends = [ base ghc ];
        libraryToolDepends = [ cpphs happy ];
        description = "Haskell source parser from GHC";
@@ -102333,6 +101510,29 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "ghc-tags" = callPackage
+    ({ mkDerivation, aeson, async, attoparsec, base, bytestring
+     , containers, deepseq, directory, filepath, ghc-lib, ghc-paths
+     , optparse-applicative, process, stm, temporary, text, time
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "ghc-tags";
+       version = "1.3";
+       sha256 = "1fshj5zdnhr879c9q48mb89f1fidc2skgmgi385sa5r8wxn1ili0";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson async attoparsec base bytestring containers deepseq directory
+         filepath ghc-lib ghc-paths optparse-applicative process stm
+         temporary text time unordered-containers vector yaml
+       ];
+       description = "Utility for generating ctags and etags with GHC API";
+       license = lib.licenses.mpl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "ghc-tags-core" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, cpphs, criterion
      , deepseq, directory, filepath, filepath-bytestring, ghc, lattices
@@ -102342,8 +101542,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-tags-core";
-       version = "0.2.4.1";
-       sha256 = "0d1srd72ajp2csyic6wpj6i7818rimqbcg5c3lxj76cz9zpjr1g8";
+       version = "0.3.0.0";
+       sha256 = "035k7akyhhn5jf2231ahplgggymc8h8k2kxia6i22v9cv976zgna";
        libraryHaskellDepends = [
          attoparsec base bytestring directory filepath-bytestring ghc mtl
          pipes pipes-attoparsec pipes-bytestring text transformers
@@ -102372,8 +101572,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-tags-plugin";
-       version = "0.2.4.1";
-       sha256 = "1hzv3s6pys1cqwj3hs1xww52v5yapisw9y3d5fmxzh0s6nawpxf2";
+       version = "0.3.0.0";
+       sha256 = "1d39jnz79vlxqqg2bw3cj1djii3bkmayqs4sm2a6bs5xzsplc5w3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102384,7 +101584,6 @@ self: {
        description = "A compiler plugin which generates tags file from GHC parsed syntax tree";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghc-tcplugins-extra_0_3_2" = callPackage
@@ -102572,7 +101771,6 @@ self: {
        description = "Live visualization of data structures in GHCi";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghcflags" = callPackage
@@ -102628,8 +101826,6 @@ self: {
        ];
        description = "ghci-dap is a GHCi having DAP interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghci-diagrams" = callPackage
@@ -102737,7 +101933,6 @@ self: {
        description = "colored pretty-printing within ghci";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghci-websockets" = callPackage
@@ -102783,28 +101978,31 @@ self: {
      }) {};
 
   "ghcide" = callPackage
-    ({ mkDerivation, aeson, array, async, base, base16-bytestring
-     , binary, bytestring, bytestring-encoding, case-insensitive
-     , containers, cryptohash-sha1, data-default, deepseq, dependent-map
-     , dependent-sum, Diff, directory, dlist, extra, filepath
-     , fingertree, fuzzy, ghc, ghc-boot, ghc-boot-th, ghc-check
-     , ghc-exactprint, ghc-paths, ghc-typelits-knownnat, gitrev, Glob
-     , haddock-library, hashable, heapsize, hie-bios, hie-compat, hiedb
-     , hls-plugin-api, hp2pretty, hslogger, implicit-hie
-     , implicit-hie-cradle, lens, lsp, lsp-test, lsp-types, mtl
-     , network-uri, opentelemetry, optparse-applicative, parallel
-     , prettyprinter, prettyprinter-ansi-terminal, process, QuickCheck
-     , quickcheck-instances, record-dot-preprocessor, record-hasfield
-     , regex-tdfa, retrie, rope-utf16-splay, safe, safe-exceptions
-     , shake, shake-bench, sorted-list, sqlite-simple, stm, syb, tasty
-     , tasty-expected-failure, tasty-hunit, tasty-quickcheck
-     , tasty-rerun, text, time, transformers, unix, unliftio
-     , unliftio-core, unordered-containers, utf8-string, vector, yaml
+    ({ mkDerivation, aeson, aeson-pretty, array, async, base
+     , base16-bytestring, binary, bytestring, bytestring-encoding
+     , case-insensitive, containers, cryptohash-sha1, data-default
+     , deepseq, dependent-map, dependent-sum, Diff, directory, dlist
+     , extra, filepath, fingertree, fuzzy, ghc, ghc-boot, ghc-boot-th
+     , ghc-check, ghc-exactprint, ghc-paths, ghc-trace-events
+     , ghc-typelits-knownnat, gitrev, Glob, haddock-library, hashable
+     , heapsize, hie-bios, hie-compat, hiedb, hls-plugin-api, hp2pretty
+     , hslogger, implicit-hie, implicit-hie-cradle, lens, lsp, lsp-test
+     , lsp-types, mtl, network-uri, opentelemetry, optparse-applicative
+     , parallel, prettyprinter, prettyprinter-ansi-terminal, process
+     , QuickCheck, quickcheck-instances, record-dot-preprocessor
+     , record-hasfield, regex-tdfa, retrie, rope-utf16-splay, safe
+     , safe-exceptions, shake, shake-bench, sorted-list, sqlite-simple
+     , stm, syb, tasty, tasty-expected-failure, tasty-hunit
+     , tasty-quickcheck, tasty-rerun, text, time, transformers, unix
+     , unliftio, unliftio-core, unordered-containers, utf8-string
+     , vector, yaml
      }:
      mkDerivation {
        pname = "ghcide";
-       version = "1.0.0.0";
-       sha256 = "15hz49d68229bnp8g7q1ac60ryd4zbyc1rbxsfaq5lb586ps82k8";
+       version = "1.2.0.2";
+       sha256 = "0r3n23i4b51bb92q6pch9knj079a26jbz0q70qfpv66154d00wld";
+       revision = "1";
+       editedCabalFile = "1hv74yx0x6hh506kwg7ygkajkcczfn3l00f8rc4jnr3hkhkm5v85";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102812,27 +102010,29 @@ self: {
          bytestring-encoding case-insensitive containers cryptohash-sha1
          data-default deepseq dependent-map dependent-sum Diff directory
          dlist extra filepath fingertree fuzzy ghc ghc-boot ghc-boot-th
-         ghc-check ghc-exactprint ghc-paths Glob haddock-library hashable
-         heapsize hie-bios hie-compat hiedb hls-plugin-api hslogger
-         implicit-hie-cradle lens lsp lsp-types mtl network-uri
-         opentelemetry parallel prettyprinter prettyprinter-ansi-terminal
-         regex-tdfa retrie rope-utf16-splay safe safe-exceptions shake
-         sorted-list sqlite-simple stm syb text time transformers unix
-         unliftio unliftio-core unordered-containers utf8-string vector
+         ghc-check ghc-exactprint ghc-paths ghc-trace-events Glob
+         haddock-library hashable heapsize hie-bios hie-compat hiedb
+         hls-plugin-api hslogger implicit-hie-cradle lens lsp lsp-types mtl
+         network-uri opentelemetry optparse-applicative parallel
+         prettyprinter prettyprinter-ansi-terminal regex-tdfa retrie
+         rope-utf16-splay safe safe-exceptions shake sorted-list
+         sqlite-simple stm syb text time transformers unix unliftio
+         unliftio-core unordered-containers utf8-string vector
        ];
        executableHaskellDepends = [
-         aeson base bytestring containers data-default directory extra
-         filepath ghc gitrev hashable heapsize hie-bios hiedb hls-plugin-api
-         lens lsp lsp-test lsp-types optparse-applicative process
-         safe-exceptions shake text unordered-containers
+         aeson aeson-pretty base bytestring containers data-default
+         directory extra filepath ghc gitrev hashable heapsize hie-bios
+         hiedb hls-plugin-api lens lsp lsp-test lsp-types
+         optparse-applicative process safe-exceptions shake text
+         unordered-containers
        ];
        testHaskellDepends = [
-         aeson base binary bytestring containers data-default directory
-         extra filepath ghc ghc-typelits-knownnat haddock-library
+         aeson async base binary bytestring containers data-default
+         directory extra filepath ghc ghc-typelits-knownnat haddock-library
          hls-plugin-api lens lsp lsp-test lsp-types network-uri
          optparse-applicative process QuickCheck quickcheck-instances
-         record-dot-preprocessor record-hasfield rope-utf16-splay safe
-         safe-exceptions shake tasty tasty-expected-failure tasty-hunit
+         record-dot-preprocessor record-hasfield regex-tdfa rope-utf16-splay
+         safe safe-exceptions shake tasty tasty-expected-failure tasty-hunit
          tasty-quickcheck tasty-rerun text
        ];
        testToolDepends = [ implicit-hie ];
@@ -102843,9 +102043,10 @@ self: {
        benchmarkToolDepends = [ hp2pretty implicit-hie ];
        description = "The core of an IDE";
        license = lib.licenses.asl20;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
-  "ghcide_1_2_0_2" = callPackage
+  "ghcide_1_3_0_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, async, base
      , base16-bytestring, binary, bytestring, bytestring-encoding
      , case-insensitive, containers, cryptohash-sha1, data-default
@@ -102853,22 +102054,22 @@ self: {
      , extra, filepath, fingertree, fuzzy, ghc, ghc-boot, ghc-boot-th
      , ghc-check, ghc-exactprint, ghc-paths, ghc-trace-events
      , ghc-typelits-knownnat, gitrev, Glob, haddock-library, hashable
-     , heapsize, hie-bios, hie-compat, hiedb, hls-plugin-api, hp2pretty
-     , hslogger, implicit-hie, implicit-hie-cradle, lens, lsp, lsp-test
-     , lsp-types, mtl, network-uri, opentelemetry, optparse-applicative
-     , parallel, prettyprinter, prettyprinter-ansi-terminal, process
-     , QuickCheck, quickcheck-instances, record-dot-preprocessor
-     , record-hasfield, regex-tdfa, retrie, rope-utf16-splay, safe
-     , safe-exceptions, shake, shake-bench, sorted-list, sqlite-simple
-     , stm, syb, tasty, tasty-expected-failure, tasty-hunit
-     , tasty-quickcheck, tasty-rerun, text, time, transformers, unix
-     , unliftio, unliftio-core, unordered-containers, utf8-string
-     , vector, yaml
+     , heapsize, hie-bios, hie-compat, hiedb, hls-graph, hls-plugin-api
+     , hp2pretty, hslogger, implicit-hie, implicit-hie-cradle, lens, lsp
+     , lsp-test, lsp-types, mtl, network-uri, opentelemetry
+     , optparse-applicative, parallel, prettyprinter
+     , prettyprinter-ansi-terminal, process, QuickCheck
+     , quickcheck-instances, record-dot-preprocessor, record-hasfield
+     , regex-tdfa, retrie, rope-utf16-splay, safe, safe-exceptions
+     , shake, shake-bench, sorted-list, sqlite-simple, stm, syb, tasty
+     , tasty-expected-failure, tasty-hunit, tasty-quickcheck
+     , tasty-rerun, text, time, transformers, unix, unliftio
+     , unliftio-core, unordered-containers, utf8-string, vector, yaml
      }:
      mkDerivation {
        pname = "ghcide";
-       version = "1.2.0.2";
-       sha256 = "0r3n23i4b51bb92q6pch9knj079a26jbz0q70qfpv66154d00wld";
+       version = "1.3.0.0";
+       sha256 = "1rmgrf4is669k5h5hbc9ryp2fc26fcacikzccjyg47jsc967ls9i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102878,28 +102079,28 @@ self: {
          dlist extra filepath fingertree fuzzy ghc ghc-boot ghc-boot-th
          ghc-check ghc-exactprint ghc-paths ghc-trace-events Glob
          haddock-library hashable heapsize hie-bios hie-compat hiedb
-         hls-plugin-api hslogger implicit-hie-cradle lens lsp lsp-types mtl
-         network-uri opentelemetry optparse-applicative parallel
-         prettyprinter prettyprinter-ansi-terminal regex-tdfa retrie
-         rope-utf16-splay safe safe-exceptions shake sorted-list
+         hls-graph hls-plugin-api hslogger implicit-hie-cradle lens lsp
+         lsp-types mtl network-uri opentelemetry optparse-applicative
+         parallel prettyprinter prettyprinter-ansi-terminal regex-tdfa
+         retrie rope-utf16-splay safe safe-exceptions sorted-list
          sqlite-simple stm syb text time transformers unix unliftio
          unliftio-core unordered-containers utf8-string vector
        ];
        executableHaskellDepends = [
          aeson aeson-pretty base bytestring containers data-default
          directory extra filepath ghc gitrev hashable heapsize hie-bios
-         hiedb hls-plugin-api lens lsp lsp-test lsp-types
+         hiedb hls-graph hls-plugin-api lens lsp lsp-test lsp-types
          optparse-applicative process safe-exceptions shake text
          unordered-containers
        ];
        testHaskellDepends = [
          aeson async base binary bytestring containers data-default
          directory extra filepath ghc ghc-typelits-knownnat haddock-library
-         hls-plugin-api lens lsp lsp-test lsp-types network-uri
+         hls-graph hls-plugin-api lens lsp lsp-test lsp-types network-uri
          optparse-applicative process QuickCheck quickcheck-instances
          record-dot-preprocessor record-hasfield regex-tdfa rope-utf16-splay
          safe safe-exceptions shake tasty tasty-expected-failure tasty-hunit
-         tasty-quickcheck tasty-rerun text
+         tasty-quickcheck tasty-rerun text unordered-containers
        ];
        testToolDepends = [ implicit-hie ];
        benchmarkHaskellDepends = [
@@ -102910,6 +102111,7 @@ self: {
        description = "The core of an IDE";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "ghcjs-ajax" = callPackage
@@ -102923,33 +102125,16 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "ghcjs-base_0_2_0_0" = callPackage
-    ({ mkDerivation, aeson, array, attoparsec, base, binary, bytestring
-     , containers, deepseq, directory, dlist, ghc-prim, ghcjs-prim
-     , hashable, HUnit, integer-gmp, primitive, QuickCheck
-     , quickcheck-unicode, random, scientific, test-framework
-     , test-framework-hunit, test-framework-quickcheck2, text, time
-     , transformers, unordered-containers, vector
-     }:
+  "ghcjs-base_0_2_0_3" = callPackage
+    ({ mkDerivation }:
      mkDerivation {
        pname = "ghcjs-base";
-       version = "0.2.0.0";
-       sha256 = "0wvmxr33a3bsv1mh8lb10haapvcykp9200ppbdpjiz2wihnb4mk8";
-       libraryHaskellDepends = [
-         aeson attoparsec base binary bytestring containers deepseq dlist
-         ghc-prim ghcjs-prim hashable integer-gmp primitive scientific text
-         time transformers unordered-containers vector
-       ];
-       testHaskellDepends = [
-         array base bytestring deepseq directory ghc-prim ghcjs-prim HUnit
-         primitive QuickCheck quickcheck-unicode random test-framework
-         test-framework-hunit test-framework-quickcheck2 text
-       ];
+       version = "0.2.0.3";
+       sha256 = "09sv5p57l8jczbycasbb06h4qsifi5fagxwsr665yil1gickfxyg";
        description = "base library for GHCJS";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {ghcjs-prim = null;};
+     }) {};
 
   "ghcjs-base-stub" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, containers, deepseq
@@ -103014,7 +102199,9 @@ self: {
        ];
        description = "GHCJS DOM Hello World, an example package";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "ghcjs-dom-jsaddle" = callPackage
@@ -103090,7 +102277,6 @@ self: {
        description = "Client-side web EDSL for transient nodes running in the web browser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ghcjs-perch" = callPackage
@@ -103216,7 +102402,7 @@ self: {
      }) {};
 
   "ghcup" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, ascii-string, async, base
+    ({ mkDerivation, aeson, aeson-pretty, async, base
      , base16-bytestring, binary, bytestring, bz2, case-insensitive
      , casing, concurrent-output, containers, cryptohash-sha256
      , generic-arbitrary, generics-sop, haskus-utils-types
@@ -103233,15 +102419,13 @@ self: {
      }:
      mkDerivation {
        pname = "ghcup";
-       version = "0.1.14.1";
-       sha256 = "1lx6ahn4mvjzs3x4qm32sdn1n8w4v7jqj2jslvan008zk664d5l2";
-       revision = "1";
-       editedCabalFile = "0a9c2ha61mlz9ci652djy4vmmzi4s1g8rwl1a2miymrw5b36zsmq";
+       version = "0.1.14.2";
+       sha256 = "1k18ira2i2ja4hd65fdxk3ab21xzh4fvd982q2rfjshzkds1a3hv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ascii-string async base base16-bytestring binary bytestring
-         bz2 case-insensitive casing concurrent-output containers
+         aeson async base base16-bytestring binary bytestring bz2
+         case-insensitive casing concurrent-output containers
          cryptohash-sha256 generics-sop haskus-utils-types
          haskus-utils-variant hpath hpath-directory hpath-filepath hpath-io
          hpath-posix libarchive lzma-static megaparsec monad-logger mtl
@@ -103266,8 +102450,7 @@ self: {
        ];
        description = "ghc toolchain installer";
        license = lib.licenses.lgpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "ghczdecode" = callPackage
@@ -103317,7 +102500,6 @@ self: {
        description = "Trivial routines for inspecting git repositories";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gi-atk" = callPackage
@@ -103420,7 +102602,6 @@ self: {
        description = "Bridge between packages gi-* and cairo-core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gi-cairo-connector" = callPackage
@@ -103472,6 +102653,9 @@ self: {
        libraryPkgconfigDepends = [ libdbusmenu ];
        description = "Dbusmenu bindings";
        license = lib.licenses.lgpl21Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) libdbusmenu;};
 
   "gi-dbusmenu_0_4_9" = callPackage
@@ -103491,6 +102675,9 @@ self: {
        libraryPkgconfigDepends = [ libdbusmenu ];
        description = "Dbusmenu bindings";
        license = lib.licenses.lgpl21Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) libdbusmenu;};
 
@@ -103516,6 +102703,9 @@ self: {
        libraryPkgconfigDepends = [ gtk3 libdbusmenu-gtk3 ];
        description = "DbusmenuGtk bindings";
        license = lib.licenses.lgpl21Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) gtk3; inherit (pkgs) libdbusmenu-gtk3;};
 
   "gi-dbusmenugtk3_0_4_10" = callPackage
@@ -103540,6 +102730,9 @@ self: {
        libraryPkgconfigDepends = [ gtk3 libdbusmenu-gtk3 ];
        description = "DbusmenuGtk bindings";
        license = lib.licenses.lgpl21Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) gtk3; inherit (pkgs) libdbusmenu-gtk3;};
 
@@ -103567,6 +102760,31 @@ self: {
        license = lib.licenses.lgpl21Only;
      }) {inherit (pkgs) gtk3;};
 
+  "gi-gdk_3_0_24" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, gi-cairo
+     , gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject, gi-pango, gtk3
+     , haskell-gi, haskell-gi-base, haskell-gi-overloading, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "gi-gdk";
+       version = "3.0.24";
+       sha256 = "17slysv7zj3nbzh302w8jkvcfkvwfk5s80n99lqhggd6lnhf5fjx";
+       setupHaskellDepends = [
+         base Cabal gi-cairo gi-gdkpixbuf gi-gio gi-glib gi-gobject gi-pango
+         haskell-gi
+       ];
+       libraryHaskellDepends = [
+         base bytestring containers gi-cairo gi-gdkpixbuf gi-gio gi-glib
+         gi-gobject gi-pango haskell-gi haskell-gi-base
+         haskell-gi-overloading text transformers
+       ];
+       libraryPkgconfigDepends = [ gtk3 ];
+       description = "Gdk bindings";
+       license = lib.licenses.lgpl21Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {inherit (pkgs) gtk3;};
+
   "gi-gdk_4_0_3" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-cairo
      , gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject, gi-pango, gtk4
@@ -103657,15 +102875,15 @@ self: {
        license = lib.licenses.lgpl21Only;
      }) {inherit (pkgs) gtk3;};
 
-  "gi-gdkx11_4_0_3" = callPackage
+  "gi-gdkx11_3_0_11" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-cairo
-     , gi-gdk, gi-gio, gi-gobject, gi-xlib, gtk4-x11, haskell-gi
+     , gi-gdk, gi-gio, gi-gobject, gi-xlib, gtk3, haskell-gi
      , haskell-gi-base, haskell-gi-overloading, text, transformers
      }:
      mkDerivation {
        pname = "gi-gdkx11";
-       version = "4.0.3";
-       sha256 = "13m2dvab8hqwa7h648asjg3llvdnpwdf1rli9i44nb6n1dfk7jbv";
+       version = "3.0.11";
+       sha256 = "07r47fpx6rvsahgnv8g741fl6h1s6y1xrlyacbpc3d8cv7x4aax2";
        setupHaskellDepends = [
          base Cabal gi-cairo gi-gdk gi-gio gi-gobject gi-xlib haskell-gi
        ];
@@ -103674,34 +102892,36 @@ self: {
          gi-xlib haskell-gi haskell-gi-base haskell-gi-overloading text
          transformers
        ];
-       libraryPkgconfigDepends = [ gtk4-x11 ];
+       libraryPkgconfigDepends = [ gtk3 ];
        description = "GdkX11 bindings";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-     }) {gtk4-x11 = null;};
+     }) {inherit (pkgs) gtk3;};
 
-  "gi-ggit" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
-     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, libgit2-glib, text, transformers
+  "gi-gdkx11_4_0_3" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, gi-cairo
+     , gi-gdk, gi-gio, gi-gobject, gi-xlib, gtk4-x11, haskell-gi
+     , haskell-gi-base, haskell-gi-overloading, text, transformers
      }:
      mkDerivation {
-       pname = "gi-ggit";
-       version = "1.0.9";
-       sha256 = "0qvmppdby40ncd9alnnk8ang90qcaj00c0g0nrq0s0m1ynar8ccd";
+       pname = "gi-gdkx11";
+       version = "4.0.3";
+       sha256 = "13m2dvab8hqwa7h648asjg3llvdnpwdf1rli9i44nb6n1dfk7jbv";
        setupHaskellDepends = [
-         base Cabal gi-gio gi-glib gi-gobject haskell-gi
+         base Cabal gi-cairo gi-gdk gi-gio gi-gobject gi-xlib haskell-gi
        ];
        libraryHaskellDepends = [
-         base bytestring containers gi-gio gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
+         base bytestring containers gi-cairo gi-gdk gi-gio gi-gobject
+         gi-xlib haskell-gi haskell-gi-base haskell-gi-overloading text
+         transformers
        ];
-       libraryPkgconfigDepends = [ libgit2-glib ];
-       description = "libgit2-glib bindings";
+       libraryPkgconfigDepends = [ gtk4-x11 ];
+       description = "GdkX11 bindings";
        license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) libgit2-glib;};
+       hydraPlatforms = lib.platforms.none;
+     }) {gtk4-x11 = null;};
 
-  "gi-ggit_1_0_10" = callPackage
+  "gi-ggit" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
      , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
      , haskell-gi-overloading, libgit2-glib, text, transformers
@@ -103720,7 +102940,9 @@ self: {
        libraryPkgconfigDepends = [ libgit2-glib ];
        description = "libgit2-glib bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) libgit2-glib;};
 
   "gi-gio" = callPackage
@@ -103769,25 +102991,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-girepository";
-       version = "1.0.23";
-       sha256 = "0a8sis3zayiywi7mgs1g4p7nr9szv392j7bimq5nvva04lj6sdzc";
-       setupHaskellDepends = [ base Cabal gi-glib gi-gobject haskell-gi ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ gobject-introspection ];
-       description = "GIRepository (gobject-introspection) bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) gobject-introspection;};
-
-  "gi-girepository_1_0_24" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib
-     , gi-gobject, gobject-introspection, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-girepository";
        version = "1.0.24";
        sha256 = "1sj68k3wih2345gkmv0jb1smka73pxnjy8jwmk2ifgl407f3hhfw";
        setupHaskellDepends = [ base Cabal gi-glib gi-gobject haskell-gi ];
@@ -103798,7 +103001,6 @@ self: {
        libraryPkgconfigDepends = [ gobject-introspection ];
        description = "GIRepository (gobject-introspection) bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) gobject-introspection;};
 
   "gi-glib" = callPackage
@@ -103963,7 +103165,6 @@ self: {
        description = "Gsk bindings";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) gtk4;};
 
   "gi-gst" = callPackage
@@ -103973,25 +103174,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gst";
-       version = "1.0.23";
-       sha256 = "0w4xscgd49d6d00gvsqc210r63c0wj748dqa5ypppr4mzllsm0qv";
-       setupHaskellDepends = [ base Cabal gi-glib gi-gobject haskell-gi ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ gstreamer ];
-       description = "GStreamer bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs.gst_all_1) gstreamer;};
-
-  "gi-gst_1_0_24" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib
-     , gi-gobject, gstreamer, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-gst";
        version = "1.0.24";
        sha256 = "01xbjxwipg1s93fkswag8gp8s696z1l1gaazl2w4wnpyykx4hh8s";
        setupHaskellDepends = [ base Cabal gi-glib gi-gobject haskell-gi ];
@@ -104002,7 +103184,6 @@ self: {
        libraryPkgconfigDepends = [ gstreamer ];
        description = "GStreamer bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs.gst_all_1) gstreamer;};
 
   "gi-gstaudio" = callPackage
@@ -104024,8 +103205,6 @@ self: {
        libraryPkgconfigDepends = [ gst-plugins-base ];
        description = "GStreamerAudio bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs.gst_all_1) gst-plugins-base;};
 
   "gi-gstbase" = callPackage
@@ -104035,27 +103214,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gstbase";
-       version = "1.0.23";
-       sha256 = "0im25z9pf9j0cxj0b6lbbr3lis9kbvzzvzns65cmargbh1018959";
-       setupHaskellDepends = [
-         base Cabal gi-glib gi-gobject gi-gst haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-glib gi-gobject gi-gst haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ gst-plugins-base ];
-       description = "GStreamerBase bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs.gst_all_1) gst-plugins-base;};
-
-  "gi-gstbase_1_0_24" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib
-     , gi-gobject, gi-gst, gst-plugins-base, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-gstbase";
        version = "1.0.24";
        sha256 = "0b8k2xk3ha6b79kkw72kgdmj8vjyh40r26saavin54gznlgd5xh8";
        setupHaskellDepends = [
@@ -104068,7 +103226,6 @@ self: {
        libraryPkgconfigDepends = [ gst-plugins-base ];
        description = "GStreamerBase bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs.gst_all_1) gst-plugins-base;};
 
   "gi-gstpbutils" = callPackage
@@ -104094,7 +103251,6 @@ self: {
        description = "GStreamer Plugins Base Utils bindings";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {gstreamer-pbutils = null;};
 
   "gi-gsttag" = callPackage
@@ -104127,8 +103283,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gstvideo";
-       version = "1.0.23";
-       sha256 = "1kb09kal08x7nznc0g8c2n9jfijapdndbnsfs5cvz0p9smvd092i";
+       version = "1.0.24";
+       sha256 = "0qjfjk5jnpy1f4grn8i68kwdd1yvnq1yc55rk6yxhlj7wks1d35h";
        setupHaskellDepends = [
          base Cabal gi-glib gi-gobject gi-gst gi-gstbase haskell-gi
        ];
@@ -104141,29 +103297,31 @@ self: {
        license = lib.licenses.lgpl21Only;
      }) {inherit (pkgs.gst_all_1) gst-plugins-base;};
 
-  "gi-gstvideo_1_0_24" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib
-     , gi-gobject, gi-gst, gi-gstbase, gst-plugins-base, haskell-gi
-     , haskell-gi-base, haskell-gi-overloading, text, transformers
+  "gi-gtk" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk
+     , gi-cairo, gi-gdk, gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject
+     , gi-pango, gtk3, haskell-gi, haskell-gi-base
+     , haskell-gi-overloading, text, transformers
      }:
      mkDerivation {
-       pname = "gi-gstvideo";
-       version = "1.0.24";
-       sha256 = "0qjfjk5jnpy1f4grn8i68kwdd1yvnq1yc55rk6yxhlj7wks1d35h";
+       pname = "gi-gtk";
+       version = "3.0.36";
+       sha256 = "0bzb3xrax5k5r5fd6vv4by6hprmk77qrqr9mqn3dxqm6an8jwjn9";
        setupHaskellDepends = [
-         base Cabal gi-glib gi-gobject gi-gst gi-gstbase haskell-gi
+         base Cabal gi-atk gi-cairo gi-gdk gi-gdkpixbuf gi-gio gi-glib
+         gi-gobject gi-pango haskell-gi
        ];
        libraryHaskellDepends = [
-         base bytestring containers gi-glib gi-gobject gi-gst gi-gstbase
-         haskell-gi haskell-gi-base haskell-gi-overloading text transformers
+         base bytestring containers gi-atk gi-cairo gi-gdk gi-gdkpixbuf
+         gi-gio gi-glib gi-gobject gi-pango haskell-gi haskell-gi-base
+         haskell-gi-overloading text transformers
        ];
-       libraryPkgconfigDepends = [ gst-plugins-base ];
-       description = "GStreamerVideo bindings";
+       libraryPkgconfigDepends = [ gtk3 ];
+       description = "Gtk bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
-     }) {inherit (pkgs.gst_all_1) gst-plugins-base;};
+     }) {inherit (pkgs) gtk3;};
 
-  "gi-gtk" = callPackage
+  "gi-gtk_3_0_37" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk
      , gi-cairo, gi-gdk, gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject
      , gi-pango, gtk3, haskell-gi, haskell-gi-base
@@ -104171,8 +103329,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk";
-       version = "3.0.36";
-       sha256 = "0bzb3xrax5k5r5fd6vv4by6hprmk77qrqr9mqn3dxqm6an8jwjn9";
+       version = "3.0.37";
+       sha256 = "1psg789lrpcnrwh1y80y7s09hcxl3hihi0gwsmd7j3v731dp7a0k";
        setupHaskellDepends = [
          base Cabal gi-atk gi-cairo gi-gdk gi-gdkpixbuf gi-gio gi-glib
          gi-gobject gi-pango haskell-gi
@@ -104185,6 +103343,7 @@ self: {
        libraryPkgconfigDepends = [ gtk3 ];
        description = "Gtk bindings";
        license = lib.licenses.lgpl21Only;
+       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) gtk3;};
 
   "gi-gtk_4_0_4" = callPackage
@@ -104349,30 +103508,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtksource";
-       version = "3.0.23";
-       sha256 = "13rsxjbl62q8zhwqr8jm2fh5njzfa86izqwag4d6aw8xi71wqfrn";
-       setupHaskellDepends = [
-         base Cabal gi-atk gi-cairo gi-gdk gi-gdkpixbuf gi-gio gi-glib
-         gi-gobject gi-gtk gi-pango haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-atk gi-cairo gi-gdk gi-gdkpixbuf
-         gi-gio gi-glib gi-gobject gi-gtk gi-pango haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ gtksourceview3 ];
-       description = "GtkSource bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) gtksourceview3;};
-
-  "gi-gtksource_3_0_24" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk
-     , gi-cairo, gi-gdk, gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject
-     , gi-gtk, gi-pango, gtksourceview3, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-gtksource";
        version = "3.0.24";
        sha256 = "0bnwqcn7y5a3z3lkl9l886m9albvc602nb7qsh2jkiilf0ng64dp";
        setupHaskellDepends = [
@@ -104387,7 +103522,6 @@ self: {
        libraryPkgconfigDepends = [ gtksourceview3 ];
        description = "GtkSource bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) gtksourceview3;};
 
   "gi-handy" = callPackage
@@ -104462,27 +103596,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-ibus";
-       version = "1.5.2";
-       sha256 = "14chw0qhzdxixsqsn2ra31z561kn2zclk15b7hfpfzayqr6dqci1";
-       setupHaskellDepends = [
-         base Cabal gi-gio gi-glib gi-gobject haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-gio gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ ibus ];
-       description = "IBus bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) ibus;};
-
-  "gi-ibus_1_5_3" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
-     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, ibus, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-ibus";
        version = "1.5.3";
        sha256 = "1gbpbxcdl9f5di2vpnkx3zsy54dkfhz81h3yxss91r65lp9fwrm8";
        setupHaskellDepends = [
@@ -104495,7 +103608,9 @@ self: {
        libraryPkgconfigDepends = [ ibus ];
        description = "IBus bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) ibus;};
 
   "gi-javascriptcore" = callPackage
@@ -104515,7 +103630,6 @@ self: {
        libraryPkgconfigDepends = [ webkitgtk ];
        description = "JavaScriptCore bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) webkitgtk;};
 
   "gi-javascriptcore_4_0_23" = callPackage
@@ -104545,27 +103659,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-notify";
-       version = "0.7.22";
-       sha256 = "0j5cxx9dsxh2wafw4xa7yasr6n98h2qwpm1y08nm7m6i0kwrksap";
-       setupHaskellDepends = [
-         base Cabal gi-gdkpixbuf gi-glib gi-gobject haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-gdkpixbuf gi-glib gi-gobject
-         haskell-gi haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ libnotify ];
-       description = "Libnotify bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) libnotify;};
-
-  "gi-notify_0_7_23" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gdkpixbuf
-     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, libnotify, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-notify";
        version = "0.7.23";
        sha256 = "00p10lw9v9q8mh6630ijpz8smnpz5hiiw8kxk1fv8497akssxjsh";
        setupHaskellDepends = [
@@ -104578,7 +103671,6 @@ self: {
        libraryPkgconfigDepends = [ libnotify ];
        description = "Libnotify bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) libnotify;};
 
   "gi-ostree" = callPackage
@@ -104588,30 +103680,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-ostree";
-       version = "1.0.13";
-       sha256 = "07k02mffidw18f104crmhayr5nf3v5xcldc8fbmxdinp7wik5c7f";
-       setupHaskellDepends = [
-         base Cabal gi-gio gi-glib gi-gobject haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-gio gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ ostree ];
-       description = "OSTree bindings";
-       license = lib.licenses.lgpl21Only;
-       platforms = [
-         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
-       ];
-     }) {inherit (pkgs) ostree;};
-
-  "gi-ostree_1_0_14" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
-     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, ostree, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-ostree";
        version = "1.0.14";
        sha256 = "08jglqkq0h497iv83rc0br83qrf000gm202hp0j1pnhwvdgp7d0f";
        setupHaskellDepends = [
@@ -104627,7 +103695,6 @@ self: {
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) ostree;};
 
   "gi-pango" = callPackage
@@ -104689,32 +103756,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-pangocairo";
-       version = "1.0.24";
-       sha256 = "1yya5gsqrkagmm33rsasshlj691nmax47fqdn1p2rnf4aqx1jcqr";
-       setupHaskellDepends = [
-         base Cabal gi-cairo gi-glib gi-gobject gi-pango haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-cairo gi-glib gi-gobject gi-pango
-         haskell-gi haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ cairo pango ];
-       preCompileBuildDriver = ''
-         PKG_CONFIG_PATH+=":${cairo}/lib/pkgconfig"
-         setupCompileFlags+=" $(pkg-config --libs cairo-gobject)"
-       '';
-       description = "PangoCairo bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) cairo; inherit (pkgs) pango;};
-
-  "gi-pangocairo_1_0_25" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, cairo, containers
-     , gi-cairo, gi-glib, gi-gobject, gi-pango, haskell-gi
-     , haskell-gi-base, haskell-gi-overloading, pango, text
-     , transformers
-     }:
-     mkDerivation {
-       pname = "gi-pangocairo";
        version = "1.0.25";
        sha256 = "1w7sdwxfsymysazv9b045li97mjj2xspgrfyhm74x7sd7b4jl4aa";
        setupHaskellDepends = [
@@ -104731,7 +103772,6 @@ self: {
        '';
        description = "PangoCairo bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) cairo; inherit (pkgs) pango;};
 
   "gi-poppler" = callPackage
@@ -104753,8 +103793,6 @@ self: {
        libraryPkgconfigDepends = [ poppler_gi ];
        description = "Poppler bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) poppler_gi;};
 
   "gi-secret" = callPackage
@@ -104764,27 +103802,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-secret";
-       version = "0.0.12";
-       sha256 = "19mr7mvay2slm5k6afqj0hhy4ddh0advrb5dyzqi75xysx7xagm8";
-       setupHaskellDepends = [
-         base Cabal gi-gio gi-glib gi-gobject haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-gio gi-glib gi-gobject haskell-gi
-         haskell-gi-base haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ libsecret ];
-       description = "Libsecret bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {inherit (pkgs) libsecret;};
-
-  "gi-secret_0_0_13" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
-     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base
-     , haskell-gi-overloading, libsecret, text, transformers
-     }:
-     mkDerivation {
-       pname = "gi-secret";
        version = "0.0.13";
        sha256 = "0n37sdm4q6q807j4wgwwsl28knc71d8jiyx4prxbl2d69gg6i2ka";
        setupHaskellDepends = [
@@ -104797,7 +103814,6 @@ self: {
        libraryPkgconfigDepends = [ libsecret ];
        description = "Libsecret bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) libsecret;};
 
   "gi-soup" = callPackage
@@ -104860,6 +103876,8 @@ self: {
        libraryPkgconfigDepends = [ vips ];
        description = "libvips GObject bindings";
        license = lib.licenses.lgpl21Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) vips;};
 
   "gi-vte" = callPackage
@@ -104870,30 +103888,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-vte";
-       version = "2.91.27";
-       sha256 = "0a4n8yah3nirwciw0y1i8vpcjqbbk3pw15nd8av109cyxgl8nzx8";
-       setupHaskellDepends = [
-         base Cabal gi-atk gi-gdk gi-gio gi-glib gi-gobject gi-gtk gi-pango
-         haskell-gi
-       ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-atk gi-gdk gi-gio gi-glib gi-gobject
-         gi-gtk gi-pango haskell-gi haskell-gi-base haskell-gi-overloading
-         text transformers
-       ];
-       libraryPkgconfigDepends = [ vte_291 ];
-       description = "Vte bindings";
-       license = lib.licenses.lgpl21Only;
-     }) {vte_291 = pkgs.vte;};
-
-  "gi-vte_2_91_28" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk
-     , gi-gdk, gi-gio, gi-glib, gi-gobject, gi-gtk, gi-pango, haskell-gi
-     , haskell-gi-base, haskell-gi-overloading, text, transformers
-     , vte_291
-     }:
-     mkDerivation {
-       pname = "gi-vte";
        version = "2.91.28";
        sha256 = "06bgl5r1r4ri22c43an4h538p0b3icrb8nq1w7fw8cmxqj7y5m33";
        setupHaskellDepends = [
@@ -104908,7 +103902,9 @@ self: {
        libraryPkgconfigDepends = [ vte_291 ];
        description = "Vte bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {vte_291 = pkgs.vte;};
 
   "gi-webkit" = callPackage
@@ -104956,7 +103952,6 @@ self: {
        libraryPkgconfigDepends = [ webkitgtk ];
        description = "WebKit2 bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) webkitgtk;};
 
   "gi-webkit2_4_0_27" = callPackage
@@ -105006,7 +104001,6 @@ self: {
        libraryPkgconfigDepends = [ webkitgtk ];
        description = "WebKit2-WebExtension bindings";
        license = lib.licenses.lgpl21Only;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) webkitgtk;};
 
   "gi-wnck" = callPackage
@@ -105324,25 +104318,25 @@ self: {
      , crypto-api, cryptonite, curl, data-default, DAV, dbus, deepseq
      , directory, disk-free-space, dlist, edit-distance, exceptions
      , fdo-notify, feed, filepath, filepath-bytestring, free, git
-     , git-lfs, gnupg, hinotify, hslogger, http-client
-     , http-client-restricted, http-client-tls, http-conduit, http-types
-     , IfElse, lsof, magic, memory, microlens, monad-control
-     , monad-logger, mountpoints, mtl, network, network-bsd
-     , network-info, network-multicast, network-uri, old-locale, openssh
-     , optparse-applicative, path-pieces, perl, persistent
-     , persistent-sqlite, persistent-template, process, QuickCheck
-     , random, regex-tdfa, resourcet, rsync, SafeSemaphore, sandi
-     , securemem, shakespeare, socks, split, stm, stm-chans, tagsoup
-     , tasty, tasty-hunit, tasty-quickcheck, tasty-rerun
-     , template-haskell, text, time, torrent, transformers, unix
-     , unix-compat, unliftio-core, unordered-containers, utf8-string
-     , uuid, vector, wai, wai-extra, warp, warp-tls, wget, which, yesod
-     , yesod-core, yesod-form, yesod-static
+     , git-lfs, gnupg, hinotify, http-client, http-client-restricted
+     , http-client-tls, http-conduit, http-types, IfElse, lsof, magic
+     , memory, microlens, monad-control, monad-logger, mountpoints, mtl
+     , network, network-bsd, network-info, network-multicast
+     , network-uri, old-locale, openssh, optparse-applicative
+     , path-pieces, perl, persistent, persistent-sqlite
+     , persistent-template, process, QuickCheck, random, regex-tdfa
+     , resourcet, rsync, SafeSemaphore, sandi, securemem, shakespeare
+     , socks, split, stm, stm-chans, tagsoup, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-rerun, template-haskell, text, time
+     , torrent, transformers, unix, unix-compat, unliftio-core
+     , unordered-containers, utf8-string, uuid, vector, wai, wai-extra
+     , warp, warp-tls, wget, which, yesod, yesod-core, yesod-form
+     , yesod-static
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "8.20210330";
-       sha256 = "07dhxlmnj48drgndcplafc7xhby0w3rks68fz9wsppxan929240p";
+       version = "8.20210428";
+       sha256 = "0xpvhpnl600874sa392wjfd2yd9s6ps2cq2qfkzyxxf90p9fcwg8";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
          "-fnetworkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
@@ -105352,8 +104346,8 @@ self: {
        isExecutable = true;
        setupHaskellDepends = [
          async base bytestring Cabal data-default directory exceptions
-         filepath filepath-bytestring hslogger IfElse process split
-         transformers unix-compat utf8-string
+         filepath filepath-bytestring IfElse process split time transformers
+         unix-compat utf8-string
        ];
        executableHaskellDepends = [
          aeson async attoparsec aws base blaze-builder bloomfilter byteable
@@ -105361,17 +104355,17 @@ self: {
          connection containers crypto-api cryptonite data-default DAV dbus
          deepseq directory disk-free-space dlist edit-distance exceptions
          fdo-notify feed filepath filepath-bytestring free git-lfs hinotify
-         hslogger http-client http-client-restricted http-client-tls
-         http-conduit http-types IfElse magic memory microlens monad-control
-         monad-logger mountpoints mtl network network-bsd network-info
-         network-multicast network-uri old-locale optparse-applicative
-         path-pieces persistent persistent-sqlite persistent-template
-         process QuickCheck random regex-tdfa resourcet SafeSemaphore sandi
-         securemem shakespeare socks split stm stm-chans tagsoup tasty
-         tasty-hunit tasty-quickcheck tasty-rerun template-haskell text time
-         torrent transformers unix unix-compat unliftio-core
-         unordered-containers utf8-string uuid vector wai wai-extra warp
-         warp-tls yesod yesod-core yesod-form yesod-static
+         http-client http-client-restricted http-client-tls http-conduit
+         http-types IfElse magic memory microlens monad-control monad-logger
+         mountpoints mtl network network-bsd network-info network-multicast
+         network-uri old-locale optparse-applicative path-pieces persistent
+         persistent-sqlite persistent-template process QuickCheck random
+         regex-tdfa resourcet SafeSemaphore sandi securemem shakespeare
+         socks split stm stm-chans tagsoup tasty tasty-hunit
+         tasty-quickcheck tasty-rerun template-haskell text time torrent
+         transformers unix unix-compat unliftio-core unordered-containers
+         utf8-string uuid vector wai wai-extra warp warp-tls yesod
+         yesod-core yesod-form yesod-static
        ];
        executableSystemDepends = [
          bup curl git gnupg lsof openssh perl rsync wget which
@@ -105398,8 +104392,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-brunch";
-       version = "1.4.4.0";
-       sha256 = "0kj22hx2ibidrnx19wb8kh6vyv4v0b5im616bywwhjqzspjqppmi";
+       version = "1.5.1.0";
+       sha256 = "057xsm5jzzrmivfxd40abph63lyy0q7pmfs2wvadlkhyhcb8nvgv";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -105534,7 +104528,6 @@ self: {
        description = "Custom git command for formatting code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "git-freq" = callPackage
@@ -105578,7 +104571,6 @@ self: {
        description = "More intelligent push-to-GitHub utility";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "git-jump" = callPackage
@@ -105651,8 +104643,6 @@ self: {
        ];
        description = "Passively snapshots working tree changes efficiently";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "git-object" = callPackage
@@ -105670,7 +104660,6 @@ self: {
        description = "Git object and its parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "git-remote-ipfs" = callPackage
@@ -105703,7 +104692,6 @@ self: {
        description = "Git remote helper to store git objects on IPFS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "git-repair" = callPackage
@@ -106099,7 +105087,6 @@ self: {
        description = "GitHub WebHook Handler implementation for Snap";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "github-webhooks" = callPackage
@@ -106259,8 +105246,6 @@ self: {
        ];
        description = "API library for working with Git repositories";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-cmdline" = callPackage
@@ -106308,7 +105293,6 @@ self: {
        description = "Run tests between repositories";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-libgit2" = callPackage
@@ -106335,8 +105319,6 @@ self: {
        ];
        description = "Libgit2 backend for gitlib";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-s3" = callPackage
@@ -106367,7 +105349,6 @@ self: {
        description = "Gitlib repository backend for storing Git objects in Amazon S3";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-sample" = callPackage
@@ -106381,8 +105362,6 @@ self: {
        ];
        description = "Sample backend for gitlib showing the basic structure for any backend";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-test" = callPackage
@@ -106401,8 +105380,6 @@ self: {
        ];
        description = "Test library for confirming gitlib backend compliance";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gitlib-utils" = callPackage
@@ -106510,7 +105487,6 @@ self: {
        description = "CLI Giphy search tool with previews in iTerm 2";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gjk" = callPackage
@@ -106582,8 +105558,8 @@ self: {
      }:
      mkDerivation {
        pname = "glabrous";
-       version = "2.0.3";
-       sha256 = "06bpazshc07rg1w06sl171k12mry708512hrdckqw7winwfrwwkh";
+       version = "2.0.4";
+       sha256 = "0rzfs09njlll144l05s77hs9pm9mmnb8h705xlyr5yavllkv1ypk";
        libraryHaskellDepends = [
          aeson aeson-pretty attoparsec base bytestring cereal cereal-text
          either text unordered-containers
@@ -106623,7 +105599,6 @@ self: {
        description = "Automagically declares getters for widget handles in specified interface file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glambda" = callPackage
@@ -106712,7 +105687,6 @@ self: {
        description = "Extensible effects using ContT, State and variants";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glazier-pipes" = callPackage
@@ -106729,7 +105703,6 @@ self: {
        description = "A threaded rendering framework using glaizer and pipes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glazier-react" = callPackage
@@ -106750,7 +105723,6 @@ self: {
        description = "ReactJS binding using Glazier.Command.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glazier-react-examples" = callPackage
@@ -106776,7 +105748,6 @@ self: {
        description = "Examples of using glazier-react";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glazier-react-widget" = callPackage
@@ -106797,7 +105768,6 @@ self: {
        description = "Generic widget library using glazier-react";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gli" = callPackage
@@ -106970,7 +105940,6 @@ self: {
        description = "Library enabling unique top-level declarations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "global-config" = callPackage
@@ -106992,7 +105961,6 @@ self: {
        description = "Global mutable configuration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "global-lock" = callPackage
@@ -107041,7 +106009,6 @@ self: {
        description = "ray tracer";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gloss" = callPackage
@@ -107110,7 +106077,6 @@ self: {
        description = "Display images in Gloss using libdevil for decoding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gloss-examples" = callPackage
@@ -107131,7 +106097,6 @@ self: {
        description = "Examples using the gloss library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gloss-export" = callPackage
@@ -107245,7 +106210,6 @@ self: {
        description = "A Sodium interface to the Gloss drawing package";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "glpk-headers" = callPackage
@@ -107284,8 +106248,6 @@ self: {
        ];
        description = "Comprehensive GLPK linear programming bindings";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) glpk;};
 
   "glsl" = callPackage
@@ -107484,7 +106446,6 @@ self: {
        description = "Composable maps and generic tries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gmndl" = callPackage
@@ -107504,7 +106465,6 @@ self: {
        description = "Mandelbrot Set explorer using GTK";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gmpint" = callPackage
@@ -107533,7 +106493,6 @@ self: {
        description = "Randomly set a picture as the GNOME desktop background";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gnome-keyring" = callPackage
@@ -107550,7 +106509,10 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "Bindings for libgnome-keyring";
        license = lib.licenses.gpl3Only;
-     }) {inherit (pkgs.gnome3) gnome-keyring; 
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+     }) {inherit (pkgs.gnome) gnome-keyring; 
          inherit (pkgs) libgnome-keyring;};
 
   "gnomevfs" = callPackage
@@ -107569,7 +106531,6 @@ self: {
        description = "Binding to the GNOME Virtual File System library";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {gnome-vfs = null; gnome-vfs_module = null;};
 
   "gnss-converters" = callPackage
@@ -107598,7 +106559,6 @@ self: {
        description = "GNSS Converters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gnuidn" = callPackage
@@ -107622,7 +106582,6 @@ self: {
        description = "Bindings for GNU IDN";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libidn;};
 
   "gnuplot" = callPackage
@@ -107710,7 +106669,6 @@ self: {
        description = "Scientific computing on geometric objects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "goal-probability" = callPackage
@@ -107731,7 +106689,6 @@ self: {
        description = "Manifolds of probability distributions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "goal-simulation" = callPackage
@@ -107756,7 +106713,6 @@ self: {
        description = "Mealy based simulation tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "goat" = callPackage
@@ -107791,8 +106747,6 @@ self: {
        testHaskellDepends = [ base containers HUnit mtl parsec ];
        description = "A monadic take on a 2,500-year-old board game - library";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "goatee-gtk" = callPackage
@@ -107813,8 +106767,6 @@ self: {
        testHaskellDepends = [ base HUnit ];
        description = "A monadic take on a 2,500-year-old board game - GTK+ UI";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gochan" = callPackage
@@ -110137,25 +109089,21 @@ self: {
   "goldplate" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, async, base, bytestring, Diff
      , directory, filepath, Glob, optparse-applicative, process
-     , regex-pcre-builtin, text, time, unordered-containers
+     , regex-pcre-builtin, text, unordered-containers
      }:
      mkDerivation {
        pname = "goldplate";
-       version = "0.1.3";
-       sha256 = "109qhyq0n4w1jdz7y2hd8cjf44pikavv6mfnmf65vyfjangjq610";
-       revision = "1";
-       editedCabalFile = "1chrg7mfs4w4hbc0i1pdsj1350c4h3dhcv7xswn2ygq78337xxqk";
+       version = "0.2.0";
+       sha256 = "1f2n981676ykrv08fgdj87mj5r4841a18ywvgpc2hgapsgwbgma1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          aeson aeson-pretty async base bytestring Diff directory filepath
-         Glob optparse-applicative process regex-pcre-builtin text time
+         Glob optparse-applicative process regex-pcre-builtin text
          unordered-containers
        ];
        description = "A lightweight golden test runner";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gooey" = callPackage
@@ -110225,7 +109173,6 @@ self: {
        description = "Google Drive API access";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-html5-slide" = callPackage
@@ -110277,7 +109224,6 @@ self: {
        description = "Write GMail filters and output to importable XML";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-maps-geocoding" = callPackage
@@ -110295,7 +109241,6 @@ self: {
        description = "Bindings to the Google Geocoding API (formerly Maps Geocoding API)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-oauth2" = callPackage
@@ -110371,8 +109316,6 @@ self: {
        ];
        description = "Get a signed JWT for Google Service Accounts";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-search" = callPackage
@@ -110409,8 +109352,6 @@ self: {
        ];
        description = "Google APIs for server to server applications";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-static-maps" = callPackage
@@ -110431,7 +109372,6 @@ self: {
        description = "Bindings to the Google Maps Static API (formerly Static Maps API)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "google-translate" = callPackage
@@ -110468,7 +109408,6 @@ self: {
        description = "Haskell implementation of the Google+ API v1";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "googlepolyline" = callPackage
@@ -110597,7 +109536,6 @@ self: {
        description = "Gore&Ash engine extension that implements actor style of programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-async" = callPackage
@@ -110621,7 +109559,6 @@ self: {
        description = "Core module for Gore&Ash engine that embeds async IO actions into game loop";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-demo" = callPackage
@@ -110648,7 +109585,6 @@ self: {
        description = "Demonstration game for Gore&Ash game engine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-glfw" = callPackage
@@ -110666,7 +109602,6 @@ self: {
        description = "Core module for Gore&Ash engine for GLFW input events";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-lambdacube" = callPackage
@@ -110687,7 +109622,6 @@ self: {
        description = "Core module for Gore&Ash engine that do something";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-logging" = callPackage
@@ -110707,7 +109641,6 @@ self: {
        description = "Core module for gore-and-ash with logging utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-network" = callPackage
@@ -110730,7 +109663,6 @@ self: {
        description = "Core module for Gore&Ash engine with low level network API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-sdl" = callPackage
@@ -110750,7 +109682,6 @@ self: {
        description = "Gore&Ash core module for integration with SDL library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gore-and-ash-sync" = callPackage
@@ -110771,7 +109702,6 @@ self: {
        description = "Gore&Ash module for high level network synchronization";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gothic" = callPackage
@@ -110896,7 +109826,6 @@ self: {
        description = "For manipulating GPS coordinates and trails";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gps2htmlReport" = callPackage
@@ -110918,7 +109847,6 @@ self: {
        description = "GPS to HTML Summary Report";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gpx-conduit" = callPackage
@@ -110943,8 +109871,8 @@ self: {
     ({ mkDerivation, base, criterion, hedgehog }:
      mkDerivation {
        pname = "grab";
-       version = "0.0.0.4";
-       sha256 = "0yanm9ak2sw266wn9lllz086g53sra7xfncpql6403d2lj3j1jj4";
+       version = "0.0.0.6";
+       sha256 = "0fhindbl5ygfncbww0wqbq4bkjr9q6v0f12f0rzblz71wapshnni";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hedgehog ];
        benchmarkHaskellDepends = [ base criterion ];
@@ -110958,14 +109886,13 @@ self: {
     ({ mkDerivation, base, containers, grab, hedgehog, text }:
      mkDerivation {
        pname = "grab-form";
-       version = "0.0.0.4";
-       sha256 = "0ch8c0kfjky9s1ilrxyr27jhmvynrp61imb188rc3fv7yfr0b5n5";
+       version = "0.0.0.6";
+       sha256 = "18gk6p6fxvsiihlr6amvlqf9s7i4v0wi7vzpfjkc580zzvxd9c8n";
        libraryHaskellDepends = [ base containers grab text ];
        testHaskellDepends = [ base containers hedgehog text ];
        description = "Applicative parsers for form parameter lists";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graceful" = callPackage
@@ -111023,7 +109950,6 @@ self: {
        description = "Monadic correlated log events";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grakn" = callPackage
@@ -111067,7 +109993,6 @@ self: {
        description = "A parsing library of context-free grammar combinators";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grammatical-parsers" = callPackage
@@ -111103,8 +110028,6 @@ self: {
        ];
        description = "parsers that combine into grammars";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grapefruit-examples" = callPackage
@@ -111122,7 +110045,6 @@ self: {
        description = "Examples using the Grapefruit library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grapefruit-frp" = callPackage
@@ -111154,7 +110076,6 @@ self: {
        description = "A record system for Functional Reactive Programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grapefruit-ui" = callPackage
@@ -111174,7 +110095,6 @@ self: {
        description = "Declarative user interface programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grapefruit-ui-gtk" = callPackage
@@ -111195,7 +110115,6 @@ self: {
        description = "GTK+-based backend for declarative user interface programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph" = callPackage
@@ -111230,8 +110149,6 @@ self: {
        ];
        description = "Fast, memory efficient and persistent graph implementation";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-generators" = callPackage
@@ -111304,7 +110221,6 @@ self: {
        description = "Interactive graph rewriting system implementing various well-known combinators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-gl" = callPackage
@@ -111322,7 +110238,6 @@ self: {
        description = "OpenGL interface for interactive port graph rewriting";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-lambdascope" = callPackage
@@ -111345,7 +110260,6 @@ self: {
        description = "Lambdascope, an optimal evaluator of the lambda calculus, as an interactive graph-rewriting system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-layout" = callPackage
@@ -111362,7 +110276,6 @@ self: {
        description = "Force-directed node placement intended for incremental graph drawing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-ski" = callPackage
@@ -111383,7 +110296,6 @@ self: {
        description = "Two evalutors of the SKI combinator calculus as interactive graph rewrite systems";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-strategies" = callPackage
@@ -111400,7 +110312,6 @@ self: {
        description = "Evaluation strategies for port-graph rewriting systems";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-trs" = callPackage
@@ -111423,7 +110334,6 @@ self: {
        description = "Evaluate first-order applicative term rewrite systems interactively using graph reduction";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-rewriting-ww" = callPackage
@@ -111445,7 +110355,6 @@ self: {
        description = "Evaluator of the lambda-calculus in an interactive graph rewriting system with explicit sharing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-serialize" = callPackage
@@ -111492,7 +110401,6 @@ self: {
        description = "Graph walk abstraction";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graph-wrapper" = callPackage
@@ -111594,7 +110502,6 @@ self: {
        description = "Classes for renderable objects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphicstools" = callPackage
@@ -111614,7 +110521,6 @@ self: {
        description = "Tools for creating graphical UIs, based on wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphite" = callPackage
@@ -111697,8 +110603,6 @@ self: {
        ];
        description = "Haskell GraphQL implementation";
        license = "MPL-2.0 AND BSD-3-Clause";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphql-api" = callPackage
@@ -111743,6 +110647,8 @@ self: {
        pname = "graphql-client";
        version = "1.1.1";
        sha256 = "1d00ib9c8ps8vv1qgrkjfzrjbgbsdnp1jiz7779bwm76j88vggb4";
+       revision = "3";
+       editedCabalFile = "0pnkq0wxjmfk67ji6wr7b42lsr2gp026cx91ryq146gh4c9gwacv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -111761,7 +110667,6 @@ self: {
        description = "A client for Haskell programs to query a GraphQL API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphql-utils" = callPackage
@@ -111840,7 +110745,6 @@ self: {
        description = "A simple tool to illustrate dependencies between Haskell types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphula" = callPackage
@@ -111852,8 +110756,8 @@ self: {
      }:
      mkDerivation {
        pname = "graphula";
-       version = "2.0.0.4";
-       sha256 = "1jqli2ws2n67cha6qd460h1y5iz688dwi5dn6h0a6jmc03yzgxni";
+       version = "2.0.0.5";
+       sha256 = "1ajpp5c3y93pl7i4b1bkfg8w6075xvbhdx6c4mj1cnz7mq6763a7";
        libraryHaskellDepends = [
          base containers directory generics-eot HUnit mtl persistent
          QuickCheck random semigroups temporary text transformers unliftio
@@ -111868,8 +110772,6 @@ self: {
        testToolDepends = [ markdown-unlit ];
        description = "A declarative library for describing dependencies between data";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "graphula-core" = callPackage
@@ -112069,29 +110971,31 @@ self: {
        description = "A foreign function interface pre-processor library for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "greenclip" = callPackage
     ({ mkDerivation, base, binary, bytestring, directory, exceptions
-     , hashable, libXau, microlens, microlens-mtl, protolude, text, unix
-     , vector, wordexp, X11, xcb, xdmcp, xlibsWrapper
+     , hashable, libXau, libXScrnSaver, microlens, microlens-mtl
+     , protolude, text, tomland, unix, vector, wordexp, X11, xcb, xdmcp
+     , xlibsWrapper
      }:
      mkDerivation {
        pname = "greenclip";
-       version = "3.4.0";
-       sha256 = "0763nnh7k4blkamlswnapwxyqfn1l0g6ibpz7k1w2w2asj7a3q98";
+       version = "4.1.0";
+       sha256 = "1z52ffb3f0iflls3bjlwzpz4w3a904vj67c1zsdyql6j2xpln6n4";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base binary bytestring directory exceptions hashable microlens
-         microlens-mtl protolude text unix vector wordexp X11
+         microlens-mtl protolude text tomland unix vector wordexp X11
+       ];
+       executablePkgconfigDepends = [
+         libXau libXScrnSaver xcb xdmcp xlibsWrapper
        ];
-       executablePkgconfigDepends = [ libXau xcb xdmcp xlibsWrapper ];
        description = "Simple clipboard manager to be integrated with rofi";
        license = lib.licenses.bsd3;
-     }) {inherit (pkgs.xorg) libXau; xcb = null; xdmcp = null; 
-         inherit (pkgs) xlibsWrapper;};
+     }) {inherit (pkgs.xorg) libXScrnSaver; inherit (pkgs.xorg) libXau; 
+         xcb = null; xdmcp = null; inherit (pkgs) xlibsWrapper;};
 
   "greg-client" = callPackage
     ({ mkDerivation, base, binary, bytestring, clock, hostname, network
@@ -112279,7 +111183,6 @@ self: {
        description = "Grid-based prototyping framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gridbounds" = callPackage
@@ -112293,7 +111196,6 @@ self: {
        description = "Collision detection for GridBox";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gridbox" = callPackage
@@ -112343,7 +111245,6 @@ self: {
        description = "Grid-based multimedia engine";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grids" = callPackage
@@ -112626,8 +111527,8 @@ self: {
     ({ mkDerivation, base, containers, groups }:
      mkDerivation {
        pname = "group-theory";
-       version = "0.2.1.0";
-       sha256 = "11cm59l3g831pz0h5qr94rf1g7km4bn0gqrb8ikssf4xwnjxib46";
+       version = "0.2.2";
+       sha256 = "0lbmfsycc8znbzc5vxz2a3kxq2r74xamm6bwr6bpdvka6c8bfzn8";
        libraryHaskellDepends = [ base containers groups ];
        description = "The theory of groups";
        license = lib.licenses.bsd3;
@@ -112714,8 +111615,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "groups";
-       version = "0.5.2";
-       sha256 = "0ghabk9r3pqccwfshy80p460awv0niyfi3nirg5bqnxm923c4njn";
+       version = "0.5.3";
+       sha256 = "0f5c8dg9b74glfw2sdvdcl9c8igs6knz1bayk4gvvzvypsl547nf";
        libraryHaskellDepends = [ base ];
        description = "Groups";
        license = lib.licenses.bsd3;
@@ -112730,8 +111631,6 @@ self: {
        libraryHaskellDepends = [ base generic-data groups ];
        description = "Generically derive Group instances";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grow-vector" = callPackage
@@ -112804,7 +111703,6 @@ self: {
        description = "gRPC client for etcd";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grpc-haskell" = callPackage
@@ -112817,6 +111715,8 @@ self: {
        pname = "grpc-haskell";
        version = "0.1.0";
        sha256 = "1qqa4qn6ql8zvacaikd1a154ib7bah2h96fjfvd3hz6j79bbfqw4";
+       revision = "1";
+       editedCabalFile = "06yi4isj2qcd1nnc2vf6355wbqq33amhvcwg12jh0zbxpywrs45g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -112834,7 +111734,6 @@ self: {
        description = "Haskell implementation of gRPC layered on shared C library";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "grpc-haskell-core" = callPackage
@@ -112845,8 +111744,8 @@ self: {
      }:
      mkDerivation {
        pname = "grpc-haskell-core";
-       version = "0.0.0.0";
-       sha256 = "1pvcdr1jrn94nwhni5992l8mv401150wl8yi519hncs173n2fx88";
+       version = "0.1.0";
+       sha256 = "1djyjlbqsdk64b3ymli4hlh6w0rkl481f9r5m0q56gwpbp5h1zp6";
        libraryHaskellDepends = [
          base bytestring clock containers managed sorted-list stm
          transformers
@@ -112861,7 +111760,6 @@ self: {
        description = "Haskell implementation of gRPC layered on shared C library";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {gpr = null; inherit (pkgs) grpc;};
 
   "gruff" = callPackage
@@ -112884,7 +111782,6 @@ self: {
        description = "fractal explorer GUI using the ruff library";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gruff-examples" = callPackage
@@ -112904,7 +111801,6 @@ self: {
        description = "Mandelbrot Set examples using ruff and gruff";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gsasl" = callPackage
@@ -112951,7 +111847,6 @@ self: {
        description = "scrapes google scholar, provides RSS feed";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gsl-random" = callPackage
@@ -112978,7 +111873,6 @@ self: {
        description = "Instances for using gsl-random with random-fu";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gsmenu" = callPackage
@@ -113044,7 +111938,6 @@ self: {
        description = "Generic implementation of Storable";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gstreamer" = callPackage
@@ -113100,7 +111993,6 @@ self: {
        description = "The General Transit Feed Specification format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gtfs-realtime" = callPackage
@@ -113213,7 +112105,6 @@ self: {
        description = "GTK+ Serialized event";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) gtk2;};
 
   "gtk-simple-list-view" = callPackage
@@ -113237,8 +112128,8 @@ self: {
      }:
      mkDerivation {
        pname = "gtk-sni-tray";
-       version = "0.1.6.0";
-       sha256 = "0i8k6jk6jq97cahlgbj8acqdqw4zkh0cyy8i6clznbknl02qqp2i";
+       version = "0.1.6.2";
+       sha256 = "1rcw57d5f0298y40ajmb2664ryrqsmcwbr2y1pk0sl2ggwr1zzsl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -113255,6 +112146,9 @@ self: {
        ];
        description = "A standalone StatusNotifierItem/AppIndicator tray";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) gtk3;};
 
   "gtk-strut" = callPackage
@@ -113551,7 +112445,6 @@ self: {
        description = "Binding to the GtkImageView library";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) gtkimageview;};
 
   "gtkrsync" = callPackage
@@ -113571,7 +112464,6 @@ self: {
        description = "Gnome rsync progress display";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gtksourceview2" = callPackage
@@ -113637,7 +112529,6 @@ self: {
        description = "Datatype-generic rewriting with preconditions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "guess-combinator" = callPackage
@@ -113650,7 +112541,6 @@ self: {
        description = "Generate simple combinators given their type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "guid" = callPackage
@@ -113875,7 +112765,6 @@ self: {
        description = "Control your Arduino board from Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hBDD" = callPackage
@@ -113937,8 +112826,6 @@ self: {
        testHaskellDepends = [ base hashable ];
        description = "Conceptual modelling support for Haskell";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hCsound" = callPackage
@@ -114060,7 +112947,6 @@ self: {
        description = "The tool to transform the OFF to other image format";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hOff-parser" = callPackage
@@ -114139,7 +113025,6 @@ self: {
        description = "Protein Databank file format library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hPDB-examples" = callPackage
@@ -114167,7 +113052,6 @@ self: {
        description = "Examples for hPDB library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hPushover" = callPackage
@@ -114369,7 +113253,6 @@ self: {
        description = "Haskell message bot framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hable" = callPackage
@@ -114406,7 +113289,6 @@ self: {
        description = "A minimalist static blog generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hablog" = callPackage
@@ -114430,7 +113312,6 @@ self: {
        description = "A blog system";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hacanon-light" = callPackage
@@ -114474,7 +113355,6 @@ self: {
        description = "Hack contrib";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-contrib-press" = callPackage
@@ -114492,7 +113372,6 @@ self: {
        description = "Hack helper that renders Press templates";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-frontend-happstack" = callPackage
@@ -114555,7 +113434,6 @@ self: {
        description = "hack handler implementation using epoll";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-handler-evhttp" = callPackage
@@ -114575,7 +113453,6 @@ self: {
        description = "Hack EvHTTP (libevent) Handler";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {event = null;};
 
   "hack-handler-fastcgi" = callPackage
@@ -114589,7 +113466,6 @@ self: {
        description = "Hack handler direct to fastcgi (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) fcgi;};
 
   "hack-handler-happstack" = callPackage
@@ -114626,7 +113502,6 @@ self: {
        description = "Hyena hack handler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-handler-kibro" = callPackage
@@ -114659,7 +113534,6 @@ self: {
        description = "A simplistic HTTP server handler for Hack. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-middleware-cleanpath" = callPackage
@@ -114674,7 +113548,6 @@ self: {
        description = "Applies some basic redirect rules to get cleaner paths. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-middleware-clientsession" = callPackage
@@ -114691,7 +113564,6 @@ self: {
        description = "Middleware for easily keeping session data in client cookies. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack-middleware-gzip" = callPackage
@@ -114719,7 +113591,6 @@ self: {
        description = "Automatic wrapping of JSON responses to convert into JSONP. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack2" = callPackage
@@ -114783,7 +113654,6 @@ self: {
        description = "Hack2 Happstack server handler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack2-handler-mongrel2-http" = callPackage
@@ -114805,7 +113675,6 @@ self: {
        description = "Hack2 Mongrel2 HTTP handler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack2-handler-snap-server" = callPackage
@@ -114825,7 +113694,6 @@ self: {
        description = "Hack2 Snap server handler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hack2-handler-warp" = callPackage
@@ -114888,10 +113756,8 @@ self: {
      }:
      mkDerivation {
        pname = "hackage-db";
-       version = "2.1.0";
-       sha256 = "1vsc0lrbrb525frycqq0c5z846whymgcjl888gnlqd16nknbsn3l";
-       revision = "1";
-       editedCabalFile = "1h3x5a8xmqkkcd3h1m7z0il1vbsh2c77685y68zmyp21zb1y88hy";
+       version = "2.1.1";
+       sha256 = "16y1iqb3y019hjdsq7q3zx51qy834ky3mw5vszqmzzhflqpicd31";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -115120,7 +113986,6 @@ self: {
        description = "The Hackage web server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hackage-sparks" = callPackage
@@ -115188,7 +114053,6 @@ self: {
        description = "Send new Hackage releases to Twitter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hackager" = callPackage
@@ -115271,7 +114135,6 @@ self: {
        description = "Generate useful files for Haskell projects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hackport" = callPackage
@@ -115357,7 +114220,6 @@ self: {
        description = "A documentation-generation tool for Haskell libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haddock" = callPackage
@@ -115375,7 +114237,6 @@ self: {
        description = "A documentation-generation tool for Haskell libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haddock-api_2_23_1" = callPackage
@@ -115568,7 +114429,6 @@ self: {
        description = "Generate docset of Dash by Haddock haskell documentation tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hadolint" = callPackage
@@ -115581,8 +114441,8 @@ self: {
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "2.3.0";
-       sha256 = "03cz3inkkqbdnwwvsf7dhclp9svi8c0lpjmcp81ff9vxr1v6x73x";
+       version = "2.4.1";
+       sha256 = "166jpi6bzq2j6ss652225byn6pdz8ya71fxdndlmqgsram2hrlyn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -115684,7 +114544,6 @@ self: {
        description = "Fast command line tools for working with Hadoop";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haeredes" = callPackage
@@ -115744,7 +114603,6 @@ self: {
        description = "A static site generator with blogging/comments support";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haggle" = callPackage
@@ -115754,8 +114612,8 @@ self: {
      }:
      mkDerivation {
        pname = "haggle";
-       version = "0.1.0.0";
-       sha256 = "0fpbmllp0p23c258gam7xm0dvwphw0zpmydmg9ygl4yl1kiav470";
+       version = "0.1.0.1";
+       sha256 = "1j598hcjw0p9iac4h91w47k4rh9k0h2r9gk3rrfkklvw84aznkrz";
        libraryHaskellDepends = [
          base containers deepseq hashable monad-primitive primitive ref-tf
          vector
@@ -115955,7 +114813,6 @@ self: {
        description = "Dynamic launcher of Hails applications";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hairy" = callPackage
@@ -116117,8 +114974,7 @@ self: {
        testToolDepends = [ utillinux ];
        description = "A static website compiler library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ erictapen ];
      }) {inherit (pkgs) utillinux;};
 
   "hakyll-R" = callPackage
@@ -116151,8 +115007,6 @@ self: {
        ];
        description = "Wrapper to integrate literate Agda files with Hakyll";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-alectryon" = callPackage
@@ -116169,8 +115023,6 @@ self: {
        ];
        description = "Hakyll extension for rendering Coq code using Alectryon";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-blaze-templates" = callPackage
@@ -116250,8 +115102,7 @@ self: {
        libraryHaskellDepends = [ base hakyll hyphenation split tagsoup ];
        description = "automatic hyphenation for Hakyll";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ erictapen ];
      }) {};
 
   "hakyll-contrib-i18n" = callPackage
@@ -116379,7 +115230,6 @@ self: {
        description = "Hakyll wrapper for the Elm compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-favicon" = callPackage
@@ -116394,8 +115244,6 @@ self: {
        executableHaskellDepends = [ base hakyll ];
        testHaskellDepends = [ base ];
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-filestore" = callPackage
@@ -116410,8 +115258,6 @@ self: {
        ];
        description = "FileStore utilities for Hakyll";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-images" = callPackage
@@ -116433,8 +115279,6 @@ self: {
        ];
        description = "Hakyll utilities to work with images";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-ogmarkup" = callPackage
@@ -116447,7 +115291,6 @@ self: {
        description = "Integrate ogmarkup document with Hakyll";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-process" = callPackage
@@ -116476,8 +115319,6 @@ self: {
        ];
        description = "Hakyll SASS compiler over hsass";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-series" = callPackage
@@ -116508,8 +115349,6 @@ self: {
        ];
        description = "Hakyll Hamlet compiler";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-shortcode" = callPackage
@@ -116568,33 +115407,33 @@ self: {
        description = "Typescript and javascript hakyll compilers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hal" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , case-insensitive, conduit, conduit-extra, containers, envy
-     , exceptions, hspec, http-client, http-types, mtl, text, time
-     , unordered-containers
+     , exceptions, hashable, hedgehog, hspec, hspec-hedgehog
+     , http-client, http-types, mtl, scientific, text, time
+     , transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "hal";
-       version = "0.4.7";
-       sha256 = "1bf2d4djbw8gpkcgrvjm52hsyw8hv20rsk0qdxfi8aml6mp152k5";
+       version = "0.4.8";
+       sha256 = "1j3prf81ni5v003byl992dxvvkv8prgmsqmnpkwpd0365ilxyv2y";
        revision = "1";
-       editedCabalFile = "19hic5cgxyk2nz8nnrz091hv79al49q7ah9pv9d7fwagjzi027ch";
+       editedCabalFile = "0jz54lz3wd05b2vabwlid31pyhvjrwbdr35nbqb9kdf13jfdgahr";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring case-insensitive conduit
-         conduit-extra containers envy exceptions http-client http-types mtl
-         text time unordered-containers
+         conduit-extra containers envy exceptions hashable http-client
+         http-types mtl text time unordered-containers
        ];
        testHaskellDepends = [
-         aeson base containers hspec http-client http-types time
+         aeson base base64-bytestring bytestring case-insensitive containers
+         hedgehog hspec hspec-hedgehog http-client http-types scientific
+         text time transformers unordered-containers vector
        ];
        description = "A runtime environment for Haskell applications running on AWS Lambda";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "halberd" = callPackage
@@ -116624,7 +115463,6 @@ self: {
        description = "A tool to generate missing import statements for Haskell modules";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "half" = callPackage
@@ -116730,7 +115568,6 @@ self: {
        description = "Symmetry operations generater of Hall Symbols";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "halma" = callPackage
@@ -116740,8 +115577,8 @@ self: {
      }:
      mkDerivation {
        pname = "halma";
-       version = "0.3.0.1";
-       sha256 = "1bmc7s4vl1k2i66q1ir6mkzn67j5gycshkkwp4d2v1dd86sswf28";
+       version = "0.3.0.2";
+       sha256 = "1fs2095hp8m5k0iq0ilhxc6qmlasdygx9wjdb6288jssdjbvvpyq";
        libraryHaskellDepends = [
          aeson base containers data-default diagrams-lib grid
        ];
@@ -116772,7 +115609,6 @@ self: {
        description = "GTK application for playing Halma";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "halma-telegram-bot" = callPackage
@@ -116798,7 +115634,6 @@ self: {
        description = "Telegram bot for playing Halma";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haltavista" = callPackage
@@ -116873,7 +115708,6 @@ self: {
        testHaskellDepends = [ base bytestring ];
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hamid" = callPackage
@@ -117023,7 +115857,6 @@ self: {
        description = "Library to handle abstract music";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "han2zen" = callPackage
@@ -117260,7 +116093,6 @@ self: {
        description = "Driver for real ethernet devices for HaNS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hans-pfq" = callPackage
@@ -117357,6 +116189,40 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "A deployment library for Haskell applications";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "hapistrano_0_4_1_4" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, async, base, directory
+     , filepath, formatting, gitrev, hspec, hspec-discover, mtl
+     , optparse-applicative, path, path-io, process, QuickCheck
+     , silently, stm, temporary, time, transformers, typed-process, yaml
+     }:
+     mkDerivation {
+       pname = "hapistrano";
+       version = "0.4.1.4";
+       sha256 = "1ci2q3vkjw51k5hbswmcajk7gl1zpmwx3npbkf3kng3j1kcv0bzw";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base filepath gitrev mtl path process stm time
+         transformers typed-process yaml
+       ];
+       executableHaskellDepends = [
+         aeson async base formatting gitrev optparse-applicative path
+         path-io stm yaml
+       ];
+       testHaskellDepends = [
+         base directory filepath hspec mtl path path-io process QuickCheck
+         silently temporary yaml
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "A deployment library for Haskell applications";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "happindicator" = callPackage
@@ -117434,7 +116300,6 @@ self: {
        description = "The \"Haskell Applets\" Gtk+ ver. 2 back-end for \"happlets\".";
        license = "AGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happraise" = callPackage
@@ -117464,7 +116329,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happs-hsp-template" = callPackage
@@ -117482,7 +116346,6 @@ self: {
        description = "Utilities for using HSP templates in HAppS applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happs-tutorial" = callPackage
@@ -117508,7 +116371,6 @@ self: {
        description = "A Happstack Tutorial that is its own web 2.0-type demo.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack" = callPackage
@@ -117544,7 +116406,6 @@ self: {
        description = "A Happstack Authentication Suite";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-authenticate" = callPackage
@@ -117575,7 +116436,6 @@ self: {
        description = "Happstack Authentication Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-clientsession" = callPackage
@@ -117613,7 +116473,6 @@ self: {
        description = "Web related tools and services";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-data" = callPackage
@@ -117636,7 +116495,6 @@ self: {
        description = "Happstack data manipulation libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-dlg" = callPackage
@@ -117655,7 +116513,6 @@ self: {
        description = "Cross-request user interactions for Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-facebook" = callPackage
@@ -117682,7 +116539,6 @@ self: {
        description = "A package for building Facebook applications using Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-fastcgi" = callPackage
@@ -117715,7 +116571,6 @@ self: {
        description = "Support for using Fay with Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-fay-ajax" = callPackage
@@ -117807,7 +116662,6 @@ self: {
        description = "Convenience functions for Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-hsp" = callPackage
@@ -117860,7 +116714,6 @@ self: {
        description = "Efficient relational queries on Haskell sets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-jmacro" = callPackage
@@ -117879,7 +116732,6 @@ self: {
        description = "Support for using JMacro with Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-lite" = callPackage
@@ -117928,7 +116780,6 @@ self: {
        description = "The haskell application server stack + reload";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-server" = callPackage
@@ -117942,8 +116793,8 @@ self: {
      }:
      mkDerivation {
        pname = "happstack-server";
-       version = "7.7.0";
-       sha256 = "0jyjnksgwvasnhwwn8scqms1kja4hzlbpn0lmyr6yng5n4989d0x";
+       version = "7.7.1";
+       sha256 = "1zxdv7nihw3kjq2fvw5cl3s27pwm5gkli3sl15iqxfm7mdxz8rm0";
        libraryHaskellDepends = [
          base base64-bytestring blaze-html bytestring containers directory
          exceptions extensible-exceptions filepath hslogger html
@@ -118015,7 +116866,6 @@ self: {
        description = "Event-based distributed state";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happstack-static-routing" = callPackage
@@ -118078,7 +116928,6 @@ self: {
        description = "Utilities for using YUI3 with Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happy_1_19_9" = callPackage
@@ -118201,7 +117050,6 @@ self: {
        description = "WebKit Happybara driver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "happybara-webkit-server" = callPackage
@@ -118274,7 +117122,6 @@ self: {
        description = "A Haskell implementation of the Quil instruction set for quantum computing";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "har" = callPackage
@@ -118327,7 +117174,6 @@ self: {
        description = "Deep embedding of hardware descriptions with code generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "harg" = callPackage
@@ -118346,7 +117192,6 @@ self: {
        description = "Haskell program configuration using higher kinded data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hark" = callPackage
@@ -118366,7 +117211,6 @@ self: {
        description = "A Gentoo package query tool";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "harmony" = callPackage
@@ -118393,7 +117237,6 @@ self: {
        description = "A web service specification compiler that generates implementation and tests";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haroonga" = callPackage
@@ -118431,7 +117274,6 @@ self: {
        description = "Yet another Groonga http server";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "harp" = callPackage
@@ -118510,7 +117352,6 @@ self: {
        description = "Template Haskell function for Has records";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasbolt" = callPackage
@@ -118520,10 +117361,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasbolt";
-       version = "0.1.4.4";
-       sha256 = "0kk1lamyms1mf8d290c3asnvgk51i8sqj810whms2a5346w9n4ll";
-       revision = "1";
-       editedCabalFile = "1bnbhq6k2af08riyaplfgm2lzghhi3nc0ijiw0yk1y5pq618zhxy";
+       version = "0.1.5.0";
+       sha256 = "0q0nd8d22knf6b1xwqz3gxmpymbvlx1p20hyahd5qr1yhjgpch0b";
        libraryHaskellDepends = [
          base binary bytestring connection containers data-binary-ieee754
          data-default mtl network text
@@ -118533,8 +117372,6 @@ self: {
        ];
        description = "Haskell driver for Neo4j 3+ (BOLT protocol)";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasbolt-extras" = callPackage
@@ -118545,8 +117382,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasbolt-extras";
-       version = "0.0.1.6";
-       sha256 = "0il6752lvq0li29aipc66syc7kd9h57439akshlpqpd25b536zd9";
+       version = "0.0.1.7";
+       sha256 = "1dnia4da5g9c8ckiap4wsacv6lccr69ai24i3n6mywdykhy159f1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -118614,8 +117451,8 @@ self: {
      }:
      mkDerivation {
        pname = "hascard";
-       version = "0.5.0.1";
-       sha256 = "08j3bi6a04pkkf99ghw2h7z1bdisby0d3hyqv559a1pxwpbi7k22";
+       version = "0.5.0.2";
+       sha256 = "1sh4903x05fwci7nmlqd0f2wjjs5b9bqckmgrkjpnawcnsbby1ds";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -118822,15 +117659,15 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "hashable_1_3_1_0" = callPackage
+  "hashable_1_3_2_0" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, ghc-prim, HUnit
      , integer-gmp, QuickCheck, random, test-framework
      , test-framework-hunit, test-framework-quickcheck2, text, unix
      }:
      mkDerivation {
        pname = "hashable";
-       version = "1.3.1.0";
-       sha256 = "1i57iibad5gjk88yq1svi35mjcbgjmms7jzd28wva8f598x84qc0";
+       version = "1.3.2.0";
+       sha256 = "0dyn343wdwbm1facpcjiyd8w0s0hk23jqh7mbj108az5dx5rdgar";
        libraryHaskellDepends = [
          base bytestring deepseq ghc-prim integer-gmp text
        ];
@@ -118917,11 +117754,26 @@ self: {
        pname = "hashable-time";
        version = "0.2.1";
        sha256 = "1zw2gqagpbwq1hgx5rlvy6mhsnb15cxg3pmhawwv0ylfihmx2yxh";
+       revision = "1";
+       editedCabalFile = "151gxiprdlj3masa95vvrxal9nwa72n3p1y15xyj4hp7mvvl4s2l";
        libraryHaskellDepends = [ base hashable time time-compat ];
        description = "Hashable instances for Data.Time";
        license = lib.licenses.bsd3;
      }) {};
 
+  "hashable-time_0_3" = callPackage
+    ({ mkDerivation, base, hashable, time-compat }:
+     mkDerivation {
+       pname = "hashable-time";
+       version = "0.3";
+       sha256 = "15zv0pgxp7rgd6v7skhyxgyf2sd8gr1br12bpd17r650yscw9fij";
+       libraryHaskellDepends = [ base time-compat ];
+       testHaskellDepends = [ base hashable time-compat ];
+       description = "Hashable instances for Data.Time";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hashabler" = callPackage
     ({ mkDerivation, array, base, bytestring, ghc-prim, integer-gmp
      , primitive, template-haskell, text
@@ -118974,7 +117826,6 @@ self: {
        description = "A library for working with HashFlare.io contracts and hashrates";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hashids" = callPackage
@@ -119190,7 +118041,6 @@ self: {
        description = "Generate homepages for cabal packages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskades" = callPackage
@@ -119271,7 +118121,6 @@ self: {
        description = "A dialect of haskell with order of execution based on dependency resolution";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskbot-core" = callPackage
@@ -119319,7 +118168,6 @@ self: {
        description = "Computes and audits file hashes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskdogs" = callPackage
@@ -119357,7 +118205,6 @@ self: {
        description = "A small scheme interpreter";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskeline_0_8_1_2" = callPackage
@@ -119447,7 +118294,6 @@ self: {
        description = "Haskell Application BlockChain Interface (ABCI) Server Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-aliyun" = callPackage
@@ -119471,7 +118317,6 @@ self: {
        description = "haskell client of aliyun service";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-awk" = callPackage
@@ -119484,10 +118329,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-awk";
-       version = "1.2";
-       sha256 = "14jfw5s3xw7amwasw37mxfinzwvxd6pr64iypmy65z7bkx3l01cj";
-       revision = "1";
-       editedCabalFile = "1d6smaalvf66h0d9d1vq9q8ldxcvg11m05wg70cbsq3s2vh6iz4p";
+       version = "1.2.0.1";
+       sha256 = "1r4hsvzbqagk06fc81cr1awfz0zqgs4hmbwl99mip47z578wrw9l";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -119495,15 +118338,15 @@ self: {
          base bytestring containers ghc list-t stringsearch
        ];
        executableHaskellDepends = [
-         base bytestring containers directory exceptions extra filelock
-         filepath ghc haskell-src-exts hint list-t mtl process stringsearch
-         template-haskell time transformers
+         base bytestring containers directory extra filelock filepath ghc
+         haskell-src-exts hint list-t mtl process template-haskell
+         transformers
        ];
        testHaskellDepends = [
          aeson attoparsec base bytestring containers directory doctest
          easy-file exceptions extra filelock filepath ghc haskell-src-exts
-         hint hspec HUnit list-t mtl process stringsearch template-haskell
-         temporary test-framework test-framework-hunit time transformers
+         hint hspec HUnit list-t mtl process template-haskell temporary
+         test-framework test-framework-hunit time transformers
        ];
        description = "Transform text from the command-line using Haskell expressions";
        license = lib.licenses.asl20;
@@ -119548,7 +118391,6 @@ self: {
        description = "Complete BitMEX Client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-bitmex-rest" = callPackage
@@ -119633,8 +118475,7 @@ self: {
        doHaddock = false;
        description = "Cabal package script generator for Travis-CI";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "haskell-cnc" = callPackage
@@ -119767,8 +118608,6 @@ self: {
        ];
        description = "Haskell Debug Adapter";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-disque" = callPackage
@@ -119810,7 +118649,6 @@ self: {
        description = "A program to find and display the docs and type of a name";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-eigen-util" = callPackage
@@ -119824,7 +118662,6 @@ self: {
        description = "Some utility functions for haskell-eigen library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-exp-parser" = callPackage
@@ -119906,7 +118743,6 @@ self: {
        description = "A Haskell ftp server with configurable backend";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-generate" = callPackage
@@ -120155,53 +118991,49 @@ self: {
      }) {};
 
   "haskell-language-server" = callPackage
-    ({ mkDerivation, aeson, async, base, base16-bytestring, binary
-     , blaze-markup, brittany, bytestring, containers, cryptohash-sha1
-     , data-default, deepseq, directory, extra, filepath, floskell
-     , fourmolu, fuzzy, ghc, ghc-boot-th, ghc-paths, ghcide, gitrev
-     , hashable, hie-bios, hiedb, hls-class-plugin, hls-eval-plugin
-     , hls-explicit-imports-plugin, hls-haddock-comments-plugin
-     , hls-hlint-plugin, hls-plugin-api, hls-retrie-plugin
-     , hls-splice-plugin, hls-tactics-plugin, hslogger, hspec
-     , hspec-core, hspec-expectations, lens, lsp, lsp-test, megaparsec
-     , mtl, optparse-applicative, optparse-simple, ormolu, process
-     , regex-tdfa, safe-exceptions, shake, sqlite-simple, stm
-     , stylish-haskell, tasty, tasty-ant-xml, tasty-expected-failure
-     , tasty-golden, tasty-hunit, tasty-rerun, temporary, text
-     , transformers, unordered-containers, with-utf8, yaml
+    ({ mkDerivation, aeson, aeson-pretty, async, base
+     , base16-bytestring, binary, bytestring, containers
+     , cryptohash-sha1, data-default, deepseq, directory, extra
+     , filepath, floskell, fourmolu, fuzzy, ghc, ghc-boot-th, ghc-paths
+     , ghcide, gitrev, hashable, hie-bios, hiedb, hls-brittany-plugin
+     , hls-class-plugin, hls-eval-plugin, hls-explicit-imports-plugin
+     , hls-haddock-comments-plugin, hls-hlint-plugin, hls-plugin-api
+     , hls-retrie-plugin, hls-splice-plugin, hls-stylish-haskell-plugin
+     , hls-tactics-plugin, hls-test-utils, hslogger, hspec-expectations
+     , lens, lsp, lsp-test, lsp-types, mtl, optparse-applicative
+     , optparse-simple, ormolu, process, regex-tdfa, safe-exceptions
+     , shake, sqlite-simple, temporary, text, transformers
+     , unordered-containers
      }:
      mkDerivation {
        pname = "haskell-language-server";
-       version = "1.0.0.0";
-       sha256 = "0jchps7rwsbfq1fsyyf4jgxb4b11d8c3iaq2p4c5vz7vz2d6w1s3";
+       version = "1.1.0.0";
+       sha256 = "0zbr8qr097mjcsbgdkm6a8ala1ifdajmllr8basvrndn28zgi5cg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         async base base16-bytestring bytestring containers cryptohash-sha1
-         data-default directory extra filepath ghc ghcide gitrev hie-bios
-         hiedb hls-plugin-api hslogger lsp optparse-applicative
-         optparse-simple process safe-exceptions shake sqlite-simple text
-         unordered-containers
+         aeson-pretty async base base16-bytestring bytestring containers
+         cryptohash-sha1 data-default directory extra filepath ghc ghcide
+         gitrev hie-bios hiedb hls-plugin-api hslogger lsp
+         optparse-applicative optparse-simple process safe-exceptions shake
+         sqlite-simple text unordered-containers
        ];
        executableHaskellDepends = [
-         aeson async base base16-bytestring binary brittany bytestring
-         containers cryptohash-sha1 data-default deepseq directory extra
-         filepath floskell fourmolu fuzzy ghc ghc-boot-th ghc-paths ghcide
-         gitrev hashable hie-bios hiedb hls-class-plugin hls-eval-plugin
-         hls-explicit-imports-plugin hls-haddock-comments-plugin
-         hls-hlint-plugin hls-plugin-api hls-retrie-plugin hls-splice-plugin
+         aeson async base base16-bytestring binary bytestring containers
+         cryptohash-sha1 data-default deepseq directory extra filepath
+         floskell fourmolu fuzzy ghc ghc-boot-th ghc-paths ghcide gitrev
+         hashable hie-bios hiedb hls-brittany-plugin hls-class-plugin
+         hls-eval-plugin hls-explicit-imports-plugin
+         hls-haddock-comments-plugin hls-hlint-plugin hls-plugin-api
+         hls-retrie-plugin hls-splice-plugin hls-stylish-haskell-plugin
          hls-tactics-plugin hslogger lens lsp mtl optparse-applicative
          optparse-simple ormolu process regex-tdfa safe-exceptions shake
-         sqlite-simple stylish-haskell temporary text transformers
-         unordered-containers with-utf8
+         sqlite-simple temporary text transformers unordered-containers
        ];
        testHaskellDepends = [
-         aeson base blaze-markup bytestring containers data-default deepseq
-         directory extra filepath ghcide hie-bios hls-plugin-api hslogger
-         hspec hspec-core hspec-expectations lens lsp lsp-test megaparsec
-         process stm tasty tasty-ant-xml tasty-expected-failure tasty-golden
-         tasty-hunit tasty-rerun temporary text transformers
-         unordered-containers yaml
+         aeson base bytestring containers data-default directory extra
+         filepath ghcide hls-plugin-api hls-test-utils hspec-expectations
+         lens lsp-test lsp-types process text unordered-containers
        ];
        testToolDepends = [ ghcide ];
        description = "LSP server for GHC";
@@ -120229,35 +119061,6 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-lsp";
-       version = "0.22.0.0";
-       sha256 = "0mh2b3dza633plxp370zhvml50kfx4szk4hrzmcfm6aij2di2l0w";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson async attoparsec base bytestring containers data-default
-         directory filepath hashable haskell-lsp-types hslogger lens mtl
-         network-uri rope-utf16-splay sorted-list stm temporary text time
-         unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers data-default directory filepath
-         hashable hspec lens network-uri QuickCheck quickcheck-instances
-         rope-utf16-splay sorted-list stm text unordered-containers
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Haskell library for the Microsoft Language Server Protocol";
-       license = lib.licenses.mit;
-     }) {};
-
-  "haskell-lsp_0_24_0_0" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, bytestring
-     , containers, data-default, directory, filepath, hashable
-     , haskell-lsp-types, hslogger, hspec, hspec-discover, lens, mtl
-     , network-uri, QuickCheck, quickcheck-instances, rope-utf16-splay
-     , sorted-list, stm, temporary, text, time, unordered-containers
-     }:
-     mkDerivation {
-       pname = "haskell-lsp";
        version = "0.24.0.0";
        sha256 = "0gw289wy91h0qv4filw3glw3rrjvmr5j591wrdiwc1bl3w56bpig";
        isLibrary = true;
@@ -120276,7 +119079,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Haskell library for the Microsoft Language Server Protocol";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "haskell-lsp-client" = callPackage
@@ -120308,23 +119110,6 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-lsp-types";
-       version = "0.22.0.0";
-       sha256 = "05475d5rwkmsh50q18lans7zzd34jhfdpg80m7aijg829dkphskm";
-       libraryHaskellDepends = [
-         aeson base binary bytestring data-default deepseq filepath hashable
-         lens network-uri scientific text unordered-containers
-       ];
-       description = "Haskell library for the Microsoft Language Server Protocol, data types";
-       license = lib.licenses.mit;
-     }) {};
-
-  "haskell-lsp-types_0_24_0_0" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, data-default
-     , deepseq, filepath, hashable, lens, network-uri, scientific, text
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "haskell-lsp-types";
        version = "0.24.0.0";
        sha256 = "1p7k2g2xs95ylsnnz2np0w8c7p5dzmlss41g0kzblaz5n3352kbn";
        libraryHaskellDepends = [
@@ -120333,7 +119118,6 @@ self: {
        ];
        description = "Haskell library for the Microsoft Language Server Protocol, data types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "haskell-menu" = callPackage
@@ -120549,7 +119333,6 @@ self: {
        description = "Tool for presenting PDF-based presentations";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-platform-test" = callPackage
@@ -120579,7 +119362,6 @@ self: {
        description = "A test system for the Haskell Platform environment";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-player" = callPackage
@@ -120722,7 +119504,6 @@ self: {
        description = "Reflect Haskell types";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-rules" = callPackage
@@ -120770,6 +119551,11 @@ self: {
        ];
        description = "Snake game implemetation in Haskell using SDL2";
        license = lib.licenses.gpl3Only;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "haskell-spacegoo" = callPackage
@@ -120836,7 +119622,6 @@ self: {
        description = "Observable orphan instances for haskell-src-exts";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-src-exts-prisms" = callPackage
@@ -120979,8 +119764,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-stack-trace-plugin";
-       version = "0.1.1.1";
-       sha256 = "0mm1nyhlia00vawpwcq6dda0j9d8sgd1ls4xin0s84jplw5z9hwz";
+       version = "0.1.3.0";
+       sha256 = "1vlqf0j88qshqkc1j688x38h4sqdkww5ya4ihaz3fy8l86wwmnvw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ghc ];
@@ -121049,7 +119834,6 @@ self: {
        description = "Utilities to tie up tokens to an AST";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-ast" = callPackage
@@ -121067,7 +119851,6 @@ self: {
        description = "Haskell AST for efficient tooling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-ast-fromghc" = callPackage
@@ -121086,7 +119869,6 @@ self: {
        description = "Creating the Haskell-Tools AST from GHC's representations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-ast-gen" = callPackage
@@ -121104,7 +119886,6 @@ self: {
        description = "Facilities for generating new parts of the Haskell-Tools AST";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-ast-trf" = callPackage
@@ -121121,7 +119902,6 @@ self: {
        description = "Conversions on Haskell-Tools AST to prepare for refactorings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-backend-ghc" = callPackage
@@ -121140,7 +119920,6 @@ self: {
        description = "Creating the Haskell-Tools AST from GHC's representations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-builtin-refactorings" = callPackage
@@ -121173,7 +119952,6 @@ self: {
        description = "Refactoring Tool for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-cli" = callPackage
@@ -121210,7 +119988,6 @@ self: {
        description = "Command-line frontend for Haskell-tools Refact";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-daemon" = callPackage
@@ -121245,7 +120022,6 @@ self: {
        description = "Background process for Haskell-tools that editors can connect to";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-debug" = callPackage
@@ -121271,7 +120047,6 @@ self: {
        description = "Debugging Tools for Haskell-tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-demo" = callPackage
@@ -121303,7 +120078,6 @@ self: {
        description = "A web-based demo for Haskell-tools Refactor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-experimental-refactorings" = callPackage
@@ -121335,7 +120109,6 @@ self: {
        description = "Refactoring Tool for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-prettyprint" = callPackage
@@ -121353,7 +120126,6 @@ self: {
        description = "Pretty printing of Haskell-Tools AST";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-refactor" = callPackage
@@ -121384,7 +120156,6 @@ self: {
        description = "Refactoring Tool for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tools-rewrite" = callPackage
@@ -121407,7 +120178,6 @@ self: {
        description = "Facilities for generating new parts of the Haskell-Tools AST";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-tor" = callPackage
@@ -121442,7 +120212,6 @@ self: {
        description = "A Haskell Tor Node";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-type-exts" = callPackage
@@ -121615,7 +120384,6 @@ self: {
        description = "Bracketed HDBC session for HaskellDB";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-connect-hdbc-catchio-mtl" = callPackage
@@ -121632,7 +120400,6 @@ self: {
        description = "Bracketed HaskellDB HDBC session using MonadCatchIO-mtl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-connect-hdbc-catchio-tf" = callPackage
@@ -121650,7 +120417,6 @@ self: {
        description = "Bracketed HaskellDB HDBC session using MonadCatchIO-transformers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-connect-hdbc-catchio-transformers" = callPackage
@@ -121668,7 +120434,6 @@ self: {
        description = "Bracketed HaskellDB HDBC session using MonadCatchIO-transformers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-connect-hdbc-lifted" = callPackage
@@ -121686,7 +120451,6 @@ self: {
        description = "Bracketed HaskellDB HDBC session using lifted-base";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-dynamic" = callPackage
@@ -121702,7 +120466,6 @@ self: {
        description = "HaskellDB support for the dynamically loaded drivers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-flat" = callPackage
@@ -121721,7 +120484,6 @@ self: {
        description = "An experimental HaskellDB back-end in pure Haskell (no SQL)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hdbc" = callPackage
@@ -121738,7 +120500,6 @@ self: {
        description = "HaskellDB support for HDBC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hdbc-mysql" = callPackage
@@ -121757,7 +120518,6 @@ self: {
        description = "HaskellDB support for the HDBC MySQL driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hdbc-odbc" = callPackage
@@ -121776,7 +120536,6 @@ self: {
        description = "HaskellDB support for the HDBC ODBC driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hdbc-postgresql" = callPackage
@@ -121796,7 +120555,6 @@ self: {
        description = "HaskellDB support for the HDBC PostgreSQL driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) postgresql;};
 
   "haskelldb-hdbc-sqlite3" = callPackage
@@ -121815,7 +120573,6 @@ self: {
        description = "HaskellDB support for the HDBC SQLite driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hsql" = callPackage
@@ -121828,7 +120585,6 @@ self: {
        description = "HaskellDB support for HSQL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hsql-mysql" = callPackage
@@ -121847,7 +120603,6 @@ self: {
        description = "HaskellDB support for the HSQL MySQL driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hsql-odbc" = callPackage
@@ -121866,7 +120621,6 @@ self: {
        description = "HaskellDB support for the HSQL ODBC driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hsql-oracle" = callPackage
@@ -121904,7 +120658,6 @@ self: {
        description = "HaskellDB support for the HSQL PostgreSQL driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-hsql-sqlite" = callPackage
@@ -121942,7 +120695,6 @@ self: {
        description = "HaskellDB support for the HSQL SQLite3 driver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-th" = callPackage
@@ -121955,7 +120707,6 @@ self: {
        description = "Template Haskell utilities for HaskellDB";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelldb-wx" = callPackage
@@ -121983,8 +120734,6 @@ self: {
        ];
        description = "For parsing Haskell-ish languages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskellscrabble" = callPackage
@@ -122062,7 +120811,6 @@ self: {
        description = "Elm to Haskell translation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskelzinc" = callPackage
@@ -122170,7 +120918,6 @@ self: {
        description = "A monad transformer supporting Haskey transactions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskgame" = callPackage
@@ -122183,7 +120930,6 @@ self: {
        description = "Haskell game library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskheap" = callPackage
@@ -122245,6 +120991,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "hasklepias" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, flow, hspec
+     , interval-algebra, QuickCheck, safe, text, time
+     , unordered-containers, vector, witherable
+     }:
+     mkDerivation {
+       pname = "hasklepias";
+       version = "0.7.1";
+       sha256 = "1w6gs3n1g12sw2w72l04l27na3kgmyqsip8d53wpmslqwccr6blc";
+       libraryHaskellDepends = [
+         aeson base bytestring containers flow interval-algebra QuickCheck
+         safe text time unordered-containers vector witherable
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers flow hspec interval-algebra
+         QuickCheck text time unordered-containers vector
+       ];
+       description = "Define features from events";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "haskmon" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, http-streams
      , io-streams, time, vector
@@ -122306,7 +121075,6 @@ self: {
        description = "An adapter for haskoin to network-bitcoin";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-core" = callPackage
@@ -122319,8 +121087,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-core";
-       version = "0.20.0";
-       sha256 = "10pdpg75r2gch32p3mkiz82qip9rwkc5lrq0zxy13pqrmxdy162k";
+       version = "0.20.3";
+       sha256 = "0g5d6w6vwkbxf4iqx998q2c5cnhq1bav0ikksdbj98w8b7ga6v0z";
        libraryHaskellDepends = [
          aeson array base base16 binary bytes bytestring cereal conduit
          containers cryptonite deepseq entropy hashable hspec memory mtl
@@ -122339,7 +121107,6 @@ self: {
        description = "Bitcoin & Bitcoin Cash library for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-crypto" = callPackage
@@ -122363,7 +121130,6 @@ self: {
        description = "Implementation of Bitcoin cryptographic primitives";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-node" = callPackage
@@ -122376,8 +121142,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-node";
-       version = "0.17.2";
-       sha256 = "04i8016qrrwzbz8yxnppfzlrba1d86zp2j71dqd0p7lc3341caa8";
+       version = "0.17.12";
+       sha256 = "0jb1ypscy5hgvbw5jrd5qjl7mdi2qgc7h3amyi50zh2m3lhmgjnv";
        libraryHaskellDepends = [
          base bytestring cereal conduit conduit-extra containers
          data-default hashable haskoin-core monad-logger mtl network nqe
@@ -122396,7 +121162,6 @@ self: {
        description = "P2P library for Bitcoin and Bitcoin Cash";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-protocol" = callPackage
@@ -122420,7 +121185,6 @@ self: {
        description = "Implementation of the Bitcoin network protocol messages";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-script" = callPackage
@@ -122446,7 +121210,6 @@ self: {
        description = "Implementation of Bitcoin script parsing and evaluation";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-store" = callPackage
@@ -122462,8 +121225,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "0.52.8";
-       sha256 = "14qwdh0fwyqhb3pgykprgp1vs78y4ixn2dn55bsi9x53cjjvp1qp";
+       version = "0.53.2";
+       sha256 = "04wm92b7687qivwjia69gahd9y2dasirmyxcbv8liqfp5xfmjbmz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -122497,7 +121260,6 @@ self: {
        description = "Storage and index for Bitcoin and Bitcoin Cash";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-store-data" = callPackage
@@ -122509,8 +121271,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store-data";
-       version = "0.52.6";
-       sha256 = "0npiib582rnbk3w9f0m71y84xpk7akzkypfxrd9n1s4h3dh0qsfw";
+       version = "0.53.2";
+       sha256 = "1i949izj89g797zp07qxjx16sd2591gsxbpq94v52vzgd6rl9h7n";
        libraryHaskellDepends = [
          aeson base binary bytes bytestring cereal containers data-default
          deepseq hashable haskoin-core http-client http-types lens mtl
@@ -122527,7 +121289,6 @@ self: {
        description = "Data for Haskoin Store";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoin-util" = callPackage
@@ -122595,7 +121356,6 @@ self: {
        description = "Implementation of a Bitcoin SPV Wallet with BIP32 and multisig support";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoon" = callPackage
@@ -122614,7 +121374,6 @@ self: {
        description = "Web Application Abstraction";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoon-httpspec" = callPackage
@@ -122631,7 +121390,6 @@ self: {
        description = "Integrating HttpSpec with Haskoon";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskoon-salvia" = callPackage
@@ -122650,7 +121408,6 @@ self: {
        description = "Integrating HttpSpec with Haskoon";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskore" = callPackage
@@ -122695,7 +121452,6 @@ self: {
        description = "Routines for realtime playback of Haskore songs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskore-supercollider" = callPackage
@@ -122718,7 +121474,6 @@ self: {
        description = "Haskore back-end for SuperCollider";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskore-synthesizer" = callPackage
@@ -122739,7 +121494,6 @@ self: {
        description = "Music rendering coded in Haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskore-vintage" = callPackage
@@ -122834,7 +121588,6 @@ self: {
        description = "Torch for tensors and neural networks in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasktorch-codegen" = callPackage
@@ -122925,7 +121678,6 @@ self: {
        description = "Bindings to Cutorch";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {ATen = null;};
 
   "hasktorch-indef" = callPackage
@@ -122955,7 +121707,6 @@ self: {
        description = "Core Hasktorch abstractions wrapping FFI bindings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasktorch-signatures" = callPackage
@@ -122982,7 +121733,6 @@ self: {
        description = "Backpack signatures for Tensor operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasktorch-signatures-partial" = callPackage
@@ -123079,7 +121829,6 @@ self: {
        description = "Neural architectures in hasktorch";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-binary" = callPackage
@@ -123125,8 +121874,6 @@ self: {
        ];
        description = "Haskus system build tool";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-utils" = callPackage
@@ -123149,8 +121896,6 @@ self: {
        ];
        description = "Haskus utility modules";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-utils-compat" = callPackage
@@ -123168,7 +121913,6 @@ self: {
        description = "Compatibility modules with other external packages (ByteString, etc.)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-utils-data" = callPackage
@@ -123186,8 +121930,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Haskus data utility modules";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-utils-types" = callPackage
@@ -123200,8 +121942,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Haskus types utility modules";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-utils-variant" = callPackage
@@ -123224,8 +121964,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq QuickCheck ];
        description = "Variant and EADT";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskus-web" = callPackage
@@ -123243,7 +121981,6 @@ self: {
        description = "Haskus web";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskyapi" = callPackage
@@ -123292,7 +122029,6 @@ self: {
        description = "Loan calculator engine";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasloGUI" = callPackage
@@ -123312,7 +122048,6 @@ self: {
        description = "Loan calculator Gtk GUI. Based on haslo (Haskell Loan) library.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasmin" = callPackage
@@ -123357,7 +122092,6 @@ self: {
        description = "This package enables to write SPARQL queries to remote endpoints";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haspell" = callPackage
@@ -123461,7 +122195,6 @@ self: {
        description = "A declarative abstraction over PostgreSQL Cursor";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasql-cursor-transaction" = callPackage
@@ -123657,7 +122390,6 @@ self: {
        description = "A \"PostgreSQL\" backend for the \"hasql\" library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasql-postgres-options" = callPackage
@@ -123673,7 +122405,6 @@ self: {
        description = "An \"optparse-applicative\" parser for \"hasql-postgres\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasql-queue" = callPackage
@@ -123709,7 +122440,6 @@ self: {
        description = "A PostgreSQL backed queue";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasql-simple" = callPackage
@@ -123747,7 +122477,6 @@ self: {
        description = "Template Haskell utilities for Hasql";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasql-transaction" = callPackage
@@ -123782,6 +122511,24 @@ self: {
        testHaskellDepends = [ base hasql tasty tasty-quickcheck ];
        description = "Parse PostgreSQL connection URI into Hasql.Connection Settings";
        license = lib.licenses.mit;
+     }) {};
+
+  "hasqlator-mysql" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, containers, dlist
+     , io-streams, megaparsec, mtl, mysql-haskell, pretty-simple
+     , prettyprinter, scientific, template-haskell, text, time
+     }:
+     mkDerivation {
+       pname = "hasqlator-mysql";
+       version = "0.0.3";
+       sha256 = "1b1nw3l96gvf2laxw7w72w8ya8aazdhv4w7c5ly47n09hx9q77zp";
+       libraryHaskellDepends = [
+         aeson base binary bytestring containers dlist io-streams megaparsec
+         mtl mysql-haskell pretty-simple prettyprinter scientific
+         template-haskell text time
+       ];
+       description = "composable SQL generation";
+       license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {};
@@ -123846,7 +122593,6 @@ self: {
        description = "render hastache templates using aeson values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haste" = callPackage
@@ -123882,7 +122628,6 @@ self: {
        description = "Framework for type-safe, distributed web applications";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haste-compiler" = callPackage
@@ -123946,7 +122691,6 @@ self: {
        description = "Base libraries for haste-compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haste-markup" = callPackage
@@ -123962,7 +122706,6 @@ self: {
        description = "A port of blaze-markup and blaze-html to Haste";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "haste-perch" = callPackage
@@ -124262,7 +123005,6 @@ self: {
        description = "A twitter client for GTK+. Beta version.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hax" = callPackage
@@ -124434,7 +123176,6 @@ self: {
        description = "A simple HTTP proxy server library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hayland" = callPackage
@@ -124496,7 +123237,6 @@ self: {
        description = "N-back memory game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hbayes" = callPackage
@@ -124527,7 +123267,6 @@ self: {
        description = "Bayesian Networks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hbb" = callPackage
@@ -124545,7 +123284,6 @@ self: {
        description = "Haskell Busy Bee, a backend for text editors";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hbcd" = callPackage
@@ -124558,7 +123296,6 @@ self: {
        description = "Packed binary-coded decimal (BCD) serialization";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hbeanstalk" = callPackage
@@ -124633,7 +123370,6 @@ self: {
        description = "An optimizing Brainfuck compiler and evaluator";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hblas" = callPackage
@@ -124821,7 +123557,6 @@ self: {
        description = "haskell cg (minus) (cairo rendering)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hcheat" = callPackage
@@ -124835,40 +123570,40 @@ self: {
        description = "A collection of code cheatsheet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hcheckers" = callPackage
     ({ mkDerivation, aeson, array, base, binary, bits, bytes
      , bytestring, clock, concurrent-extra, containers, data-default
-     , directory, ekg, ekg-core, exceptions, fast-logger, filepath
-     , hashable, hashtables, heavy-logger, hsyslog, http-types
-     , megaparsec, microlens, monad-metrics, mtl, mwc-random, network
-     , optparse-applicative, psqueues, random, random-access-file
-     , random-shuffle, scotty, stm, stm-containers, store
-     , template-haskell, text, text-format-heavy, unix, unix-bytestring
-     , unordered-containers, vector, wai, warp, yaml
+     , directory, ekg, ekg-core, exceptions, fast-logger, filepath, Glob
+     , hashable, hashtables, heavy-logger, hsyslog, http-types, list-t
+     , megaparsec, microlens, modern-uri, monad-metrics, mtl, mwc-random
+     , network, optparse-applicative, psqueues, random
+     , random-access-file, random-shuffle, req, scotty, stm
+     , stm-containers, store, template-haskell, text, text-format-heavy
+     , unix, unix-bytestring, unordered-containers, vector, wai, warp
+     , yaml
      }:
      mkDerivation {
        pname = "hcheckers";
-       version = "0.1.0.1";
-       sha256 = "1l4cj7v4scnz5cq05294ym4gyv163ry09bpxp1vg1m1v88ww5i2w";
+       version = "0.1.0.2";
+       sha256 = "1v4hnqvi47kn10c1rjgsggxmajy7xnl462ghb2fs61ksbmrdi5b8";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          aeson array base binary bits bytes bytestring clock
          concurrent-extra containers data-default directory ekg ekg-core
-         exceptions fast-logger filepath hashable hashtables heavy-logger
-         hsyslog http-types megaparsec microlens monad-metrics mtl
-         mwc-random network optparse-applicative psqueues random
-         random-access-file random-shuffle scotty stm stm-containers store
-         template-haskell text text-format-heavy unix unix-bytestring
-         unordered-containers vector wai warp yaml
+         exceptions fast-logger filepath Glob hashable hashtables
+         heavy-logger hsyslog http-types list-t megaparsec microlens
+         modern-uri monad-metrics mtl mwc-random network
+         optparse-applicative psqueues random random-access-file
+         random-shuffle req scotty stm stm-containers store template-haskell
+         text text-format-heavy unix unix-bytestring unordered-containers
+         vector wai warp yaml
        ];
        description = "Implementation of checkers (\"draughts\") board game - server application";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hchesslib" = callPackage
@@ -125165,7 +123900,6 @@ self: {
        description = "Haskell Database Independent interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdbi-conduit" = callPackage
@@ -125187,7 +123921,6 @@ self: {
        description = "Conduit glue for HDBI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdbi-postgresql" = callPackage
@@ -125216,7 +123949,6 @@ self: {
        description = "PostgreSQL driver for hdbi";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdbi-sqlite" = callPackage
@@ -125237,7 +123969,6 @@ self: {
        description = "SQlite driver for HDBI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdbi-tests" = callPackage
@@ -125258,7 +123989,6 @@ self: {
        description = "test suite for testing HDBI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdevtools" = callPackage
@@ -125298,7 +124028,6 @@ self: {
        description = "HDF: Uniform Rate Audio Signal Processing in Haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdf5-lite" = callPackage
@@ -125352,7 +124081,6 @@ self: {
        description = "Pattern-Expression-based differencing of arbitrary types";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdigest" = callPackage
@@ -125388,7 +124116,6 @@ self: {
        description = "An IDL compiler for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdis86" = callPackage
@@ -125485,7 +124212,6 @@ self: {
        description = "Haskell docs tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdph" = callPackage
@@ -125513,7 +124239,6 @@ self: {
        description = "Haskell distributed parallel Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hdph-closure" = callPackage
@@ -125707,7 +124432,6 @@ self: {
        description = "An opinionated app prelude and framework in the UnliftIO style";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heart-core" = callPackage
@@ -125740,8 +124464,6 @@ self: {
        libraryHaskellDepends = [ async base io-streams time ];
        description = "Heartbeats for io-streams";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heatitup" = callPackage
@@ -125772,7 +124494,6 @@ self: {
        description = "Find and annotate ITDs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heatitup-complete" = callPackage
@@ -125796,8 +124517,6 @@ self: {
        ];
        description = "Find and annotate ITDs with assembly or read pair joining";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heatshrink" = callPackage
@@ -125832,7 +124551,6 @@ self: {
        description = "Simle api for heavy logger";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heavy-logger" = callPackage
@@ -125855,7 +124573,6 @@ self: {
        description = "Full-weight logging based on fast-logger";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heavy-logger-amazon" = callPackage
@@ -125872,7 +124589,6 @@ self: {
        description = "heavy-logger compatibility with amazonka-core logging";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heavy-logger-instances" = callPackage
@@ -125894,7 +124610,6 @@ self: {
        description = "Orphan instances for data types in heavy-logger package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hebrew-time" = callPackage
@@ -125922,7 +124637,6 @@ self: {
        description = "Elliptic Curve Cryptography for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heckin" = callPackage
@@ -125980,6 +124694,7 @@ self: {
        ];
        description = "Release with confidence";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "hedgehog-checkers" = callPackage
@@ -126009,7 +124724,6 @@ self: {
        testHaskellDepends = [ base hedgehog hedgehog-checkers lens ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedgehog-classes" = callPackage
@@ -126054,7 +124768,6 @@ self: {
        description = "Use 'fakedata' with 'hedgehog'";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedgehog-fn" = callPackage
@@ -126108,7 +124821,6 @@ self: {
        description = "JSON generators for Hedgehog";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedgehog-generic" = callPackage
@@ -126163,8 +124875,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedgehog-servant";
-       version = "0.0.0.1";
-       sha256 = "04plk39ni5m9arcphb4464bpl12r6aw2zfnzlzhpa1i49qlpivc3";
+       version = "0.0.1.1";
+       sha256 = "17dnj82jgbz23is22kqc60nz46vb4rhlsn1aimaynx7cld0g63vd";
        libraryHaskellDepends = [
          base bytestring case-insensitive hedgehog http-client http-media
          http-types servant servant-client servant-server string-conversions
@@ -126190,8 +124902,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.14.2";
-       sha256 = "1zm8llpbbvr5f5s0i4qsn025734s1mamfvm1dgxw4p87m9zhprlm";
+       version = "0.14.4";
+       sha256 = "0h6s3x3pylyidjbzjqyrmc2cm5ls67m9iij35fn48rvq4l41w9h9";
        libraryHaskellDepends = [
          async base bytestring bytestring-lexing containers deepseq errors
          exceptions HTTP mtl network network-uri resource-pool scanner stm
@@ -126286,7 +124998,6 @@ self: {
        description = "Caching mandatory data with Redis";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedis-simple" = callPackage
@@ -126357,8 +125068,6 @@ self: {
        ];
        description = "Base functor for EDN AST";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedra" = callPackage
@@ -126388,6 +125097,8 @@ self: {
        pname = "heidi";
        version = "0.1.0";
        sha256 = "1l4am8pqk3xrmjmjv48jia60d2vydpj2wy0iyxqiidnc7b8p5j8m";
+       revision = "1";
+       editedCabalFile = "0fbx6hkxdbrhh30j2bs3zrxknrlr6z29r7srxnpsgd4n0rkdajar";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -126402,7 +125113,6 @@ self: {
        description = "Tidy data in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hein" = callPackage
@@ -126482,7 +125192,6 @@ self: {
        description = "Use JSON directly from Heist templates";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heist-async" = callPackage
@@ -126544,7 +125253,6 @@ self: {
        description = "New Relic® agent SDK wrapper for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {newrelic-collector-client = null; newrelic-common = null; 
          newrelic-transaction = null;};
 
@@ -126564,7 +125272,6 @@ self: {
        description = "New Relic® agent SDK wrapper for wai";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "helisp" = callPackage
@@ -126604,7 +125311,6 @@ self: {
        description = "The Helium Compiler";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "helium-overture" = callPackage
@@ -126692,7 +125398,6 @@ self: {
        description = "Distributed hackage mirror";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hellnet" = callPackage
@@ -126718,7 +125423,6 @@ self: {
        description = "Simple, distributed, anonymous data sharing network";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hello" = callPackage
@@ -126832,7 +125536,6 @@ self: {
        description = "Haskell port of the Emokit EEG project";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hen" = callPackage
@@ -126854,7 +125557,6 @@ self: {
        description = "Haskell bindings to Xen hypervisor interface";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {xenctrl = null;};
 
   "henet" = callPackage
@@ -126870,7 +125572,6 @@ self: {
        description = "Bindings and high level interface for to ENet v1.3.9";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hepevt" = callPackage
@@ -126883,7 +125584,6 @@ self: {
        description = "HEPEVT parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "her-lexer" = callPackage
@@ -126909,7 +125609,6 @@ self: {
        description = "Parsec frontend to \"her-lexer\" for Haskell source code";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "herbalizer" = callPackage
@@ -127185,8 +125884,8 @@ self: {
      }:
      mkDerivation {
        pname = "heredocs";
-       version = "0.2.0.0";
-       sha256 = "1649vhzymizmmi3ggmqxyq4b0fhrpipj4ljy1w7hca2wyh4jm1yw";
+       version = "0.2.1.0";
+       sha256 = "0wjj5sy4mpd4ahavdmi67j70xs1wrga8dnzr5jv8cjnqjj2p8f59";
        libraryHaskellDepends = [
          base bytestring doctest parsec template-haskell text
        ];
@@ -127237,7 +125936,6 @@ self: {
        description = "Haskell Equational Reasoning Model-to-Implementation Tunnel";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hermit-syb" = callPackage
@@ -127254,7 +125952,6 @@ self: {
        description = "HERMIT plugin for optimizing Scrap-Your-Boilerplate traversals";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "herms" = callPackage
@@ -127339,7 +126036,6 @@ self: {
        description = "A library for compiling and serving static web assets";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "herringbone-embed" = callPackage
@@ -127357,7 +126053,6 @@ self: {
        description = "Embed preprocessed web assets in your executable with Template Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "herringbone-wai" = callPackage
@@ -127375,7 +126070,6 @@ self: {
        description = "Wai adapter for the Herringbone web asset preprocessor";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hesh" = callPackage
@@ -127403,7 +126097,6 @@ self: {
        description = "the Haskell Extensible Shell: Haskell for Bash-style scripts";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hesql" = callPackage
@@ -127422,7 +126115,6 @@ self: {
        description = "Haskell's embedded SQL";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hetero-dict" = callPackage
@@ -127506,7 +126198,6 @@ self: {
        description = "A heterogeneous list type";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hetris" = callPackage
@@ -127557,8 +126248,8 @@ self: {
      }:
      mkDerivation {
        pname = "hevm";
-       version = "0.44.1";
-       sha256 = "1ygrksnqav1cw9pq1x2xi0na5fxy0phyc0v48nkzpis868gy0b97";
+       version = "0.46.0";
+       sha256 = "1pqs4hcjy1gipdp63d8jcy035n96rfx14x0s67ihmh16s11i85bz";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -127607,7 +126298,6 @@ self: {
        description = "Genetic Mona Lisa problem in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hevolisa-dph" = callPackage
@@ -127627,7 +126317,6 @@ self: {
        description = "Genetic Mona Lisa problem in Haskell - using Data Parallel Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hex" = callPackage
@@ -127651,8 +126340,6 @@ self: {
        testHaskellDepends = [ base bytestring text ];
        description = "ByteString-Text hexidecimal conversions";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hexchat" = callPackage
@@ -127795,7 +126482,6 @@ self: {
        description = "Chunked XML parsing using iteratees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hexpat-lens" = callPackage
@@ -127996,8 +126682,6 @@ self: {
        ];
        description = "Streaming-friendly XML parsers";
        license = lib.licenses.cc0;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "heyefi" = callPackage
@@ -128052,8 +126736,6 @@ self: {
        ];
        description = "Heyting and Boolean algebras";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hfann" = callPackage
@@ -128090,7 +126772,6 @@ self: {
        description = "Flash debugger";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hfiar" = callPackage
@@ -128107,7 +126788,6 @@ self: {
        description = "Four in a Row in Haskell!!";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hflags" = callPackage
@@ -128295,7 +126975,6 @@ self: {
        description = "Haskell Genetic Algorithm Library";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hgdbmi" = callPackage
@@ -128351,7 +127030,6 @@ self: {
        description = "Random generation of modal and hybrid logic formulas";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hgeometric" = callPackage
@@ -128488,7 +127166,6 @@ self: {
        description = "Writing geometric primitives from HGeometry as SVG Files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hgeos" = callPackage
@@ -128503,8 +127180,6 @@ self: {
        testHaskellDepends = [ base MissingH ];
        description = "Simple Haskell bindings to GEOS C API";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) geos;};
 
   "hgettext" = callPackage
@@ -128575,7 +127250,6 @@ self: {
        description = "Haskell bindings to the GitHub API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hgl-example" = callPackage
@@ -128605,8 +127279,6 @@ self: {
        testHaskellDepends = [ base QuickCheck ];
        description = "Haskell interface to GMP";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hgom" = callPackage
@@ -128739,8 +127411,6 @@ self: {
        ];
        description = "Happy Haskell Programming";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hhwloc" = callPackage
@@ -128845,7 +127515,6 @@ self: {
        description = "Relatively efficient Tcl interpreter with support for basic operations";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hichi" = callPackage
@@ -128926,6 +127595,9 @@ self: {
        librarySystemDepends = [ systemd ];
        description = "Haskell bindings to HIDAPI";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) systemd;};
 
   "hidden-char" = callPackage
@@ -129098,8 +127770,6 @@ self: {
        ];
        description = "Draw diagrams of dendrograms made by hierarchical-clustering";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hierarchical-env" = callPackage
@@ -129109,8 +127779,8 @@ self: {
      }:
      mkDerivation {
        pname = "hierarchical-env";
-       version = "0.1.0.0";
-       sha256 = "0syx9i9z9j75wbqsrwl8nqhr025df6vmgb4p767sdb7dncpqkph9";
+       version = "0.2.0.2";
+       sha256 = "08la6kwszxgziri6yhiy9blx1fqlbjpj2jggplrn6pjl2swa0np0";
        libraryHaskellDepends = [
          base method microlens microlens-mtl microlens-th rio
          template-haskell th-abstraction
@@ -129122,6 +127792,8 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "hierarchical environments for dependency injection";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hierarchical-exceptions" = callPackage
@@ -129166,7 +127838,6 @@ self: {
        description = "Hierarchical spectral clustering of a graph";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hierarchy" = callPackage
@@ -129314,8 +127985,8 @@ self: {
      }:
      mkDerivation {
        pname = "highjson";
-       version = "0.4.0.0";
-       sha256 = "0qk9l84arc1qhagjmvna7l69s196ndhbs8ndxngdb7dx3bnhbsy3";
+       version = "0.5.0.0";
+       sha256 = "0phf4dsfsvcgrf465xf7jqxnvjfvypsqfpg1p92dqp7m7iqa2hwd";
        libraryHaskellDepends = [ aeson base hvect lens text ];
        testHaskellDepends = [ aeson base hspec lens QuickCheck text ];
        benchmarkHaskellDepends = [
@@ -129333,8 +128004,8 @@ self: {
      }:
      mkDerivation {
        pname = "highjson-swagger";
-       version = "0.4.0.0";
-       sha256 = "07vyp16gvzk9k1fr1hkxv0mibfhl2cc9xrad16357zb4swpjvw1d";
+       version = "0.5.0.0";
+       sha256 = "1nc1fknag944fzjfg0fshbqzv47awrxz5yv6gdj2nz9gmfshcjg9";
        libraryHaskellDepends = [
          base highjson hvect insert-ordered-containers lens swagger2 text
        ];
@@ -129344,7 +128015,6 @@ self: {
        description = "Derive swagger instances from highjson specs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "highjson-th" = callPackage
@@ -129354,8 +128024,8 @@ self: {
      }:
      mkDerivation {
        pname = "highjson-th";
-       version = "0.4.0.0";
-       sha256 = "1i826b3z730vd2c0fqisbrsb9wsshmvfzvxrm37b2vnvm4vlj37k";
+       version = "0.5.0.0";
+       sha256 = "0ama2kks0z7cg7kmrs6gl6mf23dg1bkzhvmp5myjgn01y4sb9w91";
        libraryHaskellDepends = [
          aeson base highjson highjson-swagger swagger2 template-haskell text
        ];
@@ -129366,7 +128036,6 @@ self: {
        description = "Template Haskell helpers for highjson specs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "highlight" = callPackage
@@ -129557,7 +128226,6 @@ self: {
        description = "multithreaded snmp poller for riemann";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hindent" = callPackage
@@ -129592,8 +128260,6 @@ self: {
        ];
        description = "Extensible Haskell pretty printer";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hindley-milner" = callPackage
@@ -129639,7 +128305,6 @@ self: {
        description = "Interface and utilities for classifiers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hinduce-classifier-decisiontree" = callPackage
@@ -129658,7 +128323,6 @@ self: {
        description = "Decision Tree Classifiers for hInduce";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hinduce-examples" = callPackage
@@ -129679,7 +128343,6 @@ self: {
        description = "Example data for hInduce";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hinduce-missingh" = callPackage
@@ -129788,6 +128451,9 @@ self: {
        ];
        description = "Haskell binding to inotify, using ByteString filepaths";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "hinquire" = callPackage
@@ -129863,7 +128529,6 @@ self: {
        description = "A server process that runs hint";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hinter" = callPackage
@@ -129930,7 +128595,6 @@ self: {
        description = "Space Invaders";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hinze-streams" = callPackage
@@ -129943,7 +128607,6 @@ self: {
        description = "Streams and Unique Fixed Points";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hip" = callPackage
@@ -129968,8 +128631,6 @@ self: {
        ];
        description = "Haskell Image Processing (HIP) Library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hipbot" = callPackage
@@ -129995,7 +128656,6 @@ self: {
        description = "A library for building HipChat Bots";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hipchat-hs" = callPackage
@@ -130058,6 +128718,8 @@ self: {
        sha256 = "18hwc5x902k2dsk8895sr8nil4445b9lazzdzbjzpllx4smf0lvz";
        libraryHaskellDepends = [ aeson base bytestring servant ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hipsql-client" = callPackage
@@ -130080,6 +128742,7 @@ self: {
          http-types mtl servant-client servant-client-core
        ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hipsql-monad" = callPackage
@@ -130111,6 +128774,7 @@ self: {
          servant-server warp
        ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hircules" = callPackage
@@ -130152,7 +128816,6 @@ self: {
        description = "Calculates IRT 2PL and 3PL models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hissmetrics" = callPackage
@@ -130194,7 +128857,6 @@ self: {
        description = "Umbrella package for the historical dictionary of Polish";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hist-pl-dawg" = callPackage
@@ -130210,7 +128872,6 @@ self: {
        description = "A generic, DAWG-based dictionary";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hist-pl-fusion" = callPackage
@@ -130228,7 +128889,6 @@ self: {
        description = "Merging historical dictionary with PoliMorf";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hist-pl-lexicon" = callPackage
@@ -130246,7 +128906,6 @@ self: {
        description = "A binary representation of the historical dictionary of Polish";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hist-pl-lmf" = callPackage
@@ -130259,7 +128918,6 @@ self: {
        description = "LMF parsing for the historical dictionary of Polish";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hist-pl-transliter" = callPackage
@@ -130369,7 +129027,6 @@ self: {
        description = "Git like program in haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hit-graph" = callPackage
@@ -130386,7 +129043,6 @@ self: {
        description = "Use graph algorithms to access and manipulate Git repos";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hit-on" = callPackage
@@ -130560,7 +129216,6 @@ self: {
        description = "JSON Schema library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hjugement" = callPackage
@@ -130611,7 +129266,6 @@ self: {
        description = "Majority Judgment and Helios-C command line tool";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hjugement-protocol" = callPackage
@@ -130639,6 +129293,8 @@ self: {
        ];
        description = "A cryptographic protocol for the Majority Judgment";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hkd" = callPackage
@@ -130711,8 +129367,8 @@ self: {
      }:
      mkDerivation {
        pname = "hkgr";
-       version = "0.2.7";
-       sha256 = "1p03qigrfkjj0q8ps9gx50pnz6s2rdmn2lqnybhfz8pifsqj0z7k";
+       version = "0.3";
+       sha256 = "1w8ww2dkskdfs0lh6wbn5byhnrf6mwih7n5yp81fr6awdc0k1qrm";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -130800,7 +129456,6 @@ self: {
        description = "Fast algorithm for mining closed frequent itemsets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hleap" = callPackage
@@ -130892,7 +129547,6 @@ self: {
        description = "Web API server for the hledger accounting tool";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hledger-chart" = callPackage
@@ -130951,6 +129605,8 @@ self: {
        ];
        description = "An hledger workflow focusing on automated statement import and classification";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hledger-iadd" = callPackage
@@ -131082,20 +129738,24 @@ self: {
 
   "hledger-stockquotes" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cmdargs, containers
-     , hedgehog, hledger-lib, req, safe, scientific, split, tasty
-     , tasty-hedgehog, tasty-hunit, text, time, unordered-containers
+     , directory, hedgehog, hledger-lib, raw-strings-qq, req, safe
+     , safe-exceptions, scientific, split, tasty, tasty-hedgehog
+     , tasty-hunit, text, time, unordered-containers, xdg-basedir, yaml
      }:
      mkDerivation {
        pname = "hledger-stockquotes";
-       version = "0.1.1.0";
-       sha256 = "1srgl70zsixbfgmh22psg7q4wqfiay2jiybyvml42iv712n7z8xx";
+       version = "0.1.2.0";
+       sha256 = "064q6qz6rrahk9ri5hr1y6n17nmd4l124xb3l8q5rvm81x3hzp3x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring containers hledger-lib req safe scientific
          split text time unordered-containers
        ];
-       executableHaskellDepends = [ base bytestring cmdargs text time ];
+       executableHaskellDepends = [
+         aeson base bytestring cmdargs directory raw-strings-qq
+         safe-exceptions text time xdg-basedir yaml
+       ];
        testHaskellDepends = [
          base hedgehog tasty tasty-hedgehog tasty-hunit
        ];
@@ -131294,6 +129954,7 @@ self: {
        description = "Source code suggestions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "hlint" = callPackage
@@ -131305,8 +129966,8 @@ self: {
      }:
      mkDerivation {
        pname = "hlint";
-       version = "3.3";
-       sha256 = "1cbmaw3ikni2fqkzyngc6qwg8k6ighy48979msfs97qg0kxjmbbd";
+       version = "3.3.1";
+       sha256 = "12l2p5pbgh1wcn2bh0ax36sclwaiky8hf09ivgz453pb5ss0jghc";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -131319,6 +129980,7 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Source code suggestions";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "hlint-test" = callPackage
@@ -131418,7 +130080,6 @@ self: {
        description = "High-level Redis Database";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hlrdb-core" = callPackage
@@ -131452,7 +130113,6 @@ self: {
        description = "Haskell Lindenmayer Systems";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hls-brittany-plugin" = callPackage
@@ -131471,23 +130131,26 @@ self: {
        testHaskellDepends = [ base bytestring hls-test-utils text ];
        description = "Integration with the Brittany code formatter";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {hls-test-utils = null;};
+     }) {};
 
   "hls-class-plugin" = callPackage
-    ({ mkDerivation, aeson, base, containers, ghc, ghc-exactprint
-     , ghcide, hls-plugin-api, lens, lsp, shake, text, transformers
+    ({ mkDerivation, aeson, base, bytestring, containers, filepath, ghc
+     , ghc-exactprint, ghcide, hls-plugin-api, hls-test-utils, lens, lsp
+     , lsp-test, lsp-types, shake, text, transformers
      , unordered-containers
      }:
      mkDerivation {
        pname = "hls-class-plugin";
-       version = "1.0.0.0";
-       sha256 = "103rswyrbs35q6mmv19bnj4cp4r1n5mx6aazcabfakh1cix0fn60";
+       version = "1.0.0.1";
+       sha256 = "0s9pkdcgvfb9qhj9qjy6bygdyshanczcn9apq3qcw8yznl1zqilc";
        libraryHaskellDepends = [
          aeson base containers ghc ghc-exactprint ghcide hls-plugin-api lens
          lsp shake text transformers unordered-containers
        ];
+       testHaskellDepends = [
+         base bytestring filepath hls-test-utils lens lsp-test lsp-types
+         text
+       ];
        description = "Class/instance management plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131495,15 +130158,15 @@ self: {
   "hls-eval-plugin" = callPackage
     ({ mkDerivation, aeson, base, containers, deepseq, Diff, directory
      , dlist, extra, filepath, ghc, ghc-boot-th, ghc-paths, ghcide
-     , hashable, hls-plugin-api, lens, lsp, lsp-types, megaparsec, mtl
-     , parser-combinators, pretty-simple, QuickCheck, safe-exceptions
-     , shake, temporary, text, time, transformers, unliftio
-     , unordered-containers
+     , hashable, hls-plugin-api, hls-test-utils, lens, lsp, lsp-test
+     , lsp-types, megaparsec, mtl, parser-combinators, pretty-simple
+     , QuickCheck, safe-exceptions, shake, temporary, text, time
+     , transformers, unliftio, unordered-containers
      }:
      mkDerivation {
        pname = "hls-eval-plugin";
-       version = "1.0.0.0";
-       sha256 = "0pslyhgvs6xrwijkyf4jdh873mnsb8iijmkbc9aq3dljdy080fdg";
+       version = "1.1.0.0";
+       sha256 = "138l49a8y0g7yk29xdjs0jv0xmz3y8lvig45g944spj3xi8snpfx";
        libraryHaskellDepends = [
          aeson base containers deepseq Diff directory dlist extra filepath
          ghc ghc-boot-th ghc-paths ghcide hashable hls-plugin-api lens lsp
@@ -131511,6 +130174,10 @@ self: {
          QuickCheck safe-exceptions shake temporary text time transformers
          unliftio unordered-containers
        ];
+       testHaskellDepends = [
+         aeson base directory extra filepath hls-test-utils lens lsp-test
+         lsp-types text
+       ];
        description = "Eval plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131540,10 +130207,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-explicit-imports-plugin";
-       version = "1.0.0.0";
-       sha256 = "14j89l8pkxrffllg06fj6215xqdswrbndyv5xa22f0g00acmwi6w";
-       revision = "1";
-       editedCabalFile = "0gch9wkz1h4g06xc48jhvs06jji9d0npa2zrj2gv1cbf6hjs0s92";
+       version = "1.0.0.1";
+       sha256 = "1ygs667pkc3zn66yqz6ssrxifhrc906sddmcgjnkprk7zappk2nc";
        libraryHaskellDepends = [
          aeson base containers deepseq ghc ghcide hls-plugin-api lsp
          lsp-types shake text unordered-containers
@@ -131552,35 +130217,96 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
-  "hls-explicit-imports-plugin_1_0_0_1" = callPackage
+  "hls-explicit-imports-plugin_1_0_0_2" = callPackage
     ({ mkDerivation, aeson, base, containers, deepseq, ghc, ghcide
-     , hls-plugin-api, lsp, lsp-types, shake, text, unordered-containers
+     , hls-graph, hls-plugin-api, lsp, lsp-types, text
+     , unordered-containers
      }:
      mkDerivation {
        pname = "hls-explicit-imports-plugin";
-       version = "1.0.0.1";
-       sha256 = "1ygs667pkc3zn66yqz6ssrxifhrc906sddmcgjnkprk7zappk2nc";
+       version = "1.0.0.2";
+       sha256 = "1ga7phiy7i6kmin0zi0dykbkv29vh46hzrn0bkvfqjkrb41mbi8q";
        libraryHaskellDepends = [
-         aeson base containers deepseq ghc ghcide hls-plugin-api lsp
-         lsp-types shake text unordered-containers
+         aeson base containers deepseq ghc ghcide hls-graph hls-plugin-api
+         lsp lsp-types text unordered-containers
        ];
        description = "Explicit imports plugin for Haskell Language Server";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "hls-floskell-plugin" = callPackage
+    ({ mkDerivation, base, floskell, ghcide, hls-plugin-api
+     , hls-test-utils, lsp-types, text, transformers
+     }:
+     mkDerivation {
+       pname = "hls-floskell-plugin";
+       version = "1.0.0.0";
+       sha256 = "0wf4483a4xhvynqqgj6gf1qg5nv9rv4gv9rm2hwsbjq123bs0wy8";
+       libraryHaskellDepends = [
+         base floskell ghcide hls-plugin-api lsp-types text transformers
+       ];
+       testHaskellDepends = [ base hls-test-utils text ];
+       description = "Integration with the Floskell code formatter";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "hls-fourmolu-plugin" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, data-default
+     , extra, filepath, fourmolu, ghc, ghc-boot-th, ghcide
+     , hls-plugin-api, hls-test-utils, hspec-expectations, lens, lsp
+     , lsp-test, lsp-types, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "hls-fourmolu-plugin";
+       version = "1.0.0.0";
+       sha256 = "1x1v9jjy80w05cg2yl0nzk3h97q16bymrqy59g1s0lzihg3wizs7";
+       libraryHaskellDepends = [
+         base extra filepath fourmolu ghc ghc-boot-th ghcide hls-plugin-api
+         lens lsp lsp-types text
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers data-default filepath ghcide
+         hls-plugin-api hls-test-utils hspec-expectations lens lsp-test
+         lsp-types text unordered-containers
+       ];
+       description = "Integration with the Fourmolu code formatter";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "hls-graph" = callPackage
+    ({ mkDerivation, base, bytestring, shake, unordered-containers }:
+     mkDerivation {
+       pname = "hls-graph";
+       version = "1.3.0.0";
+       sha256 = "0mz9443jljwgi2zd6gafixfp2k8gpnrn5269qb9bjd5p4ai0bbp7";
+       libraryHaskellDepends = [
+         base bytestring shake unordered-containers
+       ];
+       description = "Haskell Language Server internal graph API";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hls-haddock-comments-plugin" = callPackage
-    ({ mkDerivation, base, containers, ghc, ghc-exactprint, ghcide
-     , hls-plugin-api, lsp-types, text, unordered-containers
+    ({ mkDerivation, base, bytestring, containers, filepath, ghc
+     , ghc-exactprint, ghcide, hls-plugin-api, hls-test-utils, lsp-types
+     , text, unordered-containers
      }:
      mkDerivation {
        pname = "hls-haddock-comments-plugin";
-       version = "1.0.0.0";
-       sha256 = "1azy3rrbdi465c65f603ycj14mz1cvc9h92rrf0b0frs90hs66r3";
+       version = "1.0.0.1";
+       sha256 = "1qny8y52myd3ic893wxapbqhfdcdbil8acky91lfcylr9141154i";
        libraryHaskellDepends = [
          base containers ghc ghc-exactprint ghcide hls-plugin-api lsp-types
          text unordered-containers
        ];
+       testHaskellDepends = [
+         base bytestring filepath hls-test-utils text
+       ];
        description = "Haddock comments plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
@@ -131594,8 +130320,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-hlint-plugin";
-       version = "1.0.0.1";
-       sha256 = "0hnfh6x8l20nrj54hpkkq2yj8xkgw15xcba27hagapam2yxi1xga";
+       version = "1.0.0.2";
+       sha256 = "1qi654azf4l24sc7zaimbxm7z59xfvdvn33fsa5d8y7910w17d73";
        libraryHaskellDepends = [
          aeson apply-refact base binary bytestring containers data-default
          deepseq Diff directory extra filepath ghc ghc-exactprint ghcide
@@ -131614,8 +130340,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-plugin-api";
-       version = "1.0.0.0";
-       sha256 = "03pj0irgf9p84jn5kfd4cfyqk4xyfdf9pfrwqhb0c1ipnm4l7wal";
+       version = "1.1.0.0";
+       sha256 = "1i18a5gxa409882zpviy4paldaq43j4z1zmgr9mag2mn64vplrxy";
        libraryHaskellDepends = [
          aeson base containers data-default dependent-map dependent-sum Diff
          dlist hashable hslogger lens lsp opentelemetry process regex-tdfa
@@ -131625,45 +130351,49 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
-  "hls-plugin-api_1_1_0_0" = callPackage
+  "hls-plugin-api_1_1_0_1" = callPackage
     ({ mkDerivation, aeson, base, containers, data-default
-     , dependent-map, dependent-sum, Diff, dlist, hashable, hslogger
-     , lens, lsp, opentelemetry, process, regex-tdfa, shake, text, unix
-     , unordered-containers
+     , dependent-map, dependent-sum, Diff, dlist, hashable, hls-graph
+     , hslogger, lens, lsp, opentelemetry, process, regex-tdfa, text
+     , unix, unordered-containers
      }:
      mkDerivation {
        pname = "hls-plugin-api";
-       version = "1.1.0.0";
-       sha256 = "1i18a5gxa409882zpviy4paldaq43j4z1zmgr9mag2mn64vplrxy";
+       version = "1.1.0.1";
+       sha256 = "0xxkpaqnzm39blgaa2f9v35pwnp8rx3jbmgysnsnb9nchnjprg9z";
        libraryHaskellDepends = [
          aeson base containers data-default dependent-map dependent-sum Diff
-         dlist hashable hslogger lens lsp opentelemetry process regex-tdfa
-         shake text unix unordered-containers
+         dlist hashable hls-graph hslogger lens lsp opentelemetry process
+         regex-tdfa text unix unordered-containers
        ];
        description = "Haskell Language Server API for plugin communication";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "hls-retrie-plugin" = callPackage
-    ({ mkDerivation, aeson, base, containers, deepseq, directory, extra
-     , ghc, ghcide, hashable, hls-plugin-api, lsp, lsp-types, retrie
-     , safe-exceptions, shake, text, transformers, unordered-containers
+  "hls-pragmas-plugin" = callPackage
+    ({ mkDerivation, base, extra, filepath, fuzzy, ghcide
+     , hls-plugin-api, hls-test-utils, lens, lsp, lsp-test, lsp-types
+     , text, transformers, unordered-containers
      }:
      mkDerivation {
-       pname = "hls-retrie-plugin";
+       pname = "hls-pragmas-plugin";
        version = "1.0.0.0";
-       sha256 = "1m4r6nxbq1lvjkl6g1i0lbxdx4zimw6g478alnqv8n208q6fiw26";
+       sha256 = "1zkq95dklc6sdhczgr6l2hdkkrbrjy3zwp0qfz3qvf55gpxspzzs";
        libraryHaskellDepends = [
-         aeson base containers deepseq directory extra ghc ghcide hashable
-         hls-plugin-api lsp lsp-types retrie safe-exceptions shake text
-         transformers unordered-containers
+         base extra fuzzy ghcide hls-plugin-api lens lsp text transformers
+         unordered-containers
        ];
-       description = "Retrie integration plugin for Haskell Language Server";
+       testHaskellDepends = [
+         base filepath hls-test-utils lens lsp-test lsp-types text
+       ];
+       description = "Pragmas plugin for Haskell Language Server";
        license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
-  "hls-retrie-plugin_1_0_0_2" = callPackage
+  "hls-retrie-plugin" = callPackage
     ({ mkDerivation, aeson, base, containers, deepseq, directory, extra
      , ghc, ghcide, hashable, hls-plugin-api, lsp, lsp-types, retrie
      , safe-exceptions, shake, text, transformers, unordered-containers
@@ -131672,6 +130402,8 @@ self: {
        pname = "hls-retrie-plugin";
        version = "1.0.0.2";
        sha256 = "0jw1q0dk5jl80wbyvi1a6vszj9x3s7d2bnsbnyycbh4zgl33agwb";
+       revision = "1";
+       editedCabalFile = "03r3cb93493hr4rbd8n1ip63myssfycyijg2507kcmsly39i2qkz";
        libraryHaskellDepends = [
          aeson base containers deepseq directory extra ghc ghcide hashable
          hls-plugin-api lsp lsp-types retrie safe-exceptions shake text
@@ -131679,64 +130411,101 @@ self: {
        ];
        description = "Retrie integration plugin for Haskell Language Server";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hls-splice-plugin" = callPackage
-    ({ mkDerivation, aeson, base, containers, dlist, extra, foldl, ghc
-     , ghc-exactprint, ghcide, hls-plugin-api, lens, lsp, retrie, shake
-     , syb, text, transformers, unliftio-core, unordered-containers
+    ({ mkDerivation, aeson, base, containers, directory, dlist, extra
+     , filepath, foldl, ghc, ghc-exactprint, ghcide, hls-plugin-api
+     , hls-test-utils, lens, lsp, retrie, shake, syb, text, transformers
+     , unliftio-core, unordered-containers
      }:
      mkDerivation {
        pname = "hls-splice-plugin";
-       version = "1.0.0.0";
-       sha256 = "1xm9ji64g89fn4b81gd5g0ijv88b2zhyn303hr3jxhydqpfcipjb";
+       version = "1.0.0.2";
+       sha256 = "15vg5dmssd54dazipc82sgkbc399mnfydc8y8i2i6lhz3hsgvpg1";
        libraryHaskellDepends = [
          aeson base containers dlist extra foldl ghc ghc-exactprint ghcide
          hls-plugin-api lens lsp retrie shake syb text transformers
          unliftio-core unordered-containers
        ];
+       testHaskellDepends = [
+         base directory extra filepath hls-test-utils text
+       ];
        description = "HLS Plugin to expand TemplateHaskell Splices and QuasiQuotes";
        license = lib.licenses.asl20;
      }) {};
 
+  "hls-stylish-haskell-plugin" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, ghc
+     , ghc-boot-th, ghcide, hls-plugin-api, hls-test-utils, lsp-types
+     , mtl, stylish-haskell, text
+     }:
+     mkDerivation {
+       pname = "hls-stylish-haskell-plugin";
+       version = "1.0.0.0";
+       sha256 = "1f2banm7lbl2grqrm0d9dnhk5fimxqan3xlsl4hjyqgy42xqqai2";
+       libraryHaskellDepends = [
+         base directory filepath ghc ghc-boot-th ghcide hls-plugin-api
+         lsp-types mtl stylish-haskell text
+       ];
+       testHaskellDepends = [ base bytestring hls-test-utils text ];
+       description = "Integration with the Stylish Haskell code formatter";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hls-tactics-plugin" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, checkers, containers
-     , data-default, deepseq, directory, extra, filepath, fingertree
-     , generic-lens, ghc, ghc-boot-th, ghc-exactprint, ghc-source-gen
-     , ghcide, hie-bios, hls-plugin-api, hspec, hspec-discover
-     , hspec-expectations, lens, lsp, lsp-test, lsp-types, megaparsec
-     , mtl, QuickCheck, refinery, retrie, shake, syb, tasty
-     , tasty-ant-xml, tasty-expected-failure, tasty-golden, tasty-hunit
-     , tasty-rerun, text, transformers
+    ({ mkDerivation, aeson, base, containers, deepseq, directory, extra
+     , filepath, fingertree, generic-lens, ghc, ghc-boot-th
+     , ghc-exactprint, ghc-source-gen, ghcide, hls-plugin-api
+     , hls-test-utils, hspec, hspec-discover, hspec-expectations, lens
+     , lsp, lsp-types, mtl, QuickCheck, refinery, retrie, shake, syb
+     , tasty-hspec, tasty-hunit, text, transformers
+     , unordered-containers
      }:
      mkDerivation {
        pname = "hls-tactics-plugin";
-       version = "1.0.0.0";
-       sha256 = "0cd6d3m3w1n7x22k5xndjl9r440s5nx6q2fg3wcmdsbd3s3pg1qa";
-       isLibrary = true;
-       isExecutable = true;
+       version = "1.1.0.0";
+       sha256 = "13qysl6dwrn15kn310r04g1yv7jj9xhar659lrc8h230c4khn2qv";
        libraryHaskellDepends = [
          aeson base containers deepseq directory extra filepath fingertree
          generic-lens ghc ghc-boot-th ghc-exactprint ghc-source-gen ghcide
          hls-plugin-api lens lsp mtl refinery retrie shake syb text
-         transformers
-       ];
-       executableHaskellDepends = [
-         base data-default ghcide hls-plugin-api shake
+         transformers unordered-containers
        ];
        testHaskellDepends = [
-         aeson base bytestring checkers containers data-default deepseq
-         directory filepath ghc ghcide hie-bios hls-plugin-api hspec
-         hspec-expectations lens lsp-test lsp-types megaparsec mtl
-         QuickCheck tasty tasty-ant-xml tasty-expected-failure tasty-golden
-         tasty-hunit tasty-rerun text
+         aeson base containers deepseq directory filepath ghc ghcide
+         hls-plugin-api hls-test-utils hspec hspec-expectations lens
+         lsp-types mtl QuickCheck tasty-hspec tasty-hunit text
        ];
        testToolDepends = [ hspec-discover ];
        description = "Wingman plugin for Haskell Language Server";
        license = lib.licenses.asl20;
      }) {};
 
+  "hls-test-utils" = callPackage
+    ({ mkDerivation, aeson, async, base, blaze-markup, bytestring
+     , containers, data-default, directory, extra, filepath, ghcide
+     , hls-plugin-api, hspec, hspec-core, lens, lsp, lsp-test, lsp-types
+     , shake, tasty, tasty-expected-failure, tasty-golden, tasty-hunit
+     , tasty-rerun, temporary, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "hls-test-utils";
+       version = "1.0.0.0";
+       sha256 = "18n7vb9fa39jkgr0gvsrjfc0nh09w2xlniifb25bn6z3qc3w0h6i";
+       revision = "1";
+       editedCabalFile = "048all6d50kyzln2nfp096ry5zwbair2srifhshnipg8qvs2cwpl";
+       libraryHaskellDepends = [
+         aeson async base blaze-markup bytestring containers data-default
+         directory extra filepath ghcide hls-plugin-api hspec hspec-core
+         lens lsp lsp-test lsp-types shake tasty tasty-expected-failure
+         tasty-golden tasty-hunit tasty-rerun temporary text
+         unordered-containers
+       ];
+       description = "Utilities used in the tests of Haskell Language Server";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hlwm" = callPackage
     ({ mkDerivation, base, stm, transformers, unix, X11 }:
      mkDerivation {
@@ -131767,7 +130536,6 @@ self: {
        description = "Haskell LilyPond";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmark" = callPackage
@@ -131787,7 +130555,6 @@ self: {
        description = "A tool and library for Markov chains based text generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmarkup" = callPackage
@@ -131822,6 +130589,7 @@ self: {
        librarySystemDepends = [ openblasCompat ];
        description = "Numeric Linear Algebra";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {inherit (pkgs) openblasCompat;};
 
   "hmatrix-backprop" = callPackage
@@ -132154,7 +130922,6 @@ self: {
        description = "Haskell Meapsoft Parser";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmeap-utils" = callPackage
@@ -132175,7 +130942,6 @@ self: {
        description = "Haskell Meapsoft Parser Utilities";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmemdb" = callPackage
@@ -132226,7 +130992,6 @@ self: {
        description = "HMEP Multi Expression Programming – a genetic programming variant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmidi" = callPackage
@@ -132319,7 +131084,6 @@ self: {
        description = "Hidden Markov Models using LAPACK primitives";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmp3" = callPackage
@@ -132396,7 +131160,6 @@ self: {
        description = "Haskell Music Theory";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmt-diagrams" = callPackage
@@ -132415,7 +131178,6 @@ self: {
        description = "Haskell Music Theory Diagrams";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hmumps" = callPackage
@@ -132478,18 +131240,18 @@ self: {
      , http-types, lens-family, lens-family-core, lens-family-th, logict
      , megaparsec, monad-control, monadlist, mtl, neat-interpolation
      , optparse-applicative, parser-combinators, pretty-show
-     , prettyprinter, process, ref-tf, regex-tdfa, repline, scientific
-     , semialign, semialign-indexed, serialise, some, split, syb, tasty
+     , prettyprinter, process, ref-tf, regex-tdfa, relude, repline
+     , scientific, semialign, serialise, some, split, syb, tasty
      , tasty-hedgehog, tasty-hunit, tasty-th, template-haskell, text
-     , these, time, transformers, transformers-base, unix
-     , unordered-containers, vector, xml
+     , th-lift-instances, these, time, transformers, transformers-base
+     , unix, unordered-containers, vector, xml
      }:
      mkDerivation {
        pname = "hnix";
-       version = "0.12.0.1";
-       sha256 = "013jlmzzr5fcvl0w9rrvhsg8jikg0hbc8z57yzxgz109x7hrnjzc";
+       version = "0.13.1";
+       sha256 = "12mqwhvxk0w0fjbdl3ignayp08nm31qi028wq5qrkcyxw29ff1k7";
        revision = "1";
-       editedCabalFile = "136lwfb5hjwdbfik5c5dw1nhsmy8v410czmjn4i242s8jv5wm9yb";
+       editedCabalFile = "01dmzpcqav7p764dpicih8jm0g6yiiqgww8b5m6c0bfvvgfqyx2h";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -132501,27 +131263,24 @@ self: {
          lens-family lens-family-core lens-family-th logict megaparsec
          monad-control monadlist mtl neat-interpolation optparse-applicative
          parser-combinators pretty-show prettyprinter process ref-tf
-         regex-tdfa scientific semialign semialign-indexed serialise some
-         split syb template-haskell text these time transformers
+         regex-tdfa relude scientific semialign serialise some split syb
+         template-haskell text th-lift-instances these time transformers
          transformers-base unix unordered-containers vector xml
        ];
        executableHaskellDepends = [
-         aeson base base16-bytestring bytestring comonad containers data-fix
-         deepseq exceptions filepath free haskeline mtl optparse-applicative
-         pretty-show prettyprinter ref-tf repline serialise template-haskell
-         text time transformers unordered-containers
+         aeson base comonad containers data-fix deepseq exceptions filepath
+         free haskeline optparse-applicative pretty-show prettyprinter
+         ref-tf relude repline serialise template-haskell time
        ];
        testHaskellDepends = [
-         base base16-bytestring bytestring containers data-fix deepseq Diff
-         directory exceptions filepath Glob hedgehog megaparsec mtl
-         neat-interpolation optparse-applicative pretty-show prettyprinter
-         process serialise split tasty tasty-hedgehog tasty-hunit tasty-th
-         template-haskell text time transformers unix unordered-containers
+         base containers data-fix Diff directory exceptions filepath Glob
+         hedgehog megaparsec neat-interpolation optparse-applicative
+         pretty-show prettyprinter process relude serialise split tasty
+         tasty-hedgehog tasty-hunit tasty-th template-haskell time unix
        ];
        benchmarkHaskellDepends = [
-         base base16-bytestring bytestring containers criterion data-fix
-         deepseq exceptions filepath mtl optparse-applicative serialise
-         template-haskell text time transformers unordered-containers
+         base criterion data-fix exceptions filepath optparse-applicative
+         relude serialise template-haskell time
        ];
        description = "Haskell implementation of the Nix language";
        license = lib.licenses.bsd3;
@@ -132531,16 +131290,16 @@ self: {
     ({ mkDerivation, algebraic-graphs, attoparsec, base
      , base16-bytestring, base64-bytestring, binary, bytestring, cereal
      , containers, cryptohash-md5, cryptohash-sha1, cryptohash-sha256
-     , cryptohash-sha512, directory, filepath, hashable, lifted-base
-     , monad-control, mtl, nix-derivation, process, saltine, tasty
-     , tasty-discover, tasty-golden, tasty-hspec, tasty-hunit
+     , cryptohash-sha512, directory, filepath, hashable, hspec
+     , lifted-base, monad-control, mtl, nix-derivation, process, saltine
+     , tasty, tasty-discover, tasty-golden, tasty-hspec, tasty-hunit
      , tasty-quickcheck, temporary, text, time, unix
      , unordered-containers, vector
      }:
      mkDerivation {
        pname = "hnix-store-core";
-       version = "0.4.2.0";
-       sha256 = "02i7vxhpaqwyjvd6w2raxjz7r0xxs37x5b6pq9rw6l1l0k18nx5i";
+       version = "0.4.3.0";
+       sha256 = "17l7198s3dzjx416nplinyghbqgignvpvxkww241gjv4p23izf77";
        libraryHaskellDepends = [
          algebraic-graphs attoparsec base base16-bytestring
          base64-bytestring bytestring cereal containers cryptohash-md5
@@ -132550,8 +131309,9 @@ self: {
        ];
        testHaskellDepends = [
          attoparsec base base16-bytestring base64-bytestring binary
-         bytestring containers directory filepath process tasty tasty-golden
-         tasty-hspec tasty-hunit tasty-quickcheck temporary text unix
+         bytestring containers directory filepath hspec process tasty
+         tasty-golden tasty-hspec tasty-hunit tasty-quickcheck temporary
+         text unix
        ];
        testToolDepends = [ tasty-discover ];
        description = "Core effects for interacting with the Nix store";
@@ -132565,8 +131325,8 @@ self: {
      }:
      mkDerivation {
        pname = "hnix-store-remote";
-       version = "0.4.2.0";
-       sha256 = "17v785dql4rl2yn1qdagvnyx8y9r3bd02npg51mfqhl49knd92fr";
+       version = "0.4.3.1";
+       sha256 = "1wp6z5f13fkgh3mdzr1zcqdvsx1j90l5isf671gsg43brsv4c2vl";
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers hnix-store-core mtl
          network nix-derivation text time unordered-containers
@@ -132591,6 +131351,8 @@ self: {
        ];
        description = "A reasonably fast and simple neural network library";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hnock" = callPackage
@@ -132661,7 +131423,6 @@ self: {
        description = "Log message normalisation tool producing structured JSON messages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ho-rewriting" = callPackage
@@ -132746,7 +131507,6 @@ self: {
        description = "A source code editor aiming for the convenience of use";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hobbes" = callPackage
@@ -132783,8 +131543,6 @@ self: {
        ];
        description = "A library for canonically representing terms with binding";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hocilib" = callPackage
@@ -132982,8 +131740,6 @@ self: {
        ];
        description = "Bindings to the Toggl.com REST API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hogre" = callPackage
@@ -133000,7 +131756,6 @@ self: {
        description = "Haskell binding to a subset of OGRE";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {OGRE = null; OgreMain = null; cgen-hs = null; grgen = null;};
 
   "hogre-examples" = callPackage
@@ -133017,7 +131772,6 @@ self: {
        description = "Examples for using Hogre";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {OgreMain = null;};
 
   "hois" = callPackage
@@ -133178,7 +131932,6 @@ self: {
        description = "Start your Haskell project with cabal, git and tests";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "homeomorphic" = callPackage
@@ -133206,7 +131959,6 @@ self: {
        description = "Haskell Offline Music Manipulation And Generation EDSL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hommage-ds" = callPackage
@@ -133322,6 +132074,9 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "Cross-platform interface to the PC speaker";
        license = lib.licenses.asl20;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "hoobuddy" = callPackage
@@ -133355,7 +132110,6 @@ self: {
        description = "Debugging by observing in place";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hood-off" = callPackage
@@ -133400,7 +132154,6 @@ self: {
        description = "A small, toy roguelike";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle" = callPackage
@@ -133422,7 +132175,6 @@ self: {
        description = "Executable for hoodle";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-builder" = callPackage
@@ -133440,7 +132192,6 @@ self: {
        description = "text builder for hoodle file format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-core" = callPackage
@@ -133474,7 +132225,6 @@ self: {
        description = "Core library for hoodle";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs.xorg) libX11; inherit (pkgs.xorg) libXi;};
 
   "hoodle-extra" = callPackage
@@ -133501,7 +132251,6 @@ self: {
        description = "extra hoodle tools";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-parser" = callPackage
@@ -133520,7 +132269,6 @@ self: {
        description = "Hoodle file parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-publish" = callPackage
@@ -133548,7 +132296,6 @@ self: {
        description = "publish hoodle files as a static web site";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-render" = callPackage
@@ -133570,7 +132317,6 @@ self: {
        description = "Hoodle file renderer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoodle-types" = callPackage
@@ -133739,7 +132485,6 @@ self: {
        description = "Haskell Media Server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hopencc" = callPackage
@@ -134008,7 +132753,6 @@ self: {
        description = "A language based on homotopy type theory with an interval type";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hora" = callPackage
@@ -134341,7 +133085,6 @@ self: {
        description = "Real-time heap graphing utility and profile stream server with a reusable graphing module";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) freeglut; inherit (pkgs) libGL; 
          inherit (pkgs) libGLU;};
 
@@ -134364,7 +133107,6 @@ self: {
        description = "A utility to visualise and compare heap profiles";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hp2html" = callPackage
@@ -134498,8 +133240,6 @@ self: {
        ];
        description = "hpack's dhalling";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpaco" = callPackage
@@ -134518,7 +133258,6 @@ self: {
        description = "Modular template compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpaco-lib" = callPackage
@@ -134537,7 +133276,6 @@ self: {
        description = "Modular template compiler library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpage" = callPackage
@@ -134560,7 +133298,6 @@ self: {
        description = "A scrapbook for Haskell developers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpapi" = callPackage
@@ -134573,6 +133310,9 @@ self: {
        librarySystemDepends = [ papi ];
        description = "Binding for the PAPI library";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {inherit (pkgs) papi;};
@@ -134603,7 +133343,6 @@ self: {
        description = "Haskell paste web site";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpasteit" = callPackage
@@ -134778,8 +133517,8 @@ self: {
        pname = "hpc-lcov";
        version = "1.0.1";
        sha256 = "01ws5y2vavgm7151dcabw3jwny1prrnzn5b04q76m5gc6a36wivl";
-       revision = "1";
-       editedCabalFile = "1jv81ywwzvr37zki8hjylj6gfhamq7fi7rpjyk1g0d06ac9ix0zp";
+       revision = "2";
+       editedCabalFile = "1sbd4wk977hh7jvy2ingmavkqx7fzicfa70figipa7lzdq3lg0ls";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers hpc ];
@@ -134840,7 +133579,6 @@ self: {
        description = "Tracer with AJAX interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hpdft" = callPackage
@@ -134996,8 +133734,8 @@ self: {
      }:
      mkDerivation {
        pname = "hpqtypes";
-       version = "1.9.1.0";
-       sha256 = "13q20ak0zakwvlc05y187iq2vpvdjx9dlmvmgvv2gjd263sqcgm2";
+       version = "1.9.1.1";
+       sha256 = "0s5dyia6v59vz7xk8m6gj0shdygk39pmks5yr7dlzksb8gqfgral";
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [
          aeson async base bytestring containers exceptions lifted-base
@@ -135028,6 +133766,8 @@ self: {
        pname = "hpqtypes-extras";
        version = "1.11.0.0";
        sha256 = "0574ma8b149rhpdk9mdg5sawhl3db4d0qxs5az31g83i93hf4mwq";
+       revision = "2";
+       editedCabalFile = "1n98wpppwd0gwchwfis525qac3808j1vnvb3vxziq1d9x088gqf6";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers cryptohash exceptions
          extra fields-json hpqtypes lifted-base log-base monad-control mtl
@@ -135041,7 +133781,6 @@ self: {
        description = "Extra utilities for hpqtypes library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hprotoc" = callPackage
@@ -135102,7 +133841,6 @@ self: {
        description = "Parse Google Protocol Buffer specifications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hprox" = callPackage
@@ -135138,7 +133876,6 @@ self: {
        description = "Haskell Postscript";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hps-cairo" = callPackage
@@ -135155,7 +133892,6 @@ self: {
        description = "Cairo rendering for the haskell postscript library";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hps-kmeans" = callPackage
@@ -135263,7 +133999,6 @@ self: {
        description = "Python language tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hquantlib" = callPackage
@@ -135294,7 +134029,6 @@ self: {
        description = "HQuantLib is a port of essencial parts of QuantLib to Haskell";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hquantlib-time" = callPackage
@@ -135339,7 +134073,6 @@ self: {
        description = "Basic utility for ranking a list of items";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hreader" = callPackage
@@ -135360,7 +134093,6 @@ self: {
        description = "Generalization of MonadReader and ReaderT using hset";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hreader-lens" = callPackage
@@ -135377,7 +134109,6 @@ self: {
        description = "Optics for hreader package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hreq-client" = callPackage
@@ -135407,7 +134138,6 @@ self: {
        description = "A Type dependent Highlevel HTTP client library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hreq-conduit" = callPackage
@@ -135433,7 +134163,6 @@ self: {
        description = "Conduit streaming support for Hreq";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hreq-core" = callPackage
@@ -135508,8 +134237,6 @@ self: {
        ];
        description = "A Riemann Client for Haskell";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hruby" = callPackage
@@ -135595,7 +134322,6 @@ self: {
        description = "A cryptohash-inspired library for blake2";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libb2;};
 
   "hs-brotli" = callPackage
@@ -135615,7 +134341,6 @@ self: {
        description = "Compression and decompression in the brotli format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {brotlidec = null; brotlienc = null;};
 
   "hs-captcha" = callPackage
@@ -135695,8 +134420,6 @@ self: {
        ];
        description = "Conllu validating parser and utils";
        license = lib.licenses.lgpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-di" = callPackage
@@ -135793,7 +134516,6 @@ self: {
        description = "Bindings to FFMPEG library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-fltk" = callPackage
@@ -135851,7 +134573,6 @@ self: {
        description = "Utility to generate haskell-names interface files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-gizapp" = callPackage
@@ -135881,8 +134602,6 @@ self: {
        testHaskellDepends = [ base haskell-src hspec ];
        description = "Haskell source code analyzer";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-ix" = callPackage
@@ -136127,7 +134846,6 @@ self: {
        description = "A library for Passbook pass creation & signing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-popen" = callPackage
@@ -136293,6 +135011,7 @@ self: {
        testHaskellDepends = [ base hashtables swisstable ];
        description = "Data.HashTable.Class instance definition for Data.HashTable.ST.Swiss";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hs-tags" = callPackage
@@ -136673,7 +135392,6 @@ self: {
        description = "Haskell bindings for PyAutoGUI, a library for automating user interaction";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsay" = callPackage
@@ -136726,7 +135444,6 @@ self: {
        description = "simple utility for rolling filesystem backups";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsbc" = callPackage
@@ -136785,7 +135502,6 @@ self: {
        description = "Backend for uploading benchmark data to CodeSpeed";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsbencher-fusion" = callPackage
@@ -136810,7 +135526,6 @@ self: {
        description = "Backend for uploading benchmark data to Google Fusion Tables";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc2hs" = callPackage
@@ -136869,7 +135584,6 @@ self: {
        description = "Haskell SuperCollider Auditor";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-cairo" = callPackage
@@ -136883,7 +135597,6 @@ self: {
        description = "haskell supercollider cairo drawing";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-data" = callPackage
@@ -136902,7 +135615,6 @@ self: {
        description = "haskell supercollider data";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-db" = callPackage
@@ -136916,7 +135628,6 @@ self: {
        description = "Haskell SuperCollider Unit Generator Database";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-dot" = callPackage
@@ -136930,7 +135641,6 @@ self: {
        description = "haskell supercollider graph drawing";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-forth" = callPackage
@@ -136951,7 +135661,6 @@ self: {
        description = "FORTH SUPERCOLLIDER";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-graphs" = callPackage
@@ -136977,7 +135686,6 @@ self: {
        description = "Haskell SuperCollider Graphs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-lang" = callPackage
@@ -136999,7 +135707,6 @@ self: {
        description = "Haskell SuperCollider Language";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-lisp" = callPackage
@@ -137020,7 +135727,6 @@ self: {
        description = "LISP SUPERCOLLIDER";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-plot" = callPackage
@@ -137039,7 +135745,6 @@ self: {
        description = "Haskell SuperCollider Plotting";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-process" = callPackage
@@ -137060,7 +135765,6 @@ self: {
        description = "Create and control scsynth processes";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-rec" = callPackage
@@ -137074,7 +135778,6 @@ self: {
        description = "Haskell SuperCollider Record Variants";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-rw" = callPackage
@@ -137121,7 +135824,6 @@ self: {
        description = "SuperCollider server resource management and synchronization";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-sf" = callPackage
@@ -137153,7 +135855,6 @@ self: {
        description = "Haskell SuperCollider SoundFile";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-unsafe" = callPackage
@@ -137167,7 +135868,6 @@ self: {
        description = "Unsafe Haskell SuperCollider";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsc3-utils" = callPackage
@@ -137190,7 +135890,6 @@ self: {
        description = "Haskell SuperCollider Utilities";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hscaffold" = callPackage
@@ -137252,7 +135951,6 @@ self: {
        description = "cassandra database interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hscd" = callPackage
@@ -137417,7 +136115,6 @@ self: {
        description = "cscope like browser for Haskell code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hscrtmpl" = callPackage
@@ -137528,7 +136225,6 @@ self: {
        description = "Haskell development library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsdif" = callPackage
@@ -137654,8 +136350,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsendxmpp";
-       version = "0.1.2.5";
-       sha256 = "0wyfcsc0vjyx87r5dv51frfligf4d7v0n1m7967vg4d6jkw2zxd9";
+       version = "0.1.2.6";
+       sha256 = "1w3jm8lsll65i57iqlspw1vzvw5rr4q9qwarq896s0vr8kz68irh";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -137664,8 +136360,6 @@ self: {
        ];
        description = "sendxmpp clone, sending XMPP messages via CLI";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsenv" = callPackage
@@ -137714,7 +136408,6 @@ self: {
        description = "Primitive list with elements of unique types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsexif" = callPackage
@@ -137745,7 +136438,6 @@ self: {
        description = "A small and ugly library that emulates the output of the puppet facter program";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsfcsh" = callPackage
@@ -137978,8 +136670,6 @@ self: {
        ];
        description = "Inspect Haskell source files";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsinspect-lsp" = callPackage
@@ -138186,7 +136876,6 @@ self: {
        description = "A library to work with, or as, a logstash server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hslua" = callPackage
@@ -138466,7 +137155,6 @@ self: {
        description = "Nock 5K interpreter";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsnoise" = callPackage
@@ -138680,8 +137368,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.7.9";
-       sha256 = "03k8djbzkl47x1kgsplbjjrwx8qqdb31zg9aw0c6ii3d8r49gkyn";
+       version = "2.7.10";
+       sha256 = "0z0lwrmrqkglr78n6k2c36n4h68142bh785ys0x4jaibjshvs6rw";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -138689,14 +137377,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hspec_2_7_10" = callPackage
+  "hspec_2_8_2" = callPackage
     ({ mkDerivation, base, hspec-core, hspec-discover
      , hspec-expectations, QuickCheck
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.7.10";
-       sha256 = "0z0lwrmrqkglr78n6k2c36n4h68142bh785ys0x4jaibjshvs6rw";
+       version = "2.8.2";
+       sha256 = "1s03c1928ndl8bqi3n9fb8a5adr0lycl9qs3x1i6aprzr851myh5";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -138768,8 +137456,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.7.9";
-       sha256 = "0lqqvrdya7jszdxkzjnwd5g02w1ggmlfkh67bpcmzch6h0v609yj";
+       version = "2.7.10";
+       sha256 = "12k9yp5gznrda449ir60d5wv3xl7nnyffkb5mhfc0svw9f8lxlv1";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -138787,7 +137475,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hspec-core_2_7_10" = callPackage
+  "hspec-core_2_8_2" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
      , deepseq, directory, filepath, hspec-expectations, hspec-meta
      , HUnit, process, QuickCheck, quickcheck-io, random, setenv
@@ -138795,8 +137483,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.7.10";
-       sha256 = "12k9yp5gznrda449ir60d5wv3xl7nnyffkb5mhfc0svw9f8lxlv1";
+       version = "2.8.2";
+       sha256 = "0id4c70hq46y2s623y4zsj9pycqp90a3ig991shrhxxd6836c4cx";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -138838,8 +137526,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.7.9";
-       sha256 = "1zr6h8r8ggi4482hnx0p2vsrkirfjimq8zy9yfiiyn5mkcqzxl4v";
+       version = "2.7.10";
+       sha256 = "13yzvd3b679skvs1insk4s0wc4zvmz6hs38kc8q0j6vzqq06smqa";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -138852,13 +137540,13 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hspec-discover_2_7_10" = callPackage
+  "hspec-discover_2_8_2" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.7.10";
-       sha256 = "13yzvd3b679skvs1insk4s0wc4zvmz6hs38kc8q0j6vzqq06smqa";
+       version = "2.8.2";
+       sha256 = "0bmdph9q4rg5rgr6s65h7si2l5rxyyqv80j5rri6zb4d1n9ih6hs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -138890,8 +137578,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-expectations-json";
-       version = "1.0.0.3";
-       sha256 = "06k2gk289v6xxzj5mp5nsz6ixqlh2z3zx8z1jlxza35pkzkv34x7";
+       version = "1.0.0.4";
+       sha256 = "1m244ypfr4cg2jll3ackn9khm8zwdp1yp7hf4b24bfzws0qmb1b7";
        libraryHaskellDepends = [
          aeson aeson-pretty base Diff HUnit scientific text
          unordered-containers vector
@@ -138899,8 +137587,6 @@ self: {
        testHaskellDepends = [ aeson-qq base hspec ];
        description = "Hspec expectations for JSON Values";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-expectations-lens" = callPackage
@@ -138962,7 +137648,6 @@ self: {
        description = "hspec-expectations with pretty printing on failure";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-expectations-pretty-diff" = callPackage
@@ -139012,6 +137697,24 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "hspec-golden_0_2_0_0" = callPackage
+    ({ mkDerivation, base, directory, filepath, hspec, hspec-core
+     , optparse-applicative, silently
+     }:
+     mkDerivation {
+       pname = "hspec-golden";
+       version = "0.2.0.0";
+       sha256 = "0sg9f73x2i1g6n1pjcvb1zx4nx17w5drdrrhzp2z3lsxc9yxs8nk";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base directory filepath hspec-core ];
+       executableHaskellDepends = [ base directory optparse-applicative ];
+       testHaskellDepends = [ base directory hspec hspec-core silently ];
+       description = "Golden tests for hspec";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hspec-golden-aeson" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, directory
      , filepath, hspec, hspec-core, QuickCheck, quickcheck-arbitrary-adt
@@ -139069,8 +137772,6 @@ self: {
        ];
        description = "Initial project template from stack";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-hedgehog" = callPackage
@@ -139111,8 +137812,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-junit-formatter";
-       version = "1.0.0.2";
-       sha256 = "19mmzzjg041sqv22w66cls0mcypdamsqx43n00hnn2gqk0jkhhll";
+       version = "1.0.0.4";
+       sha256 = "1fyxx847d37ib0dhdn4n7y6sk7d0xw1zcind39m3hmbvxvx3j648";
        libraryHaskellDepends = [
          base conduit directory exceptions hashable hspec hspec-core
          resourcet temporary text xml-conduit xml-types
@@ -139121,6 +137822,24 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "hspec-junit-formatter_1_0_1_0" = callPackage
+    ({ mkDerivation, base, conduit, containers, directory, exceptions
+     , filepath, hspec, hspec-core, text, time, xml-conduit, xml-types
+     }:
+     mkDerivation {
+       pname = "hspec-junit-formatter";
+       version = "1.0.1.0";
+       sha256 = "1n0hv2xhplpg6fhy8dxzp63k4b7mfzm1g92wglrsqc2lsvnx09ky";
+       libraryHaskellDepends = [
+         base conduit containers directory exceptions filepath hspec-core
+         text time xml-conduit xml-types
+       ];
+       testHaskellDepends = [ base hspec ];
+       description = "A JUnit XML runner/formatter for hspec";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hspec-laws" = callPackage
     ({ mkDerivation, base, hspec, markdown-unlit, QuickCheck }:
      mkDerivation {
@@ -139226,8 +137945,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-need-env";
-       version = "0.1.0.6";
-       sha256 = "0drbjdm6wld2bnfmv2jqhw4ija9v85pa4p5aq9qgh1gs6c5d50bq";
+       version = "0.1.0.7";
+       sha256 = "068cv4n3j5x0zdjrhrk2acc17gr2rvr9n5d4znzmmfbmcrpqhwkp";
        libraryHaskellDepends = [ base hspec-core hspec-expectations ];
        testHaskellDepends = [ base hspec hspec-core setenv transformers ];
        testToolDepends = [ hspec-discover ];
@@ -139264,7 +137983,6 @@ self: {
        description = "Helpers for creating database tests with hspec and pg-transact";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-server" = callPackage
@@ -139313,7 +138031,6 @@ self: {
        description = "Add an hspec test-suite in one command";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-shouldbe" = callPackage
@@ -139326,7 +138043,6 @@ self: {
        description = "Convenience wrapper and utilities for hspec";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-slow" = callPackage
@@ -139468,7 +138184,6 @@ self: {
        description = "Hspec convenience functions for use with test-sandbox";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-wai" = callPackage
@@ -139579,7 +138294,6 @@ self: {
        description = "Spec for testing properties for variant types";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspkcs11" = callPackage
@@ -139646,6 +138360,29 @@ self: {
        broken = true;
      }) {};
 
+  "hspretty" = callPackage
+    ({ mkDerivation, ansi-terminal, base, bytestring, directory
+     , doctest, optparse-applicative, ormolu, path, path-io, process
+     , streamly, text, text-short, unliftio, void
+     }:
+     mkDerivation {
+       pname = "hspretty";
+       version = "0.1.0.0";
+       sha256 = "11mbrr785j6pa02zil705sy67cdvjhwq9l927mm74barf9ph776r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal base bytestring directory optparse-applicative ormolu
+         path path-io process streamly text text-short unliftio void
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base doctest ];
+       description = "My opinionated Haskell project formatter";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hsprocess" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, easy-file
      , filepath, hint, hspec, HUnit, MonadCatchIO-mtl, process
@@ -139670,7 +138407,6 @@ self: {
        description = "The Haskell Stream Processor command line utility";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsql" = callPackage
@@ -139699,7 +138435,6 @@ self: {
        description = "MySQL driver for HSQL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {mysqlclient = null;};
 
   "hsql-odbc" = callPackage
@@ -139713,7 +138448,6 @@ self: {
        description = "A Haskell Interface to ODBC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) unixODBC;};
 
   "hsql-postgresql" = callPackage
@@ -139727,7 +138461,6 @@ self: {
        description = "A Haskell Interface to PostgreSQL via the PQ library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) postgresql;};
 
   "hsql-sqlite3" = callPackage
@@ -139741,7 +138474,6 @@ self: {
        description = "SQLite3 driver for HSQL";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) sqlite;};
 
   "hsqml" = callPackage
@@ -139906,7 +138638,6 @@ self: {
        description = "Access to the Readability API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsrelp" = callPackage
@@ -140030,7 +138761,6 @@ self: {
        description = "hssqlppp extras which need template-haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hstar" = callPackage
@@ -140054,7 +138784,6 @@ self: {
        description = "Haskell version of tar CLI utility";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hstatistics" = callPackage
@@ -140187,7 +138916,6 @@ self: {
        description = "A Tox protocol implementation in Haskell";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hstradeking" = callPackage
@@ -140213,7 +138941,6 @@ self: {
        description = "Tradeking API bindings for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hstyle" = callPackage
@@ -140254,7 +138981,6 @@ self: {
        description = "A two player abstract strategy game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsubconvert" = callPackage
@@ -140277,7 +139003,6 @@ self: {
        description = "One-time, faithful conversion of Subversion repositories to Git";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsudoku" = callPackage
@@ -140340,7 +139065,6 @@ self: {
        description = "embedding prolog in haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) ncurses; inherit (pkgs) readline; 
          swipl = null;};
 
@@ -140373,7 +139097,6 @@ self: {
        description = "hsp+jmacro support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsx-xhtml" = callPackage
@@ -140386,7 +139109,6 @@ self: {
        description = "XHTML utilities to use together with HSX";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hsx2hs" = callPackage
@@ -140519,8 +139241,6 @@ self: {
        ];
        description = "A Haskell98 parsing tags program similar to ctags";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "htar" = callPackage
@@ -141026,7 +139746,6 @@ self: {
        description = "Haskell Music Typesetting";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "htsn" = callPackage
@@ -141262,7 +139981,6 @@ self: {
        description = "HTTP authorization (both basic and digest) done right";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http-client-conduit" = callPackage
@@ -141483,14 +140201,14 @@ self: {
 
   "http-client-websockets" = callPackage
     ({ mkDerivation, base, bytestring, hspec, http-client
-     , http-client-tls, network-uri, utf8-string, websockets
+     , http-client-tls, network-uri, text, websockets
      }:
      mkDerivation {
        pname = "http-client-websockets";
-       version = "0.1.1.1";
-       sha256 = "0b5kvyrfhhj7c5ys8ccxwv6prhb6sj0ycinzbk1yrwnd3wrmzk78";
+       version = "0.1.1.2";
+       sha256 = "0g2zhj0fzhynyls5rxpzh50hxjsygx7037rw2h79ihca10crsqgm";
        libraryHaskellDepends = [
-         base bytestring http-client network-uri utf8-string websockets
+         base bytestring http-client network-uri text websockets
        ];
        testHaskellDepends = [
          base bytestring hspec http-client-tls network-uri websockets
@@ -141714,7 +140432,6 @@ self: {
        description = "HTTP client package with enumerator interface and HTTPS support. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http-grammar" = callPackage
@@ -141750,7 +140467,6 @@ self: {
        description = "HTTP and WebSocket client based on io-streams";
        license = "BSD-3-Clause AND GPL-2.0-or-later";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http-kinder" = callPackage
@@ -142104,8 +140820,6 @@ self: {
        ];
        description = "RFC7807 style response messages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http-server" = callPackage
@@ -142241,37 +140955,6 @@ self: {
      }) {};
 
   "http2" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, array, base
-     , base16-bytestring, bytestring, case-insensitive, containers
-     , directory, doctest, filepath, gauge, Glob, heaps, hspec
-     , http-types, mwc-random, network, network-byte-order, psqueues
-     , stm, text, time-manager, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "http2";
-       version = "2.0.6";
-       sha256 = "17m1avrppiz8i6qwjlgg77ha88sx8f8vvfa57z369aszhld6nx9a";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         array base bytestring case-insensitive containers http-types
-         network network-byte-order psqueues stm time-manager
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty array base base16-bytestring bytestring
-         case-insensitive containers directory doctest filepath Glob hspec
-         http-types network network-byte-order psqueues stm text
-         time-manager unordered-containers vector
-       ];
-       benchmarkHaskellDepends = [
-         array base bytestring case-insensitive containers gauge heaps
-         mwc-random network-byte-order psqueues stm
-       ];
-       description = "HTTP/2 library";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "http2_3_0_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, async, base
      , base16-bytestring, bytestring, case-insensitive, containers
      , cryptonite, directory, filepath, gauge, Glob, heaps, hspec
@@ -142303,7 +140986,6 @@ self: {
        ];
        description = "HTTP/2 library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "http2-client" = callPackage
@@ -142322,6 +141004,8 @@ self: {
        testHaskellDepends = [ base ];
        description = "A native HTTP2 client library";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "http2-client-exe" = callPackage
@@ -142341,6 +141025,7 @@ self: {
        ];
        description = "A command-line http2 client";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "http2-client-grpc" = callPackage
@@ -142361,7 +141046,6 @@ self: {
        description = "Implement gRPC-over-HTTP2 clients";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http2-grpc-proto-lens" = callPackage
@@ -142398,8 +141082,6 @@ self: {
        ];
        description = "Encoders based on `proto3-wire` for gRPC over HTTP2";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "http2-grpc-types" = callPackage
@@ -142451,7 +141133,6 @@ self: {
        description = "High-level access to HTTPS Everywhere rulesets";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "https-everywhere-rules-raw" = callPackage
@@ -142467,7 +141148,6 @@ self: {
        description = "Low-level (i.e. XML) access to HTTPS Everywhere rulesets.";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "httpspec" = callPackage
@@ -142486,7 +141166,6 @@ self: {
        description = "Specification of HTTP request/response generators and parsers";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "htune" = callPackage
@@ -142686,7 +141365,6 @@ self: {
        description = "Hugs Front-end to Yhc Core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hulk" = callPackage
@@ -142714,7 +141392,6 @@ self: {
        description = "IRC server written in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hum" = callPackage
@@ -142877,7 +141554,6 @@ self: {
        description = "A GUI testrunner for HUnit";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hunit-parsec" = callPackage
@@ -142922,7 +141598,6 @@ self: {
        description = "Unpacker tool with DWIM";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hunspell-hs" = callPackage
@@ -142973,7 +141648,6 @@ self: {
        description = "A search and indexing engine";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hunt-server" = callPackage
@@ -142998,7 +141672,6 @@ self: {
        description = "A search and indexing engine server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hunt-server-cli" = callPackage
@@ -143070,7 +141743,6 @@ self: {
        description = "Extract function names from Windows DLLs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hurl" = callPackage
@@ -143095,8 +141767,6 @@ self: {
        executableHaskellDepends = [ base directory network-uri ];
        description = "Haskell URL resolver";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hurriyet" = callPackage
@@ -143141,8 +141811,6 @@ self: {
        ];
        description = "R5RS Scheme interpreter, compiler, and library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "husk-scheme-libs" = callPackage
@@ -143158,8 +141826,6 @@ self: {
        ];
        description = "Extra libraries for the husk Scheme platform";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "husky" = callPackage
@@ -143178,7 +141844,6 @@ self: {
        description = "A simple command line calculator";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hutton" = callPackage
@@ -143228,7 +141893,6 @@ self: {
        description = "Fuzzy logic library with support for T1, IT2, GT2";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hvect" = callPackage
@@ -143249,8 +141913,8 @@ self: {
      }:
      mkDerivation {
        pname = "hvega";
-       version = "0.11.0.0";
-       sha256 = "1lz5f04yi97wkqhyxvav262ayyvvl96xrgvgzyk1ca1g299dw866";
+       version = "0.11.0.1";
+       sha256 = "13w2637ylmmwv4kylf1rc2rvd85281a50p82x3888bc1cnzv536x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ aeson base text unordered-containers ];
@@ -143318,7 +141982,6 @@ self: {
        description = "Demo library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-aws-sqs-conduit" = callPackage
@@ -143335,8 +141998,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "AWS SQS conduit";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-balancedparens" = callPackage
@@ -143524,7 +142185,6 @@ self: {
        description = "Unbelievably fast streaming DSV file parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-dump" = callPackage
@@ -143801,7 +142461,6 @@ self: {
        description = "Memory efficient JSON parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-json-lens" = callPackage
@@ -143832,7 +142491,6 @@ self: {
        description = "Lens for hw-json";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-json-simd" = callPackage
@@ -143899,7 +142557,6 @@ self: {
        description = "Memory efficient JSON parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-json-standard-cursor" = callPackage
@@ -143940,7 +142597,6 @@ self: {
        description = "Memory efficient JSON parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-kafka-avro" = callPackage
@@ -143968,7 +142624,6 @@ self: {
        description = "Avro support for Kafka infrastructure";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-kafka-client" = callPackage
@@ -144124,8 +142779,8 @@ self: {
        pname = "hw-prim";
        version = "0.6.3.0";
        sha256 = "0gqn7s0ki9x951n5whyh0pkcbbqz4kpcn80xxpsv1c0v34946xv7";
-       revision = "1";
-       editedCabalFile = "1z3fcff42xq0j430q72ncjv6zc0zvzzq94ifh06m342z0x8imv83";
+       revision = "2";
+       editedCabalFile = "14x1bijg1d8jdh963rxrlwzlqa1p1vh0bc7hjdysk8dzbrc7fbmv";
        libraryHaskellDepends = [
          base bytestring deepseq ghc-prim mmap transformers unliftio-core
          vector
@@ -144161,8 +142816,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion vector ];
        description = "Primitive support for bit manipulation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-rankselect" = callPackage
@@ -144295,7 +142948,6 @@ self: {
        description = "SIMD library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-streams" = callPackage
@@ -144412,7 +143064,6 @@ self: {
        description = "Supports IO on URIs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hw-vector" = callPackage
@@ -144594,7 +143245,6 @@ self: {
        description = "Library for sending email with Amazon's SES and hworker";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hwormhole" = callPackage
@@ -144628,7 +143278,6 @@ self: {
        description = "magic-wormhole client";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hws" = callPackage
@@ -144648,7 +143297,6 @@ self: {
        description = "Simple Haskell Web Server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hwsl2" = callPackage
@@ -144682,7 +143330,6 @@ self: {
        description = "A hashed byte-vector based on algebraic hashes and finger trees";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hwsl2-reducers" = callPackage
@@ -144697,7 +143344,6 @@ self: {
        description = "Semigroup and Reducer instances for Data.Hash.SL2";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hx" = callPackage
@@ -144730,7 +143376,6 @@ self: {
        description = "Haskell XMPP (Jabber Client) Command Line Interface (CLI)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hxournal" = callPackage
@@ -144758,7 +143403,6 @@ self: {
        description = "A pen notetaking program written in haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hxt" = callPackage
@@ -144810,6 +143454,7 @@ self: {
        description = "Cache for HXT XML Documents and other binary data";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hxt-charproperties" = callPackage
@@ -145021,7 +143666,6 @@ self: {
        description = "Helper functions for HXT";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hxweb" = callPackage
@@ -145034,7 +143678,6 @@ self: {
        description = "Minimal webframework using fastcgi, libxml2 and libxslt";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyahtzee" = callPackage
@@ -145048,8 +143691,6 @@ self: {
        executableHaskellDepends = [ base containers HUnit random ];
        description = "A Yahtzee game implementation in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyakko" = callPackage
@@ -145090,7 +143731,6 @@ self: {
        description = "A implementation of a type-checker for Lambda-H";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hybrid-vectors" = callPackage
@@ -145193,7 +143833,6 @@ self: {
        description = "Hydrogen Data";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-cli-args" = callPackage
@@ -145210,7 +143849,6 @@ self: {
        description = "Hydrogen Command Line Arguments Parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-data" = callPackage
@@ -145223,7 +143861,6 @@ self: {
        description = "Hydrogen Data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-multimap" = callPackage
@@ -145251,7 +143888,6 @@ self: {
        description = "Hydrogen Parsing Utilities";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-prelude" = callPackage
@@ -145272,7 +143908,6 @@ self: {
        description = "Hydrogen Prelude";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-prelude-parsec" = callPackage
@@ -145285,7 +143920,6 @@ self: {
        description = "Hydrogen Prelude /w Parsec";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-syntax" = callPackage
@@ -145303,7 +143937,6 @@ self: {
        description = "Hydrogen Syntax";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-util" = callPackage
@@ -145319,7 +143952,6 @@ self: {
        description = "Hydrogen Tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hydrogen-version" = callPackage
@@ -145349,7 +143981,6 @@ self: {
        description = "Simple web application server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hylide" = callPackage
@@ -145416,7 +144047,6 @@ self: {
        description = "Tableau based theorem prover for hybrid logics";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyloutils" = callPackage
@@ -145433,15 +144063,14 @@ self: {
        description = "Very small programs for hybrid logics";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyper" = callPackage
     ({ mkDerivation, base, blaze-html, deepseq, text }:
      mkDerivation {
        pname = "hyper";
-       version = "0.2.1.0";
-       sha256 = "14vl52v4qshdyp45qrg8ii8xzpi6n05qdgz3ri59wis8hdw1v06z";
+       version = "0.2.1.1";
+       sha256 = "14p7r57g75ny8l9h4ilbm6mhdsfiysfs3rd56300dl0jkpgrh8r2";
        libraryHaskellDepends = [ base blaze-html deepseq text ];
        description = "Display class for the HyperHaskell graphical Haskell interpreter";
        license = lib.licenses.bsd3;
@@ -145453,15 +144082,13 @@ self: {
      }:
      mkDerivation {
        pname = "hyper-extra";
-       version = "0.2.0.0";
-       sha256 = "1zcbs9cpr6rfzhsqrv867j79gb3521pyrl32qbp5jwqiy1iyddm5";
+       version = "0.2.0.1";
+       sha256 = "13ipxwhxrndl505zzxcq7gz874l0r2g0ma1yhq14bihvlwh3qr8d";
        libraryHaskellDepends = [
          base diagrams-lib diagrams-svg hyper QuickCheck svg-builder text
        ];
        description = "Display instances for the HyperHaskell graphical Haskell interpreter";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyper-haskell-server" = callPackage
@@ -145481,8 +144108,6 @@ self: {
        ];
        description = "Server back-end for the HyperHaskell graphical Haskell interpreter";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyperdrive" = callPackage
@@ -145601,7 +144226,6 @@ self: {
        description = "A thin wrapper for the Hyperpublic API";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hyphenate" = callPackage
@@ -145766,8 +144390,6 @@ self: {
        testSystemDepends = [ zookeeper_mt ];
        description = "Haskell client library for Apache Zookeeper";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zookeeper_mt;};
 
   "hzulip" = callPackage
@@ -145992,7 +144614,6 @@ self: {
        description = "Lattice iCE40 Primitive IP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "icepeak" = callPackage
@@ -146038,7 +144659,8 @@ self: {
        ];
        description = "A fast JSON document store with push notification support";
        license = lib.licenses.bsd3;
-       maintainers = with lib.maintainers; [ rkrzr ];
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "icfpc2020-galaxy" = callPackage
@@ -146137,7 +144759,6 @@ self: {
        description = "An IDE backend library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ide-backend-common" = callPackage
@@ -146163,7 +144784,6 @@ self: {
        description = "Shared library used be ide-backend and ide-backend-server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ide-backend-rts" = callPackage
@@ -146199,7 +144819,6 @@ self: {
        description = "An IDE backend server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ideas" = callPackage
@@ -146239,7 +144858,6 @@ self: {
        description = "Interactive domain reasoner for logic and mathematics";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ideas-math-types" = callPackage
@@ -146254,7 +144872,6 @@ self: {
        description = "Common types for mathematical domain reasoners";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ideas-statistics" = callPackage
@@ -146271,7 +144888,6 @@ self: {
        description = "Interactive domain reasoner for statistics";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "idempotent" = callPackage
@@ -146664,7 +145280,6 @@ self: {
        description = "Bindings for the Gtk/OS X integration library";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {ige-mac-integration = null;};
 
   "ignore" = callPackage
@@ -146722,25 +145337,25 @@ self: {
 
   "ihaskell" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring, cereal
-     , cmdargs, containers, directory, filepath, ghc, ghc-boot
-     , ghc-parser, ghc-paths, haskeline, haskell-src-exts, here, hlint
-     , hspec, hspec-contrib, http-client, http-client-tls, HUnit
+     , cmdargs, containers, directory, exceptions, filepath, ghc
+     , ghc-boot, ghc-parser, ghc-paths, haskeline, here, hlint, hspec
+     , hspec-contrib, http-client, http-client-tls, HUnit
      , ipython-kernel, mtl, parsec, process, random, raw-strings-qq
      , setenv, shelly, split, stm, strict, text, time, transformers
      , unix, unordered-containers, utf8-string, vector
      }:
      mkDerivation {
        pname = "ihaskell";
-       version = "0.10.1.2";
-       sha256 = "1gs2j0qgxzf346nlnq0zx12yj528ykxia5r3rlldpf6f01zs89v8";
+       version = "0.10.2.0";
+       sha256 = "061gpwclcykrs4pqhsb96hrbwnpmq0q6fx9701wk684v01xjfddk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring cereal cmdargs containers
-         directory filepath ghc ghc-boot ghc-parser ghc-paths haskeline
-         haskell-src-exts hlint http-client http-client-tls ipython-kernel
-         mtl parsec process random shelly split stm strict text time
+         directory exceptions filepath ghc ghc-boot ghc-parser ghc-paths
+         haskeline hlint http-client http-client-tls ipython-kernel mtl
+         parsec process random shelly split stm strict text time
          transformers unix unordered-containers utf8-string vector
        ];
        executableHaskellDepends = [
@@ -146753,8 +145368,6 @@ self: {
        ];
        description = "A Haskell backend kernel for the IPython project";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-aeson" = callPackage
@@ -146770,8 +145383,6 @@ self: {
        ];
        description = "IHaskell display instances for Aeson";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-basic" = callPackage
@@ -146783,8 +145394,6 @@ self: {
        libraryHaskellDepends = [ base ihaskell ];
        description = "IHaskell display instances for basic types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-blaze" = callPackage
@@ -146796,8 +145405,6 @@ self: {
        libraryHaskellDepends = [ base blaze-html blaze-markup ihaskell ];
        description = "IHaskell display instances for blaze-html types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-charts" = callPackage
@@ -146814,8 +145421,6 @@ self: {
        ];
        description = "IHaskell display instances for charts types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-diagrams" = callPackage
@@ -146832,8 +145437,6 @@ self: {
        ];
        description = "IHaskell display instances for diagram types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-display" = callPackage
@@ -146845,8 +145448,6 @@ self: {
        libraryHaskellDepends = [ base classy-prelude ihaskell ];
        description = "IHaskell display instances for basic types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-gnuplot" = callPackage
@@ -146858,8 +145459,6 @@ self: {
        libraryHaskellDepends = [ base bytestring gnuplot ihaskell ];
        description = "IHaskell display instance for Gnuplot (from gnuplot package)";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-graphviz" = callPackage
@@ -146871,8 +145470,6 @@ self: {
        libraryHaskellDepends = [ base bytestring ihaskell process ];
        description = "IHaskell display instance for GraphViz (external binary)";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-hatex" = callPackage
@@ -146884,8 +145481,6 @@ self: {
        libraryHaskellDepends = [ base HaTeX ihaskell text ];
        description = "IHaskell display instances for hatex";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-hvega" = callPackage
@@ -146897,8 +145492,6 @@ self: {
        libraryHaskellDepends = [ aeson base hvega ihaskell text ];
        description = "IHaskell display instance for hvega types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-inline-r" = callPackage
@@ -146916,8 +145509,6 @@ self: {
        ];
        description = "Embed R quasiquotes and plots in IHaskell notebooks";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-juicypixels" = callPackage
@@ -146932,8 +145523,6 @@ self: {
        ];
        description = "IHaskell - IHaskellDisplay instances of the image types of the JuicyPixels package";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-magic" = callPackage
@@ -146950,8 +145539,6 @@ self: {
        ];
        description = "IHaskell display instances for bytestrings";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-parsec" = callPackage
@@ -146980,8 +145567,6 @@ self: {
        libraryHaskellDepends = [ base bytestring hmatrix ihaskell plot ];
        description = "IHaskell display instance for Plot (from plot package)";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-rlangqq" = callPackage
@@ -147000,7 +145585,6 @@ self: {
        description = "a rDisp quasiquote to show plots from Rlang-QQ in IHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ihaskell-widgets" = callPackage
@@ -147052,7 +145636,6 @@ self: {
        description = "Incremental HTTP iteratee";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ilist" = callPackage
@@ -147209,7 +145792,6 @@ self: {
        description = "An efficient IMAP client library, with SSL and streaming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imapget" = callPackage
@@ -147251,7 +145833,6 @@ self: {
        description = "Minimalistic reference manager";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imgur" = callPackage
@@ -147290,7 +145871,6 @@ self: {
        description = "Uploader for Imgur";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imj-animation" = callPackage
@@ -147304,7 +145884,6 @@ self: {
        description = "Animation Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imj-base" = callPackage
@@ -147330,7 +145909,6 @@ self: {
        description = "Game engine with geometry, easing, animated text, delta rendering";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imj-game-hamazed" = callPackage
@@ -147352,7 +145930,6 @@ self: {
        description = "A game with flying numbers and 8-bit color animations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imj-measure-stdout" = callPackage
@@ -147369,7 +145946,6 @@ self: {
        description = "An application to determine the maximum capacity of stdout buffer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imj-prelude" = callPackage
@@ -147398,8 +145974,8 @@ self: {
      }:
      mkDerivation {
        pname = "imm";
-       version = "2.1.0.0";
-       sha256 = "01jpwxqp2c5ih9cw38w4j7x1dff0z7z1d43yx1rri83w8shpjbl3";
+       version = "2.1.1.0";
+       sha256 = "1w3kypakf8zqz8r44r9bx0z5v4wxvhnf446jzarawn9fg7yigcqn";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -147422,7 +145998,6 @@ self: {
        description = "Execute arbitrary actions for each item from RSS/Atom feeds";
        license = lib.licenses.cc0;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "immortal_0_2_2_1" = callPackage
@@ -147510,7 +146085,6 @@ self: {
        description = "Multi-platform parser analyzer and generator";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imperative-edsl" = callPackage
@@ -147555,7 +146129,6 @@ self: {
        description = "Deep embedding of VHDL programs with code generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "impl" = callPackage
@@ -147707,7 +146280,6 @@ self: {
        description = "Tool for haskell imports refactoring";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "imports" = callPackage
@@ -147806,7 +146378,6 @@ self: {
        description = "An imperative, verifiable programming language for high assurance applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "impure-containers" = callPackage
@@ -147916,7 +146487,6 @@ self: {
        description = "A type-checker for Haskell with integer constraints";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "inchworm" = callPackage
@@ -147985,7 +146555,6 @@ self: {
        description = "Incremental computing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "incremental-maps" = callPackage
@@ -148010,7 +146579,6 @@ self: {
        description = "Package for doing incremental computations on maps";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "incremental-parser" = callPackage
@@ -148065,7 +146633,6 @@ self: {
        description = "type classes for incremental updates to data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indent" = callPackage
@@ -148097,7 +146664,6 @@ self: {
        description = "Indentation sensitive parsing combinators for Parsec and Trifecta";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indentation-core" = callPackage
@@ -148126,7 +146692,6 @@ self: {
        description = "Indentation sensitive parsing combinators for Parsec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indentation-trifecta" = callPackage
@@ -148144,7 +146709,6 @@ self: {
        description = "Indentation sensitive parsing combinators for Trifecta";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indentparser" = callPackage
@@ -148172,8 +146736,6 @@ self: {
        testHaskellDepends = [ base mtl parsec tasty tasty-hunit ];
        description = "indentation sensitive parser-combinators for parsec";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "index-core" = callPackage
@@ -148186,6 +146748,7 @@ self: {
        description = "Indexed Types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -148209,7 +146772,6 @@ self: {
        description = "Tools for entity indexation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indexed" = callPackage
@@ -148398,7 +146960,6 @@ self: {
        description = "A collection of implementations of IndieWeb algorithms";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "indigo" = callPackage
@@ -148507,8 +147068,6 @@ self: {
        ];
        description = "The Infernal Machine - An AWS Lambda Custom Runtime for Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "infernu" = callPackage
@@ -148530,7 +147089,6 @@ self: {
        description = "Type inference and checker for JavaScript (experimental)";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "infinite-search" = callPackage
@@ -148882,6 +147440,8 @@ self: {
        pname = "inline-java";
        version = "0.10.0";
        sha256 = "0rs2rw21y0yc0h4c1rz25qblk39flkg19fwjz87s6l0ly1hvcrm5";
+       revision = "1";
+       editedCabalFile = "07qpgqy66zpmg1yz38y1w5gbbcc0nvidmlg2z4anj0k5rifzgdv6";
        libraryHaskellDepends = [
          base bytestring Cabal directory filepath ghc jni jvm language-java
          mtl process template-haskell temporary text
@@ -148895,7 +147455,6 @@ self: {
        description = "Java interop via inline Java code in Haskell modules";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "inline-r" = callPackage
@@ -148984,17 +147543,17 @@ self: {
      }) {aether = null;};
 
   "insert-ordered-containers" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, hashable
+    ({ mkDerivation, aeson, base, base-compat, deepseq, hashable
      , indexed-traversable, lens, optics-core, optics-extra, QuickCheck
      , semigroupoids, semigroups, tasty, tasty-quickcheck, text
      , transformers, unordered-containers
      }:
      mkDerivation {
        pname = "insert-ordered-containers";
-       version = "0.2.4";
-       sha256 = "174maygil2mffjz2ssqawlmv36413m65zp3ng67hzij4dh8piz7x";
+       version = "0.2.5";
+       sha256 = "0bb3ggzic8z5zmvmzp1fsnb572c2v383740b0ddf1fwihpn52c1y";
        libraryHaskellDepends = [
-         aeson base base-compat hashable indexed-traversable lens
+         aeson base base-compat deepseq hashable indexed-traversable lens
          optics-core optics-extra semigroupoids semigroups text transformers
          unordered-containers
        ];
@@ -149043,8 +147602,8 @@ self: {
      }:
      mkDerivation {
        pname = "inspection-testing";
-       version = "0.4.3.0";
-       sha256 = "1pba3br5vd11svk9fpg5s977q55qlvhlf95nd5ay79bwdjm10hj3";
+       version = "0.4.5.0";
+       sha256 = "1d8bi60m97yw4vxmajclg66xhaap8nj4dli8bxni0mf4mcm0px01";
        libraryHaskellDepends = [
          base containers ghc mtl template-haskell transformers
        ];
@@ -149053,23 +147612,6 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "inspection-testing_0_4_4_0" = callPackage
-    ({ mkDerivation, base, containers, ghc, mtl, template-haskell
-     , transformers
-     }:
-     mkDerivation {
-       pname = "inspection-testing";
-       version = "0.4.4.0";
-       sha256 = "1zr7c7xpmnfwn2p84rqw69n1g91rdkh7d20awvj0s56nbdikgiyh";
-       libraryHaskellDepends = [
-         base containers ghc mtl template-haskell transformers
-       ];
-       testHaskellDepends = [ base ];
-       description = "GHC plugin to do inspection testing";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
   "inspector-wrecker" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive
      , connection, data-default, http-client, http-client-tls
@@ -149091,22 +147633,21 @@ self: {
        description = "Create benchmarks from the HAR files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instana-haskell-trace-sdk" = callPackage
-    ({ mkDerivation, aeson, aeson-extra, base, binary, bytestring
-     , case-insensitive, containers, directory, ekg-core, exceptions
-     , hslogger, http-client, http-client-tls, http-types, HUnit
-     , network, process, random, regex-base, regex-compat, regex-pcre
-     , regex-tdfa, retry, scientific, servant, servant-server, stm
-     , sysinfo, text, time, transformers, unix, unordered-containers
-     , wai, warp
+    ({ mkDerivation, aeson, aeson-extra, array, base, binary
+     , bytestring, case-insensitive, containers, directory, ekg-core
+     , exceptions, hslogger, http-client, http-client-tls, http-types
+     , HUnit, network, process, random, regex-base, regex-compat
+     , regex-pcre, regex-tdfa, retry, scientific, servant
+     , servant-server, stm, sysinfo, text, time, transformers, unix
+     , unordered-containers, vector, wai, warp
      }:
      mkDerivation {
        pname = "instana-haskell-trace-sdk";
-       version = "0.6.2.0";
-       sha256 = "1yvxsz1b9qrhyw6zamqs5254mpba3vijhach1n424mqa6aq1935s";
+       version = "0.7.0.0";
+       sha256 = "0y76rmz8m2fqw00hzyzalqrhv2rzkg2vvx7qaph3mfrq23ynrgaf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -149121,10 +147662,10 @@ self: {
          transformers unix unordered-containers wai warp
        ];
        testHaskellDepends = [
-         aeson aeson-extra base bytestring directory ekg-core exceptions
-         hslogger http-client http-types HUnit process random regex-base
-         regex-compat regex-pcre regex-tdfa retry scientific text unix
-         unordered-containers
+         aeson aeson-extra array base bytestring case-insensitive directory
+         ekg-core exceptions hslogger http-client http-types HUnit process
+         random regex-base regex-compat regex-pcre regex-tdfa retry
+         scientific text unix unordered-containers vector wai
        ];
        description = "SDK for adding custom Instana tracing support to Haskell applications";
        license = lib.licenses.mit;
@@ -149176,7 +147717,6 @@ self: {
        description = "Generic Aeson instances through instant-generics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instant-bytes" = callPackage
@@ -149194,7 +147734,6 @@ self: {
        description = "Generic Serial instances through instant-generics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instant-deepseq" = callPackage
@@ -149207,7 +147746,6 @@ self: {
        description = "Generic NFData instances through instant-generics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instant-generics" = callPackage
@@ -149235,7 +147773,6 @@ self: {
        description = "Generic Hashable instances through instant-generics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instant-zipper" = callPackage
@@ -149250,7 +147787,6 @@ self: {
        description = "Heterogenous Zipper in Instant Generics";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instapaper-sender" = callPackage
@@ -149271,7 +147807,6 @@ self: {
        description = "Basic HTTP gateway to save articles to Instapaper";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "instinct" = callPackage
@@ -149336,8 +147871,8 @@ self: {
        pname = "int-cast";
        version = "0.2.0.0";
        sha256 = "0s8rqm5d9f4y2sskajsw8ff7q8xp52vwqa18m6bajldp11m9a1p0";
-       revision = "3";
-       editedCabalFile = "1b99lqxwbhg96iykfr2l7qd388cbx9sf8bln728505qgj6kgsvj7";
+       revision = "4";
+       editedCabalFile = "1l5n3hsa8gr0wzc3cb32ha2j8kcf976i84z04580q41macf0r0h6";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -149818,7 +148353,6 @@ self: {
        description = "QuasiQuoter for Ruby-style multi-line interpolated strings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "interpolatedstring-qq-mwotton" = callPackage
@@ -149835,7 +148369,6 @@ self: {
        description = "DO NOT USE THIS. interpolatedstring-qq works now.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "interpolatedstring-qq2" = callPackage
@@ -149957,13 +148490,19 @@ self: {
      }) {};
 
   "interval-algebra" = callPackage
-    ({ mkDerivation, base, hspec, QuickCheck, time, witherable }:
+    ({ mkDerivation, base, containers, hspec, QuickCheck, safe, time
+     , witherable
+     }:
      mkDerivation {
        pname = "interval-algebra";
-       version = "0.3.3";
-       sha256 = "0njlirr5ymsdw27snixxf3c4dgj8grffqv94a1hz97k801a3axkh";
-       libraryHaskellDepends = [ base QuickCheck time witherable ];
-       testHaskellDepends = [ base hspec QuickCheck time ];
+       version = "0.8.2";
+       sha256 = "1xa9rlb9klf0bnig0ccryjxcbz023hwy1wnxp4vwn5ggb0fbmzys";
+       libraryHaskellDepends = [
+         base containers QuickCheck safe time witherable
+       ];
+       testHaskellDepends = [
+         base containers hspec QuickCheck safe time
+       ];
        description = "An implementation of Allen's interval algebra for temporal logic";
        license = lib.licenses.bsd3;
      }) {};
@@ -150122,7 +148661,6 @@ self: {
        description = "A prelude for the tests of safe new projects";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "intset" = callPackage
@@ -150135,7 +148673,6 @@ self: {
        description = "Pure, mergeable, succinct Int sets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "intset-imperative" = callPackage
@@ -150211,17 +148748,15 @@ self: {
      }:
      mkDerivation {
        pname = "invert";
-       version = "1.0";
-       sha256 = "18q070bawfnyi4wl6rxb6l5ihda0xzmlb8g1z0sg46vghvbs985v";
-       revision = "2";
-       editedCabalFile = "1829iy3jg0zwms16cqd4rdg5khl348ih44b3mz7l7cy9wlci3cli";
+       version = "1.0.0.1";
+       sha256 = "07p7vcc3mc4zq0j2qlm4yp0cfsashb32ndx5i9ib0x6lk6rb9djp";
        libraryHaskellDepends = [
          base containers generic-deriving hashable unordered-containers
          vector
        ];
        testHaskellDepends = [ base ];
        benchmarkHaskellDepends = [ base criterion ];
-       description = "Automatically generate a function's inverse";
+       description = "Automatically generate a function’s inverse";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
        broken = true;
@@ -150276,7 +148811,6 @@ self: {
        description = "invertible functions and instances for HList";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "invertible-hxt" = callPackage
@@ -150434,28 +148968,27 @@ self: {
      }) {};
 
   "io-streams" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, bytestring-builder
-     , deepseq, directory, filepath, HUnit, mtl, network, primitive
-     , process, QuickCheck, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, text, time, transformers, vector
-     , zlib, zlib-bindings
+    ({ mkDerivation, attoparsec, base, bytestring, deepseq, directory
+     , filepath, HUnit, mtl, network, primitive, process, QuickCheck
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     , text, time, transformers, vector, zlib, zlib-bindings
      }:
      mkDerivation {
        pname = "io-streams";
-       version = "1.5.2.0";
-       sha256 = "1hbabrk5145d77qi23688piaf1wc93n8vaj846n0s3zk953z1lk3";
-       revision = "2";
-       editedCabalFile = "1mr0y8m6xdkgvvk76n7pn1airqzgdp8kd8x6jd9w97iy5wjp14q7";
+       version = "1.5.2.1";
+       sha256 = "1y3sqmxrwiksz7pl4hf3vzvg8p8n00qnv98nj5xbpcadlh468rny";
+       revision = "1";
+       editedCabalFile = "0zgrhvafnk9ds29n6x93cifw4993mgvvx3p2d3922frkjvd6xa5v";
        configureFlags = [ "-fnointeractivetests" ];
        libraryHaskellDepends = [
-         attoparsec base bytestring bytestring-builder network primitive
-         process text time transformers vector zlib-bindings
+         attoparsec base bytestring network primitive process text time
+         transformers vector zlib-bindings
        ];
        testHaskellDepends = [
-         attoparsec base bytestring bytestring-builder deepseq directory
-         filepath HUnit mtl network primitive process QuickCheck
-         test-framework test-framework-hunit test-framework-quickcheck2 text
-         time transformers vector zlib zlib-bindings
+         attoparsec base bytestring deepseq directory filepath HUnit mtl
+         network primitive process QuickCheck test-framework
+         test-framework-hunit test-framework-quickcheck2 text time
+         transformers vector zlib zlib-bindings
        ];
        description = "Simple, composable, and easy-to-use stream I/O";
        license = lib.licenses.bsd3;
@@ -150559,7 +149092,6 @@ self: {
        description = "EDSL for concurrent, realtime, embedded programming on top of Ivory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ioref-stable" = callPackage
@@ -150641,7 +149173,6 @@ self: {
        description = "Library for IP and MAC addresses";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ip-quoter" = callPackage
@@ -150700,16 +149231,15 @@ self: {
      }) {};
 
   "ipa" = callPackage
-    ({ mkDerivation, attoparsec, base, hspec, text, unicode-transforms
+    ({ mkDerivation, attoparsec, base, hspec, template-haskell, text
+     , unicode-transforms
      }:
      mkDerivation {
        pname = "ipa";
-       version = "0.3";
-       sha256 = "0cm9ahqaf2kdqny6nmk9ff1h413v0iqbfsf6glrr5vkhmx60h9qm";
-       revision = "2";
-       editedCabalFile = "1jafvzz7vdbkcwywdhx49g2q1f0gah0bz921kia6lbi5jnyaail1";
+       version = "0.3.1";
+       sha256 = "1l658qnqfs63dwarmiaw7vf6v2xl8hhvzlb95w168rpa7wfkrh5n";
        libraryHaskellDepends = [
-         attoparsec base text unicode-transforms
+         attoparsec base template-haskell text unicode-transforms
        ];
        testHaskellDepends = [ base hspec text ];
        description = "Internal Phonetic Alphabet (IPA)";
@@ -150733,7 +149263,6 @@ self: {
        description = "interactive patch editor";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ipc" = callPackage
@@ -150750,7 +149279,6 @@ self: {
        description = "High level inter-process communication library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ipcvar" = callPackage
@@ -150810,8 +149338,6 @@ self: {
        ];
        description = "Auto-generated IPFS HTTP API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ipld-cid" = callPackage
@@ -150834,7 +149360,6 @@ self: {
        description = "IPLD Content-IDentifiers <https://github.com/ipld/cid>";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ipopt-hs" = callPackage
@@ -150870,7 +149395,6 @@ self: {
        description = "Tiny helper for pretty-printing values in ghci console";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iproute" = callPackage
@@ -150935,7 +149459,6 @@ self: {
        description = "web-interface for iptables";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ipynb" = callPackage
@@ -151019,8 +149542,8 @@ self: {
      }:
      mkDerivation {
        pname = "irc-client";
-       version = "1.1.2.0";
-       sha256 = "0gd7ww2cmnh7im0gicsj1617540kl97780860hzf8nkixn71hwqr";
+       version = "1.1.2.1";
+       sha256 = "1zaa8na730m96flgiyzcwq95v2ianvflsw3abvdavf7xpq4s71ld";
        libraryHaskellDepends = [
          base bytestring conduit connection containers contravariant
          exceptions irc-conduit irc-ctcp mtl network-conduit-tls old-locale
@@ -151029,6 +149552,7 @@ self: {
        ];
        description = "An IRC client library";
        license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "irc-colors" = callPackage
@@ -151134,7 +149658,6 @@ self: {
        description = "Library for writing fun IRC bots";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "irc-fun-client" = callPackage
@@ -151154,7 +149677,6 @@ self: {
        description = "Another library for writing IRC clients";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "irc-fun-color" = callPackage
@@ -151172,7 +149694,6 @@ self: {
        description = "Add color and style decorations to IRC messages";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "irc-fun-messages" = callPackage
@@ -151187,7 +149708,6 @@ self: {
        description = "Types and functions for working with the IRC protocol";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "irc-fun-types" = callPackage
@@ -151270,7 +149790,6 @@ self: {
        description = "RFC-based resource identifier library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iridium" = callPackage
@@ -151336,7 +149855,6 @@ self: {
        description = "A technical demo for Antisplice";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "irt" = callPackage
@@ -151407,7 +149925,6 @@ self: {
        description = "Check whether a value has been evaluated";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "isiz" = callPackage
@@ -151449,7 +149966,6 @@ self: {
        description = "Advanced ESMTP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iso-deriving" = callPackage
@@ -151587,7 +150103,6 @@ self: {
        description = "A (bytestring-) builder for the ISO-14496-12 base media file format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "isohunt" = callPackage
@@ -151605,7 +150120,6 @@ self: {
        description = "Bindings to the isoHunt torrent search API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "isotope" = callPackage
@@ -151650,6 +150164,8 @@ self: {
        testHaskellDepends = [ base generic-lens QuickCheck ];
        description = "Automatically derivable Has instances";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "itanium-abi" = callPackage
@@ -151736,7 +150252,6 @@ self: {
        description = "iteratees for statistical processing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iterIO" = callPackage
@@ -151815,7 +150330,6 @@ self: {
        description = "Enumeratees for compressing and decompressing streams";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) bzip2; inherit (pkgs) zlib;};
 
   "iteratee-mtl" = callPackage
@@ -151834,7 +150348,6 @@ self: {
        description = "Iteratee-based I/O";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iteratee-parsec" = callPackage
@@ -151851,7 +150364,6 @@ self: {
        description = "Package allowing parsec parser initeratee";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iteratee-stm" = callPackage
@@ -151866,7 +150378,6 @@ self: {
        description = "Concurrent iteratees using STM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iterio-server" = callPackage
@@ -151884,7 +150395,6 @@ self: {
        description = "Library for building servers with IterIO";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iterm-show" = callPackage
@@ -151901,8 +150411,6 @@ self: {
        executableHaskellDepends = [ base bytestring ];
        description = "Enable graphical display of images inline on some terminals";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iterm-show-JuicyPixels" = callPackage
@@ -151916,8 +150424,6 @@ self: {
        libraryHaskellDepends = [ base iterm-show JuicyPixels ];
        description = "Orphan Show instances for JuciyPixels image types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iterm-show-diagrams" = callPackage
@@ -151935,8 +150441,6 @@ self: {
        ];
        description = "Orphan Show instances for diagrams package that render inline in some terminals";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ival" = callPackage
@@ -151983,7 +150487,6 @@ self: {
        description = "Theorem proving library based on dependent type theory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory" = callPackage
@@ -152033,7 +150536,6 @@ self: {
        description = "Ivory register bindings for the Atmega328p";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-backend-c" = callPackage
@@ -152055,7 +150557,6 @@ self: {
        description = "Ivory C backend";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-bitdata" = callPackage
@@ -152075,7 +150576,6 @@ self: {
        description = "Ivory bit-data support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-eval" = callPackage
@@ -152095,7 +150595,6 @@ self: {
        description = "Simple concrete evaluator for Ivory programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-examples" = callPackage
@@ -152119,7 +150618,6 @@ self: {
        description = "Ivory examples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-hw" = callPackage
@@ -152133,7 +150631,6 @@ self: {
        description = "Ivory hardware model (STM32F4)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-opts" = callPackage
@@ -152151,7 +150648,6 @@ self: {
        description = "Ivory compiler optimizations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-quickcheck" = callPackage
@@ -152174,7 +150670,6 @@ self: {
        description = "QuickCheck driver for Ivory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-serialize" = callPackage
@@ -152192,7 +150687,6 @@ self: {
        description = "Serialization library for Ivory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivory-stdlib" = callPackage
@@ -152206,7 +150700,6 @@ self: {
        description = "Ivory standard library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ivy-web" = callPackage
@@ -152223,7 +150716,6 @@ self: {
        description = "A lightweight web framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "iwlib" = callPackage
@@ -152236,6 +150728,9 @@ self: {
        librarySystemDepends = [ wirelesstools ];
        description = "Bindings for the iw C library";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) wirelesstools;};
 
   "ix" = callPackage
@@ -152409,7 +150904,6 @@ self: {
        description = "CLI (command line interface) to YQL";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "j" = callPackage
@@ -152447,7 +150941,6 @@ self: {
        description = "j2hs";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ja-base-extra" = callPackage
@@ -152564,7 +151057,6 @@ self: {
        description = "Jailed IO monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jailbreak-cabal" = callPackage
@@ -152780,7 +151272,6 @@ self: {
        description = "Utilities for working with the java-bridge package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "java-character" = callPackage
@@ -152793,7 +151284,6 @@ self: {
        description = "Functions to simulate Java's Character class";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "java-poker" = callPackage
@@ -152820,7 +151310,6 @@ self: {
        description = "Tools for reflecting on Java classes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "javaclass" = callPackage
@@ -152906,7 +151395,6 @@ self: {
        description = "A utility to print the SourceFile attribute of one or more Java class files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "javav" = callPackage
@@ -153094,8 +151582,8 @@ self: {
     ({ mkDerivation, base, mtl, parsec, tasty, tasty-hunit, text }:
      mkDerivation {
        pname = "jira-wiki-markup";
-       version = "1.3.4";
-       sha256 = "0rrqaibgafbynrlcsp7f7hkzgkp2gix7ji2hkpgpby6fvp6965fh";
+       version = "1.3.5";
+       sha256 = "0k5z2lxj5xp9hpr3mmdbzkd0yn718477pqjvymyz361h938rqnz5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl parsec text ];
@@ -153105,6 +151593,22 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "jira-wiki-markup_1_4_0" = callPackage
+    ({ mkDerivation, base, mtl, parsec, tasty, tasty-hunit, text }:
+     mkDerivation {
+       pname = "jira-wiki-markup";
+       version = "1.4.0";
+       sha256 = "0p6axj6km4440ss5naw68r3r85si4qxqgrklp6ssfyapawy0s88w";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base mtl parsec text ];
+       executableHaskellDepends = [ base text ];
+       testHaskellDepends = [ base parsec tasty tasty-hunit text ];
+       description = "Handle Jira wiki markup";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "jmacro" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers
      , haskell-src-exts, haskell-src-meta, mtl, parseargs, parsec
@@ -153130,7 +151634,6 @@ self: {
        description = "QuasiQuotation library for programmatic generation of Javascript code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jmacro-rpc" = callPackage
@@ -153150,7 +151653,6 @@ self: {
        description = "JSON-RPC clients and servers using JMacro, and evented client-server Reactive Programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jmacro-rpc-happstack" = callPackage
@@ -153168,7 +151670,6 @@ self: {
        description = "Happstack backend for jmacro-rpc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jmacro-rpc-snap" = callPackage
@@ -153185,7 +151686,6 @@ self: {
        description = "Snap backend for jmacro-rpc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jml-web-service" = callPackage
@@ -153221,7 +151721,6 @@ self: {
        description = "Jmonkey is very restricted but handy EDSL for JavaScript";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jni" = callPackage
@@ -153233,6 +151732,8 @@ self: {
        pname = "jni";
        version = "0.8.0";
        sha256 = "0m94p2zx877snh3imwcdnwa8ajfb76cg2rjgjx3pan508ham1h5i";
+       revision = "2";
+       editedCabalFile = "1ql65nfmd5mhn7y2xdifx240mk5my5z8w3pn85497hzk27qllybi";
        libraryHaskellDepends = [
          async base bytestring choice constraints containers deepseq
          inline-c singletons stm text
@@ -153292,7 +151793,6 @@ self: {
        description = "A library for creating a jobs management website running custom jobs";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "join" = callPackage
@@ -153306,7 +151806,6 @@ self: {
        description = "Parallel Join Patterns with Guards and Propagation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "join-api" = callPackage
@@ -153472,7 +151971,6 @@ self: {
        description = "Tiny markdown notebook";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jpeg" = callPackage
@@ -153574,8 +152072,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle";
-       version = "0.9.7.1";
-       sha256 = "1igkv5lvlbq0xl2dp6d8fp4ybwnwmgrc3r4sfjsric0bj8sq2k86";
+       version = "0.9.8.0";
+       sha256 = "0g3jdh4x80fsbrcj5kd81inv8hcx662v5dsn9d6q1dla0cz8w8i9";
        libraryHaskellDepends = [
          aeson attoparsec base base-compat base64-bytestring bytestring
          containers deepseq exceptions filepath ghc-prim http-types lens
@@ -153592,8 +152090,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-clib";
-       version = "0.9.7.1";
-       sha256 = "07s2iy136dm526mr7q43mxqq9qndg8jbi9kz1652qgl0ivn8lapc";
+       version = "0.9.8.0";
+       sha256 = "0axgfkxgvm4awvklss2pqa8a4112m3q7k38h71anxs6i199lgkyq";
        libraryHaskellDepends = [
          aeson base base-compat bytestring data-default jsaddle text
        ];
@@ -153641,8 +152139,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-warp";
-       version = "0.9.7.1";
-       sha256 = "1piyxxmik1bwdzkz46vgdhdp0gw4p01fww591zqbxzjk6rmrpby0";
+       version = "0.9.8.0";
+       sha256 = "06bf071xnfx7mjzf7jdyjspjw28s2z3br5gmx9vcs7paji20c8np";
        libraryHaskellDepends = [
          aeson base bytestring containers foreign-store http-types jsaddle
          stm text time transformers wai wai-websockets warp websockets
@@ -153666,8 +152164,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-webkit2gtk";
-       version = "0.9.7.1";
-       sha256 = "0f2siaid0b03zrjzpb3lr9k9w5np2vml6apd961zd97dghvvhiix";
+       version = "0.9.8.0";
+       sha256 = "01iav691d3h6l9x7vw0spb68n4y5m9pb8d02iyp5lvkqr2y4h9kv";
        libraryHaskellDepends = [
          aeson base bytestring directory gi-gio gi-glib gi-gtk
          gi-javascriptcore gi-webkit2 haskell-gi-base haskell-gi-overloading
@@ -153675,7 +152173,9 @@ self: {
        ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "jsaddle-webkitgtk" = callPackage
@@ -153698,17 +152198,11 @@ self: {
      }) {};
 
   "jsaddle-wkwebview" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, data-default
-     , directory, jsaddle, text
-     }:
+    ({ mkDerivation }:
      mkDerivation {
        pname = "jsaddle-wkwebview";
-       version = "0.9.7.1";
-       sha256 = "0dfaysw7fzmv2b62wi5id45f4i0x2vbjp9irbdkmv1h2z3ydwy20";
-       libraryHaskellDepends = [
-         aeson base bytestring containers data-default directory jsaddle
-         text
-       ];
+       version = "0.9.8.0";
+       sha256 = "1cjncl2jqnx4j83pmcnnvcc0rswhwwb5grwh636b11yyp4vv58dw";
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
@@ -153742,7 +152236,6 @@ self: {
        description = "Javascript Monadic Writer base package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json" = callPackage
@@ -153868,7 +152361,6 @@ self: {
        description = "Encoders of JSON AST";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-ast-quickcheck" = callPackage
@@ -153920,7 +152412,6 @@ self: {
        description = "Automatic type declaration for JSON input data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-b" = callPackage
@@ -153944,7 +152435,6 @@ self: {
        description = "JSON parser that uses byte strings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-builder" = callPackage
@@ -154039,7 +152529,6 @@ self: {
        description = "Pure-Haskell utilities for dealing with JSON with the enumerator package. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-extra" = callPackage
@@ -154066,8 +152555,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-feed";
-       version = "1.0.12";
-       sha256 = "0baav0mvprja5jdmndan6psxqm37173yvrjrr04kfxs9568dvzyf";
+       version = "1.0.13";
+       sha256 = "14wqv8qk7xax6kvj96wsx2sarxardbkddm8hkllkkf8b9jz04si5";
        libraryHaskellDepends = [
          aeson base bytestring mime-types network-uri tagsoup text time
        ];
@@ -154122,7 +152611,6 @@ self: {
        description = "Incremental JSON parser with early termination and a declarative DSL";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-litobj" = callPackage
@@ -154267,7 +152755,6 @@ self: {
        description = "Kitchen sink for querying JSON";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-rpc" = callPackage
@@ -154415,8 +152902,6 @@ self: {
        ];
        description = "Generics JSON (de)serialization using generics-sop";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-state" = callPackage
@@ -154481,7 +152966,6 @@ self: {
        description = "High-performance JSON parser and encoder";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-to-haskell" = callPackage
@@ -154513,8 +152997,6 @@ self: {
          recursion-schemes text unordered-containers vector
        ];
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-togo" = callPackage
@@ -154533,7 +153015,6 @@ self: {
        description = "Effectful parsing of JSON documents";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-tokens" = callPackage
@@ -154562,7 +153043,6 @@ self: {
        description = "Tokenize JSON";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-tools" = callPackage
@@ -154654,7 +153134,6 @@ self: {
        description = "Support JSON for SQL Database";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "json2-types" = callPackage
@@ -154737,30 +153216,29 @@ self: {
        description = "Fast and simple JSON encoding toolkit";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jsonnet" = callPackage
-    ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, binary, bytestring
      , containers, data-fix, deriving-compat, directory, exceptions
-     , filepath, hashable, megaparsec, mtl, optparse-applicative
-     , parser-combinators, scientific, semigroupoids, tasty
+     , filepath, hashable, lens, megaparsec, mtl, optparse-applicative
+     , parser-combinators, scientific, semigroupoids, tasty, tasty-bench
      , tasty-golden, tasty-hunit, template-haskell, text
-     , transformers-compat, unbound-generics, unordered-containers
-     , vector
+     , th-lift-instances, th-utilities, transformers-compat
+     , unbound-generics, unordered-containers, vector
      }:
      mkDerivation {
        pname = "jsonnet";
-       version = "0.2.0.0";
-       sha256 = "0ns2yij8yl555n5rb0pahxpqrwxgzfvdr4ajp0dy5amqsv13hhmh";
+       version = "0.3.1.1";
+       sha256 = "021kklj3ycpm5n2r6bjqc0vicn9vdv5a56sd1la6pf430i1fd7z9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-wl-pprint base bytestring containers data-fix
-         deriving-compat directory exceptions filepath hashable megaparsec
-         mtl optparse-applicative parser-combinators scientific
-         semigroupoids template-haskell text transformers-compat
-         unbound-generics unordered-containers vector
+         aeson ansi-wl-pprint base binary bytestring containers data-fix
+         deriving-compat directory exceptions filepath hashable lens
+         megaparsec mtl parser-combinators scientific semigroupoids
+         template-haskell text th-lift-instances th-utilities
+         transformers-compat unbound-generics unordered-containers vector
        ];
        executableHaskellDepends = [
          aeson ansi-wl-pprint base bytestring mtl optparse-applicative text
@@ -154769,6 +153247,9 @@ self: {
          ansi-wl-pprint base bytestring filepath mtl tasty tasty-golden
          tasty-hunit text
        ];
+       benchmarkHaskellDepends = [
+         ansi-wl-pprint base bytestring tasty-bench text
+       ];
        description = "Jsonnet implementaton in pure Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -154820,8 +153301,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsonrpc-conduit";
-       version = "0.3.3";
-       sha256 = "16dcj85ycjsm82pb32abc3wb05gh87mrkyaij89imvbqsv5k0sy1";
+       version = "0.3.4";
+       sha256 = "18lqkcq69k3hjbqzxycdgrfrd2a5m3ahxwja0yw8xi9x6mw33cxi";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring conduit conduit-extra mtl text
          transformers unordered-containers
@@ -154832,8 +153313,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "JSON-RPC 2.0 server over a Conduit.";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jsons-to-schema" = callPackage
@@ -154866,7 +153345,6 @@ self: {
        description = "JSON to JSON Schema";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jsonschema-gen" = callPackage
@@ -154996,7 +153474,6 @@ self: {
        description = "Extract substructures from JSON by following a path";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "juandelacosa" = callPackage
@@ -155020,8 +153497,6 @@ self: {
        ];
        description = "Manage users in MariaDB >= 10.1.1";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "judge" = callPackage
@@ -155110,8 +153585,8 @@ self: {
      }:
      mkDerivation {
        pname = "jukebox";
-       version = "0.5.2";
-       sha256 = "1nhz7rf8sczrhph0h9hia1vqxig1bcpc8v6zvxgrywmacl1mnky6";
+       version = "0.5.3";
+       sha256 = "00774gby970jxa69zw8baki40r6nw7vrprc670n8skmlp03p38j2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -155217,6 +153692,8 @@ self: {
        pname = "jvm";
        version = "0.6.0";
        sha256 = "119davscv5mrw2mnlrklx8hbjrc7lhf5a9jphdnnxs6bywi8i2zm";
+       revision = "2";
+       editedCabalFile = "1p0p50w0zjf79a3p5wiwg1wfnsgvqf2n04ydpacrfwm96id667kp";
        libraryHaskellDepends = [
          base bytestring choice constraints distributed-closure exceptions
          jni singletons template-haskell text vector
@@ -155230,7 +153707,6 @@ self: {
        description = "Call JVM methods from Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jvm-batching" = callPackage
@@ -155242,6 +153718,8 @@ self: {
        pname = "jvm-batching";
        version = "0.2.0";
        sha256 = "19z0db10y181n4adkz23cmly0q4zp953zh6f3r7rmxcd78758pbk";
+       revision = "1";
+       editedCabalFile = "1ni0gnww6r18dg2pm1hmdkfzaghq5ssirpp737i1c81ya1k95m2n";
        setupHaskellDepends = [ base Cabal inline-java ];
        libraryHaskellDepends = [
          base bytestring distributed-closure inline-java jni jvm singletons
@@ -155256,7 +153734,6 @@ self: {
        description = "Provides batched marshalling of values between Java and Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jvm-binary" = callPackage
@@ -155268,8 +153745,8 @@ self: {
      }:
      mkDerivation {
        pname = "jvm-binary";
-       version = "0.9.0";
-       sha256 = "1ks5mbp1anrgm100sf3ycv1prwm3vj1vyag7l0ihs4cr2sqzq3a2";
+       version = "0.10.0";
+       sha256 = "11c3rhny06zjw8xv830khq1kdjbpzkr7wmzzymld4zcmhfmk9qda";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers data-binary-ieee754
@@ -155320,6 +153797,8 @@ self: {
        pname = "jvm-streaming";
        version = "0.4.0";
        sha256 = "0k8y6kvbymmjlr3bvgcws0z2hwdznyr3b3alkwsjag49lsgp21sd";
+       revision = "1";
+       editedCabalFile = "01f3j02qzqi7ls876vwzl2db3621xr7psmzm3cx9pk414bhj5f56";
        setupHaskellDepends = [ base Cabal inline-java jvm-batching ];
        libraryHaskellDepends = [
          base distributed-closure inline-java jni jvm jvm-batching
@@ -155334,7 +153813,6 @@ self: {
        description = "Expose Java iterators as streams from the streaming package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jwt" = callPackage
@@ -155455,7 +153933,6 @@ self: {
        description = "UI device events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kafka-device-glut" = callPackage
@@ -155471,7 +153948,6 @@ self: {
        description = "GLUT events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kafka-device-joystick" = callPackage
@@ -155493,7 +153969,6 @@ self: {
        description = "Linux joystick events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kafka-device-leap" = callPackage
@@ -155513,7 +153988,6 @@ self: {
        description = "Leap Motion events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kafka-device-spacenav" = callPackage
@@ -155535,7 +154009,6 @@ self: {
        description = "Linux SpaceNavigator events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kafka-device-vrpn" = callPackage
@@ -155551,7 +154024,6 @@ self: {
        description = "VRPN events via a Kafka message broker";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kaleidoscope" = callPackage
@@ -155575,7 +154047,6 @@ self: {
        description = "Haskell Kaleidoscope tutorial";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kalman" = callPackage
@@ -155696,7 +154167,6 @@ self: {
        description = "Kansas Lava is a hardware simulator and VHDL generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kansas-lava-cores" = callPackage
@@ -155717,7 +154187,6 @@ self: {
        description = "FPGA Cores Written in Kansas Lava";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kansas-lava-papilio" = callPackage
@@ -155737,7 +154206,6 @@ self: {
        description = "Kansas Lava support files for the Papilio FPGA board";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kansas-lava-shake" = callPackage
@@ -155755,7 +154223,6 @@ self: {
        description = "Shake rules for building Kansas Lava projects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "karakuri" = callPackage
@@ -155772,7 +154239,6 @@ self: {
        description = "Good stateful automata";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "karps" = callPackage
@@ -155909,7 +154375,6 @@ self: {
        description = "ElasticSearch scribe for the Katip logging framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "katip-kafka" = callPackage
@@ -156002,7 +154467,6 @@ self: {
        description = "Katip scribe that logs to Rollbar";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "katip-scalyr-scribe" = callPackage
@@ -156393,7 +154857,6 @@ self: {
        description = "Rapid Gtk Application Development - I18N";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-mvc-controller" = callPackage
@@ -156422,7 +154885,6 @@ self: {
        description = "Haskell on Gtk rails - Gtk-based global environment for MVC applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-mvc-model-lightmodel" = callPackage
@@ -156440,7 +154902,6 @@ self: {
        description = "Rapid Gtk Application Development - Reactive Protected Light Models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-mvc-model-protectedmodel" = callPackage
@@ -156458,7 +154919,6 @@ self: {
        description = "Rapid Gtk Application Development - Protected Reactive Models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-mvc-solutions-config" = callPackage
@@ -156492,7 +154952,6 @@ self: {
        description = "Haskell on Gtk rails - Common solutions to recurrent problems in Gtk applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-mvc-view" = callPackage
@@ -156536,7 +154995,6 @@ self: {
        description = "Reactive Haskell on Rails - CBMVars as reactive values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-fs" = callPackage
@@ -156553,7 +155011,6 @@ self: {
        description = "Haskell on Rails - Files as Reactive Values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-gtk" = callPackage
@@ -156571,7 +155028,6 @@ self: {
        description = "Haskell on Gtk rails - Reactive Fields for Gtk widgets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-htmldom" = callPackage
@@ -156590,7 +155046,6 @@ self: {
        description = "Keera Hails Reactive bindings for HTML DOM via GHCJS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-network" = callPackage
@@ -156607,7 +155062,6 @@ self: {
        description = "Haskell on Rails - Sockets as Reactive Values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-polling" = callPackage
@@ -156623,7 +155077,6 @@ self: {
        description = "Haskell on Rails - Polling based Readable RVs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-wx" = callPackage
@@ -156638,7 +155091,6 @@ self: {
        description = "Haskell on Rails - Reactive Fields for WX widgets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactive-yampa" = callPackage
@@ -156655,7 +155107,6 @@ self: {
        description = "Haskell on Rails - FRP Yampa Signal Functions as RVs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactivelenses" = callPackage
@@ -156668,7 +155119,6 @@ self: {
        description = "Reactive Haskell on Rails - Lenses applied to Reactive Values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keera-hails-reactivevalues" = callPackage
@@ -156757,8 +155207,8 @@ self: {
      }:
      mkDerivation {
        pname = "kempe";
-       version = "0.2.0.1";
-       sha256 = "1xs2jism3r2pgvir1rr318dfrjagkagvzzdrs7n9070xzv3p3c5q";
+       version = "0.2.0.4";
+       sha256 = "0rzpid5lnjnjgsip3fvm5d313hh8wb7gqla3dyf56l9q7y4r20js";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -156772,8 +155222,8 @@ self: {
          base bytestring optparse-applicative prettyprinter
        ];
        testHaskellDepends = [
-         base bytestring composition-prelude deepseq filepath prettyprinter
-         process tasty tasty-golden tasty-hunit temporary text
+         base bytestring composition-prelude deepseq extra filepath
+         prettyprinter process tasty tasty-golden tasty-hunit temporary text
        ];
        benchmarkHaskellDepends = [
          base bytestring criterion prettyprinter temporary text
@@ -156884,7 +155334,6 @@ self: {
        description = "a dAmn ↔ IRC proxy";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "key" = callPackage
@@ -156953,8 +155402,8 @@ self: {
        pname = "keycode";
        version = "0.2.2";
        sha256 = "046k8d1h5wwadf5z4pppjkc3g7v2zxlzb06s1xgixc42y5y41yan";
-       revision = "6";
-       editedCabalFile = "0acc224njxf8y7r381pnzxx6z3lvshs5mwfafkcrn36nb0wfplng";
+       revision = "7";
+       editedCabalFile = "1xfhm486mgkf744nbx94aw0b1lraj1yv29c57rbx1c2b84v2z8k2";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -157047,7 +155496,6 @@ self: {
        description = "back up a secret key securely to the cloud";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keystore" = callPackage
@@ -157079,8 +155527,6 @@ self: {
        ];
        description = "Managing stores of secret things";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keyvaluehash" = callPackage
@@ -157098,7 +155544,6 @@ self: {
        description = "Pure Haskell key/value store implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "keyword-args" = callPackage
@@ -157121,7 +155566,6 @@ self: {
        description = "Extract data from a keyword-args config file format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "khph" = callPackage
@@ -157188,7 +155632,6 @@ self: {
        description = "Parser and writer for KiCad files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kickass-torrents-dump-parser" = callPackage
@@ -157247,7 +155690,6 @@ self: {
        description = "Process KIF iOS test logs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kind-apply" = callPackage
@@ -157318,7 +155760,6 @@ self: {
        description = "A dependency manager for Xcode (Objective-C) projects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kleene" = callPackage
@@ -157341,7 +155782,6 @@ self: {
        description = "Kleene algebra";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kleene-list" = callPackage
@@ -157392,7 +155832,6 @@ self: {
        description = "Sequential and parallel implementations of Lloyd's algorithm";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kmeans-vector" = callPackage
@@ -157410,7 +155849,6 @@ self: {
        description = "An implementation of the kmeans clustering algorithm based on the vector package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kmonad" = callPackage
@@ -157468,7 +155906,6 @@ self: {
        description = "Repa-like array processing using LLVM JIT";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "knead-arithmetic" = callPackage
@@ -157483,7 +155920,6 @@ self: {
        description = "Linear algebra and interpolation using LLVM JIT";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "knit" = callPackage
@@ -157536,7 +155972,6 @@ self: {
        description = "a minimal Rmarkdown sort-of-thing for haskell, by way of Pandoc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "knob" = callPackage
@@ -157567,7 +156002,6 @@ self: {
        description = "Khovanov homology computations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "koellner-phonetic" = callPackage
@@ -157589,8 +156023,8 @@ self: {
     ({ mkDerivation, base, haxr, mtl }:
      mkDerivation {
        pname = "koji";
-       version = "0.0.1";
-       sha256 = "0yxx6xk5xld7jf7ph4x0r7k4bqcg02yl7597awbgbq82x97gyfb8";
+       version = "0.0.2";
+       sha256 = "1ypr552453r0b9s5xlsw0gllka2jaf9xwphlnx55fn05f17zh7qd";
        libraryHaskellDepends = [ base haxr mtl ];
        description = "Koji buildsystem XML-RPC API bindings";
        license = lib.licenses.gpl2Only;
@@ -157682,7 +156116,6 @@ self: {
        description = "The Korfu ORF Utility";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kparams" = callPackage
@@ -157831,7 +156264,6 @@ self: {
        description = "Kolmogorov distribution and Kolmogorov-Smirnov test";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ksystools" = callPackage
@@ -157914,7 +156346,6 @@ self: {
        description = "Client library for Kubernetes";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kubernetes-client-core" = callPackage
@@ -157942,8 +156373,6 @@ self: {
        ];
        description = "Auto-generated kubernetes-client-core API Client";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kubernetes-webhook-haskell" = callPackage
@@ -157984,8 +156413,6 @@ self: {
        libraryHaskellDepends = [ base dlist transformers ];
        description = "Combinators for Strategic Programming";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kure-your-boilerplate" = callPackage
@@ -158032,7 +156459,6 @@ self: {
        description = "Find the alpha emoji";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "kvitable" = callPackage
@@ -158149,7 +156575,6 @@ self: {
        description = "an experiment management framework";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "labsat" = callPackage
@@ -158174,7 +156599,6 @@ self: {
        description = "LabSat TCP Interface Wrapper";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "labyrinth" = callPackage
@@ -158197,7 +156621,6 @@ self: {
        description = "A complicated turn-based game";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "labyrinth-server" = callPackage
@@ -158232,21 +156655,18 @@ self: {
        description = "A complicated turn-based game - Web server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lackey" = callPackage
     ({ mkDerivation, base, hspec, servant, servant-foreign, text }:
      mkDerivation {
        pname = "lackey";
-       version = "1.0.14";
-       sha256 = "01yi2si0gakmjk66jmm93hz50nl7xa1zhmhcrhqn8ip0mkpncnqk";
+       version = "1.0.15";
+       sha256 = "144wlp75gaz7yjb3rb1f1l79qmh2mms3vrrn5v4a13wjmqsd7brw";
        libraryHaskellDepends = [ base servant servant-foreign text ];
        testHaskellDepends = [ base hspec servant servant-foreign text ];
        description = "Generate Ruby clients from Servant APIs";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lacroix" = callPackage
@@ -158300,7 +156720,6 @@ self: {
        description = "Minimalistic type-checked compile-time template engine";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambda-ast" = callPackage
@@ -158348,7 +156767,6 @@ self: {
        description = "A lambda calculus interpreter";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambda-calculus-interpreter" = callPackage
@@ -158404,7 +156822,6 @@ self: {
        description = "a Paralell-DEVS implementaion based on distributed-process";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambda-options" = callPackage
@@ -158420,7 +156837,6 @@ self: {
        description = "Declarative command-line parser with type-driven pattern matching";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambda-placeholders" = callPackage
@@ -158505,7 +156921,6 @@ self: {
        description = "RSS 2.0 feed generator";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdaLit" = callPackage
@@ -158524,7 +156939,6 @@ self: {
        description = "...";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdabot" = callPackage
@@ -158764,7 +157178,6 @@ self: {
        description = "Lambdabot for Zulip Chat";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacat" = callPackage
@@ -158827,7 +157240,6 @@ self: {
        description = "LambdaCms \"media\" extension";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube" = callPackage
@@ -158842,7 +157254,6 @@ self: {
        description = "A simple lambda cube type checker";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-bullet" = callPackage
@@ -158857,7 +157268,6 @@ self: {
        description = "Example for combining LambdaCube and Bullet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-compiler" = callPackage
@@ -158883,7 +157293,6 @@ self: {
        description = "LambdaCube 3D is a DSL to program GPUs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-core" = callPackage
@@ -158900,7 +157309,6 @@ self: {
        description = "LambdaCube 3D IR";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-edsl" = callPackage
@@ -158918,7 +157326,6 @@ self: {
        description = "LambdaCube 3D EDSL definition";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-engine" = callPackage
@@ -158939,7 +157346,6 @@ self: {
        description = "3D rendering engine written entirely in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-examples" = callPackage
@@ -158957,7 +157363,6 @@ self: {
        description = "Examples for LambdaCube";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-gl" = callPackage
@@ -158977,7 +157382,6 @@ self: {
        description = "OpenGL 3.3 Core Profile backend for LambdaCube 3D";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdacube-ir" = callPackage
@@ -159013,7 +157417,6 @@ self: {
        description = "Samples for LambdaCube 3D";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdatex" = callPackage
@@ -159077,7 +157480,6 @@ self: {
        description = "Fpga bus core and serialization for RedPitaya";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lambdiff" = callPackage
@@ -159096,7 +157498,6 @@ self: {
        description = "Diff Viewer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lame" = callPackage
@@ -159154,7 +157555,6 @@ self: {
        description = "A Lisp";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-Modula2" = callPackage
@@ -159188,7 +157588,6 @@ self: {
        description = "Parser, pretty-printer, and more for the Modula-2 programming language";
        license = lib.licenses.gpl3Plus;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-asn" = callPackage
@@ -159311,7 +157710,6 @@ self: {
        description = "Interpreter and language infrastructure for Boogie";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-c" = callPackage
@@ -159330,6 +157728,7 @@ self: {
        testHaskellDepends = [ base directory filepath process ];
        description = "Analysis and generation of C code";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "language-c_0_9_0_1" = callPackage
@@ -159349,6 +157748,7 @@ self: {
        description = "Analysis and generation of C code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "language-c-comments" = callPackage
@@ -159388,20 +157788,20 @@ self: {
     ({ mkDerivation, alex, array, base, bytestring, containers
      , exception-mtl, exception-transformers, filepath, happy
      , haskell-src-meta, HUnit, mainland-pretty, mtl, srcloc, syb
-     , symbol, template-haskell, test-framework, test-framework-hunit
+     , template-haskell, test-framework, test-framework-hunit
      }:
      mkDerivation {
        pname = "language-c-quote";
-       version = "0.12.2.1";
-       sha256 = "0hwv4b40wj953f39gqn8ji4ycli67c90b8xbizskd4i1x3nqbi35";
+       version = "0.13";
+       sha256 = "02axz6498sg2rf24qds39n9gysc4lm3v354h2qyhrhadlfq8sf6d";
        libraryHaskellDepends = [
          array base bytestring containers exception-mtl
          exception-transformers filepath haskell-src-meta mainland-pretty
-         mtl srcloc syb symbol template-haskell
+         mtl srcloc syb template-haskell
        ];
        libraryToolDepends = [ alex happy ];
        testHaskellDepends = [
-         base bytestring HUnit mainland-pretty srcloc symbol test-framework
+         base bytestring HUnit mainland-pretty srcloc test-framework
          test-framework-hunit
        ];
        description = "C/CUDA/OpenCL/Objective-C quasiquoting library";
@@ -159557,8 +157957,6 @@ self: {
        doHaddock = false;
        description = "A language for generative literature";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-docker" = callPackage
@@ -159568,29 +157966,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-docker";
-       version = "9.2.0";
-       sha256 = "08nq78091w7dii823fy7bvp2gxn1j1fp1fj151z37hvf423w19ds";
-       libraryHaskellDepends = [
-         base bytestring containers data-default-class megaparsec
-         prettyprinter split text time
-       ];
-       testHaskellDepends = [
-         base bytestring containers data-default-class hspec HUnit
-         megaparsec prettyprinter QuickCheck split text time
-       ];
-       description = "Dockerfile parser, pretty-printer and embedded DSL";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "language-docker_9_3_0" = callPackage
-    ({ mkDerivation, base, bytestring, containers, data-default-class
-     , hspec, HUnit, megaparsec, prettyprinter, QuickCheck, split, text
-     , time
-     }:
-     mkDerivation {
-       pname = "language-docker";
-       version = "9.3.0";
-       sha256 = "1n9v0b6lwr528b6919y11a8d27mhsp0mm870rx0rjg9l5j4mnbvn";
+       version = "10.0.1";
+       sha256 = "19pyms0ik37wpzjnlplj2vwikbjdjaw78llpfjp0a0467wlk7na6";
        libraryHaskellDepends = [
          base bytestring containers data-default-class megaparsec
          prettyprinter split text time
@@ -159601,7 +157978,6 @@ self: {
        ];
        description = "Dockerfile parser, pretty-printer and embedded DSL";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "language-dockerfile" = callPackage
@@ -159706,7 +158082,6 @@ self: {
        description = "Parser and pretty printer for the Eiffel language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-elm" = callPackage
@@ -159739,8 +158114,6 @@ self: {
        libraryToolDepends = [ alex happy ];
        description = "Fortran lexer and parser, language support, and extensions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-gcl" = callPackage
@@ -159949,7 +158322,6 @@ self: {
        description = "Parser and serializer for the Kort information language";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-lua" = callPackage
@@ -160074,7 +158446,6 @@ self: {
        description = "A library for dealing with the Ninja build language";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-nix" = callPackage
@@ -160123,7 +158494,6 @@ self: {
        description = "Parser, pretty-printer, and more for the Oberon programming language";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-objc" = callPackage
@@ -160297,7 +158667,6 @@ self: {
        description = "Generate coloured XHTML for Python code";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-python-test" = callPackage
@@ -160328,7 +158697,6 @@ self: {
        description = "Utilities for working with the Qux language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-rust" = callPackage
@@ -160429,7 +158797,6 @@ self: {
        description = "Various tools to detect/correct mistakes in words";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-sqlite" = callPackage
@@ -160485,8 +158852,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Parser and pretty printer for the Thrift IDL format";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-tl" = callPackage
@@ -160596,7 +158961,6 @@ self: {
        description = "Numerical Linear Algebra using LAPACK";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lapack-carray" = callPackage
@@ -160614,7 +158978,6 @@ self: {
        description = "Auto-generated interface to Fortran LAPACK via CArrays";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lapack-comfort-array" = callPackage
@@ -160632,7 +158995,6 @@ self: {
        description = "Auto-generated interface to Fortran LAPACK via comfort-array";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lapack-ffi" = callPackage
@@ -160699,8 +159061,10 @@ self: {
        ];
        description = "Efficiently hash (large) Haskell values";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
+       maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
   "largeword" = callPackage
@@ -160738,7 +159102,6 @@ self: {
        description = "Tool to track security alerts on LWN";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "latest-npm-version" = callPackage
@@ -160801,7 +159164,6 @@ self: {
        description = "Use actual LaTeX to render formulae inside Hakyll pages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "latex-formulae-image" = callPackage
@@ -160844,7 +159206,6 @@ self: {
        description = "Render LaTeX formulae in pandoc documents to images with an actual LaTeX installation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "latex-function-tables" = callPackage
@@ -160898,7 +159259,6 @@ self: {
        description = "Use actual LaTeX to render formulae inside Hakyll pages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "latex-svg-image" = callPackage
@@ -160938,7 +159298,6 @@ self: {
        description = "Render LaTeX formulae in pandoc documents to images with an actual LaTeX";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lattices" = callPackage
@@ -160997,8 +159356,6 @@ self: {
        ];
        description = "Server-side SDK for integrating with LaunchDarkly";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "launchpad-control" = callPackage
@@ -161097,7 +159454,6 @@ self: {
        description = "Control structure similar to Control.Monad.State, allowing multiple nested states, distinguishable by provided phantom types.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "layers" = callPackage
@@ -161131,7 +159487,6 @@ self: {
        description = "A prototypical 2d platform game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "layout" = callPackage
@@ -161169,8 +159524,6 @@ self: {
        libraryHaskellDepends = [ alex-tools base text ];
        description = "A collection of different layout implementations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "layouting" = callPackage
@@ -161187,7 +159540,6 @@ self: {
        description = "General layouting library. Currently supports layouting 2D areas and can be used as a backend for text pretty printing or automatic windows layouting managers.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lazy" = callPackage
@@ -161232,7 +159584,6 @@ self: {
        description = "Identifiers for not-yet-computed values";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lazy-hash-cache" = callPackage
@@ -161254,7 +159605,6 @@ self: {
        description = "Storing computed values for re-use when the same program runs again";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lazy-io" = callPackage
@@ -161279,8 +159629,6 @@ self: {
        libraryHaskellDepends = [ base bytestring io-streams ];
        description = "Get lazy with your io-streams";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lazy-priority-queue" = callPackage
@@ -161310,8 +159658,6 @@ self: {
        libraryHaskellDepends = [ base size-based ];
        description = "Finds values satisfying a lazy predicate";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lazyarray" = callPackage
@@ -161502,7 +159848,6 @@ self: {
        description = "LDIF idempotent apply tool";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ldif" = callPackage
@@ -161566,7 +159911,6 @@ self: {
        description = "Robust space leak, and its strictification";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lean" = callPackage
@@ -161583,7 +159927,6 @@ self: {
        description = "Bonds to Lean theorem prover";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lean-peano" = callPackage
@@ -161608,25 +159951,12 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.9.3";
-       sha256 = "14wi7h07pipd56grhaqmhb8wmr52llgd3xb7fm8hi9fb1sfzmvg0";
-       libraryHaskellDepends = [ base template-haskell ];
-       testHaskellDepends = [ base ];
-       description = "Enumerative property-based testing";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "leancheck_0_9_4" = callPackage
-    ({ mkDerivation, base, template-haskell }:
-     mkDerivation {
-       pname = "leancheck";
-       version = "0.9.4";
-       sha256 = "0w17ymj7k4sr9jwp9yrgh3l94l3kgjyxxnpxwj2sdqk8fvmjpkny";
+       version = "0.9.6";
+       sha256 = "0nw7hm9aawv6xljii3cjy9qbdbb5p05k5rmc9qv4dkajjjyhyna9";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
        description = "Enumerative property-based testing";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "leancheck-enum-instances" = callPackage
@@ -161699,8 +160029,6 @@ self: {
        ];
        description = "Use the Leanpub API via Wreq";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "leapseconds" = callPackage
@@ -161806,6 +160134,8 @@ self: {
        pname = "leb128";
        version = "0.1.0.0";
        sha256 = "097xzdj1q17whnzwlpwnfapppgc4lqwmmfcv2694gzlil84rqwk7";
+       revision = "1";
+       editedCabalFile = "02vn6ffdfvrvcnil22hx4v85ykdxj1j0bsnv111rkxi17j2s76sp";
        libraryHaskellDepends = [ base bytestring ghc-prim transformers ];
        testHaskellDepends = [
          base bytestring QuickCheck test-framework
@@ -161883,7 +160213,6 @@ self: {
        description = "Distributed, stateful, homogeneous microservice framework";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "legion-discovery" = callPackage
@@ -161910,7 +160239,6 @@ self: {
        description = "A discovery service based on Legion";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "legion-discovery-client" = callPackage
@@ -161931,7 +160259,6 @@ self: {
        description = "Client library for communicating with legion-discovery";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "legion-extra" = callPackage
@@ -161954,7 +160281,6 @@ self: {
        description = "Extra non-essential utilities for building legion applications";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "leksah" = callPackage
@@ -162031,7 +160357,6 @@ self: {
        description = "Metadata collection for leksah";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lendingclub" = callPackage
@@ -162067,8 +160392,8 @@ self: {
        pname = "lens";
        version = "4.19.2";
        sha256 = "0fy2vr5r11cc6ana8m2swqgs3zals4kims55vd6119bi76p5iy2j";
-       revision = "5";
-       editedCabalFile = "1r9rhblsw1g2y2lyf8vhps05hvx6jxs5r6y1rf868hxz0z242i7q";
+       revision = "6";
+       editedCabalFile = "1k08my9rh1il3ibiyhljxkgndfgk143pn5a6nyzjnckw3la09myl";
        setupHaskellDepends = [ base Cabal cabal-doctest filepath ];
        libraryHaskellDepends = [
          array base base-orphans bifunctors bytestring call-stack comonad
@@ -162109,6 +160434,8 @@ self: {
        pname = "lens";
        version = "5.0.1";
        sha256 = "0gzwx4b758phm51hz5i4bbkbvjw1ka7qj04zd9l9sh9n6s9ksm7c";
+       revision = "1";
+       editedCabalFile = "0lk83zwnl91yyhzkq6zx18plkk85pdvdf8x0y5rivqkgmr1vwzy9";
        libraryHaskellDepends = [
          array assoc base base-orphans bifunctors bytestring call-stack
          comonad containers contravariant distributive exceptions filepath
@@ -162541,6 +160868,7 @@ self: {
        description = "Tutorial for the lens library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -162572,7 +160900,6 @@ self: {
        description = "Collection of missing lens utilities";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lens-xml" = callPackage
@@ -162638,8 +160965,7 @@ self: {
        ];
        description = "frugal issue tracker";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ rvl ];
      }) {};
 
   "lenz" = callPackage
@@ -162793,7 +161119,6 @@ self: {
        description = "An implementation of the Levenberg-Marquardt algorithm";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "levmar-chart" = callPackage
@@ -162808,7 +161133,6 @@ self: {
        description = "Plots the results of the Levenberg-Marquardt algorithm in a chart";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lex-applicative" = callPackage
@@ -162829,7 +161153,6 @@ self: {
        description = "See README for more info";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lexer-applicative" = callPackage
@@ -162888,7 +161211,6 @@ self: {
        description = "Lens GUI Toolkit";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lha" = callPackage
@@ -162901,7 +161223,6 @@ self: {
        description = "Data structures for the Les Houches Accord";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lhae" = callPackage
@@ -162922,7 +161243,6 @@ self: {
        description = "Simple spreadsheet program";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lhc" = callPackage
@@ -162950,7 +161270,6 @@ self: {
        description = "Parser and writer for Les-Houches event files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lhs2TeX-hl" = callPackage
@@ -163085,8 +161404,6 @@ self: {
        ];
        description = "Haskell interface to libarchive";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libarchive;};
 
   "libarchive-conduit" = callPackage
@@ -163124,7 +161441,6 @@ self: {
        description = "Haskell bindings to libconfig";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libconfig;};
 
   "libcspm" = callPackage
@@ -163146,7 +161462,6 @@ self: {
        description = "A library providing a parser, type checker and evaluator for CSPM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libexpect" = callPackage
@@ -163390,7 +161705,6 @@ self: {
        description = "Lastfm API interface";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liblawless" = callPackage
@@ -163427,7 +161741,6 @@ self: {
        description = "Prelude based on protolude for GHC 8 and beyond";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liblinear-enumerator" = callPackage
@@ -163442,7 +161755,6 @@ self: {
        description = "liblinear iteratee";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libltdl" = callPackage
@@ -163470,6 +161782,9 @@ self: {
        librarySystemDepends = [ modbus ];
        description = "Haskell bindings to the C modbus library";
        license = lib.licenses.bsd2;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {modbus = null;};
 
   "libmolude" = callPackage
@@ -163503,7 +161818,6 @@ self: {
        description = "Prelude based on protolude for GHC 8 and beyond";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libmpd" = callPackage
@@ -163699,7 +162013,6 @@ self: {
        description = "Raft consensus algorithm";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "librandomorg" = callPackage
@@ -163734,7 +162047,6 @@ self: {
        description = "Bindings to the Librato API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libravatar" = callPackage
@@ -163821,8 +162133,8 @@ self: {
      }:
      mkDerivation {
        pname = "libssh2";
-       version = "0.2.0.7";
-       sha256 = "05h0awwhqlswjjybw6y1p8byyvfggnx63n0cbqvknrkq338qfnyw";
+       version = "0.2.0.8";
+       sha256 = "01dc3przjwhh2aws74ypm19wqrp98mjjpsarhp69r1asq9dv0h0k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring network syb time unix ];
@@ -163851,7 +162163,6 @@ self: {
        description = "Conduit wrappers for libssh2 FFI bindings (see libssh2 package)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libstackexchange" = callPackage
@@ -163910,6 +162221,9 @@ self: {
        libraryPkgconfigDepends = [ systemd ];
        description = "Haskell bindings to libsystemd-journal";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) systemd;};
 
   "libtagc" = callPackage
@@ -163934,12 +162248,17 @@ self: {
        pname = "libtelnet";
        version = "0.1.0.1";
        sha256 = "13g7wpibjncj9h6yva8gj9fqs8j806r1vnina78wgv8f980dqxks";
+       revision = "1";
+       editedCabalFile = "13lg79nlwmhd5qqyr31bk7wpfl0mvr37q4ha3q83gxya03f34v5h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring ];
        libraryPkgconfigDepends = [ libtelnet ];
        description = "Bindings to libtelnet";
        license = lib.licenses.gpl3Plus;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) libtelnet;};
 
   "libversion" = callPackage
@@ -164020,7 +162339,6 @@ self: {
        description = "Enumerator-based API for libXML's SAX interface";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "libxml-sax" = callPackage
@@ -164077,18 +162395,24 @@ self: {
        executableSystemDepends = [ nvpair zfs ];
        description = "Bindings to libzfs, for dealing with the Z File System and Zpools";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {nvpair = null; inherit (pkgs) zfs;};
 
   "licensor" = callPackage
-    ({ mkDerivation, base, Cabal, containers, directory, process }:
+    ({ mkDerivation, base, bytestring, Cabal, containers, directory
+     , http-client, http-client-tls, process, tar, temporary, zlib
+     }:
      mkDerivation {
        pname = "licensor";
-       version = "0.4.3";
-       sha256 = "19ydisxc5yzm0ccj76p7sg39cpjg5c57wd3gaybc5k7bqrlv14c6";
+       version = "0.5.0";
+       sha256 = "0i49l4d5dvvj4s6fbdhg38dmdclxr4ld69lzm1s5xx9m7aqy3al9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base Cabal containers directory process
+         base bytestring Cabal containers directory http-client
+         http-client-tls process tar temporary zlib
        ];
        executableHaskellDepends = [ base Cabal containers directory ];
        description = "A license compatibility helper";
@@ -164171,7 +162495,6 @@ self: {
        description = "Flexible manual resource management";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lift-generics" = callPackage
@@ -164211,12 +162534,11 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "lift-type";
-       version = "0.1.0.0";
-       sha256 = "0832xn7bfv1kwg02mmh6my11inljb066mci01b7p0xkcip1kmrhy";
-       revision = "1";
-       editedCabalFile = "1m89kzw7zrys8jjg7sbdpfq3bsqdvqr8bcszsnwvx0nmj1c6hciw";
+       version = "0.1.0.1";
+       sha256 = "1195iyf0s8zmibjmvd10bszyccp1a2g4wdysn7yk10d3j0q9xdxf";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base template-haskell ];
+       description = "Lift a type from a Typeable constraint to a Template Haskell type";
        license = lib.licenses.bsd3;
      }) {};
 
@@ -164284,7 +162606,6 @@ self: {
        description = "lifted IO operations from the base library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lifted-protolude" = callPackage
@@ -164415,7 +162736,6 @@ self: {
        description = "Haskell client for lightning-viz REST API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lightstep-haskell" = callPackage
@@ -164448,7 +162768,6 @@ self: {
        description = "LightStep OpenTracing client library";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lighttpd-conf" = callPackage
@@ -164466,7 +162785,6 @@ self: {
        description = "Lighttpd configuration file tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lighttpd-conf-qq" = callPackage
@@ -164484,7 +162802,6 @@ self: {
        description = "A QuasiQuoter for lighttpd configuration files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lilypond" = callPackage
@@ -164661,8 +162978,6 @@ self: {
        ];
        description = "Haskell SDK for LINE Messaging API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "line-break" = callPackage
@@ -164833,7 +163148,6 @@ self: {
        description = "Compute resistance of linear electrical circuits";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linear-code" = callPackage
@@ -164957,27 +163271,35 @@ self: {
        libraryHaskellDepends = [ base sbv ];
        description = "Use SMT solvers to solve linear systems over integers and rationals";
        license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "linearmap-category" = callPackage
     ({ mkDerivation, base, call-stack, constrained-categories
-     , containers, free-vector-spaces, ieee754, lens, linear
-     , manifolds-core, QuickCheck, semigroups, tagged, transformers
-     , vector, vector-space
+     , containers, data-default-class, free-vector-spaces, hashable
+     , ieee754, lens, linear, manifolds-core, MemoTrie, QuickCheck
+     , semigroups, tagged, tasty, tasty-quickcheck, template-haskell
+     , transformers, vector, vector-space
      }:
      mkDerivation {
        pname = "linearmap-category";
-       version = "0.4.0.1";
-       sha256 = "1zc7zns49d832wm22dsbv5xvh5x6s4zg6ky1vr941rs1z9jskmyj";
+       version = "0.4.1.0";
+       sha256 = "01cpl44wg5kyx9lxv23hcsxd8dw90psqj9sgaklhxklbdvn77bvr";
        libraryHaskellDepends = [
          base call-stack constrained-categories containers
-         free-vector-spaces ieee754 lens linear manifolds-core QuickCheck
-         semigroups tagged transformers vector vector-space
+         data-default-class free-vector-spaces hashable ieee754 lens linear
+         manifolds-core MemoTrie QuickCheck semigroups tagged
+         template-haskell transformers vector vector-space
+       ];
+       testHaskellDepends = [
+         base constrained-categories linear manifolds-core QuickCheck tasty
+         tasty-quickcheck vector-space
        ];
        description = "Native, complete, matrix-free linear algebra";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linearscan" = callPackage
@@ -165014,7 +163336,6 @@ self: {
        description = "Makes it easy to use the linearscan register allocator with Hoopl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linebreak" = callPackage
@@ -165125,7 +163446,6 @@ self: {
        description = "linkchk is a network interface link ping monitor";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linkcore" = callPackage
@@ -165143,7 +163463,6 @@ self: {
        description = "Combines multiple GHC Core modules into a single module";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linked-list-with-iterator" = callPackage
@@ -165232,8 +163551,6 @@ self: {
        ];
        description = "Lightweight library for building HTTP API";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linnet-aeson" = callPackage
@@ -165251,8 +163568,6 @@ self: {
        ];
        description = "Aeson JSON support for Linnet";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linnet-conduit" = callPackage
@@ -165273,8 +163588,6 @@ self: {
        ];
        description = "Conduit-backed support for streaming in Linnet";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linode" = callPackage
@@ -165371,6 +163684,9 @@ self: {
        libraryHaskellDepends = [ base bytestring time unix ];
        description = "Bindings to Linux evdev input device interface";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "linux-file-extents" = callPackage
@@ -165384,6 +163700,9 @@ self: {
        libraryHaskellDepends = [ base unix ];
        description = "Retrieve file fragmentation information under Linux";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "linux-framebuffer" = callPackage
@@ -165407,6 +163726,9 @@ self: {
        libraryHaskellDepends = [ base bytestring hashable unix ];
        description = "Thinner binding to the Linux Kernel's inotify interface";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "linux-kmod" = callPackage
@@ -165432,6 +163754,9 @@ self: {
        libraryHaskellDepends = [ base bytestring ];
        description = "Mount and unmount filesystems";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "linux-namespaces" = callPackage
@@ -165443,6 +163768,9 @@ self: {
        libraryHaskellDepends = [ base bytestring unix ];
        description = "Work with linux namespaces: create new or enter existing ones";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "linux-perf" = callPackage
@@ -165485,7 +163813,6 @@ self: {
        description = "Wrapping of Linux' ptrace(2)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "linux-xattr" = callPackage
@@ -165547,7 +163874,6 @@ self: {
        description = "Labeled IO library";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lio-fs" = callPackage
@@ -165610,7 +163936,6 @@ self: {
        description = "RISC-V Core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lipsum-gen" = callPackage
@@ -165664,7 +163989,6 @@ self: {
        description = "Drop-in base replacement for LiquidHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-bytestring" = callPackage
@@ -165681,7 +164005,6 @@ self: {
        description = "LiquidHaskell specs for the bytestring package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-containers" = callPackage
@@ -165698,7 +164021,6 @@ self: {
        description = "LiquidHaskell specs for the containers package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-fixpoint" = callPackage
@@ -165747,7 +164069,6 @@ self: {
        description = "Drop-in ghc-prim replacement for LiquidHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-parallel" = callPackage
@@ -165763,7 +164084,6 @@ self: {
        description = "LiquidHaskell specs for the parallel package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-platform" = callPackage
@@ -165784,7 +164104,6 @@ self: {
        description = "A battery-included platform for LiquidHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-prelude" = callPackage
@@ -165802,7 +164121,6 @@ self: {
        description = "General utility modules for LiquidHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquid-vector" = callPackage
@@ -165817,7 +164135,6 @@ self: {
        description = "LiquidHaskell specs for the vector package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liquidhaskell" = callPackage
@@ -166083,7 +164400,6 @@ self: {
        description = "An \"attoparsec\" adapter for \"list-t\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "list-t-html-parser" = callPackage
@@ -166108,7 +164424,6 @@ self: {
        description = "Streaming HTML parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "list-t-http-client" = callPackage
@@ -166175,6 +164490,7 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "List monad transformer";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "list-tries" = callPackage
@@ -166231,7 +164547,6 @@ self: {
        description = "Witnesses for working with type-level lists";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "list-zip-def" = callPackage
@@ -166287,7 +164602,6 @@ self: {
        description = "A client library to the ListenBrainz project";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "listlike-instances" = callPackage
@@ -166407,6 +164721,42 @@ self: {
        broken = true;
      }) {};
 
+  "literatex" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, conduit
+     , filepath, optparse-applicative, tasty, tasty-hunit, text, ttc
+     , unliftio
+     }:
+     mkDerivation {
+       pname = "literatex";
+       version = "0.1.0.0";
+       sha256 = "0nfmvblm3a370a59hyd28wv8xnq1wlxcm5xz4n6b3n5cprj4h99z";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring conduit text ttc unliftio
+       ];
+       executableHaskellDepends = [
+         ansi-wl-pprint base optparse-applicative ttc
+       ];
+       testHaskellDepends = [
+         base bytestring filepath tasty tasty-hunit text ttc unliftio
+       ];
+       description = "transform literate source code to Markdown";
+       license = lib.licenses.mit;
+     }) {};
+
+  "little-earley" = callPackage
+    ({ mkDerivation, base, containers, mtl, tasty, tasty-hunit }:
+     mkDerivation {
+       pname = "little-earley";
+       version = "0.2.0.0";
+       sha256 = "0zqlnaj1w6m2h7g55xg9cjl978ij66lw69x4v5b9vi7x7maa44ms";
+       libraryHaskellDepends = [ base containers mtl ];
+       testHaskellDepends = [ base containers mtl tasty tasty-hunit ];
+       description = "Simple implementation of Earley parsing";
+       license = lib.licenses.mit;
+     }) {};
+
   "little-logger" = callPackage
     ({ mkDerivation, base, co-log, co-log-core, microlens, mtl, tasty
      , tasty-hunit, text, unliftio-core
@@ -166424,8 +164774,6 @@ self: {
        ];
        description = "Basic logging based on co-log";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "little-rio" = callPackage
@@ -166470,7 +164818,6 @@ self: {
        description = "Live coding of MIDI music";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "liveplot" = callPackage
@@ -166558,7 +164905,6 @@ self: {
        description = "Bindings to the LLVM compiler toolkit";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-analysis" = callPackage
@@ -166587,7 +164933,6 @@ self: {
        description = "A Haskell library for analyzing LLVM bitcode";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-base" = callPackage
@@ -166622,7 +164967,6 @@ self: {
        description = "The base types for a mostly pure Haskell LLVM analysis library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-base-util" = callPackage
@@ -166635,7 +164979,6 @@ self: {
        description = "Utilities for bindings to the LLVM compiler toolkit";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-data-interop" = callPackage
@@ -166657,7 +165000,6 @@ self: {
        description = "A low-level data interoperability binding for LLVM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-dsl" = callPackage
@@ -166676,7 +165018,6 @@ self: {
        description = "Support for writing an EDSL with LLVM-JIT as target";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-extension" = callPackage
@@ -166696,7 +165037,6 @@ self: {
        description = "Processor specific intrinsics for the llvm interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-extra" = callPackage
@@ -166723,7 +165063,6 @@ self: {
        description = "Utility functions for the llvm interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-ffi" = callPackage
@@ -166786,7 +165125,6 @@ self: {
        description = "General purpose LLVM bindings";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {llvm-config = null;};
 
   "llvm-general-pure" = callPackage
@@ -166833,7 +165171,6 @@ self: {
        description = "QuasiQuoting llvm code for llvm-general";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-hs" = callPackage
@@ -166982,7 +165319,6 @@ self: {
        description = "LLVM bitcode parsing library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-tf" = callPackage
@@ -167005,7 +165341,6 @@ self: {
        description = "Bindings to the LLVM compiler toolkit using type families";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-tools" = callPackage
@@ -167034,7 +165369,6 @@ self: {
        description = "Useful tools built on llvm-analysis";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lmdb" = callPackage
@@ -167127,7 +165461,6 @@ self: {
        description = "LMonad for Yesod integrates LMonad's IFC with Yesod web applications";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "load-balancing" = callPackage
@@ -167239,7 +165572,6 @@ self: {
        description = "Generalised local search within Haskell, for applications in combinatorial optimisation";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "localization" = callPackage
@@ -167270,7 +165602,6 @@ self: {
        description = "GNU Gettext-based messages localization library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "located" = callPackage
@@ -167397,7 +165728,6 @@ self: {
        description = "Very simple poll lock";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lockfree-queue" = callPackage
@@ -167456,7 +165786,6 @@ self: {
        description = "Structured logging solution with multiple backends";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "log-base" = callPackage
@@ -167467,8 +165796,8 @@ self: {
      }:
      mkDerivation {
        pname = "log-base";
-       version = "0.9.1.0";
-       sha256 = "0p0zb805a8zlxdnii6r0gmf0zic4g4zxkvcq84j6g8973qx1fch9";
+       version = "0.9.1.1";
+       sha256 = "0b69q4vhayqg0n8kzqb4lma289av39zm5qbinnam4hh9inqhayfk";
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring deepseq exceptions mmorph
          monad-control monad-time mtl semigroups stm text time
@@ -167560,10 +165889,8 @@ self: {
      }:
      mkDerivation {
        pname = "log-postgres";
-       version = "0.7.1.4";
-       sha256 = "1m96d5486xadypm5iby8rkb979k82md394j5iaik6xk5aavcn6xx";
-       revision = "1";
-       editedCabalFile = "0yyaxibkq8c9bwhaday8ijmfbm8k3i14wd9zsgfby99b6rxra351";
+       version = "0.7.1.5";
+       sha256 = "0g89403ijgp2xznd497xhvifh2jlgph4raz4l5fh5ajxvcf33hvn";
        libraryHaskellDepends = [
          aeson aeson-pretty base base64-bytestring bytestring deepseq
          hpqtypes http-client lifted-base log-base mtl semigroups split text
@@ -167572,7 +165899,6 @@ self: {
        description = "Structured logging solution (PostgreSQL back end)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "log-utils" = callPackage
@@ -167596,7 +165922,6 @@ self: {
        description = "Utils for working with logs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "log-warper" = callPackage
@@ -167811,7 +166136,6 @@ self: {
        description = "Supplemental packages for `logging-effect`";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "logging-effect-extra-file" = callPackage
@@ -167883,6 +166207,9 @@ self: {
        ];
        description = "Journald back-end for logging-facade";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "logging-facade-syslog" = callPackage
@@ -167943,7 +166270,6 @@ self: {
        description = "Framework for propositional and first order logic, theorem proving";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "logicst" = callPackage
@@ -168063,7 +166389,6 @@ self: {
        description = "Useful utilities for the Lojban language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lojbanParser" = callPackage
@@ -168110,7 +166435,6 @@ self: {
        description = "Prolog with lojban";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol" = callPackage
@@ -168162,7 +166486,6 @@ self: {
        description = "Lattice-based cryptographic applications using <https://hackage.haskell.org/package/lol lol>.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol-benches" = callPackage
@@ -168180,7 +166503,6 @@ self: {
        description = "A library for benchmarking <https://hackage.haskell.org/package/lol lol>.";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol-calculus" = callPackage
@@ -168224,7 +166546,6 @@ self: {
        description = "A fast C++ backend for <https://hackage.haskell.org/package/lol lol>.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol-repa" = callPackage
@@ -168245,7 +166566,6 @@ self: {
        description = "A repa backend for <https://hackage.haskell.org/package/lol lol>.";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol-tests" = callPackage
@@ -168266,7 +166586,6 @@ self: {
        description = "A library for testing <https://hackage.haskell.org/package/lol Λ ∘ λ>.";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lol-typing" = callPackage
@@ -168292,7 +166611,6 @@ self: {
        description = "Type inferencer for LOL (λω language)";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "loli" = callPackage
@@ -168311,7 +166629,6 @@ self: {
        description = "A minimum web dev DSL in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "long-double" = callPackage
@@ -168368,7 +166685,6 @@ self: {
        description = "Fast Brute-force search using parallelism";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lookup-tables" = callPackage
@@ -168413,7 +166729,6 @@ self: {
        description = "control-monad-loop port for effin";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "loop-while" = callPackage
@@ -168585,7 +166900,6 @@ self: {
        description = "EDSL for the Michelson Language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "loris" = callPackage
@@ -168639,7 +166953,6 @@ self: {
        description = "An implementation of an adictive two-player card game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "louis" = callPackage
@@ -168674,7 +166987,6 @@ self: {
        description = "Amazon Simple Workflow Service Wrapper for Work Pools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lowgl" = callPackage
@@ -168800,7 +167112,6 @@ self: {
        description = "List USB devices";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lscabal" = callPackage
@@ -168852,36 +167163,6 @@ self: {
      }:
      mkDerivation {
        pname = "lsp";
-       version = "1.1.1.0";
-       sha256 = "04ndz4v1mwga13qndmnaaj145y5zqw7zv64px7ak26qvd1m26h9r";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson async attoparsec base bytestring containers data-default
-         dependent-map directory filepath hashable hslogger lens lsp-types
-         mtl network-uri random scientific sorted-list stm text time
-         transformers unliftio-core unordered-containers uuid
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers data-default directory filepath
-         hashable hspec lens network-uri QuickCheck quickcheck-instances
-         rope-utf16-splay sorted-list stm text unordered-containers
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Haskell library for the Microsoft Language Server Protocol";
-       license = lib.licenses.mit;
-     }) {};
-
-  "lsp_1_2_0_0" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, bytestring
-     , containers, data-default, dependent-map, directory, filepath
-     , hashable, hslogger, hspec, hspec-discover, lens, lsp-types, mtl
-     , network-uri, QuickCheck, quickcheck-instances, random
-     , rope-utf16-splay, scientific, sorted-list, stm, text, time
-     , transformers, unliftio-core, unordered-containers, uuid
-     }:
-     mkDerivation {
-       pname = "lsp";
        version = "1.2.0.0";
        sha256 = "0ca8s84xlh9kmi1lx47d6z3c8c827q30spmbxi1nl37dn35ib4b6";
        isLibrary = true;
@@ -168900,67 +167181,11 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Haskell library for the Microsoft Language Server Protocol";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lsp-test" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
      , bytestring, conduit, conduit-parse, containers, data-default
-     , Diff, directory, filepath, Glob, haskell-lsp, hspec, lens, mtl
-     , parser-combinators, process, text, transformers, unix
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "lsp-test";
-       version = "0.11.0.5";
-       sha256 = "0r038x65lc0ij6hs8klgj8v8f0fqqrn12dyxc0k8zf9pan9bwnph";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty ansi-terminal async base bytestring conduit
-         conduit-parse containers data-default Diff directory filepath Glob
-         haskell-lsp lens mtl parser-combinators process text transformers
-         unix unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base data-default directory filepath haskell-lsp hspec lens
-         text unordered-containers
-       ];
-       description = "Functional test framework for LSP servers";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "lsp-test_0_13_0_0" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
-     , bytestring, conduit, conduit-parse, containers, data-default
-     , Diff, directory, filepath, Glob, hspec, lens, lsp-types, mtl
-     , parser-combinators, process, some, text, time, transformers, unix
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "lsp-test";
-       version = "0.13.0.0";
-       sha256 = "1xyxmzcd6r56jj1k11lz1g6yld5q3k6cgb0bsf45px120dsf1dpy";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty ansi-terminal async base bytestring conduit
-         conduit-parse containers data-default Diff directory filepath Glob
-         lens lsp-types mtl parser-combinators process some text time
-         transformers unix unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base data-default directory filepath hspec lens lsp-types
-         text unordered-containers
-       ];
-       description = "Functional test framework for LSP servers";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "lsp-test_0_14_0_0" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
-     , bytestring, conduit, conduit-parse, containers, data-default
      , Diff, directory, extra, filepath, Glob, hspec, lens, lsp
      , lsp-types, mtl, parser-combinators, process, some, text, time
      , transformers, unix, unliftio, unordered-containers
@@ -168983,7 +167208,6 @@ self: {
        benchmarkHaskellDepends = [ base extra lsp process ];
        description = "Functional test framework for LSP servers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lsp-types" = callPackage
@@ -168995,29 +167219,6 @@ self: {
      }:
      mkDerivation {
        pname = "lsp-types";
-       version = "1.1.0.0";
-       sha256 = "19lkdqwh9a5rsx5nby37v54zhwyja306z0dyslsmdmwqw92qxx54";
-       revision = "1";
-       editedCabalFile = "0iifws4r1h9v1mbsrmbvssvm0gmvzm9yh9h85izly0s51869bbq4";
-       libraryHaskellDepends = [
-         aeson base binary bytestring containers data-default deepseq
-         dependent-sum dependent-sum-template directory filepath hashable
-         hslogger lens network-uri rope-utf16-splay scientific some
-         template-haskell temporary text unordered-containers
-       ];
-       description = "Haskell library for the Microsoft Language Server Protocol, data types";
-       license = lib.licenses.mit;
-     }) {};
-
-  "lsp-types_1_2_0_0" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, containers
-     , data-default, deepseq, dependent-sum, dependent-sum-template
-     , directory, filepath, hashable, hslogger, lens, network-uri
-     , rope-utf16-splay, scientific, some, template-haskell, temporary
-     , text, unordered-containers
-     }:
-     mkDerivation {
-       pname = "lsp-types";
        version = "1.2.0.0";
        sha256 = "1axl62yafkxh414dxr5i7pwqw0s3kkqphs7b259qk33vin3qayk3";
        libraryHaskellDepends = [
@@ -169028,7 +167229,6 @@ self: {
        ];
        description = "Haskell library for the Microsoft Language Server Protocol, data types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lss" = callPackage
@@ -169067,7 +167267,6 @@ self: {
        description = "Paint an L-System Grammar";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ltext" = callPackage
@@ -169099,6 +167298,8 @@ self: {
        ];
        description = "Parameterized file evaluator";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "lti13" = callPackage
@@ -169120,7 +167321,6 @@ self: {
        description = "Core functionality for LTI 1.3.";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ltiv1p1" = callPackage
@@ -169140,6 +167340,8 @@ self: {
        ];
        description = "Partial implementation of a service provider for LTI 1.1.";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "ltk" = callPackage
@@ -169238,7 +167440,6 @@ self: {
        description = "Library functions for reading and writing Lua chunks";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "luautils" = callPackage
@@ -169319,7 +167520,6 @@ self: {
        description = "Helper functions for using lucid with colonnade";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lucid-extras" = callPackage
@@ -169387,7 +167587,6 @@ self: {
        description = "Server side feed aggregator/reader";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "luhn" = callPackage
@@ -169400,7 +167599,6 @@ self: {
        description = "An implementation of Luhn's check digit algorithm";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lui" = callPackage
@@ -169417,7 +167615,6 @@ self: {
        description = "Purely FunctionaL User Interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "luis-client" = callPackage
@@ -169526,7 +167723,6 @@ self: {
        description = "Luminance samples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lushtags" = callPackage
@@ -169558,6 +167754,17 @@ self: {
        broken = true;
      }) {};
 
+  "lvar" = callPackage
+    ({ mkDerivation, base, containers, relude, stm }:
+     mkDerivation {
+       pname = "lvar";
+       version = "0.1.0.0";
+       sha256 = "1hllvr4nsjv3c3x5aybp05wr9pdvwlw101vq7c37ydnb91hbfdv4";
+       libraryHaskellDepends = [ base containers relude stm ];
+       description = "TMVar that can be listened to";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "lvish" = callPackage
     ({ mkDerivation, async, atomic-primops, base, bits-atomic
      , containers, deepseq, ghc-prim, HUnit, lattices, missing-foreign
@@ -169584,7 +167791,6 @@ self: {
        description = "Parallel scheduler, LVar data structures, and infrastructure to build more";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lvmlib" = callPackage
@@ -169737,8 +167943,6 @@ self: {
        ];
        description = "Bindings to LZ4";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lz4-conduit" = callPackage
@@ -169763,7 +167967,6 @@ self: {
        description = "LZ4 compression for conduits";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lz4-frame-conduit" = callPackage
@@ -169918,7 +168121,6 @@ self: {
        description = "Enumerator interface for lzma/xz compression";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) xz;};
 
   "lzma-static" = callPackage
@@ -169991,7 +168193,6 @@ self: {
        description = "Library for talking to the mDNSResponder daemon";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maam" = callPackage
@@ -170071,7 +168272,6 @@ self: {
        description = "Macbeth - A beautiful and minimalistic FICS client";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maccatcher" = callPackage
@@ -170161,7 +168361,6 @@ self: {
        description = "Machine transducers for Amazonka calls";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "machines-attoparsec" = callPackage
@@ -170182,8 +168381,6 @@ self: {
        ];
        description = "Parse machines streams with attoparsec parsers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "machines-binary" = callPackage
@@ -170195,8 +168392,6 @@ self: {
        libraryHaskellDepends = [ base binary bytestring machines ];
        description = "Binary utilities for the machines library";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "machines-bytestring" = callPackage
@@ -170255,8 +168450,6 @@ self: {
        ];
        description = "IO utilities for the machines library";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "machines-process" = callPackage
@@ -170271,8 +168464,6 @@ self: {
        ];
        description = "Process (system) utilities for the machines library";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "machines-zlib" = callPackage
@@ -170389,7 +168580,6 @@ self: {
        description = "Make a macosx app standalone deployable";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "macrm" = callPackage
@@ -170543,7 +168733,6 @@ self: {
        description = "Interact with Magic Wormhole";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "magicbane" = callPackage
@@ -170575,7 +168764,6 @@ self: {
        description = "A web framework that integrates Servant, RIO, EKG, fast-logger, wai-cli…";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "magico" = callPackage
@@ -170594,7 +168782,6 @@ self: {
        description = "Compute solutions for Magico puzzle";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "magma" = callPackage
@@ -170642,7 +168829,6 @@ self: {
        description = "ImageBoards to XMPP gate";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maid" = callPackage
@@ -170665,7 +168851,6 @@ self: {
        description = "A simple static web server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mail-pool" = callPackage
@@ -170689,7 +168874,6 @@ self: {
        description = "Preconfigured email connection pool on top of smtp";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mail-reports" = callPackage
@@ -170705,8 +168889,6 @@ self: {
        ];
        description = "A parser library for DMARC and SMTP TLS reports";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mailbox-count" = callPackage
@@ -170791,7 +168973,6 @@ self: {
        description = "API binding for Mailgun";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "main-tester" = callPackage
@@ -170814,8 +168995,8 @@ self: {
     ({ mkDerivation, base, containers, srcloc, text, transformers }:
      mkDerivation {
        pname = "mainland-pretty";
-       version = "0.7.0.1";
-       sha256 = "0cifvdpqcb1cvjazgqwaxvl2ga7kap5a6f89yw1xn8y5yw7nz1c8";
+       version = "0.7.1";
+       sha256 = "19z2769rik6kwvsil2if2bfq2v59jmwv74jy3fy4q3q3zy4239p1";
        libraryHaskellDepends = [
          base containers srcloc text transformers
        ];
@@ -170842,7 +169023,6 @@ self: {
        description = "Majordomo protocol for ZeroMQ";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "majority" = callPackage
@@ -170855,7 +169035,6 @@ self: {
        description = "Boyer-Moore Majority Vote Algorithm";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "make-hard-links" = callPackage
@@ -170997,6 +169176,7 @@ self: {
        libraryHaskellDepends = [ base transformers ];
        description = "A monad for managed values";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "manatee" = callPackage
@@ -171018,7 +169198,6 @@ self: {
        description = "The Haskell/Gtk+ Integrated Live Environment";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-all" = callPackage
@@ -171066,7 +169245,6 @@ self: {
        description = "Multithread interactive input/search framework for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-browser" = callPackage
@@ -171111,7 +169289,6 @@ self: {
        description = "The core of Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-curl" = callPackage
@@ -171135,7 +169312,6 @@ self: {
        description = "Download Manager extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-editor" = callPackage
@@ -171157,7 +169333,6 @@ self: {
        description = "Editor extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-filemanager" = callPackage
@@ -171179,7 +169354,6 @@ self: {
        description = "File manager extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-imageviewer" = callPackage
@@ -171201,7 +169375,6 @@ self: {
        description = "Image viewer extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-ircclient" = callPackage
@@ -171227,7 +169400,6 @@ self: {
        description = "IRC client extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-mplayer" = callPackage
@@ -171250,7 +169422,6 @@ self: {
        description = "Mplayer client extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-pdfviewer" = callPackage
@@ -171272,7 +169443,6 @@ self: {
        description = "PDF viewer extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-processmanager" = callPackage
@@ -171293,7 +169463,6 @@ self: {
        description = "Process manager extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-reader" = callPackage
@@ -171335,7 +169504,6 @@ self: {
        description = "Template code to create Manatee application";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-terminal" = callPackage
@@ -171356,7 +169524,6 @@ self: {
        description = "Terminal Emulator extension for Manatee";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manatee-welcome" = callPackage
@@ -171377,7 +169544,6 @@ self: {
        description = "Welcome module to help user play Manatee quickly";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mancala" = callPackage
@@ -171515,7 +169681,6 @@ self: {
        description = "Sampling random points on general manifolds";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manifolds" = callPackage
@@ -171546,7 +169711,6 @@ self: {
        description = "Coordinate-free hypersurfaces";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "manifolds-core" = callPackage
@@ -171600,8 +169764,8 @@ self: {
      }:
      mkDerivation {
        pname = "map-reduce-folds";
-       version = "0.1.0.5";
-       sha256 = "0a0xavn4dlcpkjw75lc8k9f8w8620m60s8q9r4c157010mb4w829";
+       version = "0.1.0.7";
+       sha256 = "0khwcxw5cxx3y9rryak7qb65q055lg6b7gsbj20rvskq300asbk0";
        libraryHaskellDepends = [
          base containers discrimination foldl hashable hashtables parallel
          profunctors split streaming streamly text unordered-containers
@@ -171741,7 +169905,6 @@ self: {
        description = "A study of marionetta movements";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "markdown" = callPackage
@@ -171801,7 +169964,6 @@ self: {
        description = "markdown parser with papillon";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "markdown-unlit" = callPackage
@@ -171842,7 +170004,6 @@ self: {
        description = "markdown to svg converter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "marked-pretty" = callPackage
@@ -171913,7 +170074,6 @@ self: {
        description = "Hidden Markov processes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "markov-realization" = callPackage
@@ -171947,7 +170107,6 @@ self: {
        description = "Abstraction for HTML-embedded content";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "markup-preview" = callPackage
@@ -171997,7 +170156,6 @@ self: {
        description = "Upload packages to Marmalade";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "marquise" = callPackage
@@ -172033,7 +170191,6 @@ self: {
        description = "Client library for Vaultaire";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mars" = callPackage
@@ -172101,7 +170258,6 @@ self: {
        description = "A framework for modular, portable chat bots";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "marvin-interpolate" = callPackage
@@ -172166,7 +170322,6 @@ self: {
        description = "@minamiyama1994_bot on haskell";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mason" = callPackage
@@ -172409,7 +170564,6 @@ self: {
        description = "Text matchers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) pcre;};
 
   "math-extras" = callPackage
@@ -172533,7 +170687,6 @@ self: {
        description = "A GLPK backend to the math-programming library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) glpk;};
 
   "math-programming-tests" = callPackage
@@ -172550,7 +170703,6 @@ self: {
        description = "Utility functions for testing implementations of the math-programming library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mathblog" = callPackage
@@ -172578,7 +170730,6 @@ self: {
        description = "A program for creating and managing a static weblog with LaTeX math and diagrams";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mathexpr" = callPackage
@@ -172670,7 +170821,6 @@ self: {
        description = "Write Mathematica packages in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "matlab" = callPackage
@@ -172906,7 +171056,6 @@ self: {
        description = "ncurses XMPP client";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "matterhorn" = callPackage
@@ -173032,7 +171181,6 @@ self: {
        description = "Compute Maximum Entropy Distributions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maxent-learner-hw" = callPackage
@@ -173080,7 +171228,6 @@ self: {
        description = "GUI for maxent-learner-hw";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maximal-cliques" = callPackage
@@ -173114,7 +171261,6 @@ self: {
        description = "Maximal sharing of terms in the lambda calculus with letrec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "maybe-justify" = callPackage
@@ -173349,7 +171495,6 @@ self: {
        description = "Sample from a posterior using Markov chain Monte Carlo";
        license = lib.licenses.gpl3Plus;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mcmc-samplers" = callPackage
@@ -173366,7 +171511,6 @@ self: {
        description = "Combinators for MCMC sampling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mcmc-synthesis" = callPackage
@@ -173526,7 +171670,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "means" = callPackage
@@ -173621,8 +171764,8 @@ self: {
        pname = "medea";
        version = "1.2.0";
        sha256 = "019jfz29gz3d06b5yi7fygqa79lp6c6vbzxcb5ka7d8w0zv7w60v";
-       revision = "1";
-       editedCabalFile = "1zkwy3p9q3rd4qcnmgr67xi3fv9frw35rsqpwh5l1mfvv772qap9";
+       revision = "2";
+       editedCabalFile = "18yzwhmvxafxn0zq7pv8dna28qkpr87q35q0sw9907y1iqcixxfh";
        libraryHaskellDepends = [
          aeson algebraic-graphs base bytestring containers deepseq free
          hashable megaparsec microlens-ghc mtl nonempty-containers
@@ -173695,7 +171838,6 @@ self: {
        description = "Mediabus plugin for the Frauenhofer ISO-14496-3 AAC FDK";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {fdk-aac = null;};
 
   "mediabus-rtp" = callPackage
@@ -173734,7 +171876,6 @@ self: {
        description = "Receive and Send RTP Packets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "median-stream" = callPackage
@@ -173960,7 +172101,6 @@ self: {
        description = "GPIO support for mellon";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mellon-web" = callPackage
@@ -174003,7 +172143,6 @@ self: {
        description = "A REST web service for Mellon controllers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "melody" = callPackage
@@ -174080,8 +172219,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion ];
        description = "A memcached client library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "memcache-conduit" = callPackage
@@ -174102,7 +172239,6 @@ self: {
        description = "Conduit library for memcache procotol";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "memcache-haskell" = callPackage
@@ -174312,6 +172448,8 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion random ];
        description = "Generate human memorable strings from binary data";
        license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "memory" = callPackage
@@ -174322,8 +172460,8 @@ self: {
        pname = "memory";
        version = "0.15.0";
        sha256 = "0a9mxcddnqn4359hk59d6l2zbh0vp154yb5vs1a8jw4l38n8kzz3";
-       revision = "1";
-       editedCabalFile = "136qfj1cbg9571mlwywaqml75ijx3pcgvbpbgwxrqsl71ssj8w5y";
+       revision = "2";
+       editedCabalFile = "0fd40y5byy4cq4x6m66zxadxbw96gzswplgfyvdqnjlasq28xw68";
        libraryHaskellDepends = [
          base basement bytestring deepseq ghc-prim
        ];
@@ -174332,6 +172470,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "memory_0_16_0" = callPackage
+    ({ mkDerivation, base, basement, bytestring, deepseq, foundation
+     , ghc-prim
+     }:
+     mkDerivation {
+       pname = "memory";
+       version = "0.16.0";
+       sha256 = "0zzxyr2b7gj92h3jzaq1lfqfyfkfj4l636ry35191i9bp3wa0v8l";
+       libraryHaskellDepends = [
+         base basement bytestring deepseq ghc-prim
+       ];
+       testHaskellDepends = [ base basement bytestring foundation ];
+       description = "memory and related abstraction stuff";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "memorypool" = callPackage
     ({ mkDerivation, base, containers, transformers, unsafe, vector }:
      mkDerivation {
@@ -174495,7 +172650,6 @@ self: {
        description = "Support for using mergeful from persistent-based databases";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mergeless" = callPackage
@@ -174535,7 +172689,6 @@ self: {
        description = "Support for using mergeless from persistent-based databases";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "merkle-log" = callPackage
@@ -174588,7 +172741,6 @@ self: {
        description = "A modified Merkle Patricia DB";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "merkle-tree" = callPackage
@@ -174739,7 +172891,6 @@ self: {
        description = "Support for integrated Accelerate computations within Meta-par";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "metadata" = callPackage
@@ -174790,7 +172941,6 @@ self: {
        description = "a tiny ghc api wrapper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "metar" = callPackage
@@ -174817,7 +172967,6 @@ self: {
        description = "Australian METAR";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "metar-http" = callPackage
@@ -174843,17 +172992,23 @@ self: {
        description = "HTTP for METAR";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "method" = callPackage
-    ({ mkDerivation, base, hspec, hspec-discover, rio, transformers }:
+    ({ mkDerivation, base, containers, hspec, hspec-discover, rio
+     , template-haskell, th-abstraction, transformers
+     }:
      mkDerivation {
        pname = "method";
-       version = "0.3.1.0";
-       sha256 = "0a96av07vbh3mvyczh2jiziqb098q81jx6q0c5kgn7pmlxijw1ba";
-       libraryHaskellDepends = [ base rio transformers ];
-       testHaskellDepends = [ base hspec rio transformers ];
+       version = "0.4.0.0";
+       sha256 = "0ca7xfy5yb8d68l530q6h82843i5yvp9grr9r23s7rfbisbysfpb";
+       libraryHaskellDepends = [
+         base containers rio template-haskell th-abstraction transformers
+       ];
+       testHaskellDepends = [
+         base containers hspec rio template-haskell th-abstraction
+         transformers
+       ];
        testToolDepends = [ hspec-discover ];
        description = "rebindable methods for improving testability";
        license = lib.licenses.bsd3;
@@ -175014,7 +173169,6 @@ self: {
        description = "Time Synchronized execution";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mezzo" = callPackage
@@ -175144,7 +173298,6 @@ self: {
        description = "A Micro service gateway";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "micro-recursion-schemes" = callPackage
@@ -175264,7 +173417,6 @@ self: {
        description = "A Microformats 2 parser";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "microformats2-types" = callPackage
@@ -175281,7 +173433,6 @@ self: {
        description = "Microformats 2 types (with Aeson instances)";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "microgroove" = callPackage
@@ -175422,8 +173573,8 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-th";
-       version = "0.4.3.9";
-       sha256 = "08gfqf24r95dcnw4jlnhh8ijmfwiyr9zaiiz4lbzp72hrkarlbiw";
+       version = "0.4.3.10";
+       sha256 = "1dg2xhj85fy8q39m5dd94kjlabjyxgc0336vzkg0174l6l110l1c";
        libraryHaskellDepends = [
          base containers microlens template-haskell th-abstraction
          transformers
@@ -175689,7 +173840,6 @@ self: {
        description = "A Memory-like (Concentration, Pairs, ...) game for tones";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "midisurface" = callPackage
@@ -175730,7 +173880,6 @@ self: {
        description = "Simple Web Server in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mighttpd2" = callPackage
@@ -175799,8 +173948,6 @@ self: {
        ];
        description = "Semi-automatic database schema migrations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "migrant-hdbc" = callPackage
@@ -175860,8 +174007,6 @@ self: {
        ];
        description = "Semi-automatic database schema migrations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mikmod" = callPackage
@@ -176098,7 +174243,6 @@ self: {
        description = "a DSL for generating minecraft commands and levels";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mines" = callPackage
@@ -176134,7 +174278,6 @@ self: {
        description = "Minesweeper game which is always solvable without guessing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mini-egison" = callPackage
@@ -176157,7 +174300,6 @@ self: {
        description = "Template Haskell Implementation of Egison Pattern Matching";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "miniball" = callPackage
@@ -176191,7 +174333,6 @@ self: {
        description = "Miniature FORTH-like interpreter";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "minilens" = callPackage
@@ -176263,7 +174404,6 @@ self: {
        description = "A binding library of minilight for Lua langauge";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "minimal-configuration" = callPackage
@@ -176306,7 +174446,6 @@ self: {
        description = "Shows how to run grabber on Mac OS X";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "minio-hs" = callPackage
@@ -176378,7 +174517,6 @@ self: {
        description = "fast and simple operational monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "miniplex" = callPackage
@@ -176744,8 +174882,6 @@ self: {
        ];
        description = "A tasty Haskell front-end framework";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "miso-action-logger" = callPackage
@@ -176821,7 +174957,6 @@ self: {
        description = "A Haskell git implimentation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "miss-porcelain" = callPackage
@@ -176841,7 +174976,6 @@ self: {
        description = "Useability extras built on top of miss";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "missing-foreign" = callPackage
@@ -176868,7 +175002,6 @@ self: {
        description = "Haskell interface to Python";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mit-3qvpPyAi6mH" = callPackage
@@ -176954,26 +175087,47 @@ self: {
        description = "Find optimal mixed strategies for two-player games";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mixed-types-num" = callPackage
-    ({ mkDerivation, base, hspec, hspec-smallcheck, mtl, QuickCheck
-     , smallcheck, template-haskell
+    ({ mkDerivation, base, collect-errors, hspec, hspec-smallcheck, mtl
+     , QuickCheck, smallcheck, template-haskell
      }:
      mkDerivation {
        pname = "mixed-types-num";
-       version = "0.4.1";
-       sha256 = "159zx9b5p3g1ywhnbihjbxkpxylgrkhhrswmazymqbh49f4s758y";
+       version = "0.5.7.0";
+       sha256 = "0fnf165ff6c4vbc2hlfrydb7w8csk1hjxd86lvnh4y9w6sc9g6hp";
        libraryHaskellDepends = [
-         base hspec hspec-smallcheck mtl QuickCheck smallcheck
-         template-haskell
+         base collect-errors hspec hspec-smallcheck mtl QuickCheck
+         smallcheck template-haskell
+       ];
+       testHaskellDepends = [
+         base collect-errors hspec hspec-smallcheck QuickCheck smallcheck
        ];
-       testHaskellDepends = [ base hspec hspec-smallcheck QuickCheck ];
        description = "Alternative Prelude with numeric and logic expressions typed bottom-up";
        license = lib.licenses.bsd3;
      }) {};
 
+  "mixed-types-num_0_5_8_0" = callPackage
+    ({ mkDerivation, base, collect-errors, hspec, hspec-smallcheck, mtl
+     , QuickCheck, smallcheck, template-haskell
+     }:
+     mkDerivation {
+       pname = "mixed-types-num";
+       version = "0.5.8.0";
+       sha256 = "1i40g6kf4my91i7xg54wfi6n2s8ivmx5k08ccqz3iycn6gha8pr7";
+       libraryHaskellDepends = [
+         base collect-errors hspec hspec-smallcheck mtl QuickCheck
+         smallcheck template-haskell
+       ];
+       testHaskellDepends = [
+         base collect-errors hspec hspec-smallcheck QuickCheck smallcheck
+       ];
+       description = "Alternative Prelude with numeric and logic expressions typed bottom-up";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "mixpanel-client" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring, hspec
      , hspec-discover, http-client, http-client-tls, markdown-unlit
@@ -177012,7 +175166,6 @@ self: {
        description = "Makes an OS X .app bundle from a binary.";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mkcabal" = callPackage
@@ -177032,7 +175185,6 @@ self: {
        description = "Generate cabal files for a Haskell project";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ml-w" = callPackage
@@ -177061,7 +175213,6 @@ self: {
        description = "Monadic List alternative to lazy I/O";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mltool" = callPackage
@@ -177085,6 +175236,8 @@ self: {
        ];
        description = "Machine Learning Toolbox";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "mm2" = callPackage
@@ -177197,7 +175350,6 @@ self: {
        description = "Command line interface to the MMark markdown processor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mmark-ext" = callPackage
@@ -177219,7 +175371,6 @@ self: {
        description = "Commonly useful extensions for the MMark markdown processor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mmorph_1_1_3" = callPackage
@@ -177234,6 +175385,7 @@ self: {
        description = "Monad morphisms";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "mmorph" = callPackage
@@ -177249,6 +175401,7 @@ self: {
        ];
        description = "Monad morphisms";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "mmsyn2" = callPackage
@@ -177375,8 +175528,6 @@ self: {
        ];
        description = "Produces a sound recording specified by the Ukrainian text";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mmsyn7l" = callPackage
@@ -177492,7 +175643,6 @@ self: {
        description = "MonadBase type-class for mmtl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mnist-idx" = callPackage
@@ -177508,6 +175658,23 @@ self: {
        license = lib.licenses.lgpl3Only;
      }) {};
 
+  "mnist-idx-conduit" = callPackage
+    ({ mkDerivation, base, binary, bytestring, conduit, containers
+     , exceptions, hspec, resourcet, vector
+     }:
+     mkDerivation {
+       pname = "mnist-idx-conduit";
+       version = "0.4.0.0";
+       sha256 = "0319icnnw38fivjwz9m142wyp059hn5rydr6cdjq73d5d9c77xhx";
+       libraryHaskellDepends = [
+         base binary bytestring conduit containers exceptions hspec
+         resourcet vector
+       ];
+       testHaskellDepends = [ base bytestring conduit hspec vector ];
+       description = "conduit utilities for MNIST IDX files";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "moan" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, dawg
      , regex-tdfa, regex-tdfa-text, tagset-positional, text, zlib
@@ -177523,7 +175690,6 @@ self: {
        description = "Language-agnostic analyzer for positional morphosyntactic tags";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mock-httpd" = callPackage
@@ -177723,7 +175889,6 @@ self: {
        description = "Modify fasta (and CLIP) files in several optional ways";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "modsplit" = callPackage
@@ -177745,7 +175910,6 @@ self: {
        description = "Haskell source splitter driven by special comments";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "modular" = callPackage
@@ -177800,7 +175964,6 @@ self: {
        description = "Reifying ClassyPrelude a la ModularPrelude";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "modularity" = callPackage
@@ -177817,7 +175980,6 @@ self: {
        description = "Find the modularity of a network";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "module-management" = callPackage
@@ -177888,7 +176050,6 @@ self: {
        description = "Modular C code generator";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "moe" = callPackage
@@ -177986,7 +176147,6 @@ self: {
        description = "A glorified string replacement tool";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mollie-api-haskell" = callPackage
@@ -178279,8 +176439,8 @@ self: {
      }:
      mkDerivation {
        pname = "monad-coroutine";
-       version = "0.9.1";
-       sha256 = "1d85jyfwf4h60cfp3dyrkmf7kw7ya37z2vqmv6rdbpqc1pslmb1i";
+       version = "0.9.1.2";
+       sha256 = "1s4975q1k23b2skyq9mwkkda08f2zxkv96x0yplzhz9n64kchhf3";
        libraryHaskellDepends = [
          base monad-parallel transformers transformers-compat
        ];
@@ -178319,7 +176479,6 @@ self: {
        description = "Exstensible monadic exceptions";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-extras" = callPackage
@@ -178769,8 +176928,6 @@ self: {
        ];
        description = "An extensible and type-safe wrapper around EKG metrics";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-mock" = callPackage
@@ -179044,7 +177201,6 @@ self: {
        description = "Utility library for monads, particularly those involving state";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-statevar" = callPackage
@@ -179105,7 +177261,6 @@ self: {
        description = "ST-like monad capturing variables to regions and supporting STM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-stm" = callPackage
@@ -179264,8 +177419,6 @@ self: {
        libraryHaskellDepends = [ base base-compat stm ];
        description = "Generic operations over variables";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-wrap" = callPackage
@@ -179390,8 +177543,8 @@ self: {
      }:
      mkDerivation {
        pname = "monadic-recursion-schemes";
-       version = "0.1.12.0";
-       sha256 = "0h5syc9p4imlf03qfb1rjsk4rq2kqry522zvw67x122q1xzdnwnw";
+       version = "0.1.13.0";
+       sha256 = "04n81zx1h68w9v8fihwhfbkyv7lb84p3nzppqf7zc55znbn67lym";
        libraryHaskellDepends = [
          base comonad containers free mtl recursion-schemes transformers
        ];
@@ -179438,7 +177591,6 @@ self: {
        description = "Constraint Programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {gecodeint = null; gecodekernel = null; gecodesearch = null; 
          gecodeset = null; gecodesupport = null;};
 
@@ -179595,7 +177747,6 @@ self: {
        description = "Monadic interface for TokyoTyrant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mondo" = callPackage
@@ -179633,7 +177784,6 @@ self: {
        description = "Mid-level bindings for the MonetDB API (mapi)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "money" = callPackage
@@ -179680,8 +177830,6 @@ self: {
        ];
        description = "Driver (client) for MongoDB, a free, scalable, fast, document DBMS";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mongodb-queue" = callPackage
@@ -179722,7 +177870,6 @@ self: {
        description = "Mongrel2 Handler Library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "monitor" = callPackage
@@ -179763,7 +177910,6 @@ self: {
        description = "A system state collecting library and application";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mono-foldable" = callPackage
@@ -179889,6 +178035,20 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "monoid-extras_0_6" = callPackage
+    ({ mkDerivation, base, criterion, groups, semigroupoids, semigroups
+     }:
+     mkDerivation {
+       pname = "monoid-extras";
+       version = "0.6";
+       sha256 = "0ki1d3b1xpf653qj7brlqdgngghwrnmapy5gja75iiydfx2506a1";
+       libraryHaskellDepends = [ base groups semigroupoids ];
+       benchmarkHaskellDepends = [ base criterion semigroups ];
+       description = "Various extra monoid-related definitions and utilities";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "monoid-owns" = callPackage
     ({ mkDerivation, base, bytestring, containers }:
      mkDerivation {
@@ -180127,7 +178287,6 @@ self: {
        description = "A monad and transformer for Monte Carlo calculations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "months" = callPackage
@@ -180213,7 +178372,21 @@ self: {
        description = "Genetic algorithm library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "moo-nad" = callPackage
+    ({ mkDerivation, base, dep-t, mtl, tasty, tasty-hunit, transformers
+     }:
+     mkDerivation {
+       pname = "moo-nad";
+       version = "0.1.0.2";
+       sha256 = "017yl4vy7apa6p91y4mhk4p36b4dgvwqdjplc38gijvk9zqd3rbm";
+       libraryHaskellDepends = [ base dep-t mtl transformers ];
+       testHaskellDepends = [ base dep-t mtl tasty tasty-hunit ];
+       doHaddock = false;
+       description = "Invocation helpers for the ReaderT-record-of-functions style";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "moonshine" = callPackage
@@ -180339,7 +178512,6 @@ self: {
        description = "Developer tools for the Michelson Language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morley-prelude" = callPackage
@@ -180423,7 +178595,6 @@ self: {
        description = "A multi-lingual, typed, workflow language";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morph" = callPackage
@@ -180470,8 +178641,6 @@ self: {
        ];
        description = "Morpheus GraphQL";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morpheus-graphql-app" = callPackage
@@ -180498,8 +178667,6 @@ self: {
        ];
        description = "Morpheus GraphQL Core";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morpheus-graphql-cli" = callPackage
@@ -180594,8 +178761,6 @@ self: {
        ];
        description = "Morpheus GraphQL Subscriptions";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morphisms" = callPackage
@@ -180631,7 +178796,6 @@ self: {
        description = "Inventory is state and store";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "morphisms-objects" = callPackage
@@ -180679,6 +178843,7 @@ self: {
        description = "A bare-bones calculus of constructions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -180699,7 +178864,6 @@ self: {
        description = "Generación interactiva de mosaicos";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mosquitto-hs" = callPackage
@@ -180811,7 +178975,6 @@ self: {
        description = "Generate state diagrams from Motor FSM typeclasses";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "motor-reflection" = callPackage
@@ -180917,7 +179080,6 @@ self: {
        description = "Music player for linux";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mp3decoder" = callPackage
@@ -180950,7 +179112,6 @@ self: {
        description = "MPD/PowerMate executable";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mpg123-bindings" = callPackage
@@ -180982,6 +179143,7 @@ self: {
        testSystemDepends = [ mpich ];
        description = "MPI bindings for Haskell";
        license = lib.licenses.asl20;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {inherit (pkgs) mpich;};
 
   "mpi-hs-binary" = callPackage
@@ -180999,6 +179161,7 @@ self: {
        testHaskellDepends = [ base ];
        description = "MPI bindings for Haskell";
        license = lib.licenses.asl20;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {};
 
   "mpi-hs-cereal" = callPackage
@@ -181016,6 +179179,7 @@ self: {
        testHaskellDepends = [ base ];
        description = "MPI bindings for Haskell";
        license = lib.licenses.asl20;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {};
 
   "mpi-hs-store" = callPackage
@@ -181033,6 +179197,7 @@ self: {
        testHaskellDepends = [ base ];
        description = "MPI bindings for Haskell";
        license = lib.licenses.asl20;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {};
 
   "mplayer-spot" = callPackage
@@ -181053,6 +179218,9 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Save your spot when watching movies with @mplayer@";
        license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "mpppc" = callPackage
@@ -181087,7 +179255,6 @@ self: {
        description = "A minimalish prelude";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mpretty" = callPackage
@@ -181105,7 +179272,6 @@ self: {
        description = "a monadic, extensible pretty printing library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mpris" = callPackage
@@ -181137,7 +179303,6 @@ self: {
        description = "Simple equational reasoning for a Haskell-ish language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mps" = callPackage
@@ -181158,33 +179323,36 @@ self: {
        description = "simply oo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mptcp-pm" = callPackage
     ({ mkDerivation, aeson, aeson-extra, aeson-pretty, base, bytestring
-     , bytestring-conversion, c2hs, c2hsc, cereal, containers
-     , fast-logger, filepath, hslogger, ip, netlink
-     , optparse-applicative, process, temporary, text
+     , bytestring-conversion, c2hs, cereal, containers, enumset
+     , filepath, hslogger, HUnit, ip, katip, mtl, netlink
+     , optparse-applicative, process, temporary, text, transformers
      , unordered-containers
      }:
      mkDerivation {
        pname = "mptcp-pm";
-       version = "0.0.2";
-       sha256 = "0l55734pa31znn9k0pxvixhh6abcmfkhgx162krn622l4lij3h8m";
-       isLibrary = false;
+       version = "0.0.3";
+       sha256 = "0h7r9i9izflsbgb8kimsz0hmglbd4s9pjycjsm0h64lg8b1sy4gs";
+       isLibrary = true;
        isExecutable = true;
-       executableHaskellDepends = [
+       libraryHaskellDepends = [
          aeson aeson-extra aeson-pretty base bytestring
-         bytestring-conversion c2hsc cereal containers fast-logger filepath
-         hslogger ip netlink optparse-applicative process temporary text
-         unordered-containers
+         bytestring-conversion cereal containers enumset ip katip mtl
+         netlink process text transformers unordered-containers
        ];
-       executableToolDepends = [ c2hs ];
-       description = "A work in progress Multipath TCP path manager";
+       libraryToolDepends = [ c2hs ];
+       executableHaskellDepends = [
+         aeson aeson-extra aeson-pretty base bytestring cereal containers
+         filepath hslogger ip mtl netlink optparse-applicative process
+         temporary text transformers
+       ];
+       testHaskellDepends = [ base HUnit ip text ];
+       description = "A Multipath TCP path manager";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mpvguihs" = callPackage
@@ -181381,7 +179549,6 @@ self: {
        description = "Aeson adapter for MessagePack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "msgpack-binary" = callPackage
@@ -181432,7 +179599,6 @@ self: {
        description = "An IDL Compiler for MessagePack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "msgpack-rpc" = callPackage
@@ -181454,7 +179620,6 @@ self: {
        description = "A MessagePack-RPC Implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "msgpack-rpc-conduit" = callPackage
@@ -181477,7 +179642,6 @@ self: {
        description = "A MessagePack-RPC Implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "msgpack-types" = callPackage
@@ -181607,7 +179771,6 @@ self: {
        description = "Library to communicate with Mt.Gox";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mtl_2_2_2" = callPackage
@@ -181815,8 +179978,6 @@ self: {
        ];
        description = "Avro serialization support for Mu microservices";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-graphql" = callPackage
@@ -181846,8 +180007,6 @@ self: {
        ];
        description = "GraphQL support for Mu";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-grpc-client" = callPackage
@@ -181872,7 +180031,6 @@ self: {
        description = "gRPC clients from Mu definitions";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-grpc-common" = callPackage
@@ -181892,8 +180050,6 @@ self: {
        ];
        description = "gRPC for Mu, common modules for client and server";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-grpc-server" = callPackage
@@ -181921,7 +180077,6 @@ self: {
        description = "gRPC servers for Mu definitions";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-kafka" = callPackage
@@ -181938,8 +180093,6 @@ self: {
        ];
        description = "Utilities for interoperation between Mu and Kafka";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-lens" = callPackage
@@ -181955,8 +180108,6 @@ self: {
        ];
        description = "Lenses for @mu-schema@ terms";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-optics" = callPackage
@@ -181971,8 +180122,6 @@ self: {
        ];
        description = "Optics for @mu-schema@ terms";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-persistent" = callPackage
@@ -181989,8 +180138,6 @@ self: {
        ];
        description = "Utilities for interoperation between Mu and Persistent";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-prometheus" = callPackage
@@ -182007,8 +180154,6 @@ self: {
        ];
        description = "Metrics support for Mu using Prometheus";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-protobuf" = callPackage
@@ -182036,8 +180181,6 @@ self: {
        ];
        description = "Protocol Buffers serialization and gRPC schema import for Mu microservices";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-rpc" = callPackage
@@ -182054,8 +180197,6 @@ self: {
        ];
        description = "Protocol-independent declaration of services and servers";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-schema" = callPackage
@@ -182074,8 +180215,6 @@ self: {
        ];
        description = "Format-independent schemas for serialization";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-servant-server" = callPackage
@@ -182099,8 +180238,6 @@ self: {
        ];
        description = "Servant servers for Mu definitions";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mu-tracing" = callPackage
@@ -182115,7 +180252,6 @@ self: {
        description = "Tracing support for Mu";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mucipher" = callPackage
@@ -182282,7 +180418,6 @@ self: {
        description = "A tool supporting multi cabal project builds";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multi-containers" = callPackage
@@ -182298,6 +180433,20 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "multi-except" = callPackage
+    ({ mkDerivation, base, dlist, hspec, semigroupoids }:
+     mkDerivation {
+       pname = "multi-except";
+       version = "0.2.1.0";
+       sha256 = "0ai19lk32wbpsmwxig5wzc7iqi81h0mxpykrmfw05vv4zwjqiqfz";
+       libraryHaskellDepends = [ base dlist semigroupoids ];
+       testHaskellDepends = [ base hspec semigroupoids ];
+       description = "Multiple Exceptions";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "multi-instance" = callPackage
     ({ mkDerivation, base, doctest }:
      mkDerivation {
@@ -182322,8 +180471,6 @@ self: {
        testHaskellDepends = [ base containers HTF ];
        description = "Trie of sets, as a model for compound names having multiple values";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multiaddr" = callPackage
@@ -182389,7 +180536,6 @@ self: {
        description = "Self-identifying base encodings, implementation of <https://github.com/multiformats/multihash>";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multifile" = callPackage
@@ -182434,7 +180580,6 @@ self: {
        description = "Bidirectional Two-level Transformation of XML Schemas";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multihash" = callPackage
@@ -182497,7 +180642,6 @@ self: {
        description = "CBOR encoding of multihashes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multihashmap" = callPackage
@@ -182556,7 +180700,6 @@ self: {
        description = "Conduit-based input/output capability for multilinear package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multimap" = callPackage
@@ -182671,7 +180814,6 @@ self: {
        description = "Wrapper program for duplicity, adding config files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multipool" = callPackage
@@ -182799,7 +180941,6 @@ self: {
        description = "Alternative multirec instances deriver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multirec-binary" = callPackage
@@ -182812,7 +180953,6 @@ self: {
        description = "Generic Data.Binary instances using MultiRec.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multiset" = callPackage
@@ -182855,7 +180995,6 @@ self: {
        description = "Multi-set rewrite rules with guards and a parallel execution scheme";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "multistate" = callPackage
@@ -182965,7 +181104,6 @@ self: {
        description = "MUtually Recursive Definitions Explicitly Represented";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "murmur" = callPackage
@@ -183038,7 +181176,6 @@ self: {
        description = "32-bit non-cryptographic hashing";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mushu" = callPackage
@@ -183132,7 +181269,6 @@ self: {
        description = "Diagrams-based visualization of musical data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-parts" = callPackage
@@ -183156,7 +181292,6 @@ self: {
        description = "Musical instruments, parts and playing techniques";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-pitch" = callPackage
@@ -183175,7 +181310,6 @@ self: {
        description = "Musical pitch representation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-pitch-literal" = callPackage
@@ -183217,7 +181351,6 @@ self: {
        description = "Some useful preludes for the Music Suite";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-score" = callPackage
@@ -183242,7 +181375,6 @@ self: {
        description = "Musical score and part representation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-sibelius" = callPackage
@@ -183263,7 +181395,6 @@ self: {
        description = "Interaction with Sibelius";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-suite" = callPackage
@@ -183284,7 +181415,6 @@ self: {
        description = "A set of libraries for composition, analysis and manipulation of music";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "music-util" = callPackage
@@ -183364,7 +181494,6 @@ self: {
        description = "Send an email to all MusicBrainz editors";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "musicw" = callPackage
@@ -183420,7 +181549,6 @@ self: {
        description = "A representation of the MusicXML format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mustache" = callPackage
@@ -183551,7 +181679,6 @@ self: {
        description = "iteratees based upon mutable buffers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mutable-lens" = callPackage
@@ -183589,7 +181716,6 @@ self: {
        description = "Watches your screensaver and (un)mutes music when you (un)lock the screen";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mvar-lock" = callPackage
@@ -183620,6 +181746,7 @@ self: {
        description = "Model-view-controller";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -183633,7 +181760,7 @@ self: {
        description = "Concurrent and combinable updates";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "mvclient" = callPackage
@@ -183653,7 +181780,6 @@ self: {
        description = "Client library for metaverse systems like Second Life";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mwc-probability" = callPackage
@@ -183807,7 +181933,6 @@ self: {
        description = "mxnet dataiters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mxnet-examples" = callPackage
@@ -183822,7 +181947,6 @@ self: {
        description = "Examples for MXNet in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mxnet-nn" = callPackage
@@ -183849,7 +181973,6 @@ self: {
        description = "Train a neural network with MXNet in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mxnet-nnvm" = callPackage
@@ -183942,7 +182065,6 @@ self: {
        description = "None";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "myanimelist-export" = callPackage
@@ -184044,7 +182166,6 @@ self: {
        description = "Example projects using mysnapsession";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mysql" = callPackage
@@ -184052,8 +182173,8 @@ self: {
      }:
      mkDerivation {
        pname = "mysql";
-       version = "0.2";
-       sha256 = "09b1rhv16g8npjblq9jfi29bffsplvq4hnksdhknd39anr5gpqzc";
+       version = "0.2.0.1";
+       sha256 = "16m8hv9yy2nf4jwgqg6n9z53n2pzskbc3gwbp2i3kgff8wsmf8sd";
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [ base bytestring containers ];
        librarySystemDepends = [ mysql ];
@@ -184134,7 +182255,6 @@ self: {
        description = "TLS support for mysql-haskell package using openssl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mysql-simple" = callPackage
@@ -184144,8 +182264,8 @@ self: {
      }:
      mkDerivation {
        pname = "mysql-simple";
-       version = "0.4.5";
-       sha256 = "1cbwdsxysz6a4182fgkkd869hm44v834lqv2igwsfbx6v0p44g5h";
+       version = "0.4.6";
+       sha256 = "1am8ck092s9cv4x1ambalil4mlazkp8w5qhjbl4nq0j2hpy73rby";
        libraryHaskellDepends = [
          attoparsec base base16-bytestring blaze-builder blaze-textual
          bytestring containers mysql old-locale pcre-light text time
@@ -184186,7 +182306,6 @@ self: {
        description = "Typed extension to mysql simple";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "mystem" = callPackage
@@ -184232,7 +182351,6 @@ self: {
        description = "Web application to view and kill MySQL queries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "myxine-client" = callPackage
@@ -184380,7 +182498,6 @@ self: {
        description = "N2O adapter for WebSockets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nagios-check" = callPackage
@@ -184491,7 +182608,6 @@ self: {
        description = "Client library for the Nakadi Event Broker";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "namecoin-update" = callPackage
@@ -184570,8 +182686,6 @@ self: {
        libraryHaskellDepends = [ base named servant ];
        description = "support records and named (from the named package) parameters in servant";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "named-servant-client" = callPackage
@@ -184587,8 +182701,6 @@ self: {
        ];
        description = "client support for named-servant";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "named-servant-server" = callPackage
@@ -184674,8 +182786,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "A Generic Haskell library for managing namespaces";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nano-cryptr" = callPackage
@@ -184873,7 +182983,6 @@ self: {
        description = "Simple interface to rendering with NanoVG";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nanq" = callPackage
@@ -185072,7 +183181,6 @@ self: {
        description = "Haskell API for NATS messaging system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "natural" = callPackage
@@ -185134,7 +183242,6 @@ self: {
        description = "Natural numbers tagged with a type-level representation of the number";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "natural-numbers" = callPackage
@@ -185481,7 +183588,6 @@ self: {
        description = "A collection of Nemesis tasks to bootstrap a Haskell project with a focus on continuous integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "neptune-backend" = callPackage
@@ -185544,7 +183650,6 @@ self: {
        description = "Nerf, a named entity recognition tool based on linear-chain CRFs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nero" = callPackage
@@ -185581,7 +183686,6 @@ self: {
        description = "WAI adapter for Nero server applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nero-warp" = callPackage
@@ -185594,7 +183698,6 @@ self: {
        description = "Run Nero server applications with Warp";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nest" = callPackage
@@ -185642,7 +183745,6 @@ self: {
        description = "Declarative, compositional Wai responses";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nested-sequence" = callPackage
@@ -185825,7 +183927,6 @@ self: {
        description = "CLI option parsers for NetSpider objects";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "net-spider-pangraph" = callPackage
@@ -185845,7 +183946,6 @@ self: {
        description = "Conversion between net-spider and pangraph";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "net-spider-rpl" = callPackage
@@ -185868,7 +183968,6 @@ self: {
        description = "NetSpider data model and utility for RPL networks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "net-spider-rpl-cli" = callPackage
@@ -185896,7 +183995,6 @@ self: {
        description = "CLI executable of NetSpider.RPL.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "netclock" = callPackage
@@ -185958,7 +184056,6 @@ self: {
        description = "The NetCore compiler and runtime system for OpenFlow networks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "netease-fm" = callPackage
@@ -186049,7 +184146,6 @@ self: {
        description = "Enumerator tools for text-based network protocols";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "netlink" = callPackage
@@ -186068,6 +184164,9 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Netlink communication for Haskell";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "netlist" = callPackage
@@ -186180,7 +184279,6 @@ self: {
        description = "Enumerator-based netstring parsing";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nettle" = callPackage
@@ -186223,7 +184321,6 @@ self: {
        description = "FRP for controlling networks of OpenFlow switches";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nettle-netkit" = callPackage
@@ -186240,7 +184337,6 @@ self: {
        description = "DSL for describing OpenFlow networks, and a compiler generating NetKit labs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nettle-openflow" = callPackage
@@ -186258,7 +184354,6 @@ self: {
        description = "OpenFlow protocol messages, binary formats, and servers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "netwire" = callPackage
@@ -186439,7 +184534,6 @@ self: {
        description = "Haskell API for I2P anonymous networking";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-anonymous-tor" = callPackage
@@ -186470,7 +184564,6 @@ self: {
        description = "Haskell API for Tor anonymous networking";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-api-support" = callPackage
@@ -186511,8 +184604,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Arbitrary Instances for Network Types";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-attoparsec" = callPackage
@@ -186640,8 +184731,6 @@ self: {
        ];
        description = "A Haskell implementation of the Carbon protocol (part of the Graphite monitoring tools)";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-conduit" = callPackage
@@ -186690,7 +184779,6 @@ self: {
        description = "A wrapper around a generic stream-like connection";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-data" = callPackage
@@ -186759,7 +184847,6 @@ self: {
        description = "Enumerators for network sockets";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-fancy" = callPackage
@@ -186783,7 +184870,6 @@ self: {
        description = "HaNS to Network shims for easier HaNS integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-house" = callPackage
@@ -186822,7 +184908,6 @@ self: {
        description = "Haskell bindings for the ifreq structure";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-ip" = callPackage
@@ -186905,7 +184990,6 @@ self: {
        description = "WebSocket backend for MessagePack RPC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-metrics" = callPackage
@@ -186922,6 +185006,7 @@ self: {
        description = "Send metrics to Ganglia, Graphite, and statsd";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "network-minihttp" = callPackage
@@ -186942,7 +185027,6 @@ self: {
        description = "A ByteString based library for writing HTTP(S) servers and clients";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-msg" = callPackage
@@ -186955,6 +185039,7 @@ self: {
        description = "Recvmsg and sendmsg bindings";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "network-msgpack-rpc" = callPackage
@@ -187007,7 +185092,6 @@ self: {
        description = "Haskell bindings for low-level packet sockets (AF_PACKET)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-packet-linux" = callPackage
@@ -187060,7 +185144,6 @@ self: {
        description = "Client library for the XMPP protocol";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-rpca" = callPackage
@@ -187079,7 +185162,6 @@ self: {
        description = "A cross-platform RPC library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-run" = callPackage
@@ -187239,7 +185321,6 @@ self: {
        description = "ByteString and Text streams for networking";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-topic-models" = callPackage
@@ -187262,7 +185343,6 @@ self: {
        description = "A few network topic model implementations for bayes-stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-transport" = callPackage
@@ -187373,6 +185453,8 @@ self: {
        ];
        description = "Unit tests for Network.Transport implementations";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "network-transport-zeromq" = callPackage
@@ -187534,7 +185616,6 @@ self: {
        description = "WebSocket library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "networked-game" = callPackage
@@ -187803,7 +185884,6 @@ self: {
        description = "A mailgun backend for the newsletter package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "newsynth" = callPackage
@@ -187821,6 +185901,7 @@ self: {
        executableHaskellDepends = [ base random time ];
        description = "Exact and approximate synthesis of quantum circuits";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "newt" = callPackage
@@ -187924,8 +186005,6 @@ self: {
        ];
        description = "Newtype Wrapper Zoo";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "newtyper" = callPackage
@@ -188032,7 +186111,6 @@ self: {
        description = "Ngrams loader based on http://www.ngrams.info format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ngx-export" = callPackage
@@ -188087,7 +186165,6 @@ self: {
        description = "More extra tools for Nginx haskell module";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "niagra" = callPackage
@@ -188222,7 +186299,6 @@ self: {
        description = "Command line utility publishes Nike+ runs on blogs and Twitter";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nimber" = callPackage
@@ -188273,7 +186349,6 @@ self: {
        description = "IDL compiler and RPC/distributed object framework for microservices";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nist-beacon" = callPackage
@@ -188399,7 +186474,7 @@ self: {
        benchmarkHaskellDepends = [ attoparsec base criterion text ];
        description = "Parse and render *.drv files";
        license = lib.licenses.bsd3;
-       maintainers = with lib.maintainers; [ sorki ];
+       maintainers = with lib.maintainers; [ Gabriel439 sorki ];
      }) {};
 
   "nix-diff" = callPackage
@@ -188419,7 +186494,7 @@ self: {
        ];
        description = "Explain why two Nix derivations differ";
        license = lib.licenses.bsd3;
-       maintainers = with lib.maintainers; [ terlar ];
+       maintainers = with lib.maintainers; [ Gabriel439 terlar ];
      }) {};
 
   "nix-eval" = callPackage
@@ -188470,6 +186545,28 @@ self: {
        broken = true;
      }) {};
 
+  "nix-graph" = callPackage
+    ({ mkDerivation, algebraic-graphs, attoparsec, base, containers
+     , hashable, nix-derivation, optparse-applicative, stm, text, ttrie
+     , unliftio
+     }:
+     mkDerivation {
+       pname = "nix-graph";
+       version = "1.0.0.0";
+       sha256 = "1hxby1xpzld55whpb1kzzdl3gi250svpl1lw5xw9qg10a3md29zh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         algebraic-graphs attoparsec base containers hashable nix-derivation
+         stm text ttrie unliftio
+       ];
+       executableHaskellDepends = [
+         algebraic-graphs base optparse-applicative
+       ];
+       description = "Reify the Nix build graph into a Haskell graph data structure";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "nix-narinfo" = callPackage
     ({ mkDerivation, attoparsec, base, containers, filepath, hspec
      , QuickCheck, text
@@ -188528,8 +186625,6 @@ self: {
        ];
        description = "Lightweight dependency management with Nix";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nix-tools" = callPackage
@@ -188757,7 +186852,6 @@ self: {
        description = "NLP scoring command-line programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nm" = callPackage
@@ -188965,8 +187059,6 @@ self: {
        ];
        description = "A static site generator";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nom" = callPackage
@@ -189441,8 +187533,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion deepseq ];
        description = "Normalization insensitive string comparison";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "normalize" = callPackage
@@ -189624,7 +187714,6 @@ self: {
        description = "Binding for notmuch MUA library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) notmuch;};
 
   "notmuch-web" = callPackage
@@ -189663,7 +187752,6 @@ self: {
        description = "A web interface to the notmuch email indexer";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "notzero" = callPackage
@@ -189812,20 +187900,6 @@ self: {
      }:
      mkDerivation {
        pname = "nri-env-parser";
-       version = "0.1.0.6";
-       sha256 = "1hmq6676w3f5mpdpd4jbd1aa6g379q6yyidcvdyhazqxcb0dhirh";
-       libraryHaskellDepends = [
-         base modern-uri network-uri nri-prelude text
-       ];
-       description = "Read environment variables as settings to build 12-factor apps";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "nri-env-parser_0_1_0_7" = callPackage
-    ({ mkDerivation, base, modern-uri, network-uri, nri-prelude, text
-     }:
-     mkDerivation {
-       pname = "nri-env-parser";
        version = "0.1.0.7";
        sha256 = "1mm879mqpgl040p789wcjm5bhrqia5czn18c5dgni8bwa4y61ank";
        libraryHaskellDepends = [
@@ -189833,7 +187907,6 @@ self: {
        ];
        description = "Read environment variables as settings to build 12-factor apps";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "nri-observability" = callPackage
@@ -189844,30 +187917,6 @@ self: {
      }:
      mkDerivation {
        pname = "nri-observability";
-       version = "0.1.0.1";
-       sha256 = "02baq11z5qq9lq9yh8zc29s44i44qz1m593ypn3qd8rgc1arrfjj";
-       libraryHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers
-       ];
-       description = "Report log spans collected by nri-prelude";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "nri-observability_0_1_0_2" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, async, base, bugsnag-hs
-     , bytestring, directory, hostname, http-client, http-client-tls
-     , nri-env-parser, nri-prelude, random, safe-exceptions, stm, text
-     , time, unordered-containers
-     }:
-     mkDerivation {
-       pname = "nri-observability";
        version = "0.1.0.2";
        sha256 = "19nil7vyjbvbjlapvrxky8fkxdl3f2xhqdi3a5m5i5lyawm74b6z";
        libraryHaskellDepends = [
@@ -189882,7 +187931,6 @@ self: {
        ];
        description = "Report log spans collected by nri-prelude";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "nri-prelude" = callPackage
@@ -189893,8 +187941,8 @@ self: {
      }:
      mkDerivation {
        pname = "nri-prelude";
-       version = "0.5.0.3";
-       sha256 = "0k4mhgyazjc74hwf2xgznhhkryqhdmsc2pv1v9d32706qkr796wn";
+       version = "0.6.0.0";
+       sha256 = "02v83n08zxz8521skijgrn407a0mlkjc3fjn5q04gn932wf29g5s";
        libraryHaskellDepends = [
          aeson aeson-pretty async auto-update base bytestring containers
          directory exceptions filepath ghc hedgehog junit-xml pretty-diff
@@ -189911,33 +187959,73 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "nri-prelude_0_6_0_0" = callPackage
+  "nri-prelude_0_6_0_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, async, auto-update, base
      , bytestring, containers, directory, exceptions, filepath, ghc
      , hedgehog, junit-xml, pretty-diff, pretty-show, safe-coloured-text
-     , safe-exceptions, terminal-size, text, time, vector
+     , safe-coloured-text-terminfo, safe-exceptions, terminal-size, text
+     , time, vector
      }:
      mkDerivation {
        pname = "nri-prelude";
-       version = "0.6.0.0";
-       sha256 = "02v83n08zxz8521skijgrn407a0mlkjc3fjn5q04gn932wf29g5s";
+       version = "0.6.0.1";
+       sha256 = "10gfw6vs2vc1jll80lirzjplwx3p3l9yssddqjklnd67rnvm95r4";
        libraryHaskellDepends = [
          aeson aeson-pretty async auto-update base bytestring containers
          directory exceptions filepath ghc hedgehog junit-xml pretty-diff
-         pretty-show safe-coloured-text safe-exceptions terminal-size text
-         time vector
+         pretty-show safe-coloured-text safe-coloured-text-terminfo
+         safe-exceptions terminal-size text time vector
        ];
        testHaskellDepends = [
          aeson aeson-pretty async auto-update base bytestring containers
          directory exceptions filepath ghc hedgehog junit-xml pretty-diff
-         pretty-show safe-coloured-text safe-exceptions terminal-size text
-         time vector
+         pretty-show safe-coloured-text safe-coloured-text-terminfo
+         safe-exceptions terminal-size text time vector
        ];
        description = "A Prelude inspired by the Elm programming language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "nri-redis" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, conduit, hedis
+     , nri-env-parser, nri-observability, nri-prelude, resourcet
+     , safe-exceptions, text, unordered-containers, uuid
+     }:
+     mkDerivation {
+       pname = "nri-redis";
+       version = "0.1.0.0";
+       sha256 = "00im3rnb7w45xm60l42kzrj3sc9dg3098w988fdhdschwk34zqpc";
+       libraryHaskellDepends = [
+         aeson async base bytestring conduit hedis nri-env-parser
+         nri-observability nri-prelude resourcet safe-exceptions text
+         unordered-containers uuid
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring conduit hedis nri-env-parser
+         nri-observability nri-prelude resourcet safe-exceptions text
+         unordered-containers uuid
+       ];
+       description = "An intuitive hedis wrapper library";
+       license = lib.licenses.bsd3;
+     }) {};
+
+  "nri-test-encoding" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, filepath
+     , nri-prelude, servant, servant-auth-server, servant-server, text
+     }:
+     mkDerivation {
+       pname = "nri-test-encoding";
+       version = "0.1.0.0";
+       sha256 = "11vk1f99xbqs678rxldxh9qfwailinxpjl6q6pvikb8f32rrb74y";
+       libraryHaskellDepends = [
+         aeson aeson-pretty base bytestring filepath nri-prelude servant
+         servant-auth-server servant-server text
+       ];
+       description = "A library to simplify writing golden tests for encoding types";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "nsis" = callPackage
     ({ mkDerivation, base, directory, process, transformers, uniplate
      }:
@@ -190069,8 +188157,6 @@ self: {
        testHaskellDepends = [ base vector ];
        description = "Multidimensional arrays, Linear algebra, Numerical analysis";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "null-canvas" = callPackage
@@ -190321,7 +188407,6 @@ self: {
        description = "Ode solvers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "numeric-prelude" = callPackage
@@ -190426,7 +188511,6 @@ self: {
        description = "core package for Numerical Haskell project";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "numericpeano" = callPackage
@@ -190441,21 +188525,6 @@ self: {
      }) {};
 
   "numhask" = callPackage
-    ({ mkDerivation, base, bifunctors, mmorph, protolude, text
-     , transformers
-     }:
-     mkDerivation {
-       pname = "numhask";
-       version = "0.6.0.2";
-       sha256 = "1x8p92plblqz5kykqci86wjfvb79gsi00l0a5i2r1frs6imjvkjf";
-       libraryHaskellDepends = [
-         base bifunctors mmorph protolude text transformers
-       ];
-       description = "numeric classes";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "numhask_0_7_1_0" = callPackage
     ({ mkDerivation, base, bifunctors, doctest, mmorph, protolude
      , QuickCheck, random, text, transformers
      }:
@@ -190470,20 +188539,35 @@ self: {
        description = "A numeric class hierarchy";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "numhask_0_8_0_0" = callPackage
+    ({ mkDerivation, base, doctest, QuickCheck }:
+     mkDerivation {
+       pname = "numhask";
+       version = "0.8.0.0";
+       sha256 = "104vc3b43lbck6r39kv5rscvqx3hxxf8nyvzsw8shb9xifmnijkh";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base doctest QuickCheck ];
+       description = "A numeric class hierarchy";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "numhask-array" = callPackage
-    ({ mkDerivation, adjunctions, base, deepseq, distributive, doctest
-     , numhask, vector
+    ({ mkDerivation, adjunctions, base, distributive, doctest, numhask
+     , vector
      }:
      mkDerivation {
        pname = "numhask-array";
-       version = "0.8.0";
-       sha256 = "03c12d34s20f01vc9kpgrm3n4xi8h4kqzlndj1ncpqb69xx3fhc5";
+       version = "0.9.0";
+       sha256 = "09l0cm2f66c5bagrwby8bj22b6lklbi8mbsgxxh0gw5zvb9bhgmr";
        libraryHaskellDepends = [
-         adjunctions base deepseq distributive numhask vector
+         adjunctions base distributive numhask vector
        ];
-       testHaskellDepends = [ base doctest numhask ];
+       testHaskellDepends = [ base doctest ];
        description = "Multi-dimensional array interface for numhask";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -190523,7 +188607,6 @@ self: {
        description = "Laws and tests for numhask";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "numhask-histogram" = callPackage
@@ -190541,7 +188624,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "numhask-prelude" = callPackage
@@ -190577,7 +188659,6 @@ self: {
        description = "Numbers that are range representations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "numhask-space" = callPackage
@@ -190587,13 +188668,13 @@ self: {
      }:
      mkDerivation {
        pname = "numhask-space";
-       version = "0.7.1.0";
-       sha256 = "1wn4fi2778dxmqfimwx9favwd6v507vzpwms04w2bk5gn1fxgcdg";
+       version = "0.8.0.0";
+       sha256 = "1ya4fcr0mxj4blijl2k2sdfkkywjmr616qcaddl7zqphjvrc4gd0";
        libraryHaskellDepends = [
          adjunctions base containers distributive numhask random
          semigroupoids tdigest text time vector
        ];
-       testHaskellDepends = [ base doctest numhask ];
+       testHaskellDepends = [ base doctest ];
        description = "Numerical spaces";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -190615,7 +188696,6 @@ self: {
        description = "Laws and tests for numhask";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nums" = callPackage
@@ -190703,6 +188783,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "nvfetcher" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, containers, extra
+     , free, microlens, microlens-th, neat-interpolation
+     , optparse-simple, shake, text, tomland, transformers
+     , validation-selective
+     }:
+     mkDerivation {
+       pname = "nvfetcher";
+       version = "0.2.0.0";
+       sha256 = "04gslnmamy79i563ma7kj2b36mqr2c1wlcivqs70akr7s4my3g7z";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base binary bytestring containers extra free microlens
+         microlens-th neat-interpolation shake text transformers
+       ];
+       executableHaskellDepends = [
+         aeson base binary bytestring containers extra free microlens
+         microlens-th neat-interpolation optparse-simple shake text tomland
+         transformers validation-selective
+       ];
+       description = "Generate nix sources expr for the latest version of packages";
+       license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ berberman ];
+     }) {};
+
   "nvim-hs" = callPackage
     ({ mkDerivation, base, bytestring, cereal, cereal-conduit, conduit
      , containers, data-default, deepseq, foreign-store, hslogger, hspec
@@ -190854,7 +188960,6 @@ self: {
        description = "An interactive GUI for manipulating L-systems";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "nyx-game" = callPackage
@@ -191054,7 +189159,6 @@ self: {
        description = "Communicate to OBD interfaces over ELM327";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "obdd" = callPackage
@@ -191072,7 +189176,6 @@ self: {
        description = "Ordered Reduced Binary Decision Diagrams";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "oberon0" = callPackage
@@ -191093,7 +189196,6 @@ self: {
        description = "Oberon0 Compiler";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "obj" = callPackage
@@ -191114,7 +189216,6 @@ self: {
        description = "Reads and writes obj models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "objectid" = callPackage
@@ -191136,7 +189237,6 @@ self: {
        description = "Rather unique identifier for things that need to be stored";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "objective" = callPackage
@@ -191264,7 +189364,6 @@ self: {
        description = "Owned channels in the Ownership Monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ochintin-daicho" = callPackage
@@ -191306,7 +189405,6 @@ self: {
        description = "Parse Rocket League replays";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "octohat" = callPackage
@@ -191338,7 +189436,6 @@ self: {
        description = "A tested, minimal wrapper around GitHub's API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "octopus" = callPackage
@@ -191360,7 +189457,6 @@ self: {
        description = "Lisp with more dynamism, more power, more simplicity";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "oculus" = callPackage
@@ -191377,8 +189473,10 @@ self: {
        librarySystemDepends = [ libGL libX11 libXinerama ovr systemd ];
        description = "Oculus Rift ffi providing head tracking data";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libGL; inherit (pkgs.xorg) libX11; 
          inherit (pkgs.xorg) libXinerama; ovr = null; 
          inherit (pkgs) systemd;};
@@ -191463,7 +189561,6 @@ self: {
        description = "A full-featured PostgreSQL-backed job queue (with an admin UI)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "oden-go-packages" = callPackage
@@ -191551,7 +189648,6 @@ self: {
        description = "A parser for simplified-syntax OFF files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ofx" = callPackage
@@ -191608,7 +189704,6 @@ self: {
        description = "Interface to the Ohloh API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "oi" = callPackage
@@ -191667,7 +189762,6 @@ self: {
        description = "wrapper for OIS input manager for use with hogre";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {OIS = null;};
 
   "old-locale" = callPackage
@@ -191732,7 +189826,6 @@ self: {
        description = "An OpenLayers JavaScript Wrapper and Webframework with snaplet-fay";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "om-actor" = callPackage
@@ -191748,6 +189841,24 @@ self: {
        broken = true;
      }) {};
 
+  "om-doh" = callPackage
+    ({ mkDerivation, base, base64, bytestring, http-api-data, resolv
+     , servant, servant-server, text
+     }:
+     mkDerivation {
+       pname = "om-doh";
+       version = "0.1.0.1";
+       sha256 = "1y9r70ppifww4ddk3rwvgwhfijn5hf9svlx4x46v1n027yjf9pgp";
+       libraryHaskellDepends = [
+         base base64 bytestring http-api-data resolv servant servant-server
+         text
+       ];
+       description = "om-doh";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "om-elm" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
      , http-types, safe, safe-exceptions, template-haskell, text, unix
@@ -192040,6 +190151,8 @@ self: {
        libraryHaskellDepends = [ base one-liner random ];
        description = "Generics-based implementations for common typeclasses";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "one-time-password" = callPackage
@@ -192103,7 +190216,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "online-csv" = callPackage
@@ -192123,7 +190235,6 @@ self: {
        description = "See readme.md";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "only" = callPackage
@@ -192285,8 +190396,6 @@ self: {
        ];
        description = "A monad transformer for Opaleye";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "open-adt" = callPackage
@@ -192324,7 +190433,6 @@ self: {
        description = "Open algebraic data type examples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "open-browser" = callPackage
@@ -192419,8 +190527,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Open type representations and dynamic types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "open-union" = callPackage
@@ -192436,7 +190542,6 @@ self: {
        description = "Extensible, type-safe unions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "open-witness" = callPackage
@@ -192495,8 +190600,6 @@ self: {
        ];
        description = "Unofficial OpenAI servant types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "openapi-petstore" = callPackage
@@ -192560,45 +190663,10 @@ self: {
      }:
      mkDerivation {
        pname = "openapi3";
-       version = "3.0.2.0";
-       sha256 = "00qpbj2lvaysbwgbax7z1vyixzd0x7yzbz26aw5zxd4asddypbfg";
-       isLibrary = true;
-       isExecutable = true;
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [
-         aeson aeson-pretty base base-compat-batteries bytestring containers
-         cookie generics-sop hashable http-media insert-ordered-containers
-         lens mtl network optics-core optics-th QuickCheck scientific
-         template-haskell text time transformers unordered-containers
-         uuid-types vector
-       ];
-       executableHaskellDepends = [ aeson base lens text ];
-       testHaskellDepends = [
-         aeson base base-compat-batteries bytestring containers doctest Glob
-         hashable hspec HUnit insert-ordered-containers lens mtl QuickCheck
-         quickcheck-instances template-haskell text time
-         unordered-containers utf8-string vector
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "OpenAPI 3.0 data model";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "openapi3_3_1_0" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, base, base-compat-batteries
-     , bytestring, Cabal, cabal-doctest, containers, cookie, doctest
-     , generics-sop, Glob, hashable, hspec, hspec-discover, http-media
-     , HUnit, insert-ordered-containers, lens, mtl, network, optics-core
-     , optics-th, QuickCheck, quickcheck-instances, scientific
-     , template-haskell, text, time, transformers, unordered-containers
-     , utf8-string, uuid-types, vector
-     }:
-     mkDerivation {
-       pname = "openapi3";
        version = "3.1.0";
        sha256 = "011754qyxxw5mn06hdmxalvsiff7a4x4k2yb2r6ylzr6zhyz818z";
+       revision = "1";
+       editedCabalFile = "1rbsfjwraizp0b6j2zaimz63b46k7d8abfxw7jyb7j1cv6jkcll1";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -192619,8 +190687,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "OpenAPI 3.0 data model";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "openapi3-code-generator" = callPackage
@@ -192661,6 +190727,20 @@ self: {
        broken = true;
      }) {};
 
+  "opencc" = callPackage
+    ({ mkDerivation, base, bytestring, mtl, text, transformers }:
+     mkDerivation {
+       pname = "opencc";
+       version = "0.1.0.0";
+       sha256 = "09gsd816xh0237m94bnysdpjzqngsva3rl29f171rvhdpashcjx2";
+       libraryHaskellDepends = [ base bytestring mtl text transformers ];
+       testHaskellDepends = [ base bytestring mtl text transformers ];
+       description = "OpenCC bindings";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "opench-meteo" = callPackage
     ({ mkDerivation, aeson, base, data-default, text, time }:
      mkDerivation {
@@ -192902,8 +190982,8 @@ self: {
      }:
      mkDerivation {
        pname = "openid-connect";
-       version = "0.1.0.0";
-       sha256 = "12qp155dazycypv0fvw8mbh3rl5j5ybd2vyfga8wi55n16v1w8mv";
+       version = "0.1.1";
+       sha256 = "16qqndcvbs30nraik0ida1dw40hk3k9mi318dnqnjx64x6wvcgmr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -193071,7 +191151,6 @@ self: {
        description = "Fetch OpenSSH keys from a GitHub team";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "openssh-protocol" = callPackage
@@ -193513,7 +191592,6 @@ self: {
        description = "Jaeger backend for OpenTracing";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "opentracing-wai" = callPackage
@@ -193556,7 +191634,6 @@ self: {
        description = "Zipkin V1 backend for OpenTracing";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "opentracing-zipkin-v2" = callPackage
@@ -193615,8 +191692,6 @@ self: {
        ];
        description = "Access data at OpenWeatherMap";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "operate-do" = callPackage
@@ -193796,6 +191871,7 @@ self: {
        ];
        description = "Optics as an abstract interface";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "optics_0_4" = callPackage
@@ -193825,6 +191901,7 @@ self: {
        description = "Optics as an abstract interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "optics-core" = callPackage
@@ -193984,7 +192061,6 @@ self: {
        description = "Command-line arguments parsing for Hasql";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "optimal-blocks" = callPackage
@@ -194010,7 +192086,6 @@ self: {
        description = "Optimal Block boundary determination for rsync-like behaviours";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "optimization" = callPackage
@@ -194047,7 +192122,6 @@ self: {
        description = "A supercompiler for f-lite";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "option" = callPackage
@@ -194088,6 +192162,7 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "Optional function arguments";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "options" = callPackage
@@ -194196,8 +192271,6 @@ self: {
        ];
        description = "An enum-text based toolkit for optparse-applicative";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "optparse-generic" = callPackage
@@ -194216,6 +192289,7 @@ self: {
        ];
        description = "Auto-generate a command-line parser for your datatype";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "optparse-helper" = callPackage
@@ -194292,6 +192366,7 @@ self: {
        ];
        description = "Types and functions for Kepler orbits";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "orc" = callPackage
@@ -194357,7 +192432,6 @@ self: {
        description = "Haskell Wiki Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "orchid-demo" = callPackage
@@ -194378,7 +192452,6 @@ self: {
        description = "Haskell Wiki Demo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ord-adhoc" = callPackage
@@ -194407,7 +192480,6 @@ self: {
        description = "Algorithms for the order maintenance problem with a safe interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "order-statistic-tree" = callPackage
@@ -194454,6 +192526,7 @@ self: {
        description = "A definition of Posets";
        license = "unknown";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "ordered-containers" = callPackage
@@ -194498,11 +192571,11 @@ self: {
      }:
      mkDerivation {
        pname = "ordinal";
-       version = "0.4.0.0";
-       sha256 = "1k0hpp5p546zlvwsy1d8hypryfwqvqdifmk3cqifw3xsdrqv3d8y";
+       version = "0.4.0.5";
+       sha256 = "0m073n6yln9rfdzlkwd10fl04b725h3hpybz01r0wiyw4bfv2n3b";
        libraryHaskellDepends = [
-         base containers data-default regex template-haskell text time
-         vector
+         base containers data-default QuickCheck regex template-haskell text
+         time vector
        ];
        testHaskellDepends = [ base hspec QuickCheck text ];
        testToolDepends = [ hspec-discover ];
@@ -194576,7 +192649,6 @@ self: {
        description = "Lucid integration for org-mode";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "org2anki" = callPackage
@@ -194660,8 +192732,8 @@ self: {
      }:
      mkDerivation {
        pname = "orgstat";
-       version = "0.1.9";
-       sha256 = "09psfz4a2amgcyq00ygjp6zakzf5yx2y2kjykz62wncwpqkgnf53";
+       version = "0.1.10";
+       sha256 = "16p6wswh96ap4qj7n61qd3hrr0f5m84clb113vg4dncf46ivlfs6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -194682,8 +192754,6 @@ self: {
        ];
        description = "Statistics visualizer for org-mode";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "origami" = callPackage
@@ -194979,7 +193049,6 @@ self: {
        description = "Download Open Street Map tiles";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "oso2pdf" = callPackage
@@ -195062,7 +193131,6 @@ self: {
        description = "OTP Authenticator (a la google) command line client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ottparse-pretty" = callPackage
@@ -195136,20 +193204,20 @@ self: {
 
   "overloaded" = callPackage
     ({ mkDerivation, assoc, base, bin, boring, bytestring, constraints
-     , containers, fin, generic-lens-lite, ghc, hmatrix, HUnit, lens
-     , optics-core, profunctors, QuickCheck, ral, record-hasfield
-     , semigroupoids, singleton-bool, sop-core, split, splitmix, syb
-     , symbols, tasty, tasty-hunit, tasty-quickcheck, template-haskell
-     , text, th-compat, time, vec
+     , containers, fin, generic-lens-lite, ghc, hmatrix, HUnit
+     , indexed-traversable, lens, optics-core, profunctors, QuickCheck
+     , ral, record-hasfield, semigroupoids, singleton-bool, sop-core
+     , split, splitmix, syb, symbols, tasty, tasty-hunit
+     , tasty-quickcheck, template-haskell, text, th-compat, time, vec
      }:
      mkDerivation {
        pname = "overloaded";
-       version = "0.3";
-       sha256 = "151xnpk7l1jg63m4bwr91h3dh1xb0d4xinc4vn1jsbhr96p662ap";
+       version = "0.3.1";
+       sha256 = "0ra33rcbjm58978gc0pjzcspyvab7g2vxnjk6z5hag7qh6ay76bg";
        libraryHaskellDepends = [
-         assoc base bin bytestring containers fin ghc optics-core
-         profunctors ral record-hasfield semigroupoids sop-core split syb
-         symbols template-haskell text th-compat time vec
+         assoc base bin bytestring containers fin ghc indexed-traversable
+         optics-core profunctors ral record-hasfield semigroupoids sop-core
+         split syb symbols template-haskell text th-compat time vec
        ];
        testHaskellDepends = [
          assoc base bin boring bytestring constraints containers fin
@@ -195449,6 +193517,25 @@ self: {
        broken = true;
      }) {};
 
+  "packstream" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers
+     , data-binary-ieee754, hspec, mtl, text
+     }:
+     mkDerivation {
+       pname = "packstream";
+       version = "0.1.0.2";
+       sha256 = "0skp7n6y9wzsa4mr456cpmqw0fzyb5613hqw7fs0qyzwb5swna2c";
+       libraryHaskellDepends = [
+         base binary bytestring containers data-binary-ieee754 mtl text
+       ];
+       testHaskellDepends = [
+         base binary bytestring containers data-binary-ieee754 hspec mtl
+         text
+       ];
+       description = "PackStream converter for Neo4j BOLT protocol";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "packunused" = callPackage
     ({ mkDerivation, base, Cabal, directory, filepath, haskell-src-exts
      , optparse-applicative, process, split
@@ -195486,6 +193573,24 @@ self: {
        broken = true;
      }) {};
 
+  "pact-time" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, cereal, clock
+     , Decimal, deepseq, microlens, mtl, tasty, tasty-hunit, text
+     , vector, vector-space
+     }:
+     mkDerivation {
+       pname = "pact-time";
+       version = "0.2.0.0";
+       sha256 = "04d8hd4hnbsjvzjjvnyabc68srhyp8k9459pp0y1sdc7z6c0qq1m";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring cereal clock Decimal deepseq
+         microlens mtl text vector vector-space
+       ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "Time Library for Pact";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "padKONTROL" = callPackage
     ({ mkDerivation, base, containers, hmidi, minioperational
      , transformers
@@ -195500,7 +193605,6 @@ self: {
        description = "Controlling padKONTROL native mode";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "paddle" = callPackage
@@ -195702,7 +193806,6 @@ self: {
        description = "Bilinear pairings";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "palette" = callPackage
@@ -195751,8 +193854,6 @@ self: {
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {pam = null;};
 
   "pan-os-syslog" = callPackage
@@ -195771,7 +193872,6 @@ self: {
        description = "Parse syslog traffic from PAN-OS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "panda" = callPackage
@@ -195793,7 +193893,6 @@ self: {
        description = "A simple static blog engine";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc" = callPackage
@@ -195854,6 +193953,65 @@ self: {
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
+  "pandoc_2_14_0_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, attoparsec, base
+     , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
+     , case-insensitive, citeproc, commonmark, commonmark-extensions
+     , commonmark-pandoc, connection, containers, data-default, deepseq
+     , Diff, directory, doclayout, doctemplates, emojis, exceptions
+     , file-embed, filepath, Glob, haddock-library, hslua
+     , hslua-module-path, hslua-module-system, hslua-module-text, HsYAML
+     , HTTP, http-client, http-client-tls, http-types, ipynb
+     , jira-wiki-markup, JuicyPixels, mtl, network, network-uri
+     , pandoc-types, parsec, process, QuickCheck, random, safe
+     , scientific, SHA, skylighting, skylighting-core, split, syb
+     , tagsoup, tasty, tasty-bench, tasty-golden, tasty-hunit, tasty-lua
+     , tasty-quickcheck, temporary, texmath, text, text-conversions
+     , time, unicode-collation, unicode-transforms, unix
+     , unordered-containers, xml, xml-conduit, zip-archive, zlib
+     }:
+     mkDerivation {
+       pname = "pandoc";
+       version = "2.14.0.1";
+       sha256 = "0fyhmdd1qnf9z4k1m8mm4m1p4lvpirlxx78plglch5h4xqidibr3";
+       configureFlags = [ "-fhttps" "-f-trypandoc" ];
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty array attoparsec base base64-bytestring binary
+         blaze-html blaze-markup bytestring case-insensitive citeproc
+         commonmark commonmark-extensions commonmark-pandoc connection
+         containers data-default deepseq directory doclayout doctemplates
+         emojis exceptions file-embed filepath Glob haddock-library hslua
+         hslua-module-path hslua-module-system hslua-module-text HsYAML HTTP
+         http-client http-client-tls http-types ipynb jira-wiki-markup
+         JuicyPixels mtl network network-uri pandoc-types parsec process
+         random safe scientific SHA skylighting skylighting-core split syb
+         tagsoup temporary texmath text text-conversions time
+         unicode-collation unicode-transforms unix unordered-containers xml
+         xml-conduit zip-archive zlib
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base bytestring containers Diff directory doctemplates exceptions
+         filepath Glob hslua mtl pandoc-types process QuickCheck tasty
+         tasty-golden tasty-hunit tasty-lua tasty-quickcheck text time xml
+         zip-archive
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers deepseq mtl tasty-bench text time
+       ];
+       postInstall = ''
+         mkdir -p $out/share/man/man1
+         mv "man/"*.1 $out/share/man/man1/
+       '';
+       description = "Conversion between markup formats";
+       license = lib.licenses.gpl2Plus;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ peti ];
+     }) {};
+
   "pandoc-citeproc" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, attoparsec, base, bytestring
      , Cabal, containers, data-default, directory, filepath, hs-bibutils
@@ -195946,6 +194104,43 @@ self: {
        license = lib.licenses.gpl2Only;
      }) {};
 
+  "pandoc-crossref_0_3_11_0" = callPackage
+    ({ mkDerivation, base, containers, criterion, data-accessor
+     , data-accessor-template, data-accessor-transformers, data-default
+     , deepseq, directory, filepath, gitrev, hspec, mtl, open-browser
+     , optparse-applicative, pandoc, pandoc-types, roman-numerals, syb
+     , template-haskell, temporary, text, utility-ht
+     }:
+     mkDerivation {
+       pname = "pandoc-crossref";
+       version = "0.3.11.0";
+       sha256 = "1czz54px5pv5a5ijxllz3nrq5s5k4rb05xb8r29drrnz13j45chk";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base containers data-accessor data-accessor-template
+         data-accessor-transformers data-default directory filepath mtl
+         pandoc pandoc-types roman-numerals syb template-haskell text
+         utility-ht
+       ];
+       executableHaskellDepends = [
+         base deepseq gitrev open-browser optparse-applicative pandoc
+         pandoc-types template-haskell temporary text
+       ];
+       testHaskellDepends = [
+         base containers data-accessor data-default directory filepath hspec
+         mtl pandoc pandoc-types text
+       ];
+       benchmarkHaskellDepends = [
+         base criterion pandoc pandoc-types text
+       ];
+       doHaddock = false;
+       description = "Pandoc filter for cross-references";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pandoc-csv2table" = callPackage
     ({ mkDerivation, base, csv, pandoc, pandoc-types, text }:
      mkDerivation {
@@ -195959,8 +194154,6 @@ self: {
        executableHaskellDepends = [ base csv pandoc pandoc-types ];
        description = "Convert CSV to Pandoc Table Markdown";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc-dhall-decoder" = callPackage
@@ -196132,7 +194325,6 @@ self: {
        description = "Japanese-specific markup filters for pandoc";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc-lens" = callPackage
@@ -196232,31 +194424,29 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Render and insert PlantUML diagrams with Pandoc";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc-plot" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion
-     , data-default, directory, filepath, githash, hashable, hspec
+     , data-default, directory, filepath, gitrev, hashable, hspec
      , hspec-expectations, lifted-async, lifted-base, mtl
      , optparse-applicative, pandoc, pandoc-types, shakespeare, tagsoup
      , tasty, tasty-hspec, tasty-hunit, template-haskell, text
-     , typed-process, yaml
+     , typed-process, unix, yaml
      }:
      mkDerivation {
        pname = "pandoc-plot";
-       version = "1.1.1";
-       sha256 = "10wwci7p3kphmjxlnpymbnx3cw2l3yfydm29l6k2vakz1pd7zdh0";
+       version = "1.2.2";
+       sha256 = "0lj4a1nn78zsv7rms3irk0fy390k2yfd6ck687x9h1xqmsdhd3kd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring containers data-default directory filepath hashable
          lifted-async lifted-base mtl pandoc pandoc-types shakespeare
-         tagsoup template-haskell text typed-process yaml
+         tagsoup template-haskell text typed-process unix yaml
        ];
        executableHaskellDepends = [
-         base containers directory filepath githash optparse-applicative
+         base containers directory filepath gitrev optparse-applicative
          pandoc pandoc-types template-haskell text typed-process
        ];
        testHaskellDepends = [
@@ -196314,8 +194504,6 @@ self: {
        executableHaskellDepends = [ base mtl pandoc-types text ];
        description = "Convert Pandoc Markdown-style footnotes into sidenotes";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc-stylefrommeta" = callPackage
@@ -196425,8 +194613,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "pandora";
-       version = "0.4.0";
-       sha256 = "0jy41qiqn6xj6ib20klv85jyr8vn633xqhxbx38zxs5dsq885laq";
+       version = "0.4.1";
+       sha256 = "0gn47zw0rzvdj1d1gwqy49di6f8lpvy53wfcs2g163nz9vil8xka";
        description = "A box of patterns and paradigms";
        license = lib.licenses.mit;
      }) {};
@@ -196591,8 +194779,8 @@ self: {
      }:
      mkDerivation {
        pname = "pantry";
-       version = "0.5.1.5";
-       sha256 = "18pnihbybgnaa1hs9pcz8vvvzlfn3wv8p2rnnf1p2w6m63n8vf9a";
+       version = "0.5.2.1";
+       sha256 = "0g1v78mgxa6mn0vm6yii3nzfdwpn4hgrlcld1h3mbwaxn6c8116k";
        libraryHaskellDepends = [
          aeson ansi-terminal base bytestring Cabal casa-client casa-types
          conduit conduit-extra containers cryptonite cryptonite-conduit
@@ -196696,7 +194884,6 @@ self: {
        description = "Reasonable default import";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-base" = callPackage
@@ -196711,7 +194898,6 @@ self: {
        description = "Prelude with only useful functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-base-export" = callPackage
@@ -196737,7 +194923,6 @@ self: {
        description = "Useful base functions reimplemented";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-bifunctors" = callPackage
@@ -196798,7 +194983,6 @@ self: {
        description = "Reasonable default import";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-implement" = callPackage
@@ -196821,7 +195005,6 @@ self: {
        description = "Reasonable default import";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-include" = callPackage
@@ -196981,7 +195164,6 @@ self: {
        description = "Prelude with only useful functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "papa-semigroupoids-export" = callPackage
@@ -197114,7 +195296,6 @@ self: {
        description = "The Haskell library and examples for the kids programming robot paprika";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "par-dual" = callPackage
@@ -197203,10 +195384,8 @@ self: {
     ({ mkDerivation, base, containers, extensible-exceptions, random }:
      mkDerivation {
        pname = "parallel-io";
-       version = "0.3.3";
-       sha256 = "0i86x3bf8pjlg6mdg1zg5lcrjpg75pbqs2mrgrbp4z4bkcmw051s";
-       revision = "2";
-       editedCabalFile = "0mggzni708nzxlsjbibdzf03s3b5lnqj2zi1hnbh1rd4j4jr07ym";
+       version = "0.3.4";
+       sha256 = "10bglxm685pljh0i896zrgs6g3iz0n7gl1qslvfn63pjxgvz5v2a";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -197287,8 +195466,6 @@ self: {
        ];
        description = "Classes and data structures for working with data-kind indexed types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "paramtree" = callPackage
@@ -197359,7 +195536,6 @@ self: {
        description = "Generalised parser combinators - Attoparsec interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "parco-parsec" = callPackage
@@ -197372,7 +195548,6 @@ self: {
        description = "Generalised parser combinators - Parsec interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "parcom-lib" = callPackage
@@ -197419,7 +195594,6 @@ self: {
        description = "Examples to accompany the book \"Parallel and Concurrent Programming in Haskell\"";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pareto" = callPackage
@@ -197492,6 +195666,9 @@ self: {
        libraryHaskellDepends = [ array base ];
        description = "Simply interfacing the parallel port on linux";
        license = "GPL";
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "parquet-hs" = callPackage
@@ -197518,7 +195695,6 @@ self: {
        description = "Streaming Parquet reader";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "parse-dimacs" = callPackage
@@ -197567,7 +195743,6 @@ self: {
        description = "generate command line arguments from a --help output";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "parseargs" = callPackage
@@ -198036,7 +196211,6 @@ self: {
        description = "NMR-STAR file format parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "parsimony" = callPackage
@@ -198072,6 +196246,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "parsley" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, cpphs
+     , dependent-map, dependent-sum, ghc-prim, hashable, mtl
+     , pretty-terminal, template-haskell, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "parsley";
+       version = "0.1.0.1";
+       sha256 = "01rslkkisbrgdn2d8hzrag2z6hh9gjilp2bg0j87n8awzm1i2n19";
+       revision = "1";
+       editedCabalFile = "16rpf1l3ph3yil2jnyp9z0j46afb38bii52bwkl4blk2f781k97z";
+       libraryHaskellDepends = [
+         array base bytestring containers dependent-map dependent-sum
+         ghc-prim hashable mtl pretty-terminal template-haskell text
+         unordered-containers
+       ];
+       libraryToolDepends = [ cpphs ];
+       description = "A fast parser combinator library backed by Typed Template Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "parsnip" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers
      , data-default, ghc-prim, primitive
@@ -198157,7 +196354,6 @@ self: {
        description = "Haskell 98 Partial Lenses";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "partial-order" = callPackage
@@ -198194,8 +196390,8 @@ self: {
     ({ mkDerivation, base, doctest, hedgehog }:
      mkDerivation {
        pname = "partial-semigroup";
-       version = "0.5.1.8";
-       sha256 = "1lxvgz0z04fkd67lnva902j8y5qxp6naga7gfnnazwafsb0s9kww";
+       version = "0.5.1.12";
+       sha256 = "0dkbw136cgqqhgckcn7wj39gd8ng8jmbdbq99qan5l2h5090k30h";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest hedgehog ];
        description = "A partial binary associative operator";
@@ -198206,8 +196402,8 @@ self: {
     ({ mkDerivation, base, hedgehog, partial-semigroup }:
      mkDerivation {
        pname = "partial-semigroup-hedgehog";
-       version = "0.6.0.6";
-       sha256 = "0n0j8xlrz66mzkvrsa083b9057n3rgbir7pwqxqycwzgj18g68s6";
+       version = "0.6.0.8";
+       sha256 = "0gldqqrfc87x1ff33qgan3pp62siqgal3imkf81b9rynws0saxh7";
        libraryHaskellDepends = [ base hedgehog partial-semigroup ];
        description = "Property testing for partial semigroups using Hedgehog";
        license = lib.licenses.asl20;
@@ -198288,8 +196484,8 @@ self: {
      }:
      mkDerivation {
        pname = "passman";
-       version = "0.3.0";
-       sha256 = "1m3g4ah1wvga3kq9krvg13niisq4rqkb7i6f6lil39v6lplq5drq";
+       version = "0.3.1";
+       sha256 = "1k5d06blwq5aiidmbpm2iya24yvxdhl2aq0v7z04ppshjv9gi5qf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -198355,6 +196551,7 @@ self: {
        description = "Deterministic password generator core";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "password" = callPackage
@@ -198367,6 +196564,8 @@ self: {
        pname = "password";
        version = "3.0.0.0";
        sha256 = "0x6f4zkqqsa6vi5dvy5sj0f7pqkqq9zw3ph9f0d8vl631zcs2inb";
+       revision = "1";
+       editedCabalFile = "0083j7wnq6dv663i22n0lmrgq8df5pl96xlyad3jv9l27r4z4gdk";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base base64 bytestring cryptonite memory password-types
@@ -198379,6 +196578,8 @@ self: {
        ];
        description = "Hashing and checking of passwords";
        license = lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       maintainers = with lib.maintainers; [ cdepillabout ];
      }) {};
 
   "password-instances" = callPackage
@@ -198402,6 +196603,8 @@ self: {
        ];
        description = "typeclass instances for password package";
        license = lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       maintainers = with lib.maintainers; [ cdepillabout ];
      }) {};
 
   "password-types" = callPackage
@@ -198413,6 +196616,8 @@ self: {
        pname = "password-types";
        version = "1.0.0.0";
        sha256 = "090aqq2xs6m5djvr9zfdj7rxafbmj8d05vij5rchj1f9c46dclb5";
+       revision = "1";
+       editedCabalFile = "1nw1fskhr42xmhdc1bp290333vzgmc3fkfvydfwjvlw0962lxzvy";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [ base bytestring memory text ];
        testHaskellDepends = [
@@ -198599,17 +196804,15 @@ self: {
      }:
      mkDerivation {
        pname = "path";
-       version = "0.7.0";
-       sha256 = "1dl7yjmkcdm3wlbj1s5qvkl31apl3dnwz5jc8h3hdq0w722x4a5k";
-       revision = "1";
-       editedCabalFile = "0ph5qs50lm8ac58v8df0mmivqfilb1wz14568q06aws6gwj9qqpi";
+       version = "0.7.1";
+       sha256 = "1z2gj4108827lb03f7cdqhijjgqjvv9glzrzfv96cxkwgi6y38jx";
        libraryHaskellDepends = [
          aeson base deepseq exceptions filepath hashable template-haskell
          text
        ];
        testHaskellDepends = [
          aeson base bytestring filepath genvalidity genvalidity-hspec
-         genvalidity-property hspec mtl QuickCheck validity
+         genvalidity-property hspec mtl QuickCheck template-haskell validity
        ];
        description = "Support for well-typed paths";
        license = lib.licenses.bsd3;
@@ -198956,7 +197159,6 @@ self: {
        description = "Common patterns in message-oriented applications";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pava" = callPackage
@@ -199152,7 +197354,6 @@ self: {
        description = "Convert a pcap into an enumerator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pcapng" = callPackage
@@ -199183,7 +197384,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pcd-loader" = callPackage
@@ -199228,7 +197428,6 @@ self: {
        description = "A one file compiler for PCF";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pcf-font" = callPackage
@@ -199261,7 +197460,6 @@ self: {
        description = "Template Haskell for embedding text rendered using PCF fonts";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pcg-random" = callPackage
@@ -199294,6 +197492,8 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq random ];
        description = "A fast, pseudorandom number generator";
        license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "pcre-heavy" = callPackage
@@ -199375,8 +197575,8 @@ self: {
      }:
      mkDerivation {
        pname = "pcre2";
-       version = "1.1.4";
-       sha256 = "0wrw2slmkxxmw3zx85f9xv8374fsvhxsyf1l149fvkaqnvf19bs2";
+       version = "1.1.5";
+       sha256 = "0kwlcv2rh8hyx93i3q3xv8ijxccl02n5nbkv4g74dr12d41ggc1h";
        libraryHaskellDepends = [
          base containers mtl template-haskell text
        ];
@@ -199415,7 +197615,6 @@ self: {
        description = "Tool to generate PDF from haskintex templates and YAML input";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pdf-slave-server" = callPackage
@@ -199472,58 +197671,69 @@ self: {
 
   "pdf-toolbox-content" = callPackage
     ({ mkDerivation, attoparsec, base, base16-bytestring, bytestring
-     , containers, io-streams, pdf-toolbox-core, text
+     , containers, hspec, io-streams, pdf-toolbox-core, scientific, text
+     , vector
      }:
      mkDerivation {
        pname = "pdf-toolbox-content";
-       version = "0.0.5.1";
-       sha256 = "1244r2ij46gs10zxc3mlf2693nnb1jpyminqkpzh71hp5qilw40w";
+       version = "0.1.1";
+       sha256 = "0bdcakhmazxim5npqkb13lh0b65p1xqv2a05c61zv0g64n1d6k5f";
        libraryHaskellDepends = [
          attoparsec base base16-bytestring bytestring containers io-streams
-         pdf-toolbox-core text
+         pdf-toolbox-core scientific text vector
+       ];
+       testHaskellDepends = [
+         attoparsec base bytestring containers hspec io-streams
+         pdf-toolbox-core
        ];
        description = "A collection of tools for processing PDF files";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pdf-toolbox-core" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, containers, errors
-     , io-streams, scientific, transformers, zlib-bindings
+    ({ mkDerivation, attoparsec, base, base16-bytestring, bytestring
+     , cipher-aes, cipher-rc4, containers, crypto-api, cryptohash
+     , hashable, hspec, io-streams, scientific, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "pdf-toolbox-core";
-       version = "0.0.4.1";
-       sha256 = "10d9fchmiwdbkbdxqmn5spim4pywc1qm9q9c0dhmsssryng99qyc";
+       version = "0.1.1";
+       sha256 = "1d5bk7qbcgz99xa61xi17z0hgr3w2by3d5mr2vgd0hpcdi5ygskz";
+       revision = "1";
+       editedCabalFile = "1h5nh360zaql29lw3mcykip7bvnnjjcxmpaaz3s842a227m9wflz";
        libraryHaskellDepends = [
-         attoparsec base bytestring containers errors io-streams scientific
-         transformers zlib-bindings
+         attoparsec base base16-bytestring bytestring cipher-aes cipher-rc4
+         containers crypto-api cryptohash hashable io-streams scientific
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         attoparsec base bytestring hspec io-streams unordered-containers
+         vector
        ];
        description = "A collection of tools for processing PDF files";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pdf-toolbox-document" = callPackage
-    ({ mkDerivation, base, bytestring, cipher-aes, cipher-rc4
-     , containers, crypto-api, cryptohash, io-streams
-     , pdf-toolbox-content, pdf-toolbox-core, text, transformers
+    ({ mkDerivation, base, bytestring, containers, directory, hspec
+     , io-streams, pdf-toolbox-content, pdf-toolbox-core, text
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "pdf-toolbox-document";
-       version = "0.0.7.1";
-       sha256 = "1qghjsaya0wnl3vil8gv6a3crd94mmvl3y73k2cwzhc5madkfz9z";
+       version = "0.1.2";
+       sha256 = "172vxsv541hsdkk08rsr21rwdrcxwmf4pwjmgsq2rjwj4ba4723y";
        libraryHaskellDepends = [
-         base bytestring cipher-aes cipher-rc4 containers crypto-api
-         cryptohash io-streams pdf-toolbox-content pdf-toolbox-core text
-         transformers
+         base bytestring containers io-streams pdf-toolbox-content
+         pdf-toolbox-core text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base directory hspec io-streams pdf-toolbox-core
+         unordered-containers
        ];
        description = "A collection of tools for processing PDF files";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pdf-toolbox-viewer" = callPackage
@@ -199671,7 +197881,6 @@ self: {
        description = "Experiemental library for composable interactive programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "peano" = callPackage
@@ -199722,7 +197931,6 @@ self: {
        description = "pec embedded compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pecoff" = callPackage
@@ -199831,7 +198039,6 @@ self: {
        description = "Package to solve the Generalized Pell Equation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pem" = callPackage
@@ -199937,7 +198144,6 @@ self: {
        description = "Extensible double-entry accounting system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "penny-bin" = callPackage
@@ -199957,7 +198163,6 @@ self: {
        description = "Deprecated - use penny package instead";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "penny-lib" = callPackage
@@ -199980,7 +198185,6 @@ self: {
        description = "Deprecated - use penny package instead";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "penrose" = callPackage
@@ -200017,7 +198221,6 @@ self: {
        description = "Create beautiful diagrams just by typing mathematical notation in plain text";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "peparser" = callPackage
@@ -200030,7 +198233,6 @@ self: {
        description = "A parser for PE object files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "percent-encoder" = callPackage
@@ -200104,8 +198306,6 @@ self: {
        benchmarkToolDepends = [ cpphs ];
        description = "Find duplicate images";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "perdure" = callPackage
@@ -200195,7 +198395,6 @@ self: {
        description = "analysis example using perf";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "perfect-hash-generator" = callPackage
@@ -200275,7 +198474,6 @@ self: {
        description = "A perfect hashing library for mapping bytestrings to values";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "perhaps" = callPackage
@@ -200350,6 +198548,7 @@ self: {
        ];
        description = "Periodic task system haskell client";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "periodic-client-exe" = callPackage
@@ -200374,6 +198573,7 @@ self: {
        ];
        description = "Periodic task system haskell client executables";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "periodic-common" = callPackage
@@ -200390,6 +198590,8 @@ self: {
        ];
        description = "Periodic task system common";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "periodic-polynomials" = callPackage
@@ -200431,7 +198633,6 @@ self: {
        description = "Periodic task system haskell server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "perm" = callPackage
@@ -200449,7 +198650,6 @@ self: {
        description = "permutation Applicative and Monad with many mtl instances";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "permutation" = callPackage
@@ -200540,6 +198740,7 @@ self: {
        ];
        description = "Serialization library with state and leb128 encoding";
        license = lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
   "persist2er" = callPackage
@@ -200601,66 +198802,37 @@ self: {
 
   "persistent" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
-     , blaze-html, bytestring, conduit, containers, fast-logger, hspec
-     , http-api-data, monad-logger, mtl, path-pieces, resource-pool
-     , resourcet, scientific, shakespeare, silently, text, time
-     , transformers, unliftio, unliftio-core, unordered-containers
-     , vector
-     }:
-     mkDerivation {
-       pname = "persistent";
-       version = "2.11.0.4";
-       sha256 = "1n5wkhfvyqq6p57nkf9yx73kap6spyzam5w12ni8pmd1m6pk77xn";
-       libraryHaskellDepends = [
-         aeson attoparsec base base64-bytestring blaze-html bytestring
-         conduit containers fast-logger http-api-data monad-logger mtl
-         path-pieces resource-pool resourcet scientific silently text time
-         transformers unliftio unliftio-core unordered-containers vector
-       ];
-       testHaskellDepends = [
-         aeson attoparsec base base64-bytestring blaze-html bytestring
-         containers hspec http-api-data path-pieces scientific shakespeare
-         text time transformers unordered-containers vector
-       ];
-       description = "Type-safe, multi-backend data serialization";
-       license = lib.licenses.mit;
-       maintainers = with lib.maintainers; [ psibi ];
-     }) {};
-
-  "persistent_2_12_1_1" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
      , blaze-html, bytestring, conduit, containers, criterion, deepseq
-     , deepseq-generics, fast-logger, file-embed, hspec, http-api-data
-     , monad-logger, mtl, path-pieces, QuickCheck, resource-pool
-     , resourcet, scientific, shakespeare, silently, template-haskell
-     , text, th-lift-instances, time, transformers, unliftio
-     , unliftio-core, unordered-containers, vector
+     , fast-logger, file-embed, hspec, http-api-data, lift-type
+     , monad-logger, mtl, path-pieces, QuickCheck, quickcheck-instances
+     , resource-pool, resourcet, scientific, shakespeare, silently
+     , template-haskell, text, th-lift-instances, time, transformers
+     , unliftio, unliftio-core, unordered-containers, vector
      }:
      mkDerivation {
        pname = "persistent";
-       version = "2.12.1.1";
-       sha256 = "00n463mvfnjpi7dz4i3lz379cf4gprsiv57j4jb7wh5a8xr2vfhz";
+       version = "2.13.0.2";
+       sha256 = "1fn3hjn3pxxnawvdif691vmxahnmal5ivr5rll0f26ia7rjqrnn2";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-html bytestring
-         conduit containers fast-logger http-api-data monad-logger mtl
-         path-pieces resource-pool resourcet scientific silently
+         conduit containers fast-logger http-api-data lift-type monad-logger
+         mtl path-pieces resource-pool resourcet scientific silently
          template-haskell text th-lift-instances time transformers unliftio
          unliftio-core unordered-containers vector
        ];
        testHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-html bytestring
          conduit containers fast-logger hspec http-api-data monad-logger mtl
-         path-pieces QuickCheck resource-pool resourcet scientific
-         shakespeare silently template-haskell text th-lift-instances time
-         transformers unliftio unliftio-core unordered-containers vector
+         path-pieces QuickCheck quickcheck-instances resource-pool resourcet
+         scientific shakespeare silently template-haskell text
+         th-lift-instances time transformers unliftio unliftio-core
+         unordered-containers vector
        ];
        benchmarkHaskellDepends = [
-         base criterion deepseq deepseq-generics file-embed template-haskell
-         text
+         base criterion deepseq file-embed template-haskell text
        ];
        description = "Type-safe, multi-backend data serialization";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
        maintainers = with lib.maintainers; [ psibi ];
      }) {};
 
@@ -200692,7 +198864,6 @@ self: {
        description = "Parses a Persist Model file and produces Audit Models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-cereal" = callPackage
@@ -200729,6 +198900,35 @@ self: {
        broken = true;
      }) {};
 
+  "persistent-discover" = callPackage
+    ({ mkDerivation, base, directory, dlist, file-embed, filepath
+     , hspec, hspec-discover, mtl, persistent, template-haskell
+     }:
+     mkDerivation {
+       pname = "persistent-discover";
+       version = "0.1.0.1";
+       sha256 = "1vncymwn132x3mf468r94r6wa6890zgmvjhq64gr5bhzh3mnah6c";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base directory dlist file-embed filepath mtl persistent
+         template-haskell
+       ];
+       executableHaskellDepends = [
+         base directory dlist file-embed filepath mtl persistent
+         template-haskell
+       ];
+       testHaskellDepends = [
+         base directory dlist file-embed filepath hspec hspec-discover mtl
+         persistent template-haskell
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Persistent module discover utilities";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "persistent-documentation" = callPackage
     ({ mkDerivation, base, containers, hspec, hspec-discover, mtl
      , persistent, persistent-template, template-haskell, text
@@ -200737,6 +198937,8 @@ self: {
        pname = "persistent-documentation";
        version = "0.1.0.2";
        sha256 = "0ys864vjzl97c9qv0gg5q9zviammrfvm0schvh7ckr9pdg062z17";
+       revision = "1";
+       editedCabalFile = "0pzgmwqjyzpql7d6bk9xkzkjvm21giq7f420y4fqq4wli3g2cwmx";
        libraryHaskellDepends = [
          base containers mtl persistent template-haskell text
        ];
@@ -200747,6 +198949,8 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Documentation DSL for persistent entities";
        license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "persistent-equivalence" = callPackage
@@ -200788,7 +198992,6 @@ self: {
        description = "Declare Persistent entities using SQL SELECT query syntax";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-instances-iproute" = callPackage
@@ -200833,7 +199036,6 @@ self: {
        description = "A thread-safe (STM) persistency interface for finite map types";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-migration" = callPackage
@@ -200845,8 +199047,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-migration";
-       version = "0.1.0";
-       sha256 = "025hrjm95klj4b7wqlzwkcwra5yj37ilirr06hxxw6d3g668rllm";
+       version = "0.2.1";
+       sha256 = "0jxhd9bkzcak48nz02g1s8rmbc9fkylf13p4vxkn3x26g2qlig7i";
        libraryHaskellDepends = [
          base containers fgl mtl persistent text time unordered-containers
        ];
@@ -200873,6 +199075,8 @@ self: {
        pname = "persistent-mongoDB";
        version = "2.12.0.0";
        sha256 = "1s49d4c4kiqcblkap96wcrp3nc0179vpzbqp4fdibljq9ylzxmzg";
+       revision = "1";
+       editedCabalFile = "047riy3grn68jw99095qgqxvfs5bvxmcvmnz170nrqflrlr4l4dd";
        libraryHaskellDepends = [
          aeson base bson bytestring cereal conduit http-api-data mongoDB
          network path-pieces persistent resource-pool resourcet text time
@@ -200916,56 +199120,28 @@ self: {
 
   "persistent-mysql" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring, conduit
-     , containers, fast-logger, hspec, HUnit, monad-logger, mysql
-     , mysql-simple, persistent, persistent-qq, persistent-template
-     , persistent-test, QuickCheck, quickcheck-instances, resource-pool
-     , resourcet, text, time, transformers, unliftio-core
+     , containers, fast-logger, hspec, http-api-data, HUnit
+     , monad-logger, mysql, mysql-simple, path-pieces, persistent
+     , persistent-qq, persistent-test, QuickCheck, quickcheck-instances
+     , resource-pool, resourcet, text, time, transformers, unliftio-core
      }:
      mkDerivation {
        pname = "persistent-mysql";
-       version = "2.10.3.1";
-       sha256 = "00gs2ym5vw2cqahv48cx8fhi3kx06rn0s1pafm8pdlr98snvwif7";
-       revision = "1";
-       editedCabalFile = "1nd3l499kpv2rfhqqjw1b3qsn558rwz3794cy2x493l98rsspszp";
+       version = "2.13.0.1";
+       sha256 = "1gl48xcsczpzipg9v107x970rzi66vr26772ml9z8szxygamgsdb";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring conduit containers monad-logger
          mysql mysql-simple persistent resource-pool resourcet text
          transformers unliftio-core
        ];
        testHaskellDepends = [
-         base bytestring containers fast-logger hspec HUnit monad-logger
-         mysql persistent persistent-qq persistent-template persistent-test
-         QuickCheck quickcheck-instances resourcet text time transformers
-         unliftio-core
-       ];
-       description = "Backend for the persistent library using MySQL database server";
-       license = lib.licenses.mit;
-     }) {};
-
-  "persistent-mysql_2_12_0_0" = callPackage
-    ({ mkDerivation, aeson, base, blaze-builder, bytestring, conduit
-     , containers, fast-logger, hspec, HUnit, monad-logger, mysql
-     , mysql-simple, persistent, persistent-qq, persistent-test
-     , QuickCheck, quickcheck-instances, resource-pool, resourcet, text
-     , time, transformers, unliftio-core
-     }:
-     mkDerivation {
-       pname = "persistent-mysql";
-       version = "2.12.0.0";
-       sha256 = "0bvwlkch8pr94dv1fib85vdsdrjpdla1rm4lslrmpg0dysgni9p3";
-       libraryHaskellDepends = [
-         aeson base blaze-builder bytestring conduit containers monad-logger
-         mysql mysql-simple persistent resource-pool resourcet text
+         aeson base bytestring containers fast-logger hspec http-api-data
+         HUnit monad-logger mysql path-pieces persistent persistent-qq
+         persistent-test QuickCheck quickcheck-instances resourcet text time
          transformers unliftio-core
        ];
-       testHaskellDepends = [
-         base bytestring containers fast-logger hspec HUnit monad-logger
-         mysql persistent persistent-qq persistent-test QuickCheck
-         quickcheck-instances resourcet text time transformers unliftio-core
-       ];
        description = "Backend for the persistent library using MySQL database server";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "persistent-mysql-haskell" = callPackage
@@ -201060,16 +199236,19 @@ self: {
   "persistent-postgresql" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , conduit, containers, fast-logger, hspec, hspec-expectations
-     , HUnit, monad-logger, mtl, persistent, persistent-qq
-     , persistent-template, persistent-test, postgresql-libpq
-     , postgresql-simple, QuickCheck, quickcheck-instances
-     , resource-pool, resourcet, string-conversions, text, time
-     , transformers, unliftio-core, unordered-containers, vector
+     , hspec-expectations-lifted, http-api-data, HUnit, monad-logger
+     , mtl, path-pieces, persistent, persistent-qq, persistent-test
+     , postgresql-libpq, postgresql-simple, QuickCheck
+     , quickcheck-instances, resource-pool, resourcet
+     , string-conversions, text, time, transformers, unliftio
+     , unliftio-core, unordered-containers, vector
      }:
      mkDerivation {
        pname = "persistent-postgresql";
-       version = "2.11.0.1";
-       sha256 = "08bmf52fqjwzyw4dnvh2ql4q3ai05fzzicgd5z6bim13b9s4ggmk";
+       version = "2.13.0.1";
+       sha256 = "186anbb0sgml094pw1nb529pddi4q1af0mcv3xa8bshr1xywpnd8";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder bytestring conduit containers
          monad-logger mtl persistent postgresql-libpq postgresql-simple
@@ -201078,29 +199257,29 @@ self: {
        ];
        testHaskellDepends = [
          aeson base bytestring containers fast-logger hspec
-         hspec-expectations HUnit monad-logger persistent persistent-qq
-         persistent-template persistent-test QuickCheck quickcheck-instances
-         resourcet text time transformers unliftio-core unordered-containers
-         vector
+         hspec-expectations hspec-expectations-lifted http-api-data HUnit
+         monad-logger path-pieces persistent persistent-qq persistent-test
+         QuickCheck quickcheck-instances resourcet text time transformers
+         unliftio unliftio-core unordered-containers vector
        ];
        description = "Backend for the persistent library using postgresql";
        license = lib.licenses.mit;
      }) {};
 
-  "persistent-postgresql_2_12_1_1" = callPackage
+  "persistent-postgresql_2_13_0_2" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , conduit, containers, fast-logger, hspec, hspec-expectations
-     , hspec-expectations-lifted, HUnit, monad-logger, mtl, persistent
-     , persistent-qq, persistent-test, postgresql-libpq
-     , postgresql-simple, QuickCheck, quickcheck-instances
-     , resource-pool, resourcet, string-conversions, text, time
-     , transformers, unliftio, unliftio-core, unordered-containers
-     , vector
+     , hspec-expectations-lifted, http-api-data, HUnit, monad-logger
+     , mtl, path-pieces, persistent, persistent-qq, persistent-test
+     , postgresql-libpq, postgresql-simple, QuickCheck
+     , quickcheck-instances, resource-pool, resourcet
+     , string-conversions, text, time, transformers, unliftio
+     , unliftio-core, unordered-containers, vector
      }:
      mkDerivation {
        pname = "persistent-postgresql";
-       version = "2.12.1.1";
-       sha256 = "1zyh40490r3vjr5qyr8hp2ih1pjqjwbmwm1ashdm1b1n9y5ary53";
+       version = "2.13.0.2";
+       sha256 = "1cbrwzk2s3xrdxpas64slk1habn38xspdg09xj2yazszkmr31hrh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -201111,10 +199290,10 @@ self: {
        ];
        testHaskellDepends = [
          aeson base bytestring containers fast-logger hspec
-         hspec-expectations hspec-expectations-lifted HUnit monad-logger
-         persistent persistent-qq persistent-test QuickCheck
-         quickcheck-instances resourcet text time transformers unliftio
-         unliftio-core unordered-containers vector
+         hspec-expectations hspec-expectations-lifted http-api-data HUnit
+         monad-logger path-pieces persistent persistent-qq persistent-test
+         QuickCheck quickcheck-instances resourcet text time transformers
+         unliftio unliftio-core unordered-containers vector
        ];
        description = "Backend for the persistent library using postgresql";
        license = lib.licenses.mit;
@@ -201142,34 +199321,12 @@ self: {
   "persistent-qq" = callPackage
     ({ mkDerivation, aeson, base, bytestring, fast-logger
      , haskell-src-meta, hspec, HUnit, monad-logger, mtl, persistent
-     , persistent-sqlite, persistent-template, resourcet
-     , template-haskell, text, unliftio
-     }:
-     mkDerivation {
-       pname = "persistent-qq";
-       version = "2.9.2.1";
-       sha256 = "0gnwkrjyh9fkli35qp0mvivbsycz58ng26z6rfqv377hgrjsvjiq";
-       libraryHaskellDepends = [
-         base haskell-src-meta mtl persistent template-haskell text
-       ];
-       testHaskellDepends = [
-         aeson base bytestring fast-logger haskell-src-meta hspec HUnit
-         monad-logger mtl persistent persistent-sqlite persistent-template
-         resourcet template-haskell text unliftio
-       ];
-       description = "Provides a quasi-quoter for raw SQL for persistent";
-       license = lib.licenses.mit;
-     }) {};
-
-  "persistent-qq_2_12_0_0" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, fast-logger
-     , haskell-src-meta, hspec, HUnit, monad-logger, mtl, persistent
      , persistent-sqlite, resourcet, template-haskell, text, unliftio
      }:
      mkDerivation {
        pname = "persistent-qq";
-       version = "2.12.0.0";
-       sha256 = "1mw565rwnzdsw0vc0gs31z4l4pw8qxb70l898invj7dfnq5vj62f";
+       version = "2.12.0.1";
+       sha256 = "1dvniapxjaw2vmdqd5cplwxdxiy2l6z6gns8gp3ci3rn3xp0pf6p";
        libraryHaskellDepends = [
          base haskell-src-meta mtl persistent template-haskell text
        ];
@@ -201180,7 +199337,6 @@ self: {
        ];
        description = "Provides a quasi-quoter for raw SQL for persistent";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "persistent-ratelimit" = callPackage
@@ -201203,8 +199359,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-redis";
-       version = "2.12.0.0";
-       sha256 = "0zibmgvlpkx4knh23jnz2vam1la6w57x2cibrdn17h0zd3s872p5";
+       version = "2.13.0.0";
+       sha256 = "1d43rlcx0islf7gn14kpxi922zaz6k5x6s4k4xc947l2r1zx40qs";
        libraryHaskellDepends = [
          aeson base binary bytestring hedis http-api-data mtl path-pieces
          persistent scientific text time transformers utf8-string
@@ -201281,38 +199437,6 @@ self: {
   "persistent-sqlite" = callPackage
     ({ mkDerivation, aeson, base, bytestring, conduit, containers
      , exceptions, fast-logger, hspec, HUnit, microlens, microlens-th
-     , monad-logger, mtl, persistent, persistent-template
-     , persistent-test, QuickCheck, resource-pool, resourcet, sqlite
-     , system-fileio, system-filepath, temporary, text, time
-     , transformers, unliftio-core, unordered-containers
-     }:
-     mkDerivation {
-       pname = "persistent-sqlite";
-       version = "2.11.1.0";
-       sha256 = "04rdzcckdkvs8nisx0hh96sdfyly82yr8c0mx6nsxpyi7m52by9j";
-       configureFlags = [ "-fsystemlib" ];
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base bytestring conduit containers microlens-th monad-logger
-         mtl persistent resource-pool resourcet text time transformers
-         unliftio-core unordered-containers
-       ];
-       librarySystemDepends = [ sqlite ];
-       testHaskellDepends = [
-         base bytestring conduit containers exceptions fast-logger hspec
-         HUnit microlens monad-logger mtl persistent persistent-template
-         persistent-test QuickCheck resourcet system-fileio system-filepath
-         temporary text time transformers unliftio-core
-       ];
-       description = "Backend for the persistent library using sqlite3";
-       license = lib.licenses.mit;
-       maintainers = with lib.maintainers; [ psibi ];
-     }) {inherit (pkgs) sqlite;};
-
-  "persistent-sqlite_2_12_0_0" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit, containers
-     , exceptions, fast-logger, hspec, HUnit, microlens, microlens-th
      , monad-logger, mtl, persistent, persistent-test, QuickCheck
      , resource-pool, resourcet, sqlite, system-fileio, system-filepath
      , temporary, text, time, transformers, unliftio-core
@@ -201320,8 +199444,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-sqlite";
-       version = "2.12.0.0";
-       sha256 = "0qwh2zrg1dqrv7i752jkqgqfxwjbdvkxmdgnzhcfzhgn6bq1018m";
+       version = "2.13.0.3";
+       sha256 = "12za89crbk74mya4qxpw5fp5fqp64vwz5s8vbjd7m8r3j3vbw338";
        configureFlags = [ "-fsystemlib" ];
        isLibrary = true;
        isExecutable = true;
@@ -201339,41 +199463,10 @@ self: {
        ];
        description = "Backend for the persistent library using sqlite3";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
        maintainers = with lib.maintainers; [ psibi ];
      }) {inherit (pkgs) sqlite;};
 
   "persistent-template" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, criterion
-     , deepseq, deepseq-generics, file-embed, hspec, http-api-data
-     , monad-control, monad-logger, path-pieces, persistent, QuickCheck
-     , template-haskell, text, th-lift-instances, transformers
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "persistent-template";
-       version = "2.9.1.0";
-       sha256 = "19ilgz8r6p5wy111rb4v0d6cnrj8jfiv2pnzdynpxd9ay66vgbca";
-       revision = "2";
-       editedCabalFile = "1lyrnh2lskkbvpjhbjiyh2ibndldsr8zgaiws7n37pa3vnmfx0qw";
-       libraryHaskellDepends = [
-         aeson base bytestring containers http-api-data monad-control
-         monad-logger path-pieces persistent template-haskell text
-         th-lift-instances transformers unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base bytestring hspec persistent QuickCheck text
-       ];
-       benchmarkHaskellDepends = [
-         base criterion deepseq deepseq-generics file-embed persistent
-         template-haskell text
-       ];
-       description = "Type-safe, non-relational, multi-backend persistence";
-       license = lib.licenses.mit;
-       maintainers = with lib.maintainers; [ psibi ];
-     }) {};
-
-  "persistent-template_2_12_0_0" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "persistent-template";
@@ -201383,7 +199476,6 @@ self: {
        doHaddock = false;
        description = "Type-safe, non-relational, multi-backend persistence";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
        maintainers = with lib.maintainers; [ psibi ];
      }) {};
 
@@ -201393,8 +199485,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-template-classy";
-       version = "0.1.0.1";
-       sha256 = "0ph5cfm5gj6qydv70s9bmb5ynymqnrhqiwcqpd0s87xj2iv9v46a";
+       version = "0.2.0";
+       sha256 = "0grfr7bb0c9m4fhg27g4qch43mgjqfrzw2c0gi0arq5ibm3n17kk";
        libraryHaskellDepends = [
          base lens persistent persistent-sqlite persistent-template
          template-haskell text
@@ -201411,88 +199503,37 @@ self: {
 
   "persistent-test" = callPackage
     ({ mkDerivation, aeson, base, blaze-html, bytestring, conduit
-     , containers, exceptions, hspec, hspec-expectations, HUnit
-     , monad-control, monad-logger, mtl, path-pieces, persistent
-     , persistent-template, QuickCheck, quickcheck-instances, random
-     , resourcet, text, time, transformers, transformers-base, unliftio
-     , unliftio-core, unordered-containers
-     }:
-     mkDerivation {
-       pname = "persistent-test";
-       version = "2.0.3.5";
-       sha256 = "16m3nlmpwxibfhgrfl3xqh3a518bkrd7qaa8hklfq2qwlvjbb31v";
-       libraryHaskellDepends = [
-         aeson base blaze-html bytestring conduit containers exceptions
-         hspec hspec-expectations HUnit monad-control monad-logger mtl
-         path-pieces persistent persistent-template QuickCheck
-         quickcheck-instances random resourcet text time transformers
-         transformers-base unliftio unliftio-core unordered-containers
-       ];
-       description = "Tests for Persistent";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "persistent-test_2_12_0_0" = callPackage
-    ({ mkDerivation, aeson, base, blaze-html, bytestring, conduit
-     , containers, exceptions, hspec, hspec-expectations, HUnit
-     , monad-control, monad-logger, mtl, path-pieces, persistent
+     , containers, exceptions, hspec, hspec-expectations, http-api-data
+     , HUnit, monad-control, monad-logger, mtl, path-pieces, persistent
      , QuickCheck, quickcheck-instances, random, resourcet, text, time
      , transformers, transformers-base, unliftio, unliftio-core
      , unordered-containers
      }:
      mkDerivation {
        pname = "persistent-test";
-       version = "2.12.0.0";
-       sha256 = "0vn6f8wmax68qg27ifw2sfr3d0zk12p6gaax5xshwmb5ypamrc50";
+       version = "2.13.0.3";
+       sha256 = "07q53jvhz00cf10k7a8fkvykgwcl10fgzh8k9gv1d248f336crvs";
        libraryHaskellDepends = [
          aeson base blaze-html bytestring conduit containers exceptions
-         hspec hspec-expectations HUnit monad-control monad-logger mtl
-         path-pieces persistent QuickCheck quickcheck-instances random
-         resourcet text time transformers transformers-base unliftio
-         unliftio-core unordered-containers
+         hspec hspec-expectations http-api-data HUnit monad-control
+         monad-logger mtl path-pieces persistent QuickCheck
+         quickcheck-instances random resourcet text time transformers
+         transformers-base unliftio unliftio-core unordered-containers
        ];
        description = "Tests for Persistent";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-typed-db" = callPackage
     ({ mkDerivation, aeson, base, bytestring, conduit, esqueleto, hspec
-     , http-api-data, monad-logger, path-pieces, persistent
-     , persistent-template, resource-pool, resourcet, template-haskell
-     , text, transformers
-     }:
-     mkDerivation {
-       pname = "persistent-typed-db";
-       version = "0.1.0.2";
-       sha256 = "1pdhdb29b7gyaw3kh1vr76dyr7gvwpx9ymib17fzfsxks6s76dxc";
-       libraryHaskellDepends = [
-         aeson base bytestring conduit http-api-data monad-logger
-         path-pieces persistent persistent-template resource-pool resourcet
-         template-haskell text transformers
-       ];
-       testHaskellDepends = [
-         aeson base bytestring conduit esqueleto hspec http-api-data
-         monad-logger path-pieces persistent persistent-template
-         resource-pool resourcet template-haskell text transformers
-       ];
-       description = "Type safe access to multiple database schemata";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "persistent-typed-db_0_1_0_3" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit, esqueleto, hspec
-     , http-api-data, monad-logger, path-pieces, persistent
-     , persistent-template, resource-pool, resourcet, template-haskell
-     , text, transformers
+     , hspec-discover, http-api-data, monad-logger, path-pieces
+     , persistent, resource-pool, resourcet, template-haskell, text
+     , transformers
      }:
      mkDerivation {
        pname = "persistent-typed-db";
-       version = "0.1.0.3";
-       sha256 = "15x4qfk4bwafqa495y8dsywa5mrcfnmqm7pyn419p20yngnyhzn8";
+       version = "0.1.0.4";
+       sha256 = "1dd5kig6zkiq5qkqv63icz9z8mn0b56b06w6z980hi7a2bmp6pk8";
        libraryHaskellDepends = [
          aeson base bytestring conduit http-api-data monad-logger
          path-pieces persistent resource-pool resourcet template-haskell
@@ -201500,12 +199541,12 @@ self: {
        ];
        testHaskellDepends = [
          aeson base bytestring conduit esqueleto hspec http-api-data
-         monad-logger path-pieces persistent persistent-template
-         resource-pool resourcet template-haskell text transformers
+         monad-logger path-pieces persistent resource-pool resourcet
+         template-haskell text transformers
        ];
+       testToolDepends = [ hspec-discover ];
        description = "Type safe access to multiple database schemata";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "persistent-vector" = callPackage
@@ -201523,8 +199564,6 @@ self: {
        benchmarkHaskellDepends = [ base containers criterion deepseq ];
        description = "A persistent sequence based on array mapped tries";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-zookeeper" = callPackage
@@ -201596,7 +199635,6 @@ self: {
        description = "Persona (BrowserID) Identity Provider";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pesca" = callPackage
@@ -201640,7 +199678,6 @@ self: {
        description = "Pretty Easy YOshikuni-made TLS library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "peyotls-codec" = callPackage
@@ -201659,7 +199696,6 @@ self: {
        description = "Codec parts of Pretty Easy YOshikuni-made TLS library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pez" = callPackage
@@ -201823,7 +199859,6 @@ self: {
        description = "A postgresql-simple transaction monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pgdl" = callPackage
@@ -201857,8 +199892,8 @@ self: {
     ({ mkDerivation, base, containers, gu, pgf, pretty }:
      mkDerivation {
        pname = "pgf2";
-       version = "1.2.1";
-       sha256 = "10nbwhdirhlsh68f14z8y75wlbs9f9xcn8cbgkf47m74x71jqqb3";
+       version = "1.3.0";
+       sha256 = "1sd21p6f9m9l6xnf853v7lxj6j6sbsrd7i09y0w0lsysp86p8h7m";
        libraryHaskellDepends = [ base containers pretty ];
        librarySystemDepends = [ gu pgf ];
        description = "Bindings to the C version of the PGF runtime";
@@ -201913,7 +199948,6 @@ self: {
        description = "A mid-level PostgreSQL client library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pgstream" = callPackage
@@ -202203,7 +200237,6 @@ self: {
        description = "A generalization of the uniqueness-periods-vector-examples functionality";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "phonetic-languages-filters-array" = callPackage
@@ -202256,12 +200289,21 @@ self: {
      }) {};
 
   "phonetic-languages-phonetics-basics" = callPackage
-    ({ mkDerivation, base, mmsyn2-array, mmsyn5 }:
+    ({ mkDerivation, base, foldable-ix, lists-flines, mmsyn2-array
+     , mmsyn5
+     }:
      mkDerivation {
        pname = "phonetic-languages-phonetics-basics";
-       version = "0.3.2.0";
-       sha256 = "0r4f69ky1y45h6fys1821z45ccg30h61yc68x16cf839awfri92l";
-       libraryHaskellDepends = [ base mmsyn2-array mmsyn5 ];
+       version = "0.6.3.0";
+       sha256 = "1hc1wmq2syvi0xsbkrm52hd5k8j2kk80n45695zd85fqwbayhj2c";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base foldable-ix lists-flines mmsyn2-array mmsyn5
+       ];
+       executableHaskellDepends = [
+         base foldable-ix lists-flines mmsyn2-array mmsyn5
+       ];
        description = "A library for working with generalized phonetic languages usage";
        license = lib.licenses.mit;
      }) {};
@@ -202358,8 +200400,8 @@ self: {
      }:
      mkDerivation {
        pname = "phonetic-languages-simplified-examples-array";
-       version = "0.4.1.0";
-       sha256 = "02z7c3ngcj4dz473j0ha05qh5wviiy4qp1mk3p4gidxrhkgbxhyc";
+       version = "0.4.2.0";
+       sha256 = "02lv4w9v8jf7v6dkrwwmy79h7yphmk37n54r9whii6kicns80ff2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -202407,6 +200449,66 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "phonetic-languages-simplified-generalized-examples-array" = callPackage
+    ({ mkDerivation, base, heaps, mmsyn2-array, parallel
+     , phonetic-languages-constraints-array
+     , phonetic-languages-filters-array
+     , phonetic-languages-permutations-array
+     , phonetic-languages-phonetics-basics, phonetic-languages-plus
+     , phonetic-languages-simplified-base
+     , phonetic-languages-simplified-generalized-examples-common
+     , phonetic-languages-simplified-generalized-properties-array, subG
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-simplified-generalized-examples-array";
+       version = "0.2.1.0";
+       sha256 = "0bz5lyl75i143crva3piz4005k81ia26rj455cgbgz3yknj3qpaf";
+       libraryHaskellDepends = [
+         base heaps mmsyn2-array parallel
+         phonetic-languages-constraints-array
+         phonetic-languages-filters-array
+         phonetic-languages-permutations-array
+         phonetic-languages-phonetics-basics phonetic-languages-plus
+         phonetic-languages-simplified-base
+         phonetic-languages-simplified-generalized-examples-common
+         phonetic-languages-simplified-generalized-properties-array subG
+       ];
+       description = "Helps to create texts with the given phonetic properties (e. g. poetic).";
+       license = lib.licenses.mit;
+     }) {};
+
+  "phonetic-languages-simplified-generalized-examples-common" = callPackage
+    ({ mkDerivation, base, heaps, phonetic-languages-phonetics-basics
+     , subG
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-simplified-generalized-examples-common";
+       version = "0.1.2.0";
+       sha256 = "1k65ynaz2mh35nqsf3izqq0lxqbkyj24i1g3r3gbfpbkajdhqz0v";
+       libraryHaskellDepends = [
+         base heaps phonetic-languages-phonetics-basics subG
+       ];
+       description = "Some common code for phonetic languages generalized functionality";
+       license = lib.licenses.mit;
+     }) {};
+
+  "phonetic-languages-simplified-generalized-properties-array" = callPackage
+    ({ mkDerivation, base, phonetic-languages-phonetics-basics
+     , phonetic-languages-rhythmicity
+     , phonetic-languages-simplified-base
+     }:
+     mkDerivation {
+       pname = "phonetic-languages-simplified-generalized-properties-array";
+       version = "0.1.2.0";
+       sha256 = "1vlzgcq8pv22m9pxwx0p1xss9zzlvwap11gn88pdgn0zgkhcsm0b";
+       libraryHaskellDepends = [
+         base phonetic-languages-phonetics-basics
+         phonetic-languages-rhythmicity phonetic-languages-simplified-base
+       ];
+       description = "Generalization of the functionality of the phonetic-languages-simplified-properties-array";
+       license = lib.licenses.mit;
+     }) {};
+
   "phonetic-languages-simplified-lists-examples" = callPackage
     ({ mkDerivation, base, heaps, mmsyn2, parallel
      , phonetic-languages-constraints, phonetic-languages-permutations
@@ -202440,7 +200542,6 @@ self: {
        description = "Simplified and somewhat optimized version of the phonetic-languages-examples";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "phonetic-languages-simplified-properties-array" = callPackage
@@ -202547,7 +200648,6 @@ self: {
        description = "Functional user interfaces";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "photoname" = callPackage
@@ -202570,7 +200670,6 @@ self: {
        description = "Rename photo image files based on EXIF shoot date";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "phraskell" = callPackage
@@ -202771,7 +200870,6 @@ self: {
        description = "Remotely controlling Java Swing applications";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "picedit" = callPackage
@@ -202934,7 +201032,6 @@ self: {
        description = "Yet another Haskell build system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pier-core" = callPackage
@@ -203027,8 +201124,6 @@ self: {
        ];
        description = "Access to the Pinboard API";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pinboard-notes-backup" = callPackage
@@ -203049,6 +201144,7 @@ self: {
        ];
        description = "Back up the notes you've saved to Pinboard";
        license = lib.licenses.gpl3Only;
+       maintainers = with lib.maintainers; [ bdesham ];
      }) {};
 
   "pinch" = callPackage
@@ -203084,8 +201180,8 @@ self: {
      }:
      mkDerivation {
        pname = "pinch-gen";
-       version = "0.4.0.0";
-       sha256 = "03fpcy2mdq83mpx4hv6x57csdwd07pkqcfqc0wd10zys77i75s46";
+       version = "0.4.2.0";
+       sha256 = "0saacr8q2varfqcq386dk9k04caijm90yi106wyl88pn3f5piaq3";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -203094,8 +201190,6 @@ self: {
        ];
        description = "A code generator for the pinch Thrift library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pinchot" = callPackage
@@ -203158,7 +201252,6 @@ self: {
        description = "icmp echo requests";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ping-parser-attoparsec" = callPackage
@@ -203205,6 +201298,22 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
+  "pinned-warnings" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, ghc
+     , tasty, tasty-hunit, time, transformers
+     }:
+     mkDerivation {
+       pname = "pinned-warnings";
+       version = "0.1.0.6";
+       sha256 = "1n0h2v71x3j0wn0g2f3zq3xw681s16hl7ffywi83z50hacd8x6kx";
+       libraryHaskellDepends = [
+         base bytestring containers directory ghc time transformers
+       ];
+       testHaskellDepends = [ base bytestring tasty tasty-hunit ];
+       description = "Preserve warnings in a GHCi session";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "pinpon" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, amazonka, amazonka-core
      , amazonka-sns, base, bytestring, containers, doctest, exceptions
@@ -203238,7 +201347,6 @@ self: {
        description = "A gateway for various cloud notification services";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipe-enumerator" = callPackage
@@ -203251,7 +201359,6 @@ self: {
        description = "A bidirectional bridge between pipes and iteratees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipeclip" = callPackage
@@ -203309,8 +201416,8 @@ self: {
      }:
      mkDerivation {
        pname = "pipes";
-       version = "4.3.15";
-       sha256 = "01hvzm7cp6y3wrdhca3wlb99y0az0rjy5lscmnds0v6i767kyxk1";
+       version = "4.3.16";
+       sha256 = "163lx5sf68zx5kik5h1fjsyckwr9shdsn5k2dsjq3mhg077nxqgl";
        libraryHaskellDepends = [
          base exceptions mmorph mtl transformers void
        ];
@@ -203323,6 +201430,7 @@ self: {
        ];
        description = "Compositional pipelines";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-aeson" = callPackage
@@ -203401,7 +201509,6 @@ self: {
        description = "Streaming parsing in the pipes-core framework with Attoparsec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-bgzf" = callPackage
@@ -203473,7 +201580,6 @@ self: {
        description = "Brotli (RFC7932) compressors and decompressors for the Pipes package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-bytestring" = callPackage
@@ -203490,6 +201596,7 @@ self: {
        ];
        description = "ByteString support for pipes";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-bzip" = callPackage
@@ -203530,7 +201637,6 @@ self: {
        description = "Pipes for Noise-secured network connections";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-category" = callPackage
@@ -203624,7 +201730,6 @@ self: {
        description = "A streaming serialization library on top of \"pipes\" and \"cereal-plus\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-cliff" = callPackage
@@ -203660,6 +201765,7 @@ self: {
        testHaskellDepends = [ async base pipes stm ];
        description = "Concurrency for the pipes ecosystem";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-conduit" = callPackage
@@ -203672,7 +201778,6 @@ self: {
        description = "Conduit adapters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-core" = callPackage
@@ -203702,7 +201807,6 @@ self: {
        description = "Pipes utilities for interfacing with the courier message-passing framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-csv" = callPackage
@@ -203724,6 +201828,7 @@ self: {
        ];
        description = "Fast, streaming csv parser";
        license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-errors" = callPackage
@@ -203765,7 +201870,6 @@ self: {
        description = "Various basic utilities for Pipes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-extras" = callPackage
@@ -203784,6 +201888,7 @@ self: {
        ];
        description = "Extra utilities for pipes";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-fastx" = callPackage
@@ -203827,7 +201932,6 @@ self: {
        description = "Fast traversal of directory trees using pipes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-fluid" = callPackage
@@ -203868,6 +201972,7 @@ self: {
        testHaskellDepends = [ base doctest lens-family-core ];
        description = "Group streams into substreams";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-http" = callPackage
@@ -203885,6 +201990,7 @@ self: {
        ];
        description = "HTTP client with pipes interface";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-illumina" = callPackage
@@ -203901,7 +202007,6 @@ self: {
        description = "Illumina NGS data processing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-interleave" = callPackage
@@ -203974,7 +202079,6 @@ self: {
        description = "Streaming processing of CSV files preceded by key-value pairs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-lines" = callPackage
@@ -204042,8 +202146,6 @@ self: {
        testHaskellDepends = [ base monad-control mongoDB pipes text ];
        description = "Stream results from MongoDB";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-network" = callPackage
@@ -204120,7 +202222,6 @@ self: {
        description = "P2P network nodes with pipes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-p2p-examples" = callPackage
@@ -204140,7 +202241,6 @@ self: {
        description = "Examples using pipes-p2p";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-parse" = callPackage
@@ -204152,6 +202252,7 @@ self: {
        libraryHaskellDepends = [ base pipes transformers ];
        description = "Parsing infrastructure for the pipes ecosystem";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-postgresql-simple" = callPackage
@@ -204274,6 +202375,7 @@ self: {
        ];
        description = "Safety for the pipes ecosystem";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "pipes-shell" = callPackage
@@ -204462,7 +202564,6 @@ self: {
        description = "A dependently typed core language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pit" = callPackage
@@ -204508,7 +202609,6 @@ self: {
        description = "Pitch tracking library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pivotal-tracker" = callPackage
@@ -204626,8 +202726,6 @@ self: {
        ];
        description = "Pixiv API binding based on servant-client";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "piyo" = callPackage
@@ -204652,6 +202750,9 @@ self: {
        ];
        description = "Haskell game engine like fantasy console";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "pkcs1" = callPackage
@@ -204718,27 +202819,6 @@ self: {
      }) {};
 
   "pkgtreediff" = callPackage
-    ({ mkDerivation, async, base, directory, filepath, Glob
-     , http-client, http-client-tls, http-directory, simple-cmd
-     , simple-cmd-args, text
-     }:
-     mkDerivation {
-       pname = "pkgtreediff";
-       version = "0.4";
-       sha256 = "00cah2sbfx824zvg4ywm3qw8rkibflj9lmw1z0ywsalgdmmlp460";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         async base directory filepath Glob http-client http-client-tls
-         http-directory simple-cmd simple-cmd-args text
-       ];
-       description = "Package tree diff tool";
-       license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "pkgtreediff_0_4_1" = callPackage
     ({ mkDerivation, async, base, directory, extra, filepath, Glob
      , http-client, http-client-tls, http-directory, koji, simple-cmd
      , simple-cmd-args, text
@@ -204757,7 +202837,6 @@ self: {
        description = "Package tree diff tool";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pktree" = callPackage
@@ -204979,7 +203058,6 @@ self: {
        description = "Planet Mitchell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "planet-mitchell-test" = callPackage
@@ -205183,7 +203261,6 @@ self: {
        description = "plot data from stdin through socketed";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "plot" = callPackage
@@ -205303,6 +203380,26 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ploterific" = callPackage
+    ({ mkDerivation, base, bytestring, cassava, colour, containers
+     , hvega, hvega-theme, lens, mtl, optparse-generic, palette, text
+     }:
+     mkDerivation {
+       pname = "ploterific";
+       version = "0.2.1.1";
+       sha256 = "1i5rgbnvi7s5rq13kj4fnanzmalzh53rim0r3nxxa82i25nb1sfq";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring cassava colour containers hvega hvega-theme lens
+         mtl optparse-generic palette text
+       ];
+       executableHaskellDepends = [ base mtl optparse-generic text ];
+       description = "Basic plotting of tabular data for the command line";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "plotfont" = callPackage
     ({ mkDerivation, base, containers, tasty, tasty-hunit }:
      mkDerivation {
@@ -205373,8 +203470,6 @@ self: {
        ];
        description = "Diagrams based plotting library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "plotserver-api" = callPackage
@@ -205415,8 +203510,6 @@ self: {
        ];
        description = "Dynamic linking for Haskell and C objects";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "plugins-auto" = callPackage
@@ -205552,7 +203645,6 @@ self: {
        description = "read/write png file";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pngload" = callPackage
@@ -205570,7 +203662,6 @@ self: {
        description = "Pure Haskell loader for PNG images";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pngload-fixed" = callPackage
@@ -205648,7 +203739,6 @@ self: {
        description = "Multi-backend (zookeeper and sqlite) DNS Server using persistent-library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "point-octree" = callPackage
@@ -205668,7 +203758,6 @@ self: {
        description = "Point octree, with bounding boxes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pointed" = callPackage
@@ -205719,8 +203808,8 @@ self: {
      }:
      mkDerivation {
        pname = "pointfree";
-       version = "1.1.1.7";
-       sha256 = "19yvkh4akcsiy0blmrwy7ayirg729s3vs4w0qkb2w171aas34090";
+       version = "1.1.1.8";
+       sha256 = "0jfl6sp0kv2fdjdhzn85j3hb7a83w9g64girs67v6j53yljqx8vz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -205820,7 +203909,6 @@ self: {
        description = "Pointless Lenses library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pointless-rewrite" = callPackage
@@ -205837,7 +203925,6 @@ self: {
        description = "Pointless Rewrite library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "poke" = callPackage
@@ -205870,7 +203957,6 @@ self: {
        description = "Discord verification bot";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pokemon-go-protobuf-types" = callPackage
@@ -205980,7 +204066,6 @@ self: {
        description = "A library for manipulating the historical dictionary of Polish (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "policeman" = callPackage
@@ -206130,7 +204215,6 @@ self: {
        description = "Wrap together data and it's constraints";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polydata-core" = callPackage
@@ -206269,8 +204353,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy-RandomFu";
-       version = "0.4.1.0";
-       sha256 = "1gr7nyzz1wwl7c22q21c8y8r94b8sp0r5kma20w3avg6p0l53bm3";
+       version = "0.4.2.0";
+       sha256 = "0rsmdp7p0asmaf13wf5ky0ngrmnqdfbi67y4a0vcwqvknqmlys2y";
        libraryHaskellDepends = [
          base polysemy polysemy-plugin polysemy-zoo random-fu random-source
        ];
@@ -206282,7 +204366,6 @@ self: {
        description = "Experimental, RandomFu effect and interpreters for polysemy";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-chronos" = callPackage
@@ -206304,8 +204387,6 @@ self: {
        ];
        description = "Polysemy effect for chronos";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-conc" = callPackage
@@ -206329,8 +204410,6 @@ self: {
        ];
        description = "Polysemy Effects for Concurrency";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-extra" = callPackage
@@ -206346,6 +204425,7 @@ self: {
        ];
        description = "Extra Input and Output functions for polysemy..";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "polysemy-fs" = callPackage
@@ -206376,6 +204456,7 @@ self: {
        ];
        description = "Run a KVStore as a filesystem in polysemy";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "polysemy-http" = callPackage
@@ -206405,8 +204486,6 @@ self: {
        ];
        description = "Polysemy effect for http-client";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-kvstore-jsonfile" = callPackage
@@ -206423,6 +204502,7 @@ self: {
        ];
        description = "Run a KVStore as a single json file in polysemy";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "polysemy-log" = callPackage
@@ -206446,8 +204526,6 @@ self: {
        ];
        description = "Polysemy effects for logging";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-log-co" = callPackage
@@ -206471,7 +204549,6 @@ self: {
        description = "polysemy-log interpreter for co-log";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-log-di" = callPackage
@@ -206493,8 +204570,6 @@ self: {
        ];
        description = "polysemy-log interpreter for di";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-methodology" = callPackage
@@ -206511,7 +204586,6 @@ self: {
        description = "Domain modelling algebra for polysemy";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-methodology-composite" = callPackage
@@ -206529,7 +204603,6 @@ self: {
        description = "Functions for using polysemy-methodology with composite";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-mocks" = callPackage
@@ -206557,7 +204630,6 @@ self: {
        description = "Optics for Polysemy";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-path" = callPackage
@@ -206574,7 +204646,6 @@ self: {
        description = "Polysemy versions of Path functions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-plugin" = callPackage
@@ -206615,8 +204686,6 @@ self: {
        ];
        description = "Polysemy error tracking";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-test" = callPackage
@@ -206641,8 +204710,6 @@ self: {
        ];
        description = "Polysemy effects for testing";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-time" = callPackage
@@ -206666,8 +204733,6 @@ self: {
        ];
        description = "Polysemy effect for time";
        license = "BSD-2-Clause-Patent";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-video" = callPackage
@@ -206693,6 +204758,7 @@ self: {
        libraryHaskellDepends = [ base polysemy polysemy-extra vinyl ];
        description = "Functions for mapping vinyl records in polysemy";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "polysemy-webserver" = callPackage
@@ -206738,6 +204804,8 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Experimental, user-contributed effects and interpreters for polysemy";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "polyseq" = callPackage
@@ -206759,7 +204827,6 @@ self: {
        description = "Taming Selective Strictness";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysoup" = callPackage
@@ -206798,7 +204865,6 @@ self: {
        description = "Utilities for polytypeable";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "polyvariadic" = callPackage
@@ -206836,8 +204902,6 @@ self: {
        ];
        description = "Maps and sets of partial orders";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pomodoro" = callPackage
@@ -206857,7 +204921,6 @@ self: {
        description = "pomodoro timer";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pomohoro" = callPackage
@@ -206983,8 +205046,6 @@ self: {
        ];
        description = "An XMPP client library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pontarius-xmpp-extras" = callPackage
@@ -207109,7 +205170,6 @@ self: {
        description = "popenhs is a popen-like library for Haskell";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "popkey" = callPackage
@@ -207210,7 +205270,6 @@ self: {
        description = "Express portable, composable and reusable data tasks and pipelines";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "porcupine-http" = callPackage
@@ -207240,7 +205299,6 @@ self: {
        description = "A location accessor for porcupine to connect to HTTP sources/sinks";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "porcupine-s3" = callPackage
@@ -207272,7 +205330,6 @@ self: {
        description = "A location accessor for porcupine to connect to AWS S3 sources/sinks";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "porpoise" = callPackage
@@ -207401,7 +205458,6 @@ self: {
        description = "The Haskell Ports Library";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ports-tools" = callPackage
@@ -207437,7 +205493,6 @@ self: {
        description = "Simple extensible library to run SQL file against PostgreSQL database";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "poseidon-postgis" = callPackage
@@ -207459,7 +205514,6 @@ self: {
        description = "Extension of Poseidon library for Postgis (Spatial and Geographic objects for PostgreSQL)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "positive" = callPackage
@@ -207529,6 +205583,9 @@ self: {
        ];
        description = "posix bindings";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {inherit (pkgs) systemd;};
@@ -207569,13 +205626,13 @@ self: {
 
   "posix-paths" = callPackage
     ({ mkDerivation, base, bytestring, criterion, directory, doctest
-     , filepath, HUnit, process, QuickCheck, unix
+     , filepath, HUnit, process, QuickCheck, unix, unliftio
      }:
      mkDerivation {
        pname = "posix-paths";
-       version = "0.2.1.6";
-       sha256 = "0ibycc7z3gm6jr83cgsqwa7hkky2ldfqqd30ickgq6vn2rkp8fbj";
-       libraryHaskellDepends = [ base bytestring unix ];
+       version = "0.3.0.0";
+       sha256 = "1ljphynpaaibs9zjxwk1b774q66s3biinfx2sgdzxyzssbl9va42";
+       libraryHaskellDepends = [ base bytestring unix unliftio ];
        testHaskellDepends = [
          base bytestring doctest HUnit QuickCheck unix
        ];
@@ -208114,7 +206171,6 @@ self: {
        description = "Sql interpolating quasiquote plus some kind of primitive ORM using it";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-schema" = callPackage
@@ -208213,6 +206269,8 @@ self: {
        pname = "postgresql-simple-migration";
        version = "0.1.15.0";
        sha256 = "0j6nhyknxlmpl0yrdj1pifw1fbb24080jgg64grnhqjwh1d44dvd";
+       revision = "1";
+       editedCabalFile = "1a0a5295j207x0pzbhy5inv8qimrh76dmmp26zgaw073n1i8yg8j";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -208226,8 +206284,6 @@ self: {
        testHaskellDepends = [ base bytestring hspec postgresql-simple ];
        description = "PostgreSQL Schema Migrations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-simple-named" = callPackage
@@ -208298,7 +206354,6 @@ self: {
        description = "A PostgreSQL backed queue";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-simple-sop" = callPackage
@@ -208329,7 +206384,6 @@ self: {
        description = "Typed extension for PostgreSQL simple";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-simple-url" = callPackage
@@ -208433,7 +206487,6 @@ self: {
        description = "postgresql-tx interfacing for use with postgresql-query";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-tx-simple" = callPackage
@@ -208466,7 +206519,6 @@ self: {
        description = "postgresql-tx interfacing for use with squeal-postgresql";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-tx-squeal-compat-simple" = callPackage
@@ -208481,7 +206533,6 @@ self: {
        description = "Connection interop from postgresql-simple connections to postgresql-libpq connections";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postgresql-typed" = callPackage
@@ -208652,7 +206703,6 @@ self: {
        description = "Library for postmarkapp.com HTTP Api";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "postmark-streams" = callPackage
@@ -208720,7 +206770,6 @@ self: {
        description = "Simple streaming in IO";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "potoki-cereal" = callPackage
@@ -208744,7 +206793,6 @@ self: {
        description = "Streaming serialization";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "potoki-conduit" = callPackage
@@ -208768,7 +206816,6 @@ self: {
        description = "Integration of \"potoki\" and \"conduit\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "potoki-core" = callPackage
@@ -208814,7 +206861,6 @@ self: {
        description = "Integration of \"potoki\" and \"hasql\"";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "potoki-zlib" = callPackage
@@ -208829,7 +206875,6 @@ self: {
        description = "Streaming ZLib decompression";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "potrace" = callPackage
@@ -208859,6 +206904,28 @@ self: {
        libraryHaskellDepends = [ base diagrams-lib JuicyPixels potrace ];
        description = "Potrace bindings for the diagrams library";
        license = lib.licenses.gpl2Only;
+     }) {};
+
+  "powerdns" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, bytestring
+     , case-insensitive, containers, deepseq, http-client, servant
+     , servant-client, servant-client-core, tasty, tasty-hunit, text
+     , time
+     }:
+     mkDerivation {
+       pname = "powerdns";
+       version = "0.1";
+       sha256 = "1fg698m3qmm5f0g0fl394hx593pwg7ai730imwahv00fr846lqm1";
+       libraryHaskellDepends = [
+         aeson base base64-bytestring bytestring case-insensitive containers
+         deepseq servant servant-client servant-client-core text time
+       ];
+       testHaskellDepends = [
+         base http-client servant-client servant-client-core tasty
+         tasty-hunit
+       ];
+       description = "PowerDNS API bindings for api/v1";
+       license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {};
@@ -208963,7 +207030,6 @@ self: {
        description = "A Amazon SQS backend for powerqueue";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ppm" = callPackage
@@ -209052,7 +207118,6 @@ self: {
        description = "Fully encapsulated monad transformers with queuelike functionality";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "practice-room" = callPackage
@@ -209072,7 +207137,6 @@ self: {
        description = "Practice Room";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "praglude" = callPackage
@@ -209201,7 +207265,6 @@ self: {
        description = "Simple cached predicates";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pred-trie" = callPackage
@@ -209231,7 +207294,6 @@ self: {
        description = "Predicative tries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "predicate-class" = callPackage
@@ -209256,8 +207318,6 @@ self: {
        libraryHaskellDepends = [ adjunctions base deepseq lens mtl ];
        description = "A library for writing predicates and transformations over predicates in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "predicate-typed" = callPackage
@@ -209354,7 +207414,6 @@ self: {
        description = "Tests and QuickCheck generators to accompany prednote";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prefetch" = callPackage
@@ -209725,7 +207784,6 @@ self: {
        description = "An HDBC connector for Presto";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prettify" = callPackage
@@ -210018,8 +208076,6 @@ self: {
        testHaskellDepends = [ base hspec tagged ];
        description = "A small pretty printing DSL for complex types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prettyFunctionComposing" = callPackage
@@ -210165,8 +208221,6 @@ self: {
        libraryHaskellDepends = [ base lucid prettyprinter text ];
        description = "A prettyprinter backend for lucid";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prettyprinter-vty" = callPackage
@@ -210198,7 +208252,6 @@ self: {
        description = "The method of previewing data (instead of wholly show-ing it)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prim" = callPackage
@@ -210299,8 +208352,6 @@ self: {
        ];
        description = "Primeval world of Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "primal-memory" = callPackage
@@ -210320,8 +208371,6 @@ self: {
        ];
        description = "Unified interface for memory managemenet";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prime" = callPackage
@@ -210386,8 +208435,8 @@ self: {
        pname = "primitive";
        version = "0.7.1.0";
        sha256 = "1w53i4mk248g58xrffmksznr4nmn2bbbycajzpcqfxx5ybyyrsvb";
-       revision = "2";
-       editedCabalFile = "1m08slj8m596z4pqsw3ag25ijhzlv9ki809ydh4nbin141bpsdgn";
+       revision = "3";
+       editedCabalFile = "03vgkhib8w3g0m0zwpz74hsixrf0pvgh6ql0xcy05fpq1kynppi9";
        libraryHaskellDepends = [ base deepseq transformers ];
        testHaskellDepends = [
          base base-orphans ghc-prim QuickCheck quickcheck-classes-base
@@ -210459,8 +208508,6 @@ self: {
        ];
        description = "containers backed by arrays";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "primitive-convenience" = callPackage
@@ -210590,8 +208637,6 @@ self: {
        benchmarkHaskellDepends = [ base gauge ghc-prim primitive random ];
        description = "Sort primitive arrays";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "primitive-stablename" = callPackage
@@ -210672,7 +208717,6 @@ self: {
        description = "ImageBoard on Happstack and HSP";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "primula-bot" = callPackage
@@ -210692,7 +208736,6 @@ self: {
        description = "Jabber-bot for primula-board ImageBoard";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pringletons" = callPackage
@@ -210959,7 +209002,6 @@ self: {
        description = "Parse process information for Linux";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proc-net" = callPackage
@@ -211050,7 +209092,6 @@ self: {
        description = "IterIO Process Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "process-leksah" = callPackage
@@ -211099,7 +209140,6 @@ self: {
        description = "Run a process and do reportsing on its progress";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "process-qq" = callPackage
@@ -211117,7 +209157,6 @@ self: {
        description = "Quasi-Quoters for exec process";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "process-sequential" = callPackage
@@ -211161,7 +209200,6 @@ self: {
        description = "Streaming interface to system processes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "processing" = callPackage
@@ -211300,7 +209338,6 @@ self: {
        description = "Simple streaming datatype";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "product" = callPackage
@@ -211375,7 +209412,6 @@ self: {
        description = "Convert GHC profiles into GraphViz's dot format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prof2pretty" = callPackage
@@ -211423,8 +209459,8 @@ self: {
      }:
      mkDerivation {
        pname = "profiteur";
-       version = "0.4.5.1";
-       sha256 = "0mq2fal93v42rkgiq0xwqzqc413dgkiawa09bxgv0sgajzslqx80";
+       version = "0.4.6.0";
+       sha256 = "0jkrx34hymx70aqxjcnw2a7pdiw1hy4nc6m2larjrgxjczshpfqx";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -211599,7 +209635,6 @@ self: {
        description = "Progressbar API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "progression" = callPackage
@@ -211723,7 +209758,6 @@ self: {
        description = "Relational Algebra Engine";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "project-template" = callPackage
@@ -211807,8 +209841,6 @@ self: {
        ];
        description = "Profunctor-based lightweight implementation of optics";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prolog" = callPackage
@@ -211881,7 +209913,6 @@ self: {
        description = "Better, more general Prelude exporting common utilities";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prolude" = callPackage
@@ -211904,7 +209935,6 @@ self: {
        description = "ITProTV's custom prelude";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prometheus" = callPackage
@@ -211976,7 +210006,6 @@ self: {
        description = "Instrument applications with metrics and publish/push to Prometheus";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prometheus-metrics-ghc" = callPackage
@@ -212115,7 +210144,6 @@ self: {
        description = "Functional synthesis of images and animations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "propeller" = callPackage
@@ -212206,7 +210234,6 @@ self: {
        description = "A library for functional GUI development";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "props" = callPackage
@@ -212265,7 +210292,6 @@ self: {
        description = "A DSL for processing Prosidy documents";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "prospect" = callPackage
@@ -212382,7 +210408,6 @@ self: {
        description = "neovim project manager";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proto-lens" = callPackage
@@ -212461,7 +210486,6 @@ self: {
        description = "Protocol buffers for describing the definitions of messages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proto-lens-jsonpb" = callPackage
@@ -212575,12 +210599,13 @@ self: {
      , optparse-applicative, optparse-generic, parsec, parsers, pretty
      , pretty-show, proto3-wire, QuickCheck, quickcheck-instances
      , range-set-list, safe, swagger2, system-filepath, tasty
-     , tasty-hunit, tasty-quickcheck, text, transformers, turtle, vector
+     , tasty-hunit, tasty-quickcheck, text, time, transformers, turtle
+     , vector
      }:
      mkDerivation {
        pname = "proto3-suite";
-       version = "0.4.1";
-       sha256 = "1zzw3kgxa875g0bpqi1zblw3q8h7lw53gcz4c8qjgkr2v1cr5nf3";
+       version = "0.4.2";
+       sha256 = "015cg6brf6v0h2h2d36hqqr9i69vr30bhc35av55v0d65ya0sczz";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -212590,7 +210615,7 @@ self: {
          hashable haskell-src insert-ordered-containers lens mtl
          neat-interpolation parsec parsers pretty pretty-show proto3-wire
          QuickCheck quickcheck-instances safe swagger2 system-filepath text
-         transformers turtle vector
+         time transformers turtle vector
        ];
        executableHaskellDepends = [
          base containers mtl optparse-applicative optparse-generic
@@ -212605,7 +210630,6 @@ self: {
        description = "A low level library for writing out data in the Protocol Buffers wire format";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proto3-wire" = callPackage
@@ -212616,35 +210640,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto3-wire";
-       version = "1.2.0";
-       sha256 = "1xrnrh4njnw6af8xxg9xhcxrscg0g644jx4l9an4iqz6xmjp2nk2";
-       revision = "1";
-       editedCabalFile = "14cjzgh364b836sg7szwrkvmm19hg8w57hdbsrsgwa7k9rhqi349";
-       libraryHaskellDepends = [
-         base bytestring cereal containers deepseq ghc-prim hashable
-         parameterized primitive QuickCheck safe text transformers
-         unordered-containers vector
-       ];
-       testHaskellDepends = [
-         base bytestring cereal doctest QuickCheck tasty tasty-hunit
-         tasty-quickcheck text transformers vector
-       ];
-       description = "A low-level implementation of the Protocol Buffers (version 3) wire format";
-       license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "proto3-wire_1_2_1" = callPackage
-    ({ mkDerivation, base, bytestring, cereal, containers, deepseq
-     , doctest, ghc-prim, hashable, parameterized, primitive, QuickCheck
-     , safe, tasty, tasty-hunit, tasty-quickcheck, text, transformers
-     , unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "proto3-wire";
-       version = "1.2.1";
-       sha256 = "0i706y9j5iq5zyi86vkiybznp3b4h2x0flvq3jmr8mgpgahvh94r";
+       version = "1.2.2";
+       sha256 = "1fdzml0nsbz1bqf3lskvmfn46pgl5rnrc4b7azq8f0csm0v9ah4d";
        libraryHaskellDepends = [
          base bytestring cereal containers deepseq ghc-prim hashable
          parameterized primitive QuickCheck safe text transformers
@@ -212656,8 +210653,6 @@ self: {
        ];
        description = "A low-level implementation of the Protocol Buffers (version 3) wire format";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "protobuf" = callPackage
@@ -212703,7 +210698,6 @@ self: {
        description = "Protocol Buffers via C++";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "protobuf-simple" = callPackage
@@ -212792,7 +210786,6 @@ self: {
        description = "Text.DescriptorProto.Options and code generated from the Google Protocol Buffer specification";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "protocol-buffers-fork" = callPackage
@@ -212888,8 +210881,8 @@ self: {
      }:
      mkDerivation {
        pname = "proton";
-       version = "0.0.3";
-       sha256 = "0w68v8sglyg99jni1p1cz6x87cm6x1ayll08wlijaiwpqc2pma2n";
+       version = "0.0.4";
+       sha256 = "1z8w3ymn893jgzanxp89x6kga9d79kggvcgkm9mhwd9q88h97v91";
        libraryHaskellDepends = [
          adjunctions async base bifunctors comonad compactable containers
          contravariant distributive folds linear mtl profunctors tagged
@@ -212897,7 +210890,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proton-haskell" = callPackage
@@ -212961,8 +210953,8 @@ self: {
      }:
      mkDerivation {
        pname = "provenience";
-       version = "0.1.1.0";
-       sha256 = "020kfw1laishiqy8npg2f2llq7dv1djii0d0khjfw7f1scy4x10n";
+       version = "0.1.2.0";
+       sha256 = "0irhlscjq3anfhzn2qs28w4k6z48p557a060iqpimjw2kjkyrr4d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -213081,7 +211073,6 @@ self: {
        description = "Language support for the PureScript programming language";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pseudo-boolean" = callPackage
@@ -213092,10 +211083,8 @@ self: {
      }:
      mkDerivation {
        pname = "pseudo-boolean";
-       version = "0.1.9.0";
-       sha256 = "00n5mf7abprhr9xvh3k1mw40jn4l94wwxpc2h0546h0n9v7srb1b";
-       revision = "3";
-       editedCabalFile = "0x0a5rjylmh4pdmr9iyadywzh06qxypq48b78skvm09bkkvrxghq";
+       version = "0.1.10.0";
+       sha256 = "1p9w1d80d2kp7wp7wp6xf9dz1iv9knhy8b75mklz7zq3cf5gvnrh";
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-builder containers deepseq
          dlist hashable megaparsec parsec void
@@ -213106,8 +211095,6 @@ self: {
        ];
        description = "Reading/Writing OPB/WBO files used in pseudo boolean competition";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pseudo-trie" = callPackage
@@ -213348,26 +211335,27 @@ self: {
 
   "publish" = callPackage
     ({ mkDerivation, base, bytestring, chronologique, core-data
-     , core-program, core-text, deepseq, directory, filepath, hinotify
-     , hspec, megaparsec, pandoc, pandoc-types, template-haskell, text
+     , core-program, core-text, deepseq, directory, filepath, hspec
+     , megaparsec, pandoc, pandoc-types, template-haskell, text
      , typed-process, unix, unordered-containers
      }:
      mkDerivation {
        pname = "publish";
-       version = "2.1.5";
-       sha256 = "1ncz9bijln0xmkmy5x6lv4w6xiqr08crgqiyb8cchc88dqacddhi";
+       version = "2.2.2";
+       sha256 = "19bvdldggklzq6wqgcbvnf4jjlbdbh1l80dm92aj0405a9rhsa28";
+       revision = "2";
+       editedCabalFile = "19ajwrsd1l9p4cm9ckii5i6nb5w28sxl7kr129xz8kwkpj4z6lfq";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring chronologique core-data core-program core-text
-         deepseq directory filepath hinotify megaparsec pandoc pandoc-types
+         deepseq directory filepath megaparsec pandoc pandoc-types
          template-haskell text typed-process unix unordered-containers
        ];
        testHaskellDepends = [
          base bytestring chronologique core-data core-program core-text
-         deepseq directory filepath hinotify hspec megaparsec pandoc
-         pandoc-types template-haskell text typed-process unix
-         unordered-containers
+         deepseq directory filepath hspec megaparsec pandoc pandoc-types
+         template-haskell text typed-process unix unordered-containers
        ];
        description = "Publishing tools for papers, books, and presentations";
        license = lib.licenses.mit;
@@ -213457,7 +211445,6 @@ self: {
        description = "A CLI assistant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pugixml" = callPackage
@@ -213534,7 +211521,6 @@ self: {
        description = "Portable Haskell/POSIX layer for Pugs";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pugs-hsregex" = callPackage
@@ -213547,7 +211533,6 @@ self: {
        description = "Haskell PCRE binding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pulse" = callPackage
@@ -213605,7 +211590,6 @@ self: {
        description = "Multilingual unsupervised sentence tokenization with Punkt";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "punycode" = callPackage
@@ -213641,7 +211625,6 @@ self: {
        description = "A program that displays the puppet resources associated to a node given .pp files.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pure-cdb" = callPackage
@@ -213661,7 +211644,6 @@ self: {
        description = "Another pure-haskell CDB (Constant Database) implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pure-fft" = callPackage
@@ -213720,7 +211702,6 @@ self: {
        description = "Tests for the pure-priority-queue package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pure-shuffle" = callPackage
@@ -213832,8 +211813,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Simple Routing functions for Wai Applications";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "purescript" = callPackage
@@ -213909,7 +211888,6 @@ self: {
        description = "PureScript Programming Language Compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "purescript-ast" = callPackage
@@ -213927,8 +211905,6 @@ self: {
        ];
        description = "PureScript Programming Language Abstract Syntax Tree";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "purescript-bridge" = callPackage
@@ -214022,7 +211998,6 @@ self: {
        description = "Isomorphic trivial data type definitions over JSON";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "purescript-tsd-gen" = callPackage
@@ -214046,7 +212021,6 @@ self: {
        description = "TypeScript Declaration File (.d.ts) generator for PureScript";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pursuit-client" = callPackage
@@ -214108,7 +212082,6 @@ self: {
        description = "A server-side library for sending push notifications";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "push-notify-apn" = callPackage
@@ -214135,7 +212108,6 @@ self: {
        description = "Send push notifications to mobile iOS devices";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "push-notify-ccs" = callPackage
@@ -214156,7 +212128,6 @@ self: {
        description = "A server-side library for sending/receiving push notifications through CCS (Google Cloud Messaging)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "push-notify-general" = callPackage
@@ -214176,7 +212147,6 @@ self: {
        description = "A general library for sending/receiving push notif. through dif. services.";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pushbullet" = callPackage
@@ -214236,8 +212206,8 @@ self: {
      }:
      mkDerivation {
        pname = "pusher-http-haskell";
-       version = "2.1.0.0";
-       sha256 = "1zmcpbd20m7pc1bc0dwkhy33vbakdwc478dmzpr4l80kck0mpmy6";
+       version = "2.1.0.2";
+       sha256 = "0xrmjdika7y2hkp67kzh7xqc3v9j6db1rq2ksih1j9yypa1iihka";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring cryptonite hashable
          http-client http-client-tls http-types memory text time
@@ -214386,7 +212356,6 @@ self: {
        description = "Creating graphics for pencil puzzles, command line tools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "pvar" = callPackage
@@ -214425,7 +212394,6 @@ self: {
        description = "A photo viewer daemon application with remote controlling abilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libdevil;};
 
   "pvss" = callPackage
@@ -214652,7 +212620,6 @@ self: {
        description = "'Vec' instances for 'qd' types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "qed" = callPackage
@@ -214697,7 +212664,6 @@ self: {
        description = "Command line tool qhs, SQL queries on CSV and TSV files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "qhull-simple" = callPackage
@@ -214877,7 +212843,6 @@ self: {
        description = "Library to generate QR codes from bytestrings and objects and scale image files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "qrcode" = callPackage
@@ -215185,7 +213150,6 @@ self: {
        description = "Retrieve, store and manage real quantum random data";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quarantimer" = callPackage
@@ -215273,7 +213237,6 @@ self: {
        description = "Analysis and parsing library for SQL queries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "queryparser-demo" = callPackage
@@ -215291,7 +213254,6 @@ self: {
        description = "Demo package containing queryparser examples";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "queryparser-hive" = callPackage
@@ -215312,7 +213274,6 @@ self: {
        description = "Parsing for Hive SQL queries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "queryparser-presto" = callPackage
@@ -215333,7 +213294,6 @@ self: {
        description = "Parsing for Presto SQL queries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "queryparser-vertica" = callPackage
@@ -215354,7 +213314,6 @@ self: {
        description = "Parsing for Vertica SQL queries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "querystring-pickle" = callPackage
@@ -215389,7 +213348,6 @@ self: {
        description = "A package for prompting values from the command-line";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "queue" = callPackage
@@ -215413,7 +213371,6 @@ self: {
        description = "A library of queuelike data structures, both functional and stateful";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quick-generator" = callPackage
@@ -215467,7 +213424,6 @@ self: {
        description = "quick & easy benchmarking of command-line programs";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickbooks" = callPackage
@@ -215521,8 +213477,6 @@ self: {
        ];
        description = "Generate QuickCheck Gen for Sum Types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-assertions" = callPackage
@@ -215580,6 +213534,7 @@ self: {
        sha256 = "0qdjls949kmcv8wj3a27p4dz8nb1dq4i99zizkw7qyqn47r9ccxd";
        libraryHaskellDepends = [ base QuickCheck unfoldable-restricted ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "quickcheck-enum-instances" = callPackage
@@ -215662,7 +213617,6 @@ self: {
        description = "Automating QuickCheck for polymorphic and overlaoded properties";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-properties" = callPackage
@@ -215716,7 +213670,6 @@ self: {
        description = "Generate regex-constrained strings for QuickCheck";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-relaxng" = callPackage
@@ -215733,7 +213686,6 @@ self: {
        description = "Generate RelaxNG-constrained XML documents for QuickCheck";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-rematch" = callPackage
@@ -215840,7 +213792,6 @@ self: {
        description = "Test monadic programs using state machine based models";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-state-machine-distributed" = callPackage
@@ -215865,7 +213816,6 @@ self: {
        description = "Test monadic programs using state machine based models";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-string-random" = callPackage
@@ -215882,8 +213832,6 @@ self: {
        ];
        description = "Helper to build generators with Text.StringRandom";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickcheck-text" = callPackage
@@ -216093,7 +214041,6 @@ self: {
        description = "A reflective batch tester for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quickwebapp" = callPackage
@@ -216143,7 +214090,6 @@ self: {
        description = "Meta-package for Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-algorithms" = callPackage
@@ -216168,7 +214114,6 @@ self: {
        description = "A set of algorithms implemented in Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-all" = callPackage
@@ -216185,7 +214130,6 @@ self: {
        description = "Meta-package for Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-cabal" = callPackage
@@ -216198,7 +214142,6 @@ self: {
        description = "Some functions to aid in the creation of Cabal packages for Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-core" = callPackage
@@ -216237,7 +214180,6 @@ self: {
        description = "Miscellaneous code snippets that illustrate various Quipper features";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-language" = callPackage
@@ -216259,7 +214201,6 @@ self: {
        description = "Quipper, an embedded functional programming language for quantum computation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-libraries" = callPackage
@@ -216283,7 +214224,6 @@ self: {
        description = "The standard libraries for Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-rendering" = callPackage
@@ -216301,7 +214241,6 @@ self: {
        description = "An embedded, scalable functional programming language for quantum computing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-tools" = callPackage
@@ -216324,7 +214263,6 @@ self: {
        description = "Miscellaneous stand-alone tools for Quipper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quipper-utils" = callPackage
@@ -216373,7 +214311,6 @@ self: {
        description = "Binary serialisation support for Quivers";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-bytestring" = callPackage
@@ -216386,7 +214323,6 @@ self: {
        description = "Quiver combinators for bytestring streaming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-cell" = callPackage
@@ -216399,7 +214335,6 @@ self: {
        description = "Quiver combinators for cellular data processing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-csv" = callPackage
@@ -216416,7 +214351,6 @@ self: {
        description = "Quiver combinators for cellular CSV data processing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-enumerator" = callPackage
@@ -216429,7 +214363,6 @@ self: {
        description = "Bridge between Quiver and Iteratee paradigms";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-groups" = callPackage
@@ -216443,7 +214376,6 @@ self: {
        description = "Group and chunk values within a Quiver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-http" = callPackage
@@ -216462,7 +214394,6 @@ self: {
        description = "Adapter to stream over HTTP(s) with quiver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-instances" = callPackage
@@ -216479,7 +214410,6 @@ self: {
        description = "Extra instances for Quiver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-interleave" = callPackage
@@ -216493,7 +214423,6 @@ self: {
        description = "Interleave values from multiple Quivers";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quiver-sort" = callPackage
@@ -216518,7 +214447,6 @@ self: {
        description = "Sort the values in a quiver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "quokka" = callPackage
@@ -216601,7 +214529,6 @@ self: {
        description = "Command line binary for working with the Qux language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "r-glpk-phonetic-languages-ukrainian-durations" = callPackage
@@ -216653,29 +214580,35 @@ self: {
      }) {};
 
   "raaz" = callPackage
-    ({ mkDerivation, base, blaze-builder, bytestring, criterion
+    ({ mkDerivation, attoparsec, base, bytestring
      , criterion-measurement, deepseq, hspec, hspec-discover, HUnit
-     , optparse-applicative, pretty, QuickCheck, transformers, vector
+     , optparse-applicative, pretty, QuickCheck, vector
      }:
      mkDerivation {
        pname = "raaz";
-       version = "0.2.2";
-       sha256 = "1v7zyk61vk4d6xniqq4fglwccgpx9clx7hxp1xr531spshadq99p";
+       version = "0.3.0";
+       sha256 = "0a322ji29s537kz1mazbl7grbg0s1wkz2cxg74zlvqa47xbk20k1";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base bytestring deepseq vector ];
-       executableHaskellDepends = [ base optparse-applicative ];
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bytestring criterion-measurement deepseq hspec HUnit pretty
+         QuickCheck vector
+       ];
+       executableHaskellDepends = [
+         base bytestring deepseq optparse-applicative vector
+       ];
        testHaskellDepends = [
-         base bytestring hspec hspec-discover HUnit QuickCheck transformers
-         vector
+         attoparsec base bytestring deepseq hspec hspec-discover HUnit
+         QuickCheck vector
        ];
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
-         base blaze-builder bytestring criterion criterion-measurement
-         pretty
+         base bytestring criterion-measurement deepseq pretty vector
        ];
-       description = "The raaz cryptographic library";
-       license = lib.licenses.bsd3;
+       doHaddock = false;
+       description = "Fast and type safe cryptography";
+       license = "(Apache-2.0 OR BSD-3-Clause)";
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {};
@@ -216903,7 +214836,6 @@ self: {
        description = "Compiler and editor for the esolang rail";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rails-session" = callPackage
@@ -216928,7 +214860,6 @@ self: {
        description = "Decrypt Ruby on Rails sessions in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rainbow" = callPackage
@@ -216960,7 +214891,6 @@ self: {
        description = "Tests and QuickCheck generators to accompany rainbow";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rainbox" = callPackage
@@ -217022,7 +214952,6 @@ self: {
        description = "distributed-process node";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rakhana" = callPackage
@@ -217124,8 +215053,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq ];
        description = "Random access list with a list compatible interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rallod" = callPackage
@@ -217139,7 +215066,6 @@ self: {
        description = "'$' in reverse";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "raml" = callPackage
@@ -217163,8 +215089,8 @@ self: {
     ({ mkDerivation, base, criterion, hspec }:
      mkDerivation {
        pname = "rampart";
-       version = "1.1.0.2";
-       sha256 = "1lvzgdagjzvkxcdbc43n144vbva5vlvsjziz80rjzm7kg3mslg1r";
+       version = "1.1.0.3";
+       sha256 = "090n80qkfcp219lq3dqjpvvvr8dpnc8srzldch4f4vfazw289b0y";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        benchmarkHaskellDepends = [ base criterion ];
@@ -217236,20 +215162,6 @@ self: {
      }) {};
 
   "random" = callPackage
-    ({ mkDerivation, base, time }:
-     mkDerivation {
-       pname = "random";
-       version = "1.1";
-       sha256 = "0nis3lbkp8vfx8pkr6v7b7kr5m334bzb0fk9vxqklnp2aw8a865p";
-       revision = "1";
-       editedCabalFile = "1pv5d7bm2rgap7llp5vjsplrg048gvf0226y0v19gpvdsx7n4rvv";
-       libraryHaskellDepends = [ base time ];
-       testHaskellDepends = [ base ];
-       description = "random number library";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "random_1_2_0" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, doctest
      , gauge, mtl, mwc-random, primitive, rdtsc, smallcheck, split
      , splitmix, tasty, tasty-expected-failure, tasty-hunit
@@ -217272,7 +215184,6 @@ self: {
        ];
        description = "Pseudo-random number generation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "random-access-file" = callPackage
@@ -217376,7 +215287,6 @@ self: {
        description = "A simple random generator library for effin";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "random-extras" = callPackage
@@ -217395,23 +215305,6 @@ self: {
 
   "random-fu" = callPackage
     ({ mkDerivation, base, erf, math-functions, monad-loops, mtl
-     , random-shuffle, random-source, rvar, syb, template-haskell
-     , transformers, vector
-     }:
-     mkDerivation {
-       pname = "random-fu";
-       version = "0.2.7.4";
-       sha256 = "13dgx069lvdfxm7l2q2l6d7q0gd3wp41b8l4l6wmhlfbl5xici3m";
-       libraryHaskellDepends = [
-         base erf math-functions monad-loops mtl random-shuffle
-         random-source rvar syb template-haskell transformers vector
-       ];
-       description = "Random number generation";
-       license = lib.licenses.publicDomain;
-     }) {};
-
-  "random-fu_0_2_7_7" = callPackage
-    ({ mkDerivation, base, erf, math-functions, monad-loops, mtl
      , random, random-shuffle, random-source, rvar, syb
      , template-haskell, transformers, vector
      }:
@@ -217425,7 +215318,6 @@ self: {
        ];
        description = "Random number generation";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "random-fu-multivariate" = callPackage
@@ -217456,7 +215348,6 @@ self: {
        description = "Random variate generation from hypergeometric distributions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "random-names" = callPackage
@@ -217488,23 +215379,6 @@ self: {
      }:
      mkDerivation {
        pname = "random-source";
-       version = "0.3.0.8";
-       sha256 = "0kjvpmxhff6id99hhgjp3vvb4vlhs3shkrh1n5cbfm7450lpmmn2";
-       libraryHaskellDepends = [
-         base flexible-defaults mersenne-random-pure64 mtl mwc-random
-         primitive random stateref syb template-haskell th-extras
-       ];
-       description = "Generic basis for random number generators";
-       license = lib.licenses.publicDomain;
-     }) {};
-
-  "random-source_0_3_0_11" = callPackage
-    ({ mkDerivation, base, flexible-defaults, mersenne-random-pure64
-     , mtl, mwc-random, primitive, random, stateref, syb
-     , template-haskell, th-extras
-     }:
-     mkDerivation {
-       pname = "random-source";
        version = "0.3.0.11";
        sha256 = "0lwqbd0h495srgi2p8fsmsfk5hv5m3f6cxm12j61xx94fdyn98sv";
        libraryHaskellDepends = [
@@ -217513,7 +215387,6 @@ self: {
        ];
        description = "Generic basis for random number generators";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "random-stream" = callPackage
@@ -217694,7 +215567,6 @@ self: {
        description = "A Range type with vector-space instances";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ranged-list" = callPackage
@@ -217846,7 +215718,6 @@ self: {
        description = "A modular text editor";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-example-config" = callPackage
@@ -217867,7 +215738,6 @@ self: {
        description = "Example user config for Rasa";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-bufs" = callPackage
@@ -217883,7 +215753,6 @@ self: {
        description = "Rasa Ext for useful buffer utilities";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-cmd" = callPackage
@@ -217899,7 +215768,6 @@ self: {
        description = "Rasa Ext for running commands";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-cursors" = callPackage
@@ -217916,7 +215784,6 @@ self: {
        description = "Rasa Ext adding cursor(s)";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-files" = callPackage
@@ -217934,7 +215801,6 @@ self: {
        description = "Rasa Ext for filesystem actions";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-logger" = callPackage
@@ -217947,7 +215813,6 @@ self: {
        description = "Rasa Ext for logging state/actions";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-slate" = callPackage
@@ -217965,7 +215830,6 @@ self: {
        description = "Rasa extension for rendering to terminal with vty";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-status-bar" = callPackage
@@ -217978,7 +215842,6 @@ self: {
        description = "Rasa Ext for populating status-bar";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-style" = callPackage
@@ -217991,7 +215854,6 @@ self: {
        description = "Rasa Ext managing rendering styles";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-views" = callPackage
@@ -218009,7 +215871,6 @@ self: {
        description = "Rasa Ext managing rendering views";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rasa-ext-vim" = callPackage
@@ -218029,7 +215890,6 @@ self: {
        description = "Rasa Ext for vim bindings";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rascal" = callPackage
@@ -218107,8 +215967,8 @@ self: {
      }:
      mkDerivation {
        pname = "ratel";
-       version = "1.0.14";
-       sha256 = "0yjr8hj5c5i2l4p9zinwvzf33vhn6s9lipndqwx0km4ry0rylwwx";
+       version = "1.0.15";
+       sha256 = "14g39xsfm60iywcddi7glxvk4b92vd7nk7yd5zhvjhxi3zqz50i2";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive containers http-client
          http-client-tls http-types text uuid
@@ -218178,7 +216038,6 @@ self: {
        description = "Client for rating.chgk.info API and CSV tables (documentation in Russian)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rating-systems" = callPackage
@@ -218262,8 +216121,8 @@ self: {
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "11.0.1";
-       sha256 = "1s9n89i6mh3lw9mni5lgs8qnq5c1981hrz5bv0n9cffnnp45av6a";
+       version = "11.1.1";
+       sha256 = "0cfxdi2h6aqa6zylg1hgn563fpi72zqfqzl9gsipm7jz1532j2a3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -218337,7 +216196,6 @@ self: {
        description = "Resource-Aware Feldspar";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "raw-strings-qq" = callPackage
@@ -218380,7 +216238,6 @@ self: {
        description = "Anonymous extensible records";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rawstring-qm" = callPackage
@@ -218430,7 +216287,6 @@ self: {
        description = "Common text/parsing tools for Razom language packages";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rbpcp-api" = callPackage
@@ -218467,7 +216323,6 @@ self: {
        description = "Mask nucleotide (EST) sequences in Fasta format";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rbst" = callPackage
@@ -218516,7 +216371,6 @@ self: {
        description = "Reservoir Computing, fast RNNs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rclient" = callPackage
@@ -218628,7 +216482,6 @@ self: {
        description = "A Haskell wrapper for Rdio's API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rdtsc" = callPackage
@@ -218696,7 +216549,6 @@ self: {
        description = "Allow react-flux stores to send requests to a servant server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "react-haskell" = callPackage
@@ -218803,8 +216655,9 @@ self: {
        ];
        description = "Programmatically edit MIDI events via ALSA and reactive-banana";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "reactive-banana" = callPackage
@@ -218827,8 +216680,6 @@ self: {
        ];
        description = "Library for functional reactive programming (FRP)";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-banana-automation" = callPackage
@@ -218845,8 +216696,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "home (etc) automation using reactive-banana";
        license = lib.licenses.agpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-banana-bunch" = callPackage
@@ -218862,8 +216711,6 @@ self: {
        ];
        description = "Extend reactive-banana to multiple events per time point";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-banana-gi-gtk" = callPackage
@@ -218899,7 +216746,6 @@ self: {
        description = "Reactive Banana bindings for SDL";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-banana-sdl2" = callPackage
@@ -218948,7 +216794,6 @@ self: {
        description = "Examples for the reactive-banana library, using wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-fieldtrip" = callPackage
@@ -218966,7 +216811,6 @@ self: {
        description = "Connect Reactive and FieldTrip";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-glut" = callPackage
@@ -218983,7 +216827,6 @@ self: {
        description = "Connects Reactive and GLUT";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-haskell" = callPackage
@@ -219026,8 +216869,6 @@ self: {
        ];
        description = "Process MIDI events via reactive-banana and JACK";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-midyim" = callPackage
@@ -219047,8 +216888,6 @@ self: {
        ];
        description = "Process MIDI events via reactive-banana";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reactive-thread" = callPackage
@@ -219102,7 +216941,6 @@ self: {
        description = "Reactor - task parallel reactive programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "read-bounded" = callPackage
@@ -219268,7 +217106,6 @@ self: {
        description = "Readline with variables (setX/getY) wrapped in state vars";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "readme-lhs" = callPackage
@@ -219306,7 +217143,6 @@ self: {
        description = "Read and pretty print Python bytecode (.pyc) files.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "readshp" = callPackage
@@ -219357,6 +217193,17 @@ self: {
        broken = true;
      }) {};
 
+  "realworldhaskell" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "realworldhaskell";
+       version = "0.0.1.0";
+       sha256 = "0695y4af42vm50njpldx3i03ia4bws0lx3yhw6p2rv032jhmp5w6";
+       libraryHaskellDepends = [ base ];
+       description = "The Real World Haskell Book";
+       license = lib.licenses.publicDomain;
+     }) {};
+
   "reanimate" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, array, attoparsec, base
      , base64-bytestring, bytestring, cassava, cereal, colour
@@ -219392,7 +217239,6 @@ self: {
        description = "Animation library based on SVGs";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reanimate-svg" = callPackage
@@ -219490,7 +217336,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "rebase_1_12_0_1" = callPackage
+  "rebase_1_13" = callPackage
     ({ mkDerivation, base, bifunctors, bytestring, comonad, containers
      , contravariant, deepseq, dlist, either, hashable, hashable-time
      , mtl, profunctors, scientific, selective, semigroupoids, stm, text
@@ -219499,8 +217345,8 @@ self: {
      }:
      mkDerivation {
        pname = "rebase";
-       version = "1.12.0.1";
-       sha256 = "1yl09702psialskvm39i9rl3sag853qr1237jhs79yk7nhvdlaqx";
+       version = "1.13";
+       sha256 = "0cqpp2cn3yi9d825qzavs52ky77b628fm8p7w51zy9qjx1p7650v";
        libraryHaskellDepends = [
          base bifunctors bytestring comonad containers contravariant deepseq
          dlist either hashable hashable-time mtl profunctors scientific
@@ -219581,7 +217427,6 @@ self: {
        description = "Instances of \"aeson\" classes for the \"record\" types";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "record-dot-preprocessor" = callPackage
@@ -219590,8 +217435,8 @@ self: {
      }:
      mkDerivation {
        pname = "record-dot-preprocessor";
-       version = "0.2.10";
-       sha256 = "1zwkc5mqcxlv4cm7qd75sdmvjckvpchcrqphsq82val41mp27nk5";
+       version = "0.2.11";
+       sha256 = "1hsk7n8hrskj30wcil4rvjhng3zcj7f9a0dn69371iay4x8d75md";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base extra ghc uniplate ];
@@ -219641,7 +217486,6 @@ self: {
        description = "Utilities for working with OpenGL's GLSL shading language and Nikita Volkov's \"Record\"s";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "record-hasfield" = callPackage
@@ -219674,7 +217518,6 @@ self: {
        description = "Compiler preprocessor introducing a syntactic extension for anonymous records";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "record-syntax" = callPackage
@@ -219699,7 +217542,6 @@ self: {
        description = "A library for parsing and processing the Haskell syntax sprinkled with anonymous records";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "record-wrangler" = callPackage
@@ -219760,7 +217602,6 @@ self: {
        description = "Template Haskell declarations for the records package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "recover-rtti" = callPackage
@@ -219811,8 +217652,6 @@ self: {
        testHaskellDepends = [ base HUnit template-haskell transformers ];
        description = "Representing common recursion patterns as higher-order functions";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "recursion-schemes-ext" = callPackage
@@ -219832,8 +217671,6 @@ self: {
        ];
        description = "Amateur addenda to recursion-schemes";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "recursion-schemes-ix" = callPackage
@@ -219955,7 +217792,6 @@ self: {
        description = "Library for interfacing with Reddit's API";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "redesigned-carnival" = callPackage
@@ -220137,7 +217973,6 @@ self: {
        description = "Simplify a set of equations by removing redundancies";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reducers" = callPackage
@@ -220246,8 +218081,8 @@ self: {
     ({ mkDerivation, base, stm, transformers }:
      mkDerivation {
        pname = "ref-fd";
-       version = "0.4.0.2";
-       sha256 = "1camr7cv1fglicyp2ivv7qv1yidj36zxcglfvmw7giqdj7r7j5w8";
+       version = "0.5";
+       sha256 = "1r34xyyx0fyl1fc64n1hhk0m2s1l808kjb18dmj8w0y91w4ms6qj";
        libraryHaskellDepends = [ base stm transformers ];
        description = "A type class for monads with references using functional dependencies";
        license = lib.licenses.bsd3;
@@ -220270,8 +218105,8 @@ self: {
     ({ mkDerivation, base, stm, transformers }:
      mkDerivation {
        pname = "ref-tf";
-       version = "0.4.0.2";
-       sha256 = "0pq9pm8jsx9w1q81pf5pvc361ad8dbyklw94jq47drr2i0dc7n20";
+       version = "0.5";
+       sha256 = "06lf3267b68syiqcwvgw8a7yi0ki3khnh4i9s8z7zjrjnj6h9r4v";
        libraryHaskellDepends = [ base stm transformers ];
        description = "A type class for monads with references using type families";
        license = lib.licenses.bsd3;
@@ -220362,7 +218197,6 @@ self: {
        description = "A command-line tool for pasting to https://www.refheap.com";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "refined" = callPackage
@@ -220524,7 +218358,6 @@ self: {
        description = "Continuous animations support for reflex";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-backend-socket" = callPackage
@@ -220551,7 +218384,6 @@ self: {
        description = "Reflex bindings for TCP sockets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-backend-wai" = callPackage
@@ -220573,7 +218405,6 @@ self: {
        description = "Reflex interface to `wai`";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-basic-host" = callPackage
@@ -220615,9 +218446,26 @@ self: {
        ];
        description = "Functional Reactive Web Apps with Reflex";
        license = lib.licenses.bsd3;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
        maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
+  "reflex-dom-ace" = callPackage
+    ({ mkDerivation, base, containers, data-default, ghcjs-dom, jsaddle
+     , lens, mtl, reflex-dom-core, text
+     }:
+     mkDerivation {
+       pname = "reflex-dom-ace";
+       version = "0.3.0.3";
+       sha256 = "024xwgqasf2sciz0paq7p1ry1njcz46pz2l1cyjxm562hjqvsb0h";
+       libraryHaskellDepends = [
+         base containers data-default ghcjs-dom jsaddle lens mtl
+         reflex-dom-core text
+       ];
+       description = "Basic support for using the Ace editor with Reflex";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "reflex-dom-colonnade" = callPackage
     ({ mkDerivation, base, colonnade, containers, contravariant, reflex
      , reflex-dom, semigroups, text, vector
@@ -220652,6 +218500,7 @@ self: {
        description = "A playground for experimenting with infrastructure and common code for reflex applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "reflex-dom-core" = callPackage
@@ -220711,7 +218560,7 @@ self: {
        executableHaskellDepends = [ base reflex-dom text ];
        description = "A reflex-dom widget to draw on a canvas with a fragment shader program";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {};
 
   "reflex-dom-helpers" = callPackage
@@ -220729,6 +218578,7 @@ self: {
        description = "Html tag helpers for reflex-dom";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "reflex-dom-pandoc" = callPackage
@@ -220888,7 +218738,6 @@ self: {
        description = "A GHCi widget library for use in reflex applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-gi-gtk" = callPackage
@@ -220901,6 +218750,8 @@ self: {
        pname = "reflex-gi-gtk";
        version = "0.2.0.0";
        sha256 = "0dx9g5v5i0fhxn1kn6fsj8hpwnax8wq89drsv8q2fwk9pxd8i384";
+       revision = "2";
+       editedCabalFile = "0k0bnmwpss3j6zgrh4l576qx81khzv18g0n9hmzajfwjwp9ifwmz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -220961,7 +218812,6 @@ self: {
        description = "A simple scene-graph using reflex and gloss";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-jsx" = callPackage
@@ -220979,6 +218829,7 @@ self: {
        description = "Use jsx-like syntax in Reflex";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "reflex-libtelnet" = callPackage
@@ -221012,8 +218863,6 @@ self: {
        ];
        description = "Localization library for reflex";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-localize-dom" = callPackage
@@ -221031,8 +218880,7 @@ self: {
        ];
        description = "Helper widgets for reflex-localize";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [ "armv7l-linux" "i686-linux" "x86_64-linux" ];
      }) {};
 
   "reflex-monad-auth" = callPackage
@@ -221092,7 +218940,6 @@ self: {
        description = "Reflex FRP interface for running system processes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reflex-sdl2" = callPackage
@@ -221351,7 +219198,6 @@ self: {
        description = "Tools for maintaining a database";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reg-alloc" = callPackage
@@ -221391,7 +219237,6 @@ self: {
        description = "Register allocation by graph colorization";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reg-alloc-types" = callPackage
@@ -221511,7 +219356,6 @@ self: {
        description = "Replaces/Enhances Text.Regex. Implementing regular expression matching using Brzozowski's Deriviatives";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regex-dfa" = callPackage
@@ -221701,7 +219545,6 @@ self: {
        description = "Text-based PCRE API for regex-base";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regex-pderiv" = callPackage
@@ -221719,7 +219562,6 @@ self: {
        description = "Replaces/Enhances Text.Regex. Implementing regular expression matching using Antimirov's partial derivatives.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regex-posix" = callPackage
@@ -221955,8 +219797,6 @@ self: {
        ];
        description = "Types that can only be constructed if they match a regular expression";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regex-xmlschema" = callPackage
@@ -221969,7 +219809,6 @@ self: {
        description = "A regular expression library for W3C XML Schema regular expressions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regexchar" = callPackage
@@ -222026,7 +219865,6 @@ self: {
        description = "Regular Expressions on Tries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regexpr" = callPackage
@@ -222082,7 +219920,6 @@ self: {
        description = "Regional memory pointers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regions" = callPackage
@@ -222116,7 +219953,6 @@ self: {
        description = "Monads-fd instances for the RegionT monad transformer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regions-monadstf" = callPackage
@@ -222133,7 +219969,6 @@ self: {
        description = "Monads-tf instances for the RegionT monad transformer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regions-mtl" = callPackage
@@ -222146,7 +219981,6 @@ self: {
        description = "mtl instances for the RegionT monad transformer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "register-machine-typelevel" = callPackage
@@ -222215,7 +220049,6 @@ self: {
        description = "utilities to work with Hedgehog generators and `registry`";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regress" = callPackage
@@ -222269,7 +220102,6 @@ self: {
        description = "Additional functions for regular: arbitrary, coarbitrary, and binary get/put";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regular-web" = callPackage
@@ -222286,7 +220118,6 @@ self: {
        description = "Generic programming for the web";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "regular-xmlpickler" = callPackage
@@ -222299,7 +220130,6 @@ self: {
        description = "Generic generation of HXT XmlPickler instances using Regular";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reheat" = callPackage
@@ -222315,7 +220145,6 @@ self: {
        description = "to make notes and reduce impact on idle time on writing other programms";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rehoo" = callPackage
@@ -222618,7 +220447,6 @@ self: {
        description = "Durations and generalized time parsing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "releaser" = callPackage
@@ -222884,7 +220712,6 @@ self: {
        description = "Remote Monad implementation of the JSON RPC protocol";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "remote-json-client" = callPackage
@@ -222903,7 +220730,6 @@ self: {
        description = "Web client wrapper for remote-json";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "remote-json-server" = callPackage
@@ -222922,7 +220748,6 @@ self: {
        description = "Web server wrapper for remote-json";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "remote-monad" = callPackage
@@ -222980,7 +220805,6 @@ self: {
        description = "A library for client-server applications based on custom protocols";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "render-utf8" = callPackage
@@ -222996,8 +220820,6 @@ self: {
        ];
        description = "Simple Utf8 wrapper for ByteString Builder with conversion classes";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "renderable" = callPackage
@@ -223022,6 +220844,21 @@ self: {
        license = lib.licenses.publicDomain;
      }) {};
 
+  "reorder-expression" = callPackage
+    ({ mkDerivation, base, hspec, hspec-discover, optics, parsec }:
+     mkDerivation {
+       pname = "reorder-expression";
+       version = "0.1.0.0";
+       sha256 = "01d83j3mq2gz6maqbkzpjrz6ppyhsqrj4rj72xw49fkl2w34pa9f";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec optics parsec ];
+       testToolDepends = [ hspec-discover ];
+       description = "Reorder expressions in a syntax tree according to operator fixities";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "reorderable" = callPackage
     ({ mkDerivation, base, constraints, haskell-src-exts
      , haskell-src-meta, template-haskell
@@ -223086,7 +220923,6 @@ self: {
        description = "Bulk array representations and operators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-bytestring" = callPackage
@@ -223117,7 +220953,6 @@ self: {
        description = "Packing and unpacking flat tables";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-devil" = callPackage
@@ -223166,7 +221001,6 @@ self: {
        description = "Examples using the Repa array library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-fftw" = callPackage
@@ -223206,7 +221040,6 @@ self: {
        description = "Data-parallel data flows";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-io" = callPackage
@@ -223254,7 +221087,6 @@ self: {
        description = "Data Flow Fusion GHC Plugin";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-scalar" = callPackage
@@ -223317,7 +221149,6 @@ self: {
        description = "Stream functions not present in the vector library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repa-v4l2" = callPackage
@@ -223338,7 +221169,6 @@ self: {
        description = "Provides high-level access to webcams";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repl" = callPackage
@@ -223453,7 +221283,6 @@ self: {
        description = "Initial project template from stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repline" = callPackage
@@ -223516,7 +221345,6 @@ self: {
        description = "Render overloaded expressions to their textual representation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "repr-tree-syb" = callPackage
@@ -223579,23 +221407,23 @@ self: {
        description = "Tries from representations of polynomial functors";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reprinter" = callPackage
-    ({ mkDerivation, base, mtl, syb, syz, text, transformers, uniplate
+    ({ mkDerivation, base, bytestring, hspec, hspec-discover, mtl, syb
+     , syz, text, transformers
      }:
      mkDerivation {
        pname = "reprinter";
-       version = "0.2.0.0";
-       sha256 = "1b3hdz7qq9qk7pbx0ny4ziagjm9hi9wfi9rl0aq0b8p70zzyjiq1";
+       version = "0.3.0.0";
+       sha256 = "04rzgk0q5q75z52x3qyq8ddhyb6krnz1ixhmmvzpcfaq39p00cgh";
        libraryHaskellDepends = [
-         base mtl syb syz text transformers uniplate
+         base bytestring mtl syb syz text transformers
        ];
+       testHaskellDepends = [ base hspec mtl text ];
+       testToolDepends = [ hspec-discover ];
        description = "Scrap Your Reprinter";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reproject" = callPackage
@@ -223641,6 +221469,7 @@ self: {
        doCheck = false;
        description = "Easy-to-use, type-safe, expandable, high-level HTTP client library";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "req-conduit" = callPackage
@@ -223690,7 +221519,6 @@ self: {
        description = "Provides OAuth2 authentication for use with Req";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "req-url-extra" = callPackage
@@ -223734,8 +221562,8 @@ self: {
      }:
      mkDerivation {
        pname = "request";
-       version = "0.1.3.0";
-       sha256 = "07ypsdmf227m6j8gkl29621z7grbsgr0pmk3dglx9zlrmq0zbn8j";
+       version = "0.2.1.0";
+       sha256 = "1a2zx0gb03mv6g4sw0r6pxkvih8ca5w9w44k6d3n7b5b7s8yznhk";
        libraryHaskellDepends = [
          base bytestring case-insensitive http-client http-client-tls
          http-types
@@ -223820,8 +221648,6 @@ self: {
        ];
        description = "Regular-expressions extended with fixpoints for context-free powers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rerebase" = callPackage
@@ -223835,12 +221661,12 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "rerebase_1_12_0_1" = callPackage
+  "rerebase_1_13" = callPackage
     ({ mkDerivation, rebase }:
      mkDerivation {
        pname = "rerebase";
-       version = "1.12.0.1";
-       sha256 = "0kh0022hfviywa4rkwnrqygc7s3vg8qvr9znh66v5c1i3gaibzq5";
+       version = "1.13";
+       sha256 = "1ng16dnlrxcy76mpw21mwf2sk70q4i0kmqhxikjhc2h06zdpkqfr";
        libraryHaskellDepends = [ rebase ];
        description = "Reexports from \"base\" with a bunch of other standard libraries";
        license = lib.licenses.mit;
@@ -223900,8 +221726,6 @@ self: {
        ];
        description = "More understandable exceptions";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "reserve" = callPackage
@@ -223967,7 +221791,6 @@ self: {
        description = "Compute total resistance of a cube of resistors";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "resolv_0_1_1_2" = callPackage
@@ -224114,7 +221937,6 @@ self: {
        description = "Fork of resource-pool, with a MonadCatchIO constraint";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "resource-pool-monad" = callPackage
@@ -224147,7 +221969,6 @@ self: {
        description = "Allocate resources which are guaranteed to be released";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "resourcet" = callPackage
@@ -224204,7 +222025,6 @@ self: {
        description = "process and route HTTP requests and generate responses on top of WAI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-client" = callPackage
@@ -224227,7 +222047,6 @@ self: {
        description = "Utility library for use in generated API client libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-core" = callPackage
@@ -224256,7 +222075,6 @@ self: {
        description = "Rest API library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-example" = callPackage
@@ -224280,7 +222098,6 @@ self: {
        description = "Example project for rest";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-gen" = callPackage
@@ -224309,7 +222126,6 @@ self: {
        description = "Documentation and client generation from rest definition";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-happstack" = callPackage
@@ -224328,7 +222144,6 @@ self: {
        description = "Rest driver for Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-snap" = callPackage
@@ -224347,7 +222162,6 @@ self: {
        description = "Rest driver for Snap";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-stringmap" = callPackage
@@ -224365,7 +222179,6 @@ self: {
        description = "Maps with stringy keys that can be transcoded to JSON and XML";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-types" = callPackage
@@ -224386,7 +222199,6 @@ self: {
        description = "Silk Rest Framework Types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rest-wai" = callPackage
@@ -224407,7 +222219,6 @@ self: {
        description = "Rest driver for WAI applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "restartable" = callPackage
@@ -224441,7 +222252,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "restless-git" = callPackage
@@ -224479,7 +222289,6 @@ self: {
        description = "Running worker processes under system resource restrictions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "restyle" = callPackage
@@ -224591,7 +222400,6 @@ self: {
        description = "Useful tools for modeling data with rethinkdb";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rethinkdb-wereHamster" = callPackage
@@ -224773,7 +222581,6 @@ self: {
        description = "open file and rewrite it with new contents";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rewrite-inspector" = callPackage
@@ -224807,7 +222614,6 @@ self: {
        description = "Generic rewriting library for regular datatypes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rex" = callPackage
@@ -224844,7 +222650,6 @@ self: {
        description = "Github resume generator";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc" = callPackage
@@ -224879,7 +222684,6 @@ self: {
        description = "Robert Fischer's Common library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc-env" = callPackage
@@ -224892,7 +222696,6 @@ self: {
        description = "Environment variable support from the Robert Fischer Commons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc-http-client" = callPackage
@@ -224911,7 +222714,6 @@ self: {
        description = "The HTTP client extensions from the Robert Fischer Commons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc-prelude" = callPackage
@@ -224954,7 +222756,6 @@ self: {
        description = "The PostgreSQL extensions from the Robert Fischer Commons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc-redis" = callPackage
@@ -224967,7 +222768,6 @@ self: {
        description = "The Redis extensions from the Robert Fischer Commons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc-servant" = callPackage
@@ -224990,7 +222790,6 @@ self: {
        description = "The Servant extensions from the Robert Fischer Commons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rfc1413-server" = callPackage
@@ -225074,8 +222873,6 @@ self: {
        ];
        description = "A dynamic/unbounded alternative to Bounded Enum";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rgb-color-model" = callPackage
@@ -225161,7 +222958,6 @@ self: {
        description = "Haskell rhythm game tutorial";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "riak" = callPackage
@@ -225264,7 +223060,6 @@ self: {
        description = "Static site generator based on Shake";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rib-core" = callPackage
@@ -225302,28 +223097,28 @@ self: {
      }) {};
 
   "ribosome" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base-noprelude, bytestring
-     , cereal, cereal-conduit, chiasma, composition, composition-extra
-     , conduit, conduit-extra, containers, cornea, data-default, deepseq
-     , directory, either, exceptions, filepath, free, hslogger, lens
-     , lifted-async, lifted-base, messagepack, MissingH, monad-control
-     , monad-loops, mtl, nvim-hs, path, path-io, pretty-terminal
-     , prettyprinter, prettyprinter-ansi-terminal, process, relude
-     , resourcet, safe, split, stm, stm-chans, stm-conduit
-     , template-haskell, text, th-abstraction, time, transformers
-     , transformers-base, typed-process, unix, unliftio, unliftio-core
-     , utf8-string
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, cereal
+     , cereal-conduit, chiasma, composition, composition-extra, conduit
+     , conduit-extra, containers, cornea, data-default, deepseq
+     , directory, either, exceptions, filepath, free, fuzzy, hourglass
+     , hslogger, lens, lifted-async, lifted-base, messagepack
+     , monad-control, monad-loops, mtl, nvim-hs, path, path-io
+     , pretty-terminal, prettyprinter, prettyprinter-ansi-terminal
+     , process, relude, resourcet, safe, split, stm, stm-chans
+     , stm-conduit, template-haskell, text, th-abstraction, time
+     , transformers, transformers-base, typed-process, unix, unliftio
+     , unliftio-core, utf8-string
      }:
      mkDerivation {
        pname = "ribosome";
-       version = "0.3.0.1";
-       sha256 = "1dka9hqh48nib7y0rz4bxr6d3iqavzw0163q64xwcjxaib293kks";
+       version = "0.4.0.0";
+       sha256 = "1h8x9gwm5g0jwf8zgpjb0wm76nj54x664l78v58n8cl5kwykr8ig";
        libraryHaskellDepends = [
-         aeson ansi-terminal base-noprelude bytestring cereal cereal-conduit
-         chiasma composition composition-extra conduit conduit-extra
-         containers cornea data-default deepseq directory either exceptions
-         filepath free hslogger lens lifted-async lifted-base messagepack
-         MissingH monad-control monad-loops mtl nvim-hs path path-io
+         aeson ansi-terminal base bytestring cereal cereal-conduit chiasma
+         composition composition-extra conduit conduit-extra containers
+         cornea data-default deepseq directory either exceptions filepath
+         free fuzzy hourglass hslogger lens lifted-async lifted-base
+         messagepack monad-control monad-loops mtl nvim-hs path path-io
          pretty-terminal prettyprinter prettyprinter-ansi-terminal process
          relude resourcet safe split stm stm-chans stm-conduit
          template-haskell text th-abstraction time transformers
@@ -225331,8 +223126,9 @@ self: {
          utf8-string
        ];
        description = "api extensions for nvim-hs";
-       license = "unknown";
+       license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "ribosome-root" = callPackage
@@ -225368,24 +223164,39 @@ self: {
      }) {};
 
   "ribosome-test" = callPackage
-    ({ mkDerivation, base-noprelude, bytestring, chiasma, cornea
-     , data-default, directory, exceptions, filepath, free, hslogger
-     , HTF, lifted-base, messagepack, monad-control, mtl, nvim-hs
-     , process, relude, resourcet, ribosome, text, transformers
-     , typed-process, unix, unliftio, unliftio-core
+    ({ mkDerivation, aeson, base, bytestring, chiasma, composition
+     , composition-extra, conduit, containers, cornea, data-default
+     , directory, either, exceptions, filepath, free, hedgehog, hslogger
+     , lens, lifted-async, lifted-base, messagepack, monad-control, mtl
+     , nvim-hs, path, path-io, prettyprinter
+     , prettyprinter-ansi-terminal, process, relude, resourcet, ribosome
+     , tasty, tasty-hedgehog, template-haskell, text, transformers
+     , typed-process, unix, unliftio
      }:
      mkDerivation {
        pname = "ribosome-test";
-       version = "0.3.0.1";
-       sha256 = "18pmb6db23ak29y5vqzvblvq3yqpi2zn8qk0cp7825sbahqxn320";
+       version = "0.4.0.0";
+       sha256 = "1kjs1h4qvgal67xg177dfbc4zcinjsjvjvbkdv3zilxsc6scfq1n";
        libraryHaskellDepends = [
-         base-noprelude bytestring chiasma cornea data-default directory
-         exceptions filepath free hslogger HTF lifted-base messagepack
-         monad-control mtl nvim-hs process relude resourcet ribosome text
-         transformers typed-process unix unliftio unliftio-core
+         aeson base bytestring chiasma composition composition-extra conduit
+         containers cornea data-default directory either exceptions filepath
+         free hedgehog hslogger lens lifted-async lifted-base messagepack
+         monad-control mtl nvim-hs path path-io prettyprinter
+         prettyprinter-ansi-terminal process relude resourcet ribosome tasty
+         tasty-hedgehog template-haskell text transformers typed-process
+         unix unliftio
+       ];
+       testHaskellDepends = [
+         aeson base bytestring chiasma composition composition-extra conduit
+         containers cornea data-default directory either exceptions filepath
+         free hedgehog hslogger lens lifted-async lifted-base messagepack
+         monad-control mtl nvim-hs path path-io prettyprinter
+         prettyprinter-ansi-terminal process relude resourcet ribosome tasty
+         tasty-hedgehog template-haskell text transformers typed-process
+         unix unliftio
        ];
        description = "test helpers for ribosome";
-       license = "unknown";
+       license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
      }) {};
 
@@ -225446,7 +223257,6 @@ self: {
        description = "Handy metrics that don't belong to ridley";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "riemann" = callPackage
@@ -225546,8 +223356,6 @@ self: {
        testHaskellDepends = [ base HUnit primitive QuickCheck ];
        description = "mutable ring buffers with atomic updates in GHC Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rings" = callPackage
@@ -225661,7 +223469,6 @@ self: {
        description = "A library for process pools coupled with asynchronous message queues";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "riot" = callPackage
@@ -225682,7 +223489,6 @@ self: {
        description = "Riot is an Information Organisation Tool";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) ncurses;};
 
   "ripple" = callPackage
@@ -225741,7 +223547,6 @@ self: {
        description = "RISC-V";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "risc386" = callPackage
@@ -225757,8 +223562,6 @@ self: {
        executableToolDepends = [ alex happy ];
        description = "Reduced instruction set i386 simulator";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "riscv-isa" = callPackage
@@ -225822,7 +223625,6 @@ self: {
        description = "A project management tool for Haskell applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rivet-adaptor-postgresql" = callPackage
@@ -225972,7 +223774,6 @@ self: {
        description = "Ring-LWE/LWR challenges using Lol";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rmonad" = callPackage
@@ -225990,7 +223791,6 @@ self: {
        description = "Restricted monad library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rncryptor" = callPackage
@@ -226020,7 +223820,6 @@ self: {
        description = "Haskell implementation of the RNCryptor file format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rng-utils" = callPackage
@@ -226060,7 +223859,6 @@ self: {
        description = "Simple projects generator";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "robin" = callPackage
@@ -226172,7 +223970,6 @@ self: {
        description = "Gloss interactive demo for roc-cluster package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "roc-id" = callPackage
@@ -226218,7 +224015,6 @@ self: {
        description = "A build system for incremental, parallel, and demand-driven computations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rocksdb-haskell" = callPackage
@@ -226241,8 +224037,6 @@ self: {
        ];
        description = "Haskell bindings to RocksDB";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) rocksdb;};
 
   "rocksdb-haskell-jprupp" = callPackage
@@ -226263,8 +224057,6 @@ self: {
        ];
        description = "Haskell bindings for RocksDB";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) rocksdb;};
 
   "rocksdb-query" = callPackage
@@ -226284,8 +224076,6 @@ self: {
        ];
        description = "RocksDB database querying library for Haskell";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "roguestar" = callPackage
@@ -226389,15 +224179,16 @@ self: {
 
   "rollbar" = callPackage
     ({ mkDerivation, aeson, base, basic-prelude, http-conduit
-     , lifted-base, monad-control, network, resourcet, text, vector
+     , lifted-base, monad-control, network, network-bsd, resourcet, text
+     , vector
      }:
      mkDerivation {
        pname = "rollbar";
-       version = "1.1.2";
-       sha256 = "1ip4bsnav2bwbbasz0mmfkq7cvi72jfdbz00r1ql4kpgwwkdhysz";
+       version = "1.1.3";
+       sha256 = "0mj8s2kfv8fw8mpb3xz8fvlyvdx46nsh1waw7jvw4cxphywfq9b8";
        libraryHaskellDepends = [
          aeson base basic-prelude http-conduit lifted-base monad-control
-         network resourcet text vector
+         network network-bsd resourcet text vector
        ];
        description = "error tracking through rollbar.com";
        license = lib.licenses.mit;
@@ -226421,7 +224212,6 @@ self: {
        description = "Simple CLI tool to perform commons tasks such as tracking deploys";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rollbar-client" = callPackage
@@ -226496,7 +224286,6 @@ self: {
        description = "Provides error reporting capabilities to WAI based applications through Rollbar API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rollbar-yesod" = callPackage
@@ -226519,7 +224308,6 @@ self: {
        description = "Provides error reporting capabilities to Yesod applications through Rollbar API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "roller" = callPackage
@@ -226638,7 +224426,6 @@ self: {
        description = "RON-Schema";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ron-storage" = callPackage
@@ -226657,7 +224444,6 @@ self: {
        description = "RON Storage";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "roots" = callPackage
@@ -226780,7 +224566,6 @@ self: {
        description = "Trees with polymorphic paths to nodes, combining properties of Rose Trees and Tries";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rosebud" = callPackage
@@ -226842,7 +224627,6 @@ self: {
        description = "Haskell support for the ROS robotics framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rosmsg" = callPackage
@@ -226880,7 +224664,6 @@ self: {
        description = "ROS message management tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rospkg" = callPackage
@@ -226981,8 +224764,6 @@ self: {
        testHaskellDepends = [ base long-double ];
        description = "Correctly-rounded arbitrary-precision floating-point arithmetic";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) gmp; inherit (pkgs) mpfr;};
 
   "rounded-hw" = callPackage
@@ -227008,7 +224789,6 @@ self: {
        description = "Directed rounding for built-in floating types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rounding" = callPackage
@@ -227092,7 +224872,6 @@ self: {
        description = "Bidirectional (de-)serialization for XML";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "route-generator" = callPackage
@@ -227128,7 +224907,6 @@ self: {
        description = "A library and utilities for creating a route";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "row" = callPackage
@@ -227202,6 +224980,36 @@ self: {
        broken = true;
      }) {};
 
+  "rp-tree" = callPackage
+    ({ mkDerivation, base, benchpress, boxes, bytestring, conduit
+     , containers, deepseq, hspec, QuickCheck, serialise, splitmix
+     , splitmix-distributions, transformers, vector, vector-algorithms
+     }:
+     mkDerivation {
+       pname = "rp-tree";
+       version = "0.3.6";
+       sha256 = "0dz2xkgmk3lfr0pnc7xzfz756bzdkbmb2m96zdpw7vgyz59h9i64";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base boxes bytestring conduit containers deepseq serialise splitmix
+         splitmix-distributions transformers vector vector-algorithms
+       ];
+       executableHaskellDepends = [
+         base conduit containers splitmix splitmix-distributions
+         transformers vector
+       ];
+       testHaskellDepends = [
+         base conduit hspec QuickCheck splitmix-distributions
+       ];
+       benchmarkHaskellDepends = [
+         base benchpress conduit deepseq splitmix splitmix-distributions
+         transformers vector
+       ];
+       description = "Random projection trees";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "rpc" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, derive
      , network-fancy, template-haskell, th-lift
@@ -227217,7 +225025,6 @@ self: {
        description = "type safe rpcs provided as basic IO actions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rpc-framework" = callPackage
@@ -227258,7 +225065,6 @@ self: {
        description = "Receiver Policy Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rpm" = callPackage
@@ -227278,24 +225084,26 @@ self: {
 
   "rpmbuild-order" = callPackage
     ({ mkDerivation, base, case-insensitive, containers, directory
-     , extra, fgl, filepath, hspec, optparse-applicative, process
-     , simple-cmd, simple-cmd-args, unix
+     , extra, fgl, filepath, graphviz, hspec, optparse-applicative
+     , process, simple-cmd, simple-cmd-args, unix
      }:
      mkDerivation {
        pname = "rpmbuild-order";
-       version = "0.4.3.2";
-       sha256 = "1510v4gbylzpdh7l23r4z6xhqmjalay3crxg2216lz8j0mb4sbq9";
+       version = "0.4.5";
+       sha256 = "1lz6w2nd8yq0arfpp6vnv7lazr9289wan00b6layfdhlql9f21vl";
+       revision = "1";
+       editedCabalFile = "05arkmpbh5fdqbqhkwl76isbigrsc0f54zkbdl21jap6k4g9kzsk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base case-insensitive containers directory extra fgl filepath
-         process
+         graphviz process
        ];
        executableHaskellDepends = [
          base directory extra fgl optparse-applicative simple-cmd-args
        ];
        testHaskellDepends = [ base extra hspec simple-cmd unix ];
-       description = "Order RPM packages by dependencies";
+       description = "Sort RPM packages in dependency order";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
        broken = true;
@@ -227337,7 +225145,6 @@ self: {
        description = "The RogueStar Animation and Graphics Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rsagl-frp" = callPackage
@@ -227354,7 +225161,6 @@ self: {
        description = "The RogueStar Animation and Graphics Library: Functional Reactive Programming";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rsagl-math" = callPackage
@@ -227372,7 +225178,6 @@ self: {
        description = "The RogueStar Animation and Graphics Library: Mathematics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rset" = callPackage
@@ -227444,8 +225249,6 @@ self: {
        ];
        description = "Streaming parser/renderer for the RSS standard";
        license = lib.licenses.cc0;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rss2irc" = callPackage
@@ -227513,7 +225316,6 @@ self: {
        description = "Haskell bindings for RTCM";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rtld" = callPackage
@@ -227738,7 +225540,6 @@ self: {
        description = "Ruler tool for UHC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ruler-core" = callPackage
@@ -227757,7 +225558,6 @@ self: {
        ];
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "run-haskell-module" = callPackage
@@ -227780,8 +225580,6 @@ self: {
        libraryHaskellDepends = [ base primitive primitive-unlifted ];
        description = "runST without boxing penalty";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rungekutta" = callPackage
@@ -227875,7 +225673,6 @@ self: {
        description = "Runtime generation of Arbitrary values";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rv" = callPackage
@@ -227893,8 +225690,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "RISC-V";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "rvar" = callPackage
@@ -228003,7 +225798,6 @@ self: {
        description = "simple general-purpose s-expressions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "s3-signer" = callPackage
@@ -228091,6 +225885,97 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "safe-coloured-text_0_1_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, text, validity
+     , validity-bytestring, validity-text
+     }:
+     mkDerivation {
+       pname = "safe-coloured-text";
+       version = "0.1.0.0";
+       sha256 = "1fcqwllpbp9x1r1bvyry6bmp2s9rp8rlr3i94hdiydc71hpl7a0w";
+       libraryHaskellDepends = [
+         base bytestring text validity validity-bytestring validity-text
+       ];
+       description = "Safely output coloured text";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "safe-coloured-text-gen" = callPackage
+    ({ mkDerivation, base, genvalidity, genvalidity-bytestring
+     , genvalidity-sydtest, genvalidity-text, safe-coloured-text
+     , sydtest, sydtest-discover, text
+     }:
+     mkDerivation {
+       pname = "safe-coloured-text-gen";
+       version = "0.0.0.0";
+       sha256 = "1z5livjv0n1i05i3fi58hi7vqwvycapnr5rp1m8rpgj8lhsbi9qx";
+       libraryHaskellDepends = [
+         base genvalidity genvalidity-bytestring genvalidity-text
+         safe-coloured-text
+       ];
+       testHaskellDepends = [
+         base genvalidity-sydtest safe-coloured-text sydtest text
+       ];
+       testToolDepends = [ sydtest-discover ];
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "safe-coloured-text-layout" = callPackage
+    ({ mkDerivation, base, bytestring, safe-coloured-text, sydtest
+     , sydtest-discover, text, validity
+     }:
+     mkDerivation {
+       pname = "safe-coloured-text-layout";
+       version = "0.0.0.0";
+       sha256 = "11fbfqs96dlhyywkmy97b2fsws0fdsv3illdd61w3fckbxbdw6bw";
+       libraryHaskellDepends = [ base safe-coloured-text text validity ];
+       testHaskellDepends = [
+         base bytestring safe-coloured-text sydtest text
+       ];
+       testToolDepends = [ sydtest-discover ];
+       description = "Safely layout output coloured text";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "safe-coloured-text-layout-gen" = callPackage
+    ({ mkDerivation, base, genvalidity, genvalidity-sydtest
+     , safe-coloured-text, safe-coloured-text-gen
+     , safe-coloured-text-layout, sydtest, sydtest-discover
+     }:
+     mkDerivation {
+       pname = "safe-coloured-text-layout-gen";
+       version = "0.0.0.0";
+       sha256 = "1v4in8zl689j47jwac0z1k3rnnsc54qdclrbzja9aa364bmczzv8";
+       libraryHaskellDepends = [
+         base genvalidity safe-coloured-text-gen safe-coloured-text-layout
+       ];
+       testHaskellDepends = [
+         base genvalidity-sydtest safe-coloured-text safe-coloured-text-gen
+         safe-coloured-text-layout sydtest
+       ];
+       testToolDepends = [ sydtest-discover ];
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "safe-coloured-text-terminfo" = callPackage
+    ({ mkDerivation, base, safe-coloured-text, terminfo }:
+     mkDerivation {
+       pname = "safe-coloured-text-terminfo";
+       version = "0.0.0.0";
+       sha256 = "0f94zzmanmxplkcg1s954rq00ppv69icyjpzr5s0g6c14zp1k85b";
+       libraryHaskellDepends = [ base safe-coloured-text terminfo ];
+       description = "Safely output coloured text";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "safe-decimal" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, deepseq, doctest
      , exceptions, hspec, hspec-discover, QuickCheck, scientific
@@ -228379,7 +226264,6 @@ self: {
        description = "Safe arithmetic operations";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "safe-plugins" = callPackage
@@ -228435,6 +226319,18 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "safe-wild-cards" = callPackage
+    ({ mkDerivation, base, template-haskell, th-abstraction }:
+     mkDerivation {
+       pname = "safe-wild-cards";
+       version = "1.0.0";
+       sha256 = "1cgs7v30jamk2i8xbis7gc5n0f3c9rykxq7s81mxafyyj33ac36d";
+       libraryHaskellDepends = [ base template-haskell th-abstraction ];
+       testHaskellDepends = [ base ];
+       description = "Use RecordWildCards safely";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "safecopy" = callPackage
     ({ mkDerivation, array, base, bytestring, cereal, containers
      , generic-data, HUnit, lens, lens-action, old-time, QuickCheck
@@ -228572,7 +226468,6 @@ self: {
        description = "Type-safe file handling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "safer-file-handles-bytestring" = callPackage
@@ -228590,7 +226485,6 @@ self: {
        description = "Extends safer-file-handles with ByteString operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "safer-file-handles-text" = callPackage
@@ -228607,7 +226501,6 @@ self: {
        description = "Extends safer-file-handles with Text operations";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "saferoute" = callPackage
@@ -228637,7 +226530,6 @@ self: {
        description = "Obtain homogeneous values from arbitrary values, transforming or culling data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sajson" = callPackage
@@ -228684,7 +226576,6 @@ self: {
        description = "Compression command-line tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sakuraio-platform" = callPackage
@@ -228800,6 +226691,32 @@ self: {
        license = lib.licenses.mit;
      }) {inherit (pkgs) libsodium;};
 
+  "saltine_0_2_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, criterion, deepseq, hashable
+     , libsodium, profunctors, QuickCheck, semigroups, test-framework
+     , test-framework-quickcheck2, text
+     }:
+     mkDerivation {
+       pname = "saltine";
+       version = "0.2.0.0";
+       sha256 = "1xgrnm6qmm0mymq3dh4mdvzi8sfssnpz06xsrw8zdpa1vl0a0gm6";
+       libraryHaskellDepends = [
+         base bytestring deepseq hashable profunctors text
+       ];
+       libraryPkgconfigDepends = [ libsodium ];
+       testHaskellDepends = [
+         base bytestring QuickCheck semigroups test-framework
+         test-framework-quickcheck2 text
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq text
+       ];
+       benchmarkSystemDepends = [ libsodium ];
+       description = "Cryptography that's easy to digest (NaCl/libsodium bindings)";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {inherit (pkgs) libsodium;};
+
   "saltine-quickcheck" = callPackage
     ({ mkDerivation, base, bytestring, bytestring-arbitrary, hex
      , libsodium, QuickCheck, saltine, tasty, tasty-quickcheck
@@ -228818,7 +226735,6 @@ self: {
        description = "Quickcheck implementations for some NaCl data";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libsodium;};
 
   "salve" = callPackage
@@ -228852,7 +226768,6 @@ self: {
        description = "Modular web application framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "salvia-demo" = callPackage
@@ -228876,7 +226791,6 @@ self: {
        description = "Demo Salvia servers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "salvia-extras" = callPackage
@@ -228898,7 +226812,6 @@ self: {
        description = "Collection of non-fundamental handlers for the Salvia web server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "salvia-protocol" = callPackage
@@ -228935,7 +226848,6 @@ self: {
        description = "Session support for the Salvia webserver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "salvia-websocket" = callPackage
@@ -228953,7 +226865,6 @@ self: {
        description = "Websocket implementation for the Salvia Webserver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sample-frame" = callPackage
@@ -229011,7 +226922,6 @@ self: {
        description = "Binding to the C samtools library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zlib;};
 
   "samtools-conduit" = callPackage
@@ -229033,7 +226943,6 @@ self: {
        description = "Conduit interface to SAM/BAM format files through samtools";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "samtools-enumerator" = callPackage
@@ -229050,7 +226959,6 @@ self: {
        description = "Enumerator interface to SamTools library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "samtools-iteratee" = callPackage
@@ -229068,7 +226976,6 @@ self: {
        description = "Iteratee interface to SamTools library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sandi" = callPackage
@@ -229134,8 +227041,8 @@ self: {
      }:
      mkDerivation {
        pname = "sandwich";
-       version = "0.1.0.2";
-       sha256 = "1xcw3mdl85brj6pvynz58aclaf3ya0aq0y038cps9dsz58bqhbka";
+       version = "0.1.0.6";
+       sha256 = "18fl6zdz7q5cm9ypnlgxyk5gh9r0yq481k04q0z740j2h1m5vgj8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -229166,6 +227073,70 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "sandwich_0_1_0_7" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, async, base, brick
+     , bytestring, colour, containers, directory, exceptions, filepath
+     , free, haskell-src-exts, lens, lifted-async, microlens
+     , microlens-th, monad-control, monad-logger, mtl
+     , optparse-applicative, pretty-show, process, safe, safe-exceptions
+     , stm, string-interpolate, template-haskell, text, time
+     , transformers, transformers-base, unix, unliftio-core, vector, vty
+     }:
+     mkDerivation {
+       pname = "sandwich";
+       version = "0.1.0.7";
+       sha256 = "1ndw054vp2ygxd86whqbsdvrbv49khh1a6ia9zlqzx3gjbhqpxxi";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lens
+         lifted-async microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lens
+         lifted-async microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       testHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lens
+         lifted-async microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       description = "Yet another test framework for Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "sandwich-quickcheck" = callPackage
+    ({ mkDerivation, base, brick, free, monad-control, QuickCheck
+     , safe-exceptions, sandwich, string-interpolate, text, time
+     }:
+     mkDerivation {
+       pname = "sandwich-quickcheck";
+       version = "0.1.0.5";
+       sha256 = "03z8g5q3yxfpazbwi56ji9554z3l2ac776mzz06xsb7cha3kf7lw";
+       libraryHaskellDepends = [
+         base brick free monad-control QuickCheck safe-exceptions sandwich
+         string-interpolate text time
+       ];
+       testHaskellDepends = [
+         base brick free monad-control QuickCheck safe-exceptions sandwich
+         string-interpolate text time
+       ];
+       description = "Sandwich integration with QuickCheck";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "sandwich-slack" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, lens
      , lens-aeson, monad-logger, mtl, safe, safe-exceptions, sandwich
@@ -229173,8 +227144,8 @@ self: {
      }:
      mkDerivation {
        pname = "sandwich-slack";
-       version = "0.1.0.1";
-       sha256 = "1c7csrdfq342733rgrfwx5rc6v14jhfb9wb44gn699pgzzj031kz";
+       version = "0.1.0.4";
+       sha256 = "1l296q3lxafj3gd7pr6n6qrvcb4zdkncsj2z6ra6q0qfw465jaqk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -229207,8 +227178,51 @@ self: {
      }:
      mkDerivation {
        pname = "sandwich-webdriver";
-       version = "0.1.0.1";
-       sha256 = "10s0zb3al4ii9gm3b6by8czvr8i3s424mlfk81v2hpdv5i7a0yqb";
+       version = "0.1.0.4";
+       sha256 = "0vmqm2f78vd8kk0adg7ldd6rlb5rw5hks9q705gws9dj6s4nyz9r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base containers convertible data-default directory exceptions
+         filepath http-client http-client-tls http-conduit lifted-base
+         microlens microlens-aeson monad-control monad-logger mtl network
+         process random retry safe safe-exceptions sandwich
+         string-interpolate temporary text time transformers unix
+         unordered-containers vector webdriver X11
+       ];
+       executableHaskellDepends = [
+         aeson base containers convertible data-default directory exceptions
+         filepath http-client http-client-tls http-conduit lifted-base
+         microlens microlens-aeson monad-control monad-logger mtl network
+         process random retry safe safe-exceptions sandwich
+         string-interpolate temporary text time transformers unix
+         unordered-containers vector webdriver X11
+       ];
+       testHaskellDepends = [
+         aeson base containers convertible data-default directory exceptions
+         filepath http-client http-client-tls http-conduit lifted-base
+         microlens microlens-aeson monad-control monad-logger mtl network
+         process random retry safe safe-exceptions sandwich
+         string-interpolate temporary text time transformers unix
+         unordered-containers vector webdriver X11
+       ];
+       description = "Sandwich integration with Selenium WebDriver";
+       license = lib.licenses.bsd3;
+     }) {};
+
+  "sandwich-webdriver_0_1_0_5" = callPackage
+    ({ mkDerivation, aeson, base, containers, convertible, data-default
+     , directory, exceptions, filepath, http-client, http-client-tls
+     , http-conduit, lifted-base, microlens, microlens-aeson
+     , monad-control, monad-logger, mtl, network, process, random, retry
+     , safe, safe-exceptions, sandwich, string-interpolate, temporary
+     , text, time, transformers, unix, unordered-containers, vector
+     , webdriver, X11
+     }:
+     mkDerivation {
+       pname = "sandwich-webdriver";
+       version = "0.1.0.5";
+       sha256 = "113as1i4f3hghbwrf4ii8lnxxb8nih177ffjbx3shsddnhx0fa8y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -229237,6 +227251,7 @@ self: {
        ];
        description = "Sandwich integration with Selenium WebDriver";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "sarasvati" = callPackage
@@ -229253,32 +227268,32 @@ self: {
      }) {};
 
   "sarsi" = callPackage
-    ({ mkDerivation, async, attoparsec, base, binary, bytestring, Cabal
-     , containers, cryptonite, data-msgpack, directory, filepath
+    ({ mkDerivation, ansi-terminal, async, attoparsec, base, binary
+     , bytestring, Cabal, containers, cryptonite, directory, filepath
      , fsnotify, machines, machines-binary, machines-io
-     , machines-process, network, process, stm, text
+     , machines-process, msgpack, network, process, stm, text
      , unordered-containers, vector
      }:
      mkDerivation {
        pname = "sarsi";
-       version = "0.0.4.0";
-       sha256 = "0lv7mlhkf894q4750x53qr7fa7479hpczhgm1xw2xm5n49z35iy9";
+       version = "0.0.5.2";
+       sha256 = "1xqnpqq2hhqkp4y9lp11l0lmp61v19wfqx0g5dfaq8z7k0dq41fm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         async attoparsec base binary bytestring containers cryptonite
-         data-msgpack directory filepath fsnotify machines machines-binary
-         machines-io machines-process network process stm text vector
+         ansi-terminal async attoparsec base binary bytestring containers
+         cryptonite directory filepath fsnotify machines machines-binary
+         machines-io machines-process msgpack network process stm text
+         vector
        ];
        executableHaskellDepends = [
-         base binary bytestring Cabal containers data-msgpack directory
-         filepath machines machines-binary machines-io machines-process
-         network process text unordered-containers vector
+         async base binary bytestring Cabal containers directory filepath
+         machines machines-binary machines-io machines-process msgpack
+         network process stm text unordered-containers vector
        ];
        description = "A universal quickfix toolkit and his protocol";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sasl" = callPackage
@@ -229296,7 +227311,6 @@ self: {
        description = "SASL implementation using simple-pipe";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sat" = callPackage
@@ -229330,7 +227344,6 @@ self: {
        description = "A minimal SAT solver";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo" = callPackage
@@ -229367,7 +227380,6 @@ self: {
        description = "driver for external satchmo backends";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo-examples" = callPackage
@@ -229386,7 +227398,6 @@ self: {
        description = "examples that show how to use satchmo";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo-funsat" = callPackage
@@ -229403,7 +227414,6 @@ self: {
        description = "funsat driver as backend for satchmo";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo-minisat" = callPackage
@@ -229416,7 +227426,6 @@ self: {
        description = "minisat driver as backend for satchmo";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo-toysat" = callPackage
@@ -229433,7 +227442,6 @@ self: {
        description = "toysat driver as backend for satchmo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "savage" = callPackage
@@ -229553,6 +227561,37 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "sbv_7_13" = callPackage
+    ({ mkDerivation, array, async, base, bytestring, containers
+     , crackNum, deepseq, directory, doctest, filepath, generic-deriving
+     , ghc, Glob, hlint, mtl, pretty, process, QuickCheck, random, syb
+     , tasty, tasty-golden, tasty-hunit, tasty-quickcheck
+     , template-haskell, time, z3
+     }:
+     mkDerivation {
+       pname = "sbv";
+       version = "7.13";
+       sha256 = "0bk400swnb4s98c5p71ml1px6jndaiqhf5dj7zmnliyplqcgpfik";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array async base containers crackNum deepseq directory filepath
+         generic-deriving ghc mtl pretty process QuickCheck random syb
+         template-haskell time
+       ];
+       testHaskellDepends = [
+         base bytestring containers crackNum directory doctest filepath Glob
+         hlint mtl QuickCheck random syb tasty tasty-golden tasty-hunit
+         tasty-quickcheck template-haskell
+       ];
+       testSystemDepends = [ z3 ];
+       description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
+       license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
+       hydraPlatforms = lib.platforms.none;
+     }) {inherit (pkgs) z3;};
+
   "sbv" = callPackage
     ({ mkDerivation, array, async, base, bench-show, bytestring
      , containers, deepseq, directory, doctest, filepath, gauge, Glob
@@ -229562,8 +227601,8 @@ self: {
      }:
      mkDerivation {
        pname = "sbv";
-       version = "8.14";
-       sha256 = "1yf350daksxwz084j81ngamr53jpz7y2fi4cnpni6vy16mb0sxz1";
+       version = "8.15";
+       sha256 = "11qzh2gfq9v8cxz6jjbipnfiwjs0hw34ghg5gdpr0h7bj77in30p";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array async base containers deepseq directory filepath libBF mtl
@@ -229582,6 +227621,9 @@ self: {
        ];
        description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
        license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {inherit (pkgs) z3;};
 
   "sbvPlugin" = callPackage
@@ -229623,7 +227665,6 @@ self: {
        description = "Low-level Starcraft II API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sc2-proto" = callPackage
@@ -229662,7 +227703,6 @@ self: {
        description = "Support and utility library for sc2hs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sc2hs" = callPackage
@@ -229704,7 +227744,6 @@ self: {
        description = "Haskell bindings to sc3-rdu (sc3 rd ugens)";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scalable-server" = callPackage
@@ -229723,7 +227762,6 @@ self: {
        description = "Library for writing fast/scalable TCP-based services";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scaleimage" = callPackage
@@ -229784,7 +227822,6 @@ self: {
        description = "Test webhooks locally";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scalpel" = callPackage
@@ -229837,7 +227874,6 @@ self: {
        description = "scalpel scrapers for search engines";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scan" = callPackage
@@ -229870,8 +227906,6 @@ self: {
        ];
        description = "Metadata types for Albedo Scanners";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scan-vector-machine" = callPackage
@@ -229885,7 +227919,6 @@ self: {
        description = "An implementation of the Scan Vector Machine instruction set in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scanf" = callPackage
@@ -229927,6 +227960,8 @@ self: {
        testHaskellDepends = [ attoparsec base bytestring hspec scanner ];
        description = "Inject attoparsec parser with backtracking into non-backtracking scanner";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "scat" = callPackage
@@ -229950,6 +227985,7 @@ self: {
        ];
        description = "Generates unique passwords for various websites from a single password";
        license = lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
   "scc" = callPackage
@@ -230129,7 +228165,6 @@ self: {
        description = "Encoding-independent schemas for Haskell data types";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "schemas" = callPackage
@@ -230185,7 +228220,6 @@ self: {
        description = "JSON-biased spec and validation tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scholdoc" = callPackage
@@ -230231,7 +228265,6 @@ self: {
        description = "Converts ScholarlyMarkdown documents to HTML5/LaTeX/Docx format";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scholdoc-citeproc" = callPackage
@@ -230266,7 +228299,6 @@ self: {
        description = "Scholdoc fork of pandoc-citeproc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scholdoc-texmath" = callPackage
@@ -230290,7 +228322,6 @@ self: {
        description = "Scholdoc fork of texmath";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scholdoc-types" = callPackage
@@ -230398,20 +228429,20 @@ self: {
   "scientific" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, criterion
      , deepseq, hashable, integer-gmp, integer-logarithms, primitive
-     , QuickCheck, smallcheck, tasty, tasty-ant-xml, tasty-hunit
-     , tasty-quickcheck, tasty-smallcheck, text
+     , QuickCheck, smallcheck, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck, template-haskell, text
      }:
      mkDerivation {
        pname = "scientific";
-       version = "0.3.6.2";
-       sha256 = "03ql2f0ac8bsl524idy9xxa3kxisb2sj3avflzw580j5hzy0m397";
+       version = "0.3.7.0";
+       sha256 = "1aa3ngb71l2sh1x2829napnr1w285q0sn2f7z2wvi3ynng2238d3";
        libraryHaskellDepends = [
          base binary bytestring containers deepseq hashable integer-gmp
-         integer-logarithms primitive text
+         integer-logarithms primitive template-haskell text
        ];
        testHaskellDepends = [
-         base binary bytestring QuickCheck smallcheck tasty tasty-ant-xml
-         tasty-hunit tasty-quickcheck tasty-smallcheck text
+         base binary bytestring QuickCheck smallcheck tasty tasty-hunit
+         tasty-quickcheck tasty-smallcheck text
        ];
        benchmarkHaskellDepends = [ base criterion ];
        description = "Numbers represented using scientific notation";
@@ -230442,7 +228473,6 @@ self: {
        description = "Scientific notation intended for tokenization";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scion" = callPackage
@@ -230469,7 +228499,6 @@ self: {
        description = "Haskell IDE library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scion-browser" = callPackage
@@ -230505,7 +228534,6 @@ self: {
        description = "Command-line interface for browsing and searching packages documentation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scons2dot" = callPackage
@@ -230539,7 +228567,6 @@ self: {
        description = "An interactive renderer for plotting time-series data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scope-cairo" = callPackage
@@ -230564,7 +228591,6 @@ self: {
        description = "An interactive renderer for plotting time-series data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scottish" = callPackage
@@ -230598,8 +228624,8 @@ self: {
        pname = "scotty";
        version = "0.12";
        sha256 = "1lpggpdzgjk23mq7aa64yylds5dbm4ynhcvbarqihjxabvh7xmz1";
-       revision = "2";
-       editedCabalFile = "1a5xv44fkjxw6ggp415543zbb1mrkdi05kprf5y8rv3wc8avnssd";
+       revision = "3";
+       editedCabalFile = "0lvvfbjf4w73y43ax80h9yb2nvf3n2kc859j9advcmfnmdn33x5v";
        libraryHaskellDepends = [
          aeson base base-compat-batteries blaze-builder bytestring
          case-insensitive data-default-class exceptions fail http-types
@@ -230745,7 +228771,6 @@ self: {
        description = "Easy Mustache templating support for Scotty";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scotty-haxl" = callPackage
@@ -230921,7 +228946,6 @@ self: {
        description = "An SCP protocol implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scrabble-bot" = callPackage
@@ -230942,7 +228966,6 @@ self: {
        description = "Scrabble play generation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scrapbook" = callPackage
@@ -230967,7 +228990,6 @@ self: {
        description = "collect posts of site that is wrote in config yaml using feed or scraping";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "scrapbook-core" = callPackage
@@ -231123,6 +229145,7 @@ self: {
        ];
        description = "Stronger password hashing via sequential memory-hard functions";
        license = lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
   "scrz" = callPackage
@@ -231223,7 +229246,6 @@ self: {
        description = "Distributed SDE solver";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sdf2p1-parser" = callPackage
@@ -231695,7 +229717,6 @@ self: {
        description = "PostgreSQL backend for Seakale";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "seakale-tests" = callPackage
@@ -231712,7 +229733,6 @@ self: {
        description = "Helpers to test code using Seakale";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "seal-module" = callPackage
@@ -231973,7 +229993,6 @@ self: {
        description = "Example of writing \"secure\" file removal in Haskell rather than C";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "secure-sockets" = callPackage
@@ -232034,7 +230053,6 @@ self: {
        description = "Sedna C API XML Binding";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {sedna = null;};
 
   "seitz-symbol" = callPackage
@@ -232055,7 +230073,6 @@ self: {
        description = "Read and Display Seitz Symbol";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "selda" = callPackage
@@ -232213,7 +230230,6 @@ self: {
        description = "Run the selenium standalone server for usage with webdriver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "self-extract" = callPackage
@@ -232234,7 +230250,6 @@ self: {
        description = "A Haskell library to make self-extracting executables";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "selfrestart" = callPackage
@@ -232342,7 +230357,6 @@ self: {
        description = "Weakened partial isomorphisms, reversible computations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "semialign" = callPackage
@@ -232582,7 +230596,6 @@ self: {
        description = "Semirings, ring-like structures used for dynamic programming applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "semiring-num" = callPackage
@@ -232609,7 +230622,6 @@ self: {
        description = "Basic semiring class and instances";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "semiring-simple" = callPackage
@@ -232767,7 +230779,6 @@ self: {
        description = "Distributed sensor network for the raspberry pi";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sensu-run" = callPackage
@@ -232805,7 +230816,6 @@ self: {
        description = "Easily generating message of japanese natural language";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sentiwordnet-parser" = callPackage
@@ -232862,13 +230872,13 @@ self: {
      , cassava, containers, data-default, directory, doctest
      , doctest-discover, file-embed, filepath, hlint, hspec
      , hspec-discover, html-charset, http-client, http-types
-     , optparse-applicative, QuickCheck, temporary, text, text-trie
-     , unicode-show, wai, warp, zip
+     , interpolatedstring-perl6, optparse-applicative, QuickCheck
+     , random, temporary, text, text-trie, unicode-show, wai, warp, zip
      }:
      mkDerivation {
        pname = "seonbi";
-       version = "0.1.1";
-       sha256 = "1jsikmlr647c51zmd471wnff6wzxybmp7bvidvyx5fkzb3nlhrqb";
+       version = "0.2.0";
+       sha256 = "1bj428ds0lw6vg0927mn9ss63zrrzfi9jn7fy1hpr583vywc8pba";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -232885,14 +230895,14 @@ self: {
          optparse-applicative text wai warp
        ];
        testHaskellDepends = [
-         aeson base bytestring containers doctest doctest-discover hlint
-         hspec hspec-discover QuickCheck text unicode-show
+         aeson base bytestring containers directory doctest doctest-discover
+         filepath hlint hspec hspec-discover interpolatedstring-perl6
+         QuickCheck random text unicode-show
        ];
        testToolDepends = [ hspec-discover ];
        description = "SmartyPants for Korean language";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "separated" = callPackage
@@ -232940,7 +230950,6 @@ self: {
        description = "Dynamic strictness control, including space leak repair";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "seqalign" = callPackage
@@ -232995,7 +231004,6 @@ self: {
        description = "Handle sequence locations for bioinformatics";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "seqloc-datafiles" = callPackage
@@ -233030,7 +231038,6 @@ self: {
        description = "Read and write BED and GTF format genome annotations";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sequence" = callPackage
@@ -233146,7 +231153,6 @@ self: {
        description = "A sequence labeler based on Collins's sequence perceptron";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serf" = callPackage
@@ -233328,7 +231334,6 @@ self: {
        description = "Simple project template from stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serv" = callPackage
@@ -233343,7 +231348,6 @@ self: {
        description = "Dependently typed API framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serv-wai" = callPackage
@@ -233369,7 +231373,6 @@ self: {
        description = "Dependently typed API servers with Serv";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant" = callPackage
@@ -233383,6 +231386,8 @@ self: {
        pname = "servant";
        version = "0.18.2";
        sha256 = "18mfjj9za8g9rgj7a6j0ly6lf1ykfwrlpy3cf53lv1gxvb19gmk5";
+       revision = "1";
+       editedCabalFile = "0f783bj89vb7j5cj5hk6hdmplhk3ay1z6swsinlr7a7f9h59x6vh";
        libraryHaskellDepends = [
          aeson attoparsec base base-compat bifunctors bytestring
          case-insensitive deepseq http-api-data http-media http-types mmorph
@@ -233542,8 +231547,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "servant-docs/servant-auth compatibility";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-hmac" = callPackage
@@ -233649,7 +231652,6 @@ self: {
        description = "Servant based API and server for token based authorisation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-token-acid" = callPackage
@@ -233672,7 +231674,6 @@ self: {
        description = "Acid-state backend for servant-auth-token server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-token-api" = callPackage
@@ -233713,7 +231714,6 @@ self: {
        description = "Leveldb backend for servant-auth-token server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-token-persistent" = callPackage
@@ -233734,7 +231734,6 @@ self: {
        description = "Persistent backend for servant-auth-token server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-token-rocksdb" = callPackage
@@ -233758,7 +231757,6 @@ self: {
        description = "RocksDB backend for servant-auth-token server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-auth-wordpress" = callPackage
@@ -233767,15 +231765,14 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-wordpress";
-       version = "1.0.0.1";
-       sha256 = "08ngbgmzksp27n8znigrj5i2nvsqjansn4vv3my38vdqqgzm09w8";
+       version = "1.0.0.2";
+       sha256 = "0j4n5anlw3a2cgclmyblg01dcls91hzlmxgc2jkcdpwd49i0pv5n";
        libraryHaskellDepends = [
          base mtl servant-server text time wai wordpress-auth
        ];
        description = "Authenticate Routes Using Wordpress Cookies";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-avro" = callPackage
@@ -233797,6 +231794,27 @@ self: {
        broken = true;
      }) {};
 
+  "servant-benchmark" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, bytestring
+     , case-insensitive, hspec, http-media, http-types, QuickCheck
+     , servant, text, utf8-string, yaml
+     }:
+     mkDerivation {
+       pname = "servant-benchmark";
+       version = "0.1.2.0";
+       sha256 = "0lqqk410nx48g895pfxkbbk85b1ijs4bfl9zr2li2p7wwwc4gyi9";
+       libraryHaskellDepends = [
+         aeson base base64-bytestring bytestring case-insensitive http-media
+         http-types QuickCheck servant text yaml
+       ];
+       testHaskellDepends = [
+         aeson base base64-bytestring bytestring case-insensitive hspec
+         http-media http-types QuickCheck servant text utf8-string yaml
+       ];
+       description = "Generate benchmark files from a Servant API";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "servant-blaze" = callPackage
     ({ mkDerivation, base, blaze-html, http-media, servant
      , servant-server, wai, warp
@@ -233828,8 +231846,6 @@ self: {
        ];
        description = "Servant CSV content-type for cassava";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-checked-exceptions" = callPackage
@@ -233854,8 +231870,6 @@ self: {
        ];
        description = "Checked exceptions for Servant APIs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-checked-exceptions-core" = callPackage
@@ -233877,8 +231891,6 @@ self: {
        testHaskellDepends = [ base doctest Glob ];
        description = "Checked exceptions for Servant APIs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-cli" = callPackage
@@ -233907,7 +231919,6 @@ self: {
        description = "Command line interface for Servant API clients";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-client" = callPackage
@@ -233923,6 +231934,8 @@ self: {
        pname = "servant-client";
        version = "0.18.2";
        sha256 = "0acwpjmi5r62jgmpw508jq942kq5dhdy5602w9v7g318inxzwwi1";
+       revision = "1";
+       editedCabalFile = "1phjfsqzmwc5m45f9zbpp76f7f9z96v0in7ngxz6pj8r90bcv8ga";
        libraryHaskellDepends = [
          base base-compat bytestring containers deepseq exceptions
          http-client http-media http-types kan-extensions monad-control mtl
@@ -233950,8 +231963,8 @@ self: {
        pname = "servant-client-core";
        version = "0.18.2";
        sha256 = "0b449c28z20sx98pc2d4p65jr3m9glsa47jjc2w4gf90jisl173r";
-       revision = "1";
-       editedCabalFile = "0vwj97h6x7zwvyx3ra09yhpi37mnn2kw5m27wnkzwwvk487swqxd";
+       revision = "2";
+       editedCabalFile = "0clbchlla9r0scz0giqmy3pwsnlfcf19hwkqj3yl1y77qx7kv4lr";
        libraryHaskellDepends = [
          aeson base base-compat base64-bytestring bytestring containers
          deepseq exceptions free http-media http-types network-uri safe
@@ -234004,7 +232017,6 @@ self: {
        description = "Automatically derive API client functions with named and optional parameters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-conduit" = callPackage
@@ -234045,7 +232057,6 @@ self: {
        description = "Generate servant client library for C#";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-db" = callPackage
@@ -234085,7 +232096,6 @@ self: {
        description = "Derive a postgres client to database API specified by servant-db";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-dhall" = callPackage
@@ -234185,7 +232195,6 @@ self: {
        description = "Combinators for rendering EDE templates in servant web applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-ekg" = callPackage
@@ -234282,7 +232291,6 @@ self: {
        description = "Servant support for Server-Sent events";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-examples" = callPackage
@@ -234306,7 +232314,6 @@ self: {
        description = "Example programs for servant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-exceptions" = callPackage
@@ -234373,6 +232380,8 @@ self: {
        pname = "servant-foreign";
        version = "0.15.3";
        sha256 = "1bz2ry5pd8cx5pmsvg7q29r9gd5kqjjv9nd97f7abwjqi8as2413";
+       revision = "1";
+       editedCabalFile = "0d9h941g7ja73g10az13pad9rjlp126b662f71q7c8yd6kh4jl9r";
        libraryHaskellDepends = [
          base base-compat http-types lens servant text
        ];
@@ -234533,6 +232542,8 @@ self: {
        pname = "servant-http-streams";
        version = "0.18.2";
        sha256 = "1kyiv8qamw9dxv2ax7hx9n7w9507vjvwn89x4nvlsc87nq91hvg0";
+       revision = "1";
+       editedCabalFile = "0hkcyz93px5x6l5nyh9ymswhwpfidbji2kmlhrw7ksg4zsxkl2p9";
        libraryHaskellDepends = [
          base base-compat bytestring case-insensitive containers deepseq
          exceptions http-common http-media http-streams http-types
@@ -234577,7 +232588,6 @@ self: {
        description = "Generate HTTP2 clients from Servant API descriptions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-iCalendar" = callPackage
@@ -234594,8 +232604,6 @@ self: {
        ];
        description = "Servant support for iCalendar";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-jquery" = callPackage
@@ -234778,7 +232786,6 @@ self: {
        description = "Matrix parameter combinator for servant";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-mock" = callPackage
@@ -234822,8 +232829,8 @@ self: {
        pname = "servant-multipart";
        version = "0.12";
        sha256 = "1hs1h66zjhknfnz1bdi5c0d2sfb20fc7x9adbc87gq168k8riqvl";
-       revision = "1";
-       editedCabalFile = "0pc254b458v4k5xw729fvw3q3klwpkai2mmp455dw2i7g02dv0da";
+       revision = "2";
+       editedCabalFile = "019zk4vlm9gv8n85qv6819i6qn0ddiz56birlmabz2n95l715m7y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -234841,8 +232848,6 @@ self: {
        ];
        description = "multipart/form-data (e.g file upload) support for servant";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-named" = callPackage
@@ -234910,40 +232915,10 @@ self: {
      }:
      mkDerivation {
        pname = "servant-openapi3";
-       version = "2.0.1.1";
-       sha256 = "1cyzyljmdfr3gigdszcpj1i7l698fnxpc9hr83mzspm6qcmbqmgf";
-       revision = "2";
-       editedCabalFile = "0y214pgkfkysvdll15inf44psyqj7dmzcwp2vjynwdlywy2j0y16";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [
-         aeson aeson-pretty base base-compat bytestring hspec http-media
-         insert-ordered-containers lens openapi3 QuickCheck servant
-         singleton-bool text unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson base base-compat directory doctest filepath hspec lens
-         lens-aeson openapi3 QuickCheck servant template-haskell text time
-         utf8-string vector
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "Generate a Swagger/OpenAPI/OAS 3.0 specification for your servant API.";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "servant-openapi3_2_0_1_2" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, base, base-compat, bytestring
-     , Cabal, cabal-doctest, directory, doctest, filepath, hspec
-     , hspec-discover, http-media, insert-ordered-containers, lens
-     , lens-aeson, openapi3, QuickCheck, servant, singleton-bool
-     , template-haskell, text, time, unordered-containers, utf8-string
-     , vector
-     }:
-     mkDerivation {
-       pname = "servant-openapi3";
        version = "2.0.1.2";
        sha256 = "1lqvycbv49x0i3adbsdlcl49n65wxfjzhiz9pj11hg4k0j952q5p";
+       revision = "1";
+       editedCabalFile = "19mag4xbiswaxpdxjn5yj3jbascbwza0y89zppgzb342prqdryjr";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          aeson aeson-pretty base base-compat bytestring hspec http-media
@@ -234958,8 +232933,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Generate a Swagger/OpenAPI/OAS 3.0 specification for your servant API.";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-options" = callPackage
@@ -235045,8 +233018,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-polysemy";
-       version = "0.1.2";
-       sha256 = "05qk2kl90lqszwhi1yqnj63zkx3qvd6jbaxsxjw68k7ppsjvnyks";
+       version = "0.1.3";
+       sha256 = "132yf6fp0hl6k3859sywkfzsca8xsaqd3a4ca4vdqqjrllk0m88i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -235061,7 +233034,6 @@ self: {
        description = "Utilities for using servant in a polysemy stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-pool" = callPackage
@@ -235094,7 +233066,6 @@ self: {
        description = "Useful functions and instances for using servant with a PostgreSQL context";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-proto-lens" = callPackage
@@ -235240,8 +233211,6 @@ self: {
        libraryHaskellDepends = [ base servant-client-core servant-rawm ];
        description = "The client implementation of servant-rawm";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-rawm-docs" = callPackage
@@ -235257,8 +233226,6 @@ self: {
        ];
        description = "Documentation generator for 'RawM' endpoints";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-rawm-server" = callPackage
@@ -235432,8 +233399,6 @@ self: {
        doHaddock = false;
        description = "Generates a servant API module";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-server" = callPackage
@@ -235449,6 +233414,8 @@ self: {
        pname = "servant-server";
        version = "0.18.2";
        sha256 = "05ricb3w1app6c094zwaq2jnqv53jpf4n89ffynm31dvf6h9qdih";
+       revision = "1";
+       editedCabalFile = "0xhq2rpc4ry1xgwz835bcm8qdnsifpc8wck9wa5r510ff21dqw4d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -235487,7 +233454,6 @@ self: {
        description = "Automatically derive API server functions with named and optional parameters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-smsc-ru" = callPackage
@@ -235550,7 +233516,6 @@ self: {
        description = "A family of combinators for defining webservices APIs and serving them";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-stache" = callPackage
@@ -235643,7 +233608,6 @@ self: {
        description = "Client instances for the 'servant-streaming' package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-streaming-docs" = callPackage
@@ -235662,7 +233626,6 @@ self: {
        description = "Client instances for the 'servant-docs' package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-streaming-server" = callPackage
@@ -235690,7 +233653,6 @@ self: {
        description = "Server instances for the 'servant-streaming' package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-subscriber" = callPackage
@@ -235762,26 +233724,9 @@ self: {
        description = "Swagger Tags for Servant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-swagger-ui" = callPackage
-    ({ mkDerivation, base, bytestring, file-embed-lzma, servant
-     , servant-server, servant-swagger-ui-core, swagger2, text
-     }:
-     mkDerivation {
-       pname = "servant-swagger-ui";
-       version = "0.3.4.3.37.2";
-       sha256 = "1kx8i2x3ffbwbjh2i2ljha2cl6vfj1fcad9wkmc9ll9mbj6cpl8v";
-       libraryHaskellDepends = [
-         base bytestring file-embed-lzma servant servant-server
-         servant-swagger-ui-core swagger2 text
-       ];
-       description = "Servant swagger ui";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-swagger-ui_0_3_5_3_47_1" = callPackage
     ({ mkDerivation, aeson, base, bytestring, file-embed-lzma, servant
      , servant-server, servant-swagger-ui-core, text
      }:
@@ -235795,28 +233740,9 @@ self: {
        ];
        description = "Servant swagger ui";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-swagger-ui-core" = callPackage
-    ({ mkDerivation, base, blaze-markup, bytestring, http-media
-     , servant, servant-blaze, servant-server, swagger2, text
-     , transformers, transformers-compat, wai-app-static
-     }:
-     mkDerivation {
-       pname = "servant-swagger-ui-core";
-       version = "0.3.4";
-       sha256 = "05vi74kgsf3yhkbw9cjl1zxs5swhh9jib6bwqf1h11cg0nr5i8ab";
-       libraryHaskellDepends = [
-         base blaze-markup bytestring http-media servant servant-blaze
-         servant-server swagger2 text transformers transformers-compat
-         wai-app-static
-       ];
-       description = "Servant swagger ui core components";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-swagger-ui-core_0_3_5" = callPackage
     ({ mkDerivation, aeson, base, blaze-markup, bytestring, http-media
      , servant, servant-blaze, servant-server, text, transformers
      , transformers-compat, wai-app-static
@@ -235831,7 +233757,6 @@ self: {
        ];
        description = "Servant swagger ui core components";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-swagger-ui-jensoleg" = callPackage
@@ -235962,7 +233887,6 @@ self: {
        description = "Servant Integration for Waargonaut JSON Package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-wasm" = callPackage
@@ -236078,7 +234002,6 @@ self: {
        description = "Client library for servant-zeppelin combinators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-zeppelin-server" = callPackage
@@ -236103,7 +234026,6 @@ self: {
        description = "Server library for servant-zeppelin combinators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-zeppelin-swagger" = callPackage
@@ -236126,7 +234048,6 @@ self: {
        description = "Swagger instances for servant-zeppelin combinators";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "server-generic" = callPackage
@@ -236143,6 +234064,7 @@ self: {
        description = "Auto-generate a server for your datatype";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
        broken = true;
      }) {};
 
@@ -236195,8 +234117,6 @@ self: {
        ];
        description = "Secure, modular server-side sessions";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serversession-backend-acid-state" = callPackage
@@ -236217,8 +234137,6 @@ self: {
        ];
        description = "Storage backend for serversession using acid-state";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serversession-backend-persistent" = callPackage
@@ -236287,8 +234205,6 @@ self: {
        ];
        description = "Snap bindings for serversession";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serversession-frontend-wai" = callPackage
@@ -236306,8 +234222,6 @@ self: {
        ];
        description = "wai-session bindings for serversession";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "serversession-frontend-yesod" = callPackage
@@ -236476,7 +234390,6 @@ self: {
        description = "Session types distributed";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "set-cover" = callPackage
@@ -236579,7 +234492,6 @@ self: {
        description = "Treating files as sets to perform rapid set manipulation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "setenv" = callPackage
@@ -236787,8 +234699,6 @@ self: {
        ];
        description = "Invertible grammar combinators for S-expressions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sexp-show" = callPackage
@@ -236970,7 +234880,6 @@ self: {
        description = "SGF (Smart Game Format) parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sgrep" = callPackage
@@ -236985,7 +234894,6 @@ self: {
        description = "Sgrep - grep Fasta files for sequences matching a regular expression";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sh2md" = callPackage
@@ -237047,7 +234955,6 @@ self: {
        description = "SHA-1 Hash";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shade" = callPackage
@@ -237432,7 +235339,6 @@ self: {
        description = "Shake rules for CSS";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shake-pack" = callPackage
@@ -237584,7 +235490,6 @@ self: {
        description = "simple and interactive command-line build tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shakers" = callPackage
@@ -237752,7 +235657,6 @@ self: {
        description = "Parser and related tools for ESRI shapefile format";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shapely-data" = callPackage
@@ -237772,7 +235676,6 @@ self: {
        description = "Generics using @(,)@ and @Either@, with algebraic operations and typed conversions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shapes" = callPackage
@@ -237959,7 +235862,6 @@ self: {
        description = "Test webhooks locally";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shell-conduit" = callPackage
@@ -238088,7 +235990,6 @@ self: {
        description = "Extra functionality for shellmate";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shellmet" = callPackage
@@ -238453,8 +236354,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Link shortcuts for use in text markup";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shorten-strings" = callPackage
@@ -238570,7 +236469,6 @@ self: {
        description = "A simple gtk based Russian Roulette game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shower" = callPackage
@@ -238613,7 +236511,6 @@ self: {
        description = "Web automation library in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shplit" = callPackage
@@ -238664,7 +236561,6 @@ self: {
        description = "Shuffle tool for UHC";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "shunya-library" = callPackage
@@ -238721,7 +236617,6 @@ self: {
        description = "An interface to the Silicon Labs Si5351 clock chip";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sibe" = callPackage
@@ -238748,7 +236643,6 @@ self: {
        description = "Machine Learning algorithms";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sieve" = callPackage
@@ -238846,7 +236740,6 @@ self: {
        description = "Thom polynomials of second order Thom-Boardman singularities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sign" = callPackage
@@ -238869,8 +236762,6 @@ self: {
        ];
        description = "Arithmetic over signs and sets of signs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "signable" = callPackage
@@ -238900,7 +236791,6 @@ self: {
        description = "Deterministic serialisation and signatures with proto-lens support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "signable-haskell-protoc" = callPackage
@@ -238951,7 +236841,6 @@ self: {
        description = "Synchronous signal processing for DSLs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "signature" = callPackage
@@ -238970,7 +236859,6 @@ self: {
        description = "Hmac sha256 signature json and http payload";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "signed-multiset" = callPackage
@@ -239008,7 +236896,6 @@ self: {
        description = "A Haskell clone of OpenBSD signify";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "silently" = callPackage
@@ -239032,8 +236919,6 @@ self: {
        libraryHaskellDepends = [ base prettyprinter ];
        description = "Prettyprinting transformers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "silvi" = callPackage
@@ -239052,7 +236937,6 @@ self: {
        description = "A generator for different kinds of data";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simd" = callPackage
@@ -239084,7 +236968,6 @@ self: {
        description = "stochastic simulation engine";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simple" = callPackage
@@ -239202,7 +237085,6 @@ self: {
        description = "A simple C value type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simple-cabal" = callPackage
@@ -239387,7 +237269,6 @@ self: {
        description = "Simplified interface for firewire cameras";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simple-form" = callPackage
@@ -239606,7 +237487,6 @@ self: {
        description = "Simple parsing/pretty printing for Nix expressions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simple-observer" = callPackage
@@ -239657,7 +237537,6 @@ self: {
        description = "Simplified Pascal language to SSVM compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simple-pipe" = callPackage
@@ -240035,7 +237914,6 @@ self: {
        description = "Lenses for simpleirc types";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simplelru" = callPackage
@@ -240184,6 +238062,51 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "simplexmq" = callPackage
+    ({ mkDerivation, ansi-terminal, asn1-encoding, asn1-types, async
+     , attoparsec, base, base64-bytestring, bytestring, containers
+     , cryptonite, cryptostore, directory, filepath, generic-random
+     , hspec, hspec-core, HUnit, ini, iso8601-time, memory, mtl, network
+     , network-transport, optparse-applicative, QuickCheck, random
+     , simple-logger, sqlite-simple, stm, template-haskell, text, time
+     , timeit, transformers, unliftio, unliftio-core, websockets, x509
+     }:
+     mkDerivation {
+       pname = "simplexmq";
+       version = "0.3.2";
+       sha256 = "1bxg91ycmpa8762v5vdviqvyzkfap4iv9plnr7gcibf8vsd39qxl";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal asn1-encoding asn1-types async attoparsec base
+         base64-bytestring bytestring containers cryptonite directory
+         filepath generic-random iso8601-time memory mtl network
+         network-transport QuickCheck random simple-logger sqlite-simple stm
+         template-haskell text time transformers unliftio unliftio-core
+         websockets x509
+       ];
+       executableHaskellDepends = [
+         ansi-terminal asn1-encoding asn1-types async attoparsec base
+         base64-bytestring bytestring containers cryptonite cryptostore
+         directory filepath generic-random ini iso8601-time memory mtl
+         network network-transport optparse-applicative QuickCheck random
+         simple-logger sqlite-simple stm template-haskell text time
+         transformers unliftio unliftio-core websockets x509
+       ];
+       testHaskellDepends = [
+         ansi-terminal asn1-encoding asn1-types async attoparsec base
+         base64-bytestring bytestring containers cryptonite directory
+         filepath generic-random hspec hspec-core HUnit iso8601-time memory
+         mtl network network-transport QuickCheck random simple-logger
+         sqlite-simple stm template-haskell text time timeit transformers
+         unliftio unliftio-core websockets x509
+       ];
+       description = "SimpleXMQ message broker";
+       license = lib.licenses.agpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "simplistic-generics" = callPackage
     ({ mkDerivation, base, containers, deepseq, kind-apply, mtl
      , template-haskell
@@ -240212,7 +238135,6 @@ self: {
        description = "Simulate sequencing with different models for priming and errors";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "simtreelo" = callPackage
@@ -240265,15 +238187,15 @@ self: {
      }) {inherit (pkgs.xorg) libXft;};
 
   "single-tuple" = callPackage
-    ({ mkDerivation, base, hspec, hspec-discover, OneTuple, Only }:
+    ({ mkDerivation, base, ghc-prim, hspec, hspec-discover, OneTuple
+     , Only
+     }:
      mkDerivation {
        pname = "single-tuple";
-       version = "0.1.1.0";
-       sha256 = "1cviix5did4pm4bimg12v2qa9ms5icf19k3iz13g07d5q9jyiwji";
-       revision = "1";
-       editedCabalFile = "0gmki1bz7sn1lw5f1f1zp3rfphwba03fv6825djlidybln8snld0";
-       libraryHaskellDepends = [ base OneTuple Only ];
-       testHaskellDepends = [ base hspec OneTuple Only ];
+       version = "0.1.2.0";
+       sha256 = "1dxrdddfdvs69icv6ixjv5crfznllxvg8sjiw9xwyn26f36g2mw8";
+       libraryHaskellDepends = [ base ghc-prim OneTuple Only ];
+       testHaskellDepends = [ base ghc-prim hspec OneTuple Only ];
        testToolDepends = [ hspec-discover ];
        description = "a class for single tuple implementations";
        license = lib.licenses.asl20;
@@ -240424,7 +238346,6 @@ self: {
        description = "A promoted and singled version of the base library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "singletons-presburger" = callPackage
@@ -240555,7 +238476,6 @@ self: {
        description = "Encode and decode CSV files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "siren-json" = callPackage
@@ -240581,7 +238501,6 @@ self: {
        description = "Siren Tools for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sirkel" = callPackage
@@ -240599,7 +238518,6 @@ self: {
        description = "Sirkel, a Chord DHT";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sitemap" = callPackage
@@ -240906,7 +238824,6 @@ self: {
        description = "a tool to access the OSX keychain";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "skeletons" = callPackage
@@ -240926,7 +238843,6 @@ self: {
        description = "Manage project skeletons";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "skell" = callPackage
@@ -241045,7 +238961,6 @@ self: {
        description = "Skylark client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "skylighting" = callPackage
@@ -241312,8 +239227,6 @@ self: {
        ];
        description = "Bindings for the Slack web API";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "slate" = callPackage
@@ -241350,8 +239263,8 @@ self: {
      }:
      mkDerivation {
        pname = "slave-thread";
-       version = "1.1";
-       sha256 = "02b64s0m7k81s187wj81yzr7l73p79iyh7a59dqf7r72l4r7akbd";
+       version = "1.1.0.1";
+       sha256 = "05hz0qglxg889l3b0sw9f79xqssw70fd62a766xcvj7aalmrc32i";
        libraryHaskellDepends = [
          base deferred-folds focus foldl stm-containers
        ];
@@ -241456,7 +239369,6 @@ self: {
        description = "ws convert markdown to reveal-js";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "slim" = callPackage
@@ -241495,7 +239407,6 @@ self: {
        description = "SLIP-0032: Extended serialization format for BIP-32 wallets";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "slist" = callPackage
@@ -241627,8 +239538,8 @@ self: {
      }:
      mkDerivation {
        pname = "slugify";
-       version = "0.1.0.0";
-       sha256 = "1bsb9jhd85zpa27wfv365axg9qx973wqi1nlnjds262i0ywdc45s";
+       version = "0.1.0.1";
+       sha256 = "1h5lbp33hd10lr2d5cplac7515aphyd56jyj3wlzw5pg3sih8qvv";
        libraryHaskellDepends = [ base text unicode-transforms ];
        testHaskellDepends = [ base hspec QuickCheck text ];
        testToolDepends = [ hspec-discover ];
@@ -241658,8 +239569,6 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Handle molecular sequences";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "small-bytearray-builder" = callPackage
@@ -241673,7 +239582,6 @@ self: {
        description = "Serialize to bytes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smallarray" = callPackage
@@ -241819,7 +239727,6 @@ self: {
        description = "A Unicode text type, optimized for low memory overhead";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smaoin" = callPackage
@@ -241960,7 +239867,6 @@ self: {
        description = "Web based flash card for Word Smart I and II vocabularies";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smash" = callPackage
@@ -242068,7 +239974,6 @@ self: {
        description = "Symbolic Model Checking for Dynamic Epistemic Logic";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sme" = callPackage
@@ -242127,7 +240032,6 @@ self: {
        description = "Parse arrays of tokens";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smith-cli" = callPackage
@@ -242152,7 +240056,6 @@ self: {
        description = "Command line tool for <https://smith.st/ Smith>.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smith-client" = callPackage
@@ -242177,7 +240080,6 @@ self: {
        description = "API client for <https://smith.st/ Smith>.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smoothie" = callPackage
@@ -242296,7 +240198,6 @@ self: {
        description = "Dump the communication with an SMT solver for debugging purposes";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smtlib2-pipe" = callPackage
@@ -242319,7 +240220,6 @@ self: {
        description = "A type-safe interface to communicate with an SMT solver";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smtlib2-quickcheck" = callPackage
@@ -242336,7 +240236,6 @@ self: {
        description = "Helper functions to create SMTLib expressions in QuickCheck";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smtlib2-timing" = callPackage
@@ -242349,7 +240248,6 @@ self: {
        description = "Get timing informations for SMT queries";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "smtp-mail" = callPackage
@@ -242534,6 +240432,7 @@ self: {
        ];
        description = "Top-level package for the Snap Web Framework";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "snap-accept" = callPackage
@@ -242583,7 +240482,6 @@ self: {
        description = "Command-line tool to manage Snap AuthManager database";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snap-blaze" = callPackage
@@ -242688,7 +240586,6 @@ self: {
        description = "Serve Elm files through the Snap web framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snap-error-collector" = callPackage
@@ -242739,7 +240636,6 @@ self: {
        description = "A collection of useful helpers and utilities for Snap web applications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snap-language" = callPackage
@@ -242950,7 +240846,6 @@ self: {
        description = "Snap Framework utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snap-web-routes" = callPackage
@@ -243008,7 +240903,6 @@ self: {
        description = "Generic action log snaplet for the Snap Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-amqp" = callPackage
@@ -243049,7 +240943,6 @@ self: {
        description = "Provides an Acid-State backend for the Auth Snaplet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-coffee" = callPackage
@@ -243068,7 +240961,6 @@ self: {
        description = "CoffeeScript for Snap, auto-compilation and pre-compilation";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-css-min" = callPackage
@@ -243185,7 +241077,6 @@ self: {
        description = "A Hasql snaplet";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-haxl" = callPackage
@@ -243202,7 +241093,6 @@ self: {
        description = "Snaplet for Facebook's Haxl";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-hdbc" = callPackage
@@ -243224,7 +241114,6 @@ self: {
        description = "HDBC snaplet for Snap Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-hslogger" = callPackage
@@ -243303,7 +241192,6 @@ self: {
        description = "Lexical Style Sheets - Snap Web Framework adaptor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-mandrill" = callPackage
@@ -243321,7 +241209,6 @@ self: {
        description = "Snap framework snaplet for the Mandrill API library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-mongoDB" = callPackage
@@ -243342,7 +241229,6 @@ self: {
        description = "Snap Framework MongoDB support as Snaplet";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-mongodb-minimalistic" = callPackage
@@ -243380,7 +241266,6 @@ self: {
        description = "mysql-simple snaplet for the Snap Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-oauth" = callPackage
@@ -243407,7 +241292,6 @@ self: {
        description = "snaplet-oauth";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-persistent" = callPackage
@@ -243475,7 +241359,6 @@ self: {
        description = "Postmark snaplet for the Snap Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-purescript" = callPackage
@@ -243492,8 +241375,6 @@ self: {
        ];
        description = "Automatic (re)compilation of purescript projects";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-recaptcha" = callPackage
@@ -243512,7 +241393,6 @@ self: {
        description = "A ReCAPTCHA verification snaplet with Heist integration and connection sharing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-redis" = callPackage
@@ -243532,8 +241412,6 @@ self: {
        ];
        description = "Redis support for Snap Framework";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-redson" = callPackage
@@ -243554,7 +241432,6 @@ self: {
        description = "CRUD for JSON data with Redis storage";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-rest" = callPackage
@@ -243573,7 +241450,6 @@ self: {
        description = "REST resources for the Snap web framework";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-riak" = callPackage
@@ -243592,7 +241468,6 @@ self: {
        description = "A Snaplet for the Riak database";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-sass" = callPackage
@@ -243647,7 +241522,6 @@ self: {
        description = "Snaplet for Sedna Bindings. Essentailly a rip of snaplet-hdbc.";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-ses-html" = callPackage
@@ -243718,7 +241592,6 @@ self: {
        description = "Snaplet for JWT authentication with snaplet-sqlite-simple";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-stripe" = callPackage
@@ -243738,7 +241611,6 @@ self: {
        description = "Stripe snaplet for the Snap Framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-tasks" = callPackage
@@ -243756,7 +241628,6 @@ self: {
        description = "Snaplet for Snap Framework enabling developers to administrative tasks akin to Rake tasks from Ruby On Rails framework";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-typed-sessions" = callPackage
@@ -243803,7 +241674,6 @@ self: {
        description = "A snaplet that communicates with wordpress over its api";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snappy" = callPackage
@@ -243858,7 +241728,6 @@ self: {
        description = "An enumeratee that uses Google's snappy compression library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snappy-lazy" = callPackage
@@ -243892,7 +241761,6 @@ self: {
        description = "Audio file reading/writing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sneakyterm" = callPackage
@@ -243970,7 +241838,6 @@ self: {
        description = "The Simple Nice-Looking Manual Generator";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snmp" = callPackage
@@ -243990,7 +241857,6 @@ self: {
        description = "SNMP protocol library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snorkels" = callPackage
@@ -244028,7 +241894,6 @@ self: {
        description = "encode any binary instance to white space";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snowball" = callPackage
@@ -244077,7 +241942,6 @@ self: {
        description = "twitter's snowflake";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snowflake-server" = callPackage
@@ -244097,7 +241961,6 @@ self: {
        description = "snowflake http server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "snowglobe" = callPackage
@@ -244280,8 +242143,6 @@ self: {
          transformers unordered-containers vector
        ];
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "socket-sctp" = callPackage
@@ -244404,22 +242265,19 @@ self: {
        description = "High-level network sockets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sockets-and-pipes" = callPackage
     ({ mkDerivation, aeson, ascii, async, base, blaze-html, bytestring
-     , containers, network, safe-exceptions, stm, text, time
+     , containers, network, pipes, safe-exceptions, stm, text, time
      }:
      mkDerivation {
        pname = "sockets-and-pipes";
-       version = "0.1";
-       sha256 = "02xc2kddcz93d9yqdchml0yh9gypcx64315baj766adgf8np42nv";
-       revision = "4";
-       editedCabalFile = "1lv2zpyblqryr59ii3zvwi5f06vxsgnla1xa14rardhncs36fa8r";
+       version = "0.2";
+       sha256 = "13xc6f525la66k76y515r0dwjqh583zl7z1k4z1w6hraim6kg95v";
        libraryHaskellDepends = [
          aeson ascii async base blaze-html bytestring containers network
-         safe-exceptions stm text time
+         pipes safe-exceptions stm text time
        ];
        description = "Support for the Sockets and Pipes book";
        license = lib.licenses.asl20;
@@ -244562,7 +242420,6 @@ self: {
        description = "Swagger generation for Solga";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "solr" = callPackage
@@ -244588,7 +242445,6 @@ self: {
        description = "A minimal Solr client library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "solve" = callPackage
@@ -244610,12 +242466,25 @@ self: {
     ({ mkDerivation, base, deepseq }:
      mkDerivation {
        pname = "some";
+       version = "1.0.2";
+       sha256 = "12mv5gzcvl4n5rz685r2nmmiykvnkvrvx7k4cvwscdjjgnqa9y6c";
+       libraryHaskellDepends = [ base deepseq ];
+       testHaskellDepends = [ base ];
+       description = "Existential type: Some";
+       license = lib.licenses.bsd3;
+     }) {};
+
+  "some_1_0_3" = callPackage
+    ({ mkDerivation, base, deepseq }:
+     mkDerivation {
+       pname = "some";
        version = "1.0.3";
        sha256 = "0w3syapwz9v916zf1i4f8vxymdfg7syc2cpxgnqr018pbswzxrk2";
        libraryHaskellDepends = [ base deepseq ];
        testHaskellDepends = [ base ];
        description = "Existential type: Some";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "sonic-visualiser" = callPackage
@@ -244786,27 +242655,33 @@ self: {
        description = "Haskell EDSL for Souffle";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "souffle-haskell" = callPackage
-    ({ mkDerivation, array, base, containers, deepseq, directory
-     , filepath, hedgehog, hspec, hspec-hedgehog, mtl
-     , neat-interpolation, process, template-haskell, temporary, text
-     , type-errors-pretty, vector
+    ({ mkDerivation, array, base, bytestring, containers, criterion
+     , deepseq, directory, filepath, hedgehog, hspec, hspec-hedgehog
+     , mtl, neat-interpolation, process, template-haskell, temporary
+     , text, text-short, type-errors-pretty, vector
      }:
      mkDerivation {
        pname = "souffle-haskell";
-       version = "2.1.0";
-       sha256 = "1szkv27my46xgwqanhb6wkgncll08yznpl0p2m1wq5cifxir2m7h";
+       version = "3.0.0";
+       sha256 = "0zwz28w8fmz8lfwd5bzhysc43y5gfsa1px2xhlkxg5psy0j1935q";
        libraryHaskellDepends = [
-         array base containers deepseq directory filepath mtl process
-         template-haskell temporary text type-errors-pretty vector
+         array base bytestring containers deepseq directory filepath mtl
+         process template-haskell temporary text text-short
+         type-errors-pretty vector
        ];
        testHaskellDepends = [
-         array base containers deepseq directory filepath hedgehog hspec
-         hspec-hedgehog mtl neat-interpolation process template-haskell
-         temporary text type-errors-pretty vector
+         array base bytestring containers deepseq directory filepath
+         hedgehog hspec hspec-hedgehog mtl neat-interpolation process
+         template-haskell temporary text text-short type-errors-pretty
+         vector
+       ];
+       benchmarkHaskellDepends = [
+         array base bytestring containers criterion deepseq directory
+         filepath mtl process template-haskell temporary text text-short
+         type-errors-pretty vector
        ];
        description = "Souffle Datalog bindings for Haskell";
        license = lib.licenses.mit;
@@ -244850,7 +242725,6 @@ self: {
        description = "Audio delay line";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "soundgen" = callPackage
@@ -244865,7 +242739,6 @@ self: {
        description = "sound generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "source-code-server" = callPackage
@@ -244890,7 +242763,6 @@ self: {
        description = "The server backend for the source code iPhone app";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "source-constraints" = callPackage
@@ -244918,10 +242790,8 @@ self: {
      }:
      mkDerivation {
        pname = "sourcemap";
-       version = "0.1.6";
-       sha256 = "0ynfm44ym8y592wnzdwa0d05dbkffyyg5sm26y5ylzpynk64r85r";
-       revision = "1";
-       editedCabalFile = "1f7q44ar6qfip8fsllg43jyn7r15ifn2r0vz32cbmx0sb0d38dax";
+       version = "0.1.6.1";
+       sha256 = "0kz8xpcd5syg5s4qa2qq8ylaxjhabj127w42may46vv6i0q1bf8a";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring process text unordered-containers
          utf8-string
@@ -245162,6 +243032,8 @@ self: {
        pname = "sparkle";
        version = "0.7.4";
        sha256 = "174rs21fgj43rq3nshzgff6mydi93n26nkcq9cadq0bzcasc2n3q";
+       revision = "1";
+       editedCabalFile = "1jwg12rmsa1il8y53ip535bjf02z7jnrnws1qi9y0xfpqblzmw6r";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal inline-java jvm-streaming ];
@@ -245176,7 +243048,6 @@ self: {
        description = "Distributed Apache Spark applications in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sparql-protocol" = callPackage
@@ -245223,7 +243094,6 @@ self: {
        description = "Unified streaming data-dependency framework for web apps";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spars" = callPackage
@@ -245341,7 +243211,6 @@ self: {
        description = "Sparse bitmaps for pattern match coverage";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sparsecheck" = callPackage
@@ -245371,7 +243240,6 @@ self: {
        description = "Lightweight parsing library based on partial functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spartacon" = callPackage
@@ -245403,7 +243271,6 @@ self: {
        description = "brainless form validation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spatial-math" = callPackage
@@ -245575,7 +243442,6 @@ self: {
        description = "Create specialized types from polymorphic ones using TH";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "species" = callPackage
@@ -245595,7 +243461,6 @@ self: {
        description = "Computational combinatorial species";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spectral-clustering" = callPackage
@@ -245614,15 +243479,14 @@ self: {
        description = "Library for spectral clustering";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "speculate" = callPackage
     ({ mkDerivation, base, cmdargs, containers, express, leancheck }:
      mkDerivation {
        pname = "speculate";
-       version = "0.4.4";
-       sha256 = "0vmxi8rapbld7b3llw2v6fz1v6vqyv90rpbnzjdfa29kdza4m5sf";
+       version = "0.4.6";
+       sha256 = "0vpc2vxfpziyz0hzapni4j31g1i12m2gnsrq72zf42qbhjwif57g";
        libraryHaskellDepends = [
          base cmdargs containers express leancheck
        ];
@@ -245630,6 +243494,25 @@ self: {
        benchmarkHaskellDepends = [ base express leancheck ];
        description = "discovery of properties about Haskell functions";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "speculate_0_4_8" = callPackage
+    ({ mkDerivation, base, cmdargs, containers, express, leancheck }:
+     mkDerivation {
+       pname = "speculate";
+       version = "0.4.8";
+       sha256 = "1xrrd1r4sbhvahdd3k9xnh8w9mmk4zh738q9blrjnvnd560wybp4";
+       libraryHaskellDepends = [
+         base cmdargs containers express leancheck
+       ];
+       testHaskellDepends = [ base express leancheck ];
+       benchmarkHaskellDepends = [ base express leancheck ];
+       description = "discovery of properties about Haskell functions";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "speculation" = callPackage
@@ -245656,7 +243539,6 @@ self: {
        description = "Merged into 'speculation'. Use that instead.";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "speechmatics" = callPackage
@@ -245688,7 +243570,6 @@ self: {
        description = "Speechmatics api client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "speedy-slice" = callPackage
@@ -245728,7 +243609,6 @@ self: {
        description = "Spelling suggestion tool with library and command-line interfaces";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spherical" = callPackage
@@ -245756,7 +243636,6 @@ self: {
        description = "Orbotix Sphero client library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sphinx" = callPackage
@@ -245789,7 +243668,6 @@ self: {
        description = "Sphinx CLI and demo of Haskell Sphinx library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sphinxesc" = callPackage
@@ -245827,7 +243705,6 @@ self: {
        description = "An FRP-based game engine written in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spike" = callPackage
@@ -245968,7 +243845,6 @@ self: {
        description = "A parallel implementation of the Sorokina/Zeilfelder spline scheme";
        license = lib.licenses.agpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "splines" = callPackage
@@ -245991,7 +243867,6 @@ self: {
        description = "B-Splines, other splines, and NURBS";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "splint" = callPackage
@@ -246098,6 +243973,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "splitmix-distributions" = callPackage
+    ({ mkDerivation, base, containers, erf, exceptions, hspec, mtl
+     , splitmix, transformers
+     }:
+     mkDerivation {
+       pname = "splitmix-distributions";
+       version = "0.9.0.0";
+       sha256 = "0y6v93kgbldkf9pznrfy8848njy7cln7bd3nrx2b7dmrz6yd4rpz";
+       libraryHaskellDepends = [
+         base containers erf exceptions mtl splitmix transformers
+       ];
+       testHaskellDepends = [ base erf hspec mtl splitmix transformers ];
+       description = "Random samplers for some common distributions, based on splitmix";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "splitter" = callPackage
     ({ mkDerivation, base, directory, filepath, parsec, range }:
      mkDerivation {
@@ -246264,7 +244155,6 @@ self: {
        description = "JSON API to HTML website wrapper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spritz" = callPackage
@@ -246303,7 +244193,6 @@ self: {
        description = "HTTP proxy for authenticating users via OAuth2";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sproxy-web" = callPackage
@@ -246330,7 +244219,6 @@ self: {
        description = "Web interface to sproxy database";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sproxy2" = callPackage
@@ -246357,7 +244245,6 @@ self: {
        description = "Secure HTTP proxy for authenticating users via OAuth2";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "spsa" = callPackage
@@ -246440,7 +244327,6 @@ self: {
        description = "mysql backend for sql-simple";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sql-simple-pool" = callPackage
@@ -246458,7 +244344,6 @@ self: {
        description = "conection pool for sql-simple";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sql-simple-postgresql" = callPackage
@@ -246475,7 +244360,6 @@ self: {
        description = "postgresql backend for sql-simple";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sql-simple-sqlite" = callPackage
@@ -246488,7 +244372,6 @@ self: {
        description = "sqlite backend for sql-simple";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sql-words" = callPackage
@@ -246615,7 +244498,6 @@ self: {
        description = "Typed extension to sqlite simple";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sqlvalue-list" = callPackage
@@ -246717,8 +244599,8 @@ self: {
      }:
      mkDerivation {
        pname = "squeather";
-       version = "0.6.0.0";
-       sha256 = "05cs67xcvfq0497kddmvzrccf7ihav87mv4hmi8kgl2jp8hqmk7p";
+       version = "0.8.0.0";
+       sha256 = "1pjiq97gq8rjp4v7cx2bhj7zcwkswc593fxdwqajssi1i39679r6";
        libraryHaskellDepends = [ base bytestring text ];
        testHaskellDepends = [
          base bytestring directory filepath hedgehog lifted-base temporary
@@ -246749,8 +244631,6 @@ self: {
        ];
        description = "A file-packing application";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sr-extra" = callPackage
@@ -246779,7 +244659,6 @@ self: {
        description = "Module limbo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "srcinst" = callPackage
@@ -246806,8 +244685,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "srcloc";
-       version = "0.5.1.2";
-       sha256 = "0vn0zqsk191ghh2993hls05hp7kvnskaafnfrrqhfbmpdg7dp7h6";
+       version = "0.6";
+       sha256 = "1vcp9vgfi5rscy09l4qaq0pp426b6qcdpzs6kpbzg0k5x81kcsbb";
        libraryHaskellDepends = [ base ];
        description = "Data types for managing source code locations";
        license = lib.licenses.bsd3;
@@ -246860,7 +244739,6 @@ self: {
        description = "Simple SCGI Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sscript" = callPackage
@@ -246968,7 +244846,6 @@ self: {
        description = "Check sshd configuration for adherence to best practices";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sshtun" = callPackage
@@ -247017,7 +244894,6 @@ self: {
        description = "HTTP proxy for S3";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sstable" = callPackage
@@ -247037,7 +244913,6 @@ self: {
        description = "SSTables in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ssv" = callPackage
@@ -247102,8 +244977,8 @@ self: {
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
        pname = "stable-marriage";
-       version = "0.2.0.0";
-       sha256 = "1qxns33mmr1nxw6gabi5s1i70ksp0ls54q7cf95fy7vs1nwngz0n";
+       version = "0.2.1.0";
+       sha256 = "1dv4333an20mlhmsxhaldjcj54pnkjvp7zpiasd6shii5d4cn0z1";
        libraryHaskellDepends = [ base ghc-prim ];
        testHaskellDepends = [ base ghc-prim ];
        description = "algorithms around stable marriage";
@@ -247150,7 +245025,6 @@ self: {
        description = "Trees whose branches are resistant to change";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stache" = callPackage
@@ -247162,8 +245036,8 @@ self: {
      }:
      mkDerivation {
        pname = "stache";
-       version = "2.2.1";
-       sha256 = "1vkvi9rrf15a8lbihvcmrslykby4qc4jmc5zaqm1ikxsid9x5704";
+       version = "2.3.0";
+       sha256 = "1gfmr9gcq9zm7ljp2nqmc41lpig11d19xsqzazr2mvm5ddsi69cr";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -247209,8 +245083,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack";
-       version = "2.5.1.1";
-       sha256 = "0fdm4wc8hxawfab7dv2ayr853mna93gznb7g162gw4h4zxnyzwyc";
+       version = "2.7.1";
+       sha256 = "09mw5jwgcmbkwsgvg1ls114hq9v2vl49pdvix8ir7vvgicvdhnv0";
        configureFlags = [
          "-fdisable-git-info" "-fhide-dependency-versions"
          "-fsupported-build"
@@ -247287,8 +245161,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack-all";
-       version = "0.2";
-       sha256 = "0q64g4frvcmj308x27mibi89m6rwjf5v47ql4yy6cnf9arjzqf9f";
+       version = "0.2.1";
+       sha256 = "07azc2phnljxwxskxlipmx52vjyavxn54q87k1bakapla469fdr4";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -247381,7 +245255,6 @@ self: {
        description = "Initial project template from stack";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stack-lib" = callPackage
@@ -247441,7 +245314,6 @@ self: {
        description = "A program for extending Stack to add distributed capabilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stack-prism" = callPackage
@@ -247511,7 +245383,6 @@ self: {
        description = "Initial project template from stack";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stack-tag" = callPackage
@@ -247670,7 +245541,6 @@ self: {
        description = "Dummy package forcing installation of other Stackage packages";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-build-plan" = callPackage
@@ -247696,7 +245566,6 @@ self: {
        description = "Calculate and print (in different formats) Stackage build plans";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-cabal" = callPackage
@@ -247718,7 +245587,6 @@ self: {
        description = "A CLI executable for cabal-based stackage commands";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-cli" = callPackage
@@ -247862,7 +245730,6 @@ self: {
        description = "Tool for querying Stackage";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-sandbox" = callPackage
@@ -247884,7 +245751,6 @@ self: {
        description = "Work with shared stackage sandboxes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-setup" = callPackage
@@ -247909,7 +245775,6 @@ self: {
        description = "An executable for downloading a Haskell setup";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage-to-hackage" = callPackage
@@ -247995,7 +245860,6 @@ self: {
        description = "A more secure version of cabal upload which uses HTTPS";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackage2nix" = callPackage
@@ -248027,7 +245891,6 @@ self: {
        description = "Convert Stack files into Nix build instructions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stackcollapse-ghc" = callPackage
@@ -248055,6 +245918,31 @@ self: {
        broken = true;
      }) {};
 
+  "stackcollapse-ghc_0_0_1_4" = callPackage
+    ({ mkDerivation, base, bytestring, containers, extra, filepath
+     , foldl, hspec, hspec-golden, recursion-schemes, rosezipper, safe
+     , text, transformers, utf8-string
+     }:
+     mkDerivation {
+       pname = "stackcollapse-ghc";
+       version = "0.0.1.4";
+       sha256 = "1scqjjp1cpz3zzvqa6wmfz11qrhsbqwgq7h8qjg0d8ri3r9z82lb";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring containers extra foldl recursion-schemes rosezipper
+         safe text transformers
+       ];
+       testHaskellDepends = [
+         base bytestring containers extra filepath foldl hspec hspec-golden
+         recursion-schemes rosezipper safe text transformers utf8-string
+       ];
+       description = "Program to fold GHC prof files into flamegraph input";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "stacked-dag" = callPackage
     ({ mkDerivation, base, containers, doctest, graphviz
      , optparse-applicative, text
@@ -248400,7 +246288,6 @@ self: {
        description = "Typeclass instances for monad transformer stacks with an ST thread at the bottom";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stateref" = callPackage
@@ -248420,6 +246307,8 @@ self: {
        pname = "statestack";
        version = "0.3";
        sha256 = "1b8yd314h8a97ggjv82cy4mr0f4scb5pjvslxq7hwxxq7cw7mgns";
+       revision = "1";
+       editedCabalFile = "03kk2zab7mcr5m89mxxl0zivag2hb024ijfdi0mp794hswncwhxy";
        libraryHaskellDepends = [
          base mtl transformers transformers-compat
        ];
@@ -248507,7 +246396,6 @@ self: {
        description = "Serialisable static pointers to functions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "static-hash" = callPackage
@@ -248586,8 +246474,6 @@ self: {
        testToolDepends = [ markdown-unlit ];
        description = "Lists, Texts, ByteStrings and Vectors of statically known length";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "staticanalysis" = callPackage
@@ -248762,7 +246648,6 @@ self: {
        description = "Statsd UDP client";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "statsd-datadog" = callPackage
@@ -248802,7 +246687,6 @@ self: {
        description = "A lovely [Dog]StatsD implementation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "status-notifier-item" = callPackage
@@ -248844,15 +246728,15 @@ self: {
   "staversion" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring, Cabal
      , containers, directory, filepath, hashable, heredoc, hspec
-     , http-client, http-client-tls, http-types, megaparsec
-     , optparse-applicative, pretty, process, QuickCheck, semigroups
-     , text, transformers, transformers-compat, unordered-containers
-     , yaml
+     , hspec-discover, http-client, http-client-tls, http-types
+     , megaparsec, optparse-applicative, pretty, process, QuickCheck
+     , semigroups, text, transformers, transformers-compat
+     , unordered-containers, yaml
      }:
      mkDerivation {
        pname = "staversion";
-       version = "0.2.4.0";
-       sha256 = "1n6f7ka4ncadp4svd3bc81qxdgiff85mws5apx7wdhcwfn8wbsib";
+       version = "0.2.4.1";
+       sha256 = "0i6z6dm9bksvhnfc1jj5gmf7nimz9hg7vvc6aj1vla7v5m0bkwrr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -248866,6 +246750,7 @@ self: {
          base bytestring Cabal filepath heredoc hspec QuickCheck semigroups
          text unordered-containers
        ];
+       testToolDepends = [ hspec-discover ];
        description = "What version is the package X in stackage lts-Y.ZZ?";
        license = lib.licenses.bsd3;
      }) {};
@@ -249225,14 +247110,12 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "stm_2_5_0_0" = callPackage
+  "stm_2_5_0_1" = callPackage
     ({ mkDerivation, array, base }:
      mkDerivation {
        pname = "stm";
-       version = "2.5.0.0";
-       sha256 = "1illcj8zgzmpl91hzgk0j74ha436a379gw13siq4gifbcrf6iqsr";
-       revision = "1";
-       editedCabalFile = "189fxk75h7n27kw7ndyn8nkxm3117qdh1dpag1mcs487kxghff62";
+       version = "2.5.0.1";
+       sha256 = "1fipf3bbk34mbld1apwnq6kbjxbrz2nc9cxxmhkk2bdcc2z4y7j5";
        libraryHaskellDepends = [ array base ];
        description = "Software Transactional Memory";
        license = lib.licenses.bsd3;
@@ -249579,7 +247462,6 @@ self: {
        description = "Control communication among retrying transactions";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stochastic" = callPackage
@@ -249614,8 +247496,6 @@ self: {
        testHaskellDepends = [ base bytestring HUnit ];
        description = "Library for the IEX Trading API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stomp-conduit" = callPackage
@@ -249829,7 +247709,6 @@ self: {
        description = "Conversion between storablevector and stream-fusion lists with fusion";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "store" = callPackage
@@ -249846,54 +247725,6 @@ self: {
      }:
      mkDerivation {
        pname = "store";
-       version = "0.7.10";
-       sha256 = "0026bjff7nsw23i1l5427qnvw69ncbii5s2q1nshkrs1nrspb0i2";
-       libraryHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring containers contravariant cryptohash deepseq directory
-         filepath free ghc-prim hashable hspec hspec-smallcheck integer-gmp
-         lifted-base monad-control mono-traversable nats network primitive
-         resourcet safe smallcheck store-core syb template-haskell text
-         th-lift th-lift-instances th-orphans th-reify-many th-utilities
-         time transformers unordered-containers vector void
-       ];
-       testHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring clock containers contravariant cryptohash deepseq
-         directory filepath free ghc-prim hashable hspec hspec-smallcheck
-         integer-gmp lifted-base monad-control mono-traversable nats network
-         primitive resourcet safe smallcheck store-core syb template-haskell
-         text th-lift th-lift-instances th-orphans th-reify-many
-         th-utilities time transformers unordered-containers vector void
-       ];
-       benchmarkHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring cereal cereal-vector containers contravariant criterion
-         cryptohash deepseq directory filepath free ghc-prim hashable hspec
-         hspec-smallcheck integer-gmp lifted-base monad-control
-         mono-traversable nats network primitive resourcet safe smallcheck
-         store-core syb template-haskell text th-lift th-lift-instances
-         th-orphans th-reify-many th-utilities time transformers
-         unordered-containers vector vector-binary-instances void weigh
-       ];
-       description = "Fast binary serialization";
-       license = lib.licenses.mit;
-     }) {};
-
-  "store_0_7_11" = callPackage
-    ({ mkDerivation, array, async, base, base-orphans
-     , base64-bytestring, bifunctors, bytestring, cereal, cereal-vector
-     , clock, containers, contravariant, criterion, cryptohash, deepseq
-     , directory, filepath, free, ghc-prim, hashable, hspec
-     , hspec-smallcheck, integer-gmp, lifted-base, monad-control
-     , mono-traversable, nats, network, primitive, resourcet, safe
-     , smallcheck, store-core, syb, template-haskell, text, th-lift
-     , th-lift-instances, th-orphans, th-reify-many, th-utilities, time
-     , transformers, unordered-containers, vector
-     , vector-binary-instances, void, weigh
-     }:
-     mkDerivation {
-       pname = "store";
        version = "0.7.11";
        sha256 = "03i9gd18xqbfmj5kmiv4k4sw44gn6mn4faj71r2723abm3qwklwr";
        libraryHaskellDepends = [
@@ -249926,7 +247757,6 @@ self: {
        ];
        description = "Fast binary serialization";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "store-core" = callPackage
@@ -250060,7 +247890,6 @@ self: {
        description = "A library for stratux";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stratux-demo" = callPackage
@@ -250084,7 +247913,6 @@ self: {
        description = "A demonstration of the stratux library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stratux-http" = callPackage
@@ -250101,7 +247929,6 @@ self: {
        description = "A library for using HTTP with stratux";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stratux-types" = callPackage
@@ -250136,7 +247963,6 @@ self: {
        description = "A library for using websockets with stratux";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stream" = callPackage
@@ -250277,7 +248103,6 @@ self: {
        description = "Streaming conversion from/to base64";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-benchmarks" = callPackage
@@ -250303,8 +248128,6 @@ self: {
        ];
        description = "Benchmarks to compare streaming packages";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-binary" = callPackage
@@ -250361,7 +248184,6 @@ self: {
        description = "Streaming interface for Brotli (RFC7932) compression";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-bytestring" = callPackage
@@ -250404,8 +248226,6 @@ self: {
        ];
        description = "Cassava support for the streaming ecosystem";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-commons" = callPackage
@@ -250453,7 +248273,6 @@ self: {
        description = "Concurrency support for the streaming ecosystem";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-conduit" = callPackage
@@ -250526,7 +248345,6 @@ self: {
        description = "online streaming fft";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-histogram" = callPackage
@@ -250688,7 +248506,6 @@ self: {
        description = "Streaming support for running system process";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-sort" = callPackage
@@ -250711,7 +248528,6 @@ self: {
        description = "Sorting streams";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "streaming-utils" = callPackage
@@ -250797,6 +248613,7 @@ self: {
        ];
        description = "Beautiful Streaming, Concurrent and Reactive Composition";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
   "streamly-archive" = callPackage
@@ -250806,8 +248623,8 @@ self: {
      }:
      mkDerivation {
        pname = "streamly-archive";
-       version = "0.0.1";
-       sha256 = "055jcqndkzg14c2fvkncn9034bw60n8s8yjkkjx7kqrj9p0kp01a";
+       version = "0.0.2";
+       sha256 = "00cd5ssa5hi4pvc5li24z68f1k50h02frn4668gcrv8lr5kh6s50";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base bytestring streamly ];
        librarySystemDepends = [ archive ];
@@ -250818,8 +248635,6 @@ self: {
        testSystemDepends = [ archive ];
        description = "Stream data from archives using the streamly library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {archive = null;};
 
   "streamly-binary" = callPackage
@@ -250909,8 +248724,8 @@ self: {
      }:
      mkDerivation {
        pname = "streamly-lmdb";
-       version = "0.2.0";
-       sha256 = "1mkcnn7y4rwc8m0qvcqyw20jd7ax3nm455228fwp3yaslgw4mcvy";
+       version = "0.2.1";
+       sha256 = "08rj29i3vb4ahgrd2zhyi2sl1lk95s7vk020xx9mwzi8sbn0ay05";
        libraryHaskellDepends = [ async base bytestring streamly ];
        librarySystemDepends = [ lmdb ];
        testHaskellDepends = [
@@ -250920,8 +248735,6 @@ self: {
        testSystemDepends = [ lmdb ];
        description = "Stream data to or from LMDB databases using the streamly library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) lmdb;};
 
   "streamly-posix" = callPackage
@@ -250975,6 +248788,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "streamt" = callPackage
+    ({ mkDerivation, async, base, criterion, hspec, logict, mtl, tasty
+     , tasty-hunit
+     }:
+     mkDerivation {
+       pname = "streamt";
+       version = "0.5.0.0";
+       sha256 = "0r2r6ribk85hwmzdn2imgajb28q5d5gbhysr62bw2jhmd5xy7985";
+       libraryHaskellDepends = [ base logict mtl ];
+       testHaskellDepends = [
+         async base criterion hspec mtl tasty tasty-hunit
+       ];
+       description = "Simple, Fair and Terminating Backtracking Monad Transformer";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "strelka" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-data, base, base-prelude
      , base64-bytestring, bifunctors, bytestring
@@ -250995,7 +248824,6 @@ self: {
        description = "A simple, flexible and composable web-router";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "strelka-core" = callPackage
@@ -251072,8 +248900,6 @@ self: {
        ];
        description = "Strict variants of the types provided in base";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "strict-concurrency" = callPackage
@@ -251164,7 +248990,6 @@ self: {
        description = "A collection of commonly used strict data structures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "strict-ghc-plugin" = callPackage
@@ -251438,8 +249263,8 @@ self: {
      }:
      mkDerivation {
        pname = "string-interpolate";
-       version = "0.3.1.0";
-       sha256 = "0hyrcndhwd06phlmykyz7bklj5gnj4amcn11ckfvw0iws3sksl8d";
+       version = "0.3.1.1";
+       sha256 = "0hhzvrs9msyqsxwsqqm55lyxf85vhg4vcsszl735zsbs7431av69";
        libraryHaskellDepends = [
          base bytestring haskell-src-exts haskell-src-meta split
          template-haskell text text-conversions utf8-string
@@ -251478,8 +249303,8 @@ self: {
     ({ mkDerivation, base, bytestring, text }:
      mkDerivation {
        pname = "string-like";
-       version = "0.1.0.0";
-       sha256 = "1b87532fhv2wn6pnzsaw20lzj5j399smlfn7lai0h0ph2axb2dbi";
+       version = "0.1.0.1";
+       sha256 = "1sadf4cdxs3ilax99w1yvkfz2v1n77rj9grck4csjbwswxw2d2dn";
        libraryHaskellDepends = [ base bytestring text ];
        description = "A package that aims to provide a uniform interface to string-like types";
        license = lib.licenses.bsd3;
@@ -251579,7 +249404,6 @@ self: {
        description = "Type-level Chars and Strings, with decidable equality";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stringable" = callPackage
@@ -251761,6 +249585,7 @@ self: {
        libraryHaskellDepends = [ base stripe-core stripe-http-client ];
        description = "Stripe API for Haskell";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "stripe-hs" = callPackage
@@ -251807,6 +249632,7 @@ self: {
        ];
        description = "Stripe API for Haskell - http-client backend";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "stripe-http-streams" = callPackage
@@ -251846,7 +249672,6 @@ self: {
        description = "Listen for Stripe webhook events with Scotty";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stripe-servant" = callPackage
@@ -251899,6 +249724,8 @@ self: {
        ];
        description = "Tests for Stripe API bindings for Haskell";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "stripe-wreq" = callPackage
@@ -251915,8 +249742,6 @@ self: {
        ];
        description = "Use the Stripe API via Wreq";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stripeapi" = callPackage
@@ -252018,8 +249843,8 @@ self: {
      }:
      mkDerivation {
        pname = "structs";
-       version = "0.1.5";
-       sha256 = "1qsj5w6g0lcvbrm0zs37f1yk3im1swhnb4j1mbpr3fyc3zswwbjf";
+       version = "0.1.6";
+       sha256 = "0wzbhsvix46aans0hdm11pvsigk1lxpdaha2sxslx0ip1xsdg0gk";
        libraryHaskellDepends = [
          base deepseq ghc-prim primitive template-haskell th-abstraction
        ];
@@ -252049,7 +249874,6 @@ self: {
        description = "Instantiate structural induction schemas for algebraic data types";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "structural-traversal" = callPackage
@@ -252141,7 +249965,6 @@ self: {
        description = "Structured MongoDB interface";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "structures" = callPackage
@@ -252238,7 +250061,6 @@ self: {
        description = "A revival of the classic game Stunts (LambdaCube tech demo)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stutter" = callPackage
@@ -252267,7 +250089,6 @@ self: {
        description = "(Stutter Text|String)-Utterer";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stylish-cabal" = callPackage
@@ -252349,8 +250170,6 @@ self: {
        ];
        description = "Apply CSS styles to a document tree";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "stylized" = callPackage
@@ -252403,8 +250222,6 @@ self: {
        ];
        description = "An applicative functor that seamlessly talks to HTML inputs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sub-state" = callPackage
@@ -252502,7 +250319,6 @@ self: {
        description = "Type safe interface for programming in subcategories of Hask";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "subleq-toolchain" = callPackage
@@ -252610,7 +250426,6 @@ self: {
        description = "Match / replace substrings with a parser combinators";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "subtitleParser" = callPackage
@@ -252687,8 +250502,6 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "An applicative functor to manage successors";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "suffix-array" = callPackage
@@ -252839,7 +250652,6 @@ self: {
        description = "Tool for scaffolding fully configured batteries-included production-level Haskell projects using TUI";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sump" = callPackage
@@ -252858,7 +250670,6 @@ self: {
        description = "A Haskell interface to SUMP-compatible logic analyzers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sundown" = callPackage
@@ -252929,7 +250740,6 @@ self: {
        description = "Tests for Sunroof";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sunroof-server" = callPackage
@@ -252952,7 +250762,6 @@ self: {
        description = "Monadic Javascript Compiler - Server Utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "super-user-spark" = callPackage
@@ -253035,7 +250844,6 @@ self: {
        description = "Haskell SuperCollider utilities";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "supercollider-midi" = callPackage
@@ -253059,7 +250867,6 @@ self: {
        description = "Demonstrate how to control SuperCollider via ALSA-MIDI";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "superconstraints" = callPackage
@@ -253077,7 +250884,6 @@ self: {
        description = "Access an instance's constraints";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "superdoc" = callPackage
@@ -253302,7 +251108,6 @@ self: {
        description = "Encode and decode separated values (CSV, PSV, ...)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sv-cassava" = callPackage
@@ -253325,7 +251130,6 @@ self: {
        description = "Integration to use sv with cassava's parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sv-core" = callPackage
@@ -253373,7 +251177,6 @@ self: {
        description = "sv-core + svfactor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "svfactor" = callPackage
@@ -253472,7 +251275,6 @@ self: {
        description = "Code generation tool for Quartz code from a SVG";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "svgcairo" = callPackage
@@ -253515,7 +251317,6 @@ self: {
        description = "Optimise SVGs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "svgutils" = callPackage
@@ -253725,7 +251526,6 @@ self: {
        description = "Transparently swapping data from in-memory structures to disk";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) tokyocabinet;};
 
   "swearjure" = callPackage
@@ -253746,7 +251546,6 @@ self: {
        description = "Clojure without alphanumerics";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sweet-egison" = callPackage
@@ -253770,7 +251569,6 @@ self: {
        description = "Shallow embedding implementation of non-linear pattern matching";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "swf" = callPackage
@@ -253865,6 +251663,8 @@ self: {
        ];
        description = "SwissTable hash map";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "switch" = callPackage
@@ -253882,7 +251682,6 @@ self: {
        description = "Nintendo Switch Controller Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sws" = callPackage
@@ -253906,8 +251705,6 @@ self: {
        ];
        description = "A simple web server for serving directories";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sxml" = callPackage
@@ -254158,7 +251955,6 @@ self: {
        description = "Lambda calculus visualization";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "sym" = callPackage
@@ -254185,7 +251981,6 @@ self: {
        description = "Plot permutations; an addition to the sym package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic" = callPackage
@@ -254226,7 +252021,6 @@ self: {
        description = "Library for reading and writing Atom";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-base" = callPackage
@@ -254304,8 +252098,6 @@ self: {
        ];
        description = "Symantic combinators for deriving clients or a server from an HTTP API";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-http-client" = callPackage
@@ -254324,8 +252116,6 @@ self: {
        ];
        description = "symantic-http applied to the derivation of HTTP clients";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-http-demo" = callPackage
@@ -254352,8 +252142,6 @@ self: {
        ];
        description = "Demo for symantic-http and its companion libraries";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-http-pipes" = callPackage
@@ -254375,8 +252163,6 @@ self: {
        ];
        description = "Streaming support through pipes for symantic-http";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-http-server" = callPackage
@@ -254395,8 +252181,6 @@ self: {
        ];
        description = "symantic-http applied to the derivation of HTTP servers";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-http-test" = callPackage
@@ -254449,7 +252233,6 @@ self: {
        description = "Symantics for common types";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symantic-parser" = callPackage
@@ -254532,7 +252315,6 @@ self: {
        description = "Data serialization, communication, and operation verification implementation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symbol" = callPackage
@@ -254638,7 +252420,6 @@ self: {
        description = "Derivation of symbols and coordinate triplets Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "symon" = callPackage
@@ -254745,7 +252526,6 @@ self: {
        description = "Haskell bindings for the Syncthing REST API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "synt" = callPackage
@@ -254794,8 +252574,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq ];
        description = "Generic representation and manipulation of abstract syntax";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntactical" = callPackage
@@ -254825,7 +252603,6 @@ self: {
        description = "Reversible parsing and pretty-printing";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-attoparsec" = callPackage
@@ -254842,7 +252619,6 @@ self: {
        description = "Syntax instances for Attoparsec";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-example" = callPackage
@@ -254862,7 +252638,6 @@ self: {
        description = "Example application using syntax, a library for abstract syntax descriptions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-example-json" = callPackage
@@ -254882,7 +252657,6 @@ self: {
        description = "Example JSON parser/pretty-printer";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-pretty" = callPackage
@@ -254898,7 +252672,6 @@ self: {
        description = "Syntax instance for pretty, the pretty printing library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-printer" = callPackage
@@ -254916,7 +252689,6 @@ self: {
        description = "Text and ByteString printers for 'syntax'";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syntax-trees" = callPackage
@@ -254970,7 +252742,6 @@ self: {
        description = "Working with Google's SyntaxNet output files - CoNLL, Tree";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "synthesizer" = callPackage
@@ -255016,6 +252787,11 @@ self: {
        ];
        description = "Control synthesizer effects via ALSA/MIDI";
        license = "GPL";
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "synthesizer-core" = callPackage
@@ -255133,7 +252909,6 @@ self: {
        description = "Efficient signal processing using runtime compilation";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "synthesizer-midi" = callPackage
@@ -255561,7 +253336,6 @@ self: {
        description = "An application that regularly logs system stats for later analysis";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "syz" = callPackage
@@ -255604,7 +253378,6 @@ self: {
        description = "tic-tac-toe Rexports for client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "t3-game" = callPackage
@@ -255658,7 +253431,6 @@ self: {
        description = "Transito Abierto: convenience library when using Takusen and Oracle";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tabl" = callPackage
@@ -255879,8 +253651,8 @@ self: {
      }:
      mkDerivation {
        pname = "taffybar";
-       version = "3.2.3";
-       sha256 = "0c5w030b289qy05pzs1bx3sd23sxxdm44605hs4ibzffaf0pr7b0";
+       version = "3.2.5";
+       sha256 = "1gfdlqgdqq2ivvzj7cgqahpm2bmwg90ri5ss7ah38alrp5rvda1v";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -255904,6 +253676,10 @@ self: {
        executablePkgconfigDepends = [ gtk3 ];
        description = "A desktop bar similar to xmobar, but with more GUI";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+       maintainers = with lib.maintainers; [ rvl ];
      }) {inherit (pkgs) gtk3;};
 
   "tag-bits" = callPackage
@@ -255933,7 +253709,6 @@ self: {
        description = "streamlined html tag parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tagchup" = callPackage
@@ -256033,7 +253808,6 @@ self: {
        description = "Lists tagged with a type-level natural number representing their length";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tagged-th" = callPackage
@@ -256048,7 +253822,6 @@ self: {
        description = "QuasiQuoter and Template Haskell splices for creating proxies at higher-kinds";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tagged-timers" = callPackage
@@ -256271,7 +254044,6 @@ self: {
        description = "Tagsoup Navigate";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tagsoup-parsec" = callPackage
@@ -256319,7 +254091,6 @@ self: {
        description = "Black magic tagsoup";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tagstream-conduit" = callPackage
@@ -256485,7 +254256,28 @@ self: {
        description = "An implementation of Typed Assembly Language (Morrisett, Walker, Crary, Glew)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "talash" = callPackage
+    ({ mkDerivation, alfred-margaret, base, brick, bytestring
+     , colorful-monoids, containers, directory, ghc-compact, intro
+     , microlens, microlens-th, text, unix, unordered-containers, vector
+     , vector-algorithms, vector-sized, vty
+     }:
+     mkDerivation {
+       pname = "talash";
+       version = "0.1.0.1";
+       sha256 = "1j28i5aipldjknfx22dil0xi1gwlv89frl1fn606yl1g84q1kr5n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         alfred-margaret base brick bytestring colorful-monoids containers
+         directory ghc-compact intro microlens microlens-th text unix
+         unordered-containers vector vector-algorithms vector-sized vty
+       ];
+       executableHaskellDepends = [ base ];
+       description = "Line oriented fast enough text search";
+       license = lib.licenses.gpl3Only;
      }) {};
 
   "tamarin-prover" = callPackage
@@ -256516,7 +254308,6 @@ self: {
        description = "The Tamarin prover for security protocol analysis";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tamarin-prover-term" = callPackage
@@ -256536,7 +254327,6 @@ self: {
        description = "Term manipulation library for the tamarin prover";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tamarin-prover-theory" = callPackage
@@ -256559,7 +254349,6 @@ self: {
        description = "Term manipulation library for the tamarin prover";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tamarin-prover-utils" = callPackage
@@ -256773,7 +254562,6 @@ self: {
        description = "Generate test-suites from refinement types";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) z3;};
 
   "tart" = callPackage
@@ -256816,7 +254604,6 @@ self: {
        description = "A command line tool for keeping track of tasks you worked on";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "task-distribution" = callPackage
@@ -256854,7 +254641,6 @@ self: {
        description = "Distributed processing of changing tasks";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "taskell" = callPackage
@@ -256913,8 +254699,8 @@ self: {
        pname = "taskwarrior";
        version = "0.3.0.0";
        sha256 = "1h24d799q1s6b36hd40bxa4c9m1izkgh6j7p2jv1p6cxngz28ni0";
-       revision = "4";
-       editedCabalFile = "1rwlyw01i07xryhja4h7jadlj5rdznmb1jwl74qllkrhrvqjfmrg";
+       revision = "5";
+       editedCabalFile = "1h7ybnxx5f0w1h13wzbx30ycf578dnv12wx4pqn3pfxqz1jz3gjg";
        libraryHaskellDepends = [
          aeson base bytestring containers process random text time
          unordered-containers uuid
@@ -257009,7 +254795,6 @@ self: {
        description = "BDD tests language and tasty provider";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-bench" = callPackage
@@ -257042,8 +254827,6 @@ self: {
        ];
        description = "Check multiple items during a tasty test";
        license = lib.licenses.isc;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-dejafu" = callPackage
@@ -257194,7 +254977,6 @@ self: {
        description = "Tasty Tests for groundhog converters";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-hedgehog" = callPackage
@@ -257274,6 +255056,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "tasty-hspec_1_2" = callPackage
+    ({ mkDerivation, base, hspec, hspec-core, QuickCheck, tasty
+     , tasty-quickcheck, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "tasty-hspec";
+       version = "1.2";
+       sha256 = "0hnq6q4mk2avirb8cgibaxj5m2c4rf5xsqry04zx4nc15la5xniw";
+       libraryHaskellDepends = [
+         base hspec hspec-core QuickCheck tasty tasty-quickcheck
+         tasty-smallcheck
+       ];
+       description = "Hspec support for the Tasty test framework";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "tasty-html" = callPackage
     ({ mkDerivation, base, blaze-html, bytestring, containers, filepath
      , generic-deriving, mtl, semigroups, stm, tagged, tasty, text
@@ -257290,8 +255089,6 @@ self: {
        ];
        description = "Render tasty output to HTML";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-hunit" = callPackage
@@ -257327,6 +255124,21 @@ self: {
        license = lib.licenses.mpl20;
      }) {};
 
+  "tasty-inspection-testing" = callPackage
+    ({ mkDerivation, base, ghc, inspection-testing, tasty
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "tasty-inspection-testing";
+       version = "0.1";
+       sha256 = "18awafrclxg8lfw8gg4ndzfwwpaz8qmad23fi24rhpdj9c7xdyhw";
+       libraryHaskellDepends = [
+         base ghc inspection-testing tasty template-haskell
+       ];
+       description = "Inspection testing support for tasty";
+       license = lib.licenses.mit;
+     }) {};
+
   "tasty-integrate" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cmdargs, containers
      , deepseq, directory, either, haskell-src-exts
@@ -257356,7 +255168,6 @@ self: {
        description = "automated integration of QuickCheck properties into tasty suites";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-jenkins-xml" = callPackage
@@ -257377,7 +255188,6 @@ self: {
        description = "Render tasty output to both console and XML for Jenkins";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-json" = callPackage
@@ -257427,7 +255237,6 @@ self: {
        description = "Test common laws";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-leancheck" = callPackage
@@ -257457,7 +255266,6 @@ self: {
        description = "Tasty TestTrees for Lens validation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-lua" = callPackage
@@ -257589,8 +255397,6 @@ self: {
        ];
        description = "A fancy test runner, including support for golden tests";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tasty-smallcheck" = callPackage
@@ -257777,7 +255583,6 @@ self: {
        description = "Meta tic-tac-toe ncurses game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tau" = callPackage
@@ -257820,7 +255625,6 @@ self: {
        description = "Transactional variables and data structures with IO hooks";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tcache-AWS" = callPackage
@@ -257856,7 +255660,6 @@ self: {
        description = "TokyoCabinet CLI interface";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tce-conf" = callPackage
@@ -257989,7 +255792,6 @@ self: {
        description = "Test framework wrapper";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tdigest" = callPackage
@@ -258032,8 +255834,6 @@ self: {
        ];
        description = "Chart generation from tdigest";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tdlib" = callPackage
@@ -258062,7 +255862,6 @@ self: {
        description = "complete binding to the Telegram Database Library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) tdlib;};
 
   "tdlib-gen" = callPackage
@@ -258092,7 +255891,6 @@ self: {
        description = "Codegen for TDLib";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tdlib-types" = callPackage
@@ -258114,7 +255912,6 @@ self: {
        description = "Types and Functions generated from tdlib api spec";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tdoc" = callPackage
@@ -258209,7 +256006,6 @@ self: {
        description = "Bleeding edge prelude";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "technique" = callPackage
@@ -258336,7 +256132,6 @@ self: {
        description = "Telegram Bot microframework for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "telegram-bot-simple" = callPackage
@@ -258368,8 +256163,6 @@ self: {
        ];
        description = "Easy to use library for building Telegram bots";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "telegram-raw-api" = callPackage
@@ -258395,7 +256188,6 @@ self: {
        description = "Servant bindings to the Telegram bot API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "telegram-types" = callPackage
@@ -258418,7 +256210,6 @@ self: {
        description = "Types used in Telegram bot API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "telegraph" = callPackage
@@ -259006,7 +256797,6 @@ self: {
        description = "Haskell wrappers for Core Tensorflow Ops";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tensorflow-logging" = callPackage
@@ -259036,7 +256826,6 @@ self: {
        description = "TensorBoard related functionality";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tensorflow-mnist" = callPackage
@@ -259121,7 +256910,6 @@ self: {
        description = "Friendly layer around TensorFlow bindings";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tensorflow-proto" = callPackage
@@ -259244,8 +257032,6 @@ self: {
        libraryHaskellDepends = [ base reactive-banana termbox ];
        description = "reactive-banana + termbox";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "termbox-bindings" = callPackage
@@ -259359,7 +257145,6 @@ self: {
        description = "Text data type for styled terminal output, including all standard ANSI effects (bold, italic, blinking) and ANSI / 256 / truecolor colors support for Unix and Windows (whenever possible)";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "termination-combinators" = callPackage
@@ -259381,6 +257166,8 @@ self: {
        pname = "terminfo";
        version = "0.4.1.4";
        sha256 = "170pnql6ycpk6gwy9v28mppm0w2n89l0n6fhnzph2za9kwrs9fqh";
+       revision = "1";
+       editedCabalFile = "0f82h8mj3swx7c2cxls76nzqx0qnibvsncmvqcbc7v5db4mkfmm1";
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ ncurses ];
        description = "Haskell bindings to the terminfo library";
@@ -259437,6 +257224,10 @@ self: {
        ];
        description = "Terminal emulator configurable in Haskell";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+       maintainers = with lib.maintainers; [ cdepillabout ];
      }) {inherit (pkgs) gtk3; inherit (pkgs) pcre2; 
          vte_291 = pkgs.vte;};
 
@@ -259512,7 +257303,6 @@ self: {
        description = "A Haskell GIS Programming Environment";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {terralib4c = null; translib = null;};
 
   "tersmu" = callPackage
@@ -259563,8 +257353,6 @@ self: {
        ];
        description = "Tesla API client";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-fixture" = callPackage
@@ -259739,7 +257527,6 @@ self: {
        description = "test-sandbox support for the test-framework package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-framework-skip" = callPackage
@@ -259872,8 +257659,6 @@ self: {
        ];
        description = "Testing framework";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-lib" = callPackage
@@ -259987,7 +257772,6 @@ self: {
        description = "Lightweight development enviroments using test-sandbox";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-sandbox-hunit" = callPackage
@@ -260000,7 +257784,6 @@ self: {
        description = "HUnit convenience functions for use with test-sandbox";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-sandbox-quickcheck" = callPackage
@@ -260017,7 +257800,6 @@ self: {
        description = "QuickCheck convenience functions for use with test-sandbox";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "test-shouldbe" = callPackage
@@ -260052,7 +257834,6 @@ self: {
        description = "Simple Perl inspired testing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "testCom" = callPackage
@@ -260108,7 +257889,6 @@ self: {
        description = "Create tests and benchmarks together";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "testcontainers" = callPackage
@@ -260325,6 +258105,29 @@ self: {
        license = lib.licenses.gpl2Only;
      }) {};
 
+  "texmath_0_12_3" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , mtl, pandoc-types, parsec, process, split, syb, temporary, text
+     , utf8-string, xml
+     }:
+     mkDerivation {
+       pname = "texmath";
+       version = "0.12.3";
+       sha256 = "0lhbgnswhss56lrp25i70hvmn6zg6xcfwdigfmwjggmhz0h5q88x";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers mtl pandoc-types parsec split syb text xml
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath process temporary text
+         utf8-string xml
+       ];
+       description = "Conversion between formats used to represent mathematics";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "texrunner" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, directory, filepath
      , HUnit, io-streams, lens, mtl, process, semigroups, temporary
@@ -260606,8 +258409,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-icu";
-       version = "0.7.0.1";
-       sha256 = "0y3z5jda7v2iyll2148ivxfd2yhp27d3ryxrspp0cdq394klqxp2";
+       version = "0.7.1.0";
+       sha256 = "0s9gcd9lcrhk92ydhizyk0vbpf542ipc4hj60fa02b2g2x9q93ij";
        libraryHaskellDepends = [ base bytestring deepseq text ];
        librarySystemDepends = [ icu ];
        testHaskellDepends = [
@@ -260870,7 +258673,6 @@ self: {
        description = "Utils for text";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "text-position" = callPackage
@@ -260987,12 +258789,14 @@ self: {
      }:
      mkDerivation {
        pname = "text-replace";
-       version = "0.0.0.6";
-       sha256 = "05hr2185q4rcn1hvrrkqy2sbl8xzk7ij00x61vhvmyk29dbbk2cf";
+       version = "0.1";
+       sha256 = "0jzqq709r4jpbvgkix9ybi6asvhshl0ayz5a4gddrccli5k430n6";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base containers ];
-       executableHaskellDepends = [ base optparse-applicative parsec ];
+       libraryHaskellDepends = [ base containers text ];
+       executableHaskellDepends = [
+         base optparse-applicative parsec text
+       ];
        testHaskellDepends = [ base hedgehog neat-interpolation text ];
        description = "Simple text replacements from a list of search/replace pairs";
        license = lib.licenses.asl20;
@@ -261137,7 +258941,6 @@ self: {
        description = "An efficient finite map from Text to values, based on bytestring-trie";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "text-utf7" = callPackage
@@ -261193,8 +258996,6 @@ self: {
        testHaskellDepends = [ base HTF text ];
        description = "Various text utilities";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "text-xml-generic" = callPackage
@@ -261311,7 +259112,6 @@ self: {
        description = "A simple Haskell program to provide tags for Haskell code completion in TextMate";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "textocat-api" = callPackage
@@ -261441,6 +259241,8 @@ self: {
        pname = "th-abstraction";
        version = "0.4.2.0";
        sha256 = "0h0wl442a82llpjsxv45i7grgyanlzjj7k28mhnvbi2zlb6v41pa";
+       revision = "1";
+       editedCabalFile = "1yc17r29vkwi4qzbrxy1d3gra87hk3ghy1jzfmrl2q8zjc0v59vb";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -261467,7 +259269,6 @@ self: {
        description = "Alpha equivalence for TH Exp";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "th-bang-compat" = callPackage
@@ -261556,7 +259357,6 @@ self: {
        description = "Test instance context";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "th-data-compat" = callPackage
@@ -261754,7 +259554,6 @@ self: {
        description = "A place to collect orphan instances for Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "th-kinds" = callPackage
@@ -261820,6 +259619,8 @@ self: {
        pname = "th-lift";
        version = "0.8.2";
        sha256 = "1r2wrnrn6qwy6ysyfnlqn6xbfckw0b22h8n00pk67bhhg81jfn9s";
+       revision = "1";
+       editedCabalFile = "1l8fsxbxfsgcy6qxlgn6qxwhiqwwmmaj2vb1gbrjyb905gb3lpwm";
        libraryHaskellDepends = [
          base ghc-prim template-haskell th-abstraction
        ];
@@ -262056,7 +259857,6 @@ self: {
        description = "Graph of the subtype relation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "th-utilities" = callPackage
@@ -262118,7 +259918,6 @@ self: {
        description = "Minimalistic actor library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "themoviedb" = callPackage
@@ -262220,7 +260019,6 @@ self: {
        description = "A simple client for the TheoremQuest theorem proving game";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "these" = callPackage
@@ -262326,7 +260124,6 @@ self: {
        description = "Command-line spelling word suggestion tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "thock" = callPackage
@@ -262598,10 +260395,8 @@ self: {
      }:
      mkDerivation {
        pname = "threepenny-gui";
-       version = "0.9.0.0";
-       sha256 = "0mvx661xk3nzvvxcda4vdk2ka7mff8jbpib1x59n230w80bc5sja";
-       revision = "1";
-       editedCabalFile = "0g07sdc3r1cg16m5nbhwaa95zr7kbzag60f8han5pnp67c79n67i";
+       version = "0.9.1.0";
+       sha256 = "00sjkfa9qfnnwqfdw68yb8hq6nm1y5qv9896rzn5aachr7mlfpx2";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -262741,8 +260536,8 @@ self: {
        pname = "through-text";
        version = "0.1.0.0";
        sha256 = "1kdl36n98kajaa7v7js2sy8bi09p8rrxmlfcclcfc1l92bd2aclk";
-       revision = "5";
-       editedCabalFile = "1fdy2wyczl2jncy9gg0asasb8bybcnif8aqnw9fq73sr1778kjpf";
+       revision = "6";
+       editedCabalFile = "12mqlm77g0fymx3xwlkf6s9nqivcf78szhrzkvssi7lq1lqq9lbc";
        libraryHaskellDepends = [ base bytestring case-insensitive text ];
        description = "Convert textual types through Text without needing O(n^2) instances";
        license = lib.licenses.bsd3;
@@ -262817,7 +260612,6 @@ self: {
        description = "Image thumbnail creation";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "thyme" = callPackage
@@ -262886,6 +260680,7 @@ self: {
        description = "A desktop bar based on WebKit";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) gtk3; inherit (pkgs) webkitgtk;};
 
   "tibetan-utils" = callPackage
@@ -262919,7 +260714,6 @@ self: {
        description = "Useful if reading \"Why FP matters\" by John Hughes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ticker" = callPackage
@@ -262957,7 +260751,6 @@ self: {
        description = "A port of @Data.Binary@";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tictactoe3d" = callPackage
@@ -262980,28 +260773,6 @@ self: {
      }:
      mkDerivation {
        pname = "tidal";
-       version = "1.7.3";
-       sha256 = "0z0brlicisn7xpwag20vdrq6ympczxcyd886pm6am5phmifkmfif";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         base bifunctors bytestring clock colour containers deepseq hosc
-         network parsec primitive random text transformers
-       ];
-       testHaskellDepends = [
-         base containers deepseq hosc microspec parsec
-       ];
-       benchmarkHaskellDepends = [ base criterion weigh ];
-       description = "Pattern language for improvised music";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "tidal_1_7_4" = callPackage
-    ({ mkDerivation, base, bifunctors, bytestring, clock, colour
-     , containers, criterion, deepseq, hosc, microspec, network, parsec
-     , primitive, random, text, transformers, weigh
-     }:
-     mkDerivation {
-       pname = "tidal";
        version = "1.7.4";
        sha256 = "080zncw6gp0dzwm9vd82c789v1x00nfzz8r1ldb4hl67v04jf8hi";
        enableSeparateDataOutput = true;
@@ -263015,7 +260786,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion weigh ];
        description = "Pattern language for improvised music";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "tidal-midi" = callPackage
@@ -263049,7 +260819,6 @@ self: {
        description = "Serial support for tidal";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tidal-vis" = callPackage
@@ -263164,7 +260933,26 @@ self: {
        description = "Tiny and Incrementally-Growing HTTP library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "tikzsd" = callPackage
+    ({ mkDerivation, array, base, containers, lens, mtl, parsec
+     , transformers
+     }:
+     mkDerivation {
+       pname = "tikzsd";
+       version = "1.0.0";
+       sha256 = "1y2pxbmm22dmrvgsqv2gvy3nf8vh3ln5pinrfsbim8qk1qfayina";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base containers lens mtl parsec transformers
+       ];
+       executableHaskellDepends = [
+         array base containers lens mtl parsec transformers
+       ];
+       description = "A program for generating LaTeX code of string diagrams";
+       license = lib.licenses.mit;
      }) {};
 
   "tile" = callPackage
@@ -263208,25 +260996,23 @@ self: {
        description = "The Timber Compiler";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
-  "time_1_11_1_1" = callPackage
+  "time_1_11_1_2" = callPackage
     ({ mkDerivation, base, criterion, deepseq, QuickCheck, random
-     , tasty, tasty-hunit, tasty-quickcheck, unix
+     , tasty, tasty-hunit, tasty-quickcheck
      }:
      mkDerivation {
        pname = "time";
-       version = "1.11.1.1";
-       sha256 = "0xrs9j4fskxz98zgwhgh7w4d9a6im3ipahg6ahp0689qhs61cx9p";
+       version = "1.11.1.2";
+       sha256 = "0r33rxxrrpyzxpdihky93adlpdj0r8k6wh2i1sx0nb7zhvfnfj27";
        libraryHaskellDepends = [ base deepseq ];
        testHaskellDepends = [
          base deepseq QuickCheck random tasty tasty-hunit tasty-quickcheck
-         unix
        ];
        benchmarkHaskellDepends = [ base criterion deepseq ];
        description = "A time library";
-       license = lib.licenses.bsd3;
+       license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
      }) {};
 
@@ -263264,6 +261050,27 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "time-compat_1_9_6" = callPackage
+    ({ mkDerivation, base, base-compat, base-orphans, deepseq, hashable
+     , HUnit, QuickCheck, tagged, tasty, tasty-hunit, tasty-quickcheck
+     , time
+     }:
+     mkDerivation {
+       pname = "time-compat";
+       version = "1.9.6";
+       sha256 = "0k466nyn7v8g3lx0gjfq6hzs4gmm4ws2wcm7xqyw48fmn55pb5rx";
+       libraryHaskellDepends = [
+         base base-orphans deepseq hashable time
+       ];
+       testHaskellDepends = [
+         base base-compat deepseq hashable HUnit QuickCheck tagged tasty
+         tasty-hunit tasty-quickcheck time
+       ];
+       description = "Compatibility package for time";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "time-extras" = callPackage
     ({ mkDerivation, base, time }:
      mkDerivation {
@@ -263297,7 +261104,6 @@ self: {
        description = "Yet another time library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "time-http" = callPackage
@@ -263322,7 +261128,6 @@ self: {
        description = "Parse and format HTTP/1.1 Date and Time strings";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "time-interval" = callPackage
@@ -263346,7 +261151,6 @@ self: {
        description = "IO Access for time";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "time-lens" = callPackage
@@ -263602,7 +261406,6 @@ self: {
        description = "Distributed systems execution emulation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "timecalc" = callPackage
@@ -263836,7 +261639,6 @@ self: {
        description = "Prints timestamps after each line evaluated";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "timer-wheel" = callPackage
@@ -264086,7 +261888,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "timing-convenience" = callPackage
@@ -264168,7 +261969,6 @@ self: {
        description = "TinyMesh - communicating with auto-meshing sensor network";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tinyXml" = callPackage
@@ -264263,7 +262063,6 @@ self: {
        description = "Convert from Haskell to Tip";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tip-lib" = callPackage
@@ -264288,7 +262087,6 @@ self: {
        description = "tons of inductive problems - support library and tools";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tiphys" = callPackage
@@ -264334,7 +262132,6 @@ self: {
        description = "Testing Infrastructure for Temporal AbstractioNs - GUI to debug temporal programs";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "titan-debug-yampa" = callPackage
@@ -264468,16 +262265,18 @@ self: {
 
   "tlex" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, containers, doctest
-     , hspec, hspec-discover, QuickCheck, tlex-core
+     , enummapset-th, hspec, hspec-discover, QuickCheck, tlex-core
      }:
      mkDerivation {
        pname = "tlex";
-       version = "0.2.0.0";
-       sha256 = "0ad2zxlwrkpz2lgqp9lyj4aaq0nicj8vxfys0hn63cv23arwr0cc";
+       version = "0.3.0.0";
+       sha256 = "1sbs6zxa6x2isxvynlqjf8rgy0y1syr6svvgb22bj43qsg3p3vnx";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [ base containers tlex-core ];
+       libraryHaskellDepends = [
+         base containers enummapset-th tlex-core
+       ];
        testHaskellDepends = [
-         base containers doctest hspec QuickCheck tlex-core
+         base containers doctest enummapset-th hspec QuickCheck tlex-core
        ];
        testToolDepends = [ hspec-discover ];
        description = "A lexer generator";
@@ -264486,20 +262285,21 @@ self: {
 
   "tlex-core" = callPackage
     ({ mkDerivation, array, base, Cabal, cabal-doctest, containers
-     , doctest, hashable, hspec, hspec-discover, QuickCheck
-     , transformers, unordered-containers
+     , doctest, enummapset-th, hashable, hspec, hspec-discover
+     , QuickCheck, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "tlex-core";
-       version = "0.2.1.0";
-       sha256 = "1qjzxsz7rl1fmfp1yzc2cdxjwz9nwjrxz6d18023cz41v1jympzq";
+       version = "0.3.0.0";
+       sha256 = "0nmxy35xxz6d2i7hcci68cwv9fm1ffsg00n9minaqgkwcyrk2qba";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
-         array base containers hashable transformers unordered-containers
+         array base containers enummapset-th hashable transformers
+         unordered-containers
        ];
        testHaskellDepends = [
-         array base containers doctest hashable hspec QuickCheck
-         transformers unordered-containers
+         array base containers doctest enummapset-th hashable hspec
+         QuickCheck transformers unordered-containers
        ];
        testToolDepends = [ hspec-discover ];
        description = "A lexer generator";
@@ -264508,20 +262308,20 @@ self: {
 
   "tlex-debug" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, containers, doctest
-     , hspec, hspec-discover, QuickCheck, tlex, tlex-core
+     , enummapset-th, hspec, hspec-discover, QuickCheck, tlex, tlex-core
      , unordered-containers
      }:
      mkDerivation {
        pname = "tlex-debug";
-       version = "0.2.0.0";
-       sha256 = "0qj1wcdg9spf7vfwmpkqp5z74qzh9xkb4m6gv0v015krr8qvwc01";
+       version = "0.3.0.0";
+       sha256 = "012554saxmnqfm1rvgjgzn7aakvp1ai95xpavr6b3h1pqy63md6s";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
-         base containers tlex tlex-core unordered-containers
+         base containers enummapset-th tlex tlex-core unordered-containers
        ];
        testHaskellDepends = [
-         base containers doctest hspec QuickCheck tlex tlex-core
-         unordered-containers
+         base containers doctest enummapset-th hspec QuickCheck tlex
+         tlex-core unordered-containers
        ];
        testToolDepends = [ hspec-discover ];
        description = "Debug utilities for Tlex";
@@ -264530,16 +262330,20 @@ self: {
 
   "tlex-encoding" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, charset, containers
-     , doctest, hspec, hspec-discover, QuickCheck, tlex, tlex-core
+     , doctest, enummapset-th, hspec, hspec-discover, QuickCheck, tlex
+     , tlex-core
      }:
      mkDerivation {
        pname = "tlex-encoding";
-       version = "0.2.0.0";
-       sha256 = "0krisx0fh85dccgcw6y1b3b1q2brwqz75hqg6r7w39rn0w7b5xm7";
+       version = "0.3.0.0";
+       sha256 = "1ip1zfjfn5jw817i4q8cav98d261jq7h00qaxfsmkcv7kqiqzbac";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [ base charset containers tlex tlex-core ];
+       libraryHaskellDepends = [
+         base charset containers enummapset-th tlex tlex-core
+       ];
        testHaskellDepends = [
-         base charset containers doctest hspec QuickCheck tlex tlex-core
+         base charset containers doctest enummapset-th hspec QuickCheck tlex
+         tlex-core
        ];
        testToolDepends = [ hspec-discover ];
        description = "Encoding plugin for Tlex";
@@ -264548,20 +262352,21 @@ self: {
 
   "tlex-th" = callPackage
     ({ mkDerivation, array, base, Cabal, cabal-doctest, containers
-     , doctest, ghc-prim, hspec, hspec-discover, QuickCheck
-     , template-haskell, tlex, tlex-core
+     , doctest, enummapset-th, ghc-prim, hspec, hspec-discover
+     , QuickCheck, template-haskell, tlex, tlex-core
      }:
      mkDerivation {
        pname = "tlex-th";
-       version = "0.2.0.1";
-       sha256 = "19hlj81rxnki90imiz4zjklfl4ffbpkkd9iycq4wbj92i9vw4n8v";
+       version = "0.3.0.0";
+       sha256 = "1fhp2md3v2n51irivgdij5zdql1lx8iay9yvsrmj9nhvlfjq2b4g";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
-         array base containers ghc-prim template-haskell tlex tlex-core
+         array base containers enummapset-th ghc-prim template-haskell tlex
+         tlex-core
        ];
        testHaskellDepends = [
-         array base containers doctest ghc-prim hspec QuickCheck
-         template-haskell tlex tlex-core
+         array base containers doctest enummapset-th ghc-prim hspec
+         QuickCheck template-haskell tlex tlex-core
        ];
        testToolDepends = [ hspec-discover ];
        description = "TemplateHaskell plugin for Tlex";
@@ -264632,7 +262437,6 @@ self: {
        description = "TLS extra default values and helpers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tls-session-manager" = callPackage
@@ -264670,8 +262474,6 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Handle phylogenetic trees";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tmapchan" = callPackage
@@ -264782,7 +262584,6 @@ self: {
        description = "A simple daily journal program";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tnet" = callPackage
@@ -264857,7 +262658,6 @@ self: {
        description = "Instances for the ToString class";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "toboggan" = callPackage
@@ -264877,7 +262677,6 @@ self: {
        description = "Twitter bot generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "todo" = callPackage
@@ -264917,7 +262716,6 @@ self: {
        description = "Easy-to-use TODOs manager";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tofromxml" = callPackage
@@ -265120,7 +262918,6 @@ self: {
        executableHaskellDepends = [ base bytestring gf iconv ];
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tokyocabinet-haskell" = callPackage
@@ -265343,8 +263140,6 @@ self: {
        ];
        description = "tonatona plugin for google-server-api";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tonatona-logger" = callPackage
@@ -265470,7 +263265,6 @@ self: {
        description = "Cluster single cells and analyze cell clade relationships";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "toodles" = callPackage
@@ -265550,7 +263344,21 @@ self: {
        description = "Top (typed oriented protocol) API";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "tophat" = callPackage
+    ({ mkDerivation, base, filepath, hspec, profunctors, text }:
+     mkDerivation {
+       pname = "tophat";
+       version = "1.0.0.0";
+       sha256 = "0zwhik8x2z1kbyv873kvdbnzyyg4f6qky1gw03icarxan9553s7m";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base profunctors text ];
+       executableHaskellDepends = [ base filepath text ];
+       testHaskellDepends = [ base hspec profunctors text ];
+       description = "Template-to-Haskell preprocessor, and templating language";
+       license = lib.licenses.gpl3Only;
      }) {};
 
   "topkata" = callPackage
@@ -265570,7 +263378,6 @@ self: {
        description = "OpenGL Arcade Game";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "topograph" = callPackage
@@ -265649,6 +263456,7 @@ self: {
        libraryHaskellDepends = [ base void ];
        description = "Exhaustive pattern matching using lenses, traversals, and prisms";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "total-alternative" = callPackage
@@ -265672,7 +263480,6 @@ self: {
        description = "Finitely represented total maps";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "total-maps" = callPackage
@@ -265752,7 +263559,6 @@ self: {
        description = "A Tox protocol implementation in Haskell";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "toxcore-c" = callPackage
@@ -265779,7 +263585,6 @@ self: {
        description = "Haskell bindings to the C reference implementation of Tox";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {toxcore = null;};
 
   "toxiproxy-haskell" = callPackage
@@ -265821,8 +263626,8 @@ self: {
        pname = "toysolver";
        version = "0.7.0";
        sha256 = "1r8z8fg3iyz5cc7cmwv29i7gwdcb789s7p6yklfgmz8w314m83gj";
-       revision = "1";
-       editedCabalFile = "1gnpyqjrcpsc2qjnnajr77j5x0xnyxpsmcxqa2qfbahw0r9qvmfw";
+       revision = "2";
+       editedCabalFile = "0ccdmmckw9gkqxvr8f8h84m4mybcpbmrv1yv0kvbl1qhrb01ihli";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -265857,7 +263662,6 @@ self: {
        description = "Assorted decision procedures for SAT, SMT, Max-SAT, PB, MIP, etc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tpar" = callPackage
@@ -265895,7 +263699,6 @@ self: {
        description = "simple, parallel job scheduling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tpb" = callPackage
@@ -265922,7 +263725,6 @@ self: {
        description = "Applications for interacting with the Pushbullet API";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tpdb" = callPackage
@@ -266074,8 +263876,6 @@ self: {
        ];
        description = "Distributed tracing";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tracing-control" = callPackage
@@ -266269,7 +264069,6 @@ self: {
        description = "Tools and a library for working with Trajectory";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trans-fx-core" = callPackage
@@ -266354,7 +264153,6 @@ self: {
        description = "Text transformer and interpreter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "transfer-db" = callPackage
@@ -266384,7 +264182,6 @@ self: {
        description = "ODBC database transfer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "transformations" = callPackage
@@ -266406,7 +264203,6 @@ self: {
        description = "Generic representation of tree transformations";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "transformers_0_5_6_2" = callPackage
@@ -266517,7 +264313,6 @@ self: {
        description = "Sensible conversions between some of the monad transformers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "transformers-eff" = callPackage
@@ -266645,6 +264440,8 @@ self: {
        ];
        description = "composing programs with multithreading, events and distributed computing";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "transient-universe" = callPackage
@@ -266699,7 +264496,6 @@ self: {
        description = "transient with secure communications";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "translatable-intset" = callPackage
@@ -266767,7 +264563,6 @@ self: {
        description = "Type Safe Web Routing";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trasa-client" = callPackage
@@ -266785,7 +264580,6 @@ self: {
        description = "Type safe http requests";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trasa-extra" = callPackage
@@ -266804,7 +264598,6 @@ self: {
        description = "Extra functions for trasa";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trasa-form" = callPackage
@@ -266824,7 +264617,6 @@ self: {
        description = "generate forms using lucid, ditto and trasa";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trasa-reflex" = callPackage
@@ -266859,7 +264651,6 @@ self: {
        description = "Type safe web server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trasa-th" = callPackage
@@ -266877,7 +264668,6 @@ self: {
        description = "Template Haskell to generate trasa routes";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "traversal-template" = callPackage
@@ -267336,7 +265126,6 @@ self: {
        description = "Treemap related commands for producing foldable TreeMap HTML";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "treersec" = callPackage
@@ -267418,7 +265207,6 @@ self: {
        description = "A PostgreSQL Database Migrator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trek-db" = callPackage
@@ -267443,7 +265231,6 @@ self: {
        description = "A PostgreSQL Database Migrator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trek-lens" = callPackage
@@ -267538,7 +265325,6 @@ self: {
        description = "triangulation of polygons";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trie-simple" = callPackage
@@ -267588,7 +265374,6 @@ self: {
        description = "Various trie implementations in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trifecta" = callPackage
@@ -267667,7 +265452,6 @@ self: {
        description = "Search for, annotate and trim poly-A tail";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tripLL" = callPackage
@@ -267723,13 +265507,11 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "trivial-constraint";
-       version = "0.6.0.0";
-       sha256 = "0y0iyll7ml5qz271cqa0dc3w2j3w1d8jjaxwaf2flcidigws69z5";
+       version = "0.7.0.0";
+       sha256 = "0kyjifqfjf4lmrba4fb65m82s8qqv2nld9lj0qvh2qxc8bfw4hj7";
        libraryHaskellDepends = [ base ];
        description = "Constraints that any type, resp. no type fulfills";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tropical" = callPackage
@@ -267799,7 +265581,6 @@ self: {
        description = "Audio file compressor-limiter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "trurl" = callPackage
@@ -267823,7 +265604,6 @@ self: {
        description = "Haskell template code generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "truthful" = callPackage
@@ -267864,7 +265644,6 @@ self: {
        description = "A Transaction Framework for Happstack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tsetchan" = callPackage
@@ -268072,7 +265851,6 @@ self: {
        description = "An API binding Web.Spock to Database.Beam";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ttask" = callPackage
@@ -268274,7 +266052,6 @@ self: {
        description = "A simple tun/tap library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tup-functor" = callPackage
@@ -268290,7 +266067,6 @@ self: {
        description = "Homogeneous tuples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tuple" = callPackage
@@ -268365,7 +266141,6 @@ self: {
        description = "Morph between tuples, or convert them from and to HLists";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tuple-ops" = callPackage
@@ -268378,7 +266153,6 @@ self: {
        description = "various operations on n-ary tuples via GHC.Generics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tuple-sop" = callPackage
@@ -268499,7 +266273,6 @@ self: {
        description = "An implementation of Turing Machine and Automaton";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "turkish-deasciifier" = callPackage
@@ -268562,6 +266335,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion text ];
        description = "Shell programming, Haskell-style";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "turtle-options" = callPackage
@@ -268595,6 +266369,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "twain" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive, cookie
+     , either, http-types, text, time, transformers, wai, wai-extra
+     , warp
+     }:
+     mkDerivation {
+       pname = "twain";
+       version = "1.0.0.0";
+       sha256 = "0brxvqddnhxs4q5hm9g8fzkznk3xjagivy0glfiqrx24p4k8s9yb";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive cookie either http-types
+         text time transformers wai wai-extra warp
+       ];
+       description = "Tiny web application framework for WAI";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "tweak" = callPackage
     ({ mkDerivation, base, containers, lens, stm, transformers }:
      mkDerivation {
@@ -268623,8 +266414,6 @@ self: {
        ];
        description = "An equational theorem prover";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twee-lib" = callPackage
@@ -268668,8 +266457,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion megaparsec ];
        description = "Command-line tool for twitter";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp" = callPackage
@@ -268699,7 +266486,6 @@ self: {
        description = "Used as Lab Assignments Environment at the University of Twente";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp-eventloop-trees" = callPackage
@@ -268712,7 +266498,6 @@ self: {
        description = "Tree type and show functions for lab assignment of University of Twente. Contains RoseTree and RedBlackTree";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp-graphs" = callPackage
@@ -268725,7 +266510,6 @@ self: {
        description = "Lab Assignments Environment at Univeriteit Twente";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp-number" = callPackage
@@ -268752,7 +266536,6 @@ self: {
        description = "RoseTree type and show functions for lab assignment of University of Twente";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp-trees" = callPackage
@@ -268765,7 +266548,6 @@ self: {
        description = "Tree type and show functions for lab assignment of University of Twente. Contains RoseTree and ParseTree";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twentefp-websockets" = callPackage
@@ -268816,7 +266598,6 @@ self: {
        description = "Rubik's cube solver";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twfy-api-client" = callPackage
@@ -268897,7 +266678,6 @@ self: {
        description = "Unix Command-Line Twitter and Identica Client";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twilight-stm" = callPackage
@@ -268910,7 +266690,6 @@ self: {
        description = "STM library with safe irrevocable I/O and inconsistency repair";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twilio" = callPackage
@@ -268958,7 +266737,6 @@ self: {
        description = "Twilio API interaction";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twiml" = callPackage
@@ -269070,7 +266848,6 @@ self: {
        description = "A Haskell-based CLI Twitter client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twitter-conduit" = callPackage
@@ -269101,8 +266878,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Twitter API package with conduit interface and Streaming API support";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twitter-enumerator" = callPackage
@@ -269122,7 +266897,6 @@ self: {
        description = "Twitter API package with enumerator interface and Streaming API support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "twitter-feed" = callPackage
@@ -269217,8 +266991,6 @@ self: {
        testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
        description = "Text";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "txt-sushi" = callPackage
@@ -269333,7 +267105,6 @@ self: {
        description = "Runtime type assertions for testing";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-booleans" = callPackage
@@ -269361,7 +267132,6 @@ self: {
        description = "Utilities for caching type families results. Sometimes complex type families take long time to compile, so it is proficient to cache them and use the final result without the need of re-computation.";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-cereal" = callPackage
@@ -269379,7 +267149,6 @@ self: {
        description = "Type-level serialization of type constructors";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-combinators" = callPackage
@@ -269411,7 +267180,6 @@ self: {
        description = "Quasiquoters for the 'type-combinators' package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-combinators-singletons" = callPackage
@@ -269424,7 +267192,6 @@ self: {
        description = "Interop between /type-combinators/ and /singletons/";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-digits" = callPackage
@@ -269437,7 +267204,6 @@ self: {
        description = "Arbitrary-base type-level digits";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-eq" = callPackage
@@ -269854,7 +267620,6 @@ self: {
        description = "Type-level comparison operator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-ord-spine-cereal" = callPackage
@@ -269871,7 +267636,6 @@ self: {
        description = "Generic type-level comparison of types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-prelude" = callPackage
@@ -269898,7 +267662,6 @@ self: {
        description = "Type-level sets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-settheory" = callPackage
@@ -269968,7 +267731,6 @@ self: {
        description = "Type structure analysis";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-sub-th" = callPackage
@@ -269994,7 +267756,6 @@ self: {
        description = "Substitute types for other types with Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "type-tree" = callPackage
@@ -270163,7 +267924,6 @@ self: {
        description = "Bridge between encoding and typed-encoding packages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typed-process" = callPackage
@@ -270203,7 +267963,7 @@ self: {
        description = "Typed and composable spreadsheets";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
   "typed-streams" = callPackage
@@ -270226,26 +267986,23 @@ self: {
        description = "A stream based replacement for lists";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
-  "typed-uuid" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, deepseq, hashable
-     , http-api-data, random, text, uuid, validity, validity-uuid
-     }:
+  "typed-time" = callPackage
+    ({ mkDerivation, base, hspec, hspec-core, time }:
      mkDerivation {
-       pname = "typed-uuid";
-       version = "0.0.0.2";
-       sha256 = "01gh95cxymimjyvhpba0w5bzw6vnx9jzgc6a5jj7vqxi421cc7ss";
-       libraryHaskellDepends = [
-         aeson base binary bytestring deepseq hashable http-api-data random
-         text uuid validity validity-uuid
-       ];
-       description = "Phantom-Typed version of UUID";
-       license = lib.licenses.mit;
+       pname = "typed-time";
+       version = "0.1.0.0";
+       sha256 = "0fk8zb198i5xfwrc820br8hh1nfcqcrzyzkyf0srijjf88m92y27";
+       libraryHaskellDepends = [ base time ];
+       testHaskellDepends = [ base hspec hspec-core time ];
+       description = "A strongly typed way to handle time and date formats";
+       license = lib.licenses.isc;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
-  "typed-uuid_0_1_0_0" = callPackage
+  "typed-uuid" = callPackage
     ({ mkDerivation, aeson, base, binary, bytestring, deepseq, hashable
      , http-api-data, random, text, uuid, validity, validity-uuid
      , yamlparse-applicative
@@ -270260,7 +268017,6 @@ self: {
        ];
        description = "Phantom-Typed version of UUID";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "typed-wire" = callPackage
@@ -270366,7 +268122,6 @@ self: {
        description = "Useful type level operations (type families and related operators)";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typelevel-rewrite-rules" = callPackage
@@ -270384,7 +268139,6 @@ self: {
        description = "Solve type equalities using custom type-level rewrite rules";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typelevel-tensor" = callPackage
@@ -270439,8 +268193,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Type level numbers using existing Nat functionality";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typeof" = callPackage
@@ -270563,7 +268315,6 @@ self: {
        description = "A documentation generator for TypeScript Definition files";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typical" = callPackage
@@ -270641,7 +268392,6 @@ self: {
        description = "Typson Beam Integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typson-core" = callPackage
@@ -270682,7 +268432,6 @@ self: {
        description = "Typson Esqueleto Integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "typson-selda" = callPackage
@@ -270706,7 +268455,6 @@ self: {
        description = "Typson Selda Integration";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "tyro" = callPackage
@@ -270796,7 +268544,6 @@ self: {
        description = "Haskell Universal Two Factor helper toolbox library thing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uAgda" = callPackage
@@ -270875,7 +268622,6 @@ self: {
        description = "Uber client for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uberlast" = callPackage
@@ -270919,7 +268665,6 @@ self: {
        description = "The Ucam-Webauth protocol, used by Raven";
        license = "(BSD-3-Clause OR Apache-2.0)";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ucam-webauth-types" = callPackage
@@ -271126,7 +268871,6 @@ self: {
        description = "Part of UHC packaged as cabal/hackage installable library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uhc-util" = callPackage
@@ -271147,7 +268891,6 @@ self: {
        description = "UHC utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uhexdump" = callPackage
@@ -271265,6 +269008,8 @@ self: {
        ];
        description = "Implementation of ULID - Universally Unique Lexicographically Sortable Identifier";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "una" = callPackage
@@ -271300,7 +269045,6 @@ self: {
        description = "A fast, cache-efficient, concurrent bloom filter";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unagi-chan" = callPackage
@@ -271400,7 +269144,6 @@ self: {
        description = "Generic support for programming with names and binders";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unbound-generics" = callPackage
@@ -271615,8 +269358,6 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "Tiny package providing unescaping versions of show and print";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unexceptionalio" = callPackage
@@ -271675,6 +269416,8 @@ self: {
        ];
        description = "Class of data structures that can be unfolded";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "unfoldable-restricted" = callPackage
@@ -271691,6 +269434,7 @@ self: {
        ];
        description = "An alternative to the Unfoldable typeclass";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ungadtagger" = callPackage
@@ -271714,7 +269458,6 @@ self: {
        description = "Event handling for the uniform workbench";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-graphs" = callPackage
@@ -271731,7 +269474,6 @@ self: {
        description = "Graphs";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-htk" = callPackage
@@ -271749,7 +269491,6 @@ self: {
        description = "Graphical User Interface for Haskell Programs";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-posixutil" = callPackage
@@ -271766,7 +269507,6 @@ self: {
        description = "Posix utilities for the uniform workbench";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-reactor" = callPackage
@@ -271782,7 +269522,6 @@ self: {
        description = "Reactors for the uniform workbench";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-uDrawGraph" = callPackage
@@ -271800,7 +269539,6 @@ self: {
        description = "Graphs binding";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uni-util" = callPackage
@@ -271836,22 +269574,25 @@ self: {
      }) {};
 
   "unicode-collation" = callPackage
-    ({ mkDerivation, base, binary, bytestring, bytestring-lexing
-     , containers, filepath, parsec, QuickCheck, quickcheck-instances
-     , tasty, tasty-bench, tasty-hunit, template-haskell, text, text-icu
+    ({ mkDerivation, base, binary, bytestring, containers, parsec
+     , QuickCheck, quickcheck-instances, tasty, tasty-bench, tasty-hunit
+     , tasty-quickcheck, template-haskell, text, text-icu
      , th-lift-instances, unicode-transforms
      }:
      mkDerivation {
        pname = "unicode-collation";
-       version = "0.1.2";
-       sha256 = "1q77rd3d2c1r5d35f0z1mhismc3rf8bg1dwfg32wvdd9hpszc52v";
+       version = "0.1.3";
+       sha256 = "0nbxkpd29ivdi6vcikbaasffkcz9m2vd4nhv29p6gmvckzmhj7zi";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base binary bytestring bytestring-lexing containers filepath parsec
-         template-haskell text th-lift-instances unicode-transforms
+         base binary bytestring containers parsec template-haskell text
+         th-lift-instances
+       ];
+       testHaskellDepends = [
+         base bytestring tasty tasty-hunit tasty-quickcheck text
+         unicode-transforms
        ];
-       testHaskellDepends = [ base bytestring tasty tasty-hunit text ];
        benchmarkHaskellDepends = [
          base QuickCheck quickcheck-instances tasty-bench text text-icu
        ];
@@ -271901,7 +269642,6 @@ self: {
        description = "Unicode normalization using the ICU library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) icu;};
 
   "unicode-prelude" = callPackage
@@ -271980,15 +269720,17 @@ self: {
      }) {};
 
   "unicode-tricks" = callPackage
-    ({ mkDerivation, base, data-default, hspec, hspec-discover
-     , QuickCheck, text
+    ({ mkDerivation, base, containers, data-default, hashable, hspec
+     , hspec-discover, QuickCheck, text
      }:
      mkDerivation {
        pname = "unicode-tricks";
-       version = "0.8.0.0";
-       sha256 = "1ilbl1f5kigb09n1a8nkm484sjyvi7k3wnga6gj5jgss00xj4xfb";
-       libraryHaskellDepends = [ base data-default QuickCheck text ];
-       testHaskellDepends = [ base hspec QuickCheck ];
+       version = "0.10.1.0";
+       sha256 = "0f9giqhd4jjqdd0wcbrrd8f01bhqv25m13ss3f1jfaaacaiylpam";
+       libraryHaskellDepends = [
+         base containers data-default hashable QuickCheck text
+       ];
+       testHaskellDepends = [ base hashable hspec QuickCheck ];
        testToolDepends = [ hspec-discover ];
        description = "Functions to work with unicode blocks more convenient";
        license = lib.licenses.bsd3;
@@ -272041,6 +269783,55 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "uniform-algebras" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "uniform-algebras";
+       version = "0.1.0";
+       sha256 = "19grz10hagzi8x9am59i6jifm1zjf31698k8r4l7bbhyww4w6p91";
+       libraryHaskellDepends = [ base ];
+       description = "Pointless functions and a simplistic zero and monoid";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-error" = callPackage
+    ({ mkDerivation, base, monads-tf, safe, uniform-strings }:
+     mkDerivation {
+       pname = "uniform-error";
+       version = "0.1.0";
+       sha256 = "1ap8wrnh08yvv9hwd92mp1g5fz4g7l0aij1h0hfl3j7ijd028pmx";
+       libraryHaskellDepends = [ base monads-tf safe uniform-strings ];
+       description = "Handling errors in the uniform framework";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-fileio" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, directory, exceptions
+     , filepath, HTF, monads-tf, path, path-io, pipes, pureMD5
+     , quickcheck-text, safe, test-invariant, text, uniform-algebras
+     , uniform-error, uniform-strings, uniform-time, unix, zlib
+     }:
+     mkDerivation {
+       pname = "uniform-fileio";
+       version = "0.1.0";
+       sha256 = "0rxhjn4qv2dbdycdfqblymyfj3wax586ar77zwdgkyld7v7s12ya";
+       libraryHaskellDepends = [
+         base bytestring deepseq directory exceptions filepath monads-tf
+         path path-io pipes pureMD5 safe text uniform-algebras uniform-error
+         uniform-strings uniform-time unix zlib
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq directory exceptions filepath HTF monads-tf
+         path path-io pipes pureMD5 quickcheck-text safe test-invariant text
+         uniform-algebras uniform-error uniform-strings uniform-time unix
+         zlib
+       ];
+       description = "Uniform file handling operations";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "uniform-io" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, Cabal
      , data-default-class, interruptible, iproute, monad-control
@@ -272059,7 +269850,6 @@ self: {
        description = "Uniform IO over files, network, anything";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) openssl;};
 
   "uniform-pair" = callPackage
@@ -272078,6 +269868,56 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "uniform-strings" = callPackage
+    ({ mkDerivation, base, bytestring, MissingH, monads-tf, network-uri
+     , pretty-show, safe, snap-core, split, text, text-icu
+     , uniform-algebras
+     }:
+     mkDerivation {
+       pname = "uniform-strings";
+       version = "0.1.0";
+       sha256 = "17w04fxx81gk02xl7ca64amc0hb06i77fbanhykp3qd70nd2k8ix";
+       libraryHaskellDepends = [
+         base bytestring MissingH monads-tf network-uri pretty-show safe
+         snap-core split text text-icu uniform-algebras
+       ];
+       description = "Manipulate and convert strings of characters uniformly and consistently";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniform-time" = callPackage
+    ({ mkDerivation, base, convertible, monads-tf, time
+     , uniform-algebras, uniform-error, uniform-strings
+     }:
+     mkDerivation {
+       pname = "uniform-time";
+       version = "0.1.0";
+       sha256 = "08p40xl4zzswhax3i6j4ps0zy2m9qsbcpj4b00xvizc3g9fxnzsh";
+       libraryHaskellDepends = [
+         base convertible monads-tf time uniform-algebras uniform-error
+         uniform-strings
+       ];
+       description = "Time in the uniform framework";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "uniformBase" = callPackage
+    ({ mkDerivation, base, uniform-algebras, uniform-error
+     , uniform-fileio, uniform-strings, uniform-time
+     }:
+     mkDerivation {
+       pname = "uniformBase";
+       version = "0.1.0";
+       sha256 = "1ya87jzfmzldd66rwxrccidkrpknqws5rslq9zdsjcdngn2w0sa9";
+       libraryHaskellDepends = [
+         base uniform-algebras uniform-error uniform-fileio uniform-strings
+         uniform-time
+       ];
+       description = "A uniform base to build apps on";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "union" = callPackage
     ({ mkDerivation, base, criterion, deepseq, hashable, lens
      , profunctors, tagged, vinyl
@@ -272094,8 +269934,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq lens ];
        description = "Extensible type-safe unions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "union-find" = callPackage
@@ -272350,7 +270188,6 @@ self: {
        description = "Usage examples for the uniqueness-periods-vector series of packages";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uniqueness-periods-vector-filters" = callPackage
@@ -272623,8 +270460,6 @@ self: {
        ];
        description = "A class for finite and recursively enumerable types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universe-base" = callPackage
@@ -272662,8 +270497,6 @@ self: {
        libraryHaskellDepends = [ base universe-base ];
        description = "Universe instances for types from the base package";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universe-instances-extended" = callPackage
@@ -272681,8 +270514,6 @@ self: {
        ];
        description = "Universe instances for types from selected extra packages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universe-instances-trans" = callPackage
@@ -272696,8 +270527,6 @@ self: {
        libraryHaskellDepends = [ base universe-base ];
        description = "Universe instances for types from the transformers and mtl packages";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universe-reverse-instances" = callPackage
@@ -272749,7 +270578,6 @@ self: {
        description = "Construct a Dec's ancestor list";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universum" = callPackage
@@ -272825,7 +270653,6 @@ self: {
        description = "Comprehensive bindings to fcntl(2)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unix-handle" = callPackage
@@ -272933,7 +270760,6 @@ self: {
        description = "Straightforward bindings to the posix API";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unix-time" = callPackage
@@ -273039,8 +270865,33 @@ self: {
      }:
      mkDerivation {
        pname = "unliftio";
-       version = "0.2.14";
-       sha256 = "0gwifnzfcpjhzch06vkx1jkl7jf6j844grd4frl7w513bipb7w0r";
+       version = "0.2.17";
+       sha256 = "1z37bqnrzhqhg7dfmsqz31lq8ng3qnkknc9d4pxbjbbmf1g21hfv";
+       libraryHaskellDepends = [
+         async base bytestring deepseq directory filepath process stm time
+         transformers unix unliftio-core
+       ];
+       testHaskellDepends = [
+         async base bytestring containers deepseq directory filepath hspec
+         process QuickCheck stm time transformers unix unliftio-core
+       ];
+       benchmarkHaskellDepends = [
+         async base bytestring deepseq directory filepath gauge process stm
+         time transformers unix unliftio-core
+       ];
+       description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+       license = lib.licenses.mit;
+     }) {};
+
+  "unliftio_0_2_18" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, deepseq
+     , directory, filepath, gauge, hspec, process, QuickCheck, stm, time
+     , transformers, unix, unliftio-core
+     }:
+     mkDerivation {
+       pname = "unliftio";
+       version = "0.2.18";
+       sha256 = "0yg5x2v3p4pdw7892l1mkihmdbak14qvmni1vk2a0y2gdmxfvx1y";
        libraryHaskellDepends = [
          async base bytestring deepseq directory filepath process stm time
          transformers unix unliftio-core
@@ -273055,6 +270906,7 @@ self: {
        ];
        description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "unliftio-core" = callPackage
@@ -273142,8 +270994,6 @@ self: {
        ];
        description = "Generalization of io-streams to MonadUnliftIO";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unlit" = callPackage
@@ -273197,8 +271047,8 @@ self: {
      }:
      mkDerivation {
        pname = "unordered-containers";
-       version = "0.2.13.0";
-       sha256 = "0mbvld5dym17jc13ycl862k73kg26y9khb8578w13cwfmdli7c46";
+       version = "0.2.14.0";
+       sha256 = "0rw8kmg7xjlacmr1hcpin95abkd387awf154s9ran7zg9jllh3x1";
        libraryHaskellDepends = [ base deepseq hashable ];
        testHaskellDepends = [
          base ChasingBottoms containers hashable HUnit QuickCheck random
@@ -273342,7 +271192,6 @@ self: {
        description = "maybes of numeric values with fewer indirections";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unpacked-maybe-text" = callPackage
@@ -273371,7 +271220,6 @@ self: {
        description = "An unpacked these data type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unpacked-validation" = callPackage
@@ -273389,7 +271237,6 @@ self: {
        description = "An unpacked validation data type";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unparse-attoparsec" = callPackage
@@ -273411,7 +271258,6 @@ self: {
        description = "An attoparsec roundtrip";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unroll-ghc-plugin" = callPackage
@@ -273477,6 +271323,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "unsatisfiable" = callPackage
+    ({ mkDerivation, base, ghc }:
+     mkDerivation {
+       pname = "unsatisfiable";
+       version = "0";
+       sha256 = "0cvlqrrr31dn2agd7cz2s5gnf2m1yy21kwmymcpdg5zk34dc19wh";
+       libraryHaskellDepends = [ base ghc ];
+       description = "Unsatisfiable type class";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "unscramble" = callPackage
     ({ mkDerivation, array, base, optparse-applicative, stream-fusion
      , unordered-containers
@@ -273494,7 +271353,6 @@ self: {
        description = "Solve Boggle-like word games";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "unsequential" = callPackage
@@ -273607,7 +271465,6 @@ self: {
        description = "Command-line tool to generate paths for moving upward in a file system";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "up-grade" = callPackage
@@ -273643,8 +271500,8 @@ self: {
      }:
      mkDerivation {
        pname = "update-nix-fetchgit";
-       version = "0.2.5";
-       sha256 = "0lga69cnzysayvsflbcf43i7ncnib9mq62azi30kpm860s0h5lfb";
+       version = "0.2.7";
+       sha256 = "0knwn11c3kdh1xbpa8l6kgskis9fcsjr06hxay3rl4yiqprf80xn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -273662,7 +271519,7 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "A program to update fetchgit values in Nix expressions";
        license = lib.licenses.bsd3;
-       maintainers = with lib.maintainers; [ sorki ];
+       maintainers = with lib.maintainers; [ expipiplus1 sorki ];
      }) {};
 
   "update-repos" = callPackage
@@ -273744,7 +271601,6 @@ self: {
        description = "Talk to Urbit from Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "urbit-api" = callPackage
@@ -273762,7 +271618,6 @@ self: {
        description = "Talk to Urbit from Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "urbit-hob" = callPackage
@@ -273779,7 +271634,6 @@ self: {
        description = "Hoon-style atom manipulation and printing functions";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ureader" = callPackage
@@ -273804,7 +271658,6 @@ self: {
        description = "Minimalistic CLI RSS reader";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "urembed" = callPackage
@@ -273826,7 +271679,6 @@ self: {
        description = "Ur/Web static content generator";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uri" = callPackage
@@ -273956,7 +271808,6 @@ self: {
        description = "Read and write URIs (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uri-enumerator-file" = callPackage
@@ -273976,7 +271827,6 @@ self: {
        description = "uri-enumerator backend for the file scheme (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uri-parse" = callPackage
@@ -274071,7 +271921,6 @@ self: {
        description = "Memory efficient url type and parser";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "url-decoders" = callPackage
@@ -274195,7 +272044,6 @@ self: {
        description = "Painfully simple URL deployment";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "urn" = callPackage
@@ -274274,7 +272122,6 @@ self: {
        description = "Communicate with USB devices";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "usb-enumerator" = callPackage
@@ -274292,7 +272139,6 @@ self: {
        description = "Iteratee enumerators for the usb package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "usb-hid" = callPackage
@@ -274307,7 +272153,6 @@ self: {
        description = "Parser and request Library for USB HIDs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "usb-id-database" = callPackage
@@ -274328,7 +272173,6 @@ self: {
        description = "A database of USB identifiers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "usb-iteratee" = callPackage
@@ -274346,7 +272190,6 @@ self: {
        description = "Iteratee enumerators for the usb package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "usb-safe" = callPackage
@@ -274364,7 +272207,6 @@ self: {
        description = "Type-safe communication with USB devices";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "useragents" = callPackage
@@ -274394,8 +272236,6 @@ self: {
        ];
        description = "The UserId type and useful instances for web development";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "users" = callPackage
@@ -274631,7 +272471,6 @@ self: {
        description = "Exceptional utilities";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "util-logict" = callPackage
@@ -274697,7 +272536,6 @@ self: {
        description = "Utilities for stateful primitive types and types based on them";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "util-universe" = callPackage
@@ -274761,7 +272599,6 @@ self: {
        description = "Utilities for compiler construction: example programs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uu-cco-hut-parsing" = callPackage
@@ -274774,7 +272611,6 @@ self: {
        description = "Utilities for compiler construction: Feedback wrapper around parser in uulib";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uu-cco-uu-parsinglib" = callPackage
@@ -274787,7 +272623,6 @@ self: {
        description = "Utilities for compiler construction: Feedback wrapper around parser in uu-parsinglib";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uu-interleaved" = callPackage
@@ -274913,8 +272748,6 @@ self: {
        libraryHaskellDepends = [ base diagrams-lib SVGFonts ];
        description = "Utility for drawing attribute grammar pictures with the diagrams package";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uuagd" = callPackage
@@ -274940,8 +272773,8 @@ self: {
      }:
      mkDerivation {
        pname = "uuid";
-       version = "1.3.14";
-       sha256 = "1msj296faldr9fiwjqi9ixx3xl638mg6ffk7axic14wf8b9zw73a";
+       version = "1.3.15";
+       sha256 = "0r05h16gd7fgfpq9iz43jcn9jzrgfa0gk4cv1xy0p4rli66rb1gq";
        libraryHaskellDepends = [
          base binary bytestring cryptohash-md5 cryptohash-sha1 entropy
          network-info random text time uuid-types
@@ -274988,7 +272821,6 @@ self: {
        description = "UUID parsing using byteverse packages";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uuid-crypto" = callPackage
@@ -275008,7 +272840,6 @@ self: {
        description = "Reversable and secure encoding of object ids as uuids";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uuid-le" = callPackage
@@ -275035,6 +272866,8 @@ self: {
        ];
        description = "Orphan instances for the UUID datatype";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "uuid-quasi" = callPackage
@@ -275051,18 +272884,19 @@ self: {
   "uuid-types" = callPackage
     ({ mkDerivation, base, binary, bytestring, deepseq, ghc-byteorder
      , hashable, QuickCheck, random, tasty, tasty-hunit
-     , tasty-quickcheck, text
+     , tasty-quickcheck, template-haskell, text
      }:
      mkDerivation {
        pname = "uuid-types";
-       version = "1.0.4";
-       sha256 = "01pc93z6in6g717mxkhl111qc842fz1c2z7ml6n5jhm7lg52ran2";
+       version = "1.0.5";
+       sha256 = "1pd7xd6inkmmwjscf7pmiwqjks9y0gi1p8ahqbapvh34gadvhs5d";
        libraryHaskellDepends = [
-         base binary bytestring deepseq hashable random text
+         base binary bytestring deepseq hashable random template-haskell
+         text
        ];
        testHaskellDepends = [
          base binary bytestring ghc-byteorder QuickCheck tasty tasty-hunit
-         tasty-quickcheck
+         tasty-quickcheck template-haskell
        ];
        description = "Type definitions for Universally Unique Identifiers";
        license = lib.licenses.bsd3;
@@ -275098,6 +272932,7 @@ self: {
        ];
        description = "Tweak .cabal files";
        license = lib.licenses.mit;
+       maintainers = with lib.maintainers; [ berberman ];
      }) {};
 
   "uvector" = callPackage
@@ -275125,7 +272960,6 @@ self: {
        description = "Efficient algorithms for uvector unboxed arrays";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "uxadt" = callPackage
@@ -275167,7 +273001,6 @@ self: {
        description = "interface to Video For Linux Two (V4L2)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "v4l2-examples" = callPackage
@@ -275182,7 +273015,6 @@ self: {
        description = "video for linux two examples";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vabal" = callPackage
@@ -275205,7 +273037,6 @@ self: {
        description = "the cabal companion";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vabal-lib" = callPackage
@@ -275255,7 +273086,6 @@ self: {
        description = "Visualize live Haskell data structures using vacuum, graphviz and cairo";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vacuum-graphviz" = callPackage
@@ -275268,7 +273098,6 @@ self: {
        description = "A library for transforming vacuum graphs into GraphViz output";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vacuum-opengl" = callPackage
@@ -275289,7 +273118,6 @@ self: {
        description = "Visualize live Haskell data structures using vacuum, graphviz and OpenGL";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vacuum-ubigraph" = callPackage
@@ -275302,7 +273130,6 @@ self: {
        description = "Visualize Haskell data structures using vacuum and Ubigraph";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vado" = callPackage
@@ -275378,8 +273205,6 @@ self: {
        testHaskellDepends = [ base hspec QuickCheck ];
        description = "Input validation combinator library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "validated-literals" = callPackage
@@ -275771,7 +273596,6 @@ self: {
        description = "variable-precision floating point";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "variables" = callPackage
@@ -275788,6 +273612,25 @@ self: {
        broken = true;
      }) {};
 
+  "variadic" = callPackage
+    ({ mkDerivation, base, containers, criterion, hspec
+     , hspec-expectations-lifted, mmorph, mtl, process
+     }:
+     mkDerivation {
+       pname = "variadic";
+       version = "0.0.0.0";
+       sha256 = "1wlf8bxxmal6zmjhdw6ghvcdxi2lvlhs2vn7c7sn0jb88im0i18s";
+       libraryHaskellDepends = [ base mmorph mtl ];
+       testHaskellDepends = [
+         base containers hspec hspec-expectations-lifted mmorph mtl process
+       ];
+       benchmarkHaskellDepends = [ base criterion mmorph mtl ];
+       description = "Abstractions for working with variadic functions";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "variation" = callPackage
     ({ mkDerivation, base, cereal, containers, deepseq, semigroupoids
      }:
@@ -275954,7 +273797,6 @@ self: {
        description = "patricia tries modeled above VCache";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vcard" = callPackage
@@ -275969,7 +273811,6 @@ self: {
        description = "A library for parsing/printing vCards from/to various formats";
        license = "LGPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vcatt" = callPackage
@@ -276017,6 +273858,31 @@ self: {
        broken = true;
      }) {};
 
+  "vcs-ignore" = callPackage
+    ({ mkDerivation, base, containers, directory, doctest, exceptions
+     , filepath, Glob, hspec, hspec-discover, optparse-applicative, text
+     }:
+     mkDerivation {
+       pname = "vcs-ignore";
+       version = "0.0.1.0";
+       sha256 = "0zz4vwvzxgdqpi30ncp82irdwjyam23z0bdz834xxghfg70q2b5m";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers directory exceptions filepath Glob text
+       ];
+       executableHaskellDepends = [
+         base containers directory exceptions filepath optparse-applicative
+         text
+       ];
+       testHaskellDepends = [
+         base containers directory doctest exceptions filepath hspec text
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Library for handling files ignored by VCS systems";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "vcs-revision" = callPackage
     ({ mkDerivation, base, process }:
      mkDerivation {
@@ -276061,7 +273927,6 @@ self: {
        description = "GUI library for source code management systems";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vcswrapper" = callPackage
@@ -276169,7 +274034,6 @@ self: {
        description = "Accelerate instances for vect-floating types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vect-opengl" = callPackage
@@ -276393,7 +274257,6 @@ self: {
        description = "Storable vectors with cpu-independent representation";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vector-extras" = callPackage
@@ -276439,6 +274302,8 @@ self: {
        ];
        description = "A binding to the fftw library for one-dimensional vectors";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) fftw;};
 
   "vector-functorlazy" = callPackage
@@ -276497,7 +274362,6 @@ self: {
        description = "Instances of the Data.Collections classes for Data.Vector.*";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vector-mmap" = callPackage
@@ -276580,6 +274444,7 @@ self: {
        ];
        description = "Size tagged vectors";
        license = lib.licenses.bsd3;
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "vector-space" = callPackage
@@ -276695,7 +274560,6 @@ self: {
        description = "Text implementation based on unboxed char vector";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vector-th-unbox" = callPackage
@@ -276754,8 +274618,6 @@ self: {
        ];
        description = "Easily view Vega or Vega-Lite visualizations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "venzone" = callPackage
@@ -276783,7 +274645,6 @@ self: {
        description = "ASCII platform-adventure game";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "verbalexpressions" = callPackage
@@ -276852,7 +274713,6 @@ self: {
        description = "JSON instances and JSON Schema for verdict";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "verifiable-expressions" = callPackage
@@ -276868,8 +274728,9 @@ self: {
        ];
        description = "An intermediate language for Hoare logic style verification";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "verify" = callPackage
@@ -276981,7 +274842,6 @@ self: {
        description = "Servant combinators for the versioning library";
        license = lib.licenses.asl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "versions" = callPackage
@@ -277044,7 +274904,6 @@ self: {
        description = "types for ingesting vflow data with aeson";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vformat" = callPackage
@@ -277065,6 +274924,8 @@ self: {
        ];
        description = "A Python str.format() like formatter";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "vformat-aeson" = callPackage
@@ -277087,6 +274948,7 @@ self: {
        ];
        description = "Extend vformat to Aeson datatypes";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "vformat-time" = callPackage
@@ -277101,6 +274963,7 @@ self: {
        testHaskellDepends = [ base time vformat ];
        description = "Extend vformat to time datatypes";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "vfr-waypoints" = callPackage
@@ -277123,7 +274986,6 @@ self: {
        description = "VFR waypoints, as published in the AIP (ERSA)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vgrep" = callPackage
@@ -277155,8 +275017,6 @@ self: {
        ];
        description = "A pager for grep";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vhd" = callPackage
@@ -277288,7 +275148,6 @@ self: {
        description = "An extensible dead-man's switch system";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vimeta" = callPackage
@@ -277315,8 +275174,6 @@ self: {
        ];
        description = "Frontend for video metadata tagging tools";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vimus" = callPackage
@@ -277373,19 +275230,19 @@ self: {
      }) {};
 
   "vinyl" = callPackage
-    ({ mkDerivation, aeson, array, base, criterion, deepseq, doctest
-     , ghc-prim, hspec, lens, lens-aeson, linear, microlens, mtl
-     , mwc-random, primitive, should-not-typecheck, singletons, tagged
-     , text, unordered-containers, vector
+    ({ mkDerivation, aeson, array, base, criterion, deepseq, ghc-prim
+     , hspec, lens, lens-aeson, linear, microlens, mtl, mwc-random
+     , primitive, should-not-typecheck, tagged, text
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "vinyl";
-       version = "0.13.1";
-       sha256 = "1aip3v1jnxmx44bkshxkmd1iixml65987b4sbh4gncm6q7brkn0k";
+       version = "0.13.3";
+       sha256 = "0mlk94n3s4ah8y9w9vcrk1n7gnsm19d1iijk9da4219dwrkaax2l";
        libraryHaskellDepends = [ array base deepseq ghc-prim ];
        testHaskellDepends = [
-         aeson base doctest hspec lens lens-aeson microlens mtl
-         should-not-typecheck singletons text unordered-containers vector
+         aeson base hspec lens lens-aeson microlens mtl should-not-typecheck
+         text unordered-containers vector
        ];
        benchmarkHaskellDepends = [
          base criterion linear microlens mwc-random primitive tagged vector
@@ -277487,7 +275344,6 @@ self: {
        description = "Initial project template from stack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vinyl-plus" = callPackage
@@ -277598,7 +275454,6 @@ self: {
        description = "An XMMS2 client";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "visual-graphrewrite" = callPackage
@@ -277627,7 +275482,6 @@ self: {
        description = "Visualize the graph-rewrite steps of a Haskell program";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "visual-prof" = callPackage
@@ -277791,7 +275645,6 @@ self: {
        description = "Phase vocoder";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vocoder-audio" = callPackage
@@ -277811,7 +275664,6 @@ self: {
        description = "Phase vocoder for conduit-audio";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vocoder-conduit" = callPackage
@@ -277834,7 +275686,6 @@ self: {
        description = "Phase vocoder for Conduit";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vocoder-dunai" = callPackage
@@ -277857,7 +275708,6 @@ self: {
        description = "Phase vocoder for Dunai and Rhine";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "voicebase" = callPackage
@@ -277883,7 +275733,6 @@ self: {
        description = "Upload audio files to voicebase to get a transcription";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "void" = callPackage
@@ -277937,6 +275786,30 @@ self: {
        broken = true;
      }) {};
 
+  "vp-tree" = callPackage
+    ({ mkDerivation, base, boxes, bytestring, conduit, containers
+     , deepseq, depq, hspec, mtl, mwc-probability, primitive, psqueues
+     , QuickCheck, sampling, serialise, transformers, vector
+     , vector-algorithms, weigh
+     }:
+     mkDerivation {
+       pname = "vp-tree";
+       version = "0.1.0.1";
+       sha256 = "1hzzz5ld397ig0lskr09sdz2cdd4nkk6pckhb9r04vzmqczpiarp";
+       libraryHaskellDepends = [
+         base boxes containers deepseq depq mtl mwc-probability primitive
+         psqueues sampling serialise transformers vector vector-algorithms
+       ];
+       testHaskellDepends = [
+         base hspec mwc-probability primitive QuickCheck vector
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring conduit containers deepseq vector weigh
+       ];
+       description = "Vantage Point Trees";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "vpq" = callPackage
     ({ mkDerivation, base, primitive, smallcheck, tasty
      , tasty-smallcheck, util, vector
@@ -277969,6 +275842,9 @@ self: {
        executableSystemDepends = [ quat vrpn ];
        description = "Bindings to VRPN";
        license = lib.licenses.mit;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {quat = null; inherit (pkgs) vrpn;};
 
   "vt-utils" = callPackage
@@ -278140,7 +276016,6 @@ self: {
        description = "Extra vty-ui functionality not included in the core library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vulkan" = callPackage
@@ -278153,7 +276028,8 @@ self: {
        libraryPkgconfigDepends = [ vulkan ];
        description = "Bindings to the Vulkan graphics API";
        license = lib.licenses.bsd3;
-       platforms = [ "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [ "aarch64-linux" "x86_64-linux" ];
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {vulkan = null;};
 
   "vulkan-api" = callPackage
@@ -278165,8 +276041,6 @@ self: {
        libraryHaskellDepends = [ base ];
        description = "Low-level low-overhead vulkan api bindings";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "vulkan-utils" = callPackage
@@ -278188,6 +276062,10 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Utils for the vulkan package";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
+       maintainers = with lib.maintainers; [ expipiplus1 ];
      }) {};
 
   "waargonaut" = callPackage
@@ -278227,7 +276105,6 @@ self: {
        description = "JSON wrangling";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wacom-daemon" = callPackage
@@ -278298,7 +276175,6 @@ self: {
        description = "A haskell binding of the Web Audio API ala blank-canvas";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai" = callPackage
@@ -278419,7 +276295,6 @@ self: {
        description = "Command line runner for Wai apps (using Warp) with TLS, CGI, socket activation & graceful shutdown";
        license = lib.licenses.publicDomain;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-conduit" = callPackage
@@ -278504,7 +276379,6 @@ self: {
        description = "A web server for the development of WAI compliant web applications";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-digestive-functors" = callPackage
@@ -278717,14 +276591,14 @@ self: {
        pname = "wai-handler-hal";
        version = "0.1.0.0";
        sha256 = "0sjw01k5dyhdi33ld1pd4mf9plpij0spzxf2b228cjyc8x5zx7rj";
+       revision = "1";
+       editedCabalFile = "0gnl0xfsx1ahm0w0xykdzm96h3riz497wz9gxdmvzv0aflcg6jw9";
        libraryHaskellDepends = [
          base base64-bytestring bytestring case-insensitive hal http-types
          network text unordered-containers vault wai
        ];
        description = "Wrap WAI applications to run on AWS Lambda";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-handler-launch" = callPackage
@@ -278771,7 +276645,6 @@ self: {
        description = "Web Application Interface handler using snap-server. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-handler-webkit" = callPackage
@@ -279094,7 +276967,6 @@ self: {
        description = "Caching middleware for WAI";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-cache-redis" = callPackage
@@ -279114,7 +276986,6 @@ self: {
        description = "Redis backend for wai-middleware-cache";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-caching" = callPackage
@@ -279221,7 +277092,6 @@ self: {
        description = "Wai Middleware for Consul";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-content-type" = callPackage
@@ -279255,7 +277125,6 @@ self: {
        description = "Route to different middlewares based on the incoming Accept header";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-crowd" = callPackage
@@ -279502,7 +277371,6 @@ self: {
        description = "Middleware that communicates to Rollbar";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-route" = callPackage
@@ -279524,7 +277392,6 @@ self: {
        description = "Wai dispatch middleware";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-slack-verify" = callPackage
@@ -279663,8 +277530,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-middleware-validation";
-       version = "0.1.0.0";
-       sha256 = "0cbp32j31xkmniml56gnh278g94zhhfc8xlp842n8lll5hh13bf4";
+       version = "0.1.0.2";
+       sha256 = "1qrkfy31slmlbiw9gkz96yd9q6mrw72rjyjl0a5pnjif5ps12vpq";
        libraryHaskellDepends = [
          aeson base bytestring containers filepath http-types
          insert-ordered-containers lens openapi3 text wai
@@ -279675,8 +277542,6 @@ self: {
        ];
        description = "WAI Middleware to validate the request and response bodies";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-verbs" = callPackage
@@ -280020,8 +277885,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-session-redis";
-       version = "0.1.0.1";
-       sha256 = "14n5996y8fpq19jfn5ahfliq4gk2ydi5l8zcq8agqqpg875hzzcw";
+       version = "0.1.0.2";
+       sha256 = "15l0sq5y9lalprn3k7fcw37fnmzphhd00qkpwna3wxpr0vrlihzs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -280037,6 +277902,8 @@ self: {
        ];
        description = "Simple Redis backed wai-session backend";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "wai-session-tokyocabinet" = callPackage
@@ -280131,7 +277998,6 @@ self: {
        description = "Thrift transport layer for Wai";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-throttler" = callPackage
@@ -280307,7 +278173,6 @@ self: {
        description = "A generator of comics based on some ascertainable data about the requester";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wallpaper" = callPackage
@@ -280367,69 +278232,35 @@ self: {
     ({ mkDerivation, array, async, auto-update, base, bsb-http-chunked
      , bytestring, case-insensitive, containers, directory, gauge
      , ghc-prim, hashable, hspec, http-client, http-date, http-types
-     , http2, HUnit, iproute, lifted-base, network, process, QuickCheck
+     , http2, HUnit, iproute, network, process, QuickCheck
      , simple-sendfile, stm, streaming-commons, text, time, time-manager
-     , unix, unix-compat, vault, wai, word8, x509
+     , unix, unix-compat, unliftio, vault, wai, word8, x509
      }:
      mkDerivation {
        pname = "warp";
-       version = "3.3.14";
-       sha256 = "0whmh6dbl7321a2kg6ypngw5kgvvxqdk161li0l4hr3wqqddlc93";
+       version = "3.3.16";
+       sha256 = "1qnngw7afh448hv7fzp4l36j7hz6f8a8f1qga976j8l53qhmgcf1";
        libraryHaskellDepends = [
-         array async auto-update base bsb-http-chunked bytestring
-         case-insensitive containers ghc-prim hashable http-date http-types
-         http2 iproute network simple-sendfile stm streaming-commons text
-         time-manager unix unix-compat vault wai word8 x509
+         array auto-update base bsb-http-chunked bytestring case-insensitive
+         containers ghc-prim hashable http-date http-types http2 iproute
+         network simple-sendfile stm streaming-commons text time-manager
+         unix unix-compat unliftio vault wai word8 x509
        ];
        testHaskellDepends = [
          array async auto-update base bsb-http-chunked bytestring
          case-insensitive containers directory ghc-prim hashable hspec
-         http-client http-date http-types http2 HUnit iproute lifted-base
-         network process QuickCheck simple-sendfile stm streaming-commons
-         text time time-manager unix unix-compat vault wai word8 x509
+         http-client http-date http-types http2 HUnit iproute network
+         process QuickCheck simple-sendfile stm streaming-commons text time
+         time-manager unix unix-compat unliftio vault wai word8 x509
        ];
        benchmarkHaskellDepends = [
          auto-update base bytestring containers gauge hashable http-date
-         http-types network time-manager unix unix-compat x509
+         http-types network time-manager unix unix-compat unliftio x509
        ];
        description = "A fast, light-weight web server for WAI applications";
        license = lib.licenses.mit;
      }) {};
 
-  "warp_3_3_15" = callPackage
-    ({ mkDerivation, array, async, auto-update, base, bsb-http-chunked
-     , bytestring, case-insensitive, containers, directory, gauge
-     , ghc-prim, hashable, hspec, http-client, http-date, http-types
-     , http2, HUnit, iproute, lifted-base, network, process, QuickCheck
-     , simple-sendfile, stm, streaming-commons, text, time, time-manager
-     , unix, unix-compat, vault, wai, word8, x509
-     }:
-     mkDerivation {
-       pname = "warp";
-       version = "3.3.15";
-       sha256 = "0nj4xxzjcy33hyfdagpc2ij6ga71r1fmc248rjgwsyfflial63bz";
-       libraryHaskellDepends = [
-         array async auto-update base bsb-http-chunked bytestring
-         case-insensitive containers ghc-prim hashable http-date http-types
-         http2 iproute network simple-sendfile stm streaming-commons text
-         time-manager unix unix-compat vault wai word8 x509
-       ];
-       testHaskellDepends = [
-         array async auto-update base bsb-http-chunked bytestring
-         case-insensitive containers directory ghc-prim hashable hspec
-         http-client http-date http-types http2 HUnit iproute lifted-base
-         network process QuickCheck simple-sendfile stm streaming-commons
-         text time time-manager unix unix-compat vault wai word8 x509
-       ];
-       benchmarkHaskellDepends = [
-         auto-update base bytestring containers gauge hashable http-date
-         http-types network time-manager unix unix-compat x509
-       ];
-       description = "A fast, light-weight web server for WAI applications";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
   "warp-dynamic" = callPackage
     ({ mkDerivation, base, data-default, dyre, http-types, wai, warp }:
      mkDerivation {
@@ -280463,6 +278294,8 @@ self: {
        ];
        description = "A minimal gRPC server on top of Warp";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "warp-static" = callPackage
@@ -280502,15 +278335,16 @@ self: {
 
   "warp-tls" = callPackage
     ({ mkDerivation, base, bytestring, cryptonite, data-default-class
-     , network, streaming-commons, tls, tls-session-manager, wai, warp
+     , network, streaming-commons, tls, tls-session-manager, unliftio
+     , wai, warp
      }:
      mkDerivation {
        pname = "warp-tls";
-       version = "3.3.0";
-       sha256 = "03fwwggl6lhxs7swwylgpk9j8g5szq2h871nfbgs6xzr1b5hpas1";
+       version = "3.3.1";
+       sha256 = "1k8f3r0l36mgwm69fikprv6pyjzj15702kq25dr9nc3sv5lcs162";
        libraryHaskellDepends = [
          base bytestring cryptonite data-default-class network
-         streaming-commons tls tls-session-manager wai warp
+         streaming-commons tls tls-session-manager unliftio wai warp
        ];
        description = "HTTP over TLS support for Warp via the TLS package";
        license = lib.licenses.mit;
@@ -280552,7 +278386,6 @@ self: {
        description = "Warp and Wai Library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wasm" = callPackage
@@ -280735,7 +278568,6 @@ self: {
        description = "Parse WaveSurfer files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wavy" = callPackage
@@ -280757,7 +278589,6 @@ self: {
        description = "Process WAVE files in Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wcwidth" = callPackage
@@ -280911,7 +278742,6 @@ self: {
        description = "Bindings for the Mongrel2 web server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "web-output" = callPackage
@@ -280952,7 +278782,6 @@ self: {
        description = "Monoidally construct web pages";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "web-plugins" = callPackage
@@ -281021,7 +278850,6 @@ self: {
        description = "representations of a web page";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "web-routes" = callPackage
@@ -281128,7 +278956,6 @@ self: {
        description = "portable, type-safe URL routing";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "web-routes-th" = callPackage
@@ -281193,7 +279020,6 @@ self: {
        description = "simple routing library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "web3" = callPackage
@@ -281234,7 +279060,6 @@ self: {
        description = "Web3 API for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webapi" = callPackage
@@ -281262,7 +279087,6 @@ self: {
        description = "WAI based library for web api";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webapp" = callPackage
@@ -281306,8 +279130,6 @@ self: {
        ];
        description = "Web Authentication API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webby" = callPackage
@@ -281414,7 +279236,6 @@ self: {
        description = "Build a WAI Application from Webcrank Resources";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webdriver" = callPackage
@@ -281525,7 +279346,6 @@ self: {
        description = "Bindings to the WebDriver API";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webex-teams-api" = callPackage
@@ -281694,8 +279514,7 @@ self: {
        ];
        description = "webfont generator";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = with lib.maintainers; [ erictapen ];
      }) {};
 
   "webkit" = callPackage
@@ -281744,6 +279563,9 @@ self: {
        libraryPkgconfigDepends = [ webkitgtk ];
        description = "JavaScriptCore FFI from webkitgtk";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {inherit (pkgs) webkitgtk;};
 
   "webkitgtk3" = callPackage
@@ -281865,7 +279687,6 @@ self: {
        description = "HTTP server library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webshow" = callPackage
@@ -282150,7 +279971,6 @@ self: {
        description = "Writer monad which uses semiring constraint";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "weighted-regexp" = callPackage
@@ -282262,7 +280082,6 @@ self: {
        description = "A chat interface for playing werewolf in Slack";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "what4" = callPackage
@@ -282301,7 +280120,6 @@ self: {
        description = "Solver-agnostic symbolic values support for issuing queries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wheb-mongo" = callPackage
@@ -282314,7 +280132,6 @@ self: {
        description = "MongoDB plugin for Wheb";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wheb-redis" = callPackage
@@ -282327,7 +280144,6 @@ self: {
        description = "Redis connection for Wheb";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wheb-strapped" = callPackage
@@ -282340,7 +280156,6 @@ self: {
        description = "Strapped templates for Wheb";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "which" = callPackage
@@ -282413,7 +280228,6 @@ self: {
        description = "Whitespace, an esoteric programming language";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "whois" = callPackage
@@ -282498,7 +280312,6 @@ self: {
        description = "Instances for wide-word";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wigner-symbols" = callPackage
@@ -282567,7 +280380,6 @@ self: {
        description = "Wikipedia EPUB E-Book construction from Firefox history";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wild-bind" = callPackage
@@ -282604,8 +280416,6 @@ self: {
        ];
        description = "Graphical indicator for WildBind";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wild-bind-task-x11" = callPackage
@@ -282622,8 +280432,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Task to install and export everything you need to use WildBind in X11";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wild-bind-x11" = callPackage
@@ -282728,7 +280536,6 @@ self: {
        description = "Implements Windows Live Web Authentication and Delegated Authentication";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "winerror" = callPackage
@@ -282779,8 +280586,6 @@ self: {
        ];
        description = "A compact, well-typed seralisation format for Haskell values";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "winio" = callPackage
@@ -282798,7 +280603,6 @@ self: {
        description = "I/O library for Windows";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {kernel32 = null; ws2_32 = null;};
 
   "wire-streams" = callPackage
@@ -282878,36 +280682,21 @@ self: {
      }) {};
 
   "witch" = callPackage
-    ({ mkDerivation, base, bytestring, containers, hspec, QuickCheck
-     , text
-     }:
-     mkDerivation {
-       pname = "witch";
-       version = "0.0.0.5";
-       sha256 = "1j12mh8zap8c0lb358bzk4sq29h64lv0jrwq9r4nssx4yybrz9gg";
-       libraryHaskellDepends = [ base bytestring containers text ];
-       testHaskellDepends = [
-         base bytestring containers hspec QuickCheck text
-       ];
-       description = "Convert values from one type into another";
-       license = lib.licenses.isc;
-     }) {};
-
-  "witch_0_2_0_0" = callPackage
-    ({ mkDerivation, base, bytestring, containers, hspec
-     , template-haskell, text
+    ({ mkDerivation, base, bytestring, containers, HUnit
+     , template-haskell, text, time
      }:
      mkDerivation {
        pname = "witch";
-       version = "0.2.0.0";
-       sha256 = "03rnpljng4vy913zm3cxnhlq3i8d5p57661wa1cwj46hkhy7rhj7";
+       version = "0.3.3.0";
+       sha256 = "0wckjjy7yxq899f515xhwl2izqmrr9zck0kjlgz6qfa1fsl6lbvx";
        libraryHaskellDepends = [
-         base bytestring containers template-haskell text
+         base bytestring containers template-haskell text time
+       ];
+       testHaskellDepends = [
+         base bytestring containers HUnit text time
        ];
-       testHaskellDepends = [ base bytestring containers hspec text ];
        description = "Convert values from one type into another";
        license = lib.licenses.isc;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "with-index" = callPackage
@@ -283167,7 +280956,6 @@ self: {
        description = "ANSI Terminal support with wl-pprint-extras";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wl-pprint-console" = callPackage
@@ -283222,7 +281010,6 @@ self: {
        description = "A color pretty printer with terminfo support";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wl-pprint-text" = callPackage
@@ -283253,8 +281040,7 @@ self: {
        description = "Haskell bindings for the wlc library";
        license = lib.licenses.isc;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {wlc = null;};
+     }) {inherit (pkgs) wlc;};
 
   "wobsurv" = callPackage
     ({ mkDerivation, aeson, attoparsec, base-prelude, bytestring
@@ -283290,7 +281076,6 @@ self: {
        description = "A simple and highly performant HTTP file server";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "woe" = callPackage
@@ -283360,7 +281145,6 @@ self: {
        description = "Amazon Simple Workflow Service Wrapper";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "woot" = callPackage
@@ -283391,8 +281175,6 @@ self: {
        testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
        description = "Words of arbitrary size";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "word-trie" = callPackage
@@ -283518,8 +281300,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion pandoc text ];
        description = "Get word counts and distributions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wordcloud" = callPackage
@@ -283647,8 +281427,8 @@ self: {
      }:
      mkDerivation {
        pname = "wordpress-auth";
-       version = "1.0.0.0";
-       sha256 = "150rri8lrl6j3f9q7wc34ajg06rakgk8a5npzz7vdap64994wy5c";
+       version = "1.0.0.1";
+       sha256 = "10drplm0bg72ph87apbdmm4ar7gh09x6w6sgwgvdkz4zpkc48s0j";
        libraryHaskellDepends = [
          base base16-bytestring bytestring cookie cryptohash-md5
          cryptohash-sha256 hs-php-session http-types mtl text time
@@ -283757,7 +281537,6 @@ self: {
        description = "Utilities (e.g. Googling the clipboard contents) for the `workflow` pacakge";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "workflow-osx" = callPackage
@@ -283802,7 +281581,6 @@ self: {
        description = "manipulate `workflow-types:Workflow`'s";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "workflow-types" = callPackage
@@ -283822,7 +281600,6 @@ self: {
        description = "Automate keyboard\\/mouse\\/clipboard\\/application interaction";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "workflow-windows" = callPackage
@@ -283926,7 +281703,6 @@ self: {
        description = "Lazy wrapper to HaXML, HXT, TagSoup via custom XML tree structure";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wrecker" = callPackage
@@ -283966,7 +281742,6 @@ self: {
        description = "An HTTP Performance Benchmarker";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wrecker-ui" = callPackage
@@ -284000,7 +281775,6 @@ self: {
        description = "A web interface for Wrecker, the HTTP Performance Benchmarker";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wreq" = callPackage
@@ -284162,7 +281936,6 @@ self: {
        description = "Colour space transformations and metrics";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "write-buffer-core" = callPackage
@@ -284224,7 +281997,6 @@ self: {
        description = "WriteT and RWST monad transformers (Reexport with all dependencies)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "writer-cps-lens" = callPackage
@@ -284338,7 +282110,6 @@ self: {
        description = "A simple CLI utility for interacting with a websocket";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ws-chans" = callPackage
@@ -284422,8 +282193,6 @@ self: {
        ];
        description = "Terminal emulator over websockets";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wsjtx-udp" = callPackage
@@ -284463,7 +282232,6 @@ self: {
        description = "A-little-higher-level WebSocket client";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wstunnel" = callPackage
@@ -284521,7 +282289,6 @@ self: {
        description = "GTK tools within Wojcik Tool Kit";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wu-wei" = callPackage
@@ -284538,7 +282305,6 @@ self: {
        description = "Unimportant Unix adminstration tool";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wumpus-basic" = callPackage
@@ -284555,7 +282321,6 @@ self: {
        description = "Basic objects and system code built on Wumpus-Core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wumpus-core" = callPackage
@@ -284587,7 +282352,6 @@ self: {
        description = "High-level drawing objects built on Wumpus-Basic";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wumpus-microprint" = callPackage
@@ -284604,7 +282368,6 @@ self: {
        description = "Microprints - \"greek-text\" pictures";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wumpus-tree" = callPackage
@@ -284622,7 +282385,6 @@ self: {
        description = "Drawing trees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wuss" = callPackage
@@ -284665,7 +282427,6 @@ self: {
        description = "Try to avoid the asteroids with your space ship";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wxFruit" = callPackage
@@ -284681,7 +282442,6 @@ self: {
        description = "An implementation of Fruit using wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wxSimpleCanvas" = callPackage
@@ -284694,7 +282454,6 @@ self: {
        description = "Simple zoomable canvas for wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wxc" = callPackage
@@ -284774,7 +282533,6 @@ self: {
        description = "An example of how to implement a basic notepad with wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wxturtle" = callPackage
@@ -284791,7 +282549,6 @@ self: {
        description = "turtle like LOGO with wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "wybor" = callPackage
@@ -284832,7 +282589,6 @@ self: {
        description = "An autoresponder for Dragon Go Server";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "x-dsp" = callPackage
@@ -285129,7 +282885,6 @@ self: {
        description = "A wget-like utility for retrieving files from XDCC bots on IRC";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xdg-basedir" = callPackage
@@ -285191,8 +282946,6 @@ self: {
        ];
        description = "Parse Graphviz xdot files and interactively view them using GTK and Cairo";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xeno" = callPackage
@@ -285281,6 +283034,7 @@ self: {
        executableSystemDepends = [ xgboost ];
        description = "XGBoost library for Haskell";
        license = lib.licenses.mit;
+       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
      }) {inherit (pkgs) xgboost;};
 
   "xhaskell-library" = callPackage
@@ -285332,7 +283086,6 @@ self: {
        description = "Atom cache for XHB";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xhb-ewmh" = callPackage
@@ -285350,7 +283103,6 @@ self: {
        description = "EWMH utilities for XHB";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xhtml_3000_2_2_1" = callPackage
@@ -285607,8 +283359,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Xlsx table cell value extraction utility";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xlsx-templater" = callPackage
@@ -285675,7 +283425,6 @@ self: {
        description = "Parse XML catalog files (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-conduit" = callPackage
@@ -285686,30 +283435,6 @@ self: {
      }:
      mkDerivation {
        pname = "xml-conduit";
-       version = "1.9.1.0";
-       sha256 = "0ag0g9x5qnw1nfgc31h6bj2qv0h1c2y7n1l0g99l4dkn428dk9ca";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [
-         attoparsec base blaze-html blaze-markup bytestring conduit
-         conduit-extra containers data-default-class deepseq resourcet text
-         transformers xml-types
-       ];
-       testHaskellDepends = [
-         base blaze-markup bytestring conduit containers doctest hspec HUnit
-         resourcet text transformers xml-types
-       ];
-       description = "Pure-Haskell utilities for dealing with XML with the conduit package";
-       license = lib.licenses.mit;
-     }) {};
-
-  "xml-conduit_1_9_1_1" = callPackage
-    ({ mkDerivation, attoparsec, base, blaze-html, blaze-markup
-     , bytestring, Cabal, cabal-doctest, conduit, conduit-extra
-     , containers, data-default-class, deepseq, doctest, hspec, HUnit
-     , resourcet, text, transformers, xml-types
-     }:
-     mkDerivation {
-       pname = "xml-conduit";
        version = "1.9.1.1";
        sha256 = "1zzh7xnmbm68dab1vqsjkr6ghxqgnla5nik4amrwlmhbdih1gcdx";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -285724,7 +283449,6 @@ self: {
        ];
        description = "Pure-Haskell utilities for dealing with XML with the conduit package";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "xml-conduit-decode" = callPackage
@@ -285851,7 +283575,6 @@ self: {
        description = "Pure-Haskell utilities for dealing with XML with the enumerator package. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-enumerator-combinators" = callPackage
@@ -285870,7 +283593,6 @@ self: {
        description = "Parser combinators for xml-enumerator and compatible XML parsers";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-extractors" = callPackage
@@ -286029,7 +283751,6 @@ self: {
        description = "Monadic extensions to the xml package";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-optics" = callPackage
@@ -286086,7 +283807,6 @@ self: {
        description = "XML parser which uses simple-pipe";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-prettify" = callPackage
@@ -286124,7 +283844,6 @@ self: {
        description = "Push XML from/to client to/from server over XMPP or HTTP";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-query" = callPackage
@@ -286155,7 +283874,6 @@ self: {
        description = "A binding for the \"xml-query\" and \"xml-conduit\" libraries";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-query-xml-types" = callPackage
@@ -286180,7 +283898,6 @@ self: {
        description = "An interpreter of \"xml-query\" queries for the \"xml-types\" documents";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-to-json" = callPackage
@@ -286238,7 +283955,6 @@ self: {
        description = "Typed XML encoding for an xml-conduit backend";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xml-tydom-core" = callPackage
@@ -286324,7 +284040,6 @@ self: {
        description = "Convert BLAST output in XML format to CSV or HTML";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmlbf" = callPackage
@@ -286457,7 +284172,6 @@ self: {
        description = "Show tv channels in the terminal";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmms2-client" = callPackage
@@ -286475,7 +284189,6 @@ self: {
        description = "An XMMS2 client library";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmms2-client-glib" = callPackage
@@ -286489,7 +284202,6 @@ self: {
        description = "An XMMS2 client library — GLib integration";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmobar" = callPackage
@@ -286503,8 +284215,8 @@ self: {
      }:
      mkDerivation {
        pname = "xmobar";
-       version = "0.37";
-       sha256 = "0bjjja73ip7c1s8r3j3dimzm2j17sx38nsh51nl3axf4z5pbif74";
+       version = "0.38";
+       sha256 = "1h7y5bnrsxc9k92zn5pfyimpdvm9245b93rxf0ff1avssnp1i31s";
        configureFlags = [
          "-fwith_alsa" "-fwith_conduit" "-fwith_datezone" "-fwith_dbus"
          "-fwith_inotify" "-fwith_iwlib" "-fwith_mpd" "-fwith_mpris"
@@ -286549,6 +284261,8 @@ self: {
        pname = "xmonad";
        version = "0.15";
        sha256 = "0a7rh21k9y6g8fwkggxdxjns2grvvsd5hi2ls4klmqz5xvk4hyaa";
+       revision = "1";
+       editedCabalFile = "0yqh96qqphllr0zyz5j93cij5w2qvf39xxnrb52pz0qz3pywz9wd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -286599,6 +284313,8 @@ self: {
        pname = "xmonad-contrib";
        version = "0.16";
        sha256 = "1pddgkvnbww28wykncc7j0yb0lv15bk7xnnhdcbrwkxzw66w6wmd";
+       revision = "1";
+       editedCabalFile = "0vimkby2gq6sgzxzbvz67caba609xqlv2ii2gi8a1cjrnn6ib011";
        libraryHaskellDepends = [
          base bytestring containers directory extensible-exceptions filepath
          mtl old-locale old-time process random semigroups unix utf8-string
@@ -286626,7 +284342,6 @@ self: {
        description = "Third party extensions for xmonad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmonad-contrib-gpl" = callPackage
@@ -286709,6 +284424,9 @@ self: {
        ];
        description = "Third party extensions for xmonad with wacky dependencies";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "xmonad-screenshot" = callPackage
@@ -286786,6 +284504,9 @@ self: {
        ];
        description = "XMonad volume controls";
        license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
+       ];
      }) {};
 
   "xmonad-wallpaper" = callPackage
@@ -286799,6 +284520,8 @@ self: {
        libraryHaskellDepends = [ base magic mtl random unix xmonad ];
        description = "xmonad wallpaper extension";
        license = lib.licenses.lgpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "xmonad-windownames" = callPackage
@@ -286833,7 +284556,6 @@ self: {
        description = "XMPP implementation using simple-PIPE";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xor" = callPackage
@@ -286917,7 +284639,6 @@ self: {
        description = "text builder for xournal file format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xournal-convert" = callPackage
@@ -286940,7 +284661,6 @@ self: {
        description = "convert utility for xoj files";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xournal-parser" = callPackage
@@ -286961,7 +284681,6 @@ self: {
        description = "Xournal file parser";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xournal-render" = callPackage
@@ -286980,7 +284699,6 @@ self: {
        description = "Xournal file renderer";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xournal-types" = callPackage
@@ -287158,7 +284876,6 @@ self: {
        description = "eXtended & Typed Controls for wxHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "xtest" = callPackage
@@ -287406,7 +285123,6 @@ self: {
        description = "Enumerator-based interface to YAJL, an event-based JSON implementation";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yak" = callPackage
@@ -287470,7 +285186,6 @@ self: {
        description = "A wrapper of servant";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-app" = callPackage
@@ -287494,6 +285209,8 @@ self: {
        ];
        description = "Yam App";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "yam-config" = callPackage
@@ -287530,7 +285247,6 @@ self: {
        description = "Yam DataSource Middleware";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-job" = callPackage
@@ -287541,6 +285257,7 @@ self: {
        sha256 = "0c6frqjf3xhd5bksaz6rvd6qbqbj15y441476dgj2asm2yd64895";
        libraryHaskellDepends = [ base cron yam-app ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "yam-logger" = callPackage
@@ -287557,7 +285274,6 @@ self: {
        description = "Yam Logger";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-redis" = callPackage
@@ -287575,7 +285291,6 @@ self: {
        description = "Yam Redis Middleware";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-servant" = callPackage
@@ -287615,7 +285330,6 @@ self: {
        description = "Yam transaction";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-transaction-odbc" = callPackage
@@ -287629,7 +285343,6 @@ self: {
        ];
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yam-transaction-postgresql" = callPackage
@@ -287644,6 +285357,7 @@ self: {
          base containers persistent-postgresql unliftio-core yam-app
        ];
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "yam-web" = callPackage
@@ -287674,7 +285388,6 @@ self: {
        description = "Yam Web";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yamemo" = callPackage
@@ -287833,7 +285546,6 @@ self: {
        description = "Scotty server backend for yaml-rpc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yaml-rpc-snap" = callPackage
@@ -287851,7 +285563,6 @@ self: {
        description = "Snap server backend for yaml-rpc";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yaml-union" = callPackage
@@ -287891,8 +285602,8 @@ self: {
      }:
      mkDerivation {
        pname = "yaml-unscrambler";
-       version = "0.1.0.1";
-       sha256 = "05z892g8c9alwmjwjm1405s43s8cdbj42ymqc9jlb27qc8ikc4n7";
+       version = "0.1.0.2";
+       sha256 = "03wvb5skx41kdmdc6zhydr7zddzyshy2cgk8zmwy26q70z3g01zf";
        libraryHaskellDepends = [
          acc attoparsec attoparsec-data attoparsec-time base base64
          bytestring conduit containers foldl hashable libyaml mtl scientific
@@ -287906,7 +285617,6 @@ self: {
        description = "Flexible declarative YAML parsing toolkit";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yaml2owl" = callPackage
@@ -287953,8 +285663,8 @@ self: {
      }:
      mkDerivation {
        pname = "yamlparse-applicative";
-       version = "0.1.0.3";
-       sha256 = "14fp7qyfh9ax2cqp5amvj2hi8fl9imdq25j8bx5mil8f2jxqr6bi";
+       version = "0.1.0.4";
+       sha256 = "19z6bg8pvhaccc4pc89a2hc1f1g9x66ma179gfx36pjgqdkp0fg1";
        libraryHaskellDepends = [
          aeson base bytestring containers optparse-applicative path path-io
          prettyprinter safe-coloured-text scientific text
@@ -288242,7 +285952,6 @@ self: {
        description = "Image IO for Yarr library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libdevil;};
 
   "yasi" = callPackage
@@ -288262,8 +285971,6 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "Yet another string interpolator";
        license = lib.licenses.cc0;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yate" = callPackage
@@ -288303,7 +286010,6 @@ self: {
        description = "yet another visual editor";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yaya" = callPackage
@@ -288400,7 +286106,6 @@ self: {
        description = "Additional utilities to work with Yhc Core";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yeamer" = callPackage
@@ -288437,7 +286142,6 @@ self: {
        description = "Yesod-based server for interactive presentation slides";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yeganesh" = callPackage
@@ -288516,7 +286220,6 @@ self: {
        description = "YesQL-style SQL database abstraction (legacy compatibility wrapper)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yeshql-core" = callPackage
@@ -288592,27 +286295,6 @@ self: {
      }:
      mkDerivation {
        pname = "yesod";
-       version = "1.6.1.0";
-       sha256 = "1jk55fm58ywp69khacw8n3qk2aybsrlh4bkinjgrah3w01kflmyw";
-       libraryHaskellDepends = [
-         aeson base bytestring conduit data-default-class directory
-         fast-logger file-embed monad-logger shakespeare streaming-commons
-         template-haskell text unix unordered-containers wai wai-extra
-         wai-logger warp yaml yesod-core yesod-form yesod-persistent
-       ];
-       description = "Creation of type-safe, RESTful web applications";
-       license = lib.licenses.mit;
-     }) {};
-
-  "yesod_1_6_1_1" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit
-     , data-default-class, directory, fast-logger, file-embed
-     , monad-logger, shakespeare, streaming-commons, template-haskell
-     , text, unix, unordered-containers, wai, wai-extra, wai-logger
-     , warp, yaml, yesod-core, yesod-form, yesod-persistent
-     }:
-     mkDerivation {
-       pname = "yesod";
        version = "1.6.1.1";
        sha256 = "1iiaixd1xrqjcvknl9g3yvr26nbpfa2amh2ayfxmnpjlxvdhfnyn";
        libraryHaskellDepends = [
@@ -288623,7 +286305,6 @@ self: {
        ];
        description = "Creation of type-safe, RESTful web applications";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "yesod-alerts" = callPackage
@@ -288701,7 +286382,6 @@ self: {
        description = "Automatically generate article previews for a yesod site";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-auth" = callPackage
@@ -288717,34 +286397,6 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.6.10.2";
-       sha256 = "16c4rddfmpw1smk7zayflwp1xy3avrqcr0cv6qx4aq949zpn6lz8";
-       libraryHaskellDepends = [
-         aeson authenticate base base16-bytestring base64-bytestring binary
-         blaze-builder blaze-html blaze-markup bytestring conduit
-         conduit-extra containers cryptonite data-default email-validate
-         file-embed http-client http-client-tls http-conduit http-types
-         memory network-uri nonce persistent random safe shakespeare
-         template-haskell text time transformers unliftio unliftio-core
-         unordered-containers wai yesod-core yesod-form yesod-persistent
-       ];
-       description = "Authentication for Yesod";
-       license = lib.licenses.mit;
-     }) {};
-
-  "yesod-auth_1_6_10_3" = callPackage
-    ({ mkDerivation, aeson, authenticate, base, base16-bytestring
-     , base64-bytestring, binary, blaze-builder, blaze-html
-     , blaze-markup, bytestring, conduit, conduit-extra, containers
-     , cryptonite, data-default, email-validate, file-embed, http-client
-     , http-client-tls, http-conduit, http-types, memory, network-uri
-     , nonce, persistent, random, safe, shakespeare, template-haskell
-     , text, time, transformers, unliftio, unliftio-core
-     , unordered-containers, wai, yesod-core, yesod-form
-     , yesod-persistent
-     }:
-     mkDerivation {
-       pname = "yesod-auth";
        version = "1.6.10.3";
        sha256 = "00a7gbp2czg6ixxx62k2nmrj5g1la6cjh697y8vg9xhxq7vpyshg";
        libraryHaskellDepends = [
@@ -288758,7 +286410,6 @@ self: {
        ];
        description = "Authentication for Yesod";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "yesod-auth-account" = callPackage
@@ -288913,8 +286564,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth-hashdb";
-       version = "1.7.1.5";
-       sha256 = "14isl9mwxarba14aqhidi82yci36jdws6af2jirv7z8mfnrwysbi";
+       version = "1.7.1.7";
+       sha256 = "1daibkn5qhw131pp0sfyahyicwlgpin90zkcrwr2qk05ms5j3hj5";
        libraryHaskellDepends = [
          aeson base bytestring persistent text yesod-auth yesod-core
          yesod-form yesod-persistent
@@ -288929,32 +286580,6 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "yesod-auth-hashdb_1_7_1_6" = callPackage
-    ({ mkDerivation, aeson, base, basic-prelude, bytestring, containers
-     , hspec, http-conduit, http-types, monad-logger, network-uri
-     , persistent, persistent-sqlite, resourcet, text
-     , unordered-containers, wai-extra, yesod, yesod-auth, yesod-core
-     , yesod-form, yesod-persistent, yesod-test
-     }:
-     mkDerivation {
-       pname = "yesod-auth-hashdb";
-       version = "1.7.1.6";
-       sha256 = "062f2fv4ixr5bd5xcs208xfg2i18z25g3imf86qrziv0yxxg5qpc";
-       libraryHaskellDepends = [
-         aeson base bytestring persistent text yesod-auth yesod-core
-         yesod-form yesod-persistent
-       ];
-       testHaskellDepends = [
-         aeson base basic-prelude bytestring containers hspec http-conduit
-         http-types monad-logger network-uri persistent-sqlite resourcet
-         text unordered-containers wai-extra yesod yesod-auth yesod-core
-         yesod-test
-       ];
-       description = "Authentication plugin for Yesod";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
   "yesod-auth-hmac-keccak" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cryptonite, mtl
      , persistent, random, shakespeare, text, yesod-auth, yesod-core
@@ -289009,7 +286634,6 @@ self: {
        description = "LDAP Authentication for Yesod";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-auth-ldap-mediocre" = callPackage
@@ -289069,7 +286693,6 @@ self: {
        description = "A yesod-auth plugin for LTI 1.3";
        license = lib.licenses.lgpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-auth-nopassword" = callPackage
@@ -289114,8 +286737,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth-oauth2";
-       version = "0.6.3.0";
-       sha256 = "0h2rvq0fb4alwz595a2rzmfv2a370shy58ga9n18vp4xg0pw6i28";
+       version = "0.6.3.4";
+       sha256 = "1hy90iz3f52kg7vs5k27mqpzhfncvag9sb9vs8gl7v89caa1pdjz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -289126,8 +286749,6 @@ self: {
        testHaskellDepends = [ base hspec uri-bytestring ];
        description = "OAuth 2.0 authentication plugins";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-auth-pam" = callPackage
@@ -289185,6 +286806,25 @@ self: {
        broken = true;
      }) {};
 
+  "yesod-autoreload" = callPackage
+    ({ mkDerivation, base, shakespeare, text, yesod-core
+     , yesod-websockets
+     }:
+     mkDerivation {
+       pname = "yesod-autoreload";
+       version = "0.0.0.0";
+       sha256 = "1dzig02l00hw9xz974pf923yr6045x45sw8nnhnqw8rd67r2l7d3";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base shakespeare text yesod-core yesod-websockets
+       ];
+       executableHaskellDepends = [ base yesod-core ];
+       testHaskellDepends = [ base ];
+       description = "Auto-reload a yesod app during development";
+       license = lib.licenses.mit;
+     }) {};
+
   "yesod-bin" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, conduit, conduit-extra
      , containers, data-default-class, directory, file-embed, filepath
@@ -289247,7 +286887,6 @@ self: {
        description = "Helper functions for using yesod with colonnade";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-comments" = callPackage
@@ -289310,28 +286949,27 @@ self: {
        description = "Continuations for Yesod";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-core" = callPackage
     ({ mkDerivation, aeson, async, auto-update, base, blaze-html
      , blaze-markup, bytestring, case-insensitive, cereal, clientsession
-     , conduit, conduit-extra, containers, cookie, deepseq, fast-logger
-     , gauge, hspec, hspec-expectations, http-types, HUnit, memory
-     , monad-logger, mtl, network, parsec, path-pieces, primitive
-     , random, resourcet, shakespeare, streaming-commons
+     , conduit, conduit-extra, containers, cookie, deepseq, entropy
+     , fast-logger, gauge, hspec, hspec-expectations, http-types, HUnit
+     , memory, monad-logger, mtl, network, parsec, path-pieces
+     , primitive, random, resourcet, shakespeare, streaming-commons
      , template-haskell, text, time, transformers, unix-compat, unliftio
      , unordered-containers, vector, wai, wai-extra, wai-logger, warp
      , word8
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.6.19.0";
-       sha256 = "00mqvq47jf4ljqwj20jn5326hrap5gbm5bqq2xkijfs4ymmyw6vd";
+       version = "1.6.20.1";
+       sha256 = "1y24sn30fm7bjq9rfv4lclz3vraaac9qbd2xgz949agm2irjwg4p";
        libraryHaskellDepends = [
          aeson auto-update base blaze-html blaze-markup bytestring
          case-insensitive cereal clientsession conduit conduit-extra
-         containers cookie deepseq fast-logger http-types memory
+         containers cookie deepseq entropy fast-logger http-types memory
          monad-logger mtl parsec path-pieces primitive random resourcet
          shakespeare template-haskell text time transformers unix-compat
          unliftio unordered-containers vector wai wai-extra wai-logger warp
@@ -289527,7 +287165,6 @@ self: {
        description = "Example programs using the Yesod Web Framework. (deprecated)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) sqlite;};
 
   "yesod-fast-devel" = callPackage
@@ -289570,8 +287207,6 @@ self: {
        ];
        description = "Utilities for using the Fay Haskell-to-JS compiler with Yesod";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-fb" = callPackage
@@ -289814,7 +287449,6 @@ self: {
        description = "Code for using the ip package with yesod";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-job-queue" = callPackage
@@ -289912,7 +287546,6 @@ self: {
        description = "Yesod library for MangoPay API access";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-markdown" = callPackage
@@ -289922,28 +287555,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-markdown";
-       version = "0.12.6.8";
-       sha256 = "1jlnci0wkfg04qvad7qx19321s8jf2rskjghirwcqy1abg3bf96p";
-       libraryHaskellDepends = [
-         base blaze-html blaze-markup bytestring directory pandoc persistent
-         shakespeare text xss-sanitize yesod-core yesod-form
-       ];
-       testHaskellDepends = [ base blaze-html hspec text ];
-       description = "Tools for using markdown in a yesod application";
-       license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "yesod-markdown_0_12_6_9" = callPackage
-    ({ mkDerivation, base, blaze-html, blaze-markup, bytestring
-     , directory, hspec, pandoc, persistent, shakespeare, text
-     , xss-sanitize, yesod-core, yesod-form
-     }:
-     mkDerivation {
-       pname = "yesod-markdown";
-       version = "0.12.6.9";
-       sha256 = "05s63nx27f823b47yy70p9kqxi1cvfk226zgb0qhs5a2q70nxj7z";
+       version = "0.12.6.11";
+       sha256 = "044m6a949yifvyxbbc15ms11sdxvljvb68187h5v6xk0qw0p33i9";
        libraryHaskellDepends = [
          base blaze-html blaze-markup bytestring directory pandoc persistent
          shakespeare text xss-sanitize yesod-core yesod-form
@@ -289951,8 +287564,6 @@ self: {
        testHaskellDepends = [ base blaze-html hspec text ];
        description = "Tools for using markdown in a yesod application";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-media-simple" = callPackage
@@ -289969,8 +287580,6 @@ self: {
        ];
        description = "Simple display of media types, served by yesod";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-newsfeed" = callPackage
@@ -289998,8 +287607,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-page-cursor";
-       version = "2.0.0.6";
-       sha256 = "0if4pwpzpr48cz1vixk234fdl4lj3895ma9ak8x917sc3cgp2kv1";
+       version = "2.0.0.8";
+       sha256 = "1azd2kv5b36kryz3l587mn329a46m8mp4z8knzx5va24bmhca9jy";
        libraryHaskellDepends = [
          aeson base bytestring containers http-link-header network-uri text
          unliftio yesod-core
@@ -290011,8 +287620,6 @@ self: {
          time unliftio unliftio-core wai-extra yesod yesod-core yesod-test
        ];
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-paginate" = callPackage
@@ -290083,7 +287690,6 @@ self: {
        description = "Yesod plugin to use PayPal with the paypal-rest-client library";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-persistent" = callPackage
@@ -290093,8 +287699,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-persistent";
-       version = "1.6.0.6";
-       sha256 = "169bwdnaxw926yr5wbcgf7n6v914sgv2vw6ywc95b5xpm0i0dyph";
+       version = "1.6.0.7";
+       sha256 = "102xmp7n08sk1g5rv31jpln2v9kqf1zsqsnmi83mnhmgggcbj1k4";
        libraryHaskellDepends = [
          base blaze-builder conduit persistent persistent-template
          resource-pool resourcet transformers yesod-core
@@ -290175,7 +287781,6 @@ self: {
        description = "Meta package for Yesod (deprecated)";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-pnotify" = callPackage
@@ -290231,7 +287836,6 @@ self: {
        description = "PureScript integration for Yesod";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-raml" = callPackage
@@ -290280,7 +287884,6 @@ self: {
        description = "The raml helper executable";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-raml-docs" = callPackage
@@ -290298,7 +287901,6 @@ self: {
        description = "A html documentation generator library for RAML";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-raml-mock" = callPackage
@@ -290323,7 +287925,6 @@ self: {
        description = "A mock-handler generator library from RAML";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-recaptcha" = callPackage
@@ -290417,7 +288018,6 @@ self: {
        description = "generate TypeScript routes for Yesod";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-rst" = callPackage
@@ -290490,7 +288090,6 @@ self: {
        description = "Redis-Powered Sessions for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yesod-sitemap" = callPackage
@@ -290888,8 +288487,6 @@ self: {
        ];
        description = "Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-contrib" = callPackage
@@ -290940,8 +288537,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion deepseq yi-rope ];
        description = "Yi editor core library";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-dynamic-configuration" = callPackage
@@ -290958,8 +288553,6 @@ self: {
        ];
        description = "Dynamic configuration support for Yi";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-emacs-colours" = callPackage
@@ -290971,8 +288564,6 @@ self: {
        libraryHaskellDepends = [ base containers split yi-language ];
        description = "Simple mapping from colour names used in emacs to Color";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-frontend-pango" = callPackage
@@ -290992,8 +288583,6 @@ self: {
        ];
        description = "Pango frontend for Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-frontend-vty" = callPackage
@@ -291011,8 +288600,6 @@ self: {
        ];
        description = "Vty frontend for Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-fuzzy-open" = callPackage
@@ -291031,8 +288618,6 @@ self: {
        ];
        description = "Fuzzy open plugin for yi";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-gtk" = callPackage
@@ -291060,8 +288645,6 @@ self: {
        ];
        description = "Yi editor incremental reader";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-keymap-cua" = callPackage
@@ -291077,8 +288660,6 @@ self: {
        ];
        description = "Cua keymap for Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-keymap-emacs" = callPackage
@@ -291096,8 +288677,6 @@ self: {
        ];
        description = "Emacs keymap for Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-keymap-vim" = callPackage
@@ -291124,8 +288703,6 @@ self: {
        ];
        description = "Vim keymap for Yi editor";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-language" = callPackage
@@ -291153,8 +288730,6 @@ self: {
        ];
        description = "Collection of language-related Yi libraries";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-misc-modes" = callPackage
@@ -291172,8 +288747,6 @@ self: {
        libraryToolDepends = [ alex ];
        description = "Yi editor miscellaneous modes";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-mode-haskell" = callPackage
@@ -291191,8 +288764,6 @@ self: {
        libraryToolDepends = [ alex ];
        description = "Yi editor haskell mode";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-mode-javascript" = callPackage
@@ -291211,8 +288782,6 @@ self: {
        libraryToolDepends = [ alex ];
        description = "Yi editor javascript mode";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-monokai" = callPackage
@@ -291265,8 +288834,6 @@ self: {
        ];
        description = "Snippet support for yi";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yi-solarized" = callPackage
@@ -291391,7 +288958,6 @@ self: {
        description = "CUI FTP client like 'ftp', 'ncftp'";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yjftp-libs" = callPackage
@@ -291406,7 +288972,6 @@ self: {
        description = "CUI FTP client like 'ftp', 'ncftp'";
        license = "GPL";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yjsvg" = callPackage
@@ -291458,8 +289023,6 @@ self: {
        libraryHaskellDepends = [ base free mtl ];
        description = "A truly tiny monadic parsing library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yoda" = callPackage
@@ -291506,7 +289069,6 @@ self: {
        description = "Generic Programming with Disbanded Data Types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "york-lava" = callPackage
@@ -291519,7 +289081,6 @@ self: {
        description = "A library for digital circuit description";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "youtube" = callPackage
@@ -291561,7 +289122,6 @@ self: {
        description = "A YQL engine to execute Open Data Tables";
        license = lib.licenses.bsd2;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yst" = callPackage
@@ -291614,8 +289174,6 @@ self: {
        testHaskellDepends = [ base MonadRandom random yu-utils ];
        description = "Auth module for Yu";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yu-core" = callPackage
@@ -291646,7 +289204,6 @@ self: {
        description = "The launcher for Yu";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yu-tool" = callPackage
@@ -291689,8 +289246,6 @@ self: {
        ];
        description = "Utils for Yu";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yuiGrid" = callPackage
@@ -291727,7 +289282,6 @@ self: {
        description = "A transcendental HTML parser gently wrapping the HXT library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yx" = callPackage
@@ -291740,8 +289294,6 @@ self: {
        testHaskellDepends = [ array base bytestring hspec mtl ];
        description = "Row-major coordinates";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "yxdb-utils" = callPackage
@@ -291895,7 +289447,6 @@ self: {
        description = "lojban parser (zasni gerna)";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zbar" = callPackage
@@ -291909,8 +289460,6 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "zbar bindings in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zbar;};
 
   "zcache" = callPackage
@@ -292102,7 +289651,6 @@ self: {
        description = "Zephyr, tree-shaking for the PureScript language";
        license = lib.licenses.mpl20;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zero" = callPackage
@@ -292136,7 +289684,6 @@ self: {
        description = "Post to 0bin services";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zeromq-haskell" = callPackage
@@ -292174,7 +289721,6 @@ self: {
        description = "Conduit bindings for zeromq3-haskell";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zeromq3-haskell" = callPackage
@@ -292198,7 +289744,6 @@ self: {
        description = "Bindings to ZeroMQ 3.x";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zeromq;};
 
   "zeromq4-clone-pattern" = callPackage
@@ -292332,7 +289877,6 @@ self: {
        description = "ZeroTH - remove unnecessary TH dependencies";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zettelkast" = callPackage
@@ -292400,7 +289944,6 @@ self: {
        description = "zifter-cabal";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zifter-git" = callPackage
@@ -292413,7 +289956,6 @@ self: {
        description = "zifter-git";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zifter-google-java-format" = callPackage
@@ -292430,7 +289972,6 @@ self: {
        description = "zifter-google-java-format";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zifter-hindent" = callPackage
@@ -292447,7 +289988,6 @@ self: {
        description = "zifter-hindent";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zifter-hlint" = callPackage
@@ -292463,7 +290003,6 @@ self: {
        description = "zifter-hlint";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zifter-stack" = callPackage
@@ -292484,7 +290023,6 @@ self: {
        description = "zifter-stack";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zigbee-znet25" = callPackage
@@ -292715,7 +290253,6 @@ self: {
        description = "Generic zipper for families of recursive datatypes";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zipper-extra" = callPackage
@@ -292759,7 +290296,6 @@ self: {
        description = "A simple lens-based, generic, heterogenous, type-checked zipper library";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ziptastic-client" = callPackage
@@ -292782,7 +290318,6 @@ self: {
        description = "A type-safe client for the Ziptastic API for doing forward and reverse geocoding";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "ziptastic-core" = callPackage
@@ -292865,7 +290400,6 @@ self: {
        description = "Enumerator interface for zlib compression";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zlib-lens" = callPackage
@@ -292916,7 +290450,6 @@ self: {
        description = "Command-line tool for ZeroMQ";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zmidi-core" = callPackage
@@ -293030,7 +290563,6 @@ self: {
        description = "A streamable, seekable, zoomable cache file format";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zoom-cache-pcm" = callPackage
@@ -293048,7 +290580,6 @@ self: {
        description = "Library for zoom-cache PCM audio codecs";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zoom-cache-sndfile" = callPackage
@@ -293069,7 +290600,6 @@ self: {
        description = "Tools for generating zoom-cache-pcm files";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zoom-refs" = callPackage
@@ -293089,15 +290619,14 @@ self: {
     ({ mkDerivation, base, hspec, Z-Data, Z-IO, zookeeper_mt }:
      mkDerivation {
        pname = "zoovisitor";
-       version = "0.1.1.0";
-       sha256 = "16y2j12zl8arwv2m0crllrrf09l4ar1s2v9wrfzjmxnk80vhncf1";
+       version = "0.1.1.1";
+       sha256 = "1mg3wz3drddxdrbr1b0yw5wayzqi99zfdlgiwvgcc5pxb98i6wk3";
        libraryHaskellDepends = [ base Z-Data Z-IO ];
        librarySystemDepends = [ zookeeper_mt ];
        testHaskellDepends = [ base hspec ];
        description = "A haskell binding to Apache Zookeeper C library(mt) using Haskell Z project";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) zookeeper_mt;};
 
   "zot" = callPackage
@@ -293298,7 +290827,6 @@ self: {
        description = "A lisp processor, An inline-lisp, in Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "zuul" = callPackage
diff --git a/nixpkgs/pkgs/development/haskell-modules/lib.nix b/nixpkgs/pkgs/development/haskell-modules/lib.nix
index 1537cd6466cd..b0d036e0e3e8 100644
--- a/nixpkgs/pkgs/development/haskell-modules/lib.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/lib.nix
@@ -196,6 +196,16 @@ rec {
   appendPatch = drv: x: appendPatches drv [x];
   appendPatches = drv: xs: overrideCabal drv (drv: { patches = (drv.patches or []) ++ xs; });
 
+  /* Set a specific build target instead of compiling all targets in the package.
+   * For example, imagine we have a .cabal file with a library, and 2 executables "dev" and "server".
+   * We can build only "server" and not wait on the compilation of "dev" by using setBuildTarget as follows:
+   *
+   *   setBuildTarget (callCabal2nix "thePackageName" thePackageSrc {}) "server"
+   *
+   */
+  setBuildTargets = drv: xs: overrideCabal drv (drv: { buildTarget = lib.concatStringsSep " " xs; });
+  setBuildTarget = drv: x: setBuildTargets drv [x];
+
   doHyperlinkSource = drv: overrideCabal drv (drv: { hyperlinkSource = true; });
   dontHyperlinkSource = drv: overrideCabal drv (drv: { hyperlinkSource = false; });
 
diff --git a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
index 2641892672af..5d178e3b5a1b 100644
--- a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
@@ -249,7 +249,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
     # a cabal flag with '--flag=myflag'.
     developPackage =
       { root
-      , name ? builtins.baseNameOf root
+      , name ? if builtins.typeOf root == "path" then builtins.baseNameOf root else ""
       , source-overrides ? {}
       , overrides ? self: super: {}
       , modifier ? drv: drv
diff --git a/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix b/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
index 86123d8a70f4..1882d68f2343 100644
--- a/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
@@ -11,6 +11,10 @@ self: super: {
 
   ldgallery-compiler = self.callPackage ../../tools/graphics/ldgallery/compiler { };
 
+  # Used by maintainers/scripts/regenerate-hackage-packages.sh, and generated
+  # from the latest master instead of the current version on Hackage.
+  cabal2nix-unstable = self.callPackage ./cabal2nix-unstable.nix { };
+
   # https://github.com/channable/vaultenv/issues/1
   vaultenv = self.callPackage ../tools/haskell/vaultenv { };
 
diff --git a/nixpkgs/pkgs/development/haskell-modules/patches/dyre-nix.patch b/nixpkgs/pkgs/development/haskell-modules/patches/dyre-nix.patch
deleted file mode 100644
index 458e540e0c4a..000000000000
--- a/nixpkgs/pkgs/development/haskell-modules/patches/dyre-nix.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- dyre-0.8.12/Config/Dyre/Compile.hs	2015-04-13 11:00:20.794278350 +0100
-+++ dyre-0.8.12-patched/Config/Dyre/Compile.hs	2015-04-13 11:07:26.938893502 +0100
-@@ -10,11 +10,13 @@
- import System.FilePath   ( (</>) )
- import System.Directory  ( getCurrentDirectory, doesFileExist
-                          , createDirectoryIfMissing )
-+import System.Environment ( lookupEnv )
-+import Control.Applicative ((<$>))
- import Control.Exception ( bracket )
--import GHC.Paths         ( ghc )
- 
- import Config.Dyre.Paths  ( getPaths )
- import Config.Dyre.Params ( Params(..) )
-+import Data.Maybe         ( fromMaybe )
- 
- -- | Return the path to the error file.
- getErrorPath :: Params cfgType -> IO FilePath
-@@ -47,6 +49,7 @@
-     errFile <- getErrorPath params
-     result <- bracket (openFile errFile WriteMode) hClose $ \errHandle -> do
-         ghcOpts <- makeFlags params configFile tempBinary cacheDir libsDir
-+        ghc <- fromMaybe "ghc" <$> lookupEnv "NIX_GHC"
-         ghcProc <- runProcess ghc ghcOpts (Just cacheDir) Nothing
-                               Nothing Nothing (Just errHandle)
-         waitForProcess ghcProc
diff --git a/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix b/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
index 0e566aa2e6e4..fdcd40fc99b0 100644
--- a/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, ghc, llvmPackages, packages, symlinkJoin, makeWrapper
-, withLLVM ? false
+, withLLVM ? !(stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isPowerPC)
 , postBuild ? ""
 , ghcLibdir ? null # only used by ghcjs, when resolving plugins
 }:
diff --git a/nixpkgs/pkgs/development/idris-modules/data.nix b/nixpkgs/pkgs/development/idris-modules/data.nix
deleted file mode 100644
index 0517edec2d24..000000000000
--- a/nixpkgs/pkgs/development/idris-modules/data.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ build-idris-package
-, fetchFromGitHub
-, contrib
-, lib
-}:
-build-idris-package  {
-  name = "data";
-  version = "2018-03-19";
-
-  idrisDeps = [ contrib ];
-
-  src = fetchFromGitHub {
-    owner = "jdevuyst";
-    repo = "idris-data";
-    rev = "105b78ac13235edc596287367a675d7cd04ce5d5";
-    sha256 = "17wz4jddan39984qibx2x7nv2zkqznv0fpab20nrm4zgy17v77ii";
-  };
-
-  meta = {
-    description = "Functional data structures in Idris";
-    homepage = "https://github.com/jdevuyst/idris-data";
-    license = lib.licenses.bsd3;
-    maintainers = [ lib.maintainers.brainrape ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/idris-modules/default.nix b/nixpkgs/pkgs/development/idris-modules/default.nix
index 7011a513c101..d6fb1ac78bd6 100644
--- a/nixpkgs/pkgs/development/idris-modules/default.nix
+++ b/nixpkgs/pkgs/development/idris-modules/default.nix
@@ -75,8 +75,6 @@
 
     cube = callPackage ./cube.nix {};
 
-    data = callPackage ./data.nix {};
-
     derive = callPackage ./derive.nix {};
 
     descncrunch = callPackage ./descncrunch.nix {};
diff --git a/nixpkgs/pkgs/development/idris-modules/sdl2.nix b/nixpkgs/pkgs/development/idris-modules/sdl2.nix
index 943db9e87a0f..2e06b0368255 100644
--- a/nixpkgs/pkgs/development/idris-modules/sdl2.nix
+++ b/nixpkgs/pkgs/development/idris-modules/sdl2.nix
@@ -12,8 +12,11 @@ build-idris-package rec {
 
   idrisDeps = [ effects ];
 
-  extraBuildInputs = [
+  nativeBuildInputs = [
     pkg-config
+  ];
+
+  extraBuildInputs = [
     SDL2
     SDL2_gfx
   ];
@@ -24,7 +27,7 @@ build-idris-package rec {
     owner = "steshaw";
     repo = "idris-sdl2";
     rev = version;
-    sha256 = "0hqhg7l6wpkdbzrdjvrbqymmahziri07ba0hvbii7dd2p0h248fv";
+    sha256 = "1jslnlzyw04dcvcd7xsdjqa7waxzkm5znddv76sv291jc94xhl4a";
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/development/interpreters/acl2/libipasirglucose4/default.nix b/nixpkgs/pkgs/development/interpreters/acl2/libipasirglucose4/default.nix
index b9a61b88a306..5c10c176c14a 100644
--- a/nixpkgs/pkgs/development/interpreters/acl2/libipasirglucose4/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/acl2/libipasirglucose4/default.nix
@@ -1,6 +1,11 @@
 { lib, stdenv, fetchurl, zlib, unzip }:
 
-stdenv.mkDerivation rec {
+let
+
+  cxx = "${stdenv.cc.targetPrefix}c++";
+  libName = "libipasirglucose4" + stdenv.targetPlatform.extensions.sharedLibrary;
+
+in stdenv.mkDerivation rec {
   pname = "libipasirglucose4";
   # This library has no version number AFAICT (beyond generally being based on
   # Glucose 4.x), but it was submitted to the 2017 SAT competition so let's use
@@ -18,13 +23,16 @@ stdenv.mkDerivation rec {
   sourceRoot = "sat/glucose4";
   patches = [ ./0001-Support-shared-library-build.patch ];
 
+  makeFlags = [ "CXX=${cxx}" ];
+
   postBuild = ''
-    g++ -shared -Wl,-soname,libipasirglucose4.so -o libipasirglucose4.so \
+    ${cxx} -shared -o ${libName} \
+        ${if stdenv.cc.isClang then "" else "-Wl,-soname,${libName}"} \
         ipasirglucoseglue.o libipasirglucose4.a
   '';
 
   installPhase = ''
-    install -D libipasirglucose4.so $out/lib/libipasirglucose4.so
+    install -D ${libName} $out/lib/${libName}
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/interpreters/angelscript/default.nix b/nixpkgs/pkgs/development/interpreters/angelscript/default.nix
index 3fbd64467fec..9a6aae053f9d 100644
--- a/nixpkgs/pkgs/development/interpreters/angelscript/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/angelscript/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, unzip}:
+{ lib, stdenv, fetchurl, unzip, cmake }:
 let
   s = # Generated upstream information
   rec {
@@ -12,25 +12,32 @@ let
 in
 stdenv.mkDerivation {
   inherit (s) name version;
-  nativeBuildInputs = [ unzip ];
+
   src = fetchurl {
     inherit (s) url sha256;
   };
+
+  nativeBuildInputs = [ unzip cmake ];
+
   preConfigure = ''
-    cd angelscript/projects/gnuc
-    export makeFlags="$makeFlags PREFIX=$out"
+    export ROOT=$PWD
+    cd angelscript/projects/cmake
   '';
+
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+
   postInstall = ''
     mkdir -p "$out/share/docs/angelscript"
-    cp -r ../../../docs/* "$out/share/docs/angelscript"
+    cp -r $ROOT/docs/* "$out/share/docs/angelscript"
   '';
-  meta = {
+
+  meta = with lib; {
     inherit (s) version;
     description = "Light-weight scripting library";
-    license = lib.licenses.zlib ;
-    maintainers = [lib.maintainers.raskin];
-    platforms = lib.platforms.linux;
-    downloadPage = "http://www.angelcode.com/angelscript/downloads.html";
-    homepage="http://www.angelcode.com/angelscript/";
+    license = licenses.zlib;
+    maintainers = with maintainers; [ raskin ];
+    platforms = platforms.all;
+    downloadPage = "https://www.angelcode.com/angelscript/downloads.html";
+    homepage = "https://www.angelcode.com/angelscript/";
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/cling/default.nix b/nixpkgs/pkgs/development/interpreters/cling/default.nix
index dbc2751e7899..73ed5b523dde 100644
--- a/nixpkgs/pkgs/development/interpreters/cling/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/cling/default.nix
@@ -10,6 +10,7 @@
 , runCommandNoCC
 , llvmPackages_5
 , glibc
+, ncurses
 }:
 
 let
@@ -38,8 +39,8 @@ let
       chmod -R a+w ./tools/cling
     '';
 
-    nativeBuildInputs = [ python3 git cmake ];
-    buildInputs = [ libffi llvmPackages_5.llvm zlib ];
+    nativeBuildInputs = [ python3 git cmake llvmPackages_5.llvm.dev ];
+    buildInputs = [ libffi llvmPackages_5.llvm zlib ncurses ];
 
     strictDeps = true;
 
@@ -76,8 +77,8 @@ let
     "-nostdinc"
     "-nostdinc++"
     "-isystem" "${lib.getDev stdenv.cc.libc}/include"
-    "-I" "${unwrapped}/include"
-    "-I" "${unwrapped}/lib/clang/5.0.2/include"
+    "-I" "${lib.getDev unwrapped}/include"
+    "-I" "${lib.getLib unwrapped}/lib/clang/5.0.2/include"
   ];
 
   # Autodetect the include paths for the compiler used to build Cling, in the same way Cling does at
diff --git a/nixpkgs/pkgs/development/interpreters/clips/default.nix b/nixpkgs/pkgs/development/interpreters/clips/default.nix
index 64fd89008e33..2edeaf9e4e87 100644
--- a/nixpkgs/pkgs/development/interpreters/clips/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/clips/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "6.31";
+  version = "6.40";
   pname = "clips";
 
   src = fetchurl {
     url = "mirror://sourceforge/clipsrules/CLIPS/${version}/clips_core_source_${
         builtins.replaceStrings [ "." ] [ "" ] version
       }.tar.gz";
-    sha256 = "165k0z7dsv04q432sanmw0jxmxwf56cnhsdfw5ffjqxd3lzkjnv6";
+    sha256 = "1pr5l61zxf6kjs8b2b028g2aq45pigavwjmrf4l5mrdmlnk3fq5d";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/babashka.nix b/nixpkgs/pkgs/development/interpreters/clojure/babashka.nix
index 774bcbe11b21..e52d6c20b970 100644
--- a/nixpkgs/pkgs/development/interpreters/clojure/babashka.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojure/babashka.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "babashka";
-  version = "0.3.5";
+  version = "0.4.3";
 
   reflectionJson = fetchurl {
     name = "reflection.json";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
-    sha256 = "sha256-tOLT5W5kK38fb9XL9jOQpw0LjHPjbn+BarckbCuwQAc=";
+    sha256 = "sha256-teZKAwSv9wliVFKdT76yQjMC5g7SGPAqcq/jZ07sYjQ=";
   };
 
   dontUnpack = true;
@@ -110,9 +110,15 @@ stdenv.mkDerivation rec {
     - Batteries included (tools.cli, cheshire, ...)
     - Library support via popular tools like the clojure CLI
     '';
-    homepage = "https://github.com/borkdude/babashka";
+    homepage = "https://github.com/babashka/babashka";
     license = licenses.epl10;
     platforms = graalvm11-ce.meta.platforms;
-    maintainers = with maintainers; [ bandresen bhougland DerGuteMoritz jlesquembre ];
+    maintainers = with maintainers; [
+      bandresen
+      bhougland
+      DerGuteMoritz
+      jlesquembre
+      thiagokokada
+    ];
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/default.nix b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
index a96fb03aab20..9ae94f0a2487 100644
--- a/nixpkgs/pkgs/development/interpreters/clojure/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "clojure";
-  version = "1.10.3.814";
+  version = "1.10.3.855";
 
   src = fetchurl {
     # https://clojure.org/releases/tools
     url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
-    sha256 = "sha256-+jpnhuKPvxKJA8xDo9GiRKpFJdPYRJTssmZtafadEn4=";
+    sha256 = "sha256-y2PuOBRq5kZlTpPV8NwkWhspQKlNxwjl+k/Drwixk4Q=";
   };
 
   nativeBuildInputs = [
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     makeWrapper
   ];
 
-  # See https://github.com/clojure/brew-install/blob/1.10.1/src/main/resources/clojure/install/linux-install.sh
+  # See https://github.com/clojure/brew-install/blob/1.10.3/src/main/resources/clojure/install/linux-install.sh
   installPhase =
     let
       binPath = lib.makeBinPath [ rlwrap jdk ];
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
 
       echo "Installing clojure and clj into $bin_dir"
       substituteInPlace clojure --replace PREFIX $out
+      substituteInPlace clj --replace BINDIR $bin_dir
       install -Dm755 clojure "$bin_dir/clojure"
       install -Dm755 clj "$bin_dir/clj"
 
diff --git a/nixpkgs/pkgs/development/interpreters/elixir/1.12.nix b/nixpkgs/pkgs/development/interpreters/elixir/1.12.nix
new file mode 100644
index 000000000000..cd5246d989d1
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/elixir/1.12.nix
@@ -0,0 +1,9 @@
+{ mkDerivation }:
+
+# How to obtain `sha256`:
+# nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz
+mkDerivation {
+  version = "1.12.1";
+  sha256 = "sha256-gRgGXb4btMriQwT/pRIYOJt+NM7rtYBd+A3SKfowC7k=";
+  minimumOTPVersion = "22";
+}
diff --git a/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix b/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
index 0e4beaa8508f..646fd70ff8f9 100644
--- a/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
+++ b/nixpkgs/pkgs/development/interpreters/elixir/generic-builder.nix
@@ -1,5 +1,14 @@
-{ pkgs, lib, stdenv, fetchFromGitHub, erlang, makeWrapper,
-  coreutils, curl, bash, debugInfo ? false }:
+{ pkgs
+, lib
+, stdenv
+, fetchFromGitHub
+, erlang
+, makeWrapper
+, coreutils
+, curl
+, bash
+, debugInfo ? false
+}:
 
 { baseName ? "elixir"
 , version
@@ -13,62 +22,58 @@ let
   inherit (lib) getVersion versionAtLeast optional;
 
 in
-  assert versionAtLeast (getVersion erlang) minimumOTPVersion;
+assert versionAtLeast (getVersion erlang) minimumOTPVersion;
 
-  stdenv.mkDerivation ({
-    name = "${baseName}-${version}";
+stdenv.mkDerivation ({
+  name = "${baseName}-${version}";
 
-    inherit src version;
+  inherit src version debugInfo;
 
-    nativeBuildInputs = [ makeWrapper ];
-    buildInputs = [ erlang ];
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ erlang ];
 
-    LANG = "C.UTF-8";
-    LC_TYPE = "C.UTF-8";
+  LANG = "C.UTF-8";
+  LC_TYPE = "C.UTF-8";
 
-    setupHook = ./setup-hook.sh;
+  buildFlags = optional debugInfo "ERL_COMPILER_OPTIONS=debug_info";
 
-    inherit debugInfo;
+  preBuild = ''
+    patchShebangs lib/elixir/generate_app.escript || true
 
-    buildFlags = optional debugInfo "ERL_COMPILER_OPTIONS=debug_info";
+    substituteInPlace Makefile \
+      --replace "/usr/local" $out
+  '';
 
-    preBuild = ''
-      patchShebangs lib/elixir/generate_app.escript || true
+  postFixup = ''
+    # Elixir binaries are shell scripts which run erl. Add some stuff
+    # to PATH so the scripts can run without problems.
 
-      substituteInPlace Makefile \
-        --replace "/usr/local" $out
-    '';
+    for f in $out/bin/*; do
+     b=$(basename $f)
+      if [ "$b" = mix ]; then continue; fi
+      wrapProgram $f \
+        --prefix PATH ":" "${lib.makeBinPath [ erlang coreutils curl bash ]}"
+    done
 
-    postFixup = ''
-      # Elixir binaries are shell scripts which run erl. Add some stuff
-      # to PATH so the scripts can run without problems.
+    substituteInPlace $out/bin/mix \
+          --replace "/usr/bin/env elixir" "${coreutils}/bin/env elixir"
+  '';
 
-      for f in $out/bin/*; do
-       b=$(basename $f)
-        if [ "$b" = mix ]; then continue; fi
-        wrapProgram $f \
-          --prefix PATH ":" "${lib.makeBinPath [ erlang coreutils curl bash ]}"
-      done
+  pos = builtins.unsafeGetAttrPos "sha256" args;
+  meta = with lib; {
+    homepage = "https://elixir-lang.org/";
+    description = "A functional, meta-programming aware language built on top of the Erlang VM";
 
-      substituteInPlace $out/bin/mix \
-            --replace "/usr/bin/env elixir" "${coreutils}/bin/env elixir"
+    longDescription = ''
+      Elixir is a functional, meta-programming aware language built on
+      top of the Erlang VM. It is a dynamic language with flexible
+      syntax and macro support that leverages Erlang's abilities to
+      build concurrent, distributed and fault-tolerant applications
+      with hot code upgrades.
     '';
 
-    pos = builtins.unsafeGetAttrPos "sha256" args;
-    meta = with lib; {
-      homepage = "https://elixir-lang.org/";
-      description = "A functional, meta-programming aware language built on top of the Erlang VM";
-
-      longDescription = ''
-        Elixir is a functional, meta-programming aware language built on
-        top of the Erlang VM. It is a dynamic language with flexible
-        syntax and macro support that leverages Erlang's abilities to
-        build concurrent, distributed and fault-tolerant applications
-        with hot code upgrades.
-      '';
-
-      license = licenses.epl10;
-      platforms = platforms.unix;
-      maintainers = teams.beam.members;
-    };
-  })
+    license = licenses.epl10;
+    platforms = platforms.unix;
+    maintainers = teams.beam.members;
+  };
+})
diff --git a/nixpkgs/pkgs/development/interpreters/elixir/setup-hook.sh b/nixpkgs/pkgs/development/interpreters/elixir/setup-hook.sh
deleted file mode 100644
index 501eca3cf02a..000000000000
--- a/nixpkgs/pkgs/development/interpreters/elixir/setup-hook.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-addErlLibPath() {
-    addToSearchPath ERL_LIBS $1/lib/elixir/lib
-}
-
-addEnvHooks "$hostOffset" addErlLibPath
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R18.nix b/nixpkgs/pkgs/development/interpreters/erlang/R18.nix
deleted file mode 100644
index c99596ea026f..000000000000
--- a/nixpkgs/pkgs/development/interpreters/erlang/R18.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ mkDerivation, fetchpatch }:
-
-let
-  rmAndPwdPatch = fetchpatch {
-     url = "https://github.com/erlang/otp/commit/98b8650d22e94a5ff839170833f691294f6276d0.patch";
-     sha256 = "0zjs7as83prgq4d5gaw2cmnajnsprdk8cjl5kklknx0pc2b3hfg5";
-  };
-
-  envAndCpPatch = fetchpatch {
-     url = "https://github.com/erlang/otp/commit/9f9841eb7327c9fe73e84e197fd2965a97b639cf.patch";
-     sha256 = "00fx5wc88ki3z71z5q4xzi9h3whhjw1zblpn09w995ygn07m9qhm";
-  };
-
-  makeOrderingPatch = fetchpatch {
-     url = "https://github.com/erlang/otp/commit/2f1a37f1011ff9d129bc35a6efa0ab937a2aa0e9.patch";
-     sha256 = "0xfa6hzxh9d7qllkyidcgh57xrrx11w65y7s1hyg52alm06l6b9n";
-  };
-
-  makeParallelInstallPatch = fetchpatch {
-     url ="https://github.com/erlang/otp/commit/de8fe86f67591dd992bae33f7451523dab36e5bd.patch";
-     sha256 = "1cj9fjhdng6yllajjm3gkk04ag9bwyb3n70hrb5nk6c292v8a45c";
-  };
-
-in mkDerivation {
-  version = "18.3.4.11";
-  sha256 = "190xbv77v5x2g8xkzdg9bpwa1ylkc18d03ag2a0frcwcv76x53k1";
-
-  patches = [
-    rmAndPwdPatch
-    envAndCpPatch
-    makeOrderingPatch
-    makeParallelInstallPatch
-  ];
-}
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R19.nix b/nixpkgs/pkgs/development/interpreters/erlang/R19.nix
deleted file mode 100644
index 65ac57413f60..000000000000
--- a/nixpkgs/pkgs/development/interpreters/erlang/R19.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ mkDerivation, fetchpatch }:
-
-mkDerivation {
-  version = "19.3.6.13";
-  sha256 = "1zbg54p7pdr8bjyrxvi7vs41vgamqa8lsynnm6ac6845q0xwpwid";
-
-  patches = [
-    # macOS 10.13 crypto fix from OTP-20.1.2
-    (fetchpatch {
-      name = "darwin-crypto.patch";
-      url = "https://github.com/erlang/otp/commit/882c90f72ba4e298aa5a7796661c28053c540a96.patch";
-      sha256 = "1gggzpm8ssamz6975z7px0g8qq5i4jqw81j846ikg49c5cxvi0hi";
-    })
-  ];
-
-  prePatch = ''
-    substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
-  '';
-}
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R20.nix b/nixpkgs/pkgs/development/interpreters/erlang/R20.nix
deleted file mode 100644
index dfa363c0f25c..000000000000
--- a/nixpkgs/pkgs/development/interpreters/erlang/R20.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ mkDerivation }:
-
-mkDerivation {
-  version = "20.3.8.26";
-  sha256 = "062405s59hkdkmw2dryq0qc1k03jsncj7yqisgj35x9sqpzm4w7a";
-
-  prePatch = ''
-    substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
-  '';
-}
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R21.nix b/nixpkgs/pkgs/development/interpreters/erlang/R21.nix
index f0291bcfd9f1..7706bd69fbf5 100644
--- a/nixpkgs/pkgs/development/interpreters/erlang/R21.nix
+++ b/nixpkgs/pkgs/development/interpreters/erlang/R21.nix
@@ -1,6 +1,6 @@
 { mkDerivation }:
 
 mkDerivation {
-  version = "21.3.8.22";
-  sha256 = "sha256-k6dChY/ogWqmcNz9P3t+p9C7oywXhR5oqdBfNtkh6I4=";
+  version = "21.3.8.24";
+  sha256 = "sha256-FNs+M4KFFKzfb4EG513HtyQ9eRRtxSPMpYq0bmRgY3g=";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R22.nix b/nixpkgs/pkgs/development/interpreters/erlang/R22.nix
index 5be67081b112..c69c26d4cb01 100644
--- a/nixpkgs/pkgs/development/interpreters/erlang/R22.nix
+++ b/nixpkgs/pkgs/development/interpreters/erlang/R22.nix
@@ -3,6 +3,6 @@
 # How to obtain `sha256`:
 # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
 mkDerivation {
-  version = "22.3.4.17";
-  sha256 = "sha256-YhKU9I4qN+TVG3t//t9htUBkOu8DS75vbn/qWvS1zc0=";
+  version = "22.3.4.19";
+  sha256 = "sha256-U3ks7pDIqS8HVJ+yBobhEbKvnd9svEcQd9BsJQwajDs=";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R23.nix b/nixpkgs/pkgs/development/interpreters/erlang/R23.nix
index 0e8e402ab3b0..ee788560dcf4 100644
--- a/nixpkgs/pkgs/development/interpreters/erlang/R23.nix
+++ b/nixpkgs/pkgs/development/interpreters/erlang/R23.nix
@@ -3,6 +3,6 @@
 # How to obtain `sha256`:
 # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
 mkDerivation {
-  version = "23.3.1";
-  sha256 = "1nx9yv3l8hf37js7pqs536ywy786mxhkqba1jsmy1b3yc6xki1mq";
+  version = "23.3.4.2";
+  sha256 = "QAIkiYBhYnUzyRg70SQ4BwjjYqclDA4uruqRNTgB2Sk=";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/R24.nix b/nixpkgs/pkgs/development/interpreters/erlang/R24.nix
new file mode 100644
index 000000000000..a4fe839bff4c
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/erlang/R24.nix
@@ -0,0 +1,8 @@
+{ mkDerivation }:
+
+# How to obtain `sha256`:
+# nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
+mkDerivation {
+  version = "24.0.2";
+  sha256 = "gAiQc+AVj5xjwAnn9mF4xprjZOft1JvfEFVJMG5isxg=";
+}
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/generic-builder.nix b/nixpkgs/pkgs/development/interpreters/erlang/generic-builder.nix
index c32a1b038e44..13d2d33abfcd 100644
--- a/nixpkgs/pkgs/development/interpreters/erlang/generic-builder.nix
+++ b/nixpkgs/pkgs/development/interpreters/erlang/generic-builder.nix
@@ -1,12 +1,32 @@
-{ pkgs, lib, stdenv, fetchFromGitHub, makeWrapper, gawk, gnum4, gnused
-, libxml2, libxslt, ncurses, openssl, perl, autoconf
+{ pkgs
+, lib
+, stdenv
+, fetchFromGitHub
+, makeWrapper
+, gawk
+, gnum4
+, gnused
+, libxml2
+, libxslt
+, ncurses
+, openssl
+, perl
+, autoconf
 , openjdk11 ? null # javacSupport
 , unixODBC ? null # odbcSupport
-, libGL ? null, libGLU ? null, wxGTK ? null, wxmac ? null, xorg ? null
+, libGL ? null
+, libGLU ? null
+, wxGTK ? null
+, wxmac ? null
+, xorg ? null
 , parallelBuild ? false
-, systemd, wxSupport ? true
-# updateScript deps
-, writeScript, common-updater-scripts, coreutils, git
+, systemd
+, wxSupport ? true
+  # updateScript deps
+, writeScript
+, common-updater-scripts
+, coreutils
+, git
 }:
 { baseName ? "erlang"
 , version
@@ -18,25 +38,42 @@
 , enableThreads ? true
 , enableSmpSupport ? true
 , enableKernelPoll ? true
-, javacSupport ? false, javacPackages ? [ openjdk11 ]
-, odbcSupport ? false, odbcPackages ? [ unixODBC ]
+, javacSupport ? false
+, javacPackages ? [ openjdk11 ]
+, odbcSupport ? false
+, odbcPackages ? [ unixODBC ]
 , withSystemd ? stdenv.isLinux # systemd support in epmd
 , opensslPackage ? openssl
 , wxPackages ? [ libGL libGLU wxGTK xorg.libX11 ]
-, preUnpack ? "", postUnpack ? ""
-, patches ? [], patchPhase ? "", prePatch ? "", postPatch ? ""
-, configureFlags ? [], configurePhase ? "", preConfigure ? "", postConfigure ? ""
-, buildPhase ? "", preBuild ? "", postBuild ? ""
-, installPhase ? "", preInstall ? "", postInstall ? ""
+, preUnpack ? ""
+, postUnpack ? ""
+, patches ? [ ]
+, patchPhase ? ""
+, prePatch ? ""
+, postPatch ? ""
+, configureFlags ? [ ]
+, configurePhase ? ""
+, preConfigure ? ""
+, postConfigure ? ""
+, buildPhase ? ""
+, preBuild ? ""
+, postBuild ? ""
+, installPhase ? ""
+, preInstall ? ""
+, postInstall ? ""
 , installTargets ? [ "install" "install-docs" ]
-, checkPhase ? "", preCheck ? "", postCheck ? ""
-, fixupPhase ? "", preFixup ? "", postFixup ? ""
-, meta ? {}
+, checkPhase ? ""
+, preCheck ? ""
+, postCheck ? ""
+, fixupPhase ? ""
+, preFixup ? ""
+, postFixup ? ""
+, meta ? { }
 }:
 
 assert wxSupport -> (if stdenv.isDarwin
-  then wxmac != null
-  else libGL != null && libGLU != null && wxGTK != null && xorg != null);
+then wxmac != null
+else libGL != null && libGLU != null && wxGTK != null && xorg != null);
 
 assert odbcSupport -> unixODBC != null;
 assert javacSupport -> openjdk11 != null;
@@ -45,7 +82,8 @@ let
   inherit (lib) optional optionals optionalAttrs optionalString;
   wxPackages2 = if stdenv.isDarwin then [ wxmac ] else wxPackages;
 
-in stdenv.mkDerivation ({
+in
+stdenv.mkDerivation ({
   name = "${baseName}-${version}"
     + optionalString javacSupport "-javac"
     + optionalString odbcSupport "-odbc";
@@ -76,7 +114,8 @@ in stdenv.mkDerivation ({
     ./otp_build autoconf
   '';
 
-  configureFlags = [ "--with-ssl=${lib.getDev opensslPackage}" ]
+  configureFlags = [ "--with-ssl=${lib.getOutput "out" opensslPackage}" ]
+    ++ [ "--with-ssl-incl=${lib.getDev opensslPackage}" ] # This flag was introduced in R24
     ++ optional enableThreads "--enable-threads"
     ++ optional enableSmpSupport "--enable-smp-support"
     ++ optional enableKernelPoll "--enable-kernel-poll"
@@ -103,24 +142,23 @@ in stdenv.mkDerivation ({
     wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${lib.makeBinPath [ gnused gawk ]}"
   '';
 
-  setupHook = ./setup-hook.sh;
-
   passthru = {
     updateScript =
       let major = builtins.head (builtins.splitVersion version);
-      in writeScript "update.sh" ''
-      #!${stdenv.shell}
-      set -ox errexit
-      PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]}
-      latest=$(list-git-tags https://github.com/erlang/otp.git | sed -n 's/^OTP-${major}/${major}/p' | sort -V | tail -1)
-      if [ "$latest" != "${version}" ]; then
-        nixpkgs="$(git rev-parse --show-toplevel)"
-        nix_file="$nixpkgs/pkgs/development/interpreters/erlang/R${major}.nix"
-        update-source-version ${baseName}R${major} "$latest" --version-key=version --print-changes --file="$nix_file"
-      else
-        echo "${baseName}R${major} is already up-to-date"
-      fi
-    '';
+      in
+      writeScript "update.sh" ''
+        #!${stdenv.shell}
+        set -ox errexit
+        PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]}
+        latest=$(list-git-tags https://github.com/erlang/otp.git | sed -n 's/^OTP-${major}/${major}/p' | sort -V | tail -1)
+        if [ "$latest" != "${version}" ]; then
+          nixpkgs="$(git rev-parse --show-toplevel)"
+          nix_file="$nixpkgs/pkgs/development/interpreters/erlang/R${major}.nix"
+          update-source-version ${baseName}R${major} "$latest" --version-key=version --print-changes --file="$nix_file"
+        else
+          echo "${baseName}R${major} is already up-to-date"
+        fi
+      '';
   };
 
   meta = with lib; ({
@@ -142,24 +180,24 @@ in stdenv.mkDerivation ({
     license = licenses.asl20;
   } // meta);
 }
-// optionalAttrs (preUnpack != "")      { inherit preUnpack; }
-// optionalAttrs (postUnpack != "")     { inherit postUnpack; }
-// optionalAttrs (patches != [])        { inherit patches; }
-// optionalAttrs (prePatch != "")       { inherit prePatch; }
-// optionalAttrs (patchPhase != "")     { inherit patchPhase; }
+// optionalAttrs (preUnpack != "") { inherit preUnpack; }
+// optionalAttrs (postUnpack != "") { inherit postUnpack; }
+// optionalAttrs (patches != [ ]) { inherit patches; }
+// optionalAttrs (prePatch != "") { inherit prePatch; }
+// optionalAttrs (patchPhase != "") { inherit patchPhase; }
 // optionalAttrs (configurePhase != "") { inherit configurePhase; }
-// optionalAttrs (preConfigure != "")   { inherit preConfigure; }
-// optionalAttrs (postConfigure != "")  { inherit postConfigure; }
-// optionalAttrs (buildPhase != "")     { inherit buildPhase; }
-// optionalAttrs (preBuild != "")       { inherit preBuild; }
-// optionalAttrs (postBuild != "")      { inherit postBuild; }
-// optionalAttrs (checkPhase != "")     { inherit checkPhase; }
-// optionalAttrs (preCheck != "")       { inherit preCheck; }
-// optionalAttrs (postCheck != "")      { inherit postCheck; }
-// optionalAttrs (installPhase != "")   { inherit installPhase; }
-// optionalAttrs (installTargets != []) { inherit installTargets; }
-// optionalAttrs (preInstall != "")     { inherit preInstall; }
-// optionalAttrs (fixupPhase != "")     { inherit fixupPhase; }
-// optionalAttrs (preFixup != "")       { inherit preFixup; }
-// optionalAttrs (postFixup != "")      { inherit postFixup; }
+// optionalAttrs (preConfigure != "") { inherit preConfigure; }
+// optionalAttrs (postConfigure != "") { inherit postConfigure; }
+// optionalAttrs (buildPhase != "") { inherit buildPhase; }
+// optionalAttrs (preBuild != "") { inherit preBuild; }
+// optionalAttrs (postBuild != "") { inherit postBuild; }
+// optionalAttrs (checkPhase != "") { inherit checkPhase; }
+// optionalAttrs (preCheck != "") { inherit preCheck; }
+// optionalAttrs (postCheck != "") { inherit postCheck; }
+// optionalAttrs (installPhase != "") { inherit installPhase; }
+// optionalAttrs (installTargets != [ ]) { inherit installTargets; }
+// optionalAttrs (preInstall != "") { inherit preInstall; }
+// optionalAttrs (fixupPhase != "") { inherit fixupPhase; }
+// optionalAttrs (preFixup != "") { inherit preFixup; }
+// optionalAttrs (postFixup != "") { inherit postFixup; }
 )
diff --git a/nixpkgs/pkgs/development/interpreters/erlang/setup-hook.sh b/nixpkgs/pkgs/development/interpreters/erlang/setup-hook.sh
deleted file mode 100644
index 3962d154ba9f..000000000000
--- a/nixpkgs/pkgs/development/interpreters/erlang/setup-hook.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-addErlangLibPath() {
-    addToSearchPath ERL_LIBS $1/lib/erlang/lib
-}
-
-addEnvHooks "$hostOffset" addErlangLibPath
diff --git a/nixpkgs/pkgs/development/interpreters/evcxr/default.nix b/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
index 7f248c8d430f..7dabff3d2e5e 100644
--- a/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/evcxr/default.nix
@@ -1,22 +1,25 @@
-{ cargo, fetchFromGitHub, makeWrapper, pkg-config, rustPlatform, lib, stdenv, gcc, Security, cmake }:
+{ cargo, fetchFromGitHub, makeWrapper, pkg-config, rustPlatform, lib, stdenv
+, gcc, cmake, libiconv, CoreServices, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "evcxr";
-  version = "0.8.1";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "evcxr";
     rev = "v${version}";
-    sha256 = "sha256-5YbvPDyGaoKPelLep2tVica08SI7Cyo9SLMnE6dmWe4=";
+    sha256 = "sha256-EPxWLPw+V5eIm+eL8m8Xw14adgshthJSDRyWohsJH88=";
   };
 
-  cargoSha256 = "sha256-hqVmNBrvagqhGPWTaBXuY8lULolWIoR5ovEhH5k1tz4=";
+  cargoSha256 = "sha256-5jGrv0YRVMo2X9p/WPgjYV3z193hl2+NiFTZr3v0Iik=";
 
   RUST_SRC_PATH = "${rustPlatform.rustLibSrc}";
 
   nativeBuildInputs = [ pkg-config makeWrapper cmake ];
-  buildInputs = lib.optional stdenv.isDarwin Security;
+  buildInputs = lib.optionals stdenv.isDarwin
+    [ libiconv CoreServices Security ];
+
   postInstall = let
     wrap = exe: ''
       wrapProgram $out/bin/${exe} \
diff --git a/nixpkgs/pkgs/development/interpreters/falcon/default.nix b/nixpkgs/pkgs/development/interpreters/falcon/default.nix
index ecac643f1ea9..0d2aa0b64203 100644
--- a/nixpkgs/pkgs/development/interpreters/falcon/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/falcon/default.nix
@@ -1,23 +1,27 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, pcre, zlib, sqlite }:
+{ lib, gccStdenv, fetchFromGitHub, cmake, pkg-config, pcre, zlib, sqlite }:
 
-stdenv.mkDerivation {
+gccStdenv.mkDerivation {
   pname = "falcon";
-  version = "2013-09-19";
+  version = "unstable-2018-10-23";
 
   src = fetchFromGitHub {
     owner = "falconpl";
     repo = "falcon";
-    rev = "095141903c4ebab928ce803055f9bda363215c37";
-    sha256 = "1x3gdcz1gqhi060ngqi0ghryf69v8bn50yrbzfad8bhblvhzzdlf";
+    rev = "637e2d5cd950a874496042993c02ab7d17c1b688";
+    sha256 = "iCyvvZJjXb1CR396EJ6GiP6d4e7iAc6QQlAOQoAfehg=";
   };
 
+  # -Wnarrowing is enabled by default in recent GCC versions,
+  # causing compilation to fail.
+  NIX_CFLAGS_COMPILE = "-Wno-narrowing";
+
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ pcre zlib sqlite ];
 
   meta = with lib; {
     description = "Programming language with macros and syntax at once";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ pSub ];
-    platforms = with platforms; linux;
+    platforms = with platforms; unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix b/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
index 9ae373ff7a81..abfa74bb67d3 100644
--- a/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
     "-Wno-error=class-memaccess"
     "-Wno-error=restrict"
     "-Wno-error=format-truncation"
+    # Needed with GCC 10
+    "-Wno-error=maybe-uninitialized"
    ]) ++ optional stdenv.cc.isClang "-Wno-error=null-dereference");
 
   patchPhase = lib.optionalString stdenv.isDarwin ''
diff --git a/nixpkgs/pkgs/development/interpreters/j/default.nix b/nixpkgs/pkgs/development/interpreters/j/default.nix
index 8875a9cf55eb..e41d71ef960b 100644
--- a/nixpkgs/pkgs/development/interpreters/j/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/j/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "j";
-  version = "901";
-  jtype = "release-f";
+  version = "902";
+  jtype = "release-b";
   src = fetchFromGitHub {
     owner = "jsoftware";
     repo = "jsource";
     rev = "j${version}-${jtype}";
-    sha256 = "1776021m0j1aanzwg60by83n53pw7i6afd5wplfzczwk8bywax4p";
+    sha256 = "0j67vgikqflwjqacsdicasvyv1k54s2c8vjgwmf0ix7l41p4xqz0";
     name = "jsource";
   };
 
diff --git a/nixpkgs/pkgs/development/interpreters/janet/default.nix b/nixpkgs/pkgs/development/interpreters/janet/default.nix
index 163c255c5222..4c836264017b 100644
--- a/nixpkgs/pkgs/development/interpreters/janet/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/janet/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "janet";
-  version = "1.15.4";
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     owner = "janet-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lE2BAwiwvewydIpVYoN+zrfpzQbMbe5Nb1r0mzdxMao=";
+    sha256 = "sha256-Wrr2zie251oB+uhsLMmkPBV0b3MwTmcPTgNJOsgCems=";
   };
 
   nativeBuildInputs = [ meson ninja ];
diff --git a/nixpkgs/pkgs/development/interpreters/joker/default.nix b/nixpkgs/pkgs/development/interpreters/joker/default.nix
index a8e73339ee16..8a2130050bfa 100644
--- a/nixpkgs/pkgs/development/interpreters/joker/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/joker/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "joker";
-  version = "0.16.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "sha256-ckbKxWzcISo9yOXuwgOiSfR2hs+5od0Ru0Ku2I52Gu8=";
+    sha256 = "sha256-3OimYXcQ3KPav44sClbC60220/YK4Jhq+l5UfRFYoJI=";
   };
 
   vendorSha256 = "sha256-AYoespfzFLP/jIIxbw5K653wc7sSfLY8K7di8GZ64wA=";
diff --git a/nixpkgs/pkgs/development/interpreters/jruby/default.nix b/nixpkgs/pkgs/development/interpreters/jruby/default.nix
index be1a1a15c84e..4e540dc8aacb 100644
--- a/nixpkgs/pkgs/development/interpreters/jruby/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/jruby/default.nix
@@ -6,11 +6,11 @@ rubyVersion = callPackage ../ruby/ruby-version.nix {} "2" "5" "7" "";
 jruby = stdenv.mkDerivation rec {
   pname = "jruby";
 
-  version = "9.2.16.0";
+  version = "9.2.17.0";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/jruby.org/downloads/${version}/jruby-bin-${version}.tar.gz";
-    sha256 = "sha256-WuJ/FJ9z8/6k80NZy7dzwl2dmH5yte3snouTlXmX6zA=";
+    sha256 = "sha256-dwHTU3s6YG0nZaxtXEDmdd2qAdPOutJqIaZuOq3VwgI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/fix-rebar-config.patch b/nixpkgs/pkgs/development/interpreters/lfe/fix-rebar-config.patch
new file mode 100644
index 000000000000..ac385351b1cf
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/lfe/fix-rebar-config.patch
@@ -0,0 +1,29 @@
+diff --git a/rebar.config b/rebar.config
+index 1d5a68e..a86ee39 100644
+--- a/rebar.config
++++ b/rebar.config
+@@ -2,20 +2,20 @@
+ 
+ {erl_opts, [debug_info]}.
+ 
+-{profiles, [{test, [{deps, [proper]}]}]}.
++%%{profiles, [{test, [{deps, [proper]}]}]}.
+ 
+ {pre_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)", ct,
+               "bin/lfe bin/lfec"
+-              " -o $REBAR_DEPS_DIR/lfe/test"
++              " -o test"
+               " test/*_SUITE.lfe"},
+              {"(linux|darwin|solaris|freebsd|netbsd|openbsd)", eunit,
+               "bin/lfe bin/lfec"
+-              " -o $REBAR_DEPS_DIR/lfe/ebin"
++              " -o ebin"
+               " test/clj-tests.lfe"},
+              %% TODO: Test this on a win32 box
+              %%  {"win32", ct,
+              %%   "bin/lfe bin/lfec -o $REBAR_DEPS_DIR/lfe/test test/*_SUITE.lfe"}
+              {"(linux|darwin|solaris|freebsd|netbsd|openbsd)", app_compile,
+-              "bin/lfe bin/lfec -o $REBAR_DEPS_DIR/lfe/ebin src/*.lfe"}
++              "bin/lfe bin/lfec -o ebin src/*.lfe"}
+              %% TODO: equivalent win32 hook
+             ]}.
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix b/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
index 397be81e7c85..620568967452 100644
--- a/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
+++ b/nixpkgs/pkgs/development/interpreters/lfe/generic-builder.nix
@@ -39,7 +39,7 @@ buildRebar3 {
 
   buildInputs = [ erlang makeWrapper ];
   beamDeps    = [ proper ];
-  patches     = [ ./no-test-deps.patch ./dedup-ebins.patch ] ++ patches;
+  patches     = [ ./fix-rebar-config.patch ./dedup-ebins.patch ] ++ patches;
   doCheck     = true;
   checkTarget = "travis";
 
diff --git a/nixpkgs/pkgs/development/interpreters/lfe/no-test-deps.patch b/nixpkgs/pkgs/development/interpreters/lfe/no-test-deps.patch
deleted file mode 100644
index 8c3faf1ff402..000000000000
--- a/nixpkgs/pkgs/development/interpreters/lfe/no-test-deps.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/rebar.config b/rebar.config
-index 1d5a68e..ca33be7 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -2,7 +2,7 @@
- 
- {erl_opts, [debug_info]}.
- 
--{profiles, [{test, [{deps, [proper]}]}]}.
-+%% {profiles, [{test, [{deps, [proper]}]}]}.
- 
- {pre_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)", ct,
-               "bin/lfe bin/lfec"
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/5.4.darwin.patch b/nixpkgs/pkgs/development/interpreters/lua-5/5.4.darwin.patch
new file mode 100644
index 000000000000..eb16ed9c6897
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/5.4.darwin.patch
@@ -0,0 +1,48 @@
+--- a/Makefile	2021-05-14 22:39:14.407200562 +0300
++++ b/Makefile	2021-05-14 22:36:23.828513407 +0300
+@@ -41,7 +41,7 @@
+ # What to install.
+ TO_BIN= lua luac
+ TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp
+-TO_LIB= liblua.a
++TO_LIB= liblua.${version}.dylib
+ TO_MAN= lua.1 luac.1
+ 
+ # Lua version and release.
+@@ -60,6 +60,8 @@
+ 	cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
+ 	cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
+ 	cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
++	ln -s -f liblua.${version}.dylib $(INSTALL_LIB)/liblua.${luaversion}.dylib
++	ln -s -f liblua.${luaversion}.dylib $(INSTALL_LIB)/liblua.dylib
+ 
+ uninstall:
+ 	cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN)
+--- a/src/Makefile	2021-05-14 22:35:38.575051882 +0300
++++ b/src/Makefile	2021-05-14 22:35:33.584631206 +0300
+@@ -32,7 +32,7 @@
+ 
+ PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris
+ 
+-LUA_A=	liblua.a
++LUA_A=	liblua.${version}.dylib
+ CORE_O=	lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o
+ LIB_O=	lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o
+ BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS)
+@@ -57,11 +57,13 @@
+ a:	$(ALL_A)
+ 
+ $(LUA_A): $(BASE_O)
+-	$(AR) $@ $(BASE_O)
+-	$(RANLIB) $@
++	$(CC) -dynamiclib -install_name $(out)/lib/liblua.${version}.dylib \
++		-compatibility_version ${version} -current_version ${version} \
++		-o liblua.${version}.dylib $^
+ 
+ $(LUA_T): $(LUA_O) $(LUA_A)
+-	$(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
++	$(CC) -fno-common $(MYLDFLAGS) \
++		-o $@ $(LUA_O) $(LUA_A) -L. -llua.${version} $(LIBS)
+ 
+ $(LUAC_T): $(LUAC_O) $(LUA_A)
+ 	$(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/default.nix b/nixpkgs/pkgs/development/interpreters/lua-5/default.nix
index 3a52d58ffaba..d2ba451b9e60 100644
--- a/nixpkgs/pkgs/development/interpreters/lua-5/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/default.nix
@@ -1,27 +1,12 @@
 # similar to interpreters/python/default.nix
 { stdenv, lib, callPackage, fetchurl, fetchpatch }:
-let
-  dsoPatch51 = fetchurl {
-    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/lua-arch.patch?h=packages/lua51";
-    sha256 = "11fcyb4q55p4p7kdb8yp85xlw8imy14kzamp2khvcyxss4vw8ipw";
-    name = "lua-arch.patch";
-  };
-
-  dsoPatch52 = fetchurl {
-    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/liblua.so.patch?h=packages/lua52";
-    sha256 = "1by1dy4ql61f5c6njq9ibf9kaqm3y633g2q8j54iyjr4cxvqwqz9";
-    name = "lua-arch.patch";
-  };
 
-in rec {
+rec {
   lua5_4 = callPackage ./interpreter.nix {
-    sourceVersion = { major = "5"; minor = "4"; patch = "2"; };
-    hash = "0ksj5zpj74n0jkamy3di1p6l10v4gjnd2zjnb453qc6px6bhsmqi";
-    patches = [
-      # build lua as a shared library as well, MIT-licensed from
-      # https://github.com/archlinux/svntogit-packages/tree/packages/lua/trunk
-      ./liblua.so.patch
-    ];
+    sourceVersion = { major = "5"; minor = "4"; patch = "3"; };
+    hash = "1yxvjvnbg4nyrdv10bq42gz6dr66pyan28lgzfygqfwy2rv24qgq";
+
+    patches = lib.optional stdenv.isDarwin ./5.4.darwin.patch;
   };
 
   lua5_4_compat = lua5_4.override({
@@ -35,11 +20,6 @@ in rec {
     patches =
       lib.optionals stdenv.isDarwin [ ./5.2.darwin.patch ];
 
-    postConfigure = lib.optionalString (!stdenv.isDarwin) ''
-      cat ${./lua-5.3-dso.make} >> src/Makefile
-      sed -e 's/ALL_T *= */& $(LUA_SO)/' -i src/Makefile
-    '';
-
     postBuild = lib.optionalString (!stdenv.isDarwin) ''
       ( cd src; make $makeFlags "''${makeFlagsArray[@]}" liblua.so )
     '';
@@ -53,7 +33,7 @@ in rec {
   lua5_2 = callPackage ./interpreter.nix {
     sourceVersion = { major = "5"; minor = "2"; patch = "4"; };
     hash = "0jwznq0l8qg9wh5grwg07b5cy3lzngvl5m2nl1ikp6vqssmf9qmr";
-    patches = if stdenv.isDarwin then [ ./5.2.darwin.patch ] else [ dsoPatch52 ];
+    patches = lib.optional stdenv.isDarwin ./5.2.darwin.patch;
   };
 
   lua5_2_compat = lua5_2.override({
@@ -64,7 +44,7 @@ in rec {
   lua5_1 = callPackage ./interpreter.nix {
     sourceVersion = { major = "5"; minor = "1"; patch = "5"; };
     hash = "2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333";
-    patches = (if stdenv.isDarwin then [ ./5.1.darwin.patch ] else [ dsoPatch51 ])
+    patches = (lib.optional stdenv.isDarwin ./5.1.darwin.patch)
       ++ [ ./CVE-2014-5461.patch ];
   };
 
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix b/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
index 35a074add097..fd8c47d751b3 100644
--- a/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/interpreter.nix
@@ -11,6 +11,15 @@
 let
 luaPackages = callPackage ../../lua-modules {lua=self; overrides=packageOverrides;};
 
+plat = if stdenv.isLinux then "linux"
+       else if stdenv.isDarwin then "macosx"
+       else if stdenv.hostPlatform.isMinGW then "mingw"
+       else if stdenv.isFreeBSD then "freebsd"
+       else if stdenv.isSunOS then "solaris"
+       else if stdenv.hostPlatform.isBSD then "bsd"
+       else if stdenv.hostPlatform.isUnix then "posix"
+       else "generic";
+
 self = stdenv.mkDerivation rec {
   pname = "lua";
   luaversion = with sourceVersion; "${major}.${minor}";
@@ -29,6 +38,14 @@ self = stdenv.mkDerivation rec {
 
   inherit patches;
 
+  postPatch = lib.optionalString (!stdenv.isDarwin) ''
+    # Add a target for a shared library to the Makefile.
+    sed -e '1s/^/LUA_SO = liblua.so/' \
+        -e 's/ALL_T *= */&$(LUA_SO) /' \
+        -i src/Makefile
+    cat ${./lua-dso.make} >> src/Makefile
+  '';
+
   # see configurePhase for additional flags (with space)
   makeFlags = [
     "INSTALL_TOP=${placeholder "out"}"
@@ -36,21 +53,17 @@ self = stdenv.mkDerivation rec {
     "R=${version}"
     "LDFLAGS=-fPIC"
     "V=${luaversion}"
-  ] ++ (if stdenv.isDarwin then [
-    "PLAT=macosx"
-  ] else [
-    "PLAT=linux"
-  ]) ++ (if stdenv.buildPlatform != stdenv.hostPlatform then [
-    "CC=${stdenv.hostPlatform.config}-gcc"
-    "RANLIB=${stdenv.hostPlatform.config}-ranlib"
-  ] else [])
-  ;
+    "PLAT=${plat}"
+    "CC=${stdenv.cc.targetPrefix}cc"
+    "RANLIB=${stdenv.cc.targetPrefix}ranlib"
+  ];
 
   configurePhase = ''
     runHook preConfigure
 
-    makeFlagsArray+=(CFLAGS="-DLUA_USE_LINUX -O2 -fPIC${if compat then " -DLUA_COMPAT_ALL" else ""}" )
-    makeFlagsArray+=(${lib.optionalString stdenv.isDarwin "CC=\"$CC\""}${lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) " 'AR=${stdenv.hostPlatform.config}-ar rcu'"})
+    makeFlagsArray+=(CFLAGS='-O2 -fPIC${lib.optionalString compat " -DLUA_COMPAT_ALL"} $(${
+      if lib.versionAtLeast luaversion "5.2" then "SYSCFLAGS" else "MYCFLAGS"})' )
+    makeFlagsArray+=(${lib.optionalString stdenv.isDarwin "CC=\"$CC\""}${lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) " 'AR=${stdenv.cc.targetPrefix}ar rcu'"})
 
     installFlagsArray=( TO_BIN="lua luac" INSTALL_DATA='cp -d' \
       TO_LIB="${if stdenv.isDarwin then "liblua.${version}.dylib" else "liblua.a liblua.so liblua.so.${luaversion} liblua.so.${version}"}" )
@@ -80,7 +93,7 @@ self = stdenv.mkDerivation rec {
     Description: An Extensible Extension Language
     Version: ${version}
     Requires:
-    Libs: -L$out/lib -llua -lm
+    Libs: -L$out/lib -llua
     Cflags: -I$out/include
     EOF
     ln -s "$out/lib/pkgconfig/lua.pc" "$out/lib/pkgconfig/lua-${luaversion}.pc"
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/liblua.so.patch b/nixpkgs/pkgs/development/interpreters/lua-5/liblua.so.patch
deleted file mode 100644
index 197832116c19..000000000000
--- a/nixpkgs/pkgs/development/interpreters/lua-5/liblua.so.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 416f444..eeaff03 100644
---- a/Makefile
-+++ b/Makefile
-@@ -52,7 +52,7 @@ R= $V.0
- all:	$(PLAT)
- 
- $(PLATS) help test clean:
--	@cd src && $(MAKE) $@
-+	@cd src && $(MAKE) $@ V=$(V) R=$(R)
- 
- install: dummy
- 	cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
-diff --git a/src/Makefile b/src/Makefile
-index 514593d..372a6dc 100644
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -33,6 +33,7 @@ CMCFLAGS= -Os
- PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris
- 
- LUA_A=	liblua.a
-+LUA_SO= liblua.so
- CORE_O=	lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o
- LIB_O=	lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o
- BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS)
-@@ -44,7 +45,7 @@ LUAC_T=	luac
- LUAC_O=	luac.o
- 
- ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
--ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
-+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
- ALL_A= $(LUA_A)
- 
- # Targets start here.
-@@ -60,6 +61,12 @@ $(LUA_A): $(BASE_O)
- 	$(AR) $@ $(BASE_O)
- 	$(RANLIB) $@
- 
-+$(LUA_SO): $(CORE_O) $(LIB_O)
-+	$(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
-+	ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
-+	ln -sf $(LUA_SO).$(R) $(LUA_SO)
-+
-+
- $(LUA_T): $(LUA_O) $(LUA_A)
- 	$(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
- 
-diff --git a/src/luaconf.h b/src/luaconf.h
-index bdf927e..7e15198 100644
---- a/src/luaconf.h
-+++ b/src/luaconf.h
-@@ -227,7 +227,7 @@
- 
- #else			/* }{ */
- 
--#define LUA_ROOT	"/usr/local/"
-+#define LUA_ROOT	"/usr/"
- #define LUA_LDIR	LUA_ROOT "share/lua/" LUA_VDIR "/"
- #define LUA_CDIR	LUA_ROOT "lib/lua/" LUA_VDIR "/"
- 
diff --git a/nixpkgs/pkgs/development/interpreters/lua-5/lua-5.3-dso.make b/nixpkgs/pkgs/development/interpreters/lua-5/lua-dso.make
index c70dbc4f9cc2..19c57685677d 100644
--- a/nixpkgs/pkgs/development/interpreters/lua-5/lua-5.3-dso.make
+++ b/nixpkgs/pkgs/development/interpreters/lua-5/lua-dso.make
@@ -1,8 +1,4 @@
-
-LUA_SO=liblua.so
-
 $(LUA_SO): $(CORE_O) $(LIB_O)
-	$(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+	$(CC) -shared $(LIBS) -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? $(MYLDFLAGS)
 	ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
 	ln -sf $(LUA_SO).$(R) $(LUA_SO)
-
diff --git a/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix b/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
index ffc406a2a7a3..528c14a8b247 100644
--- a/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
+++ b/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
@@ -1,10 +1,10 @@
 { self, callPackage, lib }:
 callPackage ./default.nix {
   inherit self;
-  version = "2.0.5-2020-12-28";
-  rev = "56c04accf975bff2519c34721dccbbdb7b8e6963";
+  version = "2.0.5-2021-05-29";
+  rev = "c2cfa04231785116d9d198462830f41ef94147c0";
   isStable = true;
-  sha256 = "0mmx7dy843iqdpyxxdfks860np0311gg58gi4zczx10h62y6jacm";
+  sha256 = "1fw64pv0dvzb9bgr2zwcv9q8gqgsmfnvrcrmrdfgj4ncamgdnilj";
   extraMeta = { # this isn't precise but it at least stops the useless Hydra build
     platforms = with lib; filter (p: p != "aarch64-linux")
       (platforms.linux ++ platforms.darwin);
diff --git a/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix b/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
index 7335ecd656ac..f85fc0932cca 100644
--- a/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
+++ b/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
@@ -1,8 +1,8 @@
 { self, callPackage }:
 callPackage ./default.nix {
   inherit self;
-  version = "2.1.0-2020-12-28";
-  rev = "65378759f38bb946e40f31799992434effd01bba";
+  version = "2.1.0-2021-05-29";
+  rev = "839fb5bd72341d8e67b6cfc2053e2acffdb75567";
   isStable = false;
-  sha256 = "1h78gydlrmvkdrql4ra5a3xr78iiq12bfmny6kiq65v1jbk8f19g";
+  sha256 = "1gyzq4n0fwah0245wazv4c43q9in1mwbk3dhh6cb1ijnjcxp2bb6";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/mujs/default.nix b/nixpkgs/pkgs/development/interpreters/mujs/default.nix
index d9b52af92544..46f86f85fc3a 100644
--- a/nixpkgs/pkgs/development/interpreters/mujs/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/mujs/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mujs";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchurl {
     url = "https://mujs.com/downloads/mujs-${version}.tar.xz";
-    sha256 = "sha256-meYfyWGfHVULVjVyA7NJ2Ih9CjbffblWc1yijU/3e7A=";
+    sha256 = "sha256-cZ6IK7fZhkDvoWM4Hpto7xzjXIekIuKqQZDJ5AIlh10=";
   };
 
   buildInputs = [ readline ];
diff --git a/nixpkgs/pkgs/development/interpreters/octave/build-env.nix b/nixpkgs/pkgs/development/interpreters/octave/build-env.nix
index 433026f0a7e9..59575f95fc4b 100644
--- a/nixpkgs/pkgs/development/interpreters/octave/build-env.nix
+++ b/nixpkgs/pkgs/development/interpreters/octave/build-env.nix
@@ -40,11 +40,15 @@ in buildEnv {
          cd $out
       fi
 
-      # Remove symlinks to the input tarballs, they aren't needed.
-      rm $out/*.tar.gz
+      # Remove symlinks to the input tarballs, they aren't needed, use -f so it
+      # will not fail if no .tar.gz symlinks are there - for example if
+      # sommething which is not a tarball used as a package
+      rm -f $out/*.tar.gz
 
       createOctavePackagesPath $out ${octave}
 
+      # Create the file even if the loop afterwards has no packages to run over
+      touch $out/.octave_packages
       for path in ${lib.concatStringsSep " " packages}; do
           if [ -e $path/*.tar.gz ]; then
              $out/bin/octave-cli --eval "pkg local_list $out/.octave_packages; \
diff --git a/nixpkgs/pkgs/development/interpreters/perl/default.nix b/nixpkgs/pkgs/development/interpreters/perl/default.nix
index 01b3e995f5e4..5c75894c4f7e 100644
--- a/nixpkgs/pkgs/development/interpreters/perl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/perl/default.nix
@@ -1,4 +1,5 @@
-{ config, lib, stdenv, fetchurl, pkgs, buildPackages, callPackage
+{ config, lib, stdenv, fetchurl, fetchFromGitHub, pkgs, buildPackages
+, callPackage
 , enableThreading ? true, coreutils, makeWrapper
 }:
 
@@ -171,18 +172,22 @@ let
       priority = 6; # in `buildEnv' (including the one inside `perl.withPackages') the library files will have priority over files in `perl`
     };
   } // optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) rec {
-    crossVersion = "e53999d0c340769792ba18d749751b0df3d1d177"; # Mar 21, 2021
-
-    perl-cross-src = fetchurl {
-      url = "https://github.com/arsv/perl-cross/archive/${crossVersion}.tar.gz";
-      sha256 = "14vcpwjhq667yh0cs7ism70df8l7068vn4a0ww59hdjyj7yc84i6";
+    crossVersion = "1.3.6";
+
+    perl-cross-src = fetchFromGitHub {
+      name = "perl-cross-${crossVersion}";
+      owner = "arsv";
+      repo = "perl-cross";
+      rev = crossVersion;
+      sha256 = "0k5vyj40czbkfl7r3dcwxpc7dvdlp2xliaav358bviq3dq9vq9bb";
     };
 
     depsBuildBuild = [ buildPackages.stdenv.cc makeWrapper ];
 
     postUnpack = ''
       unpackFile ${perl-cross-src}
-      cp -R perl-cross-${crossVersion}/* perl-${version}/
+      chmod -R u+w ${perl-cross-src.name}
+      cp -R ${perl-cross-src.name}/* perl-${version}/
     '';
 
     configurePlatforms = [ "build" "host" "target" ];
@@ -211,7 +216,7 @@ in {
   perldevel = common {
     perl = pkgs.perldevel;
     buildPerl = buildPackages.perldevel;
-    version = "5.33.8";
-    sha256 = "1zr6sdsfcmk86n3f8j65x07xkv29v0pi8bwc986ahmjx7x92xzgl";
+    version = "5.35.0";
+    sha256 = "0217nbswhkjhw60kng2p64611xna7za681kk30fkriyicd3yph6n";
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/php/7.3.nix b/nixpkgs/pkgs/development/interpreters/php/7.3.nix
deleted file mode 100644
index d611cb7693c6..000000000000
--- a/nixpkgs/pkgs/development/interpreters/php/7.3.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ callPackage, lib, stdenv, nixosTests, ... }@_args:
-
-let
-  generic = (import ./generic.nix) _args;
-
-  base = callPackage generic (_args // {
-    version = "7.3.27";
-    sha256 = "00z0vadxazm2flks9g8qmchj2pwkli880kg313jgbb1mx3shc84x";
-
-    # https://bugs.php.net/bug.php?id=76826
-    extraPatches = lib.optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
-  });
-
-in base.withExtensions ({ all, ... }: with all; ([
-  bcmath calendar curl ctype dom exif fileinfo filter ftp gd
-  gettext gmp hash iconv intl json ldap mbstring mysqli mysqlnd
-  opcache openssl pcntl pdo pdo_mysql pdo_odbc pdo_pgsql pdo_sqlite
-  pgsql posix readline session simplexml sockets soap sodium sqlite3
-  tokenizer xmlreader xmlwriter zip zlib
-] ++ lib.optionals (!stdenv.isDarwin) [ imap ]))
diff --git a/nixpkgs/pkgs/development/interpreters/php/7.4.nix b/nixpkgs/pkgs/development/interpreters/php/7.4.nix
index 812a59ec8a33..c4e566ee27ce 100644
--- a/nixpkgs/pkgs/development/interpreters/php/7.4.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/7.4.nix
@@ -1,11 +1,9 @@
-{ callPackage, lib, stdenv, nixosTests, ... }@_args:
+{ callPackage, lib, stdenv, ... }@_args:
 
 let
-  generic = (import ./generic.nix) _args;
-
-  base = callPackage generic (_args // {
-    version = "7.4.16";
-    sha256 = "0gnfb4vaj71fiap0q9lk6vs1xs7l6sha60isw6aaw3zxgh00ywc5";
+  base = callPackage ./generic.nix (_args // {
+    version = "7.4.20";
+    sha256 = "0d5ncz97y0271dsmz269wl4721vhq2fn6pmm9rxglc756p36pnha";
   });
 
 in base.withExtensions ({ all, ... }: with all; ([
diff --git a/nixpkgs/pkgs/development/interpreters/php/8.0.nix b/nixpkgs/pkgs/development/interpreters/php/8.0.nix
index 233b0da4380c..90f7c3b796c0 100644
--- a/nixpkgs/pkgs/development/interpreters/php/8.0.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/8.0.nix
@@ -1,11 +1,9 @@
-{ callPackage, lib, stdenv, nixosTests, ... }@_args:
+{ callPackage, lib, stdenv, ... }@_args:
 
 let
-  generic = (import ./generic.nix) _args;
-
-  base = callPackage generic (_args // {
-    version = "8.0.3";
-    sha256 = "04mh5sznbgwv67x9p0qz4i377zwdb5cc6r1mb3925y1lkqfn5y4m";
+  base = callPackage ./generic.nix (_args // {
+    version = "8.0.7";
+    sha256 = "0yazcc9x66xg1gmi3rpgk891g6s3mm7aywcadqfqnx1mdz4z5ckj";
   });
 
 in base.withExtensions ({ all, ... }: with all; ([
diff --git a/nixpkgs/pkgs/development/interpreters/php/generic.nix b/nixpkgs/pkgs/development/interpreters/php/generic.nix
index ad53e7558350..558fa45a1fd9 100644
--- a/nixpkgs/pkgs/development/interpreters/php/generic.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/generic.nix
@@ -1,13 +1,11 @@
 # We have tests for PCRE and PHP-FPM in nixos/tests/php/ or
 # both in the same attribute named nixosTests.php
 
-{ callPackage, lib, stdenv, nixosTests, ... }:
-
 let
   generic =
     { callPackage, lib, stdenv, nixosTests, fetchurl, makeWrapper
     , symlinkJoin, writeText, autoconf, automake, bison, flex, libtool
-    , pkg-config, re2c, apacheHttpd, libargon2, libxml2, pcre, pcre2
+    , pkg-config, re2c, apacheHttpd, libargon2, libxml2, pcre2
     , systemd, system-sendmail, valgrind, xcbuild
 
     , version
@@ -33,252 +31,251 @@ let
     , valgrindSupport ? !stdenv.isDarwin
     , ztsSupport ? apxs2Support
     }@args:
-      let
-        # buildEnv wraps php to provide additional extensions and
-        # configuration. Its usage is documented in
-        # doc/languages-frameworks/php.section.md.
-        #
-        # Create a buildEnv with earlier overridden values and
-        # extensions functions in its closure. This is necessary for
-        # consecutive calls to buildEnv and overrides to work as
-        # expected.
-        mkBuildEnv = prevArgs: prevExtensionFunctions: lib.makeOverridable (
-          { extensions ? ({ enabled, ... }: enabled), extraConfig ? "", ... }@innerArgs:
-            let
-              allArgs = args // prevArgs // innerArgs;
-              filteredArgs = builtins.removeAttrs allArgs [ "extensions" "extraConfig" ];
-              php = generic filteredArgs;
-
-              php-packages = (callPackage ../../../top-level/php-packages.nix {
-                phpPackage = phpWithExtensions;
-              }).overrideScope' packageOverrides;
-
-              allExtensionFunctions = prevExtensionFunctions ++ [ extensions ];
-              enabledExtensions =
-                builtins.foldl'
-                  (enabled: f:
-                    f { inherit enabled; all = php-packages.extensions; })
-                  []
-                  allExtensionFunctions;
-
-              getExtName = ext: lib.removePrefix "php-" (builtins.parseDrvName ext.name).name;
-
-              # Recursively get a list of all internal dependencies
-              # for a list of extensions.
-              getDepsRecursively = extensions:
-                let
-                  deps = lib.concatMap
-                           (ext: (ext.internalDeps or []) ++ (ext.peclDeps or []))
-                           extensions;
-                in
-                  if ! (deps == []) then
-                    deps ++ (getDepsRecursively deps)
-                  else
-                    deps;
-
-              # Generate extension load configuration snippets from the
-              # extension parameter. This is an attrset suitable for use
-              # with textClosureList, which is used to put the strings in
-              # the right order - if a plugin which is dependent on
-              # another plugin is placed before its dependency, it will
-              # fail to load.
-              extensionTexts =
-                lib.listToAttrs
-                  (map (ext:
-                    let
-                      extName = getExtName ext;
-                      phpDeps = (ext.internalDeps or []) ++ (ext.peclDeps or []);
-                      type = "${lib.optionalString (ext.zendExtension or false) "zend_"}extension";
-                    in
-                      lib.nameValuePair extName {
-                        text = "${type}=${ext}/lib/php/extensions/${extName}.so";
-                        deps = map getExtName phpDeps;
-                      })
-                    (enabledExtensions ++ (getDepsRecursively enabledExtensions)));
-
-              extNames = map getExtName enabledExtensions;
-              extraInit = writeText "php-extra-init-${version}.ini" ''
-                ${lib.concatStringsSep "\n"
-                  (lib.textClosureList extensionTexts extNames)}
-                ${extraConfig}
-              '';
 
-              phpWithExtensions = symlinkJoin rec {
-                name = "php-with-extensions-${version}";
-                inherit (php) version;
-                nativeBuildInputs = [ makeWrapper ];
-                passthru = php.passthru // {
-                  buildEnv = mkBuildEnv allArgs allExtensionFunctions;
-                  withExtensions = mkWithExtensions allArgs allExtensionFunctions;
-                  phpIni = "${phpWithExtensions}/lib/php.ini";
-                  unwrapped = php;
-                  # Select the right php tests for the php version
-                  tests = nixosTests."php${lib.strings.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor php.version)}";
-                  inherit (php-packages) extensions buildPecl;
-                  packages = php-packages.tools;
-                  meta = php.meta // {
-                    outputsToInstall = [ "out" ];
-                  };
+    let
+      # buildEnv wraps php to provide additional extensions and
+      # configuration. Its usage is documented in
+      # doc/languages-frameworks/php.section.md.
+      #
+      # Create a buildEnv with earlier overridden values and
+      # extensions functions in its closure. This is necessary for
+      # consecutive calls to buildEnv and overrides to work as
+      # expected.
+      mkBuildEnv = prevArgs: prevExtensionFunctions: lib.makeOverridable (
+        { extensions ? ({ enabled, ... }: enabled), extraConfig ? "", ... }@innerArgs:
+          let
+            allArgs = args // prevArgs // innerArgs;
+            filteredArgs = builtins.removeAttrs allArgs [ "extensions" "extraConfig" ];
+            php = generic filteredArgs;
+
+            php-packages = (callPackage ../../../top-level/php-packages.nix {
+              phpPackage = phpWithExtensions;
+            }).overrideScope' packageOverrides;
+
+            allExtensionFunctions = prevExtensionFunctions ++ [ extensions ];
+            enabledExtensions =
+              builtins.foldl'
+                (enabled: f:
+                  f { inherit enabled; all = php-packages.extensions; })
+                []
+                allExtensionFunctions;
+
+            getExtName = ext: lib.removePrefix "php-" (builtins.parseDrvName ext.name).name;
+
+            # Recursively get a list of all internal dependencies
+            # for a list of extensions.
+            getDepsRecursively = extensions:
+              let
+                deps = lib.concatMap
+                         (ext: (ext.internalDeps or []) ++ (ext.peclDeps or []))
+                         extensions;
+              in
+                if ! (deps == []) then
+                  deps ++ (getDepsRecursively deps)
+                else
+                  deps;
+
+            # Generate extension load configuration snippets from the
+            # extension parameter. This is an attrset suitable for use
+            # with textClosureList, which is used to put the strings in
+            # the right order - if a plugin which is dependent on
+            # another plugin is placed before its dependency, it will
+            # fail to load.
+            extensionTexts =
+              lib.listToAttrs
+                (map (ext:
+                  let
+                    extName = getExtName ext;
+                    phpDeps = (ext.internalDeps or []) ++ (ext.peclDeps or []);
+                    type = "${lib.optionalString (ext.zendExtension or false) "zend_"}extension";
+                  in
+                    lib.nameValuePair extName {
+                      text = "${type}=${ext}/lib/php/extensions/${extName}.so";
+                      deps = map getExtName phpDeps;
+                    })
+                  (enabledExtensions ++ (getDepsRecursively enabledExtensions)));
+
+            extNames = map getExtName enabledExtensions;
+            extraInit = writeText "php-extra-init-${version}.ini" ''
+              ${lib.concatStringsSep "\n"
+                (lib.textClosureList extensionTexts extNames)}
+              ${extraConfig}
+            '';
+
+            phpWithExtensions = symlinkJoin {
+              name = "php-with-extensions-${version}";
+              inherit (php) version;
+              nativeBuildInputs = [ makeWrapper ];
+              passthru = php.passthru // {
+                buildEnv = mkBuildEnv allArgs allExtensionFunctions;
+                withExtensions = mkWithExtensions allArgs allExtensionFunctions;
+                phpIni = "${phpWithExtensions}/lib/php.ini";
+                unwrapped = php;
+                # Select the right php tests for the php version
+                tests = nixosTests."php${lib.strings.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor php.version)}";
+                inherit (php-packages) extensions buildPecl;
+                packages = php-packages.tools;
+                meta = php.meta // {
+                  outputsToInstall = [ "out" ];
                 };
-                paths = [ php ];
-                postBuild = ''
-                  ln -s ${extraInit} $out/lib/php.ini
-
-                  if test -e $out/bin/php; then
-                    wrapProgram $out/bin/php --set PHP_INI_SCAN_DIR $out/lib
-                  fi
-
-                  if test -e $out/bin/php-fpm; then
-                    wrapProgram $out/bin/php-fpm --set PHP_INI_SCAN_DIR $out/lib
-                  fi
-
-                  if test -e $out/bin/phpdbg; then
-                    wrapProgram $out/bin/phpdbg --set PHP_INI_SCAN_DIR $out/lib
-                  fi
-                '';
               };
-            in
-              phpWithExtensions);
-
-        mkWithExtensions = prevArgs: prevExtensionFunctions: extensions:
-          mkBuildEnv prevArgs prevExtensionFunctions { inherit extensions; };
-
-        pcre' = if (lib.versionAtLeast version "7.3") then pcre2 else pcre;
-      in
-        stdenv.mkDerivation {
-          pname = "php";
-
-          inherit version;
-
-          enableParallelBuilding = true;
-
-          nativeBuildInputs = [ autoconf automake bison flex libtool pkg-config re2c ]
-            ++ lib.optional stdenv.isDarwin xcbuild;
-
-          buildInputs =
-            # PCRE extension
-            [ pcre' ]
-
-            # Enable sapis
-            ++ lib.optional pearSupport [ libxml2.dev ]
-
-            # Misc deps
-            ++ lib.optional apxs2Support apacheHttpd
-            ++ lib.optional argon2Support libargon2
-            ++ lib.optional systemdSupport systemd
-            ++ lib.optional valgrindSupport valgrind
-          ;
-
-          CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
-
-          configureFlags =
-            # Disable all extensions
-            [ "--disable-all" ]
-
-            # PCRE
-            ++ lib.optionals (lib.versionAtLeast version "7.4") [ "--with-external-pcre=${pcre'.dev}" ]
-            ++ lib.optionals (lib.versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre'.dev}" ]
-            ++ lib.optionals (lib.versionOlder version "7.3") [ "--with-pcre-regex=${pcre'.dev}" ]
-            ++ [ "PCRE_LIBDIR=${pcre'}" ]
-
-
-            # Enable sapis
-            ++ lib.optional (!cgiSupport) "--disable-cgi"
-            ++ lib.optional (!cliSupport) "--disable-cli"
-            ++ lib.optional fpmSupport    "--enable-fpm"
-            ++ lib.optional pearSupport [ "--with-pear" "--enable-xml" "--with-libxml" ]
-            ++ lib.optionals (pearSupport && (lib.versionOlder version "7.4")) [
-              "--enable-libxml"
-              "--with-libxml-dir=${libxml2.dev}"
-            ]
-            ++ lib.optional pharSupport   "--enable-phar"
-            ++ lib.optional phpdbgSupport "--enable-phpdbg"
-
-
-            # Misc flags
-            ++ lib.optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
-            ++ lib.optional argon2Support "--with-password-argon2=${libargon2}"
-            ++ lib.optional cgotoSupport "--enable-re2c-cgoto"
-            ++ lib.optional embedSupport "--enable-embed"
-            ++ lib.optional (!ipv6Support) "--disable-ipv6"
-            ++ lib.optional systemdSupport "--with-fpm-systemd"
-            ++ lib.optional valgrindSupport "--with-valgrind=${valgrind.dev}"
-            ++ lib.optional (ztsSupport && (lib.versionOlder version "8.0")) "--enable-maintainer-zts"
-            ++ lib.optional (ztsSupport && (lib.versionAtLeast version "8.0")) "--enable-zts"
-
-
-            # Sendmail
-            ++ [ "PROG_SENDMAIL=${system-sendmail}/bin/sendmail" ]
-          ;
-
-          hardeningDisable = [ "bindnow" ];
-
-          preConfigure =
-          # Don't record the configure flags since this causes unnecessary
-          # runtime dependencies
-          ''
-            for i in main/build-defs.h.in scripts/php-config.in; do
-              substituteInPlace $i \
-                --replace '@CONFIGURE_COMMAND@' '(omitted)' \
-                --replace '@CONFIGURE_OPTIONS@' "" \
-                --replace '@PHP_LDFLAGS@' ""
-            done
-
-            export EXTENSION_DIR=$out/lib/php/extensions
-          ''
-          # PKG_CONFIG need not be a relative path
-          + lib.optionalString (! lib.versionAtLeast version "7.4") ''
-            for i in $(find . -type f -name "*.m4"); do
-              substituteInPlace $i \
-                --replace 'test -x "$PKG_CONFIG"' 'type -P "$PKG_CONFIG" >/dev/null'
-            done
-          '' + ''
-            ./buildconf --copy --force
-
-            if test -f $src/genfiles; then
-              ./genfiles
-            fi
-          '' + lib.optionalString stdenv.isDarwin ''
-            substituteInPlace configure --replace "-lstdc++" "-lc++"
-          '';
-
-          postInstall = ''
-            test -d $out/etc || mkdir $out/etc
-            cp php.ini-production $out/etc/php.ini
-          '';
-
-          postFixup = ''
-            mkdir -p $dev/bin $dev/share/man/man1
-            mv $out/bin/phpize $out/bin/php-config $dev/bin/
-            mv $out/share/man/man1/phpize.1.gz \
-               $out/share/man/man1/php-config.1.gz \
-               $dev/share/man/man1/
-          '';
-
-          src = fetchurl {
-            url = "https://www.php.net/distributions/php-${version}.tar.bz2";
-            inherit sha256;
-          };
-
-          patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
-
-          separateDebugInfo = true;
-
-          outputs = [ "out" "dev" ];
-
-          passthru = {
-            buildEnv = mkBuildEnv {} [];
-            withExtensions = mkWithExtensions {} [];
-            inherit ztsSupport;
-          };
-
-          meta = with lib; {
-            description = "An HTML-embedded scripting language";
-            homepage = "https://www.php.net/";
-            license = licenses.php301;
-            maintainers = teams.php.members;
-            platforms = platforms.all;
-            outputsToInstall = [ "out" "dev" ];
-          };
-        };
+              paths = [ php ];
+              postBuild = ''
+                ln -s ${extraInit} $out/lib/php.ini
+
+                if test -e $out/bin/php; then
+                  wrapProgram $out/bin/php --set PHP_INI_SCAN_DIR $out/lib
+                fi
+
+                if test -e $out/bin/php-fpm; then
+                  wrapProgram $out/bin/php-fpm --set PHP_INI_SCAN_DIR $out/lib
+                fi
+
+                if test -e $out/bin/phpdbg; then
+                  wrapProgram $out/bin/phpdbg --set PHP_INI_SCAN_DIR $out/lib
+                fi
+              '';
+            };
+          in
+            phpWithExtensions);
+
+      mkWithExtensions = prevArgs: prevExtensionFunctions: extensions:
+        mkBuildEnv prevArgs prevExtensionFunctions { inherit extensions; };
+    in
+    stdenv.mkDerivation {
+      pname = "php";
+
+      inherit version;
+
+      enableParallelBuilding = true;
+
+      nativeBuildInputs = [ autoconf automake bison flex libtool pkg-config re2c ]
+        ++ lib.optional stdenv.isDarwin xcbuild;
+
+      buildInputs =
+        # PCRE extension
+        [ pcre2 ]
+
+        # Enable sapis
+        ++ lib.optional pearSupport [ libxml2.dev ]
+
+        # Misc deps
+        ++ lib.optional apxs2Support apacheHttpd
+        ++ lib.optional argon2Support libargon2
+        ++ lib.optional systemdSupport systemd
+        ++ lib.optional valgrindSupport valgrind
+      ;
+
+      CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
+
+      configureFlags =
+        # Disable all extensions
+        [ "--disable-all" ]
+
+        # PCRE
+        ++ lib.optionals (lib.versionAtLeast version "7.4") [ "--with-external-pcre=${pcre2.dev}" ]
+        ++ lib.optionals (lib.versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre2.dev}" ]
+        ++ lib.optionals (lib.versionOlder version "7.3") [ "--with-pcre-regex=${pcre2.dev}" ]
+        ++ [ "PCRE_LIBDIR=${pcre2}" ]
+
+
+        # Enable sapis
+        ++ lib.optional (!cgiSupport) "--disable-cgi"
+        ++ lib.optional (!cliSupport) "--disable-cli"
+        ++ lib.optional fpmSupport    "--enable-fpm"
+        ++ lib.optional pearSupport [ "--with-pear" "--enable-xml" "--with-libxml" ]
+        ++ lib.optionals (pearSupport && (lib.versionOlder version "7.4")) [
+          "--enable-libxml"
+          "--with-libxml-dir=${libxml2.dev}"
+        ]
+        ++ lib.optional pharSupport   "--enable-phar"
+        ++ lib.optional (!phpdbgSupport) "--disable-phpdbg"
+
+
+        # Misc flags
+        ++ lib.optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
+        ++ lib.optional argon2Support "--with-password-argon2=${libargon2}"
+        ++ lib.optional cgotoSupport "--enable-re2c-cgoto"
+        ++ lib.optional embedSupport "--enable-embed"
+        ++ lib.optional (!ipv6Support) "--disable-ipv6"
+        ++ lib.optional systemdSupport "--with-fpm-systemd"
+        ++ lib.optional valgrindSupport "--with-valgrind=${valgrind.dev}"
+        ++ lib.optional (ztsSupport && (lib.versionOlder version "8.0")) "--enable-maintainer-zts"
+        ++ lib.optional (ztsSupport && (lib.versionAtLeast version "8.0")) "--enable-zts"
+
+
+        # Sendmail
+        ++ [ "PROG_SENDMAIL=${system-sendmail}/bin/sendmail" ]
+      ;
+
+      hardeningDisable = [ "bindnow" ];
+
+      preConfigure =
+      # Don't record the configure flags since this causes unnecessary
+      # runtime dependencies
+      ''
+        for i in main/build-defs.h.in scripts/php-config.in; do
+          substituteInPlace $i \
+            --replace '@CONFIGURE_COMMAND@' '(omitted)' \
+            --replace '@CONFIGURE_OPTIONS@' "" \
+            --replace '@PHP_LDFLAGS@' ""
+        done
+
+        export EXTENSION_DIR=$out/lib/php/extensions
+      ''
+      # PKG_CONFIG need not be a relative path
+      + lib.optionalString (! lib.versionAtLeast version "7.4") ''
+        for i in $(find . -type f -name "*.m4"); do
+          substituteInPlace $i \
+            --replace 'test -x "$PKG_CONFIG"' 'type -P "$PKG_CONFIG" >/dev/null'
+        done
+      '' + ''
+        ./buildconf --copy --force
+
+        if test -f $src/genfiles; then
+          ./genfiles
+        fi
+      '' + lib.optionalString stdenv.isDarwin ''
+        substituteInPlace configure --replace "-lstdc++" "-lc++"
+      '';
+
+      postInstall = ''
+        test -d $out/etc || mkdir $out/etc
+        cp php.ini-production $out/etc/php.ini
+      '';
+
+      postFixup = ''
+        mkdir -p $dev/bin $dev/share/man/man1
+        mv $out/bin/phpize $out/bin/php-config $dev/bin/
+        mv $out/share/man/man1/phpize.1.gz \
+           $out/share/man/man1/php-config.1.gz \
+           $dev/share/man/man1/
+      '';
+
+      src = fetchurl {
+        url = "https://www.php.net/distributions/php-${version}.tar.bz2";
+        inherit sha256;
+      };
+
+      patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
+
+      separateDebugInfo = true;
+
+      outputs = [ "out" "dev" ];
+
+      passthru = {
+        buildEnv = mkBuildEnv {} [];
+        withExtensions = mkWithExtensions {} [];
+        inherit ztsSupport;
+      };
+
+      meta = with lib; {
+        description = "An HTML-embedded scripting language";
+        homepage = "https://www.php.net/";
+        license = licenses.php301;
+        maintainers = teams.php.members;
+        platforms = platforms.all;
+        outputsToInstall = [ "out" "dev" ];
+      };
+    };
 in generic
diff --git a/nixpkgs/pkgs/development/interpreters/php/php73-darwin-isfinite.patch b/nixpkgs/pkgs/development/interpreters/php/php73-darwin-isfinite.patch
deleted file mode 100644
index 7f784e0f5a95..000000000000
--- a/nixpkgs/pkgs/development/interpreters/php/php73-darwin-isfinite.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff -ru a/configure.ac b/configure.ac
---- a/configure.ac      2018-12-04 19:12:20.000000000 +0300
-+++ b/configure.ac      2018-12-10 12:30:37.798917520 +0300
-@@ -68,7 +68,7 @@
- #include <math.h>
-
- #ifndef zend_isnan
--#if HAVE_DECL_ISNAN && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISNAN && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_isnan(a) isnan(a)
- #elif defined(HAVE_FPCLASS)
- #define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN))
-@@ -77,7 +77,7 @@
- #endif
- #endif
-
--#if HAVE_DECL_ISINF && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISINF && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_isinf(a) isinf(a)
- #elif defined(INFINITY)
- /* Might not work, but is required by ISO C99 */
-@@ -88,7 +88,7 @@
- #define zend_isinf(a) 0
- #endif
-
--#if HAVE_DECL_ISFINITE && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISFINITE && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_finite(a) isfinite(a)
- #elif defined(HAVE_FINITE)
- #define zend_finite(a) finite(a)
-diff -ru a/Zend/configure.ac b/Zend/configure.ac
---- a/Zend/configure.ac 2018-12-04 19:12:30.000000000 +0300
-+++ b/Zend/configure.ac 2018-12-10 12:28:50.350929699 +0300
-@@ -59,7 +59,7 @@
- #include <math.h>
-
- #ifndef zend_isnan
--#if HAVE_DECL_ISNAN && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISNAN && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_isnan(a) isnan(a)
- #elif defined(HAVE_FPCLASS)
- #define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN))
-@@ -68,7 +68,7 @@
- #endif
- #endif
-
--#if HAVE_DECL_ISINF && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISINF && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_isinf(a) isinf(a)
- #elif defined(INFINITY)
- /* Might not work, but is required by ISO C99 */
-@@ -79,7 +79,7 @@
- #define zend_isinf(a) 0
- #endif
-
--#if HAVE_DECL_ISFINITE && (!defined(__cplusplus) || __cplusplus < 201103L)
-+#if HAVE_DECL_ISFINITE && (defined(__APPLE__) || defined(__APPLE_CC__) || !defined(__cplusplus) || __cplusplus < 201103L)
- #define zend_finite(a) isfinite(a)
- #elif defined(HAVE_FINITE)
- #define zend_finite(a) finite(a)
diff --git a/nixpkgs/pkgs/development/interpreters/pure/default.nix b/nixpkgs/pkgs/development/interpreters/pure/default.nix
index 863df66899b1..d1c03bba5a31 100644
--- a/nixpkgs/pkgs/development/interpreters/pure/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/pure/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, makeWrapper,
-  llvm, gmp, mpfr, readline, bison, flex }:
+  libllvm, gmp, mpfr, readline, bison, flex }:
 
 stdenv.mkDerivation rec {
   baseName="pure";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ bison flex ];
-  propagatedBuildInputs = [ llvm gmp mpfr readline ];
+  propagatedBuildInputs = [ libllvm gmp mpfr readline ];
   NIX_LDFLAGS = "-lLLVMJIT";
 
   postPatch = ''
@@ -25,10 +25,10 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--enable-release" ];
   doCheck = true;
   checkPhase = ''
-    LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${llvm}/lib make check
+    LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${libllvm}/lib make check
   '';
   postInstall = ''
-    wrapProgram $out/bin/pure --prefix LD_LIBRARY_PATH : ${llvm}/lib
+    wrapProgram $out/bin/pure --prefix LD_LIBRARY_PATH : ${libllvm}/lib
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/development/interpreters/python/conda/default.nix b/nixpkgs/pkgs/development/interpreters/python/conda/default.nix
new file mode 100644
index 000000000000..77bda13f266c
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/conda/default.nix
@@ -0,0 +1,25 @@
+{ pkgs }: {
+
+  # List of libraries that are needed for conda binary packages.
+  # When installing a conda binary package, just extend
+  # the `buildInputs` with `condaAutopatchLibs`.
+  condaPatchelfLibs = builtins.map (p: p.lib or p) ([
+    pkgs.alsa-lib
+    pkgs.cups
+    pkgs.gcc-unwrapped
+    pkgs.libGL
+  ] ++ (with pkgs.xorg; [
+    libSM
+    libICE
+    libX11
+    libXau
+    libXdamage
+    libXi
+    libXrender
+    libXrandr
+    libXcomposite
+    libXcursor
+    libXtst
+    libXScrnSaver])
+  );
+}
diff --git a/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix b/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix
index d6ba795d20ad..5ee88ebb8810 100644
--- a/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix
@@ -258,7 +258,7 @@ in with passthru; stdenv.mkDerivation ({
     LDFLAGS = lib.optionalString (!stdenv.isDarwin) "-lgcc_s";
     inherit (mkPaths buildInputs) C_INCLUDE_PATH LIBRARY_PATH;
 
-    NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2"
+    NIX_CFLAGS_COMPILE = optionalString (stdenv.targetPlatform.system == "x86_64-darwin") "-msse2"
       + optionalString stdenv.hostPlatform.isMusl " -DTHREAD_STACK_SIZE=0x100000";
     DETERMINISTIC_BUILD = 1;
 
diff --git a/nixpkgs/pkgs/development/interpreters/python/default.nix b/nixpkgs/pkgs/development/interpreters/python/default.nix
index e3124bcc0c58..9c4499b18432 100644
--- a/nixpkgs/pkgs/development/interpreters/python/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/default.nix
@@ -44,6 +44,8 @@ with pkgs;
               toPythonModule toPythonApplication
               buildSetupcfg
 
+              condaInstallHook
+              condaUnpackHook
               eggUnpackHook
               eggBuildHook
               eggInstallHook
@@ -69,15 +71,18 @@ with pkgs;
               recursivePthLoader
             ;
           };
+          extra = _: {};
           optionalExtensions = cond: as: if cond then as else [];
           python2Extension = import ../../../top-level/python2-packages.nix;
           extensions = lib.composeManyExtensions ((optionalExtensions (!self.isPy3k) [python2Extension]) ++ [ overrides ]);
+          aliases = self: super: lib.optionalAttrs (config.allowAliases or true) (import ../../../top-level/python-aliases.nix lib self super);
         in lib.makeScopeWithSplicing
           pkgs.splicePackages
           pkgs.newScope
           otherSplices
           keep
-          (lib.extends extensions pythonPackagesFun))
+          extra
+          (lib.extends (lib.composeExtensions aliases extensions) pythonPackagesFun))
         {
           overrides = packageOverrides;
         };
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/conda-install-hook.sh b/nixpkgs/pkgs/development/interpreters/python/hooks/conda-install-hook.sh
new file mode 100644
index 000000000000..af9ed60a038d
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/conda-install-hook.sh
@@ -0,0 +1,27 @@
+# Setup hook to use in case a conda binary package is installed
+echo "Sourcing conda install hook"
+
+condaInstallPhase(){
+    echo "Executing condaInstallPhase"
+    runHook preInstall
+
+    # There are two different formats of conda packages.
+    # It either contains only a site-packages directory
+    # or multiple top level directories.
+    siteDir=@pythonSitePackages@
+    if [ -e ./site-packages ]; then
+      mkdir -p $out/$siteDir
+      cp -r ./site-packages/* $out/$siteDir
+    else
+      cp -r . $out
+      rm $out/env-vars
+    fi
+
+    runHook postInstall
+    echo "Finished executing condaInstallPhase"
+}
+
+if [ -z "${installPhase-}" ]; then
+    echo "Using condaInstallPhase"
+    installPhase=condaInstallPhase
+fi
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/conda-unpack-hook.sh b/nixpkgs/pkgs/development/interpreters/python/hooks/conda-unpack-hook.sh
new file mode 100644
index 000000000000..6204c13b7221
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/conda-unpack-hook.sh
@@ -0,0 +1,18 @@
+# Setup hook to use in case a conda binary package is fetched
+echo "Sourcing conda unpack hook"
+
+condaUnpackPhase(){
+    echo "Executing condaUnpackPhase"
+    runHook preUnpack
+
+    # use lbzip2 for parallel decompression (bz2 is slow)
+    lbzip2 -dc -n $NIX_BUILD_CORES $src | tar --exclude='info' -x
+
+    # runHook postUnpack # Calls find...?
+    echo "Finished executing condaUnpackPhase"
+}
+
+if [ -z "${unpackPhase-}" ]; then
+    echo "Using condaUnpackPhase"
+    unpackPhase=condaUnpackPhase
+fi
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix b/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
index 1a64c79232bc..1a0618225a37 100644
--- a/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/default.nix
@@ -16,6 +16,21 @@ let
   setuppy = ../run_setup.py;
 in rec {
 
+  condaInstallHook = callPackage ({ gnutar, lbzip2 }:
+    makeSetupHook {
+      name = "conda-install-hook";
+      deps = [ gnutar lbzip2 ];
+      substitutions = {
+        inherit pythonSitePackages;
+      };
+    } ./conda-install-hook.sh) {};
+
+  condaUnpackHook = callPackage ({}:
+    makeSetupHook {
+      name = "conda-unpack-hook";
+      deps = [];
+    } ./conda-unpack-hook.sh) {};
+
   eggBuildHook = callPackage ({ }:
     makeSetupHook {
       name = "egg-build-hook.sh";
diff --git a/nixpkgs/pkgs/development/interpreters/python/hooks/pytest-check-hook.sh b/nixpkgs/pkgs/development/interpreters/python/hooks/pytest-check-hook.sh
index eb45205ff731..0f708f888292 100644
--- a/nixpkgs/pkgs/development/interpreters/python/hooks/pytest-check-hook.sh
+++ b/nixpkgs/pkgs/development/interpreters/python/hooks/pytest-check-hook.sh
@@ -2,7 +2,7 @@
 echo "Sourcing pytest-check-hook"
 
 declare -ar disabledTests
-declare -ar disabledTestPaths
+declare -a disabledTestPaths
 
 function _concatSep {
     local result
@@ -37,6 +37,11 @@ function pytestCheckPhase() {
         disabledTestsString=$(_pytestComputeDisabledTestsString "${disabledTests[@]}")
       args+=" -k \""$disabledTestsString"\""
     fi
+
+    if [ -n "${disabledTestPaths-}" ]; then
+        eval "disabledTestPaths=($disabledTestPaths)"
+    fi
+
     for path in ${disabledTestPaths[@]}; do
       if [ ! -e "$path" ]; then
         echo "Disabled tests path \"$path\" does not exist. Aborting"
diff --git a/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix b/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
index e9c769821d6f..4917b167046e 100644
--- a/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix
@@ -93,6 +93,8 @@
 
 , doCheck ? config.doCheckByDefault or false
 
+, disabledTestPaths ? []
+
 , ... } @ attrs:
 
 
@@ -108,6 +110,7 @@ let
 
   self = toPythonModule (stdenv.mkDerivation ((builtins.removeAttrs attrs [
     "disabled" "checkPhase" "checkInputs" "doCheck" "doInstallCheck" "dontWrapPythonPrograms" "catchConflicts" "format"
+    "disabledTestPaths"
   ]) // {
 
     name = namePrefix + name_;
@@ -178,6 +181,8 @@ let
     # If given use the specified checkPhase, otherwise use the setup hook.
     # Longer-term we should get rid of `checkPhase` and use `installCheckPhase`.
     installCheckPhase = attrs.checkPhase;
+  } //  lib.optionalAttrs (disabledTestPaths != []) {
+      disabledTestPaths = lib.escapeShellArgs disabledTestPaths;
   }));
 
   passthru.updateScript = let
diff --git a/nixpkgs/pkgs/development/interpreters/python/tests.nix b/nixpkgs/pkgs/development/interpreters/python/tests.nix
index cfba04da9380..872123338f8c 100644
--- a/nixpkgs/pkgs/development/interpreters/python/tests.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/tests.nix
@@ -121,4 +121,37 @@ let
     # in assert myPackages.foobar == myPackages.numpy; myPackages.python.withPackages(ps: with ps; [ foobar ]);
   };
 
-in lib.optionalAttrs (stdenv.hostPlatform == stdenv.buildPlatform ) (environmentTests // integrationTests // overrideTests)
+  condaTests = let
+    requests = callPackage ({
+        autoPatchelfHook,
+        fetchurl,
+        pythonCondaPackages,
+      }:
+      python.pkgs.buildPythonPackage {
+        pname = "requests";
+        version = "2.24.0";
+        format = "other";
+        src = fetchurl {
+          url = "https://repo.anaconda.com/pkgs/main/noarch/requests-2.24.0-py_0.tar.bz2";
+          sha256 = "02qzaf6gwsqbcs69pix1fnjxzgnngwzvrsy65h1d521g750mjvvp";
+        };
+        nativeBuildInputs = [ autoPatchelfHook ] ++ (with python.pkgs; [
+          condaUnpackHook condaInstallHook
+        ]);
+        buildInputs = [
+          pythonCondaPackages.condaPatchelfLibs
+        ];
+        propagatedBuildInputs = with python.pkgs; [
+          chardet idna urllib3 certifi
+        ];
+      }
+    ) {};
+    pythonWithRequests = requests.pythonModule.withPackages (ps: [ requests ]);
+    in
+    {
+      condaExamplePackage = runCommand "import-requests" {} ''
+        ${pythonWithRequests.interpreter} -c "import requests" > $out
+      '';
+    };
+
+in lib.optionalAttrs (stdenv.hostPlatform == stdenv.buildPlatform ) (environmentTests // integrationTests // overrideTests // condaTests)
diff --git a/nixpkgs/pkgs/development/interpreters/quickjs/default.nix b/nixpkgs/pkgs/development/interpreters/quickjs/default.nix
index ac70a50eaa72..4bc0ec528a01 100644
--- a/nixpkgs/pkgs/development/interpreters/quickjs/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/quickjs/default.nix
@@ -1,17 +1,37 @@
-{ lib, stdenv, fetchurl }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, texinfo
+}:
 
 stdenv.mkDerivation rec {
   pname = "quickjs";
-  version = "2020-11-08";
+  version = "2021-03-27";
 
-  src = fetchurl {
-    url = "https://bellard.org/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0yqqcjxi3cqagw184mqrxpvqg486x7c233r3cp9mxachngd6779f";
+  src = fetchFromGitHub {
+    owner = "bellard";
+    repo = pname;
+    rev = "b5e62895c619d4ffc75c9d822c8d85f1ece77e5b";
+    hash = "sha256-VMaxVVQuJ3DAwYrC14uJqlRBg0//ugYvtyhOXsTUbCA=";
   };
 
   makeFlags = [ "prefix=${placeholder "out"}" ];
   enableParallelBuilding = true;
 
+  nativeBuildInputs = [
+    texinfo
+  ];
+
+  postBuild = ''
+    (cd doc
+     makeinfo *texi)
+  '';
+
+  postInstall = ''
+    (cd doc
+     install -Dt $out/share/doc *texi *info)
+  '';
+
   doInstallCheck = true;
   installCheckPhase = ''
     PATH="$out/bin:$PATH"
@@ -32,7 +52,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A small and embeddable Javascript engine";
     homepage = "https://bellard.org/quickjs/";
-    maintainers = with maintainers; [ stesie ];
+    maintainers = with maintainers; [ stesie AndersonTorres ];
     platforms = platforms.linux;
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/interpreters/renpy/default.nix b/nixpkgs/pkgs/development/interpreters/renpy/default.nix
index ae5227fb1989..b0c10c8a6520 100644
--- a/nixpkgs/pkgs/development/interpreters/renpy/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/renpy/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, python2Packages, pkg-config, SDL2
-, libpng, ffmpeg_3, freetype, glew, libGL, libGLU, fribidi, zlib
+, libpng, ffmpeg, freetype, glew, libGL, libGLU, fribidi, zlib
 , glib
 }:
 
@@ -32,13 +32,13 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     python cython wrapPython tkinter
-    SDL2 libpng ffmpeg_3 freetype glew libGLU libGL fribidi zlib pygame_sdl2 glib
+    SDL2 libpng ffmpeg freetype glew libGLU libGL fribidi zlib pygame_sdl2 glib
   ];
 
   pythonPath = [ pygame_sdl2 tkinter ];
 
   RENPY_DEPS_INSTALL = lib.concatStringsSep "::" (map (path: path) [
-    SDL2 SDL2.dev libpng ffmpeg_3 ffmpeg_3.out freetype glew.dev glew.out libGLU libGL fribidi zlib
+    SDL2 SDL2.dev libpng ffmpeg ffmpeg.out freetype glew.dev glew.out libGLU libGL fribidi zlib
   ]);
 
   buildPhase = ''
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/default.nix b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
index 0b19b64e180a..8563eb60210d 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
@@ -11,7 +11,7 @@ let
   opString = lib.optionalString;
   patchSet = import ./rvm-patchsets.nix { inherit fetchFromGitHub; };
   config = import ./config.nix { inherit fetchFromSavannah; };
-  rubygems = import ./rubygems { inherit stdenv lib fetchurl fetchpatch; };
+  rubygems = import ./rubygems { inherit stdenv lib fetchurl; };
 
   # Contains the ruby version heuristics
   rubyVersion = import ./ruby-version.nix { inherit lib; };
@@ -62,13 +62,7 @@ let
       #   Or (usually):
       #     $(nix-build -A ruby)/lib/ruby/2.6.0/x86_64-linux/rbconfig.rb
       # - In $out/lib/libruby.so and/or $out/lib/libruby.dylib
-      #
-      # Since some Gems require JIT support, there's probably no
-      # escape from this reference. Hence, it was decided to enable this
-      # feature by default, as it's enabled by default by ruby's ./configure
-      # script. If you'd like to have a ruby without reference to cc, setting
-      # jitSupport to false should remove all known references mentioned above.
-      , removeReferencesTo, jitSupport ? true
+      , removeReferencesTo, jitSupport ? false
       , autoreconfHook, bison, autoconf
       , buildEnv, bundler, bundix
       , libiconv, libobjc, libunwind, Foundation
@@ -121,7 +115,17 @@ let
             patchLevel = ver.patchLevel;
           }).${ver.majMinTiny}
           ++ op atLeast27 ./do-not-regenerate-revision.h.patch
-          ++ op (atLeast30 && useRailsExpress) ./do-not-update-gems-baseruby.patch;
+          ++ op (atLeast30 && useRailsExpress) ./do-not-update-gems-baseruby.patch
+          # Ruby prior to 3.0 has a bug the installer (tools/rbinstall.rb) but
+          # the resulting error was swallowed. Newer rubygems no longer swallows
+          # this error. We upgrade rubygems when rubygemsSupport is enabled, so
+          # we have to fix this bug to prevent the install step from failing.
+          # See https://github.com/ruby/ruby/pull/2930
+          ++ op (!atLeast30 && rubygemsSupport)
+            (fetchpatch {
+              url = "https://github.com/ruby/ruby/commit/261d8dd20afd26feb05f00a560abd99227269c1c.patch";
+              sha256 = "0wrii25cxcz2v8bgkrf7ibcanjlxwclzhayin578bf0qydxdm9qy";
+            });
 
         postUnpack = opString rubygemsSupport ''
           rm -rf $sourceRoot/{lib,test}/rubygems*
@@ -183,8 +187,9 @@ let
         installFlags = lib.optional docSupport "install-doc";
         # Bundler tries to create this directory
         postInstall = ''
+          rbConfig=$(find $out/lib/ruby -name rbconfig.rb)
           # Remove unnecessary groff reference from runtime closure, since it's big
-          sed -i '/NROFF/d' $out/lib/ruby/*/*/rbconfig.rb
+          sed -i '/NROFF/d' $rbConfig
           ${
             lib.optionalString (!jitSupport) ''
               # Get rid of the CC runtime dependency
@@ -193,7 +198,8 @@ let
                 $out/lib/libruby*
               ${removeReferencesTo}/bin/remove-references-to \
                 -t ${stdenv.cc} \
-                $out/${passthru.libPath}/${stdenv.hostPlatform.system}/rbconfig.rb
+                $rbConfig
+              sed -i '/CC_VERSION_MESSAGE/d' $rbConfig
             ''
           }
           # Bundler tries to create this directory
@@ -211,8 +217,6 @@ let
           addEnvHooks "$hostOffset" addGemPath
           addEnvHooks "$hostOffset" addRubyLibPath
           EOF
-
-          rbConfig=$(find $out/lib/ruby -name rbconfig.rb)
         '' + opString docSupport ''
           # Prevent the docs from being included in the closure
           sed -i "s|\$(DESTDIR)$devdoc|\$(datarootdir)/\$(RI_BASE_NAME)|" $rbConfig
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix b/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
index 19eed817ec29..db508caae310 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
@@ -1,23 +1,18 @@
-{ stdenv, lib, fetchurl, fetchpatch }:
+{ stdenv, lib, fetchurl }:
 
 stdenv.mkDerivation rec {
   name = "rubygems";
-  version = "3.1.3";
+  version = "3.2.16";
 
   src = fetchurl {
     url = "https://rubygems.org/rubygems/rubygems-${version}.tgz";
-    sha256 = "181wjclxnq5lrwnr53famy9pg8911hi9w2v0vy7dqgjqnc4iy1hp";
+    sha256 = "1bpn45hchcbirqvqwxcxyk1xy2xkdd915jci2hfjq4y6zc4idns0";
   };
 
   patches = [
     ./0001-add-post-extract-hook.patch
     ./0002-binaries-with-env-shebang.patch
     ./0003-gem-install-default-to-user.patch
-
-    (fetchpatch {
-      url = "https://github.com/rubygems/rubygems/commit/0af4d2d369ff580ef54839ec15a8c7ec419978cb.patch";
-      sha256 = "13gyfxn4rmxq1dbxq5rzphnhagn8n8kpp8lb9h6h4s9d4zaklax9";
-    })
   ];
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/development/interpreters/spidermonkey/1.8.5.nix b/nixpkgs/pkgs/development/interpreters/spidermonkey/1.8.5.nix
deleted file mode 100644
index 4892e0b8abef..000000000000
--- a/nixpkgs/pkgs/development/interpreters/spidermonkey/1.8.5.nix
+++ /dev/null
@@ -1,79 +0,0 @@
-{ stdenv, lib, autoconf213, fetchurl, fetchpatch, pkg-config, nspr, perl, python2, zip }:
-
-stdenv.mkDerivation {
-  pname = "spidermonkey";
-  version = "1.8.5";
-
-  src = fetchurl {
-    url = "mirror://mozilla/js/js185-1.0.0.tar.gz";
-    sha256 = "5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687";
-  };
-
-  propagatedBuildInputs = [ nspr ];
-
-  nativeBuildInputs = [ pkg-config ] ++ lib.optional stdenv.isAarch32 autoconf213;
-  buildInputs = [ perl python2 zip ];
-
-  postUnpack = "sourceRoot=\${sourceRoot}/js/src";
-
-  preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr.dev}/include/nspr"
-    export LIBXUL_DIST=$out
-    ${lib.optionalString stdenv.isAarch32 "autoreconf --verbose --force"}
-  '';
-
-  patches = [
-    (fetchpatch {
-      name = "gcc6.patch";
-      url = "https://sources.debian.org/data/main/m/mozjs/1.8.5-1.0.0+dfsg-6/debian/patches/fix-811665.patch";
-      sha256 = "1q8477xqxiy5d8376k5902l45gd0qkd4nxmhl8vr6rr1pxfcny99";
-    })
-  ] ++ lib.optionals stdenv.isAarch32 [
-    # Explained below in configureFlags for ARM
-    ./1.8.5-findvanilla.patch
-    # Fix for hard float flags.
-    ./1.8.5-arm-flags.patch
-  ];
-
-  patchFlags = [ "-p3" ];
-
-  # fixes build on gcc8
-  postPatch = ''
-    substituteInPlace ./methodjit/MethodJIT.cpp \
-      --replace 'asm volatile' 'asm'
-  '';
-
-  # On the Sheevaplug, ARM, its nanojit thing segfaults in japi-tests in
-  # "make check". Disabling tracejit makes it work, but then it needs the
-  # patch findvanilla.patch do disable a checker about allocator safety. In case
-  # of polkit, which is what matters most, it does not override the allocator
-  # so the failure of that test does not matter much.
-  configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ] ++
-    lib.optionals (stdenv.hostPlatform.system == "armv5tel-linux") [
-        "--with-cpu-arch=armv5t"
-        "--disable-tracejit" ];
-
-  # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393
-  preBuild = ''
-    touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}
-    ${if stdenv.isAarch32 then "rm -r jit-test/tests/jaeger/bug563000" else ""}
-  '';
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  preCheck = ''
-    rm jit-test/tests/sunspider/check-date-format-tofte.js    # https://bugzil.la/600522
-  '';
-
-  meta = with lib; {
-    description = "Mozilla's JavaScript engine written in C/C++";
-    homepage = "https://developer.mozilla.org/en/SpiderMonkey";
-    # TODO: MPL/GPL/LGPL tri-license.
-    maintainers = [ maintainers.goibhniu ];
-    platforms = platforms.linux;
-    broken = stdenv.isAarch64; # 2018-08-21, broken since 2017-03-08
-  };
-}
-
diff --git a/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix b/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
index 0ac005b07dea..f867e606140f 100644
--- a/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
+++ b/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
@@ -55,7 +55,7 @@ in stdenv.mkDerivation rec {
     "--with-system-zlib"
     "--with-system-icu"
 
-    "--with-libclang-path=${llvmPackages.libclang}/lib"
+    "--with-libclang-path=${llvmPackages.libclang.lib}/lib"
     "--with-clang-path=${llvmPackages.clang}/bin/clang"
 
     "--enable-shared-js"
diff --git a/nixpkgs/pkgs/development/interpreters/supercollider/default.nix b/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
index b7efc37ae044..fc8d8f1652de 100644
--- a/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/supercollider/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, mkDerivation, fetchurl, cmake, pkg-config, alsaLib
+{ lib, stdenv, mkDerivation, fetchurl, cmake, pkg-config, alsa-lib
 , libjack2, libsndfile, fftw, curl, gcc
 , libXt, qtbase, qttools, qtwebengine
 , readline, qtwebsockets, useSCEL ? false, emacs
@@ -27,7 +27,7 @@ mkDerivation rec {
 
   buildInputs = [
     gcc libjack2 libsndfile fftw curl libXt qtbase qtwebengine qtwebsockets readline ]
-      ++ optional (!stdenv.isDarwin) alsaLib
+      ++ optional (!stdenv.isDarwin) alsa-lib
       ++ optional useSCEL emacs;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/interpreters/wasmer/default.nix b/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
index 8077177d8b8f..d19600f39b85 100644
--- a/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/wasmer/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     fetchSubmodules = true;
   };
 
-  cargoSha256 = "08r2b4s005w8r207jwq2fd43y3prgd8pg1m72aww1r7yrbxdr0v2";
+  cargoSha256 = "140bzxhsyfif99x5a1m1d45ppb6jzvy9m4xil7z1wg2pnq9k7zz8";
 
   nativeBuildInputs = [ cmake pkg-config ];
 
@@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
     "--features" "test-cranelift,test-jit"
   ];
 
-  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
   meta = with lib; {
     description = "The Universal WebAssembly Runtime";
diff --git a/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix b/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
index 3d13dddb6425..675a7cdd6bc0 100644
--- a/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/wasmtime/default.nix
@@ -12,12 +12,12 @@ rustPlatform.buildRustPackage rec {
     fetchSubmodules = true;
   };
 
-  cargoSha256 = "1r1fm28zaxfbzd17jzaz8ql6ss6y6djgdhpfpkvpbw9l8l06x4lc";
+  cargoSha256 = "1wlig9gls7s1k1swxwhl82vfga30bady8286livxc4y2zp0vb18w";
 
   nativeBuildInputs = [ python cmake clang ];
   buildInputs = [ llvmPackages.libclang ] ++
    lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
-  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/java-modules/postgresql_jdbc/default.nix b/nixpkgs/pkgs/development/java-modules/postgresql_jdbc/default.nix
index e7968cf80c0a..524273e080fe 100644
--- a/nixpkgs/pkgs/development/java-modules/postgresql_jdbc/default.nix
+++ b/nixpkgs/pkgs/development/java-modules/postgresql_jdbc/default.nix
@@ -2,19 +2,21 @@
 
 stdenv.mkDerivation rec {
   pname = "postgresql-jdbc";
-  version = "42.2.5";
+  version = "42.2.20";
 
   src = fetchMavenArtifact {
     artifactId = "postgresql";
     groupId = "org.postgresql";
-    sha256 = "1p0cbb7ka41xxipzjy81hmcndkqynav22xyipkg7qdqrqvw4dykz";
+    sha256 = "0kjilsrz9shymfki48kg1q84la1870ixlh2lnfw347x8mqw2k2vh";
     inherit version;
   };
 
   phases = [ "installPhase" ];
 
   installPhase = ''
+    runHook preInstall
     install -m444 -D $src/share/java/*postgresql-${version}.jar $out/share/java/postgresql-jdbc.jar
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/CGAL/default.nix b/nixpkgs/pkgs/development/libraries/CGAL/default.nix
index 7ff9ac43343e..bd8edc14a8bb 100644
--- a/nixpkgs/pkgs/development/libraries/CGAL/default.nix
+++ b/nixpkgs/pkgs/development/libraries/CGAL/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cgal";
-  version = "5.2";
+  version = "5.2.1";
 
   src = fetchFromGitHub {
     owner = "CGAL";
     repo = "releases";
     rev = "CGAL-${version}";
-    sha256 = "1+ov1fu79MXoW0D8odInMZPFMYg69st//PoMW42oXpA=";
+    sha256 = "sha256-sJyeehgt84rLX8ZBYIbFgHLG2aJDDHEj5GeVnQhjiOQ=";
   };
 
   # note: optional component libCGAL_ImageIO would need zlib and opengl;
diff --git a/nixpkgs/pkgs/development/libraries/SDL/default.nix b/nixpkgs/pkgs/development/libraries/SDL/default.nix
index b51bc3f7cdd8..bf76bc1e8570 100644
--- a/nixpkgs/pkgs/development/libraries/SDL/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, config, fetchurl, fetchpatch, pkg-config, audiofile, libcap, libiconv
 , libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
 , openglSupport ? libGLSupported, libGL, libGLU
-, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid, alsaLib
+, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid, alsa-lib
 , x11Support ? !stdenv.isCygwin && !stdenv.hostPlatform.isAndroid
 , libXext, libICE, libXrandr
 , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux && !stdenv.hostPlatform.isAndroid, libpulseaudio
@@ -17,7 +17,7 @@ let
   extraPropagatedBuildInputs = [ ]
     ++ optionals x11Support [ libXext libICE libXrandr ]
     ++ optionals openglSupport [ libGL libGLU ]
-    ++ optional alsaSupport alsaLib
+    ++ optional alsaSupport alsa-lib
     ++ optional pulseaudioSupport libpulseaudio
     ++ optional stdenv.isDarwin Cocoa;
   rpath = makeLibraryPath extraPropagatedBuildInputs;
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
   # Please try revert the change that introduced this comment when updating SDL.
   ] ++ optional stdenv.isDarwin "--disable-x11-shared"
     ++ optional (!x11Support) "--without-x"
-    ++ optional alsaSupport "--with-alsa-prefix=${alsaLib.out}/lib";
+    ++ optional alsaSupport "--with-alsa-prefix=${alsa-lib.out}/lib";
 
   patches = [
     ./find-headers.patch
diff --git a/nixpkgs/pkgs/development/libraries/SDL2/default.nix b/nixpkgs/pkgs/development/libraries/SDL2/default.nix
index f70a46e2f8ed..d02dac1f562f 100644
--- a/nixpkgs/pkgs/development/libraries/SDL2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL2/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, config, fetchurl, pkg-config
 , libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
 , openglSupport ? libGLSupported, libGL
-, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid, alsaLib
+, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid, alsa-lib
 , x11Support ? !stdenv.targetPlatform.isWindows && !stdenv.hostPlatform.isAndroid
 , libX11, xorgproto, libICE, libXi, libXScrnSaver, libXcursor
 , libXinerama, libXext, libXxf86vm, libXrandr
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
     ++ optionals x11Support [ libX11 xorgproto ];
 
   dlopenBuildInputs = [ ]
-    ++ optionals  alsaSupport [ alsaLib audiofile ]
+    ++ optionals  alsaSupport [ alsa-lib audiofile ]
     ++ optional  dbusSupport dbus
     ++ optional  pulseaudioSupport libpulseaudio
     ++ optional  udevSupport udev
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--disable-oss"
   ] ++ optional (!x11Support) "--without-x"
-    ++ optional alsaSupport "--with-alsa-prefix=${alsaLib.out}/lib"
+    ++ optional alsaSupport "--with-alsa-prefix=${alsa-lib.out}/lib"
     ++ optional stdenv.targetPlatform.isWindows "--disable-video-opengles"
     ++ optional stdenv.isDarwin "--disable-sdltest";
 
diff --git a/nixpkgs/pkgs/development/libraries/SDL2_image/default.nix b/nixpkgs/pkgs/development/libraries/SDL2_image/default.nix
index 96f85ddb0ea5..a0f770178cc9 100644
--- a/nixpkgs/pkgs/development/libraries/SDL2_image/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL2_image/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, SDL2, libpng, libjpeg, libtiff, libungif, libwebp, libXpm, zlib, Foundation }:
+{ lib, stdenv, fetchurl, SDL2, libpng, libjpeg, libtiff, giflib, libwebp, libXpm, zlib, Foundation }:
 
 stdenv.mkDerivation rec {
   pname = "SDL2_image";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1l0864kas9cwpp2d32yxl81g98lx40dhbdp03dz7sbv84vhgdmdx";
   };
 
-  buildInputs = [ SDL2 libpng libjpeg libtiff libungif libwebp libXpm zlib ]
+  buildInputs = [ SDL2 libpng libjpeg libtiff giflib libwebp libXpm zlib ]
     ++ lib.optional stdenv.isDarwin Foundation;
 
 
diff --git a/nixpkgs/pkgs/development/libraries/SDL_image/default.nix b/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
index 2e5841b3f482..fe97f0167439 100644
--- a/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, SDL, libpng, libjpeg, libtiff, libungif, libXpm }:
+{ lib, stdenv, fetchurl, fetchpatch, SDL, libpng, libjpeg, libtiff, giflib, libXpm }:
 
 stdenv.mkDerivation rec {
   pname = "SDL_image";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     "--disable-tif-shared"
   ] ++ lib.optional stdenv.isDarwin "--disable-sdltest";
 
-  buildInputs = [ SDL libpng libjpeg libtiff libungif libXpm ];
+  buildInputs = [ SDL libpng libjpeg libtiff giflib libXpm ];
 
   meta = with lib; {
     description = "SDL image library";
diff --git a/nixpkgs/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch b/nixpkgs/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch
new file mode 100644
index 000000000000..c18420711b90
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/abseil-cpp/cmake-full-dirs.patch
@@ -0,0 +1,15 @@
+diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
+index 1a80b5b..1fa57a7 100644
+--- a/CMake/AbseilHelpers.cmake
++++ b/CMake/AbseilHelpers.cmake
+@@ -171,8 +171,8 @@ function(absl_cc_library)
+       FILE(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/lib/pkgconfig/absl_${_NAME}.pc" CONTENT "\
+ prefix=${CMAKE_INSTALL_PREFIX}\n\
+ exec_prefix=\${prefix}\n\
+-libdir=\${prefix}/${CMAKE_INSTALL_LIBDIR}\n\
+-includedir=\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}\n\
++libdir=${CMAKE_INSTALL_FULL_LIBDIR}\n\
++includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR}\n\
+ \n\
+ Name: absl_${_NAME}\n\
+ Description: Abseil ${_NAME} library\n\
diff --git a/nixpkgs/pkgs/development/libraries/abseil-cpp/default.nix b/nixpkgs/pkgs/development/libraries/abseil-cpp/default.nix
index 0813a965524b..a1610ce82624 100644
--- a/nixpkgs/pkgs/development/libraries/abseil-cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/abseil-cpp/default.nix
@@ -1,16 +1,25 @@
-{ lib, stdenv, fetchFromGitHub, cmake, static ? stdenv.hostPlatform.isStatic }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, static ? stdenv.hostPlatform.isStatic }:
 
 stdenv.mkDerivation rec {
   pname = "abseil-cpp";
-  version = "20200923.3";
+  version = "20210324.1";
 
   src = fetchFromGitHub {
     owner = "abseil";
     repo = "abseil-cpp";
     rev = version;
-    sha256 = "1p4djhm1f011ficbjjxx3n8428p8481p20j4glpaawnpsi362hkl";
+    sha256 = "16w63brfwgiayiyhvawsnr14xyy5hpp68k8fj0z6yk0bjzw6jvjw";
   };
 
+  patches = [
+    # Use CMAKE_INSTALL_FULL_{LIBDIR,INCLUDEDIR}
+    # https://github.com/abseil/abseil-cpp/pull/963
+    (fetchpatch {
+      url = "https://github.com/abseil/abseil-cpp/commit/5bfa70c75e621c5d5ec095c8c4c0c050dcb2957e.patch";
+      sha256 = "0nhjxqfxpi2pkfinnqvd5m4npf9l1kg39mjx9l3087ajhadaywl5";
+    })
+  ];
+
   cmakeFlags = [
     "-DCMAKE_CXX_STANDARD=17"
     "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
diff --git a/nixpkgs/pkgs/development/libraries/ace/default.nix b/nixpkgs/pkgs/development/libraries/ace/default.nix
index 8210bdb4425e..b27cb8aae35a 100644
--- a/nixpkgs/pkgs/development/libraries/ace/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ace";
-  version = "7.0.1";
+  version = "7.0.2";
 
   src = fetchurl {
     url = "https://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2";
-    sha256 = "sha256-5nH5a0tBOcGfA07eeh9EjH0vgT3gTRWYHXoeO+QFQjQ=";
+    sha256 = "sha256-IftPSQOrZOqMLHHlUFEFa3WcvsqN5kdS5rSlGE8ETC4=";
   };
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/alembic/default.nix b/nixpkgs/pkgs/development/libraries/alembic/default.nix
index cbfec4dd46af..333dbb053f52 100644
--- a/nixpkgs/pkgs/development/libraries/alembic/default.nix
+++ b/nixpkgs/pkgs/development/libraries/alembic/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec
 {
   pname = "alembic";
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "alembic";
     repo = "alembic";
     rev = version;
-    sha256 = "sha256-c4SN3kNY8415+O/2AYuHNQFEmuTBtLaWj5fsj0yJ2vs=";
+    sha256 = "sha256-ObjpWreabeVzKYVgC62JaoGUf1BZCxP0STjox3akDvo=";
   };
 
   outputs = [ "bin" "dev" "out" "lib" ];
diff --git a/nixpkgs/pkgs/development/libraries/allegro/5.nix b/nixpkgs/pkgs/development/libraries/allegro/5.nix
index 314347411261..5cd6584f18fe 100644
--- a/nixpkgs/pkgs/development/libraries/allegro/5.nix
+++ b/nixpkgs/pkgs/development/libraries/allegro/5.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, texinfo, libXext, xorgproto, libX11
-, libXpm, libXt, libXcursor, alsaLib, cmake, zlib, libpng, libvorbis
+, libXpm, libXt, libXcursor, alsa-lib, cmake, zlib, libpng, libvorbis
 , libXxf86dga, libXxf86misc
 , libXxf86vm, openal, libGLU, libGL, libjpeg, flac
 , libXi, libXfixes, freetype, libopus, libtheora
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     texinfo libXext xorgproto libX11 libXpm libXt libXcursor
-    alsaLib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
+    alsa-lib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
     libXxf86vm openal libGLU libGL
     libjpeg flac
     libXi libXfixes
diff --git a/nixpkgs/pkgs/development/libraries/allegro/default.nix b/nixpkgs/pkgs/development/libraries/allegro/default.nix
index 9fefbe01ace0..6abf632806a4 100644
--- a/nixpkgs/pkgs/development/libraries/allegro/default.nix
+++ b/nixpkgs/pkgs/development/libraries/allegro/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, texinfo6_5, libXext, xorgproto, libX11
-, libXpm, libXt, libXcursor, alsaLib, cmake, zlib, libpng, libvorbis
+, libXpm, libXt, libXcursor, alsa-lib, cmake, zlib, libpng, libvorbis
 , libXxf86dga, libXxf86misc
 , libXxf86vm, openal, libGLU, libGL }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     texinfo6_5 libXext xorgproto libX11 libXpm libXt libXcursor
-    alsaLib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
+    alsa-lib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
     libXxf86vm openal libGLU libGL
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/amdvlk/default.nix b/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
index 1d0256f3b274..e3bc04a6d226 100644
--- a/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
@@ -21,13 +21,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "amdvlk";
-  version = "2021.Q1.6";
+  version = "2021.Q2.4";
 
   src = fetchRepoProject {
     name = "${pname}-src";
     manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
     rev = "refs/tags/v-${version}";
-    sha256 = "FSQ/bYlvdw0Ih3Yl329o8Gizw0YcZTLtiI222Ju4M8w=";
+    sha256 = "KPWkwbD55BoztF6DPmvau9i1AMhR+5ad5VrrD8I2YyI=";
   };
 
   buildInputs = [
@@ -70,12 +70,8 @@ in stdenv.mkDerivation rec {
 
   installPhase = ''
     install -Dm755 -t $out/lib icd/amdvlk${suffix}.so
-    install -Dm644 -t $out/share/vulkan/icd.d ../drivers/AMDVLK/json/Redhat/amd_icd${suffix}.json
-
-    substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \
-      "/usr/lib64" "$out/lib"
-    substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \
-      "/usr/lib" "$out/lib"
+    install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json
+    install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json
 
     patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so
   '';
diff --git a/nixpkgs/pkgs/development/libraries/amtk/default.nix b/nixpkgs/pkgs/development/libraries/amtk/default.nix
index f144f847bcf0..5743a18c0fd0 100644
--- a/nixpkgs/pkgs/development/libraries/amtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/amtk/default.nix
@@ -1,23 +1,27 @@
 { lib, stdenv
 , fetchurl
 , gtk3
+, meson
+, ninja
 , pkg-config
 , gobject-introspection
-, gnome3
+, gnome
 , dbus
-, xvfb_run
+, xvfb-run
 }:
 
 stdenv.mkDerivation rec {
   pname = "amtk";
-  version = "5.2.0";
+  version = "5.3.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0y3hmmflw4i0y0yb9a8rlihbv3cbwnvdcf1n5jycwzpq9jxla1c2";
+    sha256 = "12v3nj1bb7507ndprjggq0hpz8k719b4bwvl8sm43p3ibmn27anm";
   };
 
   nativeBuildInputs = [
+    meson
+    ninja
     pkg-config
     dbus
     gobject-introspection
@@ -30,12 +34,15 @@ stdenv.mkDerivation rec {
   doCheck = stdenv.isLinux;
   checkPhase = ''
     export NO_AT_BRIDGE=1
-    ${xvfb_run}/bin/xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
+    ${xvfb-run}/bin/xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
       --config-file=${dbus.daemon}/share/dbus-1/session.conf \
-      make check
+      meson test --print-errorlogs
   '';
 
-  passthru.updateScript = gnome3.updateScript { packageName = pname; };
+  passthru.updateScript = gnome.updateScript {
+    packageName = pname;
+    versionPolicy = "none";
+  };
 
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Projects/Amtk";
diff --git a/nixpkgs/pkgs/development/libraries/apache-activemq/default.nix b/nixpkgs/pkgs/development/libraries/apache-activemq/default.nix
index 136ffb79804a..79c1715c61d7 100644
--- a/nixpkgs/pkgs/development/libraries/apache-activemq/default.nix
+++ b/nixpkgs/pkgs/development/libraries/apache-activemq/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "apache-activemq";
-  version = "5.16.1";
+  version = "5.16.2";
 
   src = fetchurl {
-    sha256 = "sha256-Q9PzqJC/+uhcbxAC6c+VD8wf0X8/XlXcO4XTnQni4yM=";
+    sha256 = "sha256-IS/soe5Lx1C+/UWnNcv+8AwMmu5FHvURbpkTMMGrEFs=";
     url = "mirror://apache/activemq/${version}/${pname}-${version}-bin.tar.gz";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/applet-window-buttons/default.nix b/nixpkgs/pkgs/development/libraries/applet-window-buttons/default.nix
new file mode 100644
index 000000000000..d1d20ef0e489
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/applet-window-buttons/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, extra-cmake-modules
+, kcoreaddons
+, kdeclarative
+, kdecoration
+, plasma-framework
+}:
+
+mkDerivation rec {
+  pname = "applet-window-buttons";
+  version = "0.9.0";
+
+  src = fetchFromGitHub {
+    owner = "psifidotos";
+    repo = "applet-window-buttons";
+    rev = version;
+    sha256 = "sha256-ikgUE8GaiTpNjwrz7SbNQ3+b8KiigDgMREQ7J2b+EEs=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+  ];
+
+  buildInputs = [
+    kcoreaddons
+    kdeclarative
+    kdecoration
+    plasma-framework
+  ];
+
+  meta = with lib; {
+    description = "Plasma 5 applet in order to show window buttons in your panels";
+    homepage = "https://github.com/psifidotos/applet-window-buttons";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix b/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
index 1cd9fb2c8b76..64c0b031e47d 100644
--- a/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
@@ -89,6 +89,6 @@ stdenv.mkDerivation rec {
     homepage = "https://people.freedesktop.org/~hughsient/appstream-glib/";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ lethalman matthewbauer ];
+    maintainers = with maintainers; [ matthewbauer ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/appstream/default.nix b/nixpkgs/pkgs/development/libraries/appstream/default.nix
index 6fa4a6e0a4ab..96c6b3623983 100644
--- a/nixpkgs/pkgs/development/libraries/appstream/default.nix
+++ b/nixpkgs/pkgs/development/libraries/appstream/default.nix
@@ -1,20 +1,40 @@
-{ lib, stdenv, substituteAll, fetchFromGitHub, meson, ninja, pkg-config, gettext
-, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt
-, libstemmer, glib, xapian, libxml2, libyaml, gobject-introspection
-, pcre, itstool, gperf, vala, lmdb, libsoup
+{ lib
+, stdenv
+, substituteAll
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, gettext
+, xmlto
+, docbook-xsl-nons
+, docbook_xml_dtd_45
+, libxslt
+, libstemmer
+, glib
+, xapian
+, libxml2
+, libyaml
+, gobject-introspection
+, pcre
+, itstool
+, gperf
+, vala
+, lmdb
+, curl
 }:
 
 stdenv.mkDerivation rec {
   pname = "appstream";
-  version = "0.14.0";
+  version = "0.14.3";
 
   outputs = [ "out" "dev" ];
 
   src = fetchFromGitHub {
-    owner  = "ximion";
-    repo   = "appstream";
-    rev    = "v${version}";
-    sha256 = "sha256-iYqmQ1/58t3ZdJTxYLDc5jkTG1lMBtQWMFFsYsszH9Q=";
+    owner = "ximion";
+    repo = "appstream";
+    rev = "v${version}";
+    sha256 = "sha256-wCQR+4/F5lVqWHHcH/WS4irBGRivz3c1imasyLDIZIs=";
   };
 
   patches = [
@@ -26,12 +46,30 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    meson ninja pkg-config gettext
-    libxslt xmlto docbook_xsl docbook_xml_dtd_45
-    gobject-introspection itstool vala
+    meson
+    ninja
+    pkg-config
+    gettext
+    libxslt
+    xmlto
+    docbook-xsl-nons
+    docbook_xml_dtd_45
+    gobject-introspection
+    itstool
+    vala
   ];
 
-  buildInputs = [ libstemmer pcre glib xapian libxml2 libyaml gperf lmdb libsoup ];
+  buildInputs = [
+    libstemmer
+    pcre
+    glib
+    xapian
+    libxml2
+    libyaml
+    gperf
+    lmdb
+    curl
+  ];
 
   mesonFlags = [
     "-Dapidocs=false"
@@ -41,14 +79,14 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Software metadata handling library";
-    homepage    = "https://www.freedesktop.org/wiki/Distributions/AppStream/";
+    homepage = "https://www.freedesktop.org/wiki/Distributions/AppStream/";
     longDescription = ''
       AppStream is a cross-distro effort for building Software-Center applications
       and enhancing metadata provided by software components.  It provides
       specifications for meta-information which is shipped by upstream projects and
       can be consumed by other software.
     '';
-    license     = licenses.lgpl21Plus;
-    platforms   = platforms.unix;
+    license = licenses.lgpl21Plus;
+    platforms = platforms.unix;
  };
 }
diff --git a/nixpkgs/pkgs/development/libraries/apr/default.nix b/nixpkgs/pkgs/development/libraries/apr/default.nix
index c7a1073d137a..03b6c9777dfd 100644
--- a/nixpkgs/pkgs/development/libraries/apr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/apr/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   name = "apr-1.7.0";
@@ -36,6 +36,10 @@ stdenv.mkDerivation rec {
 
   CPPFLAGS=lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-DAPR_IOVEC_DEFINED";
 
+  nativeBuildInputs =
+    # Update libtool for macOS 11 support
+    lib.optional (stdenv.isDarwin && stdenv.isAarch64) [ autoreconfHook ];
+
   enableParallelBuilding = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/aravis/default.nix b/nixpkgs/pkgs/development/libraries/aravis/default.nix
index a915723e2ca7..67e621ad8597 100644
--- a/nixpkgs/pkgs/development/libraries/aravis/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aravis/default.nix
@@ -6,7 +6,7 @@
 , gst-plugins-good ? null
 , gst-plugins-bad ? null
 , libnotify ? null
-, gnome3 ? null
+, gnome ? null
 , gtk3 ? null
 , enableUsb ? true
 , enablePacketSocket ? true
@@ -26,7 +26,7 @@ in
   assert enableGstPlugin -> lib.all (pkg: pkg != null) [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ];
   assert enableViewer -> enableGstPlugin;
   assert enableViewer -> libnotify != null;
-  assert enableViewer -> gnome3 != null;
+  assert enableViewer -> gnome != null;
   assert enableViewer -> gtk3 != null;
   assert enableViewer -> gstreamerAtLeastVersion1;
 
@@ -56,7 +56,7 @@ in
       ++ lib.optional enableUsb libusb1
       ++ lib.optional enablePacketSocket audit
       ++ lib.optionals (enableViewer || enableGstPlugin) [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]
-      ++ lib.optionals (enableViewer) [ libnotify gtk3 gnome3.adwaita-icon-theme ];
+      ++ lib.optionals (enableViewer) [ libnotify gtk3 gnome.adwaita-icon-theme ];
 
     preAutoreconf = "./autogen.sh";
 
diff --git a/nixpkgs/pkgs/development/libraries/armadillo/default.nix b/nixpkgs/pkgs/development/libraries/armadillo/default.nix
index 22264fe01f30..9e81ce0c6c8f 100644
--- a/nixpkgs/pkgs/development/libraries/armadillo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/armadillo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "armadillo";
-  version = "10.3.0";
+  version = "10.5.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    sha256 = "sha256-qx7/+lr5AAChGhmjkwL9+8XEq/b6tXipvQ6clc+B5Mc=";
+    sha256 = "sha256-lq1uHLzyjz0cH/ly3ixA2t3b12gyVrrVAtPEY9L2TN8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/arrow-cpp/default.nix b/nixpkgs/pkgs/development/libraries/arrow-cpp/default.nix
index 8a9074ccb904..a13ebf281934 100644
--- a/nixpkgs/pkgs/development/libraries/arrow-cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/arrow-cpp/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, lib, fetchurl, fetchFromGitHub, fetchpatch, fixDarwinDylibNames
+{ stdenv, lib, fetchurl, fetchFromGitHub, fixDarwinDylibNames
 , autoconf, boost, brotli, cmake, flatbuffers, gflags, glog, gtest, lz4
-, perl, python3, rapidjson, re2, snappy, thrift, utf8proc, which, zlib, zstd
+, perl, python3, rapidjson, re2, snappy, thrift, utf8proc, which, xsimd
+, zlib, zstd
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -15,18 +16,18 @@ let
   parquet-testing = fetchFromGitHub {
     owner = "apache";
     repo = "parquet-testing";
-    rev = "e31fe1a02c9e9f271e4bfb8002d403c52f1ef8eb";
-    sha256 = "02f51dvx8w5mw0bx3hn70hkn55mn1m65kzdps1ifvga9hghpy0sh";
+    rev = "ddd898958803cb89b7156c6350584d1cda0fe8de";
+    sha256 = "0n16xqlpxn2ryp43w8pppxrbwmllx6sk4hv3ycgikfj57nd3ibc0";
   };
 
 in stdenv.mkDerivation rec {
   pname = "arrow-cpp";
-  version = "3.0.0";
+  version = "4.0.1";
 
   src = fetchurl {
     url =
       "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
-    sha256 = "0yp2b02wrc3s50zd56fmpz4nhhbihp0zw329v4zizaipwlxwrhkk";
+    sha256 = "0vl926i6jvsvj5vigdgqzp9v1i1h5zzj1abqr6qwc9drfsibzk3m";
   };
   sourceRoot = "apache-arrow-${version}/cpp";
 
@@ -90,6 +91,10 @@ in stdenv.mkDerivation rec {
     "-DARROW_VERBOSE_THIRDPARTY_BUILD=ON"
     "-DARROW_DEPENDENCY_SOURCE=SYSTEM"
     "-DARROW_DEPENDENCY_USE_SHARED=${if enableShared then "ON" else "OFF"}"
+    "-DARROW_COMPUTE=ON"
+    "-DARROW_CSV=ON"
+    "-DARROW_DATASET=ON"
+    "-DARROW_JSON=ON"
     "-DARROW_PLASMA=ON"
     # Disable Python for static mode because openblas is currently broken there.
     "-DARROW_PYTHON=${if enableShared then "ON" else "OFF"}"
@@ -111,6 +116,8 @@ in stdenv.mkDerivation rec {
     "-DCMAKE_INSTALL_RPATH=@loader_path/../lib" # needed for tools executables
   ] ++ lib.optional (!stdenv.isx86_64) "-DARROW_USE_SIMD=OFF";
 
+  ARROW_XSIMD_URL = xsimd.src;
+
   doInstallCheck = true;
   ARROW_TEST_DATA =
     if doInstallCheck then "${arrow-testing}/data" else null;
@@ -139,11 +146,11 @@ in stdenv.mkDerivation rec {
       --exclude-regex '^(${builtins.concatStringsSep "|" excludedTests})$'
   '';
 
-  meta = {
+  meta = with lib; {
     description = "A  cross-language development platform for in-memory data";
     homepage = "https://arrow.apache.org/";
-    license = lib.licenses.asl20;
-    platforms = lib.platforms.unix;
-    maintainers = with lib.maintainers; [ tobim veprbl ];
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ tobim veprbl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/at-spi2-atk/default.nix b/nixpkgs/pkgs/development/libraries/at-spi2-atk/default.nix
index 1e5a1d3fd64c..7989cfd85777 100644
--- a/nixpkgs/pkgs/development/libraries/at-spi2-atk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/at-spi2-atk/default.nix
@@ -11,7 +11,7 @@
 , glib
 , libxml2
 
-, gnome3 # To pass updateScript
+, gnome # To pass updateScript
 }:
 
 stdenv.mkDerivation rec {
@@ -29,8 +29,9 @@ stdenv.mkDerivation rec {
   doCheck = false; # fails with "No test data file provided"
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
index 7e1181cf3bdf..4e85c7a92a64 100644
--- a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
@@ -14,23 +14,25 @@
 , libX11
 , libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case
 , libXi
+, libXext
 
-, gnome3 # To pass updateScript
+, gnome # To pass updateScript
 }:
 
 stdenv.mkDerivation rec {
   pname = "at-spi2-core";
-  version = "2.38.0";
+  version = "2.40.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "hONsP+ZoYhM/X+Ipdyt2qiUm4Q3lAUo3ePL6Rs5VDaU=";
+    sha256 = "0miqn8531czy9ffpxnsxsnk12w3d6sqjda3qyix8kns2xsjf6rlz";
   };
 
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ];
-  buildInputs = [ libX11 libXtst libXi ];
+  # libXext is a transitive dependency of libXi
+  buildInputs = [ libX11 libXtst libXi libXext ];
   # In atspi-2.pc dbus-1 glib-2.0
   propagatedBuildInputs = [ dbus glib ];
 
@@ -43,8 +45,9 @@ stdenv.mkDerivation rec {
   mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/atk/default.nix b/nixpkgs/pkgs/development/libraries/atk/default.nix
index 53eb4459770d..7961211dc63e 100644
--- a/nixpkgs/pkgs/development/libraries/atk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/atk/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, meson, ninja, gettext, pkg-config, glib
-, fixDarwinDylibNames, gobject-introspection, gnome3
+, fixDarwinDylibNames, gobject-introspection, gnome
 }:
 
 let
@@ -34,8 +34,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/atkmm/default.nix b/nixpkgs/pkgs/development/libraries/atkmm/default.nix
index e9c63eb650f7..b357ed047259 100644
--- a/nixpkgs/pkgs/development/libraries/atkmm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/atkmm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, atk, glibmm, pkg-config, gnome3 }:
+{ lib, stdenv, fetchurl, atk, glibmm, pkg-config, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "atkmm";
@@ -18,8 +18,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/aubio/default.nix b/nixpkgs/pkgs/development/libraries/aubio/default.nix
index b1c6c6396c86..e1f2d326879c 100644
--- a/nixpkgs/pkgs/development/libraries/aubio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aubio/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, alsaLib, fftw, libjack2, libsamplerate
+{ lib, stdenv, fetchurl, alsa-lib, fftw, libjack2, libsamplerate
 , libsndfile, pkg-config, python3, wafHook
 }:
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config python3 wafHook ];
-  buildInputs = [ alsaLib fftw libjack2 libsamplerate libsndfile ];
+  buildInputs = [ alsa-lib fftw libjack2 libsamplerate libsndfile ];
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix b/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix
index 03048abcc321..4f2f78f20cf0 100644
--- a/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/rtaudio/default.nix
@@ -6,7 +6,7 @@
 , cmake
 , pkg-config
 , alsaSupport ? stdenv.hostPlatform.isLinux
-, alsaLib
+, alsa-lib
 , pulseaudioSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux
 , libpulseaudio
 , jackSupport ? true
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = lib.optional alsaSupport alsaLib
+  buildInputs = lib.optional alsaSupport alsa-lib
     ++ lib.optional pulseaudioSupport libpulseaudio
     ++ lib.optional jackSupport jack
     ++ lib.optional coreaudioSupport CoreAudio;
diff --git a/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix b/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix
index ccfafd36a8a3..6c75b9866e89 100644
--- a/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/rtmidi/default.nix
@@ -5,7 +5,7 @@
 , cmake
 , pkg-config
 , alsaSupport ? stdenv.hostPlatform.isLinux
-, alsaLib
+, alsa-lib
 , jackSupport ? true
 , jack
 , coremidiSupport ? stdenv.hostPlatform.isDarwin
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = lib.optional alsaSupport alsaLib
+  buildInputs = lib.optional alsaSupport alsa-lib
     ++ lib.optional jackSupport jack
     ++ lib.optionals coremidiSupport [ CoreMIDI CoreAudio CoreServices ];
 
diff --git a/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix b/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix
index 45f5fcfe3a44..afecd561b727 100644
--- a/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl , alsaLib, }:
+{ lib, stdenv, fetchurl , alsa-lib, }:
 
 stdenv.mkDerivation rec {
   pname = "zita-alsa-pcmi";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "12d7vdg74yh21w69qi0wg57iz4876j94qbiq09bvscih6xz9y78s";
   };
 
-  buildInputs = [ alsaLib ];
+  buildInputs = [ alsa-lib ];
 
   buildPhase = ''
     cd source
diff --git a/nixpkgs/pkgs/development/libraries/audiofile/default.nix b/nixpkgs/pkgs/development/libraries/audiofile/default.nix
index 88b1840955d3..54df6d7b2550 100644
--- a/nixpkgs/pkgs/development/libraries/audiofile/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audiofile/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, fetchpatch, alsaLib, AudioUnit, CoreServices }:
+{ stdenv, lib, fetchurl, fetchpatch, alsa-lib, AudioUnit, CoreServices }:
 
 let
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     lib.optionals stdenv.isLinux [
-      alsaLib
+      alsa-lib
     ] ++ lib.optionals stdenv.isDarwin [
       CoreServices AudioUnit
     ];
diff --git a/nixpkgs/pkgs/development/libraries/avahi/default.nix b/nixpkgs/pkgs/development/libraries/avahi/default.nix
index dd54ba79db72..a52d1be566e6 100644
--- a/nixpkgs/pkgs/development/libraries/avahi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/avahi/default.nix
@@ -1,5 +1,6 @@
 { fetchurl, fetchpatch, lib, stdenv, pkg-config, libdaemon, dbus, perlPackages
 , expat, gettext, intltool, glib, libiconv, writeShellScriptBin, libevent
+, nixosTests
 , gtk3Support ? false, gtk3 ? null
 , qt4 ? null
 , qt4Support ? false
@@ -77,6 +78,11 @@ stdenv.mkDerivation rec {
     ln -s avahi-compat-howl.pc $out/lib/pkgconfig/howl.pc
   */
 
+  passthru.tests = {
+    smoke-test = nixosTests.avahi;
+    smoke-test-resolved = nixosTests.avahi-with-resolved;
+  };
+
   meta = with lib; {
     description = "mDNS/DNS-SD implementation";
     homepage    = "http://avahi.org";
diff --git a/nixpkgs/pkgs/development/libraries/avro-c/default.nix b/nixpkgs/pkgs/development/libraries/avro-c/default.nix
index a5acd7c7898b..95e3053b5340 100644
--- a/nixpkgs/pkgs/development/libraries/avro-c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/avro-c/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, cmake, fetchurl, pkg-config, jansson, zlib }:
 
 let
-  version = "1.9.1";
+  version = "1.10.2";
 in stdenv.mkDerivation {
   pname = "avro-c";
   inherit version;
 
   src = fetchurl {
     url = "mirror://apache/avro/avro-${version}/c/avro-c-${version}.tar.gz";
-    sha256 = "0hj6w1w5mqkhnhkvjc0zz5njnnrbcjv5ml4f8gq80wff2cgbrxvx";
+    sha256 = "sha256-rj+zK+xKBon1Rn4JIBGS7cbo80ITTvBq1FLKhw9Wt+I=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/aws-c-cal/default.nix b/nixpkgs/pkgs/development/libraries/aws-c-cal/default.nix
index 057aad447d5e..3246c572962f 100644
--- a/nixpkgs/pkgs/development/libraries/aws-c-cal/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aws-c-cal/default.nix
@@ -13,7 +13,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ aws-c-common openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ aws-c-common openssl ];
+
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=ON"
diff --git a/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix b/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
index 988a27a58789..9913631e8548 100644
--- a/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-common";
-  version = "0.5.4";
+  version = "0.5.11";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NH66WAOqAaMm/IIu8L5R7CUFhX56yTLH7mPY1Q4jDC4=";
+    sha256 = "sha256-4CYbL+ICabKvpfjlALJ0wRbuwgy+JKJnKqYbQFsHQsI=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -22,9 +22,6 @@ stdenv.mkDerivation rec {
     "-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests
   ];
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin
-    "-Wno-nullability-extension -Wno-typedef-redefinition";
-
   doCheck = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/aws-c-io/default.nix b/nixpkgs/pkgs/development/libraries/aws-c-io/default.nix
index 337149e6f8e3..80112926ca61 100644
--- a/nixpkgs/pkgs/development/libraries/aws-c-io/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aws-c-io/default.nix
@@ -13,15 +13,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ aws-c-cal aws-c-common s2n-tls] ++ lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ aws-c-cal aws-c-common s2n-tls ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=ON"
     "-DCMAKE_MODULE_PATH=${aws-c-common}/lib/cmake"
   ];
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-error";
-
   meta = with lib; {
     description = "AWS SDK for C module for IO and TLS";
     homepage = "https://github.com/awslabs/aws-c-io";
diff --git a/nixpkgs/pkgs/development/libraries/aws-sdk-cpp/default.nix b/nixpkgs/pkgs/development/libraries/aws-sdk-cpp/default.nix
index 7fd7b2fbbdda..2aa5ea015fda 100644
--- a/nixpkgs/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -25,13 +25,22 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake curl ];
 
   buildInputs = [
-    curl openssl s2n-tls zlib
-    aws-c-cal aws-c-common aws-c-event-stream aws-c-io aws-checksums
+    curl openssl zlib
   ] ++ lib.optionals (stdenv.isDarwin &&
                         ((builtins.elem "text-to-speech" apis) ||
                          (builtins.elem "*" apis)))
          [ CoreAudio AudioToolbox ];
 
+  # propagation is needed for Security.framework to be available when linking
+  propagatedBuildInputs = [
+    aws-c-cal
+    aws-c-event-stream
+    aws-c-io
+    aws-c-common
+    aws-checksums
+    s2n-tls
+  ];
+
   cmakeFlags = [
     "-DBUILD_DEPS=OFF"
     "-DCMAKE_SKIP_BUILD_RPATH=OFF"
diff --git a/nixpkgs/pkgs/development/libraries/bamf/default.nix b/nixpkgs/pkgs/development/libraries/bamf/default.nix
index 95d54993e069..faee853808cc 100644
--- a/nixpkgs/pkgs/development/libraries/bamf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bamf/default.nix
@@ -3,7 +3,7 @@
 , autoconf
 , automake
 , libtool
-, gnome3
+, gnome
 , which
 , fetchgit
 , libgtop
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     automake
     dbus
     docbook_xsl
-    gnome3.gnome-common
+    gnome.gnome-common
     gobject-introspection
     gtk-doc
     libtool
diff --git a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
index 5a9bbd5a49db..c482b55c60b9 100644
--- a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bctoolbox";
-  version = "4.5.1";
+  version = "4.5.15";
 
   nativeBuildInputs = [ cmake bcunit ];
   buildInputs = [ mbedtls ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "1mm3v01jz2mp8vajsl45s23gw90zafbgg3br5n5yz03aan08f395";
+    sha256 = "sha256-yN9dfeJBuUxXfG7zDoawn2nKGsrhetBcXpGDmcekU20=";
   };
 
   # Do not build static libraries
diff --git a/nixpkgs/pkgs/development/libraries/beignet/default.nix b/nixpkgs/pkgs/development/libraries/beignet/default.nix
index 8e8e455e59a6..3d88c93784a8 100644
--- a/nixpkgs/pkgs/development/libraries/beignet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/beignet/default.nix
@@ -2,8 +2,8 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, clang-unwrapped
-, llvm
+, libclang
+, libllvm
 , libdrm
 , libX11
 , libpthreadstubs
@@ -35,11 +35,11 @@ stdenv.mkDerivation rec {
     patchShebangs src/git_sha1.sh
   '';
 
-  cmakeFlags = [ "-DCLANG_LIBRARY_DIR=${clang-unwrapped}/lib" ];
+  cmakeFlags = [ "-DCLANG_LIBRARY_DIR=${libclang.lib}/lib" ];
 
   buildInputs = [
-    llvm
-    clang-unwrapped
+    libllvm
+    libclang
     libX11
     libXext
     libpthreadstubs
diff --git a/nixpkgs/pkgs/development/libraries/belcard/default.nix b/nixpkgs/pkgs/development/libraries/belcard/default.nix
index 36af06dfc55a..dbc85992ba4e 100644
--- a/nixpkgs/pkgs/development/libraries/belcard/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belcard/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belcard";
-  version = "4.5.1";
+  version = "4.5.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "14hkgwr2a9zw44v1s8xscqxa2mwin06jsxpwb3hflh9mp16ymfzv";
+    sha256 = "sha256-+7vqTbg1QergWPx2LQ2wkVehOma6Ix02IfwnJTJ/E5I=";
   };
 
   buildInputs = [ bctoolbox belr ];
diff --git a/nixpkgs/pkgs/development/libraries/belle-sip/default.nix b/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
index 0f8a61bed244..4032734416e4 100644
--- a/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belle-sip";
-  version = "4.5.1";
+  version = "4.5.14";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "0d1wf0jv9lb0s6r49i9gz5nrx8jzpkx558hywll7idma9d0mr61p";
+    sha256 = "sha256-L6dhgBJrzYgBuMNd2eMZJCqB/GIZjKipfn1SffxBFWw=";
   };
 
   nativeBuildInputs = [ antlr3_4 cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/belr/default.nix b/nixpkgs/pkgs/development/libraries/belr/default.nix
index 252ac3e80edc..90e27a6a9dc1 100644
--- a/nixpkgs/pkgs/development/libraries/belr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belr/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belr";
-  version = "4.5.1";
+  version = "4.5.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "0m0s7g8d25nbnafbl76w9v3x7q4jhsypxmz1gg80pj7j34xc2dsd";
+    sha256 = "sha256-TTfBOhnyyAvQe+HXfr2GkuDTx07cHLqcsssW0dA7GlQ=";
   };
 
   buildInputs = [ bctoolbox ];
diff --git a/nixpkgs/pkgs/development/libraries/boringssl/default.nix b/nixpkgs/pkgs/development/libraries/boringssl/default.nix
index f8c27f96dcc1..d51cf159598d 100644
--- a/nixpkgs/pkgs/development/libraries/boringssl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/boringssl/default.nix
@@ -52,7 +52,6 @@ buildGoModule {
   meta = with lib; {
     description = "Free TLS/SSL implementation";
     homepage    = "https://boringssl.googlesource.com";
-    platforms   = platforms.all;
     maintainers = [ maintainers.thoughtpolice ];
     license = with licenses; [ openssl isc mit bsd3 ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/botan/2.0.nix b/nixpkgs/pkgs/development/libraries/botan/2.0.nix
index cb40e535b0c3..a486ba498205 100644
--- a/nixpkgs/pkgs/development/libraries/botan/2.0.nix
+++ b/nixpkgs/pkgs/development/libraries/botan/2.0.nix
@@ -1,9 +1,9 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix (args // {
-  baseVersion = "2.17";
-  revision = "3";
-  sha256 = "121vn1aryk36cpks70kk4c4cfic5g0qs82bf92xap9258ijkn4kr";
+  baseVersion = "2.18";
+  revision = "0";
+  sha256 = "09z3fy31q1pvnvpy4fswrsl2aq8ksl94lbh5rl7b6nqc3qp8ar6c";
   postPatch = ''
     sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt
   '';
diff --git a/nixpkgs/pkgs/development/libraries/botan/default.nix b/nixpkgs/pkgs/development/libraries/botan/default.nix
index 8bcc6aaa8efb..c494fa25f771 100644
--- a/nixpkgs/pkgs/development/libraries/botan/default.nix
+++ b/nixpkgs/pkgs/development/libraries/botan/default.nix
@@ -9,4 +9,8 @@ callPackage ./generic.nix (args // {
   postPatch = ''
     sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt
   '';
+  knownVulnerabilities = [
+    # https://botan.randombit.net/security.html#id1
+    "2020-03-24: Side channel during CBC padding"
+  ];
 })
diff --git a/nixpkgs/pkgs/development/libraries/botan/generic.nix b/nixpkgs/pkgs/development/libraries/botan/generic.nix
index 33f9daf7b50f..2fc5abc2928a 100644
--- a/nixpkgs/pkgs/development/libraries/botan/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/botan/generic.nix
@@ -4,6 +4,7 @@
 , sourceExtension ? "tar.xz"
 , extraConfigureFlags ? ""
 , postPatch ? null
+, knownVulnerabilities ? [ ]
 , CoreServices
 , Security
 , ...
@@ -49,6 +50,7 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.unix;
     license = licenses.bsd2;
+    inherit knownVulnerabilities;
   };
   passthru.updateInfo.downloadPage = "http://files.randombit.net/botan/";
 }
diff --git a/nixpkgs/pkgs/development/libraries/box2d/default.nix b/nixpkgs/pkgs/development/libraries/box2d/default.nix
index 47a1c0917f07..1b6ede9b3101 100644
--- a/nixpkgs/pkgs/development/libraries/box2d/default.nix
+++ b/nixpkgs/pkgs/development/libraries/box2d/default.nix
@@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
   version = "2.3.1";
 
   src = fetchurl {
-    url = "https://github.com/erincatto/Box2D/archive/v${version}.tar.gz";
-    sha256 = "0llpcifl8zbjbpxdwz87drd01m3lwnv82xb4av6kca1xn4w2gmkm";
+    url = "https://github.com/erincatto/box2d/archive/v${version}.tar.gz";
+    sha256 = "0p03ngsmyz0r5kbpiaq10ns4fxwkjvvawi8k6pfall46b93wizsq";
   };
 
-  sourceRoot = "Box2D-${version}/Box2D";
+  sourceRoot = "box2d-${version}/Box2D";
 
   nativeBuildInputs = [ cmake unzip pkg-config ];
   buildInputs = [ libGLU libGL freeglut libX11 xorgproto libXi ];
diff --git a/nixpkgs/pkgs/development/libraries/bzrtp/default.nix b/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
index b698cf7b404d..5236c92527e2 100644
--- a/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bzrtp";
-  version = "4.5.1";
+  version = "4.5.10";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "1a500ncgznwha0j3c27ak3p4jh5jm6fnnb531k7c0a4i91745agj";
+    sha256 = "sha256-8qlCTkiRKMDODKMsa52pskBJ7pjqCDYkUJDb/5gFoKg=";
   };
 
   buildInputs = [ bctoolbox sqlite ];
diff --git a/nixpkgs/pkgs/development/libraries/caf/default.nix b/nixpkgs/pkgs/development/libraries/caf/default.nix
index a5baef8af1ed..60281e7e0c9f 100644
--- a/nixpkgs/pkgs/development/libraries/caf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/caf/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "actor-framework";
-  version = "0.18.1";
+  version = "0.18.3";
 
   src = fetchFromGitHub {
     owner = "actor-framework";
     repo = "actor-framework";
     rev = version;
-    sha256 = "sha256-tRR+YFI/Ikf4rov4dzt59nDqaooALNspKEQehHP6sKU=";
+    sha256 = "sha256-9oQVsfh2mUVr64PjNXYD1wRBNJ8dCLO9eI5WnZ1SSww=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/cairomm/1.16.nix b/nixpkgs/pkgs/development/libraries/cairomm/1.16.nix
new file mode 100644
index 000000000000..df9b8572ad0f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cairomm/1.16.nix
@@ -0,0 +1,74 @@
+{ stdenv
+, lib
+, fetchurl
+, boost
+, meson
+, ninja
+, pkg-config
+, cairo
+, fontconfig
+, libsigcxx30
+, ApplicationServices
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cairomm";
+  version = "1.16.1";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "https://www.cairographics.org/releases/${pname}-${version}.tar.xz";
+    sha256 = "sha256-b2Bg2OmN1Lis/uIpX92904z0h8B8JqrY0ag7ub/0osY=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    boost # for tests
+    fontconfig
+  ] ++ lib.optionals stdenv.isDarwin [
+    ApplicationServices
+  ];
+
+  propagatedBuildInputs = [
+    cairo
+    libsigcxx30
+  ];
+
+  mesonFlags = [
+    "-Dbuild-tests=true"
+    "-Dboost-shared=true"
+  ];
+
+  # Meson is no longer able to pick up Boost automatically.
+  # https://github.com/NixOS/nixpkgs/issues/86131
+  BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
+  BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
+
+  # Tests fail on Darwin, possibly because of sandboxing.
+  doCheck = !stdenv.isDarwin;
+
+  meta = with lib; {
+    description = "A 2D graphics library with support for multiple output devices";
+    longDescription = ''
+      Cairo is a 2D graphics library with support for multiple output
+      devices.  Currently supported output targets include the X
+      Window System, Quartz, Win32, image buffers, PostScript, PDF,
+      and SVG file output.  Experimental backends include OpenGL
+      (through glitz), XCB, BeOS, OS/2, and DirectFB.
+
+      Cairo is designed to produce consistent output on all output
+      media while taking advantage of display hardware acceleration
+      when available (e.g., through the X Render Extension).
+    '';
+    homepage = "https://www.cairographics.org/";
+    license = with licenses; [ lgpl2Plus mpl10 ];
+    maintainers = teams.gnome.members;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/catch/default.nix b/nixpkgs/pkgs/development/libraries/catch/default.nix
index 2aa5c788dc36..c89fbd477c96 100644
--- a/nixpkgs/pkgs/development/libraries/catch/default.nix
+++ b/nixpkgs/pkgs/development/libraries/catch/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
 
 stdenv.mkDerivation rec {
   pname = "catch";
@@ -14,6 +14,14 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
   cmakeFlags = [ "-DUSE_CPP14=ON" ];
 
+  patches = [
+    # https://github.com/catchorg/Catch2/pull/2151
+    (fetchpatch {
+      url = "https://github.com/catchorg/Catch2/commit/bb6d08323f23a39eb65dd86671e68f4f5d3f2d6c.patch";
+      sha256 = "1vhbzx84nrhhf9zlbl6h5zmg3r5w5v833ihlswsysb9wp2i4isc5";
+    })
+  ];
+
   doCheck = true;
   checkTarget = "test";
 
diff --git a/nixpkgs/pkgs/development/libraries/cereal/default.nix b/nixpkgs/pkgs/development/libraries/cereal/default.nix
index d2321175f8bd..958a92dec34e 100644
--- a/nixpkgs/pkgs/development/libraries/cereal/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cereal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
 stdenv.mkDerivation rec {
   pname = "cereal";
   version = "1.3.0";
@@ -12,7 +12,19 @@ stdenv.mkDerivation rec {
     sha256 = "0hc8wh9dwpc1w1zf5lfss4vg5hmgpblqxbrpp1rggicpx9ar831p";
   };
 
-  cmakeFlagsArray = [ "-DJUST_INSTALL_CEREAL=yes" ];
+  patches = [
+    # https://nvd.nist.gov/vuln/detail/CVE-2020-11105
+    # serialized std::shared_ptr variables cannot always be expected to
+    # serialize back into their original values. This can have any number of
+    # consequences, depending on the context within which this manifests.
+    (fetchpatch {
+      name = "CVE-2020-11105.patch";
+      url = "https://github.com/USCiLab/cereal/commit/f27c12d491955c94583512603bf32c4568f20929.patch";
+      sha256 = "CIkbJ7bAN0MXBhTXQdoQKXUmY60/wQvsdn99FaWt31w=";
+    })
+  ];
+
+  cmakeFlags = [ "-DJUST_INSTALL_CEREAL=yes" ];
 
   meta = with lib; {
     description = "A header-only C++11 serialization library";
diff --git a/nixpkgs/pkgs/development/libraries/cgreen/default.nix b/nixpkgs/pkgs/development/libraries/cgreen/default.nix
new file mode 100644
index 000000000000..5a1dd2d26400
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cgreen/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, lib, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "cgreen";
+  version = "1.4.0";
+
+  src = fetchFromGitHub {
+    owner = "cgreen-devs";
+    repo = "cgreen";
+    rev = version;
+    sha256 = "JEpvkM0EZiiQUZRngICNxHbNqS/qjqkEdMPckGbdWac=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    homepage = "https://github.com/cgreen-devs/cgreen";
+    description = "The Modern Unit Test and Mocking Framework for C and C++";
+    license = licenses.isc;
+    maintainers = [ maintainers.nichtsfrei ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/chmlib/default.nix b/nixpkgs/pkgs/development/libraries/chmlib/default.nix
index 8971acc7eddf..6e21984eb1da 100644
--- a/nixpkgs/pkgs/development/libraries/chmlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/chmlib/default.nix
@@ -12,10 +12,10 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  meta = {
+  meta = with lib; {
     homepage = "http://www.jedrea.com/chmlib";
-    license = lib.licenses.lgpl2;
+    license = licenses.lgpl2;
     description = "A library for dealing with Microsoft ITSS/CHM format files";
-    platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux"];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/cjose/default.nix b/nixpkgs/pkgs/development/libraries/cjose/default.nix
new file mode 100644
index 000000000000..57b5c6c1b8bf
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cjose/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkg-config
+, doxygen
+, check
+, jansson
+, openssl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cjose";
+  version = "0.6.1";
+
+  src = fetchFromGitHub {
+    owner = "cisco";
+    repo = "cjose";
+    rev = version;
+    sha256 = "1msyjwmylb5c7jc16ryx3xb9cdwx682ihsm0ni766y6dfwx8bkhp";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkg-config doxygen ];
+  buildInputs = [ jansson openssl ];
+  checkInputs = [ check ];
+
+  configureFlags = [
+    "--with-jansson=${jansson}"
+    "--with-openssl=${openssl.dev}"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/cisco/cjose";
+    changelog = "https://github.com/cisco/cjose/blob/${version}/CHANGELOG.md";
+    description = "C library for Javascript Object Signing and Encryption";
+    license = licenses.mit;
+    maintainers = with maintainers; [ midchildan ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/clanlib/default.nix b/nixpkgs/pkgs/development/libraries/clanlib/default.nix
new file mode 100644
index 000000000000..0a0f976e0dc4
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/clanlib/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, libGL
+, libpng
+, pkg-config
+, xorg
+, file
+, freetype
+, fontconfig
+, xlibsWrapper
+, alsa-lib
+, libXrender
+}:
+
+stdenv.mkDerivation rec {
+  pname = "clanlib";
+  version = "4.1.0";
+
+  src = fetchFromGitHub {
+    repo = "ClanLib";
+    owner = "sphair";
+    rev = "v${version}";
+    sha256 = "sha256-SVsLWcTP+PCIGDWLkadMpJPj4coLK9dJrW4sc2+HotE=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    autoreconfHook
+  ];
+  buildInputs = [
+    libGL
+    libpng
+    xorg.xorgproto
+    freetype
+    fontconfig
+    xlibsWrapper
+    alsa-lib
+    libXrender
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/sphair/ClanLib";
+    description = "A cross platform toolkit library with a primary focus on game creation";
+    license = licenses.mit;
+    maintainers = with maintainers; [ nixinator ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/clutter-gst/default.nix b/nixpkgs/pkgs/development/libraries/clutter-gst/default.nix
index 166d4e12c252..e4752c7748be 100644
--- a/nixpkgs/pkgs/development/libraries/clutter-gst/default.nix
+++ b/nixpkgs/pkgs/development/libraries/clutter-gst/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, pkg-config, clutter, gtk3, glib, cogl, gnome3, gdk-pixbuf }:
+{ fetchurl, lib, stdenv, pkg-config, clutter, gtk3, glib, cogl, gnome, gdk-pixbuf }:
 
 stdenv.mkDerivation rec {
   pname = "clutter-gst";
@@ -17,8 +17,9 @@ stdenv.mkDerivation rec {
   postBuild = "rm -rf $out/share/gtk-doc";
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -29,7 +30,7 @@ stdenv.mkDerivation rec {
 
     license = lib.licenses.lgpl2Plus;
 
-    maintainers = with lib.maintainers; [ lethalman ];
+    maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.gnu ++ lib.platforms.linux;  # arbitrary choice
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/clutter-gtk/default.nix b/nixpkgs/pkgs/development/libraries/clutter-gtk/default.nix
index 0dfb8c7b9df0..7573da66c0d8 100644
--- a/nixpkgs/pkgs/development/libraries/clutter-gtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/clutter-gtk/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, lib, stdenv, pkg-config, meson, ninja
-, gobject-introspection, clutter, gtk3, gnome3 }:
+, gobject-introspection, clutter, gtk3, gnome }:
 
 let
   pname = "clutter-gtk";
@@ -22,8 +22,9 @@ stdenv.mkDerivation rec {
   postBuild = "rm -rf $out/share/gtk-doc";
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "Clutter-GTK";
     homepage = "http://www.clutter-project.org/";
     license = lib.licenses.lgpl2Plus;
-    maintainers = with lib.maintainers; [ lethalman ];
+    maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.gnu ++ lib.platforms.linux;  # arbitrary choice
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/clutter/default.nix b/nixpkgs/pkgs/development/libraries/clutter/default.nix
index 002db004dc19..aacb8581c8fc 100644
--- a/nixpkgs/pkgs/development/libraries/clutter/default.nix
+++ b/nixpkgs/pkgs/development/libraries/clutter/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, pkg-config, libGLU, libGL, libX11, libXext, libXfixes
 , libXdamage, libXcomposite, libXi, libxcb, cogl, pango, atk, json-glib
-, gobject-introspection, gtk3, gnome3, libinput, libgudev, libxkbcommon
+, gobject-introspection, gtk3, gnome, libinput, libgudev, libxkbcommon
 }:
 
 let
@@ -29,8 +29,9 @@ stdenv.mkDerivation rec {
   #doCheck = true; # no tests possible without a display
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -55,7 +56,7 @@ stdenv.mkDerivation rec {
     license = lib.licenses.lgpl2Plus;
     homepage = "http://www.clutter-project.org/";
 
-    maintainers = with lib.maintainers; [ lethalman ];
+    maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.mesaPlatforms;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/cogl/default.nix b/nixpkgs/pkgs/development/libraries/cogl/default.nix
index 8fd152072879..75ec2a2acc7f 100644
--- a/nixpkgs/pkgs/development/libraries/cogl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cogl/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, libGL, glib, gdk-pixbuf, xorg, libintl
-, pangoSupport ? true, pango, cairo, gobject-introspection, wayland, gnome3
+, pangoSupport ? true, pango, cairo, gobject-introspection, wayland, gnome
 , mesa, automake, autoconf
 , gstreamerSupport ? true, gst_all_1 }:
 
@@ -59,8 +59,9 @@ in stdenv.mkDerivation rec {
   #doCheck = true; # all tests fail (no idea why)
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/coordgenlibs/default.nix b/nixpkgs/pkgs/development/libraries/coordgenlibs/default.nix
index 3121741ca024..9dcfb79f3e3b 100644
--- a/nixpkgs/pkgs/development/libraries/coordgenlibs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/coordgenlibs/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "coordgenlibs";
-  version = "2.0.2";
+  version = "2.0.3";
 
   src = fetchFromGitHub {
     owner = "schrodinger";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-BcDqrOotqRPMnzvfjzbeCf8gT3yQzKihywKrpah1D7w=";
+    sha256 = "sha256-uperQnJ1Q+s15pAlg/f4XR5VJI484ygZ0F6pMvcVDv8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
index 1d666d4d9843..de7bf560d3ea 100644
--- a/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
@@ -1,32 +1,35 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , cppunit
 }:
 
 stdenv.mkDerivation rec {
   pname = "cpp-utilities";
-  version = "5.10.2";
+  version = "5.10.4";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hPcmO2nzXCuhU2GjE0B1Bz9OkJ4mY2txFr+cWGaw1bo=";
+    sha256 = "sha256-pZh/NbTzQR2kjMeauv1HcRn0hDBaCNRbaZ3+1qs5rxU=";
   };
 
   nativeBuildInputs = [ cmake ];
   checkInputs = [ cppunit ];
   # Otherwise, tests fail since the resulting shared object libc++utilities.so is only available in PWD of the make files
-  checkFlagsArray = [ "LD_LIBRARY_PATH=$(PWD)" ];
+  preCheck = ''
+    checkFlagsArray+=(
+      "LD_LIBRARY_PATH=$PWD"
+    )
+  '';
   doCheck = true;
 
   meta = with lib; {
     homepage = "https://github.com/Martchus/cpp-utilities";
     description = "Common C++ classes and routines used by @Martchus' applications featuring argument parser, IO and conversion utilities";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ doronbehar ];
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/development/libraries/ctpl/default.nix b/nixpkgs/pkgs/development/libraries/ctpl/default.nix
index 69380c2eeeb4..634c2cf44cf4 100644
--- a/nixpkgs/pkgs/development/libraries/ctpl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ctpl/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     homepage = "http://ctpl.tuxfamily.org/";
     description = "Template engine library written in C";
     platforms = platforms.linux;
-    maintainers = [ maintainers.lethalman ];
+    maintainers = [ ];
     license = licenses.gpl3Plus;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/cxxopts/default.nix b/nixpkgs/pkgs/development/libraries/cxxopts/default.nix
index 1df570d7d290..855a9eef8ea0 100644
--- a/nixpkgs/pkgs/development/libraries/cxxopts/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cxxopts/default.nix
@@ -12,11 +12,17 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = lib.optional enableUnicodeHelp [ icu.dev ];
-  cmakeFlags = lib.optional enableUnicodeHelp [ "-DCXXOPTS_USE_UNICODE_HELP=TRUE" ];
+  cmakeFlags = [ "-DCXXOPTS_BUILD_EXAMPLES=OFF" ]
+    ++ lib.optional enableUnicodeHelp "-DCXXOPTS_USE_UNICODE_HELP=TRUE"
+    # Due to -Wsuggest-override, remove when cxxopts is updated
+    ++ lib.optional stdenv.isDarwin "-DCXXOPTS_ENABLE_WARNINGS=OFF";
   nativeBuildInputs = [ cmake ] ++ lib.optional enableUnicodeHelp [ pkg-config ];
 
   doCheck = true;
 
+  # Conflict on case-insensitive filesystems.
+  dontUseCmakeBuildDir = true;
+
   meta = with lib; {
     homepage = "https://github.com/jarro2783/cxxopts";
     description = "Lightweight C++ GNU-style option parser library";
diff --git a/nixpkgs/pkgs/development/libraries/dbus/default.nix b/nixpkgs/pkgs/development/libraries/dbus/default.nix
index fd7df4d5ba37..1d1df0d24fc7 100644
--- a/nixpkgs/pkgs/development/libraries/dbus/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dbus/default.nix
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
       libICE
       libSM
     ] ++ lib.optional enableSystemd systemd
-    ++ lib.optionals (!stdenv.isDarwin) [ audit libapparmor ];
+    ++ lib.optionals stdenv.isLinux [ audit libapparmor ];
   # ToDo: optional selinux?
 
   configureFlags = [
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
     "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
     "--with-systemduserunitdir=${placeholder "out"}/etc/systemd/user"
   ] ++ lib.optional (!x11Support) "--without-x"
-  ++ lib.optionals (!stdenv.isDarwin) [ "--enable-apparmor" "--enable-libaudit" ];
+  ++ lib.optionals stdenv.isLinux [ "--enable-apparmor" "--enable-libaudit" ];
 
   # Enable X11 autolaunch support in libdbus. This doesn't actually depend on X11
   # (it just execs dbus-launch in dbus.tools), contrary to what the configure script demands.
@@ -116,7 +116,7 @@ stdenv.mkDerivation rec {
     description = "Simple interprocess messaging system";
     homepage = "http://www.freedesktop.org/wiki/Software/dbus/";
     license = licenses.gpl2Plus; # most is also under AFL-2.1
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = teams.freedesktop.members ++ (with maintainers; [ ]);
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/dconf/default.nix b/nixpkgs/pkgs/development/libraries/dconf/default.nix
index 6834a605f1a5..550940f5a1e7 100644
--- a/nixpkgs/pkgs/development/libraries/dconf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dconf/default.nix
@@ -9,7 +9,7 @@
 , glib
 , bash-completion
 , dbus
-, gnome3
+, gnome
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_42
@@ -19,14 +19,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "dconf";
-  version = "0.38.0";
+  version = "0.40.0";
 
   outputs = [ "out" "lib" "dev" ]
     ++ lib.optional (!isCross) "devdoc";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0n2gqkp6d61h7gnnp2xnxp6w5wcl7w9ay58krrf729qd6d0hzxj5";
+    sha256 = "0cs5nayg080y8pb9b7qccm1ni8wkicdmqp1jsgc22110r6j24zyg";
   };
 
   nativeBuildInputs = [
@@ -61,8 +61,9 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/dee/default.nix b/nixpkgs/pkgs/development/libraries/dee/default.nix
index 3d46028ec438..a023d164d8c3 100644
--- a/nixpkgs/pkgs/development/libraries/dee/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dee/default.nix
@@ -62,6 +62,6 @@ stdenv.mkDerivation rec {
     homepage = "https://launchpad.net/dee";
     license = licenses.lgpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ abbradar worldofpeace ];
+    maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/doctest/default.nix b/nixpkgs/pkgs/development/libraries/doctest/default.nix
index 233e01e03803..c8e31d43e953 100644
--- a/nixpkgs/pkgs/development/libraries/doctest/default.nix
+++ b/nixpkgs/pkgs/development/libraries/doctest/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "doctest";
-  version = "2.4.4";
+  version = "2.4.6";
 
   src = fetchFromGitHub {
     owner = "onqtam";
     repo = "doctest";
     rev = version;
-    hash = "sha256-NqXC5948prTCi4gsaR8bJPBTrmH+rJbHsGvwkJlpjXY=";
+    sha256 = "14m3q6d96zg6d99x1152jkly50gdjrn5ylrbhax53pfgfzzc5yqx";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/dqlite/default.nix b/nixpkgs/pkgs/development/libraries/dqlite/default.nix
index 8f67259989b8..83e63abb3c6b 100644
--- a/nixpkgs/pkgs/development/libraries/dqlite/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dqlite/default.nix
@@ -1,25 +1,26 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, file, libco-canonical
-, libuv, raft-canonical, sqlite-replication }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, file, libuv
+, raft-canonical, sqlite-replication }:
 
 stdenv.mkDerivation rec {
   pname = "dqlite";
-  version = "1.5.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "canonical";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0h7ypigj1b6xbspzc35y89jkp84v8rqiv9qgkyqlqylr7mcw952a";
+    sha256 = "sha256-lCMTmKnDv/fb5fP/Ch8AwpuNfmR+gecxeIweO6hHj5U=";
   };
 
   nativeBuildInputs = [ autoreconfHook file pkg-config ];
   buildInputs = [
-    libco-canonical.dev
     libuv
     raft-canonical.dev
     sqlite-replication
   ];
 
+  enableParallelBuilding = true;
+
   # tests fail
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/libraries/drumstick/default.nix b/nixpkgs/pkgs/development/libraries/drumstick/default.nix
index 21572e52e235..ba3768227f32 100644
--- a/nixpkgs/pkgs/development/libraries/drumstick/default.nix
+++ b/nixpkgs/pkgs/development/libraries/drumstick/default.nix
@@ -1,19 +1,18 @@
 { lib, stdenv, fetchurl
-, cmake, docbook_xml_dtd_45, docbook_xsl, doxygen, pkg-config, wrapQtAppsHook
-, alsaLib, fluidsynth, qtbase, qtsvg, libpulseaudio
+, cmake, docbook_xml_dtd_45, docbook_xsl, doxygen, graphviz-nox, pkg-config, qttools, wrapQtAppsHook
+, alsa-lib, fluidsynth, qtbase, qtsvg, libpulseaudio
 }:
 
 stdenv.mkDerivation rec {
   pname = "drumstick";
-  version = "1.1.3";
+  version = "2.2.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumstick/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "1n9wvg79yvkygrkc8xd8pgrd3d7hqmr7gh24dccf0px23lla9b3m";
+    sha256 = "sha256-UxXUEkO5qXPIjw99BdkAspikR9Nlu32clf28cTyf+W4=";
   };
 
   patches = [
-    ./drumstick-fluidsynth.patch
     ./drumstick-plugins.patch
   ];
 
@@ -24,15 +23,19 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" "man" ];
 
   nativeBuildInputs = [
-    cmake docbook_xml_dtd_45 docbook_xml_dtd_45 docbook_xsl doxygen pkg-config wrapQtAppsHook
+    cmake docbook_xml_dtd_45 docbook_xml_dtd_45 docbook_xsl doxygen graphviz-nox pkg-config qttools wrapQtAppsHook
   ];
 
   buildInputs = [
-    alsaLib fluidsynth libpulseaudio qtbase qtsvg
+    alsa-lib fluidsynth libpulseaudio qtbase qtsvg
+  ];
+
+  cmakeFlags = [
+    "-DUSE_DBUS=ON"
   ];
 
   meta = with lib; {
-    maintainers = with maintainers; [ solson ];
+    maintainers = [];
     description = "MIDI libraries for Qt5/C++";
     homepage = "http://drumstick.sourceforge.net/";
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/development/libraries/drumstick/drumstick-fluidsynth.patch b/nixpkgs/pkgs/development/libraries/drumstick/drumstick-fluidsynth.patch
deleted file mode 100644
index b8cdf63fb649..000000000000
--- a/nixpkgs/pkgs/development/libraries/drumstick/drumstick-fluidsynth.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-It works with fluidsynth 2.
-
-Backported from r400: https://sourceforge.net/p/drumstick/code/400/
-
---- a/library/rt-backends/CMakeLists.txt
-+++ b/library/rt-backends/CMakeLists.txt
-@@ -54,1 +54,1 @@ if (PKG_CONFIG_FOUND)
--    pkg_check_modules(FLUIDSYNTH fluidsynth>=1.1.1 fluidsynth<=1.1.11)
-+    pkg_check_modules(FLUIDSYNTH fluidsynth>=1.1.1)
diff --git a/nixpkgs/pkgs/development/libraries/drumstick/drumstick-plugins.patch b/nixpkgs/pkgs/development/libraries/drumstick/drumstick-plugins.patch
index cbb0a0e34896..59711120a8e8 100644
--- a/nixpkgs/pkgs/development/libraries/drumstick/drumstick-plugins.patch
+++ b/nixpkgs/pkgs/development/libraries/drumstick/drumstick-plugins.patch
@@ -1,12 +1,14 @@
 Make it look for its plugin in its own installation directory.
 
+Without this vmpk fails to start with "Unable to initialize all MIDI drivers".
+
 --- a/library/rt/backendmanager.cpp
 +++ b/library/rt/backendmanager.cpp
 @@ -159,6 +159,7 @@ namespace rt {
          foreach(const QString& path, QCoreApplication::libraryPaths()) {
              d->appendDir( path + QDir::separator() + QSTR_DRUMSTICK, result );
          }
-+        d->appendDir( "@out@/lib/drumstick", result );
++        d->appendDir( "@out@/lib/" + QSTR_DRUMSTICK, result );
          return result;
      }
  
diff --git a/nixpkgs/pkgs/development/libraries/dssi/default.nix b/nixpkgs/pkgs/development/libraries/dssi/default.nix
index 9ce487b1b03a..ca7ea10afffa 100644
--- a/nixpkgs/pkgs/development/libraries/dssi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dssi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ladspaH, libjack2, liblo, alsaLib, qt4, libX11, libsndfile, libSM
+{ lib, stdenv, fetchurl, ladspaH, libjack2, liblo, alsa-lib, qt4, libX11, libsndfile, libSM
 , libsamplerate, libtool, autoconf, automake, xorgproto, libICE, pkg-config
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ ladspaH libjack2 liblo alsaLib qt4 libX11 libsndfile libSM
+    [ ladspaH libjack2 liblo alsa-lib qt4 libX11 libsndfile libSM
       libsamplerate libtool autoconf automake xorgproto libICE pkg-config
     ];
 
diff --git a/nixpkgs/pkgs/development/libraries/editline/default.nix b/nixpkgs/pkgs/development/libraries/editline/default.nix
index 82f65082b946..2b2ffbea31e2 100644
--- a/nixpkgs/pkgs/development/libraries/editline/default.nix
+++ b/nixpkgs/pkgs/development/libraries/editline/default.nix
@@ -1,20 +1,20 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, fetchpatch }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, nix-update-script, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "editline";
-  version = "1.17.0";
+  version = "1.17.1";
   src = fetchFromGitHub {
     owner = "troglobit";
     repo = "editline";
     rev = version;
-    sha256 = "0vjm42y6zjmi6hdcng0l7wkksw7s50agbmk5dxsc3292q8mvq8v6";
+    sha256 = "sha256-0FeDUVCUahbweH24nfaZwa7j7lSfZh1TnQK7KYqO+3g=";
   };
 
   patches = [
     (fetchpatch {
-      name = "fix-for-multiline-as-one-line.patch";
-      url = "https://github.com/troglobit/editline/commit/ceee039cfc819c8e09eebbfca192091b0cf8df75.patch";
-      sha256 = "149fmfva05ghzwkd0bq1sahdbkys3qyyky28ssqb5jq7q9hw3ddm";
+      name = "fix-for-home-end-in-tmux.patch";
+      url = "https://github.com/troglobit/editline/commit/265c1fb6a0b99bedb157dc7c320f2c9629136518.patch";
+      sha256 = "sha256-9fhQH0hT8BcykGzOUoT18HBtWjjoXnePSGDJQp8GH30=";
     })
   ];
 
@@ -22,11 +22,15 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" "man" "doc" ];
 
+  passthru.updateScript = nix-update-script {
+    attrPath = pname;
+  };
+
   meta = with lib; {
-    homepage = "https://troglobit.com/editline.html";
+    homepage = "https://troglobit.com/projects/editline/";
     description = "A readline() replacement for UNIX without termcap (ncurses)";
     license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = with maintainers; [ dtzWill oxalica ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/embree/default.nix b/nixpkgs/pkgs/development/libraries/embree/default.nix
index b5baab5972aa..3350c046a51a 100644
--- a/nixpkgs/pkgs/development/libraries/embree/default.nix
+++ b/nixpkgs/pkgs/development/libraries/embree/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "embree";
-  version = "3.12.2";
+  version = "3.13.0";
 
   src = fetchFromGitHub {
     owner = "embree";
     repo = "embree";
     rev = "v${version}";
-    sha256 = "sha256-aIZAkpAGvE332HxT4rR+rykww/ZLq2qKGLKiZTWyHCk=";
+    sha256 = "sha256-w93GYslQRg0rvguMKv/CuT3+JzIis2CRbY9jYUFKWOM=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/ethash/default.nix b/nixpkgs/pkgs/development/libraries/ethash/default.nix
index 2c9eb3ca4444..dcb10b8ba08e 100644
--- a/nixpkgs/pkgs/development/libraries/ethash/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ethash/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "PoW algorithm for Ethereum 1.0 based on Dagger-Hashimoto";
     homepage = "https://github.com/ethereum/ethash";
     platforms = platforms.unix;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     license = licenses.asl20;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/exempi/default.nix b/nixpkgs/pkgs/development/libraries/exempi/default.nix
index 356959b429f2..332de1595a06 100644
--- a/nixpkgs/pkgs/development/libraries/exempi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/exempi/default.nix
@@ -11,12 +11,14 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-boost=${boost.dev}"
+  ] ++ lib.optionals (!doCheck) [
+    "--enable-unittest=no"
   ];
 
   buildInputs = [ expat zlib boost ]
     ++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.CoreServices ];
 
-  doCheck = stdenv.isLinux;
+  doCheck = stdenv.isLinux && stdenv.is64bit;
 
   meta = with lib; {
     description = "An implementation of XMP (Adobe's Extensible Metadata Platform)";
diff --git a/nixpkgs/pkgs/development/libraries/fcft/default.nix b/nixpkgs/pkgs/development/libraries/fcft/default.nix
index e9cd3571c769..c431e6e2b3cf 100644
--- a/nixpkgs/pkgs/development/libraries/fcft/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fcft/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchgit, pkg-config, meson, ninja, scdoc
+{ stdenv, lib, fetchzip, pkg-config, meson, ninja, scdoc
 , freetype, fontconfig, pixman, tllist, check
 , withHarfBuzz ? true
 , harfbuzz
@@ -6,12 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fcft";
-  version = "2.3.3";
+  version = "2.4.0";
 
-  src = fetchgit {
-    url = "https://codeberg.org/dnkl/fcft.git";
-    rev = version;
-    sha256 = "0314r038jl17hrhc9nrbx30jk0pz8ckbdnizws4r46b1rf4h0b1f";
+  src = fetchzip {
+    url = "https://codeberg.org/dnkl/fcft/archive/${version}.tar.gz";
+    sha256 = "0z1r0s5s3dr1g4f3ylxfcmy3xb0ax02rw9mg7z8hzh0gxazrpndx";
   };
 
   nativeBuildInputs = [ pkg-config meson ninja scdoc ];
diff --git a/nixpkgs/pkgs/development/libraries/fcl/default.nix b/nixpkgs/pkgs/development/libraries/fcl/default.nix
new file mode 100644
index 000000000000..33a600805846
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/fcl/default.nix
@@ -0,0 +1,45 @@
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, eigen, libccd, octomap }:
+
+stdenv.mkDerivation rec {
+  pname = "fcl";
+  version = "0.6.1";
+
+  src = fetchFromGitHub {
+    owner = "flexible-collision-library";
+    repo = pname;
+    rev = version;
+    sha256 = "1i1sd0fsvk5d529aw8aw29bsmymqgcmj3ci35sz58nzp2wjn0l5d";
+  };
+
+  patches = [
+    # Disable SSE on Emscripten (required for the next patch to apply cleanly)
+    # https://github.com/flexible-collision-library/fcl/pull/470
+    (fetchpatch {
+      url = "https://github.com/flexible-collision-library/fcl/commit/83a1af61ba4efa81ec0b552b3121100044a8cf46.patch";
+      sha256 = "0bbkv4xpkl3c0i8qdlkghj6qkybrrd491c8rd2cqnxfgspcd40p0";
+    })
+    # Detect SSE support to fix building on ARM
+    # https://github.com/flexible-collision-library/fcl/pull/506
+    (fetchpatch {
+      url = "https://github.com/flexible-collision-library/fcl/commit/cbfe1e9405aa68138ed1a8f33736429b85500dea.patch";
+      sha256 = "18qip8gwhm3fvbz1cvzf625rh5msq8m4669ld1m60fv6z50clr9h";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  propagatedBuildInputs = [ eigen libccd octomap ];
+
+  outputs = [ "out" "dev" ];
+
+  meta = with lib; {
+    description = "Flexible Collision Library";
+    longDescription = ''
+      FCL is a library for performing three types of proximity queries on a
+      pair of geometric models composed of triangles.
+    '';
+    homepage = "https://github.com/flexible-collision-library/fcl";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lopsided98 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg-full/default.nix b/nixpkgs/pkgs/development/libraries/ffmpeg-full/default.nix
index d861d25e67a7..98d8ef434e06 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, ffmpeg, addOpenGLRunpath, fetchurl, fetchpatch, pkg-config, perl, texinfo, yasm
+{ lib, stdenv, ffmpeg, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
 /*
  *  Licensing options (yes some are listed twice, filters and such are not listed)
  */
@@ -47,7 +47,7 @@
 /*
  *  External libraries options
  */
-, alsaLib ? null # Alsa in/output support
+, alsa-lib ? null # Alsa in/output support
 #, avisynth ? null # Support for reading AviSynth scripts
 , bzip2 ? null
 , celt ? null # CELT decoder
@@ -126,13 +126,14 @@
 , vid-stab ? null # Video stabilization
 #, vo-aacenc ? null # AAC encoder
 , vo-amrwbenc ? null # AMR-WB encoder
-, wavpack ? null # Wavpack encoder
 , x264 ? null # H.264/AVC encoder
 , x265 ? null # H.265/HEVC encoder
 , xavs ? null # AVS encoder
 , xvidcore ? null # Xvid encoder, native encoder exists
 , zeromq4 ? null # Message passing
 , zlib ? null
+, vulkan-loader ? null
+, glslang ? null
 #, zvbi ? null # Teletext support
 /*
  *  Developer options
@@ -244,15 +245,6 @@ stdenv.mkDerivation rec {
   pname = "ffmpeg-full";
   inherit (ffmpeg) src version;
 
-  # this should go away in the next release
-  patches = [
-    # Patch ffmpeg for svt-av1 until version 4.4
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/AOMediaCodec/SVT-AV1/v0.8.4/ffmpeg_plugin/0001-Add-ability-for-ffmpeg-to-run-svt-av1.patch";
-      sha256 = "1p4g8skr5gjw5h1648j7qrks81zx49lrnx9g0p81qgnrvxc2wwx0";
-    })
-  ];
-
   prePatch = ''
     patchShebangs .
   '' + lib.optionalString stdenv.isDarwin ''
@@ -280,7 +272,6 @@ stdenv.mkDerivation rec {
     # On some ARM platforms --enable-thumb
     "--enable-shared"
     (enableFeature true "pic")
-    (if stdenv.cc.isClang then "--cc=clang" else null)
     (enableFeature smallBuild "small")
     (enableFeature runtimeCpuDetectBuild "runtime-cpudetect")
     (enableFeature enableLto "lto")
@@ -405,13 +396,14 @@ stdenv.mkDerivation rec {
     (enableFeature (vid-stab != null && gplLicensing) "libvidstab") # Actual min. version 2.0
     #(enableFeature (vo-aacenc != null && version3Licensing) "libvo-aacenc")
     (enableFeature (vo-amrwbenc != null && version3Licensing) "libvo-amrwbenc")
-    (enableFeature (wavpack != null) "libwavpack")
     (enableFeature (x264 != null && gplLicensing) "libx264")
     (enableFeature (x265 != null && gplLicensing) "libx265")
     (enableFeature (xavs != null && gplLicensing) "libxavs")
     (enableFeature (xvidcore != null && gplLicensing) "libxvid")
     (enableFeature (zeromq4 != null) "libzmq")
     (enableFeature (zlib != null) "zlib")
+    (enableFeature (isLinux && vulkan-loader != null) "vulkan")
+    (enableFeature (isLinux && vulkan-loader != null && glslang != null) "libglslang")
     #(enableFeature (zvbi != null && gplLicensing) "libzvbi")
     /*
      * Developer flags
@@ -423,6 +415,9 @@ stdenv.mkDerivation rec {
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "--cross-prefix=${stdenv.cc.targetPrefix}"
     "--enable-cross-compile"
+  ] ++ optionals stdenv.cc.isClang [
+    "--cc=clang"
+    "--cxx=clang++"
   ];
 
   nativeBuildInputs = [ addOpenGLRunpath perl pkg-config texinfo yasm ];
@@ -432,13 +427,13 @@ stdenv.mkDerivation rec {
     libjack2 ladspaH lame libaom libass libbluray libbs2b libcaca libdc1394 libmodplug libmysofa
     libogg libopus librsvg libssh libtheora libvdpau libvorbis libvpx libwebp libX11
     libxcb libXv libXext xz openal openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
-    samba SDL2 soxr speex srt vid-stab vo-amrwbenc wavpack x264 x265 xavs xvidcore
+    samba SDL2 soxr speex srt vid-stab vo-amrwbenc x264 x265 xavs xvidcore
     zeromq4 zlib
   ] ++ optionals openglExtlib [ libGL libGLU ]
     ++ optionals nonfreeLicensing [ fdk_aac openssl ]
     ++ optional ((isLinux || isFreeBSD) && libva != null) libva
     ++ optional (!isAarch64 && libvmaf != null && version3Licensing) libvmaf
-    ++ optionals isLinux [ alsaLib libraw1394 libv4l ]
+    ++ optionals isLinux [ alsa-lib libraw1394 libv4l vulkan-loader glslang ]
     ++ optional (isLinux && !isAarch64 && libmfx != null) libmfx
     ++ optional nvenc nv-codec-headers
     ++ optionals stdenv.isDarwin [ Cocoa CoreServices CoreAudio AVFoundation
@@ -465,6 +460,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A complete, cross-platform solution to record, convert and stream audio and video";
     homepage = "https://www.ffmpeg.org/";
+    changelog = "https://github.com/FFmpeg/FFmpeg/blob/n${version}/Changelog";
     longDescription = ''
       FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
       mux, demux, stream, filter and play pretty much anything that humans and machines
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/2.8.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/2.8.nix
index 309cd2b3b356..6d94c2e9974b 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/2.8.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/2.8.nix
@@ -4,4 +4,7 @@ callPackage ./generic.nix (rec {
   version = "${branch}.17";
   branch = "2.8";
   sha256 = "05bnhvs2f82aq95z1wd3wr42sljdfq4kiyzqwhpji983mndx14vl";
+  knownVulnerabilities = [
+    "CVE-2021-30123"
+  ];
 } // args)
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix
index be341d588c1d..25c0a12f731a 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix
@@ -1,4 +1,4 @@
-{ callPackage, fetchpatch
+{ callPackage
 # Darwin frameworks
 , Cocoa, CoreMedia
 , ...
@@ -9,4 +9,7 @@ callPackage ./generic.nix (rec {
   branch = "3.4.8";
   sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch";
   darwinFrameworks = [ Cocoa CoreMedia ];
+  knownVulnerabilities = [
+    "CVE-2021-30123"
+  ];
 } // args)
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
index 95207b5386f8..df3d0732393e 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
@@ -1,12 +1,17 @@
-{ callPackage, fetchpatch
+{ callPackage
 # Darwin frameworks
 , Cocoa, CoreMedia, VideoToolbox
+, stdenv, lib
 , ...
 }@args:
 
 callPackage ./generic.nix (rec {
-  version = "4.3.2";
-  branch = "4.3";
-  sha256 = "0flik4y7c5kchj65p3p908mk1dsncqgzjdvzysjs12rmf1m6sfmb";
+  version = "4.4";
+  branch = "4.4";
+  sha256 = "03kxc29y8190k4y8s8qdpsghlbpmchv1m8iqygq2qn0vfm4ka2a2";
   darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
+
+  /* Work around https://trac.ffmpeg.org/ticket/9242 */
+  patches = lib.optional stdenv.isDarwin
+    ./v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch;
 } // args)
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
index 82f1a8bf5646..d52abd4ab09f 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPackages, fetchurl, pkg-config, addOpenGLRunpath, perl, texinfo, yasm
-, alsaLib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg
+, alsa-lib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg
 , libssh, libtheora, libva, libdrm, libvorbis, libvpx, xz, libpulseaudio, soxr
 , x264, x265, xvidcore, zlib, libopus, speex, nv-codec-headers, dav1d
 , openglSupport ? false, libGLU ? null, libGL ? null
@@ -17,7 +17,7 @@
 # Darwin frameworks
 , Cocoa, darwinFrameworks ? [ Cocoa ]
 # Inherit generics
-, branch, sha256, version, patches ? [], ...
+, branch, sha256, version, patches ? [], knownVulnerabilities ? [], ...
 }:
 
 /* Maintainer notes:
@@ -179,7 +179,7 @@ stdenv.mkDerivation rec {
     ++ optionals (!isDarwin && !isAarch32) [ libpulseaudio ] # Need to be fixed on Darwin and ARM
     ++ optional ((isLinux || isFreeBSD) && !isAarch32) libva
     ++ optional ((isLinux || isFreeBSD) && !isAarch32) libdrm
-    ++ optional isLinux alsaLib
+    ++ optional isLinux alsa-lib
     ++ optionals isDarwin darwinFrameworks
     ++ optional vdpauSupport libvdpau
     ++ optional sdlSupport (if reqMin "3.2" then SDL2 else SDL)
@@ -213,7 +213,8 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A complete, cross-platform solution to record, convert and stream audio and video";
-    homepage = "http://www.ffmpeg.org/";
+    homepage = "https://www.ffmpeg.org/";
+    changelog = "https://github.com/FFmpeg/FFmpeg/blob/n${version}/Changelog";
     longDescription = ''
       FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
       mux, demux, stream, filter and play pretty much anything that humans and machines
@@ -224,6 +225,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     platforms = platforms.all;
     maintainers = with maintainers; [ codyopel ];
-    inherit branch;
+    inherit branch knownVulnerabilities;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch b/nixpkgs/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch
new file mode 100644
index 000000000000..c0c2c1fb23bb
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch
@@ -0,0 +1,35 @@
+From 5b562aaddbc6e7a94a079c2e88230b205a7f4d73 Mon Sep 17 00:00:00 2001
+From: Zane van Iperen <zane@zanevaniperen.com>
+Date: Sat, 15 May 2021 19:33:52 +1000
+Subject: [PATCH v2] avcodec/videotoolboxenc: #define TARGET_CPU_ARM64 to 0 if
+ not provided by the SDK
+
+Fixes build failure on older SDKs without it.
+
+Fixes #9242
+
+Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
+---
+ libavcodec/videotoolboxenc.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+NB: This is untested, I do not have a Mac to try it on.
+
+diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
+index 58239e0ab9..f063a86e73 100644
+--- a/libavcodec/videotoolboxenc.c
++++ b/libavcodec/videotoolboxenc.c
+@@ -50,6 +50,10 @@ enum { kCVPixelFormatType_420YpCbCr10BiPlanarFullRange = 'xf20' };
+ enum { kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange = 'x420' };
+ #endif
+ 
++#ifndef TARGET_CPU_ARM64
++#   define TARGET_CPU_ARM64 0
++#endif
++
+ typedef OSStatus (*getParameterSetAtIndex)(CMFormatDescriptionRef videoDesc,
+                                            size_t parameterSetIndex,
+                                            const uint8_t **parameterSetPointerOut,
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/libraries/ffms/default.nix b/nixpkgs/pkgs/development/libraries/ffms/default.nix
index 7fa96cff7f88..283942df63f9 100644
--- a/nixpkgs/pkgs/development/libraries/ffms/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ffms/default.nix
@@ -1,20 +1,38 @@
-{ lib, stdenv, fetchFromGitHub, zlib, ffmpeg_3, pkg-config }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkg-config
+, ffmpeg
+, zlib
+}:
 
 stdenv.mkDerivation rec {
   pname = "ffms";
-  version = "2.23";
+  version = "2.40";
 
   src = fetchFromGitHub {
     owner = "FFMS";
     repo = "ffms2";
     rev = version;
-    sha256 = "0dkz5b3gxq5p4xz0qqg6l2sigszrlsinz3skyf0ln4wf3zrvf8m5";
+    sha256 = "sha256-3bPxt911T0bGpAIS2RxBjo+VV84xW06eKcCj3ZAcmvw=";
   };
 
   NIX_CFLAGS_COMPILE = "-fPIC";
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ zlib ffmpeg_3 ];
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
+
+  preAutoreconf = ''
+    mkdir src/config
+  '';
+
+  buildInputs = [
+    ffmpeg
+    zlib
+  ];
 
   # ffms includes a built-in vapoursynth plugin, see:
   # https://github.com/FFMS/ffms2#avisynth-and-vapoursynth-plugin
@@ -25,9 +43,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/FFMS/ffms2/";
-    description = "Libav/ffmpeg based source library for easy frame accurate access";
+    description = "FFmpeg based source library for easy frame accurate access";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ tadeokondrak ];
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/flatbuffers/1.12.nix b/nixpkgs/pkgs/development/libraries/flatbuffers/1.12.nix
new file mode 100644
index 000000000000..df2980ba204f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/flatbuffers/1.12.nix
@@ -0,0 +1,26 @@
+{ callPackage, fetchpatch, lib, stdenv }:
+
+callPackage ./generic.nix {
+  version = "1.12.0";
+  sha256 = "0f7xd66vc1lzjbn7jzd5kyqrgxpsfxi4zc7iymhb5xrwyxipjl1g";
+
+  patches = [
+    (fetchpatch {
+      # Fixed a compilation error with GCC 10.0 to 11.0. June 1, 2020.
+      # Should be included in the next release after 1.12.0
+      url = "https://github.com/google/flatbuffers/commit/988164f6e1675bbea9c852e2d6001baf4d1fcf59.patch";
+      sha256 = "0d8c2bywqmkhdi0a41cry85wy4j58pl0vd6h5xpfqm3fr8w0mi9s";
+      excludes = [ "src/idl_gen_cpp.cpp" ];
+    })
+    (fetchpatch {
+      # Fixed a compilation error with GCC 10.0 to 11.0. July 6, 2020.
+      # Should be included in the next release after 1.12.0
+      url = "https://github.com/google/flatbuffers/pull/6020/commits/44c7a4cf439b0a298720b5a448bcc243a882b0c9.patch";
+      sha256 = "126xwkvnlc4ignjhxv9jygfd9j6kr1jx39hyk0ddpcmvzfqsccf4";
+    })
+  ];
+
+  preConfigure = lib.optional stdenv.buildPlatform.isDarwin ''
+    rm BUILD
+  '';
+}
diff --git a/nixpkgs/pkgs/development/libraries/flatbuffers/2.0.nix b/nixpkgs/pkgs/development/libraries/flatbuffers/2.0.nix
new file mode 100644
index 000000000000..2b907e77c499
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/flatbuffers/2.0.nix
@@ -0,0 +1,6 @@
+{ callPackage }:
+
+callPackage ./generic.nix {
+  version = "2.0.0";
+  sha256 = "1zbf6bdpps8369r1ql00irxrp58jnalycc8jcapb8iqg654vlfz8";
+}
diff --git a/nixpkgs/pkgs/development/libraries/flatbuffers/default.nix b/nixpkgs/pkgs/development/libraries/flatbuffers/default.nix
deleted file mode 100644
index 374203556a60..000000000000
--- a/nixpkgs/pkgs/development/libraries/flatbuffers/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
-
-stdenv.mkDerivation rec {
-  pname = "flatbuffers";
-  version = "1.12.0";
-
-  src = fetchFromGitHub {
-    owner = "google";
-    repo = "flatbuffers";
-    rev = "v${version}";
-    sha256 = "0f7xd66vc1lzjbn7jzd5kyqrgxpsfxi4zc7iymhb5xrwyxipjl1g";
-  };
-  patches = [
-    (fetchpatch {
-      # Fixed a compilation error with GCC 10.0 to 11.0. June 1, 2020.
-      # Should be included in the next release after 1.12.0
-      url = "https://github.com/google/flatbuffers/commit/988164f6e1675bbea9c852e2d6001baf4d1fcf59.patch";
-      sha256 = "0d8c2bywqmkhdi0a41cry85wy4j58pl0vd6h5xpfqm3fr8w0mi9s";
-      excludes = [ "src/idl_gen_cpp.cpp" ];
-    })
-    (fetchpatch {
-      # Fixed a compilation error with GCC 10.0 to 11.0. July 6, 2020.
-      # Should be included in the next release after 1.12.0
-      url = "https://github.com/google/flatbuffers/pull/6020/commits/44c7a4cf439b0a298720b5a448bcc243a882b0c9.patch";
-      sha256 = "126xwkvnlc4ignjhxv9jygfd9j6kr1jx39hyk0ddpcmvzfqsccf4";
-    })
-  ];
-
-  preConfigure = lib.optional stdenv.buildPlatform.isDarwin ''
-    rm BUILD
-  '';
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [ "-DFLATBUFFERS_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" ];
-
-  # tests fail to compile
-  doCheck = false;
-  # doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
-  checkTarget = "test";
-
-  meta = with lib; {
-    description = "Memory Efficient Serialization Library";
-    longDescription = ''
-      FlatBuffers is an efficient cross platform serialization library for
-      games and other memory constrained apps. It allows you to directly
-      access serialized data without unpacking/parsing it first, while still
-      having great forwards/backwards compatibility.
-    '';
-    maintainers = [ maintainers.teh ];
-    license = licenses.asl20;
-    platforms = platforms.unix;
-    homepage = "https://google.github.io/flatbuffers/";
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/flatbuffers/generic.nix b/nixpkgs/pkgs/development/libraries/flatbuffers/generic.nix
new file mode 100644
index 000000000000..1cdfb4b9c870
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/flatbuffers/generic.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, version
+, sha256
+, patches ? [ ]
+, preConfigure ? null
+}:
+
+stdenv.mkDerivation rec {
+  pname = "flatbuffers";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "flatbuffers";
+    rev = "v${version}";
+    inherit sha256;
+  };
+
+  inherit patches preConfigure;
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = [
+    "-DFLATBUFFERS_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
+  ];
+
+  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+  checkTarget = "test";
+
+  meta = with lib; {
+    description = "Memory Efficient Serialization Library";
+    longDescription = ''
+      FlatBuffers is an efficient cross platform serialization library for
+      games and other memory constrained apps. It allows you to directly
+      access serialized data without unpacking/parsing it first, while still
+      having great forwards/backwards compatibility.
+    '';
+    maintainers = [ maintainers.teh ];
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    homepage = "https://google.github.io/flatbuffers/";
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/flint/default.nix b/nixpkgs/pkgs/development/libraries/flint/default.nix
index 0adaa2fe5e74..475428167060 100644
--- a/nixpkgs/pkgs/development/libraries/flint/default.nix
+++ b/nixpkgs/pkgs/development/libraries/flint/default.nix
@@ -13,10 +13,12 @@ assert withBlas -> openblas != null && blas.implementation == "openblas" && lapa
 stdenv.mkDerivation rec {
   pname = "flint";
   version = "2.7.1";
+
   src = fetchurl {
     url = "http://www.flintlib.org/flint-${version}.tar.gz";
     sha256 = "07j8r96kdzp19cy3a5yvpjxf90mkd6103yr2n42qmpv7mgcjyvhq";
   };
+
   buildInputs = [
     gmp
     mpir
@@ -37,9 +39,6 @@ stdenv.mkDerivation rec {
     "--with-blas=${openblas}"
   ];
 
-  # issues with ntl -- https://github.com/wbhart/flint2/issues/487
-  NIX_CXXSTDLIB_COMPILE = "-std=c++11";
-
   doCheck = true;
   meta = {
     inherit version;
diff --git a/nixpkgs/pkgs/development/libraries/flite/default.nix b/nixpkgs/pkgs/development/libraries/flite/default.nix
index a80c317b06ee..cd8eb538462b 100644
--- a/nixpkgs/pkgs/development/libraries/flite/default.nix
+++ b/nixpkgs/pkgs/development/libraries/flite/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, alsaLib, fetchpatch }:
+{ lib, stdenv, fetchFromGitHub, alsa-lib, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "flite";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1n0p81jzndzc1rzgm66kw9ls189ricy5v1ps11y0p2fk1p56kbjf";
   };
 
-  buildInputs = lib.optionals stdenv.isLinux [ alsaLib ];
+  buildInputs = lib.optionals stdenv.isLinux [ alsa-lib ];
 
   # https://github.com/festvox/flite/pull/60.
   # Replaces `ar` with `$(AR)` in config/common_make_rules.
diff --git a/nixpkgs/pkgs/development/libraries/folks/default.nix b/nixpkgs/pkgs/development/libraries/folks/default.nix
index c930adbe9b2d..6cd651e66ebb 100644
--- a/nixpkgs/pkgs/development/libraries/folks/default.nix
+++ b/nixpkgs/pkgs/development/libraries/folks/default.nix
@@ -1,11 +1,10 @@
 { fetchurl
 , lib, stdenv
 , pkg-config
-, fetchpatch
 , meson
 , ninja
 , glib
-, gnome3
+, gnome
 , nspr
 , gettext
 , gobject-introspection
@@ -18,6 +17,7 @@
 , dbus
 , libgee
 , evolution-data-server
+, libgdata
 , libsecret
 , db
 , python3
@@ -34,29 +34,15 @@
 
 stdenv.mkDerivation rec {
   pname = "folks";
-  version = "0.14.0";
+  version = "0.15.2";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1f9b52vmwnq7s51vj26w2618dn2ph5g12ibbkbyk6fvxcgd7iryn";
+    sha256 = "08nirjax4m4g4ljr8ksq16wzmrvzq6myqh5rm0dw6pnijqk7nxzg";
   };
 
-  patches = [
-    # Fix tests with e-d-s linked with libphonenumber support
-    # https://gitlab.gnome.org/GNOME/folks/merge_requests/40
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/folks/commit/6d443480a137f6a6ff345b21bf3cb31066eefbcd.patch";
-      sha256 = "D/Y2g12TT0qrcH+iJ2umu4Hmp0EJ3Hoedh0H3aWI+HY=";
-    })
-  ];
-
-  mesonFlags = [
-    "-Ddocs=true"
-    "-Dtelepathy_backend=${lib.boolToString telepathySupport}"
-  ];
-
   nativeBuildInputs = [
     gettext
     gobject-introspection
@@ -75,6 +61,7 @@ stdenv.mkDerivation rec {
     db
     dbus-glib
     evolution-data-server
+    libgdata # required for some backends transitively
     libsecret
     libsoup
     libxml2
@@ -100,7 +87,17 @@ stdenv.mkDerivation rec {
     ]))
   ];
 
-  doCheck = true;
+  mesonFlags = [
+    "-Ddocs=true"
+    "-Dtelepathy_backend=${lib.boolToString telepathySupport}"
+    # For some reason, the tests are getting stuck on 31/32,
+    # even though the one missing test finishes just fine on next run,
+    # when tests are permuted differently. And another test that
+    # previously passed will be stuck instead.
+    "-Dtests=false"
+  ];
+
+  doCheck = false;
 
   # Prevents e-d-s add-contacts-stress-test from timing out
   checkPhase = ''
@@ -116,7 +113,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/fontconfig/default.nix b/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
index a7f8fa89c166..c0846edbbfe4 100644
--- a/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
@@ -61,6 +61,11 @@ stdenv.mkDerivation rec {
       url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/409b37c62780728755c908991c912a6b16f2389c.patch";
       sha256 = "zJFh37QErSAINPGFkFVJyhYRP27BuIN7PIgoDl/PIwI=";
     })
+
+    # Combination of
+    # https://gitlab.freedesktop.org/fontconfig/fontconfig/-/merge_requests/88
+    # https://gitlab.freedesktop.org/fontconfig/fontconfig/-/merge_requests/131
+    ./macos-atomics.h
   ];
 
   outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
@@ -118,6 +123,6 @@ stdenv.mkDerivation rec {
     homepage = "http://fontconfig.org/";
     license = licenses.bsd2; # custom but very bsd-like
     platforms = platforms.all;
-    maintainers = [ maintainers.vcunat ];
+    maintainers = with maintainers; teams.freedesktop.members ++ [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/fontconfig/macos-atomics.h b/nixpkgs/pkgs/development/libraries/fontconfig/macos-atomics.h
new file mode 100644
index 000000000000..07b0cf1d52dc
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/fontconfig/macos-atomics.h
@@ -0,0 +1,39 @@
+--- a/src/fcatomic.h	2020-11-27 13:23:44.000000000 +0900
++++ b/src/fcatomic.h	2020-11-27 13:24:43.000000000 +0900
+@@ -70,24 +70,25 @@
+ #elif !defined(FC_NO_MT) && defined(__APPLE__)
+ 
+ #include <libkern/OSAtomic.h>
+-#ifdef __MAC_OS_X_MIN_REQUIRED
+ #include <AvailabilityMacros.h>
+-#elif defined(__IPHONE_OS_MIN_REQUIRED)
+-#include <Availability.h>
+-#endif
+ 
+ typedef int fc_atomic_int_t;
+ #define fc_atomic_int_add(AI, V)	(OSAtomicAdd32Barrier ((V), &(AI)) - (V))
+ 
+-#define fc_atomic_ptr_get(P)		(OSMemoryBarrier (), (void *) *(P))
+-#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4 || __IPHONE_VERSION_MIN_REQUIRED >= 20100)
+-#define fc_atomic_ptr_cmpexch(P,O,N)	OSAtomicCompareAndSwapPtrBarrier ((void *) (O), (void *) (N), (void **) (P))
+-#else
+-#if __ppc64__ || __x86_64__
+-#define fc_atomic_ptr_cmpexch(P,O,N)	OSAtomicCompareAndSwap64Barrier ((int64_t) (O), (int64_t) (N), (int64_t*) (P))
++#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4 || __IPHONE_OS_VERSION_MIN_REQUIRED >= 20100)
++
++#if SIZEOF_VOID_P == 8
++#define fc_atomic_ptr_get(P)		OSAtomicAdd64Barrier (0, (int64_t*)(P))
++#elif SIZEOF_VOID_P == 4
++#define fc_atomic_ptr_get(P)		OSAtomicAdd32Barrier (0, (int32_t*)(P))
+ #else
+-#define fc_atomic_ptr_cmpexch(P,O,N)	OSAtomicCompareAndSwap32Barrier ((int32_t) (O), (int32_t) (N), (int32_t*) (P))
++#error "SIZEOF_VOID_P not 4 or 8 (assumes CHAR_BIT is 8)"
+ #endif
++
++#define fc_atomic_ptr_cmpexch(P,O,N)	OSAtomicCompareAndSwapPtrBarrier ((void *) (O), (void *) (N), (void **) (P))
++
++#else
++#error "Your macOS / iOS targets are too old"
+ #endif
+ 
+ #elif !defined(FC_NO_MT) && defined(HAVE_INTEL_ATOMIC_PRIMITIVES)
diff --git a/nixpkgs/pkgs/development/libraries/freeimage/default.nix b/nixpkgs/pkgs/development/libraries/freeimage/default.nix
index b50783e2719e..236305a572bf 100644
--- a/nixpkgs/pkgs/development/libraries/freeimage/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freeimage/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchsvn, darwin, libtiff
 , libpng, zlib, libwebp, libraw, openexr, openjpeg
-, libjpeg, jxrlib, pkg-config }:
+, libjpeg, jxrlib, pkg-config
+, fixDarwinDylibNames }:
 
 stdenv.mkDerivation {
   pname = "freeimage";
@@ -17,7 +18,12 @@ stdenv.mkDerivation {
   prePatch = "rm -rf Source/Lib* Source/OpenEXR Source/ZLib";
   patches = [ ./unbundle.diff ];
 
-  nativeBuildInputs = [ pkg-config ] ++ lib.optional stdenv.isDarwin darwin.cctools;
+  nativeBuildInputs = [
+    pkg-config
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.cctools
+    fixDarwinDylibNames
+  ];
   buildInputs = [ libtiff libtiff.dev_private libpng zlib libwebp libraw openexr openjpeg libjpeg libjpeg.dev_private jxrlib ];
 
   postBuild = lib.optionalString (!stdenv.isDarwin) ''
diff --git a/nixpkgs/pkgs/development/libraries/freetds/default.nix b/nixpkgs/pkgs/development/libraries/freetds/default.nix
index 0a9a4684e125..56f0e03921be 100644
--- a/nixpkgs/pkgs/development/libraries/freetds/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freetds/default.nix
@@ -8,11 +8,11 @@ assert odbcSupport -> unixODBC != null;
 
 stdenv.mkDerivation rec {
   pname = "freetds";
-  version = "1.2.18";
+  version = "1.2.21";
 
   src = fetchurl {
     url    = "https://www.freetds.org/files/stable/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-ENR+YJhs/FH4Fw+p6rpDEU7r3eC6bmscSBPYbwIaqt0=";
+    sha256 = "sha256-pea79tbz3AgWsZy9CDCNJ6CEsEkmqqBaxn+AjqB9PY0=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/fstrm/default.nix b/nixpkgs/pkgs/development/libraries/fstrm/default.nix
index 46a7118cefe4..15daa7e5a959 100644
--- a/nixpkgs/pkgs/development/libraries/fstrm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fstrm/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fstrm";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "farsightsec";
     repo = "fstrm";
     rev = "v${version}";
-    sha256 = "0b6x9wgyn92vykkmd3ynhnpbdl77zb4wf4rm7p0h8p9pwq953hdm";
+    sha256 = "sha256-/WFP2g3Vuf/qaY8pprY8XFAlpEE+0SJUlFNWfa+7ZlE=";
   };
 
   outputs = [ "bin" "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/gcab/default.nix b/nixpkgs/pkgs/development/libraries/gcab/default.nix
index 0ad9f607dfea..efc533c55041 100644
--- a/nixpkgs/pkgs/development/libraries/gcab/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gcab/default.nix
@@ -12,7 +12,7 @@
 , vala
 , glib
 , zlib
-, gnome3
+, gnome
 , nixosTests
 }:
 
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gcr/default.nix b/nixpkgs/pkgs/development/libraries/gcr/default.nix
index 92c0ec293cb2..37238a5f59ec 100644
--- a/nixpkgs/pkgs/development/libraries/gcr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gcr/default.nix
@@ -15,18 +15,18 @@
 , makeWrapper
 , libxslt
 , vala
-, gnome3
+, gnome
 , python3
 , shared-mime-info
 }:
 
 stdenv.mkDerivation rec {
   pname = "gcr";
-  version = "3.38.1";
+  version = "3.40.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "F/yvnEqTpl+xxyuCZDuxAsEzRAhGh9WIbqZjE4aNnsk=";
+    sha256 = "udNkWl/ZU6VChcxk1PwEZzZGPb1NzCXK9ce1m+0wJ/U=";
   };
 
   postPatch = ''
@@ -74,21 +74,20 @@ stdenv.mkDerivation rec {
 
   doCheck = false; # fails 21 out of 603 tests, needs dbus daemon
 
-  enableParallelBuilding = true;
-
   preFixup = ''
     wrapProgram "$out/bin/gcr-viewer" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
   meta = with lib; {
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = teams.gnome.members;
     description = "GNOME crypto services (daemon and tools)";
     homepage = "https://gitlab.gnome.org/GNOME/gcr";
diff --git a/nixpkgs/pkgs/development/libraries/gdal/2.4.nix b/nixpkgs/pkgs/development/libraries/gdal/2.4.nix
index 70ae3b2b12aa..234d986b21fa 100644
--- a/nixpkgs/pkgs/development/libraries/gdal/2.4.nix
+++ b/nixpkgs/pkgs/development/libraries/gdal/2.4.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, unzip, libjpeg, libtiff, zlib
+{ lib, stdenv, fetchurl, libjpeg, libtiff, zlib
 , postgresql, libmysqlclient, libgeotiff, python2Packages, proj, geos, openssl
 , libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat
 , libiconv, libxml2
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
     sha256 = "1n6w0m2603q9cldlz0wyscp75ci561dipc36jqbf3mjmylybv0x3";
   };
 
-  nativeBuildInputs = [ unzip ];
   buildInputs = [ libjpeg libtiff libgeotiff libpng proj openssl sqlite
     libspatialite poppler hdf4 qhull giflib expat libxml2 proj ]
   ++ (with python2Packages; [ python numpy wrapPython ])
diff --git a/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix b/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
index 2d8e60d06a73..fd2d62a032c3 100644
--- a/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -7,16 +7,15 @@
 , pkg-config
 , gettext
 , python3
-, libxml2
 , libxslt
 , docbook-xsl-nons
 , docbook_xml_dtd_43
-, gtk-doc
+, gi-docgen
 , glib
 , libtiff
 , libjpeg
 , libpng
-, gnome3
+, gnome
 , gobject-introspection
 , doCheck ? false
 , makeWrapper
@@ -25,13 +24,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gdk-pixbuf";
-  version = "2.42.2";
+  version = "2.42.6";
 
   outputs = [ "out" "dev" "man" "devdoc" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05ggmzwvrxq9w4zcvmrnnd6qplsmb4n95lj4q607c7arzlf6mil3";
+    sha256 = "0zz7pmw2z46g7mr1yjxbsdldd5pd03xbjc58inj8rxfqgrdvg9n4";
   };
 
   patches = [
@@ -45,14 +44,15 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     python3
-    libxml2
-    libxslt
-    docbook-xsl-nons
-    docbook_xml_dtd_43
-    gtk-doc
     gobject-introspection
     makeWrapper
     glib
+    gi-docgen
+
+    # for man pages
+    libxslt
+    docbook-xsl-nons
+    docbook_xml_dtd_43
   ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
   propagatedBuildInputs = [
@@ -75,19 +75,26 @@ stdenv.mkDerivation rec {
     substituteInPlace tests/meson.build --subst-var-by installedtestsprefix "$installedTests"
   '';
 
+  preInstall = ''
+    PATH=$PATH:$out/bin # for install script
+  '';
+
   postInstall =
-    # meson erroneously installs loaders with .dylib extension on Darwin.
-    # Their @rpath has to be replaced before gdk-pixbuf-query-loaders looks at them.
-    lib.optionalString stdenv.isDarwin ''
+    ''
+      # All except one utility seem to be only useful during building.
+      moveToOutput "bin" "$dev"
+      moveToOutput "bin/gdk-pixbuf-thumbnailer" "$out"
+
+      # So that devhelp can find this.
+      mkdir -p "$devdoc/share/devhelp"
+      mv "$out/share/doc" "$devdoc/share/devhelp/books"
+    '' + lib.optionalString stdenv.isDarwin ''
+      # meson erroneously installs loaders with .dylib extension on Darwin.
+      # Their @rpath has to be replaced before gdk-pixbuf-query-loaders looks at them.
       for f in $out/${passthru.moduleDir}/*.dylib; do
           install_name_tool -change @rpath/libgdk_pixbuf-2.0.0.dylib $out/lib/libgdk_pixbuf-2.0.0.dylib $f
           mv $f ''${f%.dylib}.so
       done
-    ''
-    # All except one utility seem to be only useful during building.
-    + ''
-      moveToOutput "bin" "$dev"
-      moveToOutput "bin/gdk-pixbuf-thumbnailer" "$out"
     '' + lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
       # We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/
       $dev/bin/gdk-pixbuf-query-loaders --update-cache
@@ -100,10 +107,6 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  preInstall = ''
-    PATH=$PATH:$out/bin # for install script
-  '';
-
   # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB).
   inherit doCheck;
 
@@ -112,8 +115,9 @@ stdenv.mkDerivation rec {
   separateDebugInfo = stdenv.isLinux;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
 
     tests = {
diff --git a/nixpkgs/pkgs/development/libraries/gdl/default.nix b/nixpkgs/pkgs/development/libraries/gdl/default.nix
index f924571deae1..5b73e3d7a139 100644
--- a/nixpkgs/pkgs/development/libraries/gdl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gdl/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, libxml2, gtk3, gnome3, intltool }:
+{ lib, stdenv, fetchurl, pkg-config, libxml2, gtk3, gnome, intltool }:
 
 stdenv.mkDerivation rec {
   pname = "gdl";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxml2 gtk3 ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gdl";
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/gegl/4.0.nix b/nixpkgs/pkgs/development/libraries/gegl/4.0.nix
index 2093328f5793..11f4f070c08f 100644
--- a/nixpkgs/pkgs/development/libraries/gegl/4.0.nix
+++ b/nixpkgs/pkgs/development/libraries/gegl/4.0.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
 , pkg-config
 , vala
@@ -35,14 +36,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gegl";
-  version = "0.4.28";
+  version = "0.4.30";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "https://download.gimp.org/pub/gegl/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-HRENhXfVTMo7NCOTFb03xXzLJ91DVWVQdKLSs/2JeQA=";
+    sha256 = "sha256-wRJ4LPQJaWniMhfM36vkIoTjXVQ1/wxD1A5McPrsqN0=";
   };
 
   nativeBuildInputs = [
@@ -103,8 +104,8 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-lm";
 
   postPatch = ''
-    chmod +x tests/opencl/opencl_test.sh tests/buffer/buffer-tests-run.sh
-    patchShebangs tests/ff-load-save/tests_ff_load_save.sh tests/opencl/opencl_test.sh tests/buffer/buffer-tests-run.sh tools/xml_insert.sh
+    chmod +x tests/opencl/opencl_test.sh
+    patchShebangs tests/ff-load-save/tests_ff_load_save.sh tests/opencl/opencl_test.sh tools/xml_insert.sh
   '';
 
   # tests fail to connect to the com.apple.fonts daemon in sandboxed mode
diff --git a/nixpkgs/pkgs/development/libraries/gensio/default.nix b/nixpkgs/pkgs/development/libraries/gensio/default.nix
index aef412468a95..a0c4f5a3e216 100644
--- a/nixpkgs/pkgs/development/libraries/gensio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gensio/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gensio";
-  version = "2.2.4";
+  version = "2.2.5";
 
   src = fetchFromGitHub {
     owner = "cminyard";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-tdMdIudB8zZWXF+Q0YhFo9Q4VHjLJh3rdfQsYhgo2DU=";
+    sha256 = "sha256-QC07NGgZa++qHyGZY3fjosjJVuRFfc7HYmdGxQHAz4s=";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/geoclue/add-option-for-installation-sysconfdir.patch b/nixpkgs/pkgs/development/libraries/geoclue/add-option-for-installation-sysconfdir.patch
index 9eb53acebb0a..63948ab4fad3 100644
--- a/nixpkgs/pkgs/development/libraries/geoclue/add-option-for-installation-sysconfdir.patch
+++ b/nixpkgs/pkgs/development/libraries/geoclue/add-option-for-installation-sysconfdir.patch
@@ -65,17 +65,20 @@ index fde6fa3..39b7b0a 100644
  conf.set_quoted('LOCALEDIR', localedir)
 -conf.set_quoted('SYSCONFDIR', sysconfdir)
 +conf.set_quoted('SYSCONFDIR', get_option('sysconfdir'))
+ conf.set_quoted('MOZILLA_API_KEY', get_option('mozilla-api-key'))
  conf.set10('GCLUE_USE_3G_SOURCE', get_option('3g-source'))
  conf.set10('GCLUE_USE_CDMA_SOURCE', get_option('cdma-source'))
- conf.set10('GCLUE_USE_MODEM_GPS_SOURCE', get_option('modem-gps-source'))
 diff --git a/meson_options.txt b/meson_options.txt
 index 83bc60e..b726329 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -34,3 +34,6 @@ option('systemd-system-unit-dir',
+@@ -34,6 +34,9 @@ option('systemd-system-unit-dir',
  option('dbus-srv-user',
         type: 'string', value: 'root',
         description: 'The user (existing) as which the service will run')
 +option('sysconfdir_install',
 +       type: 'string', value: '',
 +       description: 'sysconfdir to use during installation')
+ option('mozilla-api-key',
+        type: 'string', value: 'geoclue',
+        description: 'Your API key for Mozilla Location Service')
diff --git a/nixpkgs/pkgs/development/libraries/geoclue/default.nix b/nixpkgs/pkgs/development/libraries/geoclue/default.nix
index 711f1a444b38..360094ea7655 100644
--- a/nixpkgs/pkgs/development/libraries/geoclue/default.nix
+++ b/nixpkgs/pkgs/development/libraries/geoclue/default.nix
@@ -1,50 +1,98 @@
-{ lib, stdenv, fetchFromGitLab, intltool, meson, ninja, pkg-config, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, json-glib, libsoup, libnotify, gdk-pixbuf
-, modemmanager, avahi, glib-networking, python3, wrapGAppsHook, gobject-introspection, vala
+{ lib
+, stdenv
+, fetchFromGitLab
+, fetchpatch
+, intltool
+, meson
+, ninja
+, pkg-config
+, gtk-doc
+, docbook-xsl-nons
+, docbook_xml_dtd_412
+, glib
+, json-glib
+, libsoup
+, libnotify
+, gdk-pixbuf
+, modemmanager
+, avahi
+, glib-networking
+, python3
+, wrapGAppsHook
+, gobject-introspection
+, vala
 , withDemoAgent ? false
 }:
 
-with lib;
-
 stdenv.mkDerivation rec {
   pname = "geoclue";
-  version = "2.5.6";
+  version = "2.5.7";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "13fk6n4j74lvcsrg3kwbw1mkxgcr3iy9dnysmy0pclfsym8z5m5m";
+    sha256 = "1mv1vs4q94bqkmgkj53jcsw1x31kczwydyy3r27a7fycgzmii1pj";
   };
 
   patches = [
+    # Make the Mozilla API key configurable
+    # https://gitlab.freedesktop.org/geoclue/geoclue/merge_requests/54 (only partially backported)
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/geoclue/geoclue/commit/95c9ad4dc176860c85a07d0db4cb4179929bdb54.patch";
+      sha256 = "/lq/dLBJl2vf16tt7emYoTtXY6iUw+4s2XcABUHp3Kc=";
+    })
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/geoclue/geoclue/commit/1a00809a0d89b0849a57647c878d192354247a33.patch";
+      sha256 = "6FuiukgFWg2cEKt8LlKP4E0rfSH/ZQgk6Ip1mGJpNFQ=";
+    })
+
     ./add-option-for-installation-sysconfdir.patch
   ];
 
-  outputs = [ "out" "dev" "devdoc" ];
-
   nativeBuildInputs = [
-    pkg-config intltool meson ninja wrapGAppsHook python3 vala gobject-introspection
+    pkg-config
+    intltool
+    meson
+    ninja
+    wrapGAppsHook
+    python3
+    vala
+    gobject-introspection
     # devdoc
-    gtk-doc docbook_xsl docbook_xml_dtd_412
+    gtk-doc
+    docbook-xsl-nons
+    docbook_xml_dtd_412
   ];
 
   buildInputs = [
-    glib json-glib libsoup avahi
-  ] ++ optionals withDemoAgent [
+    glib
+    json-glib
+    libsoup
+    avahi
+  ] ++ lib.optionals withDemoAgent [
     libnotify gdk-pixbuf
-  ] ++ optionals (!stdenv.isDarwin) [ modemmanager ];
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    modemmanager
+  ];
 
-  propagatedBuildInputs = [ glib glib-networking ];
+  propagatedBuildInputs = [
+    glib
+    glib-networking
+  ];
 
   mesonFlags = [
     "-Dsystemd-system-unit-dir=${placeholder "out"}/etc/systemd/system"
-    "-Ddemo-agent=${boolToString withDemoAgent}"
+    "-Ddemo-agent=${lib.boolToString withDemoAgent}"
     "--sysconfdir=/etc"
     "-Dsysconfdir_install=${placeholder "out"}/etc"
+    "-Dmozilla-api-key=5c28d1f4-9511-47ff-b11a-2bef80fc177c"
     "-Ddbus-srv-user=geoclue"
     "-Ddbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d"
-  ] ++ optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.isDarwin [
     "-D3g-source=false"
     "-Dcdma-source=false"
     "-Dmodem-gps-source=false"
diff --git a/nixpkgs/pkgs/development/libraries/geocode-glib/default.nix b/nixpkgs/pkgs/development/libraries/geocode-glib/default.nix
index f401c25aa394..458e0d59a0d5 100644
--- a/nixpkgs/pkgs/development/libraries/geocode-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/geocode-glib/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, meson, ninja, pkg-config, gettext, gtk-doc, docbook_xsl, gobject-introspection, gnome3, libsoup, json-glib, glib }:
+{ fetchurl, lib, stdenv, meson, ninja, pkg-config, gettext, gtk-doc, docbook_xsl, gobject-introspection, gnome, libsoup, json-glib, glib }:
 
 stdenv.mkDerivation rec {
   pname = "geocode-glib";
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/geos/default.nix b/nixpkgs/pkgs/development/libraries/geos/default.nix
index 19b03eb620ce..355e9e5f07ff 100644
--- a/nixpkgs/pkgs/development/libraries/geos/default.nix
+++ b/nixpkgs/pkgs/development/libraries/geos/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python }:
+{ lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   pname = "geos";
@@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  buildInputs = [ python ];
-
   # https://trac.osgeo.org/geos/ticket/993
   configureFlags = lib.optional stdenv.isAarch32 "--disable-inline";
 
diff --git a/nixpkgs/pkgs/development/libraries/getdata/default.nix b/nixpkgs/pkgs/development/libraries/getdata/default.nix
index de76924844fe..25321c22434e 100644
--- a/nixpkgs/pkgs/development/libraries/getdata/default.nix
+++ b/nixpkgs/pkgs/development/libraries/getdata/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, libtool }:
+{ lib, stdenv, fetchurl, fetchpatch, libtool }:
 stdenv.mkDerivation rec {
   pname = "getdata";
   version = "0.10.0";
@@ -7,6 +7,13 @@ stdenv.mkDerivation rec {
     sha256 = "18xbb32vygav9x6yz0gdklif4chjskmkgp06rwnjdf9myhia0iym";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/libg/libgetdata/0.10.0-10/debian/patches/CVE-2021-20204.patch";
+      sha256 = "1lvp1c2pkk9kxniwlvax6d8fsmjrkpxawf71c7j4rfjm6dgvivzm";
+    })
+  ];
+
   buildInputs = [ libtool ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/gexiv2/default.nix b/nixpkgs/pkgs/development/libraries/gexiv2/default.nix
index 071e749b4002..c46a42049bce 100644
--- a/nixpkgs/pkgs/development/libraries/gexiv2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gexiv2/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, exiv2, glib, gnome3, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, exiv2, glib, gnome, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }:
 
 stdenv.mkDerivation rec {
   pname = "gexiv2";
@@ -22,8 +22,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gfbgraph/default.nix b/nixpkgs/pkgs/development/libraries/gfbgraph/default.nix
index e3550b82a965..7f4625b66512 100644
--- a/nixpkgs/pkgs/development/libraries/gfbgraph/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gfbgraph/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, glib, librest, gnome-online-accounts
-, gnome3, libsoup, json-glib, gobject-introspection
+, gnome, libsoup, json-glib, gobject-introspection
 , gtk-doc, pkgs, docbook-xsl-nons, autoconf, automake, libtool }:
 
 stdenv.mkDerivation rec {
@@ -35,8 +35,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/ghc_filesystem/default.nix b/nixpkgs/pkgs/development/libraries/ghc_filesystem/default.nix
new file mode 100644
index 000000000000..0ffad301a493
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/ghc_filesystem/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, cmake, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "filesystem";
+  version = "1.5.6";
+
+  src = fetchFromGitHub {
+    owner = "gulrak";
+    repo = "filesystem";
+    rev = "v${version}";
+    hash = "sha256-qnBZ9aCrCPOgxymjbzrRs0gssijo8MJOMiy7QWWMb5c=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    description = "header-only single-file C++ std::filesystem compatible helper library";
+    homepage = "https://github.com/gulrak/filesystem";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lourkeur ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/giflib/libungif.nix b/nixpkgs/pkgs/development/libraries/giflib/libungif.nix
deleted file mode 100644
index d8c32d14fca2..000000000000
--- a/nixpkgs/pkgs/development/libraries/giflib/libungif.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{lib, stdenv, fetchurl}:
-
-stdenv.mkDerivation {
-  name = "libungif-4.1.4";
-  src = fetchurl {
-    url = "mirror://sourceforge/giflib/libungif-4.1.4.tar.gz";
-    sha256 = "5e65e1e5deacd0cde489900dbf54c6c2ee2ebc818199e720dbad685d87abda3d";
-  };
-
-  hardeningDisable = [ "format" ];
-
-  meta = with lib; {
-    description = "Library and utilities for processing GIFs";
-    platforms = platforms.unix;
-    license = licenses.mit;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/gjs/default.nix b/nixpkgs/pkgs/development/libraries/gjs/default.nix
index 52b53a15b410..342d498f1547 100644
--- a/nixpkgs/pkgs/development/libraries/gjs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gjs/default.nix
@@ -1,10 +1,10 @@
 { fetchurl
-, fetchpatch
-, lib, stdenv
+, lib
+, stdenv
 , meson
 , ninja
 , pkg-config
-, gnome3
+, gnome
 , gtk3
 , atk
 , gobject-introspection
@@ -16,27 +16,36 @@
 , libxml2
 , dbus
 , gdk-pixbuf
+, harfbuzz
 , makeWrapper
 , which
-, xvfb_run
+, xvfb-run
 , nixosTests
 }:
 
 let
   testDeps = [
     gobject-introspection # for Gio and cairo typelibs
-    gtk3 atk pango.out gdk-pixbuf
+    gtk3 atk pango.out gdk-pixbuf harfbuzz
   ];
 in stdenv.mkDerivation rec {
   pname = "gjs";
-  version = "1.66.2";
+  version = "1.68.1";
+
+  outputs = [ "out" "dev" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "vX9fixcSd8wLue4XVLAkC2Lwana4sYyWjPRxs0qzTlk=";
+    sha256 = "0w2cbfpmc6alz7z8ycchhlkn586av5y8zk2xmgwzq10i0k13xyig";
   };
 
-  outputs = [ "out" "dev" "installedTests" ];
+  patches = [
+    # Hard-code various paths
+    ./fix-paths.patch
+
+    # Allow installing installed tests to a separate output.
+    ./installed-tests-path.patch
+  ];
 
   nativeBuildInputs = [
     meson
@@ -56,7 +65,7 @@ in stdenv.mkDerivation rec {
   ];
 
   checkInputs = [
-    xvfb_run
+    xvfb-run
   ] ++ testDeps;
 
   propagatedBuildInputs = [
@@ -68,14 +77,6 @@ in stdenv.mkDerivation rec {
     "-Dinstalled_test_prefix=${placeholder "installedTests"}"
   ];
 
-  patches = [
-    # Hard-code various paths
-    ./fix-paths.patch
-
-    # Allow installing installed tests to a separate output.
-    ./installed-tests-path.patch
-  ];
-
   doCheck = true;
 
   postPatch = ''
@@ -91,6 +92,7 @@ in stdenv.mkDerivation rec {
     mkdir -p $out/lib $installedTests/libexec/installed-tests/gjs
     ln -s $PWD/libgjs.so.0 $out/lib/libgjs.so.0
     ln -s $PWD/installed-tests/js/libgimarshallingtests.so $installedTests/libexec/installed-tests/gjs/libgimarshallingtests.so
+    ln -s $PWD/installed-tests/js/libgjstesttools/libgjstesttools.so $installedTests/libexec/installed-tests/gjs/libgjstesttools.so
     ln -s $PWD/installed-tests/js/libregress.so $installedTests/libexec/installed-tests/gjs/libregress.so
     ln -s $PWD/installed-tests/js/libwarnlib.so $installedTests/libexec/installed-tests/gjs/libwarnlib.so
   '';
@@ -122,7 +124,7 @@ in stdenv.mkDerivation rec {
       installed-tests = nixosTests.installed-tests.gjs;
     };
 
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gjs";
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
index 38ef25770aa9..37c15225869f 100644
--- a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.3.3";
+  version = "3.3.4";
   pname = "glfw";
 
   src = fetchFromGitHub {
     owner = "glfw";
     repo = "GLFW";
     rev = version;
-    sha256 = "sha256-NfEPXjpVnFvh3Y70RZm8nDG0QwJbefF9wYNUq0BZTN4=";
+    sha256 = "sha256-BP4wxjgm0x0E68tNz5eudkVUyBnXkQlP7LY3ppZunhw=";
   };
 
   propagatedBuildInputs = [ libGL ];
diff --git a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
index 585897341662..690279fcf213 100644
--- a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
@@ -12,19 +12,19 @@
 , gnutls
 , p11-kit
 , libproxy
-, gnome3
+, gnome
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
   pname = "glib-networking";
-  version = "2.66.0";
+  version = "2.68.1";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "16807qwflbghp0c66jdx2gnaffvdp4bla35ppzp9dlgx6wjbxmy5";
+    sha256 = "0c1vylxly8k7g454g02spi44ybjidlwg461vp713zxd94k8qnpfh";
   };
 
   patches = [
@@ -74,8 +74,9 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
 
     tests = {
diff --git a/nixpkgs/pkgs/development/libraries/glib/default.nix b/nixpkgs/pkgs/development/libraries/glib/default.nix
index ce64bef95adb..e15f59757862 100644
--- a/nixpkgs/pkgs/development/libraries/glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib/default.nix
@@ -1,5 +1,5 @@
 { config, lib, stdenv, fetchurl, gettext, meson, ninja, pkg-config, perl, python3
-, libiconv, zlib, libffi, pcre, libelf, gnome3, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45
+, libiconv, zlib, libffi, pcre, libelf, gnome, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45
 # use util-linuxMinimal to avoid circular dependency (util-linux, systemd, glib)
 , util-linuxMinimal ? null
 , buildPackages
@@ -45,15 +45,16 @@ in
 
 stdenv.mkDerivation rec {
   pname = "glib";
-  version = "2.66.8";
+  version = "2.68.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-l7yH3ZE2VYmvXLv+oldIM66nobcYQP02Xs0oUsdrnIs=";
+    sha256 = "sha256-7Md5ipzANOq9/X8kbm3UYc2/EXX8wumGfMfae3MJ4Ps=";
   };
 
   patches = optionals stdenv.isDarwin [
     ./darwin-compilation.patch
+    ./link-with-coreservices.patch
   ] ++ optionals stdenv.hostPlatform.isMusl [
     ./quark_init_on_demand.patch
     ./gobject_init_on_demand.patch
@@ -92,13 +93,23 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libelf setupHook pcre
     bash gnum4 # install glib-gettextize and m4 macros for other apps to use
-    gtk-doc
   ] ++ optionals stdenv.isLinux [
     libselinux
     util-linuxMinimal # for libmount
   ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
     AppKit Carbon Cocoa CoreFoundation CoreServices Foundation
-  ]);
+  ]) ++ optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
+    # Note: this needs to be both in buildInputs and nativeBuildInputs. The
+    # Meson gtkdoc module uses find_program to look it up (-> build dep), but
+    # glib's own Meson configuration uses the host pkg-config to find its
+    # version (-> host dep). We could technically go and fix this in glib, add
+    # pkg-config to depsBuildBuild, but this would be a futile exercise since
+    # Meson's gtkdoc integration does not support cross compilation[1] anyway
+    # and this derivation disables the docs build when cross compiling.
+    #
+    # [1] https://github.com/mesonbuild/meson/issues/2003
+    gtk-doc
+  ];
 
   strictDeps = true;
 
@@ -184,14 +195,14 @@ stdenv.mkDerivation rec {
     makeSchemaPath = dir: name: "${dir}/share/gsettings-schemas/${name}/glib-2.0/schemas";
     getSchemaPath = pkg: makeSchemaPath pkg pkg.name;
     inherit flattenInclude;
-    updateScript = gnome3.updateScript { packageName = "glib"; };
+    updateScript = gnome.updateScript { packageName = "glib"; };
   };
 
   meta = with lib; {
     description = "C library of programming buildings blocks";
     homepage    = "https://www.gtk.org/";
     license     = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ lovek323 raskin worldofpeace ];
+    maintainers = teams.gnome.members ++ (with maintainers; [ lovek323 raskin ]);
     platforms   = platforms.unix;
 
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch b/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch
new file mode 100644
index 000000000000..dcc0a8998cc3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch
@@ -0,0 +1,11 @@
+--- a/meson.build.orig	2020-11-25 13:47:38.499149252 +0900
++++ b/meson.build	2020-11-25 13:48:47.098444800 +0900
+@@ -742,7 +742,7 @@
+ 
+   if glib_have_carbon
+     glib_conf.set('HAVE_CARBON', true)
+-    osx_ldflags += '-Wl,-framework,Carbon'
++    osx_ldflags += ['-Wl,-framework,Carbon', '-Wl,-framework,CoreServices']
+     glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h>
+                                                   #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
+                                                   #error Compiling for minimum OS X version before 10.9
diff --git a/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz b/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
index bcf4d13443cf..2fda4294130a 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
+++ b/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
Binary files differdiff --git a/nixpkgs/pkgs/development/libraries/glibc/common.nix b/nixpkgs/pkgs/development/libraries/glibc/common.nix
index 7a83ffd36d74..888548d79f03 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/common.nix
+++ b/nixpkgs/pkgs/development/libraries/glibc/common.nix
@@ -32,7 +32,7 @@
 , python3Minimal
 }:
 
-{ name
+{ pname
 , withLinuxHeaders ? false
 , profilingLibraries ? false
 , withGd ? false
@@ -42,7 +42,7 @@
 
 let
   version = "2.32";
-  patchSuffix = "-40";
+  patchSuffix = "-46";
   sha256 = "0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn";
 in
 
@@ -50,7 +50,7 @@ assert withLinuxHeaders -> linuxHeaders != null;
 assert withGd -> gd != null && libpng != null;
 
 stdenv.mkDerivation ({
-  inherit version;
+  version = version + patchSuffix;
   linuxHeaders = if withLinuxHeaders then linuxHeaders else null;
 
   inherit (stdenv) is64bit;
@@ -61,7 +61,7 @@ stdenv.mkDerivation ({
     [
       /* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
           $ git fetch --all -p && git checkout origin/release/2.32/master && git describe
-          glibc-2.32-40-g778b8d3786
+          glibc-2.32-46-g1799ac8eab
           $ git show --minimal --reverse glibc-2.32.. | gzip -9n --rsyncable - > 2.32-master.patch.gz
 
          To compare the archive contents zdiff can be used.
@@ -187,14 +187,13 @@ stdenv.mkDerivation ({
   # bootstrap.
   BASH_SHELL = "/bin/sh";
 
+  # Used by libgcc, elf-header, and others to determine ABI
   passthru = { inherit version; };
 }
 
 // (removeAttrs args [ "withLinuxHeaders" "withGd" ]) //
 
 {
-  name = name + "-${version}${patchSuffix}";
-
   src = fetchurl {
     url = "mirror://gnu/glibc/glibc-${version}.tar.xz";
     inherit sha256;
@@ -227,6 +226,28 @@ stdenv.mkDerivation ({
     libc_cv_c_cleanup=yes
     libc_cv_gnu89_inline=yes
     EOF
+
+    # ./configure has logic like
+    #
+    #     AR=`$CC -print-prog-name=ar`
+    #
+    # This searches various directories in the gcc and its wrapper. In nixpkgs,
+    # this returns the bare string "ar", which is build ar. This can result as
+    # a build failure with the following message:
+    #
+    #     libc_pic.a: error adding symbols: archive has no index; run ranlib to add one
+    #
+    # (Observed cross compiling from aarch64-linux -> armv7l-linux).
+    #
+    # Nixpkgs passes a correct value for AR and friends, so to use the correct
+    # set of tools, we only need to delete this special handling.
+    sed -i \
+      -e '/^AR=/d' \
+      -e '/^AS=/d' \
+      -e '/^LD=/d' \
+      -e '/^OBJCOPY=/d' \
+      -e '/^OBJDUMP=/d' \
+      $configureScript
   '';
 
   preBuild = lib.optionalString withGd "unset NIX_DONT_SET_RPATH";
diff --git a/nixpkgs/pkgs/development/libraries/glibc/default.nix b/nixpkgs/pkgs/development/libraries/glibc/default.nix
index 9043c8fd0d4f..caaacfe4f436 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glibc/default.nix
@@ -14,7 +14,7 @@ let
 in
 
 callPackage ./common.nix { inherit stdenv; } {
-    name = "glibc" + lib.optionalString withGd "-gd";
+    pname = "glibc" + lib.optionalString withGd "-gd";
 
     inherit withLinuxHeaders profilingLibraries withGd;
 
diff --git a/nixpkgs/pkgs/development/libraries/glibc/info.nix b/nixpkgs/pkgs/development/libraries/glibc/info.nix
index 5cb004cc870d..7c4f3f63bf1c 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/info.nix
+++ b/nixpkgs/pkgs/development/libraries/glibc/info.nix
@@ -1,7 +1,7 @@
 { callPackage, texinfo, perl }:
 
 callPackage ./common.nix {} {
-  name = "glibc-info";
+  pname = "glibc-info";
 
   outputs = [ "out" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/glibc/locales.nix b/nixpkgs/pkgs/development/libraries/glibc/locales.nix
index 238cebf6209f..325e0d09936b 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/locales.nix
+++ b/nixpkgs/pkgs/development/libraries/glibc/locales.nix
@@ -11,7 +11,7 @@
 }:
 
 callPackage ./common.nix { inherit stdenv; } {
-  name = "glibc-locales";
+  pname = "glibc-locales";
 
   builder = ./locales-builder.sh;
 
diff --git a/nixpkgs/pkgs/development/libraries/glibmm/2.68.nix b/nixpkgs/pkgs/development/libraries/glibmm/2.68.nix
new file mode 100644
index 000000000000..db713cf9ea5f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/glibmm/2.68.nix
@@ -0,0 +1,59 @@
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, gnum4
+, glib
+, libsigcxx30
+, gnome
+, Cocoa
+, meson
+, ninja
+}:
+
+stdenv.mkDerivation rec {
+  pname = "glibmm";
+  version = "2.68.1";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "sha256-ZmTifJqcyoHCnjVof0ny4NFzovyemMNCgxH3B9tTL4w=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    pkg-config
+    ninja
+    gnum4
+    glib # for glib-compile-schemas
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    Cocoa
+  ];
+
+  propagatedBuildInputs = [
+    glib
+    libsigcxx30
+  ];
+
+  doCheck = false; # fails. one test needs the net, another /etc/fstab
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "glibmm_2_68";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "C++ interface to the GLib library";
+    homepage = "https://gtkmm.org/";
+    license = licenses.lgpl2Plus;
+    maintainers = teams.gnome.members ++ (with maintainers; [ raskin ]);
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/glibmm/default.nix b/nixpkgs/pkgs/development/libraries/glibmm/default.nix
index a9abfbd17764..344fcb43eba0 100644
--- a/nixpkgs/pkgs/development/libraries/glibmm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glibmm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gnum4, glib, libsigcxx, gnome3, darwin, meson, ninja }:
+{ lib, stdenv, fetchurl, pkg-config, gnum4, glib, libsigcxx, gnome, darwin, meson, ninja }:
 
 stdenv.mkDerivation rec {
   pname = "glibmm";
@@ -24,13 +24,12 @@ stdenv.mkDerivation rec {
   ]);
   propagatedBuildInputs = [ glib libsigcxx ];
 
-  enableParallelBuilding = true;
-
   doCheck = false; # fails. one test needs the net, another /etc/fstab
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gmp/6.x.nix b/nixpkgs/pkgs/development/libraries/gmp/6.x.nix
index bf03bf08779b..177c15670526 100644
--- a/nixpkgs/pkgs/development/libraries/gmp/6.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gmp/6.x.nix
@@ -46,7 +46,7 @@ let self = stdenv.mkDerivation rec {
     # to build a .dll on windows, we need --disable-static + --enable-shared
     # see https://gmplib.org/manual/Notes-for-Particular-Systems.html
     ++ optional (!withStatic && stdenv.hostPlatform.isWindows) "--disable-static --enable-shared"
-    ;
+    ++ optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "--disable-assembly";
 
   doCheck = true; # not cross;
 
diff --git a/nixpkgs/pkgs/development/libraries/gnome-menus/default.nix b/nixpkgs/pkgs/development/libraries/gnome-menus/default.nix
index c8e77148c6d8..0b3d6689cb0b 100644
--- a/nixpkgs/pkgs/development/libraries/gnome-menus/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnome-menus/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gettext, glib, gobject-introspection, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, gettext, glib, gobject-introspection, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-menus";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib gobject-introspection ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix b/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
index ab71b2ccf9a9..2d349181deed 100644
--- a/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -20,7 +20,7 @@
 , libsoup
 , docbook-xsl-nons
 , docbook_xml_dtd_412
-, gnome3
+, gnome
 , gcr
 , libkrb5
 , gvfs
@@ -30,7 +30,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-online-accounts";
-  version = "3.38.1";
+  version = "3.40.0";
 
   # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87
   src = fetchFromGitLab {
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "gnome-online-accounts";
     rev = version;
-    sha256 = "sha256-th7P++MC3GXX+349PJFEwHGGeMhxsGgoEDGnSYpY7E4=";
+    sha256 = "sha256-GuUWypfmfbovpDKnj6wSBuNeKJIfIyipY+01u/p4znU=";
   };
 
   outputs = [ "out" "man" "dev" "devdoc" ];
@@ -46,7 +46,6 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dfedora=false" # not useful in NixOS or for NixOS users.
     "-Dgtk_doc=true"
-    "-Dlastfm=true"
     "-Dman=true"
     "-Dmedia_server=true"
   ];
@@ -90,7 +89,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/gnome-video-effects/default.nix b/nixpkgs/pkgs/development/libraries/gnome-video-effects/default.nix
index a2206c19b1b4..e8fd3ca7e2c2 100644
--- a/nixpkgs/pkgs/development/libraries/gnome-video-effects/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnome-video-effects/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , gettext
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_gir_path.patch b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_gir_path.patch
index d4160b51d68c..f74a7af1cff4 100644
--- a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_gir_path.patch
+++ b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_gir_path.patch
@@ -1,8 +1,10 @@
+diff --git a/gir/cairo-1.0.gir.in b/gir/cairo-1.0.gir.in
+index e4c9fb3d..3351b184 100644
 --- a/gir/cairo-1.0.gir.in
 +++ b/gir/cairo-1.0.gir.in
-@@ -5,7 +5,7 @@
-             xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
+@@ -6,7 +6,7 @@
    <package name="@CAIRO_GIR_PACKAGE@"/>
+   <c:include name="cairo-gobject.h"/>
    <namespace name="cairo" version="1.0"
 -	     shared-library="@CAIRO_SHARED_LIBRARY@"
 +	     shared-library="@cairoLib@/@CAIRO_SHARED_LIBRARY@"
diff --git a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
index 775c29855301..c02330adf6d1 100644
--- a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
+++ b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
@@ -40,7 +40,7 @@
  def _get_option_parser():
      parser = optparse.OptionParser('%prog [options] sources',
                                     version='%prog ' + giscanner.__version__)
-@@ -205,6 +238,10 @@ match the namespace prefix.""")
+@@ -214,6 +247,10 @@ match the namespace prefix.""")
      parser.add_option("", "--filelist",
                        action="store", dest="filelist", default=[],
                        help="file containing headers and sources to be scanned")
@@ -66,7 +66,7 @@
  # This is a what we do for non-la files. We assume that we are on an
  # ELF-like system where ldd exists and the soname extracted with ldd is
  # a filename that can be opened with dlopen().
-@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries):
+@@ -108,7 +114,8 @@ def _resolve_non_libtool(options, binary, libraries):
              output = output.decode("utf-8", "replace")
  
          shlibs = resolve_from_ldd_output(libraries, output)
@@ -76,7 +76,7 @@
  
  
  def sanitize_shlib_path(lib):
-@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib):
+@@ -117,19 +124,18 @@ def sanitize_shlib_path(lib):
      # In case we get relative paths on macOS (like @rpath) then we fall
      # back to the basename as well:
      # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
@@ -101,7 +101,7 @@
      if len(patterns) == 0:
          return []
  
-@@ -139,8 +145,11 @@ def resolve_from_ldd_output(libraries, output):
+@@ -141,8 +147,11 @@ def resolve_from_ldd_output(libraries, output):
          if line.endswith(':'):
              continue
          for word in line.split():
@@ -117,7 +117,7 @@
                      shlibs.append(m.group())
 --- a/giscanner/utils.py
 +++ b/giscanner/utils.py
-@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file):
+@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
      if dlname is None:
          return None
  
@@ -129,8 +129,7 @@
 -        if libdir is None:
 -            return dlbasename
 -        return libdir + '/' + dlbasename
--    # From the comments in extract_libtool(), older libtools had
--    # a path rather than the raw dlname
+-    # Older libtools had a path rather than the raw dlname
 -    return os.path.basename(dlname)
 +    dlbasename = os.path.basename(dlname)
 +    libdir = _extract_libdir_field(la_file)
@@ -139,7 +138,7 @@
 +    return libdir + '/' + dlbasename
  
  
- def extract_libtool(la_file):
+ # Returns arguments for invoking libtool, if applicable, otherwise None
 --- a/tests/scanner/test_shlibs.py
 +++ b/tests/scanner/test_shlibs.py
 @@ -7,6 +7,30 @@ from giscanner.shlibs import resolve_from_ldd_output, sanitize_shlib_path
diff --git a/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix b/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
index ae65f5aed280..e6a1ad979b91 100644
--- a/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
@@ -14,7 +14,7 @@
 , python3
 , cctools
 , cairo
-, gnome3
+, gnome
 , substituteAll
 , nixStoreDir ? builtins.storeDir
 , x11Support ? true
@@ -26,7 +26,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gobject-introspection";
-  version = "1.66.1";
+  version = "1.68.0";
 
   # outputs TODO: share/gobject-introspection-1.0/tests is needed during build
   # by pygobject3 (and maybe others), but it's only searched in $out
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "078n0q7b6z682mf4irclrksm73cyixq295mqnqifl9plwmgaai6x";
+    sha256 = "09sawnv3xj9pzgy2qrrk87dl3jibfphnswb61i5bh0d2h4j28afj";
   };
 
   patches = [
@@ -112,8 +112,9 @@ stdenv.mkDerivation rec {
   setupHook = ./setup-hook.sh;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/goffice/default.nix b/nixpkgs/pkgs/development/libraries/goffice/default.nix
index 64b5be2e2d33..3a48fa524842 100644
--- a/nixpkgs/pkgs/development/libraries/goffice/default.nix
+++ b/nixpkgs/pkgs/development/libraries/goffice/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, lib, stdenv, pkg-config, intltool, glib, gtk3, lasem
-, libgsf, libxml2, libxslt, cairo, pango, librsvg, gnome3 }:
+, libgsf, libxml2, libxslt, cairo, pango, librsvg, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "goffice";
@@ -24,8 +24,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gom/default.nix b/nixpkgs/pkgs/development/libraries/gom/default.nix
index 4b5effefa57c..d11ecc6a29a5 100644
--- a/nixpkgs/pkgs/development/libraries/gom/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gom/default.nix
@@ -7,7 +7,7 @@
 , python3
 , sqlite
 , gdk-pixbuf
-, gnome3
+, gnome
 , gobject-introspection
 }:
 
@@ -48,8 +48,9 @@ stdenv.mkDerivation rec {
   doCheck = stdenv.isx86_64;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/goocanvas/default.nix b/nixpkgs/pkgs/development/libraries/goocanvas/default.nix
index c9fd5b263429..1bc763349a86 100644
--- a/nixpkgs/pkgs/development/libraries/goocanvas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/goocanvas/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, gtk2, cairo, glib, pkg-config, gnome3 }:
+{ lib, stdenv, fetchurl, gtk2, cairo, glib, pkg-config, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "goocanvas";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gtk2 cairo glib ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/goocanvasmm/default.nix b/nixpkgs/pkgs/development/libraries/goocanvasmm/default.nix
index 632e434631c9..4e706f409870 100644
--- a/nixpkgs/pkgs/development/libraries/goocanvasmm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/goocanvasmm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, goocanvas2, gtkmm3, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, goocanvas2, gtkmm3, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "goocanvasmm";
@@ -16,9 +16,10 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "goocanvasmm2";
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/graphene/0001-meson-add-options-for-tests-installation-dirs.patch b/nixpkgs/pkgs/development/libraries/graphene/0001-meson-add-options-for-tests-installation-dirs.patch
index 51bc206659d5..9111217ea08e 100644
--- a/nixpkgs/pkgs/development/libraries/graphene/0001-meson-add-options-for-tests-installation-dirs.patch
+++ b/nixpkgs/pkgs/development/libraries/graphene/0001-meson-add-options-for-tests-installation-dirs.patch
@@ -1,18 +1,18 @@
-From 2bf6614a6d7516e194e39eb691c05b486860153c Mon Sep 17 00:00:00 2001
+From 57bed86429db9d871f1442c94f14e94e38972ca3 Mon Sep 17 00:00:00 2001
 From: worldofpeace <worldofpeace@protonmail.ch>
 Date: Thu, 16 May 2019 21:15:15 -0400
 Subject: [PATCH] meson: add options for tests installation dirs
 
 ---
  meson_options.txt |  6 ++++++
- tests/meson.build | 19 ++++++++++++++-----
- 2 files changed, 20 insertions(+), 5 deletions(-)
+ tests/meson.build | 23 ++++++++++++++++-------
+ 2 files changed, 22 insertions(+), 7 deletions(-)
 
 diff --git a/meson_options.txt b/meson_options.txt
-index 578bdae..6f5fa23 100644
+index b9a2fb5..4b8629f 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -22,3 +22,9 @@ option('tests', type: 'boolean',
+@@ -23,3 +23,9 @@ option('tests', type: 'boolean',
  option('installed_tests', type: 'boolean',
         value: true,
         description: 'Install tests')
@@ -23,12 +23,12 @@ index 578bdae..6f5fa23 100644
 +       value: '',
 +       description: 'Installation directory for binary files in tests')
 diff --git a/tests/meson.build b/tests/meson.build
-index 1f9bd0e..0253ac3 100644
+index 77281f5..7522456 100644
 --- a/tests/meson.build
 +++ b/tests/meson.build
-@@ -22,8 +22,17 @@ unit_tests = [
- python = python3.find_python()
- gen_installed_test = join_paths(meson.current_source_dir(), 'gen-installed-test.py')
+@@ -21,8 +21,17 @@ unit_tests = [
+ 
+ gen_installed_test = find_program('gen-installed-test.py')
  
 -installed_test_datadir = join_paths(get_option('prefix'), get_option('datadir'), 'installed-tests', graphene_api_path)
 -installed_test_bindir = join_paths(get_option('prefix'), get_option('libexecdir'), 'installed-tests', graphene_api_path)
@@ -46,9 +46,9 @@ index 1f9bd0e..0253ac3 100644
  
  # Make tests conditional on having mutest-1 installed system-wide, or
  # available as a subproject
-@@ -42,13 +51,13 @@ if mutest_dep.found()
+@@ -40,13 +49,13 @@ if mutest_dep.found()
+       output: wrapper,
        command: [
-         python,
          gen_installed_test,
 -        '--testdir=@0@'.format(installed_test_bindir),
 +        '--testdir=@0@'.format(test_bindir),
@@ -62,7 +62,7 @@ index 1f9bd0e..0253ac3 100644
      )
  
      test(unit,
-@@ -57,7 +66,7 @@ if mutest_dep.found()
+@@ -55,7 +64,7 @@ if mutest_dep.found()
          include_directories: graphene_inc,
          c_args: common_cflags,
          install: get_option('installed_tests'),
@@ -71,6 +71,27 @@ index 1f9bd0e..0253ac3 100644
        ),
        env: ['MUTEST_OUTPUT=tap'],
        protocol: 'tap',
+@@ -66,17 +75,18 @@ endif
+ if build_gir and host_system == 'linux' and not meson.is_cross_build()
+   foreach unit: ['introspection.py']
+     wrapper = '@0@.test'.format(unit)
++    install_data(unit, install_dir: test_bindir)
+     custom_target(wrapper,
+       output: wrapper,
+       command: [
+         gen_installed_test,
+-        '--testdir=@0@'.format(installed_test_bindir),
++        '--testdir=@0@'.format(test_bindir),
+         '--testname=@0@'.format(unit),
+         '--outdir=@OUTDIR@',
+         '--outfile=@0@'.format(wrapper),
+       ],
+       install: get_option('installed_tests'),
+-      install_dir: installed_test_datadir,
++      install_dir: test_datadir,
+     )
+ 
+     test(unit,
 -- 
-2.22.0
+2.31.1
 
diff --git a/nixpkgs/pkgs/development/libraries/graphene/default.nix b/nixpkgs/pkgs/development/libraries/graphene/default.nix
index 57cad4497653..a8e0d1179826 100644
--- a/nixpkgs/pkgs/development/libraries/graphene/default.nix
+++ b/nixpkgs/pkgs/development/libraries/graphene/default.nix
@@ -12,11 +12,12 @@
 , docbook_xsl
 , docbook_xml_dtd_43
 , gobject-introspection
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
   pname = "graphene";
-  version = "1.10.2";
+  version = "1.10.6";
 
   outputs = [ "out" "devdoc" "installedTests" ];
 
@@ -24,19 +25,14 @@ stdenv.mkDerivation rec {
     owner = "ebassi";
     repo = pname;
     rev = version;
-    sha256 = "1ljhhjafi1nlndjswx7mg0d01zci90wz77yvz5w8bd9mm8ssw38s";
+    sha256 = "v6YH3fRMTzhp7wmU8in9ukcavzHmOAW54EK9ZwQyFxc=";
   };
 
   patches = [
+    # Add option for changing installation path of installed tests.
     ./0001-meson-add-options-for-tests-installation-dirs.patch
   ];
 
-  mesonFlags = [
-    "-Dgtk_doc=true"
-    "-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
-    "-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
-  ];
-
   nativeBuildInputs = [
     docbook_xml_dtd_43
     docbook_xsl
@@ -46,6 +42,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gobject-introspection
     python3
+    makeWrapper
   ];
 
   buildInputs = [
@@ -57,8 +54,24 @@ stdenv.mkDerivation rec {
     mutest
   ];
 
+  mesonFlags = [
+    "-Dgtk_doc=true"
+    "-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
+    "-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
+  ];
+
   doCheck = true;
 
+  postPatch = ''
+    patchShebangs tests/gen-installed-test.py
+    PATH=${python3.withPackages (pp: [ pp.pygobject3 pp.tappy ])}/bin:$PATH patchShebangs tests/introspection.py
+  '';
+
+  postFixup = ''
+    wrapProgram "${placeholder "installedTests"}/libexec/installed-tests/graphene-1.0/introspection.py" \
+      --prefix GI_TYPELIB_PATH : "$out/lib/girepository-1.0"
+  '';
+
   passthru = {
     tests = {
       installedTests = nixosTests.installed-tests.graphene;
@@ -73,7 +86,7 @@ stdenv.mkDerivation rec {
     description = "A thin layer of graphic data types";
     homepage = "https://ebassi.github.com/graphene";
     license = licenses.mit;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = teams.gnome.members ++ (with maintainers; [ ]);
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/grilo-plugins/default.nix b/nixpkgs/pkgs/development/libraries/grilo-plugins/default.nix
index b80e6256e467..13ec503fae0e 100644
--- a/nixpkgs/pkgs/development/libraries/grilo-plugins/default.nix
+++ b/nixpkgs/pkgs/development/libraries/grilo-plugins/default.nix
@@ -10,7 +10,7 @@
 , librest
 , libarchive
 , libsoup
-, gnome3
+, gnome
 , libxml2
 , lua5_3
 , liboauth
@@ -31,11 +31,11 @@
 
 stdenv.mkDerivation rec {
   pname = "grilo-plugins";
-  version = "0.3.12";
+  version = "0.3.13";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0xr59gzb8gw2bgj14mjllgn8y7srh373j0fp0v16ak8nd84dzdn6";
+    sha256 = "HEMF1nNkqTBUODbMGYLzDpRpc7j/avPv4x2HcJq1IPg=";
   };
 
   patches = [
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/grilo/default.nix b/nixpkgs/pkgs/development/libraries/grilo/default.nix
index fbab49273e82..1b8c46394da3 100644
--- a/nixpkgs/pkgs/development/libraries/grilo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/grilo/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, vala, glib, liboauth, gtk3
 , gtk-doc, docbook_xsl, docbook_xml_dtd_43
-, libxml2, gnome3, gobject-introspection, libsoup, totem-pl-parser }:
+, libxml2, gnome, gobject-introspection, libsoup, totem-pl-parser }:
 
 let
   pname = "grilo";
@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
   buildInputs = [ glib liboauth gtk3 libxml2 libsoup totem-pl-parser ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/grpc/default.nix b/nixpkgs/pkgs/development/libraries/grpc/default.nix
index 9dd5150f17d5..8a44c7bc13da 100644
--- a/nixpkgs/pkgs/development/libraries/grpc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/grpc/default.nix
@@ -3,13 +3,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.37.0"; # N.B: if you change this, change pythonPackages.grpcio-tools to a matching version too
+  version = "1.38.0"; # N.B: if you change this, change pythonPackages.grpcio-tools to a matching version too
   pname = "grpc";
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc";
     rev = "v${version}";
-    sha256 = "0q3hcnq351j0qm0gsbaxbsnz1gd9w3bk4cazkvq4l2lfmmiw7z56";
+    sha256 = "0an903nh8lz3xlf79zsh2v55nrwnjzzavkjlrsl7j9aysgwmgn4r";
     fetchSubmodules = true;
   };
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
index 318d07dfacc8..e9814a43b244 100644
--- a/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
@@ -7,16 +7,16 @@
 , ninja
 , python3
   # just for passthru
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "gsettings-desktop-schemas";
-  version = "3.38.0";
+  version = "40.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0rwcg9sd5rv7gjwapcd1jjk6l16w0p3j7wkicq1rdch4c0kch12p";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "11an29br55dp0b26kfqlrfxj19glfrmhcdpds2n1w9n04gq3pf7i";
   };
 
   nativeBuildInputs = [
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/gsignond/default.nix b/nixpkgs/pkgs/development/libraries/gsignond/default.nix
index 92123dbc3ea5..912054eb85c3 100644
--- a/nixpkgs/pkgs/development/libraries/gsignond/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsignond/default.nix
@@ -54,7 +54,7 @@ unwrapped = stdenv.mkDerivation rec {
     description = "D-Bus service which performs user authentication on behalf of its clients";
     homepage = "https://gitlab.com/accounts-sso/gsignond";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 };
diff --git a/nixpkgs/pkgs/development/libraries/gsignond/plugins/lastfm.nix b/nixpkgs/pkgs/development/libraries/gsignond/plugins/lastfm.nix
index a05069f205fe..6141528a9fe6 100644
--- a/nixpkgs/pkgs/development/libraries/gsignond/plugins/lastfm.nix
+++ b/nixpkgs/pkgs/development/libraries/gsignond/plugins/lastfm.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles Last.FM credentials";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-lastfm";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gsignond/plugins/mail.nix b/nixpkgs/pkgs/development/libraries/gsignond/plugins/mail.nix
index 8bce32f976ab..977bc1489420 100644
--- a/nixpkgs/pkgs/development/libraries/gsignond/plugins/mail.nix
+++ b/nixpkgs/pkgs/development/libraries/gsignond/plugins/mail.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles E-Mail credentials";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-mail";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gsignond/plugins/oauth.nix b/nixpkgs/pkgs/development/libraries/gsignond/plugins/oauth.nix
index 3bf3ab194643..bc496e8ac2cc 100644
--- a/nixpkgs/pkgs/development/libraries/gsignond/plugins/oauth.nix
+++ b/nixpkgs/pkgs/development/libraries/gsignond/plugins/oauth.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles the OAuth 1.0 and 2.0 authentication protocols";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-oa";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gsignond/plugins/sasl.nix b/nixpkgs/pkgs/development/libraries/gsignond/plugins/sasl.nix
index b73559f8a532..bd87d4f72bb5 100644
--- a/nixpkgs/pkgs/development/libraries/gsignond/plugins/sasl.nix
+++ b/nixpkgs/pkgs/development/libraries/gsignond/plugins/sasl.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles the SASL authentication protocol";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-sasl";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gsl/default.nix b/nixpkgs/pkgs/development/libraries/gsl/default.nix
index 04c8bcbbbecc..2dc47a93be3c 100644
--- a/nixpkgs/pkgs/development/libraries/gsl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsl/default.nix
@@ -8,6 +8,10 @@ stdenv.mkDerivation rec {
     sha256 = "1a460zj9xmbgvcymkdhqh313c4l29mn9cffbi5vf33x3qygk70mp";
   };
 
+  preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) then ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '' else null;
+
   # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isx86_64 "-mno-fma";
 
diff --git a/nixpkgs/pkgs/development/libraries/gsound/default.nix b/nixpkgs/pkgs/development/libraries/gsound/default.nix
index 2a3e846d38d6..bcd39ce22733 100644
--- a/nixpkgs/pkgs/development/libraries/gsound/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsound/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, vala, libcanberra, gobject-introspection, libtool, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, glib, vala, libcanberra, gobject-introspection, libtool, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gsound";
@@ -13,8 +13,9 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib libcanberra ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gspell/default.nix b/nixpkgs/pkgs/development/libraries/gspell/default.nix
index 890fcb981181..f591246eaf81 100644
--- a/nixpkgs/pkgs/development/libraries/gspell/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gspell/default.nix
@@ -8,7 +8,7 @@
 , icu
 , vala
 , gobject-introspection
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gssdp/default.nix b/nixpkgs/pkgs/development/libraries/gssdp/default.nix
index 440caba25476..6a76c07fec7b 100644
--- a/nixpkgs/pkgs/development/libraries/gssdp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gssdp/default.nix
@@ -11,7 +11,7 @@
 , libsoup
 , gtk3
 , glib
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
index 40b10d0983ad..faf38a1a05fb 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , gettext
@@ -103,6 +104,15 @@ stdenv.mkDerivation rec {
   patches = [
     # Use pkgconfig to inject the includedirs
     ./fix_pkgconfig_includedir.patch
+  ] ++ lib.optionals stdenv.isDarwin [
+    # Fix “error: cannot initialize a parameter of type 'unsigned long *' with an rvalue of type 'typename std::remove_reference<decltype(*(&opencv_dilate_erode_type))>::type *' (aka 'volatile unsigned long *')” on Darwin.
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/commit/640a65bf966df065d41a511e2d76d1f26a2e770c.patch";
+      sha256 = "E5pig+qEfR58Jticr6ydFxZOhM3ZJ8zgrf5K4BdiB/Y=";
+      includes = [
+        "ext/opencv/gstcvdilateerode.cpp"
+      ];
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
index 4f392622065b..699f70a0788a 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
@@ -26,7 +26,7 @@
 , wayland
 , wayland-protocols
 , enableAlsa ? stdenv.isLinux
-, alsaLib
+, alsa-lib
 # Enabling Cocoa seems to currently not work, giving compile
 # errors. Suspected is that a newer version than clang
 # is needed than 5.0 but it is not clear.
@@ -41,13 +41,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-base";
-  version = "1.18.2";
+  version = "1.18.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1b05kg46azrxxvq42c71071lfsnc34pw4vynnkczdqi6g0gzn16x";
+    sha256 = "08w3ivbc6n4vdds2ap6q7l8zdk9if8417nznyqidf0adm0lk5r99";
   };
 
   patches = [
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
     pango
     OpenGL
   ] ++ lib.optionals enableAlsa [
-    alsaLib
+    alsa-lib
   ] ++ lib.optionals enableX11 [
     libXext
     libXv
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
index 84badf304108..2d43a02725f9 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
@@ -21,7 +21,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gstreamer";
-  version = "1.18.2";
+  version = "1.18.4";
 
   outputs = [
     "out"
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0ijlmvr660m8zn09xlmnq1ajrziqsivp2hig5a9mabhcjx7ypkb6";
+    sha256 = "1igv9l4hm21kp1jmlwlagzs7ly1vaxv1sbda29q8247372dwkvls";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
index a39eadafb0b7..517fe9b302d3 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-devtools";
-  version = "1.18.2";
+  version = "1.18.4";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0mhascwvgirgh7b5dykpnk06f7f5g62gh3sl30i6kygiidqkv9vf";
+    sha256 = "1kvcabcfzm7wqih3lzgrg9xjbn4xpx43d1m2zkkvab4i8161kggz";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
index 774fefbc3584..6ada053ea012 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -16,7 +16,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-editing-services";
-  version = "1.18.2";
+  version = "1.18.4";
 
   outputs = [
     "out"
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0pv2k8zlpn3vv2sdlspi3m63ixcwzi90pjly2ypbkg59ab97rb15";
+    sha256 = "010xg960qsh5dwmf0y9l1q13h0cymmrgapzla2zsw66ylxqbi1s6";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/good/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/good/default.nix
index b08759b8dba1..86684893efd3 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/good/default.nix
@@ -48,13 +48,13 @@ assert raspiCameraSupport -> (stdenv.isLinux && stdenv.isAarch64);
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-good";
-  version = "1.18.2";
+  version = "1.18.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1929nhjsvbl4bw37nfagnfsnxz737cm2x3ayz9ayrn9lwkfm45zp";
+    sha256 = "1c1rpq709cy8maaykyn1n0kckj9c6fl3mhvixkk6xmdwkcx0xrdn";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/gstreamermm/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/gstreamermm/default.nix
index 2c683a84da4d..7123aa0d3ac1 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/gstreamermm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/gstreamermm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, file, glibmm, gst_all_1, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, file, glibmm, gst_all_1, gnome }:
 stdenv.mkDerivation rec {
   pname = "gstreamermm";
   version = "1.10.0";
@@ -17,9 +17,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
-      packageName = pname;
-      versionPolicy = "none"; # Unpredictable version stability
+    updateScript = gnome.updateScript {
+      packageName = "gst_all_1.gstreamermm";
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/libav/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/libav/default.nix
index f0755f201d48..009a1555f770 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/libav/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/libav/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-libav";
-  version = "1.18.2";
+  version = "1.18.4";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0jbzams9ggk3sq9ywv4gsl9rghyn203l2582m6l5c1sz9ka9m5in";
+    sha256 = "15n3x3vhshqa3icw93g4vqmqd46122anzqvfxwn6q8famlxlcjil";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
index 037face3d128..56596960019b 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-rtsp-server";
-  version = "1.18.2";
+  version = "1.18.4";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1qjlp7az0hkzxvq53hwnp55sp6xhbybfwzaj66hp45jslsmj4fcp";
+    sha256 = "153c78klvzlmi86d0gmdf7w9crv11rkd4y82b14a0wdr83gbhsx4";
   };
 
   outputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/ugly/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/ugly/default.nix
index 7c70b7ead1ab..049e8a99f095 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-ugly";
-  version = "1.18.2";
+  version = "1.18.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1nwbcv5yaib3d8icvyja3zf6lyjf5zf1hndbijrhj8j7xlia0dx3";
+    sha256 = "0g6i4db1883q3j0l2gdv46fcqwiiaw63n6mhvsfcms1i1p7g1391";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/vaapi/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/vaapi/default.nix
index 2c92cd2236ff..19e65c5a75eb 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/vaapi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/vaapi/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gstreamer-vaapi";
-  version = "1.18.2";
+  version = "1.18.4";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1h67n7wk1297rzynknbyv44gdacblvkcvb37x8yxi5d0zms2qywc";
+    sha256 = "1sia4l88z7kkxm2z9j20l43rqkrnsa47xccski10s5gkhsprinwj";
   };
 
   outputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gtk-engine-bluecurve/default.nix b/nixpkgs/pkgs/development/libraries/gtk-engine-bluecurve/default.nix
index 84920060c5ea..918e1679eba2 100644
--- a/nixpkgs/pkgs/development/libraries/gtk-engine-bluecurve/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk-engine-bluecurve/default.nix
@@ -16,6 +16,6 @@ stdenv.mkDerivation {
     description = "Original Bluecurve engine from Red Hat's artwork package";
     license = lib.licenses.gpl2;
     platforms = lib.platforms.linux;
-    maintainers = [ lib.maintainers.gnidorah ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gtk-frdp/default.nix b/nixpkgs/pkgs/development/libraries/gtk-frdp/default.nix
new file mode 100644
index 000000000000..e6c6d9391933
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/gtk-frdp/default.nix
@@ -0,0 +1,54 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, vala
+, gobject-introspection
+, glib
+, gtk3
+, freerdp
+, nix-update-script
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gtk-frdp";
+  version = "3.37.1-unstable-2020-10-26";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME";
+    repo = pname;
+    rev = "805721e82ca1df6a50da3b5bd3b75d6747016482";
+    sha256 = "q/UFKYj3LUkAzll3KeKd6oec0GJnDtTuFMTTatKFlcs=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    vala
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    freerdp
+  ];
+
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = pname;
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://gitlab.gnome.org/GNOME/gtk-frdp";
+    description = "RDP viewer widget for GTK";
+    maintainers = teams.gnome.members;
+    license = licenses.lgpl3Plus;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix b/nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix
index 1e7c86530658..f35f5e0552c4 100644
--- a/nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk-sharp/2.0.nix
@@ -20,6 +20,7 @@
 , automake
 , libtool
 , which
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -34,6 +35,13 @@ stdenv.mkDerivation rec {
     sha256 = "1vy6yfwkfv6bb45bzf4g6dayiqkvqqvlr02rsnhd10793hlpqlgg";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://projects.archlinux.de/svntogit/packages.git/plain/trunk/gtk-sharp2-2.12.12-gtkrange.patch?h=packages/gtk-sharp-2";
+      sha256 = "bjx+OfgWnN8SO82p8G7pbGuxJ9EeQxMLeHnrtEm8RV8=";
+    })
+  ];
+
   postInstall = ''
     pushd $out/bin
     for f in gapi2-*
diff --git a/nixpkgs/pkgs/development/libraries/gtk-sharp/3.0.nix b/nixpkgs/pkgs/development/libraries/gtk-sharp/3.0.nix
index 491656a0c682..6b996244a9f3 100644
--- a/nixpkgs/pkgs/development/libraries/gtk-sharp/3.0.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk-sharp/3.0.nix
@@ -42,6 +42,12 @@ stdenv.mkDerivation rec {
       url = "https://github.com/mono/gtk-sharp/commit/401df51bc461de93c1a78b6a7a0d5adc63cf186c.patch";
       sha256 = "0hrkcr5a7wkixnyp60v4d6j3arsb63h54rd30lc5ajfjb3p92kcf";
     })
+    # @see https://github.com/mono/gtk-sharp/pull/263
+    (fetchpatch {
+      name = "disambiguate_Gtk.Range.patch";
+      url = "https://github.com/mono/gtk-sharp/commit/a00552ad68ae349e89e440dca21b86dbd6bccd30.patch";
+      sha256 = "1ylplr9g9x7ybsgrydsgr6p3g7w6i46yng1hnl3afgn4vj45rag2";
+    })
   ];
 
   dontStrip = true;
diff --git a/nixpkgs/pkgs/development/libraries/gtk/2.x.nix b/nixpkgs/pkgs/development/libraries/gtk/2.x.nix
index 8f50c922f514..1a7cc57fbeaf 100644
--- a/nixpkgs/pkgs/development/libraries/gtk/2.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk/2.x.nix
@@ -1,15 +1,12 @@
 { config, lib, substituteAll, stdenv, fetchurl, pkg-config, gettext, glib, atk, pango, cairo, perl, xorg
 , gdk-pixbuf, xlibsWrapper, gobject-introspection
 , xineramaSupport ? stdenv.isLinux
-, cupsSupport ? config.gtk2.cups or stdenv.isLinux, cups ? null
+, cupsSupport ? config.gtk2.cups or stdenv.isLinux, cups
 , gdktarget ? if stdenv.isDarwin then "quartz" else "x11"
 , AppKit, Cocoa
 , fetchpatch
 }:
 
-assert xineramaSupport -> xorg.libXinerama != null;
-assert cupsSupport -> cups != null;
-
 with lib;
 
 let
@@ -64,6 +61,10 @@ stdenv.mkDerivation rec {
     ++ optionals cupsSupport [ cups ]
     ++ optionals stdenv.isDarwin [ AppKit Cocoa ];
 
+  preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) then ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '' else null;
+
   configureFlags = [
     "--with-gdktarget=${gdktarget}"
     "--with-xinput=yes"
diff --git a/nixpkgs/pkgs/development/libraries/gtk/3.x.nix b/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
index 0d4bec5f3441..f9b5d5f68b56 100644
--- a/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
@@ -29,7 +29,7 @@
 , libxkbcommon
 , libxml2
 , gmp
-, gnome3
+, gnome
 , gsettings-desktop-schemas
 , sassc
 , trackerSupport ? stdenv.isLinux
@@ -42,14 +42,12 @@
 , xineramaSupport ? stdenv.isLinux
 , cupsSupport ? stdenv.isLinux
 , withGtkDoc ? stdenv.isLinux
-, cups ? null
+, cups
 , AppKit
 , Cocoa
 , broadwaySupport ? true
 }:
 
-assert cupsSupport -> cups != null;
-
 let
 
   gtkCleanImmodulesCache = substituteAll {
@@ -208,7 +206,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gtk+";
       attrPath = "gtk3";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gtk/4.x.nix b/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
index b64b8bc36fde..8791d24ad361 100644
--- a/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
@@ -5,9 +5,7 @@
 , pkg-config
 , gettext
 , graphene
-, docbook-xsl-nons
-, docbook_xml_dtd_43
-, gtk-doc
+, gi-docgen
 , meson
 , ninja
 , python3
@@ -30,7 +28,7 @@
 , libsoup
 , ffmpeg
 , gmp
-, gnome3
+, gnome
 , gsettings-desktop-schemas
 , gst_all_1
 , sassc
@@ -45,15 +43,12 @@
 , wayland-protocols
 , xineramaSupport ? stdenv.isLinux
 , cupsSupport ? stdenv.isLinux
-, withGtkDoc ? stdenv.isLinux
-, cups ? null
+, cups
 , AppKit
 , Cocoa
 , broadwaySupport ? true
 }:
 
-assert cupsSupport -> cups != null;
-
 let
 
   gtkCleanImmodulesCache = substituteAll {
@@ -66,9 +61,9 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gtk4";
-  version = "4.0.3";
+  version = "4.2.1";
 
-  outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc";
+  outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
   outputBin = "dev";
 
   setupHooks = [
@@ -78,7 +73,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
-    sha256 = "18mJNyV5C1C9mjuyeIVtnVQ7RLa5uVHXtg573swTGJA=";
+    sha256 = "AjFpd13kPwof3gZvvBnXhUXqanViwZFavem4rkpzCeY=";
   };
 
   nativeBuildInputs = [
@@ -90,21 +85,17 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     sassc
-  ] ++ setupHooks ++ lib.optionals withGtkDoc [
-    pandoc
-    docbook_xml_dtd_43
-    docbook-xsl-nons
-    gtk-doc
-    # For xmllint
-    libxml2
-  ];
+    gi-docgen
+  ] ++ setupHooks;
 
   buildInputs = [
     libxkbcommon
     epoxy
     json-glib
     isocodes
+  ] ++ lib.optionals (!stdenv.isDarwin) [
     vulkan-headers
+  ] ++ [
     librest
     libsoup
     ffmpeg
@@ -143,18 +134,27 @@ stdenv.mkDerivation rec {
     glib
     graphene
     pango
-    vulkan-loader # TODO: Possibly not used on Darwin
-
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    vulkan-loader
+  ] ++ [
     # Required for GSettings schemas at runtime.
     # Will be picked up by wrapGAppsHook.
     gsettings-desktop-schemas
   ];
 
   mesonFlags = [
-    "-Dgtk_doc=${lib.boolToString withGtkDoc}"
-    "-Dtests=false"
-    "-Dtracker3=${lib.boolToString trackerSupport}"
-    "-Dbroadway_backend=${lib.boolToString broadwaySupport}"
+    # ../docs/tools/shooter.c:4:10: fatal error: 'cairo-xlib.h' file not found
+    "-Dgtk_doc=${lib.boolToString x11Support}"
+    "-Dbuild-tests=false"
+    "-Dtracker=${if trackerSupport then "enabled" else "disabled"}"
+    "-Dbroadway-backend=${lib.boolToString broadwaySupport}"
+  ] ++ lib.optionals (!cupsSupport) [
+    "-Dprint-cups=disabled"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "-Dvulkan=disabled"
+    "-Dmedia-gstreamer=disabled" # requires gstreamer-gl
+  ] ++ lib.optionals (!x11Support) [
+    "-Dx11-backend=false"
   ];
 
   doCheck = false; # needs X11
@@ -173,20 +173,12 @@ stdenv.mkDerivation rec {
       gdk/gen-gdk-gresources-xml.py
       gtk/gen-gtk-gresources-xml.py
       gtk/gentypefuncs.py
-      docs/reference/gtk/gtk-markdown-to-docbook
     )
 
     chmod +x ''${files[@]}
     patchShebangs ''${files[@]}
   '';
 
-  postBuild =  lib.optionalString withGtkDoc ''
-    # Meson not building `custom_target`s passed to `custom_files` argument of `gnome.gtkdoc` function
-    # as part of the `install` target. We have to build the docs manually first.
-    # https://github.com/mesonbuild/meson/issues/2831
-    ninja g{t,d,s}k4-doc
-  '';
-
   preInstall = ''
     OLD_PATH="$PATH"
     PATH="$PATH:$dev/bin" # so the install script finds gtk4-update-icon-cache
@@ -204,6 +196,13 @@ stdenv.mkDerivation rec {
     for f in $dev/bin/gtk4-encode-symbolic-svg; do
       wrapProgram $f --prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
     done
+
+  '' + lib.optionalString x11Support ''
+    # So that DevHelp can find this.
+    # TODO: Remove this with DevHelp 41.
+    mkdir -p "$devdoc/share/devhelp/books"
+    mv "$out/share/doc/"* "$devdoc/share/devhelp/books"
+    rmdir -p --ignore-fail-on-non-empty "$out/share/doc"
   '';
 
   # Wrap demos
@@ -217,7 +216,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gtk";
       attrPath = "gtk4";
     };
@@ -237,7 +236,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://www.gtk.org/";
     license = licenses.lgpl2Plus;
-    maintainers = with maintainers; [ raskin lethalman worldofpeace ];
+    maintainers = teams.gnome.members ++ (with maintainers; [ raskin ]);
     platforms = platforms.all;
     changelog = "https://gitlab.gnome.org/GNOME/gtk/-/raw/${version}/NEWS";
   };
diff --git a/nixpkgs/pkgs/development/libraries/gtkd/default.nix b/nixpkgs/pkgs/development/libraries/gtkd/default.nix
index a3aa18b058a2..eaf8a94d137e 100644
--- a/nixpkgs/pkgs/development/libraries/gtkd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkd/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, fetchpatch, atk, cairo, ldc, gdk-pixbuf, gnome3, gst_all_1, librsvg
+{ lib, stdenv, fetchzip, fetchpatch, atk, cairo, ldc, gdk-pixbuf, gnome, gst_all_1, librsvg
 , glib, gtk3, gtksourceview4, libgda, libpeas, pango, pkg-config, which, vte }:
 
 let
diff --git a/nixpkgs/pkgs/development/libraries/gtkmm/2.x.nix b/nixpkgs/pkgs/development/libraries/gtkmm/2.x.nix
index 521f4ca15f30..cf26e22da5bc 100644
--- a/nixpkgs/pkgs/development/libraries/gtkmm/2.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkmm/2.x.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
     license = lib.licenses.lgpl2Plus;
 
-    maintainers = with lib.maintainers; [ raskin vcunat ];
+    maintainers = with lib.maintainers; [ raskin ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gtkmm/3.x.nix b/nixpkgs/pkgs/development/libraries/gtkmm/3.x.nix
index 950e1a976a62..0f6811815f60 100644
--- a/nixpkgs/pkgs/development/libraries/gtkmm/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkmm/3.x.nix
@@ -1,12 +1,12 @@
-{ lib, stdenv, fetchurl, pkg-config, meson, ninja, python3, gtk3, glibmm, cairomm, pangomm, atkmm, epoxy, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, meson, ninja, python3, gtk3, glibmm, cairomm, pangomm, atkmm, epoxy, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gtkmm";
-  version = "3.24.3";
+  version = "3.24.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-YEl8T381TDvSVXSF8CVPi3tM9L68n+4L4mp3dE6s1DU=";
+    sha256 = "sha256-m+txw+kM/Pt5A5a1Hj9ecWmWZ1Hv1PPvlpcRS+O+Z0M=";
   };
 
   outputs = [ "out" "dev" ];
@@ -16,15 +16,14 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ glibmm gtk3 atkmm cairomm pangomm ];
 
-  enableParallelBuilding = true;
-
   # https://bugzilla.gnome.org/show_bug.cgi?id=764521
   doCheck = false;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "${pname}3";
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -45,7 +44,7 @@ stdenv.mkDerivation rec {
 
     license = licenses.lgpl2Plus;
 
-    maintainers = with maintainers; [ raskin vcunat ];
+    maintainers = with maintainers; [ raskin ];
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix b/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix
new file mode 100644
index 000000000000..50839568462f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix
@@ -0,0 +1,91 @@
+{ stdenv
+, lib
+, fetchurl
+, pkg-config
+, meson
+, ninja
+, python3
+, gtk4
+, glibmm_2_68
+, cairomm_1_16
+, pangomm_2_48
+, epoxy
+, gnome
+, makeFontsConf
+, xvfb-run
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gtkmm";
+  version = "4.0.1";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "sha256-iXPZvHhI4CyyBR4F8+46S6/+L+tK9KVIfw4xMu7AOIQ=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    python3
+  ];
+
+  buildInputs = [
+    epoxy
+  ];
+
+  propagatedBuildInputs = [
+    glibmm_2_68
+    gtk4
+    cairomm_1_16
+    pangomm_2_48
+  ];
+
+  checkInputs = [
+    xvfb-run
+  ];
+
+  # Tests require fontconfig.
+  FONTCONFIG_FILE = makeFontsConf {
+    fontDirectories = [ ];
+  };
+
+  doCheck = true;
+
+  checkPhase = ''
+    runHook preCheck
+
+    xvfb-run -s '-screen 0 800x600x24' \
+      meson test --print-errorlogs
+
+    runHook postCheck
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "${pname}4";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "C++ interface to the GTK graphical user interface library";
+    longDescription = ''
+      gtkmm is the official C++ interface for the popular GUI library
+      GTK.  Highlights include typesafe callbacks, and a
+      comprehensive set of widgets that are easily extensible via
+      inheritance.  You can create user interfaces either in code or
+      with the Glade User Interface designer, using libglademm.
+      There's extensive documentation, including API reference and a
+      tutorial.
+    '';
+    homepage = "https://gtkmm.org/";
+    license = licenses.lgpl2Plus;
+    maintainers = teams.gnome.members ++ (with maintainers; [ raskin ]);
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceview/3.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceview/3.x.nix
index 84a20154b13c..dce589dd6474 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceview/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceview/3.x.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, atk, cairo, glib, gtk3, pango, vala
-, libxml2, perl, intltool, gettext, gobject-introspection, dbus, xvfb_run, shared-mime-info }:
+, libxml2, perl, intltool, gettext, gobject-introspection, dbus, xvfb-run, shared-mime-info }:
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config intltool perl gobject-introspection vala ];
 
-  checkInputs = [ xvfb_run dbus ];
+  checkInputs = [ xvfb-run dbus ];
 
   buildInputs = [ atk cairo glib pango libxml2 gettext ];
 
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
index 9ead894e0d25..eb92586ce84a 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
@@ -1,32 +1,42 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, atk, cairo, glib, gtk3, pango, fribidi, vala
-, libxml2, perl, gettext, gnome3, gobject-introspection, dbus, xvfb_run, shared-mime-info
-, meson, ninja }:
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, meson
+, ninja
+, pkg-config
+, atk
+, cairo
+, glib
+, gtk3
+, pango
+, fribidi
+, vala
+, libxml2
+, perl
+, gettext
+, gnome
+, gobject-introspection
+, dbus
+, xvfb-run
+, shared-mime-info
+}:
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
   version = "4.8.1";
 
+  outputs = [ "out" "dev" ];
+
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
     sha256 = "0WPXG1/K+8Wx7sbdhB7b283dOnURzV/c/9hri7/mmsE=";
   };
 
-  propagatedBuildInputs = [
-    # Required by gtksourceview-4.0.pc
-    gtk3
-    # Used by gtk_source_language_manager_guess_language
-    shared-mime-info
-  ];
-
-  outputs = [ "out" "dev" ];
-
-  nativeBuildInputs = [ meson ninja pkg-config gettext perl gobject-introspection vala ];
-
-  checkInputs = [ xvfb_run dbus ];
-
-  buildInputs = [ atk cairo glib pango fribidi libxml2 ];
-
   patches = [
+    # By default, the library loads syntaxes from XDG_DATA_DIRS and user directory
+    # but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
+    # Since this is not generally true with Nix, let’s add $out/share unconditionally.
     ./4.x-nix_share_path.patch
 
     # fixes intermittent "gtksourceview-gresources.h: no such file" errors
@@ -37,27 +47,63 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  enableParallelBuilding = true;
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    perl
+    gobject-introspection
+    vala
+  ];
+
+  buildInputs = [
+    atk
+    cairo
+    glib
+    pango
+    fribidi
+    libxml2
+  ];
+
+  propagatedBuildInputs = [
+    # Required by gtksourceview-4.0.pc
+    gtk3
+    # Used by gtk_source_language_manager_guess_language
+    shared-mime-info
+  ];
+
+  checkInputs = [
+    xvfb-run
+    dbus
+  ];
 
   doCheck = stdenv.isLinux;
+
   checkPhase = ''
+    runHook preCheck
+
     XDG_DATA_DIRS="$XDG_DATA_DIRS:${shared-mime-info}/share" \
     xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
       --config-file=${dbus.daemon}/share/dbus-1/session.conf \
       meson test --no-rebuild --print-errorlogs
+
+    runHook postCheck
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gtksourceview";
       attrPath = "gtksourceview4";
+      versionPolicy = "odd-unstable";
     };
   };
 
   meta = with lib; {
+    description = "Source code editing widget for GTK";
     homepage = "https://wiki.gnome.org/Projects/GtkSourceView";
-    platforms = with platforms; linux ++ darwin;
-    license = licenses.lgpl21;
+    platforms = platforms.unix;
+    license = licenses.lgpl21Plus;
     maintainers = teams.gnome.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix
new file mode 100644
index 000000000000..fd4a420012c3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix
@@ -0,0 +1,99 @@
+{ lib
+, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, glib
+, pcre2
+, gtk4
+, pango
+, fribidi
+, vala
+, libxml2
+, perl
+, gettext
+, gnome
+, gobject-introspection
+, dbus
+, xvfb-run
+, shared-mime-info
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gtksourceview";
+  version = "5.0.0";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "1hyrmh9r1zd5kjh5ch9d7bhk2kphbqhm7ijfxfkcdln8q0rnd0k4";
+  };
+
+  patches = [
+    # By default, the library loads syntaxes from XDG_DATA_DIRS and user directory
+    # but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
+    # Since this is not generally true with Nix, let’s add $out/share unconditionally.
+    ./4.x-nix_share_path.patch
+  ];
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    perl
+    gobject-introspection
+    vala
+  ];
+
+  buildInputs = [
+    glib
+    pcre2
+    pango
+    fribidi
+    libxml2
+  ];
+
+  propagatedBuildInputs = [
+    # Required by gtksourceview-5.0.pc
+    gtk4
+    # Used by gtk_source_language_manager_guess_language
+    shared-mime-info
+  ];
+
+  checkInputs = [
+    xvfb-run
+    dbus
+  ];
+
+  doCheck = stdenv.isLinux;
+
+  checkPhase = ''
+    runHook preCheck
+
+    XDG_DATA_DIRS="$XDG_DATA_DIRS:${shared-mime-info}/share" \
+    xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
+      --config-file=${dbus.daemon}/share/dbus-1/session.conf \
+      meson test --no-rebuild --print-errorlogs
+
+    runHook postCheck
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = "gtksourceview";
+      attrPath = "gtksourceview5";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "Source code editing widget for GTK";
+    homepage = "https://wiki.gnome.org/Projects/GtkSourceView";
+    platforms = platforms.unix;
+    license = licenses.lgpl21Plus;
+    maintainers = teams.gnome.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceviewmm/4.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceviewmm/4.x.nix
index 5e80f91abc1b..3011a126c10d 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceviewmm/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceviewmm/4.x.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gtkmm3, glibmm, gtksourceview4, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, gtkmm3, glibmm, gtksourceview4, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gtksourceviewmm";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceviewmm/default.nix b/nixpkgs/pkgs/development/libraries/gtksourceviewmm/default.nix
index 7ee6b656ead1..fc4439e223ee 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceviewmm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceviewmm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gtkmm3, glibmm, gtksourceview3, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, gtkmm3, glibmm, gtksourceview3, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gtksourceviewmm";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "gtksourceviewmm";
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/gupnp-av/default.nix b/nixpkgs/pkgs/development/libraries/gupnp-av/default.nix
index 9bf39d94aed3..8d800f979402 100644
--- a/nixpkgs/pkgs/development/libraries/gupnp-av/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gupnp-av/default.nix
@@ -8,7 +8,7 @@
 , docbook_xml_dtd_412
 , glib
 , libxml2
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -43,8 +43,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gupnp-dlna/default.nix b/nixpkgs/pkgs/development/libraries/gupnp-dlna/default.nix
index e11d86f82e19..f9efe352a84b 100644
--- a/nixpkgs/pkgs/development/libraries/gupnp-dlna/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gupnp-dlna/default.nix
@@ -8,7 +8,7 @@
 , docbook_xml_dtd_412
 , libxml2
 , gst_all_1
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -48,8 +48,9 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gupnp-igd/default.nix b/nixpkgs/pkgs/development/libraries/gupnp-igd/default.nix
index 233eb7e3c85f..6eb44b9172ab 100644
--- a/nixpkgs/pkgs/development/libraries/gupnp-igd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gupnp-igd/default.nix
@@ -10,7 +10,7 @@
 , docbook_xml_dtd_412
 , glib
 , gupnp
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -49,8 +49,9 @@ stdenv.mkDerivation rec {
   #doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gupnp/default.nix b/nixpkgs/pkgs/development/libraries/gupnp/default.nix
index d6465d71c50f..c91d25123f61 100644
--- a/nixpkgs/pkgs/development/libraries/gupnp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gupnp/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -14,7 +15,7 @@
 , libsoup
 , libxml2
 , libuuid
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -28,6 +29,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-96AwfqUfXkTRuDL0k92QRURKOk4hHvhd/Zql3W6up9E=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2021-33516.patch";
+      url = "https://gitlab.gnome.org/GNOME/gupnp/-/commit/ca6ec9dcb26fd7a2a630eb6a68118659b589afac.patch";
+      sha256 = "sha256-G7e/xNQB7Kp2fPzqVeD/cH3h1co9hZXh55QOUBnAnvU=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
@@ -58,7 +67,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/gvfs/default.nix b/nixpkgs/pkgs/development/libraries/gvfs/default.nix
index 2c9bac002fd3..547c35e66eca 100644
--- a/nixpkgs/pkgs/development/libraries/gvfs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gvfs/default.nix
@@ -23,7 +23,7 @@
 , samba
 , libmtp
 , gnomeSupport ? false
-, gnome3
+, gnome
 , gcr
 , glib-networking
 , gnome-online-accounts
@@ -41,11 +41,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gvfs";
-  version = "1.46.2";
+  version = "1.48.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "2D+hYChmcMA+uJAkBgbYr6fqajqBjorRfu7Y2XZIe9c=";
+    sha256 = "1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj";
   };
 
   postPatch = ''
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
     gsettings-desktop-schemas
     # TODO: a ligther version of libsoup to have FTP/HTTP support?
   ] ++ lib.optionals gnomeSupport [
-    gnome3.libsoup
+    gnome.libsoup
     gcr
     glib-networking # TLS support
     gnome-online-accounts
@@ -117,8 +117,9 @@ stdenv.mkDerivation rec {
   doInstallCheck = doCheck;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -126,6 +127,6 @@ stdenv.mkDerivation rec {
     description = "Virtual Filesystem support library" + optionalString gnomeSupport " (full GNOME support)";
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.lethalman ] ++ teams.gnome.members;
+    maintainers = [ ] ++ teams.gnome.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/herqq/default.nix b/nixpkgs/pkgs/development/libraries/herqq/default.nix
index f35d7528f4e8..65eacd7fffe3 100644
--- a/nixpkgs/pkgs/development/libraries/herqq/default.nix
+++ b/nixpkgs/pkgs/development/libraries/herqq/default.nix
@@ -1,10 +1,10 @@
-{ lib, mkDerivation, unzip, fetchFromGitHub, qmake, qtmultimedia, qtbase }:
+{ lib, mkDerivation, fetchFromGitHub, qmake, qtmultimedia, qtbase }:
 
 mkDerivation rec {
   version = "unstable-20-06-26";
   pname = "herqq";
 
-  nativeBuildInputs = [ qmake unzip ];
+  nativeBuildInputs = [ qmake ];
   buildInputs = [ qtbase qtmultimedia ];
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/hivex/default.nix b/nixpkgs/pkgs/development/libraries/hivex/default.nix
index fb77e08ca6b0..b151db07df3d 100644
--- a/nixpkgs/pkgs/development/libraries/hivex/default.nix
+++ b/nixpkgs/pkgs/development/libraries/hivex/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "hivex";
-  version = "1.3.19";
+  version = "1.3.20";
 
   src = fetchurl {
     url = "https://libguestfs.org/download/hivex/${pname}-${version}.tar.gz";
-    sha256 = "0qppahpf7jq950nf8ial47h90nyqgnsffsj3zgdjjwkn958wq0ji";
+    sha256 = "sha256-9SPDe7BkpLq321IkkCw07uT5+rLZuBz2FbMsC4UJ0y0=";
   };
 
   patches = [ ./hivex-syms.patch ];
diff --git a/nixpkgs/pkgs/development/libraries/hotpatch/default.nix b/nixpkgs/pkgs/development/libraries/hotpatch/default.nix
index 9857f9f281cc..2dd894ff4a36 100644
--- a/nixpkgs/pkgs/development/libraries/hotpatch/default.nix
+++ b/nixpkgs/pkgs/development/libraries/hotpatch/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     description = "Hot patching executables on Linux using .so file injection";
     homepage = src.meta.homepage;
     license = licenses.bsd3;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = [ ];
     platforms = ["i686-linux" "x86_64-linux"];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix b/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
index 37b567896359..f1bcd4ad00c0 100644
--- a/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
+++ b/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
@@ -761,11 +761,11 @@ in rec {
   da_DK = da-dk;
   da-dk = mkDict rec {
     name = "hunspell-dict-da-dk-${version}";
-    version = "2.5.137";
+    version = "2.5.189";
 
     src = fetchurl {
       url = "https://stavekontrolden.dk/dictionaries/da_DK/da_DK-${version}.oxt";
-      sha256 = "16y0smkg1mq0133r1fbw5ak6s2xw39281knk5ivhanakayq789qx";
+      sha256 = "sha256:0i1cw0nfg24b0sg2yc3q7315ng5vc5245nvh0l1cndkn2c9z4978";
     };
 
     shortName = "da-dk";
diff --git a/nixpkgs/pkgs/development/libraries/hyperscan/default.nix b/nixpkgs/pkgs/development/libraries/hyperscan/default.nix
index f160afb99b7c..4093578156a6 100644
--- a/nixpkgs/pkgs/development/libraries/hyperscan/default.nix
+++ b/nixpkgs/pkgs/development/libraries/hyperscan/default.nix
@@ -11,12 +11,12 @@
 
 stdenv.mkDerivation rec {
   pname = "hyperscan";
-  version = "5.3.0";
+  version = "5.4.0";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = pname;
-    sha256 = "0psfkzmyhqfrs750b10d0xv37rcz6nwsw1mnc7zagijckwis2wvj";
+    sha256 = "sha256-AJAjaXVnGqIlMk+gb6lpTLUdZr8nxn2XSW4fj6j/cmk=";
     rev = "v${version}";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/icu/69.nix b/nixpkgs/pkgs/development/libraries/icu/69.nix
new file mode 100644
index 000000000000..8cea41daadb9
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/icu/69.nix
@@ -0,0 +1,4 @@
+import ./base.nix {
+  version = "69.1";
+  sha256 = "0icps0avkwy5df3wwc5kybxcg63hcgk4phdh9g244g0xrmx7pfjc";
+}
diff --git a/nixpkgs/pkgs/development/libraries/igraph/default.nix b/nixpkgs/pkgs/development/libraries/igraph/default.nix
index 86b8b7130ff4..03573716fa35 100644
--- a/nixpkgs/pkgs/development/libraries/igraph/default.nix
+++ b/nixpkgs/pkgs/development/libraries/igraph/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "igraph";
-  version = "0.9.2";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = "igraph";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Ylw02Mz9H4wIWfq59za/X7xfhgW9o0DNU55nLFqeUeo=";
+    sha256 = "sha256-tF+cnJRv125bSpZIpABTIHAfJO4TNfSBHjnzpNTbFgk=";
   };
 
   # Normally, igraph wants us to call bootstrap.sh, which will call
@@ -77,15 +77,17 @@ stdenv.mkDerivation rec {
     "-DIGRAPH_USE_INTERNAL_GMP=OFF"
     "-DIGRAPH_GLPK_SUPPORT=ON"
     "-DIGRAPH_GRAPHML_SUPPORT=ON"
-    "-DIGRAPH_ENABLE_LTO=ON"
+    "-DIGRAPH_ENABLE_LTO=AUTO"
     "-DIGRAPH_ENABLE_TLS=ON"
     "-DBUILD_SHARED_LIBS=ON"
   ];
 
   doCheck = true;
 
-  preCheck = ''
-    # needed to find libigraph.so
+  # needed to find libigraph, and liblas on darwin
+  preCheck = if stdenv.isDarwin then ''
+    export DYLD_LIBRARY_PATH="${lib.makeLibraryPath [ blas ]}:$PWD/src"
+  '' else ''
     export LD_LIBRARY_PATH="$PWD/src"
   '';
 
@@ -94,6 +96,10 @@ stdenv.mkDerivation rec {
     cp -r doc "$out/share"
   '';
 
+  postFixup = lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libigraph.dylib
+  '';
+
   meta = with lib; {
     description = "The network analysis package";
     homepage = "https://igraph.org/";
diff --git a/nixpkgs/pkgs/development/libraries/imlib/default.nix b/nixpkgs/pkgs/development/libraries/imlib/default.nix
index 53612f8205fe..1d6fed2281e7 100644
--- a/nixpkgs/pkgs/development/libraries/imlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/imlib/default.nix
@@ -1,4 +1,6 @@
-{lib, stdenv, fetchurl, fetchpatch, libX11, libXext, xorgproto, libjpeg, libungif, libtiff, libpng}:
+{ lib, stdenv, fetchurl, fetchpatch
+, libX11, libXext, xorgproto, libjpeg, giflib, libtiff, libpng
+}:
 
 stdenv.mkDerivation {
   name = "imlib-1.9.15";
@@ -13,6 +15,16 @@ stdenv.mkDerivation {
       url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/imlib/files/imlib-1.9.15-bpp16-CVE-2007-3568.patch";
       sha256 = "0lxfibi094gki39sq1w4p0hcx25xlk0875agbhjkjngzx862wvbg";
     })
+
+    # The following two patches fix the build with recent giflib.
+    (fetchpatch {
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/imlib/files/imlib-1.9.15-giflib51-1.patch?id=c6d0ed89ad5653421f21cbf3b3d40fd9a1361828";
+      sha256 = "0jynlhxcyjiwnz1m8j48xwz4z5csgyg03jfjc8xgpvvcyid4m65l";
+    })
+    (fetchpatch {
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/imlib/files/imlib-1.9.15-giflib51-2.patch?id=c6d0ed89ad5653421f21cbf3b3d40fd9a1361828";
+      sha256 = "164x7rd992930rqllmr89p5ahfmbz37ipi8x0igd8gkvc8a4fd5x";
+    })
   ];
 
   configureFlags = [
@@ -21,11 +33,11 @@ stdenv.mkDerivation {
     "--x-libraries=${libX11.out}/lib"
   ];
 
-  buildInputs = [libjpeg libXext libX11 xorgproto libtiff libungif libpng];
+  buildInputs = [ libjpeg libXext libX11 xorgproto libtiff giflib libpng ];
 
   meta = with lib; {
     description = "An image loading and rendering library for X11";
     platforms = platforms.unix;
-    license = with licenses; [ gpl2 lgpl2 ];
+    license = with licenses; [ gpl2Only lgpl2Only ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix b/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
index 651a42da0b12..a56422c87e13 100644
--- a/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-gmmlib";
-  version = "21.1.2";
+  version = "21.1.3";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "gmmlib";
     rev    = "${pname}-${version}";
-    sha256 = "0zs8l0q1q7xps3kxlch6jddxjiny8n8avdg1ghiwbkvgf76gb3as";
+    sha256 = "05vcr2rv6l38j7rv34mvcvzpgc2gjmvsb73wyprgdj71mcwrksyq";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/intel-media-driver/default.nix b/nixpkgs/pkgs/development/libraries/intel-media-driver/default.nix
index b983e01aa0ab..37375f52c32e 100644
--- a/nixpkgs/pkgs/development/libraries/intel-media-driver/default.nix
+++ b/nixpkgs/pkgs/development/libraries/intel-media-driver/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-media-driver";
-  version = "21.2.0";
+  version = "21.2.2";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "media-driver";
     rev    = "intel-media-${version}";
-    sha256 = "101wbg5j00amdbfz4p6mpg90wi549dl78jd34mac5g6zhcpwqbh9";
+    sha256 = "0cz2zr5qmhlsb1ydffakpkw9adyvn5n2y269fp0k2sskqwlykn48";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/intel-media-sdk/default.nix b/nixpkgs/pkgs/development/libraries/intel-media-sdk/default.nix
index 715e5621458e..78e2ebae96ac 100644
--- a/nixpkgs/pkgs/development/libraries/intel-media-sdk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/intel-media-sdk/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-media-sdk";
-  version = "20.5.1";
+  version = "21.2.0";
 
   src = fetchFromGitHub {
     owner = "Intel-Media-SDK";
     repo = "MediaSDK";
     rev = "intel-mediasdk-${version}";
-    sha256 = "0l5m7r8585ycifbbi5i0bs63c9sb8rsmk43ik97mhfl1ivswf1mv";
+    sha256 = "sha256-LusgmvlWOMEQjy47IpA9IYcl/cUTSMmvxSwvV/ihs2g=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/irrlicht/default.nix b/nixpkgs/pkgs/development/libraries/irrlicht/default.nix
index 633108459713..260be948ce1d 100644
--- a/nixpkgs/pkgs/development/libraries/irrlicht/default.nix
+++ b/nixpkgs/pkgs/development/libraries/irrlicht/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, libGLU, libGL, unzip, libXrandr, libX11, libXxf86vm }:
+{ lib, stdenv, fetchzip, libGLU, libGL, libXrandr, libX11, libXxf86vm }:
 
 let
   common = import ./common.nix { inherit fetchzip; };
@@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
     mkdir -p $out/lib
   '';
 
-  nativeBuildInputs = [ unzip ];
   buildInputs = [ libGLU libGL libXrandr libX11 libXxf86vm ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/irrlicht/mac.nix b/nixpkgs/pkgs/development/libraries/irrlicht/mac.nix
index 1235941b2dc3..a7901466081b 100644
--- a/nixpkgs/pkgs/development/libraries/irrlicht/mac.nix
+++ b/nixpkgs/pkgs/development/libraries/irrlicht/mac.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, libGLU, libGL, unzip, fetchFromGitHub, cmake, Cocoa, OpenGL, IOKit }:
+{ lib, stdenv, fetchzip, libGLU, libGL, fetchFromGitHub, cmake, Cocoa, OpenGL, IOKit }:
 
 let
   common = import ./common.nix { inherit fetchzip; };
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     "-DIRRLICHT_BUILD_TOOLS=OFF"
   ];
 
-  nativeBuildInputs = [ cmake unzip ];
+  nativeBuildInputs = [ cmake ];
   buildInputs = [ OpenGL Cocoa IOKit ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/itk/default.nix b/nixpkgs/pkgs/development/libraries/itk/default.nix
index ac899ce26f10..d84b9f1df625 100644
--- a/nixpkgs/pkgs/development/libraries/itk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/itk/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "itk";
-  version = "5.1.2";
+  version = "5.2.0";
 
   src = fetchFromGitHub {
     owner = "InsightSoftwareConsortium";
     repo = "ITK";
     rev = "v${version}";
-    sha256 = "0db91pm1zy40h4qr5zsdfl94znk16w9ysddz5cxbl198iyyqii8f";
+    sha256 = "19f65fc9spwvmywg43lkw9p2inrrzr1qrfzcbing3cjk0x2yrsnl";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/json-glib/default.nix b/nixpkgs/pkgs/development/libraries/json-glib/default.nix
index ed086dac90fb..9ef66fd2ce69 100644
--- a/nixpkgs/pkgs/development/libraries/json-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/json-glib/default.nix
@@ -6,48 +6,64 @@
 , ninja
 , pkg-config
 , gettext
+, withIntrospection ? stdenv.buildPlatform == stdenv.hostPlatform
 , gobject-introspection
 , fixDarwinDylibNames
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_43
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "json-glib";
   version = "1.6.2";
 
-  outputs = [ "out" "dev" "devdoc" ];
+  outputs = [ "out" "dev" ]
+    ++ lib.optional withIntrospection "devdoc";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
     sha256 = "092g2dyy1hhl0ix9kp33wcab0pg1qicnsv0cj5ms9g9qs336cgd3";
   };
 
+  strictDeps = true;
+
+  depsBuildBuild = [
+    pkg-config
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
     pkg-config
     gettext
-    gobject-introspection
     glib
-    gtk-doc
     docbook-xsl-nons
     docbook_xml_dtd_43
   ] ++ lib.optional stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
+  ] ++ lib.optionals withIntrospection [
+    gobject-introspection
+    gtk-doc
   ];
 
   propagatedBuildInputs = [
     glib
   ];
 
+  mesonFlags = lib.optionals (!withIntrospection) [
+    "-Dintrospection=disabled"
+    # doc gen uses introspection, doesn't work properly
+    "-Dgtk_doc=disabled"
+  ];
+
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
index 90d3f1da6e63..f41bf0f0c80f 100644
--- a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     inherit version;
     homepage = "https://github.com/open-source-parsers/jsoncpp";
     description = "A C++ library for interacting with JSON";
-    maintainers = with maintainers; [ ttuegel cpages nand0p ];
+    maintainers = with maintainers; [ ttuegel cpages ];
     license = licenses.mit;
     platforms = platforms.all;
   };
diff --git a/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix b/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
index 1ec9c3da41e2..b43bcd07ca6b 100644
--- a/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome3 }:
+{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome }:
 stdenv.mkDerivation rec {
   pname = "jsonrpc-glib";
   version = "3.38.0";
@@ -22,8 +22,9 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/jxrlib/default.nix b/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
index b2cc4ab08b45..3dcec13a18aa 100644
--- a/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, python3 }:
+{ lib, stdenv, fetchFromGitHub, python3, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
   pname = "jxrlib";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
       --replace '.so' '.dylib'
   '';
 
-  nativeBuildInputs = [ python3 ];
+  nativeBuildInputs = [ python3 ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/fetch.sh b/nixpkgs/pkgs/development/libraries/kde-frameworks/fetch.sh
index 05506b19385c..55c1e02a955d 100644
--- a/nixpkgs/pkgs/development/libraries/kde-frameworks/fetch.sh
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/frameworks/5.80/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.81/ -A '*.tar.xz' )
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix b/nixpkgs/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
index c4bee741d2a8..7c16dcf46507 100644
--- a/nixpkgs/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
@@ -1,14 +1,33 @@
-{
-  mkDerivation,
-  extra-cmake-modules,
-  attr, ebook_tools, exiv2, ffmpeg_3, karchive, kcoreaddons, ki18n, poppler, qtbase, qtmultimedia, taglib
+{ mkDerivation
+, lib
+, extra-cmake-modules
+, attr
+, ebook_tools
+, exiv2
+, ffmpeg
+, karchive
+, kcoreaddons
+, ki18n
+, poppler
+, qtbase
+, qtmultimedia
+, taglib
 }:
 
 mkDerivation {
   name = "kfilemetadata";
   nativeBuildInputs = [ extra-cmake-modules ];
   buildInputs = [
-    attr ebook_tools exiv2 ffmpeg_3 karchive kcoreaddons ki18n poppler qtbase qtmultimedia
+    attr
+    ebook_tools
+    exiv2
+    ffmpeg
+    karchive
+    kcoreaddons
+    ki18n
+    poppler
+    qtbase
+    qtmultimedia
     taglib
   ];
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/srcs.nix b/nixpkgs/pkgs/development/libraries/kde-frameworks/srcs.nix
index 91d53f4df87c..3d5ad663dd32 100644
--- a/nixpkgs/pkgs/development/libraries/kde-frameworks/srcs.nix
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/srcs.nix
@@ -4,667 +4,667 @@
 
 {
   attica = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/attica-5.80.0.tar.xz";
-      sha256 = "0wffjjrk6rka25kgfq05j9fzxawysimpzi8jj3sw3kfz05mqdap3";
-      name = "attica-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/attica-5.81.0.tar.xz";
+      sha256 = "0x1ga3y0kmr2ybgvsmns7imd0agfd5bfc2lf0010ks5s1v50whqr";
+      name = "attica-5.81.0.tar.xz";
     };
   };
   baloo = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/baloo-5.80.0.tar.xz";
-      sha256 = "0wdm03x1zm31nivf04qxih6gg18c97diff7ddaqqbz8c7jlhppzc";
-      name = "baloo-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/baloo-5.81.0.tar.xz";
+      sha256 = "0mnm282mc1yph9x08fkrycb22gsah4km8r7yk3kz20vnrs0wgljy";
+      name = "baloo-5.81.0.tar.xz";
     };
   };
   bluez-qt = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/bluez-qt-5.80.0.tar.xz";
-      sha256 = "08g56gnh0gkh7n92wqama9lbqk6pfdby9xbh8f2vgmnkzy07zrwn";
-      name = "bluez-qt-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/bluez-qt-5.81.0.tar.xz";
+      sha256 = "13wy3nzbq26616s7pa0sx0jrq81v3bvf6a6dlmp1zzycvbk06jp3";
+      name = "bluez-qt-5.81.0.tar.xz";
     };
   };
   breeze-icons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/breeze-icons-5.80.0.tar.xz";
-      sha256 = "11353lgy2fh1d2fgbhg20fapsjzrpsxlf5zilrfkw8y0my690rm2";
-      name = "breeze-icons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/breeze-icons-5.81.0.tar.xz";
+      sha256 = "1844jyair0kjflfq98cakis7xfgbdn7an383f02hp4072kjg127g";
+      name = "breeze-icons-5.81.0.tar.xz";
     };
   };
   extra-cmake-modules = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/extra-cmake-modules-5.80.0.tar.xz";
-      sha256 = "0r3gr6qrgljiq7bsks54xc68x9pf7i2gm9pgjq5kslw5ys0gsw13";
-      name = "extra-cmake-modules-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/extra-cmake-modules-5.81.0.tar.xz";
+      sha256 = "10svwghxf5vhbfwz7lza7xid2n1mj6r1n1amv6c616q68fwf8msz";
+      name = "extra-cmake-modules-5.81.0.tar.xz";
     };
   };
   frameworkintegration = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/frameworkintegration-5.80.0.tar.xz";
-      sha256 = "0sk9p4wk4hsr5sg0z24rc7fxrsdbxcpm5fw66v30lhncrlf9c7c7";
-      name = "frameworkintegration-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/frameworkintegration-5.81.0.tar.xz";
+      sha256 = "0vcbm0364zwkyp33nvcl42px6i9hgnp4wl3lg913qvxv1f7pd61v";
+      name = "frameworkintegration-5.81.0.tar.xz";
     };
   };
   kactivities = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kactivities-5.80.0.tar.xz";
-      sha256 = "14im60ig074axryhgz3qw1zjqhfai1gg0hq88spabvz22r5f340s";
-      name = "kactivities-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kactivities-5.81.0.tar.xz";
+      sha256 = "0sskfpc8yfic2s8hvzf7cjk92pxd0idd0xl0azrjnn28ci5kvzvq";
+      name = "kactivities-5.81.0.tar.xz";
     };
   };
   kactivities-stats = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kactivities-stats-5.80.0.tar.xz";
-      sha256 = "1w3khp8p2a1v85s5hay3s0nznjsajaavrjx4iw2cxssxnzlvg2fn";
-      name = "kactivities-stats-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kactivities-stats-5.81.0.tar.xz";
+      sha256 = "0839g6y101qr5mr98ynfm74f554lxx7srnwm3anh7nj6zrlyxrq2";
+      name = "kactivities-stats-5.81.0.tar.xz";
     };
   };
   kapidox = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kapidox-5.80.0.tar.xz";
-      sha256 = "010jigqkw3rs04irf942cwgd9wvi7j9b5lisdcrc3w65a19q053z";
-      name = "kapidox-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kapidox-5.81.0.tar.xz";
+      sha256 = "1wq4py1djmcnqf51l52cij43qw44n5fafz00qslxjb0rdakrvzs2";
+      name = "kapidox-5.81.0.tar.xz";
     };
   };
   karchive = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/karchive-5.80.0.tar.xz";
-      sha256 = "1xaxbhbx562ybd9rqna1bh3bpbyxh02c9x9xyisw84akiibqvq7w";
-      name = "karchive-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/karchive-5.81.0.tar.xz";
+      sha256 = "1flnylyglc2jdb9lfk3dl56wzxdliaaqpg2rzrlclzj14lz3l9hy";
+      name = "karchive-5.81.0.tar.xz";
     };
   };
   kauth = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kauth-5.80.0.tar.xz";
-      sha256 = "1pcnk34b912hhhpx606ajvz9hcz6xr37g7bl002zkar9fzh7vw16";
-      name = "kauth-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kauth-5.81.0.tar.xz";
+      sha256 = "1gf93wk95x1fmi4w3ybkj7acwrv7rlz9nw7f1n4nd1w3w7pn403y";
+      name = "kauth-5.81.0.tar.xz";
     };
   };
   kbookmarks = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kbookmarks-5.80.0.tar.xz";
-      sha256 = "11imylvhw3pc46qiqz72q8rwa9igvgvd9gdchiivcrg4494k502q";
-      name = "kbookmarks-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kbookmarks-5.81.0.tar.xz";
+      sha256 = "0bqgl3vhr5lngajxz7v4l325kcyylj3d1qznaa946dcbsn2wrgzm";
+      name = "kbookmarks-5.81.0.tar.xz";
     };
   };
   kcalendarcore = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcalendarcore-5.80.0.tar.xz";
-      sha256 = "1z8js2b5zb862ngwsdd2hwi6wqhkvkhsx5akbn7f1gmjs0pfrkg5";
-      name = "kcalendarcore-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcalendarcore-5.81.0.tar.xz";
+      sha256 = "0a8m8l94cni1fv38sa9wa1mx1m7bnd7qb66wrjrhdd57cfrjij5s";
+      name = "kcalendarcore-5.81.0.tar.xz";
     };
   };
   kcmutils = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcmutils-5.80.0.tar.xz";
-      sha256 = "0ncyffl60wv5awbfazknqpysaji11xxrpicabfl0mzmwcnlb34wc";
-      name = "kcmutils-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcmutils-5.81.0.tar.xz";
+      sha256 = "15q2wvnz8s1g508jbssszzfcgssamdsp7s1vply1677ga8pcspmj";
+      name = "kcmutils-5.81.0.tar.xz";
     };
   };
   kcodecs = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcodecs-5.80.0.tar.xz";
-      sha256 = "06l8c3jwx5z43cyv7vl6yfs91a7zmy0j089x826nn2a7jr678mjg";
-      name = "kcodecs-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcodecs-5.81.0.tar.xz";
+      sha256 = "0r757k1rbz1bjk7mc0b2m0ybixai4qfidrs5wvbci971lfsaz4j3";
+      name = "kcodecs-5.81.0.tar.xz";
     };
   };
   kcompletion = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcompletion-5.80.0.tar.xz";
-      sha256 = "14v0d1w01lric532vks9akh7v7z7nf9hgpf866qyhmb236k52hpg";
-      name = "kcompletion-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcompletion-5.81.0.tar.xz";
+      sha256 = "15bw6g4ag1s0s3x6390r05i299kl279jrfajna9fxgq3fbjigb7p";
+      name = "kcompletion-5.81.0.tar.xz";
     };
   };
   kconfig = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kconfig-5.80.0.tar.xz";
-      sha256 = "1chrvpfr72bdgv6fdgrkbfbiz76jgvzsncxsc6gjvkvcdag48016";
-      name = "kconfig-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kconfig-5.81.0.tar.xz";
+      sha256 = "13xfy3mhi73na4mv0a8l75ba5c8ddnkkdssmsnxp5kj084w9xpqx";
+      name = "kconfig-5.81.0.tar.xz";
     };
   };
   kconfigwidgets = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kconfigwidgets-5.80.0.tar.xz";
-      sha256 = "12rc3l91h2snkxni70brdp8f21g19c0gabpxy7ssv614ci0fz7j7";
-      name = "kconfigwidgets-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kconfigwidgets-5.81.0.tar.xz";
+      sha256 = "1v7xxn6cd17z71cpdyw2qzfqw4vkzy96wwr1zn9dylnvl8mh4xg0";
+      name = "kconfigwidgets-5.81.0.tar.xz";
     };
   };
   kcontacts = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcontacts-5.80.0.tar.xz";
-      sha256 = "173vpxncdr9mwpksizflvipsf18pnwn500b2xzpkaaz5w84vk1yk";
-      name = "kcontacts-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcontacts-5.81.0.tar.xz";
+      sha256 = "15wkspgxqj6zh2pr3f7xqcahihbhf45qnqay1v56ry3vl42gncg4";
+      name = "kcontacts-5.81.0.tar.xz";
     };
   };
   kcoreaddons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcoreaddons-5.80.0.tar.xz";
-      sha256 = "1l9ydyvbmn2ih07jsy12snxavss7cyxyig0n65sz6gwbcxqr5qzc";
-      name = "kcoreaddons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcoreaddons-5.81.0.tar.xz";
+      sha256 = "1nzyijd8753p9n9fqfb14q30jid2k1j7cvwjqv99l5fxhwbcn35c";
+      name = "kcoreaddons-5.81.0.tar.xz";
     };
   };
   kcrash = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kcrash-5.80.0.tar.xz";
-      sha256 = "1c2b8i9qay0mdr0i16jp2167vb18r792dd88nz0in77lzccfk8v4";
-      name = "kcrash-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kcrash-5.81.0.tar.xz";
+      sha256 = "1irw9blm1xsn26mcyaimd8xnygkdpaqh9m8gpf5gpn2s19iz4f81";
+      name = "kcrash-5.81.0.tar.xz";
     };
   };
   kdav = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdav-5.80.0.tar.xz";
-      sha256 = "1cab4pppqyfqm53dhp5lm4ghijbhym77ndb0pr6crvi70kz4s101";
-      name = "kdav-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdav-5.81.0.tar.xz";
+      sha256 = "0cxiif5pb8frz0dpqx0f9j7g29iaspx13alwzvzavbmi0bwzs00b";
+      name = "kdav-5.81.0.tar.xz";
     };
   };
   kdbusaddons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdbusaddons-5.80.0.tar.xz";
-      sha256 = "1w0vpjzi37z8jaq97p9bxjdl8x4288idm4vvpzxs8lc9hwcl74hl";
-      name = "kdbusaddons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdbusaddons-5.81.0.tar.xz";
+      sha256 = "0gbrmgpd8x16zapbqbyh2ipbvysz3z07qk1fc0cmx5x84x1j7xa9";
+      name = "kdbusaddons-5.81.0.tar.xz";
     };
   };
   kdeclarative = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdeclarative-5.80.0.tar.xz";
-      sha256 = "0gcx6pqyc0izw2cdvdcscxxl4wvksb74kjiq5zimjd2z8wrblmdz";
-      name = "kdeclarative-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdeclarative-5.81.0.tar.xz";
+      sha256 = "0s6kal2ppw0vskv7baxvbqfip4hzh8s3399c1j7rahdw67nf9k3x";
+      name = "kdeclarative-5.81.0.tar.xz";
     };
   };
   kded = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kded-5.80.0.tar.xz";
-      sha256 = "0skk3zf3b6rlbvdq0fyd8swfrx3fqmppqxrglh6n5imcv5jxwms1";
-      name = "kded-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kded-5.81.0.tar.xz";
+      sha256 = "1100jrccadj50blq5wmr83wdc3ry46rn86y28dfy4h97cvn1nfsi";
+      name = "kded-5.81.0.tar.xz";
     };
   };
   kdelibs4support = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kdelibs4support-5.80.0.tar.xz";
-      sha256 = "01bd188iss14qmzm55dmsgdcs9wnwbdj0kh371achp9zqg55iqj3";
-      name = "kdelibs4support-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kdelibs4support-5.81.0.tar.xz";
+      sha256 = "1ck3i46k8sjkqgnaygy5pjqbw1np35sc6nhgxxcm7q84q3cdj536";
+      name = "kdelibs4support-5.81.0.tar.xz";
     };
   };
   kdesignerplugin = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kdesignerplugin-5.80.0.tar.xz";
-      sha256 = "1d79qg3y7ndrh6yd9sygyz5yd5ig6gp8k71mw96xijdhlf5nxqs3";
-      name = "kdesignerplugin-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kdesignerplugin-5.81.0.tar.xz";
+      sha256 = "1rgnj6bns9dnn0g53xk374knc69ajpprjhyb50ffr0dn7cfcs1s3";
+      name = "kdesignerplugin-5.81.0.tar.xz";
     };
   };
   kdesu = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdesu-5.80.0.tar.xz";
-      sha256 = "1ksad8wcnjcrb8h73klrs2601482a32x3ycpr17k9fsi8mkylicd";
-      name = "kdesu-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdesu-5.81.0.tar.xz";
+      sha256 = "176531kcvpmb4sklrqpvx4msna1radd2ki410700yvk0l2v4l2yy";
+      name = "kdesu-5.81.0.tar.xz";
     };
   };
   kdewebkit = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kdewebkit-5.80.0.tar.xz";
-      sha256 = "11q6x9w2majzh6wva4b824dxrpz53xpb3vfsi65pwh199fhfyzci";
-      name = "kdewebkit-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kdewebkit-5.81.0.tar.xz";
+      sha256 = "022dpmw8r5wkb3pr87fycrybv9j5k2wy8d39rilhjvkqk8s65277";
+      name = "kdewebkit-5.81.0.tar.xz";
     };
   };
   kdnssd = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdnssd-5.80.0.tar.xz";
-      sha256 = "0k8lk3h65ar07l54cmxhpakz1why9vbm5wg58nh16x69dkdhr8dg";
-      name = "kdnssd-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdnssd-5.81.0.tar.xz";
+      sha256 = "1hl49w55r57abnnwdf4hvyjk7566zbqa24bai3zsq24a4nnm6vii";
+      name = "kdnssd-5.81.0.tar.xz";
     };
   };
   kdoctools = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kdoctools-5.80.0.tar.xz";
-      sha256 = "10xcq0pk1sqw293f2kw52sjj6dgphv17fdax4w0yy1hjch711bhy";
-      name = "kdoctools-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kdoctools-5.81.0.tar.xz";
+      sha256 = "11qayqx47h4h1y2yqzbm8bysdd7xwb2qjmkk59jxpih7xbmpg1ir";
+      name = "kdoctools-5.81.0.tar.xz";
     };
   };
   kemoticons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kemoticons-5.80.0.tar.xz";
-      sha256 = "0jg5z6dbfprkypj35prlixgc93x65nn7zcw2fmxcqvshrnqzz2hb";
-      name = "kemoticons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kemoticons-5.81.0.tar.xz";
+      sha256 = "17zv96cfmqg9fxrgm91pn8xwp4f03644g2203c3s7iq3bh8ig3gc";
+      name = "kemoticons-5.81.0.tar.xz";
     };
   };
   kfilemetadata = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kfilemetadata-5.80.0.tar.xz";
-      sha256 = "02k0yyksyl5nn373l25m6ybxhpdyrz8g0mr16zmk12pdxh24vkbm";
-      name = "kfilemetadata-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kfilemetadata-5.81.0.tar.xz";
+      sha256 = "0cba7lsjk563ql0hw2rcjxn2khadx1rz7hx4agjb40145f7x931i";
+      name = "kfilemetadata-5.81.0.tar.xz";
     };
   };
   kglobalaccel = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kglobalaccel-5.80.0.tar.xz";
-      sha256 = "015x173b57vdd16mmd4asz6l6bxw94k1hbkxr09v5cb463cspw1n";
-      name = "kglobalaccel-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kglobalaccel-5.81.0.tar.xz";
+      sha256 = "0adqlfmpfsbbfjiljvbyi4f4blx77qp18anx7npkwh5gjn32hczz";
+      name = "kglobalaccel-5.81.0.tar.xz";
     };
   };
   kguiaddons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kguiaddons-5.80.0.tar.xz";
-      sha256 = "1iadzp794q9qhs1kcvfp2g2w6rv2ifqcb3n8sv460fhv4qrg4qz5";
-      name = "kguiaddons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kguiaddons-5.81.0.tar.xz";
+      sha256 = "1q9yrbbsjh98xl3k4yss5h39fd8nz8y5v9sd7vqjmy49mqsyxxz3";
+      name = "kguiaddons-5.81.0.tar.xz";
     };
   };
   kholidays = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kholidays-5.80.0.tar.xz";
-      sha256 = "1knmsz1rzhz5a56q9s0i4747633dq9bhs4j8j6rnk49ccl5hz72z";
-      name = "kholidays-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kholidays-5.81.0.tar.xz";
+      sha256 = "1pcqzwpmyl6jp9w4xvlgj81iyzbazz2kd07g82cjybz0z3jcxs2c";
+      name = "kholidays-5.81.0.tar.xz";
     };
   };
   khtml = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/khtml-5.80.0.tar.xz";
-      sha256 = "188j1ssw9qlylqgj06iy2r2jbibzshxcxh9qbn1bgz6d2dq2c6mx";
-      name = "khtml-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/khtml-5.81.0.tar.xz";
+      sha256 = "0ag23xwl2f9hiwxnwxvwiz3xr07dxpin49li3q98vqq1qzaj1ngp";
+      name = "khtml-5.81.0.tar.xz";
     };
   };
   ki18n = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/ki18n-5.80.0.tar.xz";
-      sha256 = "0yksjrcq5zip17kq1r97z2145qzzz6k48vz71y6195f7wvbpjfl8";
-      name = "ki18n-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/ki18n-5.81.0.tar.xz";
+      sha256 = "12m7ddyzw80y9y5gqyr7jgdyc5a0fmxa8zzsd41l7418i2sdajrc";
+      name = "ki18n-5.81.0.tar.xz";
     };
   };
   kiconthemes = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kiconthemes-5.80.0.tar.xz";
-      sha256 = "133nv4zgqg6pkkvh1nyqcra847vgn3ai6w0xvynbgrmq7wvdrwlj";
-      name = "kiconthemes-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kiconthemes-5.81.0.tar.xz";
+      sha256 = "053a7zdig796zc3rnwdlkscylg6wldn1dk0dxqzn14cb8vkbwizw";
+      name = "kiconthemes-5.81.0.tar.xz";
     };
   };
   kidletime = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kidletime-5.80.0.tar.xz";
-      sha256 = "1yjjhpkql8s7b4ddzirpyq5p0yicpsbkgbq15257k60xs66qgf83";
-      name = "kidletime-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kidletime-5.81.0.tar.xz";
+      sha256 = "12zrd9k27hx8ncywd9ahhbcv5xrn7rrw82pcvdkjmyniz0nazrqv";
+      name = "kidletime-5.81.0.tar.xz";
     };
   };
   kimageformats = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kimageformats-5.80.0.tar.xz";
-      sha256 = "0q3i6jkx6kahgdzfycygki50f22zjbspx3f9ibg2ak74hcan8r8x";
-      name = "kimageformats-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kimageformats-5.81.0.tar.xz";
+      sha256 = "0kl68dy1v4p403f52y7igv2w3wq6q2pb7n0r7fbnwz2113bs0cm3";
+      name = "kimageformats-5.81.0.tar.xz";
     };
   };
   kinit = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kinit-5.80.0.tar.xz";
-      sha256 = "101lvky2j6bxk3q36040kczchc21d5rb664ddxd89pl2n0f6s9fz";
-      name = "kinit-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kinit-5.81.0.tar.xz";
+      sha256 = "1wv8qyv4mayi80vczf47mdxxa6km4v7r2kz2j483w53nck5hjz4j";
+      name = "kinit-5.81.0.tar.xz";
     };
   };
   kio = {
-    version = "5.80.1";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kio-5.80.1.tar.xz";
-      sha256 = "0a2srmj8w80f2m8s359747xx0wg2gf8nd75ysv9f9y92l1hwwwfr";
-      name = "kio-5.80.1.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kio-5.81.0.tar.xz";
+      sha256 = "0zn0xh07hajcj3h1v5246a167ffm113k8j36p2xn7lbq368sway6";
+      name = "kio-5.81.0.tar.xz";
     };
   };
   kirigami2 = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kirigami2-5.80.0.tar.xz";
-      sha256 = "0wljcyr0g4i5nsc6szy9yd976l180lxfjjzhz24py7czlrpzg3i2";
-      name = "kirigami2-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kirigami2-5.81.0.tar.xz";
+      sha256 = "1bcc2mfb2s4w67q9q35k04mc9154dx1x03vqzclh9ipzdvyjqmyn";
+      name = "kirigami2-5.81.0.tar.xz";
     };
   };
   kitemmodels = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kitemmodels-5.80.0.tar.xz";
-      sha256 = "1bvghm4accgf273aacjng86rxiazmk05pbrnqkldda9958dqv54k";
-      name = "kitemmodels-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kitemmodels-5.81.0.tar.xz";
+      sha256 = "0vs75q08x9yi1953rihk3y234wcsjawdxb3g5xb597f961y634w0";
+      name = "kitemmodels-5.81.0.tar.xz";
     };
   };
   kitemviews = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kitemviews-5.80.0.tar.xz";
-      sha256 = "1j9m4qcmy83dj3k3v4y4skl5lgb8n3z4x9pa1f0rjpwwg4qsa0lp";
-      name = "kitemviews-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kitemviews-5.81.0.tar.xz";
+      sha256 = "0nmhc675bmilqah9fwwzy4p8rksib90cv8iihxd5c9d9snykk01n";
+      name = "kitemviews-5.81.0.tar.xz";
     };
   };
   kjobwidgets = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kjobwidgets-5.80.0.tar.xz";
-      sha256 = "1yy5n9jnj1sdh51n3n1bqzmaml44799kiqdpp3b7mq55fmj9najp";
-      name = "kjobwidgets-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kjobwidgets-5.81.0.tar.xz";
+      sha256 = "1gl8ia858jbmj2i9wp4x0mw27p42xm6mg84nj1a8yvvvbazs3hpa";
+      name = "kjobwidgets-5.81.0.tar.xz";
     };
   };
   kjs = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kjs-5.80.0.tar.xz";
-      sha256 = "1v3jiywzzi20c0pd67pgnwwnz0vg209a0wzzdhrpiz5v7qgji1ij";
-      name = "kjs-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kjs-5.81.0.tar.xz";
+      sha256 = "049aplmp1nlxshwaw0lfhfr09aazxh4vazvb78429gs84j8ir9xr";
+      name = "kjs-5.81.0.tar.xz";
     };
   };
   kjsembed = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kjsembed-5.80.0.tar.xz";
-      sha256 = "083gp9ks7yha90vnk0z4bkb9i4rphz90di8m8z19xgn575a6li57";
-      name = "kjsembed-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kjsembed-5.81.0.tar.xz";
+      sha256 = "0zkazfcrmd0gklzda0hbb4mc493ihsd3dafnmyj6cmgk4lz2w3q9";
+      name = "kjsembed-5.81.0.tar.xz";
     };
   };
   kmediaplayer = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kmediaplayer-5.80.0.tar.xz";
-      sha256 = "0a16rzyjy7j5pn66ahpj3kxpp5c2zmjxg3cmrm14gcm6gzysv56b";
-      name = "kmediaplayer-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kmediaplayer-5.81.0.tar.xz";
+      sha256 = "0z1ji717kwq84i6b2ay9wjhgc4vdkgn1jvwpzgpc1hqs9zly278b";
+      name = "kmediaplayer-5.81.0.tar.xz";
     };
   };
   knewstuff = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/knewstuff-5.80.0.tar.xz";
-      sha256 = "0pbk4j823zs2xikgdhaxqilb5b6f0a8k8hylq1vyhkwlzvvp9s6z";
-      name = "knewstuff-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/knewstuff-5.81.0.tar.xz";
+      sha256 = "0wmf86nndnxs1850bjzbwaag6kjdabz0si7b0p1r6hnwm2km9bnk";
+      name = "knewstuff-5.81.0.tar.xz";
     };
   };
   knotifications = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/knotifications-5.80.0.tar.xz";
-      sha256 = "1sfn61vhdqg3mxfvb802wx0l0k59b312fbh6w9bqv0b8z0a9jz2s";
-      name = "knotifications-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/knotifications-5.81.0.tar.xz";
+      sha256 = "04yfrhd098asr45swslnfkzxkb9892izvyam5rf0h93pw78ggmqs";
+      name = "knotifications-5.81.0.tar.xz";
     };
   };
   knotifyconfig = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/knotifyconfig-5.80.0.tar.xz";
-      sha256 = "0b41ppif2qp7lkqmb7nv1r68hvavdl1lcgs4w50v2c0k4fflwizx";
-      name = "knotifyconfig-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/knotifyconfig-5.81.0.tar.xz";
+      sha256 = "0xrd9771g1x0s796pw6wkhl9jj9607pffmlxrj171c8n8hdfyjbs";
+      name = "knotifyconfig-5.81.0.tar.xz";
     };
   };
   kpackage = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kpackage-5.80.0.tar.xz";
-      sha256 = "104qwyai3ivdw0jqgn6m59bajy07snas51rp75xgvb65hpllv2ch";
-      name = "kpackage-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kpackage-5.81.0.tar.xz";
+      sha256 = "1r1yv5y2swll38l88w559d8q0n4xizwgjp4qd8bh0vvsn24l65ka";
+      name = "kpackage-5.81.0.tar.xz";
     };
   };
   kparts = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kparts-5.80.0.tar.xz";
-      sha256 = "1fkfjazr7bwh5nniylh403qp0g4bgiv01ckv4djf46gjf7qn9d4y";
-      name = "kparts-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kparts-5.81.0.tar.xz";
+      sha256 = "1gjqmwg5pjj41vwfsdffvr1gfbkbm12f77rlyfn9gg4z6bjdx47b";
+      name = "kparts-5.81.0.tar.xz";
     };
   };
   kpeople = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kpeople-5.80.0.tar.xz";
-      sha256 = "1cn9jqiah3j0qi7sg1j9c10yq97pcisvxhm9jjzzzxna39zz16cw";
-      name = "kpeople-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kpeople-5.81.0.tar.xz";
+      sha256 = "1a63s8c946wrivqs8n680jpmcys8iafyy9j3isl4z5n88df2nnih";
+      name = "kpeople-5.81.0.tar.xz";
     };
   };
   kplotting = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kplotting-5.80.0.tar.xz";
-      sha256 = "073icgz0cgg7wis3rf1hlsmxklp9vk8swgihfdlks1jds90s4nxw";
-      name = "kplotting-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kplotting-5.81.0.tar.xz";
+      sha256 = "1s368amqfqjmr99bz4xc0xfm2sf29s99z3zpwbx2lbjvqh3p5yyb";
+      name = "kplotting-5.81.0.tar.xz";
     };
   };
   kpty = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kpty-5.80.0.tar.xz";
-      sha256 = "13blnrzni3n9p3xnn2kyd6g2hlpvvg0aqagknk64kchbvdkd5l4k";
-      name = "kpty-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kpty-5.81.0.tar.xz";
+      sha256 = "0la3jpkki1hskxg12nf3r59fw7r9q8n3sc7wcdik9r9c9rhlyjpk";
+      name = "kpty-5.81.0.tar.xz";
     };
   };
   kquickcharts = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kquickcharts-5.80.0.tar.xz";
-      sha256 = "0kf72i9pkifcwg9njn296fw4d9gy3rc43g17128axj6a5jrd4bln";
-      name = "kquickcharts-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kquickcharts-5.81.0.tar.xz";
+      sha256 = "00w2m0pwilldip873w97l9hvgm6gfy1aj6blyzcxn7x1688lv1jz";
+      name = "kquickcharts-5.81.0.tar.xz";
     };
   };
   kross = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kross-5.80.0.tar.xz";
-      sha256 = "06dyqmhxbr9ykca1bskkgxmsd86jpxnk4adygcw1j84xsl6jiki9";
-      name = "kross-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kross-5.81.0.tar.xz";
+      sha256 = "02jsyarn7ihv547b3vv5xwjm1bs58x5lhdnb74v02cwsgb82wlm3";
+      name = "kross-5.81.0.tar.xz";
     };
   };
   krunner = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/krunner-5.80.0.tar.xz";
-      sha256 = "0bid6h0wmvmxfz664hmfhs4zp35mlk3n1p553rspfs55wh2f9xpw";
-      name = "krunner-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/krunner-5.81.0.tar.xz";
+      sha256 = "1yf04qw82hmz8g9hddyalh73b2dxk492n8g856d5m6ccq89c7ga5";
+      name = "krunner-5.81.0.tar.xz";
     };
   };
   kservice = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kservice-5.80.0.tar.xz";
-      sha256 = "06bk46l3qg7dh57zsg9vwx8vq31ikjmbmy4nqn65mq786yiz4s78";
-      name = "kservice-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kservice-5.81.0.tar.xz";
+      sha256 = "1kb6wz8d879b57hpfi4ybpc9d3r67b205xdjmp3bhz21894haszc";
+      name = "kservice-5.81.0.tar.xz";
     };
   };
   ktexteditor = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/ktexteditor-5.80.0.tar.xz";
-      sha256 = "0g073m18bpzhxdwzhqcyclsclwi91cqsjqq3fjz1hy56ird6b0d0";
-      name = "ktexteditor-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/ktexteditor-5.81.0.tar.xz";
+      sha256 = "1pbxkkqzk4l8n9am5r6w2s1smqwwcc2wagy9in0k80gbyszp9rvm";
+      name = "ktexteditor-5.81.0.tar.xz";
     };
   };
   ktextwidgets = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/ktextwidgets-5.80.0.tar.xz";
-      sha256 = "1292knr3wblbk5j3qfzr1lqyiaa09pkhvkmh3jnlb0jvhc8xvmg8";
-      name = "ktextwidgets-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/ktextwidgets-5.81.0.tar.xz";
+      sha256 = "04mn22xmhkxqb138b9wf6jxz39dfp8rigdg3pzr5llx6gmrln9y8";
+      name = "ktextwidgets-5.81.0.tar.xz";
     };
   };
   kunitconversion = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kunitconversion-5.80.0.tar.xz";
-      sha256 = "1hckj3k3jjsc4y89zvi5l9h6px6ns9kdqjrfkxbax459wha55b4l";
-      name = "kunitconversion-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kunitconversion-5.81.0.tar.xz";
+      sha256 = "1g9i253f3qjpcmfiy12zmbi41gld9fxy89d742b44xc88fhj3z1y";
+      name = "kunitconversion-5.81.0.tar.xz";
     };
   };
   kwallet = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kwallet-5.80.0.tar.xz";
-      sha256 = "1pwrxhjxxdx7hl4456dk4x8z36ddw932cv08010fmz9m4w0yvjg1";
-      name = "kwallet-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kwallet-5.81.0.tar.xz";
+      sha256 = "1i05j20847bb9b7348f85fln6spqnkp3c9ysr7yvnm8wfyzrd1gz";
+      name = "kwallet-5.81.0.tar.xz";
     };
   };
   kwayland = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kwayland-5.80.0.tar.xz";
-      sha256 = "1avr7ckyhw158wi5mlknzkcphn8vlf8dpb96gyizvsvg8b4gffs0";
-      name = "kwayland-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kwayland-5.81.0.tar.xz";
+      sha256 = "1a23zcf6aax1fyq4d6y88flyap8wwkbwnq4vkbybpbnxnkbwl8ny";
+      name = "kwayland-5.81.0.tar.xz";
     };
   };
   kwidgetsaddons = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kwidgetsaddons-5.80.0.tar.xz";
-      sha256 = "1wgwl08cxwzcd0nikvp2ph2dbj5fij6a5l65p9amvi6ladbgv6qs";
-      name = "kwidgetsaddons-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kwidgetsaddons-5.81.0.tar.xz";
+      sha256 = "0hmnlda1hgk6zwx6wnjzqc0b2awv835736sjyczrxcfaxlkfj99g";
+      name = "kwidgetsaddons-5.81.0.tar.xz";
     };
   };
   kwindowsystem = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kwindowsystem-5.80.0.tar.xz";
-      sha256 = "1ch44w27ilh994if3icskyqg6nhnbd5j430jxfj6fzfia9vvclmk";
-      name = "kwindowsystem-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kwindowsystem-5.81.0.tar.xz";
+      sha256 = "11ma5vhq8z570danzq9vdwwcq5n6drsm9m3rpvc1vd3kn2mslls7";
+      name = "kwindowsystem-5.81.0.tar.xz";
     };
   };
   kxmlgui = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/kxmlgui-5.80.0.tar.xz";
-      sha256 = "17dpcv2igkg1pk238bd396mn83nqp325sscx7qsf8cbj15dp7bw1";
-      name = "kxmlgui-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/kxmlgui-5.81.0.tar.xz";
+      sha256 = "1l3a9qzc1x1ai2g1g551w05n2jxshxr03rcy0n8m8lbf518288yv";
+      name = "kxmlgui-5.81.0.tar.xz";
     };
   };
   kxmlrpcclient = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/portingAids/kxmlrpcclient-5.80.0.tar.xz";
-      sha256 = "0aas26kjxsbgrrrazjvsvjqdr9993v2hyxci62mfpi7xsp5js4h4";
-      name = "kxmlrpcclient-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/portingAids/kxmlrpcclient-5.81.0.tar.xz";
+      sha256 = "15q3w6wdn5ynhyv5244irq51qbm66bl7799zfs964c0y6dmmm3hg";
+      name = "kxmlrpcclient-5.81.0.tar.xz";
     };
   };
   modemmanager-qt = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/modemmanager-qt-5.80.0.tar.xz";
-      sha256 = "1q14hx2228xhlggw14r9mhmnn2q3qvy3nc9hq5ynb9mwldns6nl6";
-      name = "modemmanager-qt-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/modemmanager-qt-5.81.0.tar.xz";
+      sha256 = "01rr4j09xqsja7h699yk58xif7qrlbszd0mim4cncy7pkgwn43h6";
+      name = "modemmanager-qt-5.81.0.tar.xz";
     };
   };
   networkmanager-qt = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/networkmanager-qt-5.80.0.tar.xz";
-      sha256 = "1wdzn2n4m7nz6skjc37p70zaq42ighk5f1wg1hjx3yf3rlpprnp0";
-      name = "networkmanager-qt-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/networkmanager-qt-5.81.0.tar.xz";
+      sha256 = "1j26ja4r6ry7134yh8i6rkf6dy6kapnrjap9476mr78ig0d6r2if";
+      name = "networkmanager-qt-5.81.0.tar.xz";
     };
   };
   oxygen-icons5 = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/oxygen-icons5-5.80.0.tar.xz";
-      sha256 = "0kmq993vd6011qny949z13lli4qymprk616kl1628dazniapka9m";
-      name = "oxygen-icons5-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/oxygen-icons5-5.81.0.tar.xz";
+      sha256 = "1s0gvicrfw6dl164cccj05rfhp627mqa9ml0j4dvgvknnrgip6hz";
+      name = "oxygen-icons5-5.81.0.tar.xz";
     };
   };
   plasma-framework = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/plasma-framework-5.80.0.tar.xz";
-      sha256 = "1nckb1801fy64hvm127r5fz14vgw81szw7w7miilqh6651v0zbyk";
-      name = "plasma-framework-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/plasma-framework-5.81.0.tar.xz";
+      sha256 = "0g36a632kafsvhamk33w46cafg1gyir3kkx12fkhyqll2vlpn0v7";
+      name = "plasma-framework-5.81.0.tar.xz";
     };
   };
   prison = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/prison-5.80.0.tar.xz";
-      sha256 = "1fcsvww08f7ihxq6x84jd2klp29m8hrbzp7rxqi7x9ghxxgysbpz";
-      name = "prison-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/prison-5.81.0.tar.xz";
+      sha256 = "1mrrwhg98br4r9g7lj6gn3w1z2gfh9kr7ycispssjalyp6bdf4yg";
+      name = "prison-5.81.0.tar.xz";
     };
   };
   purpose = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/purpose-5.80.0.tar.xz";
-      sha256 = "107xmhbjcw5mk068484gwqrzl2gkgy495737f4vj5q22m9rpal5d";
-      name = "purpose-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/purpose-5.81.0.tar.xz";
+      sha256 = "0188wxxy6rg6sm722db02nzhmlv3c540zs2qh6h9fbbf1k4h82jf";
+      name = "purpose-5.81.0.tar.xz";
     };
   };
   qqc2-desktop-style = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/qqc2-desktop-style-5.80.0.tar.xz";
-      sha256 = "14dy7n6m9vdq6v7h3r0w71vw86yxyza40wyxp0hhj44nb63fvczg";
-      name = "qqc2-desktop-style-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/qqc2-desktop-style-5.81.0.tar.xz";
+      sha256 = "1ac4jc6yi6fwndyivc11brlaz3sncxyxzwrfdak8gg579z67zjx5";
+      name = "qqc2-desktop-style-5.81.0.tar.xz";
     };
   };
   solid = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/solid-5.80.0.tar.xz";
-      sha256 = "023zk7la6ycd7h2j62z7b409w94sq2r9k0c020ywry6psjydqkx5";
-      name = "solid-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/solid-5.81.0.tar.xz";
+      sha256 = "0w144jdhspjgqpv0xyxr6l6bnh2bazn9jfbw5iim8fj4q5dyr6c1";
+      name = "solid-5.81.0.tar.xz";
     };
   };
   sonnet = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/sonnet-5.80.0.tar.xz";
-      sha256 = "13kqdfy6bgmqjfw82d2zh0bq4r53awa1f1cbshci6inwdslyvlmh";
-      name = "sonnet-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/sonnet-5.81.0.tar.xz";
+      sha256 = "0kin6xngk4bxxn7y06q1pm0vk5s66gh6riv58l051px27m6lwz2a";
+      name = "sonnet-5.81.0.tar.xz";
     };
   };
   syndication = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/syndication-5.80.0.tar.xz";
-      sha256 = "1j22yx2i2qxck6gy4jypjvmar4y93j5nmrmf7fkjx7z8hwxjgwhh";
-      name = "syndication-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/syndication-5.81.0.tar.xz";
+      sha256 = "1fxdhnd8kl0q13434vbkmjan9dakhn9bdrad9d4vd3x11c77ggkn";
+      name = "syndication-5.81.0.tar.xz";
     };
   };
   syntax-highlighting = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/syntax-highlighting-5.80.0.tar.xz";
-      sha256 = "060jnfri24rzkryyvxadpr3yn5xn0856j01ba5l38w0khs8mix4i";
-      name = "syntax-highlighting-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/syntax-highlighting-5.81.0.tar.xz";
+      sha256 = "0paazw8y8kdvwg2waa45az5qgyxi2w5nkfbjg84v1is7yhb065yb";
+      name = "syntax-highlighting-5.81.0.tar.xz";
     };
   };
   threadweaver = {
-    version = "5.80.0";
+    version = "5.81.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.80/threadweaver-5.80.0.tar.xz";
-      sha256 = "1j5m8gfjpi9cajhja77lhkrl3shq618wpza1k27azvi7r6jj4dva";
-      name = "threadweaver-5.80.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.81/threadweaver-5.81.0.tar.xz";
+      sha256 = "03mz4zibvmriaa9qxvqsnp3ahjnhylzjj80w5c6nc4jjywmi89af";
+      name = "threadweaver-5.81.0.tar.xz";
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/keybinder/default.nix b/nixpkgs/pkgs/development/libraries/keybinder/default.nix
index 663abb152804..fb481c19d05f 100644
--- a/nixpkgs/pkgs/development/libraries/keybinder/default.nix
+++ b/nixpkgs/pkgs/development/libraries/keybinder/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, autoconf, automake, libtool, pkg-config, gnome3
+{ lib, stdenv, fetchurl, autoconf, automake, libtool, pkg-config, gnome
 , gtk-doc, gtk2, python2Packages, lua, gobject-introspection
 }:
 
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    autoconf automake libtool gnome3.gnome-common gtk-doc gtk2
+    autoconf automake libtool gnome.gnome-common gtk-doc gtk2
     python pygtk lua gobject-introspection
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/keybinder3/default.nix b/nixpkgs/pkgs/development/libraries/keybinder3/default.nix
index e291ec56bb21..78755a87919d 100644
--- a/nixpkgs/pkgs/development/libraries/keybinder3/default.nix
+++ b/nixpkgs/pkgs/development/libraries/keybinder3/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome3
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome
 , gtk-doc, gtk3, libX11, libXext, libXrender, gobject-introspection
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoconf automake libtool pkg-config ];
   buildInputs = [
-    gnome3.gnome-common gtk-doc gtk3
+    gnome.gnome-common gtk-doc gtk3
     libX11 libXext libXrender gobject-introspection
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/kmsxx/default.nix b/nixpkgs/pkgs/development/libraries/kmsxx/default.nix
index c88dde7e4450..222747b4d734 100644
--- a/nixpkgs/pkgs/development/libraries/kmsxx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/kmsxx/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
     description = "C++11 library, utilities and python bindings for Linux kernel mode setting";
     homepage = "https://github.com/tomba/kmsxx";
     license = licenses.mpl20;
-    maintainers = with maintainers; [ gnidorah ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
     broken = true; # marked broken 2021-03-26
   };
diff --git a/nixpkgs/pkgs/development/libraries/kronosnet/default.nix b/nixpkgs/pkgs/development/libraries/kronosnet/default.nix
index c74ff6716fee..cc282d9abc9c 100644
--- a/nixpkgs/pkgs/development/libraries/kronosnet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/kronosnet/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kronosnet";
-  version = "1.20";
+  version = "1.21";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lP5W+4b9McU2Uqibh2SucIu2y4KluO3B1RpAJKgYq/M=";
+    sha256 = "14i4fl3g60gn5ay3dbwjcay3dnmnqr16zcp3g0wv9a3hjwh1if28";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config doxygen ];
diff --git a/nixpkgs/pkgs/development/libraries/l-smash/default.nix b/nixpkgs/pkgs/development/libraries/l-smash/default.nix
index b1b5fd012062..40eb4bd10d36 100644
--- a/nixpkgs/pkgs/development/libraries/l-smash/default.nix
+++ b/nixpkgs/pkgs/development/libraries/l-smash/default.nix
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ which ];
 
+  configureFlags = [
+    "--cc=cc"
+    "--cross-prefix=${stdenv.cc.targetPrefix}"
+  ];
+
   meta = with lib; {
     homepage = "http://l-smash.github.io/l-smash/";
     description = "MP4 container utilities";
diff --git a/nixpkgs/pkgs/development/libraries/lasem/default.nix b/nixpkgs/pkgs/development/libraries/lasem/default.nix
index 22f0436edca9..9c49429ece45 100644
--- a/nixpkgs/pkgs/development/libraries/lasem/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lasem/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, lib, stdenv, pkg-config, intltool, gobject-introspection, glib, gdk-pixbuf
-, libxml2, cairo, pango, gnome3 }:
+, libxml2, cairo, pango, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "lasem";
@@ -22,8 +22,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/lasso/default.nix b/nixpkgs/pkgs/development/libraries/lasso/default.nix
index 24efa689c581..e5503169fd5f 100644
--- a/nixpkgs/pkgs/development/libraries/lasso/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lasso/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
 
   pname = "lasso";
-  version = "2.6.1";
+  version = "2.7.0";
 
   src = fetchurl {
     url = "https://dev.entrouvert.org/lasso/lasso-${version}.tar.gz";
-    sha256 = "1pniisy4z9cshf6lvlz28kfa3qnwnhldb2rvkjxzc0l84g7dpa7q";
+    sha256 = "138x8pmj4k1pbah32z14rd8ylyx4lgz70s93m39vd17f8sjz50lj";
 
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/leptonica/default.nix b/nixpkgs/pkgs/development/libraries/leptonica/default.nix
index 11f1c7fd9c67..363140b5f58f 100644
--- a/nixpkgs/pkgs/development/libraries/leptonica/default.nix
+++ b/nixpkgs/pkgs/development/libraries/leptonica/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "leptonica";
-  version = "1.80.0";
+  version = "1.81.0";
 
   src = fetchurl {
     url = "http://www.leptonica.org/source/${pname}-${version}.tar.gz";
-    sha256 = "192bs676ind8627f0v3v8d1q7r4xwc7q0zvbdbxn1fgvmv14d77c";
+    sha256 = "sha256-0ZKwVem9YLhBEQI8yYDDc5Dm1CexlKj9K9YRVDo73a0=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/lib2geom/default.nix b/nixpkgs/pkgs/development/libraries/lib2geom/default.nix
new file mode 100644
index 000000000000..755ed6b814e6
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/lib2geom/default.nix
@@ -0,0 +1,60 @@
+{ stdenv
+, fetchFromGitLab
+, cmake
+, ninja
+, pkg-config
+, boost
+, glib
+, gsl
+, cairo
+, double-conversion
+, gtest
+, lib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lib2geom";
+  version = "1.1";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchFromGitLab {
+    owner = "inkscape";
+    repo = "lib2geom";
+    rev = "refs/tags/${version}";
+    sha256 = "sha256-u9pbpwVzAXzrM2/tQnd1B6Jo9Fzg6UZBr9AtUsNMfQ0=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    boost
+    glib
+    gsl
+    cairo
+    double-conversion
+  ];
+
+  checkInputs = [
+    gtest
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests
+    "-D2GEOM_BUILD_SHARED=ON"
+  ];
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Easy to use 2D geometry library in C++";
+    homepage = "https://gitlab.com/inkscape/lib2geom";
+    license = [ licenses.lgpl21Only licenses.mpl11 ];
+    maintainers = with maintainers; [ jtojnar ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libAfterImage/default.nix b/nixpkgs/pkgs/development/libraries/libAfterImage/default.nix
index 1c88459ba9b6..de463cdf42cb 100644
--- a/nixpkgs/pkgs/development/libraries/libAfterImage/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libAfterImage/default.nix
@@ -1,4 +1,6 @@
-{ lib, stdenv, fetchurl, zlib }:
+{ lib, stdenv, fetchurl, fetchpatch, autoreconfHook, giflib, libjpeg, libpng, libX11, zlib
+, static ? stdenv.hostPlatform.isStatic
+, withX ? !stdenv.isDarwin }:
 
 stdenv.mkDerivation {
   pname = "libAfterImage";
@@ -13,7 +15,56 @@ stdenv.mkDerivation {
     sha256 = "0n74rxidwig3yhr6fzxsk7y19n1nq1f296lzrvgj5pfiyi9k48vf";
   };
 
-  buildInputs = [ zlib ];
+  patches = [
+    # add back --with-gif option
+    (fetchpatch {
+      name = "libafterimage-gif.patch";
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/libafterimage/files/libafterimage-gif.patch?id=4aa4fca00611b0b3a4007870da43cc5fd63f76c4";
+      sha256 = "16pa94wlqpd7h6mzs4f0qm794yk1xczrwsgf93kdd3g0zbjq3rnr";
+    })
+
+    # fix build with newer giflib
+    (fetchpatch {
+      name = "libafterimage-giflib5-v2.patch";
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/libafterimage/files/libafterimage-giflib5-v2.patch?id=4aa4fca00611b0b3a4007870da43cc5fd63f76c4";
+      sha256 = "0qwydqy9bm73cg5n3vm97aj4jfi70p7fxqmfbi54vi78z593brln";
+      stripLen = 1;
+    })
+
+    # fix build with newer libpng
+    (fetchpatch {
+      name = "libafterimage-libpng15.patch";
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/libafterimage/files/libafterimage-libpng15.patch?id=4aa4fca00611b0b3a4007870da43cc5fd63f76c4";
+      sha256 = "1qyvf7786hayasfnnilfbri3p99cfz5wjpbli3gdqj2cvk6mpydv";
+    })
+
+    # fix an ldconfig problem
+    (fetchpatch {
+      name = "libafterimage-makefile.patch";
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/libafterimage/files/libafterimage-makefile.in.patch?id=4aa4fca00611b0b3a4007870da43cc5fd63f76c4";
+      sha256 = "1n6fniz6dldms615046yhc4mlg9gb53y4yfia8wfz6szgq5zicj4";
+    })
+  ];
+  patchFlags = [ "-p0" ];
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ giflib libjpeg libpng zlib ] ++ lib.optional withX libX11;
+
+  preConfigure = ''
+    rm -rf {libjpeg,libpng,libungif,zlib}/
+    substituteInPlace Makefile.in \
+      --replace "include .depend" ""
+  '' + lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile.in \
+      --replace "-soname," "-install_name,$out/lib/"
+  '';
+
+  configureFlags = [
+    "--with-gif"
+    "--disable-mmx-optimization"
+    "--${if static then "enable" else "disable"}-staticlibs"
+    "--${if !static then "enable" else "disable"}-sharedlibs"
+  ] ++ lib.optional withX "--with-x";
 
   meta = with lib; {
     homepage = "http://www.afterstep.org/afterimage/";
diff --git a/nixpkgs/pkgs/development/libraries/libadwaita/default.nix b/nixpkgs/pkgs/development/libraries/libadwaita/default.nix
new file mode 100644
index 000000000000..f3b9cad0720b
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libadwaita/default.nix
@@ -0,0 +1,67 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, docbook-xsl-nons
+, gtk-doc
+, meson
+, ninja
+, pkg-config
+, sassc
+, vala
+, gobject-introspection
+, gtk4
+, xvfb-run
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libadwaita";
+  version = "unstable-2021-05-01";
+
+  outputs = [ "out" "dev" "devdoc" ];
+  outputBin = "dev";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME";
+    repo = "libadwaita";
+    rev = "8d66b987a19979d9d7b85dacc6bad5ce0c8743fe";
+    sha256 = "0i3wav6jsyi4w4i2r1rad769m5y5s9djj4zqb7dfyh0bad24ba3q";
+  };
+
+  nativeBuildInputs = [
+    docbook-xsl-nons
+    gtk-doc
+    meson
+    ninja
+    pkg-config
+    sassc
+    vala
+  ];
+
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
+  buildInputs = [
+    gobject-introspection
+    gtk4
+  ];
+
+  checkInputs = [
+    xvfb-run
+  ];
+
+  doCheck = true;
+
+  checkPhase = ''
+    xvfb-run meson test
+  '';
+
+  meta = with lib; {
+    description = "Library to help with developing UI for mobile devices using GTK/GNOME";
+    homepage = "https://gitlab.gnome.org/GNOME/libadwaita";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ dotlambda ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libamqpcpp/default.nix b/nixpkgs/pkgs/development/libraries/libamqpcpp/default.nix
index 67404f9e5cf9..ee34afad4f74 100644
--- a/nixpkgs/pkgs/development/libraries/libamqpcpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libamqpcpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libamqpcpp";
-  version = "4.3.11";
+  version = "4.3.12";
 
   src = fetchFromGitHub {
     owner = "CopernicaMarketingSoftware";
     repo = "AMQP-CPP";
     rev = "v${version}";
-    sha256 = "sha256-ZEvzZ++0f7Kf3iVbf3vQbyE8yd/dasU+dSxDDUu8Xug=";
+    sha256 = "sha256-veiD2RrJ08HYZ1Jy8EUe6ct2qh7a2xZCn3TTM+Hvu+0=";
   };
 
   buildInputs = [ openssl ];
diff --git a/nixpkgs/pkgs/development/libraries/libao/default.nix b/nixpkgs/pkgs/development/libraries/libao/default.nix
index 99d38f0cfc43..4a07ba9da7d8 100644
--- a/nixpkgs/pkgs/development/libraries/libao/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libao/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkg-config, libpulseaudio, alsaLib, libcap
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkg-config, libpulseaudio, alsa-lib, libcap
 , CoreAudio, CoreServices, AudioUnit
 , usePulseAudio }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ] ++
     lib.optional  usePulseAudio   libpulseaudio ++
-    lib.optionals stdenv.isLinux  [ alsaLib libcap ] ++
+    lib.optionals stdenv.isLinux  [ alsa-lib libcap ] ++
     lib.optionals stdenv.isDarwin [ CoreAudio CoreServices AudioUnit ];
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libaom/default.nix b/nixpkgs/pkgs/development/libraries/libaom/default.nix
index 62045a79ebf5..83f5de4d0130 100644
--- a/nixpkgs/pkgs/development/libraries/libaom/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libaom/default.nix
@@ -1,13 +1,13 @@
-{ lib, stdenv, fetchgit, yasm, perl, cmake, pkg-config, python3 }:
+{ lib, stdenv, fetchzip, yasm, perl, cmake, pkg-config, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "libaom";
-  version = "3.0.0";
+  version = "3.1.0";
 
-  src = fetchgit {
-    url = "https://aomedia.googlesource.com/aom";
-    rev	= "v${version}";
-    sha256 = "178rq1d7i9q4lg40bipkyhdrk18j9wi5k5avpa5bls0zm7g5ifsx";
+  src = fetchzip {
+    url = "https://aomedia.googlesource.com/aom/+archive/v${version}.tar.gz";
+    sha256 = "1v3i34jmbz1p3x8msj3vx46nl6jdzxbkr2lfbh06vard8adb16il";
+    stripRoot = false;
   };
 
   patches = [ ./outputs.patch ];
diff --git a/nixpkgs/pkgs/development/libraries/libass/default.nix b/nixpkgs/pkgs/development/libraries/libass/default.nix
index 6a180cb62c19..3a8c2a2655ac 100644
--- a/nixpkgs/pkgs/development/libraries/libass/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libass/default.nix
@@ -17,11 +17,11 @@ in
 with lib;
 stdenv.mkDerivation rec {
   pname = "libass";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchurl {
     url = "https://github.com/libass/libass/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "0cz8v6kh3f2j5rdjrra2z0h715fa16vjm7kambvqx9hak86262cz";
+    sha256 = "sha256-HN05ydAHsG5zfnc4AE1/OM+bHpKEPzcweyTn/2OrjlM=";
   };
 
   configureFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/libavif/default.nix b/nixpkgs/pkgs/development/libraries/libavif/default.nix
index 173422fa71e0..27427d5e6dc9 100644
--- a/nixpkgs/pkgs/development/libraries/libavif/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libavif/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libavif";
-  version = "0.9.0";
+  version = "0.9.1";
 
   src = fetchFromGitHub {
     owner = "AOMediaCodec";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-7p0w94Od33vjTI5wGLxmDC5P2hebAl7OwJPl1lANhKs=";
+    sha256 = "sha256-XWPB5JI4V/anvtHFGY4ejeSlBbxzK6KRG8e5vBhxL8A=";
   };
 
   # reco: encode libaom slowest but best, decode dav1d fastest
diff --git a/nixpkgs/pkgs/development/libraries/libblockdev/default.nix b/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
index 584ea93293ef..9b1654420e74 100644
--- a/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, substituteAll, autoreconfHook, pkg-config, gtk-doc
+{ lib, stdenv, fetchFromGitHub, fetchpatch, substituteAll, autoreconfHook, pkg-config, gtk-doc
 , docbook_xml_dtd_43, python3, gobject-introspection, glib, udev, kmod, parted
 , cryptsetup, lvm2, dmraid, util-linux, libbytesize, libndctl, nss, volume_key
 , libxslt, docbook_xsl, gptfdisk, libyaml, autoconf-archive
@@ -22,6 +22,13 @@ stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       sgdisk = "${gptfdisk}/bin/sgdisk";
     })
+
+    # fix build with glib 2.68 (g_memdup is deprecated)
+    # https://github.com/storaged-project/libblockdev/pull/623
+    (fetchpatch {
+      url = "https://github.com/storaged-project/libblockdev/commit/5528baef6ccc835a06c45f9db34a2c9c3f2dd940.patch";
+      sha256 = "jxq4BLeyTMeNvBvY8k8QXIvYSJ2Gah0J75pq6FpG7PM=";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/libcanberra/default.nix b/nixpkgs/pkgs/development/libraries/libcanberra/default.nix
index 0127c1ebe8a1..5d4bca0f1b9f 100644
--- a/nixpkgs/pkgs/development/libraries/libcanberra/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcanberra/default.nix
@@ -2,7 +2,7 @@
 , gtk ? null
 , libpulseaudio, gst_all_1, libvorbis, libcap
 , CoreServices
-, withAlsa ? stdenv.isLinux, alsaLib }:
+, withAlsa ? stdenv.isLinux, alsa-lib }:
 
 stdenv.mkDerivation rec {
   name = "libcanberra-0.30";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ] ++ (with gst_all_1; [ gstreamer gst-plugins-base ])
     ++ lib.optional stdenv.isDarwin CoreServices
     ++ lib.optional stdenv.isLinux libcap
-    ++ lib.optional withAlsa alsaLib;
+    ++ lib.optional withAlsa alsa-lib;
 
   configureFlags = [ "--disable-oss" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/libccd/default.nix b/nixpkgs/pkgs/development/libraries/libccd/default.nix
new file mode 100644
index 000000000000..c8e7c8af2104
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libccd/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "libccd";
+  version = "2.1";
+
+  src = fetchFromGitHub {
+    owner = "danfis";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0sfmn5pd7k5kyhbxnd689xmsa5v843r7sska96dlysqpljd691jc";
+  };
+
+  patches = [
+    # Fix pkgconfig file with absolute CMAKE_INSTALL_*DIR
+    # https://github.com/danfis/libccd/pull/76
+    (fetchpatch {
+      url = "https://github.com/danfis/libccd/commit/cd16c4f168ae308e4c77db66ac97a2eaf47e059e.patch";
+      sha256 = "02wj21c185kwf8bn4qi4cnna0ypzqm481xw9rr8jy1i0cb1r9idg";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    description = "Library for collision detection between two convex shapes";
+    homepage = "https://github.com/danfis/libccd";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lopsided98 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libcef/default.nix b/nixpkgs/pkgs/development/libraries/libcef/default.nix
index ec1a5ee38281..8f01958a9bcf 100644
--- a/nixpkgs/pkgs/development/libraries/libcef/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcef/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, alsaLib, atk, cairo, cups, dbus, expat, fontconfig
+{ lib, stdenv, fetchurl, cmake, alsa-lib, atk, cairo, cups, dbus, expat, fontconfig
 , GConf, gdk-pixbuf, glib, gtk2, libX11, libxcb, libXcomposite, libXcursor
 , libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender, libXScrnSaver
 , libXtst, nspr, nss, pango, libpulseaudio, systemd, at-spi2-atk, at-spi2-core
@@ -7,7 +7,7 @@
 let
   libPath =
     lib.makeLibraryPath [
-      alsaLib atk cairo cups dbus expat fontconfig GConf gdk-pixbuf glib gtk2
+      alsa-lib atk cairo cups dbus expat fontconfig GConf gdk-pixbuf glib gtk2
       libX11 libxcb libXcomposite libXcursor libXdamage libXext libXfixes libXi
       libXrandr libXrender libXScrnSaver libXtst nspr nss pango libpulseaudio
       systemd at-spi2-core at-spi2-atk
diff --git a/nixpkgs/pkgs/development/libraries/libchamplain/default.nix b/nixpkgs/pkgs/development/libraries/libchamplain/default.nix
index 22a062acd6ef..20609509b66d 100644
--- a/nixpkgs/pkgs/development/libraries/libchamplain/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libchamplain/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, meson, ninja, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, pkg-config, glib, gtk3, cairo, sqlite, gnome3
+{ fetchurl, lib, stdenv, meson, ninja, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, pkg-config, glib, gtk3, cairo, sqlite, gnome
 , clutter-gtk, libsoup, gobject-introspection /*, libmemphis */ }:
 
 stdenv.mkDerivation rec {
@@ -24,8 +24,9 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libchardet/default.nix b/nixpkgs/pkgs/development/libraries/libchardet/default.nix
index 260c332f7ef4..47ce911a6951 100644
--- a/nixpkgs/pkgs/development/libraries/libchardet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libchardet/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libchardet";
-  version = "1.0.5";
+  version = "1.0.6";
 
   src = fetchFromGitHub {
     owner = "Joungkyun";
     repo = "libchardet";
     rev = version;
-    sha256 = "0c1k5hf3ssh3cm72w2zpy5k73vhy1gyq5s9rqdawqqa4al8syyvn";
+    sha256 = "sha256-JhEiWM3q8X+eEBHxv8k9yYOaTGoJOzI+/iFYC0gZJJs=";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/nixpkgs/pkgs/development/libraries/libcint/default.nix b/nixpkgs/pkgs/development/libraries/libcint/default.nix
index d0fc8c3c4a27..a6f2e05d7361 100644
--- a/nixpkgs/pkgs/development/libraries/libcint/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcint/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libcint";
-  version = "4.1.1";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "sunqm";
     repo = "libcint";
     rev = "v${version}";
-    sha256 = "sha256-HBZ/VMuTLAYpqcIPzQ4JbsMSXsI/sKc14ZFpbVhQF/g=";
+    hash = "sha256-nsIyosn8dBf217UmjXSKLTM2RhIQHCSvPlrvlqo5KLc=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/libck/default.nix b/nixpkgs/pkgs/development/libraries/libck/default.nix
index a46a7b33900a..35a5541bc368 100644
--- a/nixpkgs/pkgs/development/libraries/libck/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libck/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ck";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "concurrencykit";
     repo = pname;
     rev = version;
-    sha256 = "1w7g0y1n7jslca693fb8sanlfi1biq956dw6avdx6pf3c2s7l9jd";
+    sha256 = "sha256-HUC+8Vd0koAmumRZ8gS5u6LVa7fUfkIYRaxVv6/7Hgg=";
   };
 
   dontDisableStatic = true;
diff --git a/nixpkgs/pkgs/development/libraries/libco-canonical/default.nix b/nixpkgs/pkgs/development/libraries/libco-canonical/default.nix
deleted file mode 100644
index a01bbf7419cc..000000000000
--- a/nixpkgs/pkgs/development/libraries/libco-canonical/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config }:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  pname = "libco-canonical";
-  version = "20";
-
-  src = fetchFromGitHub {
-    owner = "canonical";
-    repo = "libco";
-    rev = "v${version}";
-    sha256 = "0r5b1r0sxngx349s5a3zkkvfw5by9y492kr34b25gjspzvjchlxq";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-
-  makeFlags = [ "PREFIX=${placeholder "out"}" ];
-
-  outputs = [ "dev" "out" ];
-
-  patchPhase = ''
-    # upstream project assumes all build products will go into single directory
-    # `$prefix` but we need `includedir` to point to "dev", not "out"
-    #
-    # pkgs/build-support/setup-hooks/multiple-outputs.sh would normally patch
-    # this automatically, but it fails here due to use of absolute paths
-
-    substituteInPlace Makefile \
-      --replace "@includedir@|\$(PREFIX)" "@includedir@|${placeholder "dev"}"
-  '';
-
-  meta = {
-    description = "A cooperative multithreading library written in C89";
-    homepage = "https://github.com/canonical/libco";
-    license = licenses.isc;
-    maintainers = with maintainers; [ wucke13 ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/libcommuni/default.nix b/nixpkgs/pkgs/development/libraries/libcommuni/default.nix
index 532c91a0edab..3e2c0daf0b46 100644
--- a/nixpkgs/pkgs/development/libraries/libcommuni/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcommuni/default.nix
@@ -19,7 +19,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   dontUseQmakeConfigure = true;
-  configureFlags = [ "-config" "release" ];
+  configureFlags = [ "-config" "release" ]
+    # Build mixes up dylibs/frameworks if one is not explicitely specified.
+    ++ lib.optionals stdenv.isDarwin [ "-config" "qt_framework" ];
 
   dontWrapQtApps = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/libcrafter/default.nix b/nixpkgs/pkgs/development/libraries/libcrafter/default.nix
index e7a6e6c98372..37ac9bf7f171 100644
--- a/nixpkgs/pkgs/development/libraries/libcrafter/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcrafter/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/pellegre/libcrafter";
     description = "High level C++ network packet sniffing and crafting library";
     license = lib.licenses.bsd3;
-    maintainers = [ lib.maintainers.lethalman ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libcryptui/default.nix b/nixpkgs/pkgs/development/libraries/libcryptui/default.nix
index 5fdd60abe115..e816846842f1 100644
--- a/nixpkgs/pkgs/development/libraries/libcryptui/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcryptui/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, intltool, glib, gnome3, gtk3, gnupg22, gpgme, dbus-glib, libgnome-keyring }:
+{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, intltool, glib, gnome, gtk3, gnupg22, gpgme, dbus-glib, libgnome-keyring }:
 
 stdenv.mkDerivation rec {
   pname = "libcryptui";
@@ -20,8 +20,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libdazzle/default.nix b/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
index d6ecb6e9747e..d62614c56c76 100644
--- a/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
@@ -1,19 +1,19 @@
 { lib, stdenv, fetchurl, ninja, meson, pkg-config, vala, gobject-introspection, libxml2
-, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb_run, glib, gtk3, gnome3 }:
+, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb-run, glib, gtk3, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libdazzle";
-  version = "3.38.0";
+  version = "3.40.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libdazzle/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "13v7s46cgw135ycx0byn7am4inn33slrhljq0v0wwfwl2y1g52p1";
+    sha256 = "19abrrjsyjhhl1xflnb0likb9wwzz78fa1mk2b064rpscmz9mafv";
   };
 
-  nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb_run glib ];
+  nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb-run glib ];
   buildInputs = [ glib gtk3 ];
 
   mesonFlags = [
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix b/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix
new file mode 100644
index 000000000000..a5c0752b9ae1
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, openssl
+, perl
+, pkg-config
+, rustPlatform
+, sqlite
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libdeltachat";
+  version = "1.55.0";
+
+  src = fetchFromGitHub {
+    owner = "deltachat";
+    repo = "deltachat-core-rust";
+    rev = version;
+    sha256 = "sha256-D30usAVpyiqXQMrTvmdaGFig7jhyb3rMTBQL/E2UL50=";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    sha256 = "1hf7lrqbv0ba9c0kmnjn5x1fispyyjip1gmllq77z6nsjpn0f9w8";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    perl
+    pkg-config
+  ] ++ (with rustPlatform; [
+    cargoSetupHook
+    rust.cargo
+  ]);
+
+  buildInputs = [
+    openssl
+    sqlite
+  ];
+
+  checkInputs = with rustPlatform; [
+    cargoCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Delta Chat Rust Core library";
+    homepage = "https://github.com/deltachat/deltachat-core-rust/";
+    changelog = "https://github.com/deltachat/deltachat-core-rust/blob/${version}/CHANGELOG.md";
+    license = licenses.mpl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libdigidocpp/default.nix b/nixpkgs/pkgs/development/libraries/libdigidocpp/default.nix
index 5b2914c141f3..c7a7673dc1b3 100644
--- a/nixpkgs/pkgs/development/libraries/libdigidocpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdigidocpp/default.nix
@@ -2,12 +2,12 @@
 , xercesc, xml-security-c, pkg-config, xsd, zlib, xalanc, xxd }:
 
 stdenv.mkDerivation rec {
-  version = "3.14.5";
+  version = "3.14.6";
   pname = "libdigidocpp";
 
   src = fetchurl {
      url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz";
-     sha256 = "sha256-PSrYoz5ID88pYs/4rP2kz0NpI0pK6wcnx62HokE0g20=";
+     sha256 = "sha256-zDMxJyL/T3cXrqgMT15yZlCozgyOt5nNreottuuiGHk=";
   };
 
   nativeBuildInputs = [ cmake pkg-config xxd ];
diff --git a/nixpkgs/pkgs/development/libraries/libdivecomputer/default.nix b/nixpkgs/pkgs/development/libraries/libdivecomputer/default.nix
index 0f65a5cee5ce..4a9a4b0980e3 100644
--- a/nixpkgs/pkgs/development/libraries/libdivecomputer/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdivecomputer/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdivecomputer";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchurl {
     url = "https://www.libdivecomputer.org/releases/${pname}-${version}.tar.gz";
-    sha256 = "0nm1mcscpxb9dv4p0lidd6rf5xg4vmcbigj6zqxvgn7pwnvpbzm0";
+    sha256 = "sha256-gNnxlOokUCA535hZhILgr8aw4zPeeds0wpstaJNNJbk=";
   };
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/libepc/default.nix b/nixpkgs/pkgs/development/libraries/libepc/default.nix
index ee8dfb6e94f7..9755d0977c85 100644
--- a/nixpkgs/pkgs/development/libraries/libepc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libepc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, intltool, gtk-doc, glib, avahi, gnutls, libuuid, libsoup, gtk3, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, intltool, gtk-doc, glib, avahi, gnutls, libuuid, libsoup, gtk3, gnome }:
 
 let
   avahiWithGtk = avahi.override { gtk3Support = true; };
@@ -32,8 +32,9 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libevent/default.nix b/nixpkgs/pkgs/development/libraries/libevent/default.nix
index b33e94114f63..24ded54d8e97 100644
--- a/nixpkgs/pkgs/development/libraries/libevent/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libevent/default.nix
@@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
     sha256 = "1fq30imk8zd26x8066di3kpc5zyfc5z6frr3zll685zcx4dxxrlj";
   };
 
+  preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '';
+
   # libevent_openssl is moved into its own output, so that openssl isn't present
   # in the default closure.
   outputs = [ "out" "dev" ]
diff --git a/nixpkgs/pkgs/development/libraries/libextractor/default.nix b/nixpkgs/pkgs/development/libraries/libextractor/default.nix
index d99cf6ef6214..cef1fbc512ae 100644
--- a/nixpkgs/pkgs/development/libraries/libextractor/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libextractor/default.nix
@@ -13,11 +13,11 @@
 # '';
 # See also <https://nixos.org/nixpkgs/manual/#sec-language-gnome>.
 , gtkSupport ? true, glib ? null, gtk3 ? null
-, videoSupport ? true, ffmpeg_3 ? null, libmpeg2 ? null}:
+, videoSupport ? true, ffmpeg ? null, libmpeg2 ? null}:
 
 assert gstreamerSupport -> gst_all_1 != null && builtins.isList (gstPlugins gst_all_1);
 assert gtkSupport -> glib != null && gtk3 != null;
-assert videoSupport -> ffmpeg_3 != null && libmpeg2 != null;
+assert videoSupport -> ffmpeg != null && libmpeg2 != null;
 
 stdenv.mkDerivation rec {
   pname = "libextractor";
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
    ] ++ lib.optionals gstreamerSupport
           ([ gst_all_1.gstreamer ] ++ gstPlugins gst_all_1)
      ++ lib.optionals gtkSupport [ glib gtk3 ]
-     ++ lib.optionals videoSupport [ ffmpeg_3 libmpeg2 ];
+     ++ lib.optionals videoSupport [ ffmpeg libmpeg2 ];
 
   configureFlags = [
     "--disable-ltdl-install"
diff --git a/nixpkgs/pkgs/development/libraries/libfaketime/default.nix b/nixpkgs/pkgs/development/libraries/libfaketime/default.nix
index ced1c3e7bb9f..34c957715dde 100644
--- a/nixpkgs/pkgs/development/libraries/libfaketime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfaketime/default.nix
@@ -39,5 +39,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
+    mainProgram = "faketime";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libfido2/default.nix b/nixpkgs/pkgs/development/libraries/libfido2/default.nix
index f44ae4d01f24..64c16e92c44b 100644
--- a/nixpkgs/pkgs/development/libraries/libfido2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfido2/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
 , fetchpatch
 , cmake
@@ -7,30 +8,47 @@
 , libcbor
 , openssl
 , udev
+, zlib
 }:
 
 stdenv.mkDerivation rec {
   pname = "libfido2";
-  version = "1.5.0";
+  version = "1.7.0";
+
+  # releases on https://developers.yubico.com/libfido2/Releases/ are signed
   src = fetchurl {
     url = "https://developers.yubico.com/${pname}/Releases/${pname}-${version}.tar.gz";
-    sha256 = "08iizxq3w8mpkwfrfpl59csffc20yz8x398bl3kf23rrr4izk42r";
+    sha256 = "13khkp2q8g447797l09p83qxy0z8vgmzr54l8dcnapy9lsr4jrqi";
   };
 
+  patches = [
+    # fix log truncation
+    # https://github.com/Yubico/libfido2/issues/318
+    # https://github.com/Yubico/libfido2/pull/319
+    (fetchpatch {
+      url = "https://github.com/Yubico/libfido2/commit/8edb9a204b2f4aeb487e282908c3187f1d02d606.patch";
+      sha256 = "1i360bghwbdccgkzjfzvhilscnwsj9lhfiviy000n928698l4wan";
+    })
+  ];
+
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ hidapi libcbor openssl ]
+  buildInputs = [ libcbor openssl zlib ]
+    ++ lib.optionals stdenv.isDarwin [ hidapi ]
     ++ lib.optionals stdenv.isLinux [ udev ];
 
   cmakeFlags = [
     "-DUDEV_RULES_DIR=${placeholder "out"}/etc/udev/rules.d"
-    "-DUSE_HIDAPI=1"
     "-DCMAKE_INSTALL_LIBDIR=lib"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "-DUSE_HIDAPI=1"
+  ] ++ lib.optionals stdenv.isLinux [
+    "-DNFC_LINUX=1"
   ];
 
   meta = with lib; {
     description = ''
-    Provides library functionality for FIDO 2.0, including communication with a device over USB.
+      Provides library functionality for FIDO 2.0, including communication with a device over USB.
     '';
     homepage = "https://github.com/Yubico/libfido2";
     license = licenses.bsd2;
diff --git a/nixpkgs/pkgs/development/libraries/libfive/default.nix b/nixpkgs/pkgs/development/libraries/libfive/default.nix
index 0f6ad84fe755..3833a7fe880a 100644
--- a/nixpkgs/pkgs/development/libraries/libfive/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfive/default.nix
@@ -10,6 +10,7 @@
 , libpng
 , boost
 , guile
+, stdenv
 }:
 
 mkDerivation {
@@ -26,8 +27,19 @@ mkDerivation {
   nativeBuildInputs = [ wrapQtAppsHook cmake ninja pkg-config ];
   buildInputs = [ eigen zlib libpng boost guile ];
 
-  # Link "Studio" binary to "libfive-studio" to be more obvious:
-  postFixup = ''
+  postInstall = if stdenv.isDarwin then ''
+    # No rules to install the mac app, so do it manually.
+    mkdir -p $out/Applications
+    cp -r studio/Studio.app $out/Applications/Studio.app
+
+    install_name_tool \
+      -change libfive.dylib $out/lib/libfive.dylib \
+      -change libfive-guile.dylib $out/lib/libfive-guile.dylib \
+      $out/Applications/Studio.app/Contents/MacOS/Studio
+
+    wrapQtApp $out/Applications/Studio.app/Contents/MacOS/Studio
+  '' else ''
+    # Link "Studio" binary to "libfive-studio" to be more obvious:
     ln -s "$out/bin/Studio" "$out/bin/libfive-studio"
   '';
 
diff --git a/nixpkgs/pkgs/development/libraries/libfixposix/default.nix b/nixpkgs/pkgs/development/libraries/libfixposix/default.nix
index d8659b9e15f0..4c7680f70469 100644
--- a/nixpkgs/pkgs/development/libraries/libfixposix/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfixposix/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, getconf }:
 
 stdenv.mkDerivation rec {
   pname = "libfixposix";
@@ -11,13 +11,13 @@ stdenv.mkDerivation rec {
     sha256 = "1x4q6yspi5g2s98vq4qszw4z3zjgk9l5zs8471w4d4cs6l97w08j";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
+  nativeBuildInputs = [ autoreconfHook pkg-config ] ++ lib.optionals stdenv.isDarwin [ getconf ];
 
   meta = with lib; {
     homepage = "https://github.com/sionescu/libfixposix";
     description = "Thin wrapper over POSIX syscalls and some replacement functionality";
     license = licenses.boost;
     maintainers = with maintainers; [ orivej raskin ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libgda/6.x.nix b/nixpkgs/pkgs/development/libraries/libgda/6.x.nix
index fc24fe41c4d3..28235d65d98a 100644
--- a/nixpkgs/pkgs/development/libraries/libgda/6.x.nix
+++ b/nixpkgs/pkgs/development/libraries/libgda/6.x.nix
@@ -12,7 +12,7 @@
 , json-glib
 , isocodes
 , openssl
-, gnome3
+, gnome
 , gobject-introspection
 , vala
 , libgee
@@ -71,9 +71,10 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "libgda6";
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgda/default.nix b/nixpkgs/pkgs/development/libraries/libgda/default.nix
index 307cc14a6efe..b3f6e1a7cdd9 100644
--- a/nixpkgs/pkgs/development/libraries/libgda/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgda/default.nix
@@ -7,7 +7,7 @@
 , libxml2
 , gtk3
 , openssl
-, gnome3
+, gnome
 , gobject-introspection
 , vala
 , libgee
@@ -84,8 +84,9 @@ assert postgresSupport -> postgresql != null;
   hardeningDisable = [ "format" ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgdamm/default.nix b/nixpkgs/pkgs/development/libraries/libgdamm/default.nix
index 44a0e8bc2121..ad5e0cbecd6e 100644
--- a/nixpkgs/pkgs/development/libraries/libgdamm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgdamm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, glibmm, libgda, libxml2, gnome3
+{ lib, stdenv, fetchurl, pkg-config, glibmm, libgda, libxml2, gnome
 , mysqlSupport ? false
 , postgresSupport ? false }:
 
@@ -24,8 +24,9 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgdata/default.nix b/nixpkgs/pkgs/development/libraries/libgdata/default.nix
index fdaace2dc4f0..f85dbea54d9d 100644
--- a/nixpkgs/pkgs/development/libraries/libgdata/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgdata/default.nix
@@ -12,7 +12,7 @@
 , gcr
 , gnome-online-accounts
 , gobject-introspection
-, gnome3
+, gnome
 , p11-kit
 , openssl
 , uhttpmock
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none"; # Stable version has not been updated for a long time.
     };
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "GData API library";
     homepage = "https://wiki.gnome.org/Projects/libgdata";
-    maintainers = with maintainers; [ raskin lethalman ] ++ teams.gnome.members;
+    maintainers = with maintainers; [ raskin ] ++ teams.gnome.members;
     platforms = platforms.linux;
     license = licenses.lgpl21Plus;
   };
diff --git a/nixpkgs/pkgs/development/libraries/libgee/default.nix b/nixpkgs/pkgs/development/libraries/libgee/default.nix
index 407b99b5a57b..1a40d1f17b41 100644
--- a/nixpkgs/pkgs/development/libraries/libgee/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgee/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchurl, autoconf, vala, pkg-config, glib, gobject-introspection, gnome3 }:
+{ lib, stdenv, fetchurl, autoconf, vala, pkg-config, glib, gobject-introspection, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libgee";
-  version = "0.20.3";
+  version = "0.20.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1pm525wm11dhwz24m8bpcln9547lmrigl6cxf3qsbg4cr3pyvdfh";
+    sha256 = "03nyf8n7i7f67fsh220g52slmihdk1lv4iwspm7xmkgrj3rink2j";
   };
 
   doCheck = true;
@@ -20,8 +20,9 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgepub/default.nix b/nixpkgs/pkgs/development/libraries/libgepub/default.nix
index e058c7ed5af3..7ae7bff50efa 100644
--- a/nixpkgs/pkgs/development/libraries/libgepub/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgepub/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, gnome3
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, gnome
 , webkitgtk, libsoup, libxml2, libarchive }:
 
 stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib webkitgtk libsoup libxml2 libarchive ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libgig/default.nix b/nixpkgs/pkgs/development/libraries/libgig/default.nix
index f78a51db5de6..26e3b46d5510 100644
--- a/nixpkgs/pkgs/development/libraries/libgig/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgig/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libgig";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchurl {
     url = "https://download.linuxsampler.org/packages/${pname}-${version}.tar.bz2";
-    sha256 = "1zs5yy124bymfyapsnljr6rv2lnn5inwchm0xnwiw44b2d39l8hn";
+    sha256 = "sha256-oG0Jh4eAxsGd2NucM1RNU6kzV/niexSpg6qrpo//p5Q=";
   };
 
   nativeBuildInputs = [ autoconf automake libtool pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libgit2-glib/default.nix b/nixpkgs/pkgs/development/libraries/libgit2-glib/default.nix
index fe36a9d663f3..56259814d8a5 100644
--- a/nixpkgs/pkgs/development/libraries/libgit2-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgit2-glib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, gnome3, meson, ninja, pkg-config, vala, libssh2
+{ lib, stdenv, fetchurl, gnome, meson, ninja, pkg-config, vala, libssh2
 , gtk-doc, gobject-introspection, libgit2, glib, python3 }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libgksu/default.nix b/nixpkgs/pkgs/development/libraries/libgksu/default.nix
index cf8f5ab48786..b00e7b324518 100644
--- a/nixpkgs/pkgs/development/libraries/libgksu/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgksu/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, wrapGAppsHook, gtk2, gnome2, gnome3,
+{ lib, stdenv, fetchurl, pkg-config, wrapGAppsHook, gtk2, gnome2, gnome,
   libstartup_notification, libgtop, perlPackages,
   autoreconfHook, intltool, docbook_xsl, xauth
 }:
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gtk2 gnome2.GConf libstartup_notification
-    gnome3.libgnome-keyring libgtop gnome2.libglade
+    gnome.libgnome-keyring libgtop gnome2.libglade
   ] ++ (with perlPackages; [ perl XMLParser ]);
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/libglvnd/default.nix b/nixpkgs/pkgs/development/libraries/libglvnd/default.nix
index 31a9579a8928..65d0651ed415 100644
--- a/nixpkgs/pkgs/development/libraries/libglvnd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libglvnd/default.nix
@@ -5,14 +5,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libglvnd";
-  version = "1.3.2";
+  version = "1.3.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "glvnd";
     repo = "libglvnd";
     rev = "v${version}";
-    sha256 = "10x7fgb114r4gikdg6flszl3kwzcb9y5qa7sj9936mk0zxhjaylz";
+    sha256 = "0gjk6m3gkdm12bmih2jflp0v5s1ibkixk7mrzrk0cj884m3hy1z6";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config python3 addOpenGLRunpath ];
diff --git a/nixpkgs/pkgs/development/libraries/libgnomekbd/default.nix b/nixpkgs/pkgs/development/libraries/libgnomekbd/default.nix
index 62228b8837a8..957c21342524 100644
--- a/nixpkgs/pkgs/development/libraries/libgnomekbd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgnomekbd/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, file, intltool, glib, gtk3, libxklavier, wrapGAppsHook, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, file, intltool, glib, gtk3, libxklavier, wrapGAppsHook, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libgnomekbd";
@@ -11,10 +11,6 @@ stdenv.mkDerivation rec {
     sha256 = "0y962ykn3rr9gylj0pwpww7bi20lmhvsw6qvxs5bisbn2mih5jpp";
   };
 
-  passthru = {
-    updateScript = gnome3.updateScript { packageName = pname; };
-  };
-
   nativeBuildInputs = [
     file
     intltool
@@ -29,6 +25,13 @@ stdenv.mkDerivation rec {
     glib
   ];
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      versionPolicy = "odd-unstable";
+    };
+  };
+
   meta = with lib; {
     description = "Keyboard management library";
     maintainers = teams.gnome.members;
diff --git a/nixpkgs/pkgs/development/libraries/libgpiod/default.nix b/nixpkgs/pkgs/development/libraries/libgpiod/default.nix
index 8f6d9fcab5ed..ccf1c4703647 100644
--- a/nixpkgs/pkgs/development/libraries/libgpiod/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgpiod/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libgpiod";
-  version = "1.6.2";
+  version = "1.6.3";
 
   src = fetchurl {
     url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
-    sha256 = "1k8mxkzvd6y9aawxghddrjkldzskhb6607qhbwjfl9f945ns87qa";
+    sha256 = "sha256-60RgcL4URP19MtMrvKU8Lzu7CiEZPbhhmM9gULeihEE=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/libgrss/default.nix b/nixpkgs/pkgs/development/libraries/libgrss/default.nix
index b8c7c7bc4977..8c5ea73af0b9 100644
--- a/nixpkgs/pkgs/development/libraries/libgrss/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgrss/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, vala, gobject-introspection, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, libxml2, libsoup, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, vala, gobject-introspection, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, libxml2, libsoup, gnome }:
 
 let
   version = "0.7.0";
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libgsf/default.nix b/nixpkgs/pkgs/development/libraries/libgsf/default.nix
index 77fa161b773a..1ccc5d778967 100644
--- a/nixpkgs/pkgs/development/libraries/libgsf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgsf/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, lib, stdenv, pkg-config, intltool, gettext, glib, libxml2, zlib, bzip2
-, perl, gdk-pixbuf, libiconv, libintl, gnome3 }:
+, perl, gdk-pixbuf, libiconv, libintl, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libgsf";
@@ -23,8 +23,9 @@ stdenv.mkDerivation rec {
   preCheck = "patchShebangs ./tests/";
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgtop/default.nix b/nixpkgs/pkgs/development/libraries/libgtop/default.nix
index af4fe04a0b42..98b0dc89fee8 100644
--- a/nixpkgs/pkgs/development/libraries/libgtop/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgtop/default.nix
@@ -5,7 +5,7 @@
 , perl
 , gettext
 , gobject-introspection
-, gnome3
+, gnome
 , gtk-doc
 }:
 
@@ -31,8 +31,9 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgudev/default.nix b/nixpkgs/pkgs/development/libraries/libgudev/default.nix
index feeae05bf526..6fd108b3b7a6 100644
--- a/nixpkgs/pkgs/development/libraries/libgudev/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgudev/default.nix
@@ -1,31 +1,49 @@
 { lib, stdenv
 , fetchurl
 , pkg-config
+, meson
+, ninja
 , udev
 , glib
 , gobject-introspection
-, gnome3
+, gnome
+, vala
 }:
 
 stdenv.mkDerivation rec {
   pname = "libgudev";
-  version = "234";
+  version = "236";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0drf39qhsdz35kwb18hnfj2ig4yfxhfks66m783zlhnvy2narbhv";
+    sha256 = "094mgjmwgsgqrr1i0vd20ynvlkihvs3vgbmpbrhswjsrdp86j0z5";
   };
 
-  nativeBuildInputs = [ pkg-config gobject-introspection ];
-  buildInputs = [ udev glib ];
+  nativeBuildInputs = [
+    pkg-config
+    gobject-introspection
+    meson
+    ninja
+    vala
+  ];
 
-  # There's a dependency cycle with umockdev and the tests fail to LD_PRELOAD anyway.
-  configureFlags = [ "--disable-umockdev" ];
+  buildInputs = [
+    udev
+    glib
+  ];
+
+  mesonFlags = [
+    # There's a dependency cycle with umockdev and the tests fail to LD_PRELOAD anyway
+    "-Dtests=disabled"
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
+    "-Dvapi=disabled"
+  ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libguestfs/default.nix b/nixpkgs/pkgs/development/libraries/libguestfs/default.nix
index 0f56f8c97f38..47f6ffe2c52f 100644
--- a/nixpkgs/pkgs/development/libraries/libguestfs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libguestfs/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   '';
   configureFlags = [ "--disable-appliance" "--disable-daemon" "--with-distro=NixOS" ]
     ++ lib.optionals (!javaSupport) [ "--disable-java" "--without-java" ];
-  patches = [ ./libguestfs-syms.patch ];
+  patches = [ ./libguestfs-syms.patch ./ocaml-4.12.patch ];
   NIX_CFLAGS_COMPILE="-I${libxml2.dev}/include/libxml2/";
   installFlags = [ "REALLY_INSTALL=yes" ];
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/libguestfs/ocaml-4.12.patch b/nixpkgs/pkgs/development/libraries/libguestfs/ocaml-4.12.patch
new file mode 100644
index 000000000000..032527d57130
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libguestfs/ocaml-4.12.patch
@@ -0,0 +1,11 @@
+--- a/common/mlstdutils/std_utils.ml	2019-02-07 15:45:56.516955598 +0100
++++ b/common/mlstdutils/std_utils.ml	2019-02-07 15:45:56.516955598 +0100
+@@ -305,7 +305,7 @@
+       | x::xs, y::ys, z::zs -> (x, y, z) :: combine3 xs ys zs
+       | _ -> invalid_arg "combine3"
+ 
+-    let rec assoc_lbl ?(cmp = compare) ~default x = function
++    let rec assoc_lbl ?(cmp = Pervasives.compare) ~default x = function
+       | [] -> default
+       | (y, y') :: _ when cmp x y = 0 -> y'
+       | _ :: ys -> assoc_lbl ~cmp ~default x ys
diff --git a/nixpkgs/pkgs/development/libraries/libgweather/default.nix b/nixpkgs/pkgs/development/libraries/libgweather/default.nix
index 9351d3f707fa..fbab67e08652 100644
--- a/nixpkgs/pkgs/development/libraries/libgweather/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgweather/default.nix
@@ -1,24 +1,57 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, libxml2, glib, gtk3, gettext, libsoup
-, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gobject-introspection, python3, tzdata, geocode-glib, vala, gnome3 }:
+{ lib
+, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, libxml2
+, glib
+, gtk3
+, gettext
+, libsoup
+, gtk-doc
+, docbook-xsl-nons
+, docbook_xml_dtd_43
+, gobject-introspection
+, python3
+, tzdata
+, geocode-glib
+, vala
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "libgweather";
-  version = "3.36.1";
+  version = "40.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0l74hc02rvzm4p530y539a67jwb080fqdaazdl8j0fr3xvq0j9yy";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config gettext vala gtk-doc docbook_xsl docbook_xml_dtd_43 gobject-introspection python3 ];
-  buildInputs = [ glib gtk3 libsoup libxml2 geocode-glib ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    vala
+    gtk-doc
+    docbook-xsl-nons
+    docbook_xml_dtd_43
+    gobject-introspection
+    python3
+    python3.pkgs.pygobject3
+  ];
 
-  postPatch = ''
-    chmod +x meson/meson_post_install.py
-    patchShebangs meson/meson_post_install.py
-  '';
+  buildInputs = [
+    glib
+    gtk3
+    libsoup
+    libxml2
+    geocode-glib
+  ];
 
   mesonFlags = [
     "-Dzoneinfo_dir=${tzdata}/share/zoneinfo"
@@ -26,9 +59,16 @@ stdenv.mkDerivation rec {
     "-Dgtk_doc=true"
   ];
 
+  postPatch = ''
+    chmod +x meson/meson_post_install.py
+    patchShebangs meson/meson_post_install.py
+    patchShebangs data/gen_locations_variant.py
+  '';
+
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgxps/default.nix b/nixpkgs/pkgs/development/libraries/libgxps/default.nix
index be088496f2e1..fc871f174eb5 100644
--- a/nixpkgs/pkgs/development/libraries/libgxps/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgxps/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, cairo
-, libarchive, freetype, libjpeg, libtiff, gnome3, lcms2
+, libarchive, freetype, libjpeg, libtiff, gnome, lcms2
 }:
 
 stdenv.mkDerivation rec {
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix b/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
index ff2093255cf0..7597aee697a8 100644
--- a/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
+++ b/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, gobject-introspection, vala
 , gtk-doc, docbook_xsl, docbook_xml_dtd_43
-, gtk3, gnome3
-, dbus, xvfb_run, libxml2
+, gtk3, gnome
+, dbus, xvfb-run, libxml2
 , hicolor-icon-theme
 }:
 
@@ -24,8 +24,8 @@ stdenv.mkDerivation rec {
     meson ninja pkg-config gobject-introspection vala libxml2
     gtk-doc docbook_xsl docbook_xml_dtd_43
   ];
-  buildInputs = [ gnome3.gnome-desktop gtk3 libxml2 ];
-  checkInputs = [ dbus xvfb_run hicolor-icon-theme ];
+  buildInputs = [ gnome.gnome-desktop gtk3 libxml2 ];
+  checkInputs = [ dbus xvfb-run hicolor-icon-theme ];
 
   mesonFlags = [
     "-Dgtk_doc=true"
diff --git a/nixpkgs/pkgs/development/libraries/libhandy/default.nix b/nixpkgs/pkgs/development/libraries/libhandy/default.nix
index 4532edfd884b..891bd04ea543 100644
--- a/nixpkgs/pkgs/development/libraries/libhandy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libhandy/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
 , meson
 , ninja
@@ -6,35 +7,45 @@
 , gobject-introspection
 , vala
 , gtk-doc
-, docbook_xsl
+, docbook-xsl-nons
 , docbook_xml_dtd_43
 , gtk3
+, enableGlade ? false
 , glade
 , dbus
-, xvfb_run
+, xvfb-run
 , libxml2
 , gdk-pixbuf
 , librsvg
 , hicolor-icon-theme
 , at-spi2-atk
 , at-spi2-core
+, gnome
+, libhandy
+, runCommand
 }:
 
 stdenv.mkDerivation rec {
   pname = "libhandy";
-  version = "1.2.0";
+  version = "1.2.2";
 
-  outputs = [ "out" "dev" "devdoc" "glade" ];
+  outputs = [
+    "out"
+    "dev"
+    "devdoc"
+  ] ++ lib.optionals enableGlade [
+    "glade"
+  ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-OfWQriCRDnb+HAYHsuvliXUPRWENau7Fww4u5gKiCyU=";
+    sha256 = "sha256-R//Shl0CvRyleVIt6t1+L5U2Lx8gJGL9XuriuBZosEg=";
   };
 
   nativeBuildInputs = [
     docbook_xml_dtd_43
-    docbook_xsl
+    docbook-xsl-nons
     gobject-introspection
     gtk-doc
     libxml2
@@ -46,14 +57,15 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gdk-pixbuf
-    glade
     gtk3
     libxml2
+  ] ++ lib.optionals enableGlade [
+    glade
   ];
 
   checkInputs = [
     dbus
-    xvfb_run
+    xvfb-run
     at-spi2-atk
     at-spi2-core
     librsvg
@@ -62,6 +74,7 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Dgtk_doc=true"
+    "-Dglade_catalog=${if enableGlade then "enabled" else "disabled"}"
   ];
 
   # Uses define_variable in pkg-config, but we still need it to use the glade output
@@ -79,6 +92,23 @@ stdenv.mkDerivation rec {
       meson test --print-errorlogs
   '';
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+    };
+  } // lib.optionalAttrs (!enableGlade) {
+    glade =
+      let
+        libhandyWithGlade = libhandy.override {
+          enableGlade = true;
+        };
+      in runCommand "${libhandy.name}-glade" {} ''
+        cp -r "${libhandyWithGlade.glade}" "$out"
+        chmod -R +w "$out"
+        sed -e "s#${libhandyWithGlade.out}#${libhandy.out}#g" -e "s#${libhandyWithGlade.glade}#$out#g" -i $(find "$out" -type f)
+      '';
+  };
+
   meta = with lib; {
     changelog = "https://gitlab.gnome.org/GNOME/libhandy/-/tags/${version}";
     description = "Building blocks for modern adaptive GNOME apps";
diff --git a/nixpkgs/pkgs/development/libraries/libhdhomerun/default.nix b/nixpkgs/pkgs/development/libraries/libhdhomerun/default.nix
index ab0ad6fab23e..f8db7075ca76 100644
--- a/nixpkgs/pkgs/development/libraries/libhdhomerun/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libhdhomerun/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libhdhomerun";
-  version = "20200907";
+  version = "20210224";
 
   src = fetchurl {
     url = "https://download.silicondust.com/hdhomerun/libhdhomerun_${version}.tgz";
-    sha256 = "1v80jk056ii2iv2w7sq24i3prjrbhxql5vqhafs7vq54qmwvgbnb";
+    sha256 = "sha256:1y1kwv34qg8nayfkbrxkw8163l46krsfqx8yvkcsc97ilsd3i5mr";
   };
 
   patchPhase = lib.optionalString stdenv.isDarwin ''
diff --git a/nixpkgs/pkgs/development/libraries/libheif/default.nix b/nixpkgs/pkgs/development/libraries/libheif/default.nix
index 71dfca5e6430..d445a7c3867e 100644
--- a/nixpkgs/pkgs/development/libraries/libheif/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libheif/default.nix
@@ -3,7 +3,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libheif";
-  version = "1.11.0";
+  version = "1.12.0";
 
   outputs = [ "bin" "out" "dev" "man" ];
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "strukturag";
     repo = "libheif";
     rev = "v${version}";
-    sha256 = "sha256-xT0sfYPp5atYXnVpP8TYu2TC9/Z/ClyEP1OTSfcw1gw=";
+    sha256 = "sha256-RjGLaDSBO8T7ijRb5a16aUlkCy5vdFPs4O9caIJo4jI=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libhttpseverywhere/default.nix b/nixpkgs/pkgs/development/libraries/libhttpseverywhere/default.nix
index 648eb89a514a..975ad2258131 100644
--- a/nixpkgs/pkgs/development/libraries/libhttpseverywhere/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libhttpseverywhere/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, meson, ninja, makeFontsConf, vala, fetchpatch
-, gnome3, libgee, glib, json-glib, libarchive, libsoup, gobject-introspection }:
+, gnome, libgee, glib, json-glib, libarchive, libsoup, gobject-introspection }:
 
 let
   pname = "libhttpseverywhere";
@@ -34,8 +34,9 @@ in stdenv.mkDerivation rec {
   outputs = [ "out" "devdoc" ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libical/default.nix b/nixpkgs/pkgs/development/libraries/libical/default.nix
index fa396e966506..909ee73e69a6 100644
--- a/nixpkgs/pkgs/development/libraries/libical/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libical/default.nix
@@ -12,16 +12,15 @@
 , libical
 , python3
 , tzdata
+, fixDarwinDylibNames
 , introspectionSupport ? stdenv.buildPlatform == stdenv.hostPlatform
-, gobject-introspection ? null
-, vala ? null
+, gobject-introspection
+, vala
 }:
 
-assert introspectionSupport -> gobject-introspection != null && vala != null;
-
 stdenv.mkDerivation rec {
   pname = "libical";
-  version = "3.0.9";
+  version = "3.0.10";
 
   outputs = [ "out" "dev" ]; # "devdoc" ];
 
@@ -29,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "libical";
     repo = "libical";
     rev = "v${version}";
-    sha256 = "sha256-efdiGktLGITaQ6VinnfYG52fMhO0Av+JKROt2kTvS1U=";
+    sha256 = "sha256-fLmEJlkZLYLcKZqZwitf8rH261QDPTJZf/+/+FMsGIg=";
   };
 
   nativeBuildInputs = [
@@ -47,6 +46,8 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals introspectionSupport [
     gobject-introspection
     vala
+  ] ++ lib.optionals stdenv.isDarwin [
+    fixDarwinDylibNames
   ];
   installCheckInputs = [
     # running libical-glib tests
@@ -80,6 +81,13 @@ stdenv.mkDerivation rec {
   # LD_LIBRARY_PATH and GI_TYPELIB_PATH variables
   doInstallCheck = true;
   enableParallelChecking = false;
+  preInstallCheck = if stdenv.isDarwin then ''
+    for testexe in $(find ./src/test -maxdepth 1 -type f -executable); do
+      for lib in $(cd lib && ls *.3.dylib); do
+        install_name_tool -change $lib $out/lib/$lib $testexe
+      done
+    done
+  '' else null;
   installCheckPhase = ''
     runHook preInstallCheck
 
diff --git a/nixpkgs/pkgs/development/libraries/libidn2/default.nix b/nixpkgs/pkgs/development/libraries/libidn2/default.nix
index 30a334266395..b1d234476c4b 100644
--- a/nixpkgs/pkgs/development/libraries/libidn2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libidn2/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, libiconv, libunistring, help2man, buildPackages }:
+{ fetchurl, lib, stdenv, libiconv, libunistring, help2man, texinfo, buildPackages }:
 
 # Note: this package is used for bootstrapping fetchurl, and thus
 # cannot use fetchpatch! All mutable patches (generated by GitHub or
@@ -9,18 +9,20 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "libidn2";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchurl {
     url = "mirror://gnu/gnu/libidn/${pname}-${version}.tar.gz";
-    sha256 = "1ddqr80kmz4l8g3r3gf7bmf2v29fgivlc2bgxfiscjg2sarivjz1";
+    sha256 = "sha256-ivaElDg2uLU5ZdX1tnFO8TwmyR6qNs59JC49IfXUDy0=";
   };
 
   outputs = [ "bin" "dev" "out" "info" "devdoc" ];
 
   patches = optional stdenv.isDarwin ./fix-error-darwin.patch;
 
-  nativeBuildInputs = optional stdenv.isDarwin help2man;
+  # The above patch causes the documentation to be regenerated, so the
+  # documentation tools are required.
+  nativeBuildInputs = optionals stdenv.isDarwin [ help2man texinfo ];
   buildInputs = [ libunistring ] ++ optional stdenv.isDarwin libiconv;
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
diff --git a/nixpkgs/pkgs/development/libraries/libiio/cmake-fix-libxml2-find-package.patch b/nixpkgs/pkgs/development/libraries/libiio/cmake-fix-libxml2-find-package.patch
new file mode 100644
index 000000000000..25345bef90c4
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libiio/cmake-fix-libxml2-find-package.patch
@@ -0,0 +1,13 @@
+diff --color -ur a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt	2021-05-30 13:46:22.256040282 +0200
++++ b/CMakeLists.txt	2021-05-30 14:15:42.530181216 +0200
+@@ -333,7 +333,7 @@
+ # So, try first to find the CMake module provided by libxml2 package, then fallback
+ # on the CMake's FindLibXml2.cmake module (which can lack some definition, especially
+ # in static build case).
+-find_package(LibXml2 QUIET NO_MODULE)
++find_package(LibXml2 QUIET MODULE)
+ if(DEFINED LIBXML2_VERSION_STRING)
+ 	set(LIBXML2_FOUND ON)
+ 	set(LIBXML2_INCLUDE_DIR ${LIBXML2_INCLUDE_DIRS})
+Seulement dans b: good.patch
diff --git a/nixpkgs/pkgs/development/libraries/libiio/default.nix b/nixpkgs/pkgs/development/libraries/libiio/default.nix
index 043e27fb4b2a..e704076ab57a 100644
--- a/nixpkgs/pkgs/development/libraries/libiio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libiio/default.nix
@@ -23,6 +23,10 @@ stdenv.mkDerivation rec {
     sha256 = "0psw67mzysdb8fkh8xpcwicm7z94k8plkcc8ymxyvl6inshq0mc7";
   };
 
+  # Revert after https://github.com/NixOS/nixpkgs/issues/125008 is
+  # fixed properly
+  patches = [ ./cmake-fix-libxml2-find-package.patch ];
+
   nativeBuildInputs = [
     cmake
     flex
diff --git a/nixpkgs/pkgs/development/libraries/libimagequant/default.nix b/nixpkgs/pkgs/development/libraries/libimagequant/default.nix
index ad1df00c2509..bc6492418722 100644
--- a/nixpkgs/pkgs/development/libraries/libimagequant/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libimagequant/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     patchShebangs ./configure
   '';
 
-  configureFlags = lib.optionals stdenv.isAarch64 [ "--disable-sse" ];
+  configureFlags = lib.optionals (!stdenv.isi686 && !stdenv.isx86_64) [ "--disable-sse" ];
 
   meta = with lib; {
     homepage = "https://pngquant.org/lib/";
diff --git a/nixpkgs/pkgs/development/libraries/libime/default.nix b/nixpkgs/pkgs/development/libraries/libime/default.nix
index f9fcdedf1803..4f0caa7cc33c 100644
--- a/nixpkgs/pkgs/development/libraries/libime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libime/default.nix
@@ -18,21 +18,21 @@ let
     url = "https://download.fcitx-im.org/data/lm_sc.3gm.arpa-${arpaVer}.tar.bz2";
     sha256 = "0bqy3l7mif0yygjrcm65qallszgn17mvgyxhvz7a54zaamyan6vm";
   };
-  dictVer = "20200715";
+  dictVer = "20210402";
   dict = fetchurl {
     url = "https://download.fcitx-im.org/data/dict.utf8-${dictVer}.tar.xz";
-    sha256 = "1ln7r64j8mc7wz4j0q4v8wd68wy7qqz4bz1dpxk7zqbdvza6rhr3";
+    sha256 = "sha256-gYz7tama5bQMJwe2FYc09KEBlkRIU0AMvWsUUFWS2A0=";
   };
 in
 stdenv.mkDerivation rec {
   pname = "libime";
-  version = "1.0.3";
+  version = "1.0.7";
 
   src = fetchFromGitHub {
     owner = "fcitx";
     repo = "libime";
     rev = version;
-    sha256 = "sha256-Ykj4/3yKUqK0BRqW1E2zFYNgeUOXQ1DsotmKU6c8vEg=";
+    sha256 = "sha256-q/SXS6pT4vBkCkCTarPVHrZPXijYnc2t51YGRvzQ0FY=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix b/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix
index b805be1257bd..94fce176127c 100644
--- a/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix
@@ -1,25 +1,36 @@
-{ lib, stdenv, fetchFromGitHub, automake, autoconf, libtool, pkg-config, gnutls
-, libgcrypt, libtasn1, glib, libplist, libusbmuxd }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, libtool
+, pkg-config
+, gnutls
+, libgcrypt
+, libtasn1
+, glib
+, libplist
+, libusbmuxd
+}:
 
 stdenv.mkDerivation rec {
   pname = "libimobiledevice";
-  version = "1.3.0";
+  version = "unstable-2021-06-02";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    rev = version;
-    sha256 = "1jkq3hpg4n5a6s1k618ib0s80pwf00nlfcby7xckysq8mnd2pp39";
+    rev = "ca324155f8b33babf907704828c7903608db0aa2";
+    sha256 = "sha256-Q7THwld1+elMJQ14kRnlIJDohFt7MW7JeyIUGC0k52I=";
   };
 
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [
-    autoconf
-    automake
+    autoreconfHook
     libtool
     pkg-config
   ];
+
   propagatedBuildInputs = [
     glib
     gnutls
@@ -29,12 +40,7 @@ stdenv.mkDerivation rec {
     libusbmuxd
   ];
 
-  preConfigure = "NOCONFIGURE=1 ./autogen.sh";
-
-  configureFlags = [
-    "--disable-openssl"
-    "--without-cython"
-  ];
+  configureFlags = [ "--disable-openssl" "--without-cython" ];
 
   meta = with lib; {
     homepage = "https://github.com/libimobiledevice/libimobiledevice";
diff --git a/nixpkgs/pkgs/development/libraries/libjcat/default.nix b/nixpkgs/pkgs/development/libraries/libjcat/default.nix
index 2e75894eb834..f027fbe3cb8b 100644
--- a/nixpkgs/pkgs/development/libraries/libjcat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libjcat/default.nix
@@ -8,7 +8,6 @@
 , gpgme
 , gobject-introspection
 , vala
-, help2man
 , gtk-doc
 , meson
 , ninja
@@ -19,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libjcat";
-  version = "0.1.6";
+  version = "0.1.7";
 
   outputs = [ "bin" "out" "dev" "devdoc" "man" "installedTests" ];
 
@@ -27,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "hughsie";
     repo = "libjcat";
     rev = version;
-    sha256 = "sha256-X+mFl0YZpnt6zzvVTGZN7PROVUaQ8ZmU3T0EgyoZX6g=";
+    sha256 = "sha256-WYCYRFjjy9nr1p1SqzBGCBZ5vkhFybddXpHUcwdEDIQ=";
   };
 
   patches = [
@@ -43,7 +42,6 @@ stdenv.mkDerivation rec {
     docbook-xsl-nons
     gobject-introspection
     vala
-    help2man
     gtk-doc
     (python3.withPackages (pkgs: with pkgs; [
       setuptools
diff --git a/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix
index f2d4e00d1aad..964a007cc80b 100644
--- a/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libjpeg-turbo/default.nix
@@ -1,10 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, cmake, nasm
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, nasm
 , openjdk
 , enableJava ? false # whether to build the java wrapper
+, enableJpeg7 ? false # whether to build libjpeg with v7 compatibility
+, enableJpeg8 ? false # whether to build libjpeg with v8 compatibility
 , enableStatic ? stdenv.hostPlatform.isStatic
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
+assert !(enableJpeg7 && enableJpeg8);  # pick only one or none, not both
+
 stdenv.mkDerivation rec {
 
   pname = "libjpeg-turbo";
@@ -20,7 +28,7 @@ stdenv.mkDerivation rec {
   # This is needed by freeimage
   patches = [ ./0001-Compile-transupp.c-as-part-of-the-library.patch ]
     ++ lib.optional (stdenv.hostPlatform.libc or null == "msvcrt")
-      ./mingw-boolean.patch;
+    ./mingw-boolean.patch;
 
   outputs = [ "bin" "dev" "dev_private" "out" "man" "doc" ];
 
@@ -40,6 +48,14 @@ stdenv.mkDerivation rec {
     "-DENABLE_SHARED=${if enableShared then "1" else "0"}"
   ] ++ lib.optionals enableJava [
     "-DWITH_JAVA=1"
+  ] ++ lib.optionals enableJpeg7 [
+    "-DWITH_JPEG7=1"
+  ] ++ lib.optionals enableJpeg8 [
+    "-DWITH_JPEG8=1"
+  ] ++ lib.optionals stdenv.hostPlatform.isRiscV [
+    # https://github.com/libjpeg-turbo/libjpeg-turbo/issues/428
+    # https://github.com/libjpeg-turbo/libjpeg-turbo/commit/88bf1d16786c74f76f2e4f6ec2873d092f577c75
+    "-DFLOATTEST=fp-contract"
   ];
 
   doInstallCheck = true;
@@ -49,7 +65,7 @@ stdenv.mkDerivation rec {
     homepage = "https://libjpeg-turbo.org/";
     description = "A faster (using SIMD) libjpeg implementation";
     license = licenses.ijg; # and some parts under other BSD-style licenses
-    maintainers = with maintainers; [ vcunat colemickens ];
+    maintainers = with maintainers; [ vcunat colemickens kamadorueda ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libjwt/default.nix b/nixpkgs/pkgs/development/libraries/libjwt/default.nix
index 9c7d624e7f6e..a81b60c425ec 100644
--- a/nixpkgs/pkgs/development/libraries/libjwt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libjwt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libjwt";
-  version = "1.12.1";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "benmcollins";
     repo = "libjwt";
     rev = "v${version}";
-    sha256 = "1c69slf9k56gh0xcg6269v712ysm6wckracms4grdsc72xg6x7h2";
+    sha256 = "sha256-hS10Ecq0VVuYLDrBu4x+Y2mz6eeJV1SvnqttgbiQbi0=";
   };
 
   buildInputs = [ jansson openssl ];
diff --git a/nixpkgs/pkgs/development/libraries/liblinphone/default.nix b/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
index 3ef64823a024..8a38aa36c097 100644
--- a/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
@@ -10,7 +10,7 @@
 , cyrus_sasl
 , doxygen
 , fetchFromGitLab
-, ffmpeg_3
+, ffmpeg
 , gdk-pixbuf
 , glib
 , graphviz
@@ -46,7 +46,7 @@
 
 stdenv.mkDerivation rec {
   pname = "liblinphone";
-  version = "4.5.1";
+  version = "4.5.17";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "05ybbxq2yqzy3f3vzq8c3szs3qr0zl64la53icpqnmfakwnps5gs";
+    sha256 = "sha256-ryyT4bG3lnE72ydvCAoiT3IeHY4mZwX9nCqaTRC1wyc=";
   };
 
   # Do not build static libraries
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
     bzrtp
     cairo
     cyrus_sasl
-    ffmpeg_3
+    ffmpeg
     gdk-pixbuf
     glib
     gtk2
diff --git a/nixpkgs/pkgs/development/libraries/libmanette/default.nix b/nixpkgs/pkgs/development/libraries/libmanette/default.nix
index 76dd4eb20c1a..645b521b8172 100644
--- a/nixpkgs/pkgs/development/libraries/libmanette/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmanette/default.nix
@@ -11,7 +11,7 @@
 , glib
 , libgudev
 , libevdev
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -49,8 +49,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmaxminddb/default.nix b/nixpkgs/pkgs/development/libraries/libmaxminddb/default.nix
index 05ae1af2e257..1c15519aaff9 100644
--- a/nixpkgs/pkgs/development/libraries/libmaxminddb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmaxminddb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmaxminddb";
-  version = "1.5.2";
+  version = "1.6.0";
 
   src = fetchurl {
     url = meta.homepage + "/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-UjcHbSUKX3wpfjMcNaQz7qrw3CBeBw5Ns1PJuhDzQKI=";
+    sha256 = "sha256-diCsGHxZHOIbzXvzUjdqPFapM+aEVYofa+9L1PP5gmc=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/libmediaart/default.nix b/nixpkgs/pkgs/development/libraries/libmediaart/default.nix
index 28c8ae6db940..ee1b306c3e51 100644
--- a/nixpkgs/pkgs/development/libraries/libmediaart/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmediaart/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, gdk-pixbuf, gobject-introspection, gnome3, fetchpatch }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, gdk-pixbuf, gobject-introspection, gnome, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "libmediaart";
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libmikmod/default.nix b/nixpkgs/pkgs/development/libraries/libmikmod/default.nix
index a734a4b80092..02ccf0c66fb5 100644
--- a/nixpkgs/pkgs/development/libraries/libmikmod/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmikmod/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, texinfo, alsaLib, libpulseaudio, CoreAudio }:
+{ lib, stdenv, fetchurl, texinfo, alsa-lib, libpulseaudio, CoreAudio }:
 
 let
   inherit (lib) optional optionalString;
@@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
   };
 
   buildInputs = [ texinfo ]
-    ++ optional stdenv.isLinux alsaLib
+    ++ optional stdenv.isLinux alsa-lib
     ++ optional stdenv.isDarwin CoreAudio;
   propagatedBuildInputs =
     optional stdenv.isLinux libpulseaudio;
diff --git a/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
index f95d39a02da8..edadff523f3a 100644
--- a/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libmodulemd";
-  version = "2.12.0";
+  version = "2.12.1";
 
   outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "fedora-modularity";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1mq9as98q4wyka404f8xwfc44cn5j4bsk0fch5pf07v81sagc1q9";
+    sha256 = "sha256-Relj14uG+dp9r5xWEbw/eAmlUJJ/kRwlPclcWGQxoJg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/libmwaw/default.nix b/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
index 17e20e3d3997..aa42edfeadbf 100644
--- a/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="libmwaw";
-    version="0.3.17";
+    version="0.3.19";
     name="${baseName}-${version}";
-    hash="074ipcq9w7jbd5x316dzclddgia2ydw098ph9d7p3d713pmkf5cf";
-    url="mirror://sourceforge/libmwaw/libmwaw/libmwaw-0.3.17/libmwaw-0.3.17.tar.xz";
-    sha256="074ipcq9w7jbd5x316dzclddgia2ydw098ph9d7p3d713pmkf5cf";
+    hash="sha256-snLiNO78goxLuDRK8PBHpi4HD1MOni+6EbBMjbjtpa8=";
+    url="mirror://sourceforge/libmwaw/libmwaw/libmwaw-0.3.19/libmwaw-0.3.19.tar.xz";
+    sha256="sha256-snLiNO78goxLuDRK8PBHpi4HD1MOni+6EbBMjbjtpa8=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libndp/default.nix b/nixpkgs/pkgs/development/libraries/libndp/default.nix
index fc68149c14c3..524f948703f3 100644
--- a/nixpkgs/pkgs/development/libraries/libndp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libndp/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     homepage = "http://libndp.org/";
     description = "Library for Neighbor Discovery Protocol";
     platforms = platforms.linux;
-    maintainers = [ maintainers.lethalman ];
+    maintainers = [ ];
     license = licenses.lgpl21;
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libnixxml/default.nix b/nixpkgs/pkgs/development/libraries/libnixxml/default.nix
index 40459dbca22a..48edfbfce2c0 100644
--- a/nixpkgs/pkgs/development/libraries/libnixxml/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnixxml/default.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, lib, stdenv, autoreconfHook, pkg-config, libxml2, gd, glib, getopt, libxslt, nix }:
+{ fetchFromGitHub, lib, stdenv, autoreconfHook, pkg-config, libxml2, gd, glib, getopt, libxslt, nix, bash}:
 
 stdenv.mkDerivation {
   pname = "libnixxml";
@@ -11,17 +11,45 @@ stdenv.mkDerivation {
     sha256 = "sha256-HKQnCkO1TDs1e0MDil0Roq4YRembqRHQvb7lK3GAftQ=";
   };
 
-  preConfigure = ''
-    ./bootstrap
+  prePatch = ''
+    # Remove broken test
+    substituteInPlace tests/draw/Makefile.am \
+      --replace "draw-wrong.sh" ""
+    rm tests/draw/draw-wrong.sh
+
+    # Fix bash path
+    substituteInPlace scripts/nixexpr2xml.in \
+      --replace "/bin/bash" "${bash}/bin/bash"
+  '';
+
+  preAutoreconf = ''
+    # Copied from bootstrap script
+    ln -s README.md README
+    mkdir -p config
   '';
 
   configureFlags = [ "--with-gd" "--with-glib" ];
   CFLAGS = "-Wall";
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libxml2 gd.dev glib getopt libxslt nix ];
+  strictDeps = true;
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    getopt
+    libxslt
+  ];
+  buildInputs = [
+    bash
+    libxml2
+    gd.dev
+    glib
+    nix
+  ];
+  checkInputs = [
+    nix
+  ];
 
-  doCheck = false;
+  doCheck = true;
 
   meta = with lib; {
     description = "XML-based Nix-friendly data integration library";
diff --git a/nixpkgs/pkgs/development/libraries/libnotify/default.nix b/nixpkgs/pkgs/development/libraries/libnotify/default.nix
index 29b371642280..b108a5c5eea5 100644
--- a/nixpkgs/pkgs/development/libraries/libnotify/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnotify/default.nix
@@ -8,7 +8,7 @@
 , glib
 , gdk-pixbuf
 , gobject-introspection
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/libofx/default.nix b/nixpkgs/pkgs/development/libraries/libofx/default.nix
index dc40086ad0a7..2cd480ee0103 100644
--- a/nixpkgs/pkgs/development/libraries/libofx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libofx/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libofx";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "LibOFX";
     repo = pname;
     rev = version;
-    sha256 = "sha256-QIasZKwSD9YCidHCxT/HOThxE5HEQWD0I2/loDP6mlU=";
+    sha256 = "sha256-V9FyOVH9CB6UtTxDvXRyX6mWaXq2Y2K3t9lotjigK0M=";
   };
 
   preConfigure = "./autogen.sh";
diff --git a/nixpkgs/pkgs/development/libraries/libopus/default.nix b/nixpkgs/pkgs/development/libraries/libopus/default.nix
index 51179ecb9a05..8172bd38e107 100644
--- a/nixpkgs/pkgs/development/libraries/libopus/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libopus/default.nix
@@ -24,6 +24,6 @@ stdenv.mkDerivation {
     description = "Open, royalty-free, highly versatile audio codec";
     license = lib.licenses.bsd3;
     homepage = "https://www.opus-codec.org/";
-    platforms = platforms.unix;
+    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libosmium/default.nix b/nixpkgs/pkgs/development/libraries/libosmium/default.nix
index c5b801f5d47b..976c39a9ef11 100644
--- a/nixpkgs/pkgs/development/libraries/libosmium/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libosmium/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libosmium";
-  version = "2.16.0";
+  version = "2.17.0";
 
   src = fetchFromGitHub {
     owner = "osmcode";
     repo = "libosmium";
     rev = "v${version}";
-    sha256 = "1na51g6xfm1bx0d0izbg99cwmqn0grp0g41znn93xnhs202qnb2h";
+    sha256 = "sha256-q938WA+vJDqGVutVzWdEP7ujDAmfj3vluliomVd0om0=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/libow/default.nix b/nixpkgs/pkgs/development/libraries/libow/default.nix
index e4a8d95f4b0e..5340caeff0a8 100644
--- a/nixpkgs/pkgs/development/libraries/libow/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libow/default.nix
@@ -11,7 +11,28 @@ stdenv.mkDerivation rec {
     sha256 = "0dln1ar7bxwhpi36sccmpwapy7iz4j097rbf02mgn42lw5vrcg3s";
   };
 
-  nativeBuildInputs = [ autoconf automake pkg-config ];
+  nativeBuildInputs = [ autoconf automake libtool pkg-config ];
+
+  preConfigure = ''
+    # Tries to use glibtoolize on Darwin, but it shouldn't for Nix.
+    sed -i -e 's/glibtoolize/libtoolize/g' bootstrap
+    ./bootstrap
+  '';
+
+  configureFlags = [
+    "--disable-owtcl"
+    "--disable-owphp"
+    "--disable-owpython"
+    "--disable-zero"
+    "--disable-owshell"
+    "--disable-owhttpd"
+    "--disable-owftpd"
+    "--disable-owserver"
+    "--disable-owperl"
+    "--disable-owtap"
+    "--disable-owmon"
+    "--disable-owexternal"
+  ];
 
   meta = with lib; {
     description = "1-Wire File System full library";
@@ -20,24 +41,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ disserman ];
     platforms = platforms.unix;
   };
-
-  buildInputs = [ libtool ];
-
-  preConfigure = "./bootstrap";
-
-  configureFlags = [
-      "--disable-owtcl"
-      "--disable-owphp"
-      "--disable-owpython"
-      "--disable-zero"
-      "--disable-owshell"
-      "--disable-owhttpd"
-      "--disable-owftpd"
-      "--disable-owserver"
-      "--disable-owperl"
-      "--disable-owtcl"
-      "--disable-owtap"
-      "--disable-owmon"
-      "--disable-owexternal"
-    ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/libpeas/default.nix b/nixpkgs/pkgs/development/libraries/libpeas/default.nix
index a8ef9e2f9bb2..55c884d215fd 100644
--- a/nixpkgs/pkgs/development/libraries/libpeas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libpeas/default.nix
@@ -1,16 +1,16 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome3
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome
 , glib, gtk3, gobject-introspection, python3, ncurses
 }:
 
 stdenv.mkDerivation rec {
   pname = "libpeas";
-  version = "1.28.0";
+  version = "1.30.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05cb7drn6arc4gi02wgsvzibigi2riz5gnfnmlb0zmbfnj9ikna2";
+    sha256 = "18xrk1c1ixlhkmykcfiafrl2am470ws687xqvjlq40zwkcp5dx8b";
   };
 
   nativeBuildInputs = [ pkg-config meson ninja gettext gobject-introspection ];
@@ -21,8 +21,9 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libplacebo/default.nix b/nixpkgs/pkgs/development/libraries/libplacebo/default.nix
index 478e01f3575b..a7da64f787a3 100644
--- a/nixpkgs/pkgs/development/libraries/libplacebo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libplacebo/default.nix
@@ -16,14 +16,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libplacebo";
-  version = "3.120.2";
+  version = "3.120.3";
 
   src = fetchFromGitLab {
     domain = "code.videolan.org";
     owner = "videolan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0wh5w7bx789ynnzr27xi0csql4jaxq80csawg6znabw3ld54wb86";
+    sha256 = "02hiyhnjdz3zqnzks9bi7my62a85k9k9vfgmh9fy19snsbkd6l80";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libportal/default.nix b/nixpkgs/pkgs/development/libraries/libportal/default.nix
index 5eacdaa8f3c8..97c5303eabe7 100644
--- a/nixpkgs/pkgs/development/libraries/libportal/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libportal/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitHub
-, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libportal";
-  version = "0.3";
+  version = "0.4";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -20,22 +20,9 @@ stdenv.mkDerivation rec {
     owner = "flatpak";
     repo = pname;
     rev = version;
-    sha256 = "1s3g17zbbmq3m5jfs62fl94p4irln9hfhpybj7jb05z0p1939rk3";
+    sha256 = "fuYZWGkdazq6H0rThqpF6KIcvwgc17o+CiISb1LjBso=";
   };
 
-  patches = [
-    # Fix build and .pc file
-    # https://github.com/flatpak/libportal/pull/20
-    (fetchpatch {
-      url = "https://github.com/flatpak/libportal/commit/7828be4ec8f05f8de7b129a1e35b5039d8baaee3.patch";
-      sha256 = "04nadcxx69mbnzljwjrzm88cgapn14x3mghpkhr8b9yrjn7yj86h";
-    })
-    (fetchpatch {
-      url = "https://github.com/flatpak/libportal/commit/bf5de2f6fefec65f701b4ec8712b48b29a33fb71.patch";
-      sha256 = "1v0b09diq49c01j5gg2bpvn5f5gfw1a5nm1l8grc4qg4z9jck1z8";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
diff --git a/nixpkgs/pkgs/development/libraries/libpst/default.nix b/nixpkgs/pkgs/development/libraries/libpst/default.nix
index f27b58a02bb6..f51db1d6c6de 100644
--- a/nixpkgs/pkgs/development/libraries/libpst/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libpst/default.nix
@@ -12,11 +12,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libpst-0.6.75";
+  pname = "libpst";
+  version = "0.6.76";
 
   src = fetchurl {
-    url = "http://www.five-ten-sg.com/libpst/packages/${name}.tar.gz";
-    sha256 = "11wrf47i3brlxg25wsfz17373q7m5fpjxn2lr41dj252ignqzaac";
+    url = "http://www.five-ten-sg.com/libpst/packages/${pname}-${version}.tar.gz";
+    sha256 = "0hhbbb8ddsgjhv9y1xd8s9ixlhdnjmhw12v06jwx4j6vpgp1na9x";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libqtav/default.nix b/nixpkgs/pkgs/development/libraries/libqtav/default.nix
index fc577d7e5082..e9a54dc478cd 100644
--- a/nixpkgs/pkgs/development/libraries/libqtav/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libqtav/default.nix
@@ -2,7 +2,7 @@
 , qtbase, qtmultimedia, qtquick1, qttools
 , libGL, libX11
 , libass, openal, ffmpeg, libuchardet
-, alsaLib, libpulseaudio, libva
+, alsa-lib, libpulseaudio, libva
 }:
 
 with lib;
@@ -16,7 +16,7 @@ mkDerivation rec {
     qtbase qtmultimedia qtquick1
     libGL libX11
     libass openal ffmpeg libuchardet
-    alsaLib libpulseaudio libva
+    alsa-lib libpulseaudio libva
   ];
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/development/libraries/libraspberrypi/default.nix b/nixpkgs/pkgs/development/libraries/libraspberrypi/default.nix
index 8ffe8f488b25..8a8f41981aae 100644
--- a/nixpkgs/pkgs/development/libraries/libraspberrypi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libraspberrypi/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   patches = [
     (fetchpatch {
       # https://github.com/raspberrypi/userland/pull/670
-      url = "https://github.com/raspberrypi/userland/pull/670/commits/37cb44f314ab1209fe2a0a2449ef78893b1e5f62.patch";
+      url = "https://github.com/raspberrypi/userland/commit/37cb44f314ab1209fe2a0a2449ef78893b1e5f62.patch";
       sha256 = "1fbrbkpc4cc010ji8z4ll63g17n6jl67kdy62m74bhlxn72gg9rw";
     })
   ];
diff --git a/nixpkgs/pkgs/development/libraries/librealsense/default.nix b/nixpkgs/pkgs/development/libraries/librealsense/default.nix
index 6607a4d00fb6..4015ab02a3a8 100644
--- a/nixpkgs/pkgs/development/libraries/librealsense/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librealsense/default.nix
@@ -7,7 +7,7 @@ assert enablePython -> pythonPackages != null;
 
 stdenv.mkDerivation rec {
   pname = "librealsense";
-  version = "2.43.0";
+  version = "2.45.0";
 
   outputs = [ "out" "dev" ];
 
@@ -15,17 +15,18 @@ stdenv.mkDerivation rec {
     owner = "IntelRealSense";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-N7EvpcJjtK3INHK7PgoiEVIMq9zGcHKMeI+/dwZ3bNs=";
+    sha256 = "0aqf48zl7825v7x8c3x5w4d17m4qq377f1mn6xyqzf9b0dnk4i1j";
   };
 
   buildInputs = [
     libusb1
     gcc.cc.lib
   ] ++ lib.optional cudaSupport cudatoolkit
-    ++ lib.optional enablePython pythonPackages.python;
+    ++ lib.optionals enablePython (with pythonPackages; [python pybind11 ]);
 
   patches = lib.optionals enablePython [
     ./py_sitepackage_dir.patch
+    ./py_pybind11_no_external_download.patch
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/librealsense/py_pybind11_no_external_download.patch b/nixpkgs/pkgs/development/libraries/librealsense/py_pybind11_no_external_download.patch
new file mode 100644
index 000000000000..2b48edb62e37
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librealsense/py_pybind11_no_external_download.patch
@@ -0,0 +1,39 @@
+From 01e51b9c90ba51b2d0ca797dde676812cf3db415 Mon Sep 17 00:00:00 2001
+From: "Robert T. McGibbon" <rmcgibbo@gmail.com>
+Date: Mon, 10 May 2021 17:26:04 -0400
+Subject: [PATCH 1/1] V1
+
+---
+ wrappers/python/CMakeLists.txt | 15 +--------------
+ 1 file changed, 1 insertion(+), 14 deletions(-)
+
+diff --git a/wrappers/python/CMakeLists.txt b/wrappers/python/CMakeLists.txt
+index aa83e4c77..4ec92ccfa 100644
+--- a/wrappers/python/CMakeLists.txt
++++ b/wrappers/python/CMakeLists.txt
+@@ -8,21 +8,8 @@ if (NOT BUILD_PYTHON_BINDINGS)
+ endif()
+ 
+ set(DEPENDENCIES realsense2)
+-# In order for the external project clone to occur during cmake configure step(rather than during compilation, as would normally happen),
+-# we copy the external project declaration to the build folder and then execute it
+-configure_file(${CMAKE_SOURCE_DIR}/third-party/pybind11/CMakeLists.txt ${CMAKE_BINARY_DIR}/external-projects/pybind11/CMakeLists.txt)
+-execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
+-    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/external-projects/pybind11"
+-)
+-execute_process(COMMAND "${CMAKE_COMMAND}" --build .
+-    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/external-projects/pybind11"
+-)
+ 
+-# Add pybind11 makefile
+-add_subdirectory("${CMAKE_BINARY_DIR}/third-party/pybind11"
+-                 "${CMAKE_BINARY_DIR}/third-party/pybind11"
+-                 EXCLUDE_FROM_ALL
+-)
++find_package(pybind11 REQUIRED)
+ 
+ set(PYBIND11_CPP_STANDARD -std=c++11)
+ # Force Pybind11 not to share pyrealsense2 resources with other pybind modules.
+-- 
+2.29.3
+
diff --git a/nixpkgs/pkgs/development/libraries/librest/default.nix b/nixpkgs/pkgs/development/libraries/librest/default.nix
index 7b1ff8235aac..0c885f0764b5 100644
--- a/nixpkgs/pkgs/development/libraries/librest/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librest/default.nix
@@ -1,4 +1,12 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, libsoup, gobject-introspection, gnome3 }:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, glib
+, libsoup
+, gobject-introspection
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "rest";
@@ -9,23 +17,34 @@ stdenv.mkDerivation rec {
     sha256 = "0513aad38e5d3cedd4ae3c551634e3be1b9baaa79775e53b2dba9456f15b01c9";
   };
 
-  nativeBuildInputs = [ pkg-config gobject-introspection ];
-  buildInputs = [ glib libsoup ];
+  nativeBuildInputs = [
+    pkg-config
+    gobject-introspection
+  ];
 
-  configureFlags = [ "--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt" ];
+  buildInputs = [
+    glib
+    libsoup
+  ];
+
+  configureFlags = [
+    # Remove when https://gitlab.gnome.org/GNOME/librest/merge_requests/2 is merged.
+    "--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt"
+  ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "librest";
+      versionPolicy = "odd-unstable";
     };
   };
 
   meta = with lib; {
     description = "Helper library for RESTful services";
     homepage = "https://wiki.gnome.org/Projects/Librest";
-    license = licenses.lgpl21;
-    platforms = platforms.linux;
+    license = licenses.lgpl21Only;
+    platforms = platforms.unix;
     maintainers = teams.gnome.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/librime/default.nix b/nixpkgs/pkgs/development/libraries/librime/default.nix
index e430a447336b..eb9c514d59d2 100644
--- a/nixpkgs/pkgs/development/libraries/librime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librime/default.nix
@@ -1,20 +1,20 @@
 { lib, stdenv, fetchFromGitHub, cmake, boost, glog, leveldb, marisa, opencc,
-  libyamlcpp, gtest }:
+  libyamlcpp, gtest, capnproto, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "librime";
-  version = "1.5.3";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     owner = "rime";
-    repo = "librime";
+    repo = pname;
     rev = version;
-    sha256 = "0xskhdhk7dgpc71r39pfzxi5vrlzy90aqj1gzv8nnapq91p2awhv";
+    sha256 = "023c7bpfnyf8wlrssn89ziwsjccflyanrxlaqmwcbx8a5dvipk01";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ boost glog leveldb marisa opencc libyamlcpp gtest ];
+  buildInputs = [ boost glog leveldb marisa opencc libyamlcpp gtest capnproto ];
 
   meta = with lib; {
     homepage    = "https://rime.im/";
diff --git a/nixpkgs/pkgs/development/libraries/librsvg/default.nix b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
index efdbf5934630..02cd9accbaf0 100644
--- a/nixpkgs/pkgs/development/libraries/librsvg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
@@ -1,47 +1,79 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, gdk-pixbuf, pango, cairo, libxml2
-, bzip2, libintl, darwin, rustc, cargo, gnome3
-, vala, gobject-introspection }:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, glib
+, gdk-pixbuf
+, pango
+, cairo
+, libxml2
+, bzip2
+, libintl
+, ApplicationServices
+, Foundation
+, libobjc
+, rustc
+, cargo
+, gnome
+, vala
+, gobject-introspection
+, nixosTests
+}:
 
-let
-  pname = "librsvg";
-  version = "2.50.1";
-in
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "02csvx2nzygh8kyal2qiy3y6xb7d52vszxxr37dzav704a9pkncv";
-  };
+  pname = "librsvg";
+  version = "2.50.5";
 
   outputs = [ "out" "dev" "installedTests" ];
 
-  buildInputs = [ libxml2 bzip2 pango libintl ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc ];
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "0wlj5g1jgp93sj3rr6qspj282whz13ahnv8ca99d7zilq9s1aw1j";
+  };
 
-  NIX_LDFLAGS = if stdenv.isDarwin then "-lobjc" else null;
+  nativeBuildInputs = [
+    pkg-config
+    rustc
+    cargo
+    vala
+    gobject-introspection
+  ] ++ lib.optionals stdenv.isDarwin [
+    ApplicationServices
+    Foundation
+  ];
 
-  propagatedBuildInputs = [ glib gdk-pixbuf cairo ];
+  buildInputs = [
+    libxml2
+    bzip2
+    pango
+    libintl
+  ] ++ lib.optionals stdenv.isDarwin [
+    libobjc
+  ];
 
-  nativeBuildInputs = [ pkg-config rustc cargo vala gobject-introspection ]
-    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
-      ApplicationServices
-    ]);
+  propagatedBuildInputs = [
+    glib
+    gdk-pixbuf
+    cairo
+  ];
 
   configureFlags = [
     "--enable-introspection"
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    # Vapi does not build on MacOS.
+    # https://github.com/NixOS/nixpkgs/pull/117081#issuecomment-827782004
     "--enable-vala"
+  ] ++ [
     "--enable-installed-tests"
     "--enable-always-build-tests"
   ] ++ lib.optional stdenv.isDarwin "--disable-Bsymbolic";
 
   makeFlags = [
-    "installed_test_metadir=$(installedTests)/share/installed-tests/RSVG"
-    "installed_testdir=$(installedTests)/libexec/installed-tests/RSVG"
+    "installed_test_metadir=${placeholder "installedTests"}/share/installed-tests/RSVG"
+    "installed_testdir=${placeholder "installedTests"}/libexec/installed-tests/RSVG"
   ];
 
-  NIX_CFLAGS_COMPILE
-    = lib.optionalString stdenv.isDarwin "-I${cairo.dev}/include/cairo";
+  doCheck = false; # all tests fail on libtool-generated rsvg-convert not being able to find coreutils
 
   # It wants to add loaders and update the loaders.cache in gdk-pixbuf
   # Patching the Makefiles to it creates rsvg specific loaders and the
@@ -63,8 +95,6 @@ stdenv.mkDerivation rec {
         -i gdk-pixbuf-loader/librsvg.thumbnailer.in
   '';
 
-  doCheck = false; # fails 20 of 145 tests, very likely to be buggy
-
   # Merge gdkpixbuf and librsvg loaders
   postInstall = ''
     mv $GDK_PIXBUF/loaders.cache $GDK_PIXBUF/loaders.cache.tmp
@@ -73,8 +103,13 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
+    };
+
+    tests = {
+      installedTests = nixosTests.installed-tests.librsvg;
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/librttopo/default.nix b/nixpkgs/pkgs/development/libraries/librttopo/default.nix
new file mode 100644
index 000000000000..d349278d5f5d
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librttopo/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, stdenv
+, fetchFromGitea
+, autoreconfHook
+, geos
+}:
+
+stdenv.mkDerivation rec {
+  pname = "librttopo";
+  version = "1.1.0";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchFromGitea {
+    domain = "git.osgeo.org/gitea";
+    owner = "rttopo";
+    repo = "librttopo";
+    rev = "librttopo-${version}";
+    sha256 = "0h7lzlkn9g4xky6h81ndy0aa6dxz8wb6rnl8v3987jy1i6pr072p";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  buildInputs = [ geos ];
+
+  meta = with lib; {
+    description = "RT Topology Library";
+    homepage = "https://git.osgeo.org/gitea/rttopo/librttopo";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libsecret/default.nix b/nixpkgs/pkgs/development/libraries/libsecret/default.nix
index 6c28b7d16c16..18f00a0933c3 100644
--- a/nixpkgs/pkgs/development/libraries/libsecret/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsecret/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, fetchpatch, glib, pkg-config, gettext, libxslt, python3
 , docbook_xsl, docbook_xml_dtd_42 , libgcrypt, gobject-introspection, vala
-, gtk-doc, gnome3, gjs, libintl, dbus, xvfb_run }:
+, gtk-doc, gnome, gjs, libintl, dbus, xvfb-run }:
 
 stdenv.mkDerivation rec {
   pname = "libsecret";
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   installCheckInputs = [
-    python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb_run dbus gjs
+    python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb-run dbus gjs
   ];
 
   # needs to run after install because typelibs point to absolute paths
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       # Does not seem to use the odd-unstable policy: https://gitlab.gnome.org/GNOME/libsecret/issues/30
       versionPolicy = "none";
diff --git a/nixpkgs/pkgs/development/libraries/libsigcxx/3.0.nix b/nixpkgs/pkgs/development/libraries/libsigcxx/3.0.nix
new file mode 100644
index 000000000000..edb74c807bfa
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libsigcxx/3.0.nix
@@ -0,0 +1,42 @@
+{ stdenv
+, lib
+, fetchurl
+, pkg-config
+, meson
+, ninja
+, gnome
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libsigc++";
+  version = "3.0.6";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "tw7c9GEWUcVKQm4QmxcZbh+hfaCQWSpQAOLRNMA6xc4=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+  ];
+
+  doCheck = true;
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "libsigcxx30";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://libsigcplusplus.github.io/libsigcplusplus/";
+    description = "A typesafe callback system for standard C++";
+    license = licenses.lgpl21Plus;
+    maintainers = teams.gnome.members;
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libsigcxx/default.nix b/nixpkgs/pkgs/development/libraries/libsigcxx/default.nix
index c933d92f3255..cbc2c8a617b4 100644
--- a/nixpkgs/pkgs/development/libraries/libsigcxx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsigcxx/default.nix
@@ -1,22 +1,23 @@
-{ lib, stdenv, fetchurl, pkg-config, gnum4, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, meson, ninja, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libsigc++";
-  version = "2.10.1";
+  version = "2.10.6";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "00v08km4wwzbh6vjxb21388wb9dm6g2xh14rgwabnv4c2wk5z8n9";
+    sha256 = "sha256-3aF23EaBvanVoqwbxVJzvdOBZit6bUnpGCZ9E+h3Ths=";
   };
 
-  nativeBuildInputs = [ pkg-config gnum4 ];
+  nativeBuildInputs = [ pkg-config meson ninja ];
 
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "libsigcxx";
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libsignon-glib/default.nix b/nixpkgs/pkgs/development/libraries/libsignon-glib/default.nix
index ae7a6775de55..f20f80c28429 100644
--- a/nixpkgs/pkgs/development/libraries/libsignon-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsignon-glib/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     description = "A library for managing single signon credentials which can be used from GLib applications";
     homepage = "https://gitlab.com/accounts-sso/libsignon-glib";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libslirp/default.nix b/nixpkgs/pkgs/development/libraries/libslirp/default.nix
index 8bd74d292430..5da6cf6bbbcb 100644
--- a/nixpkgs/pkgs/development/libraries/libslirp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libslirp/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitLab
 , meson
 , ninja
@@ -8,14 +9,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libslirp";
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "slirp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0abh337jvij664w65zszjql42n720zzfap0ab0amr4qcvkzw7bjx";
+    sha256 = "sha256-UdKBED7xR0gDf3aj3+6I62CnAwGP7XxskaFzWeUUkkk=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libsolv/default.nix b/nixpkgs/pkgs/development/libraries/libsolv/default.nix
index 089fbe4b3512..c7dede355df6 100644
--- a/nixpkgs/pkgs/development/libraries/libsolv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsolv/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, cmake, ninja, zlib, expat, rpm, db }:
 
 stdenv.mkDerivation rec {
-  version  = "0.7.17";
+  version  = "0.7.19";
   pname = "libsolv";
 
   src = fetchFromGitHub {
     owner  = "openSUSE";
     repo   = "libsolv";
     rev    = version;
-    sha256 = "sha256-LPOS+yDwNpyO9tkFoIy4SCQymytOGB26Pfyd/EFEYnc=";
+    sha256 = "sha256-AN4cgpMBqTtK04CU89Yqd1ZfWyPrCociPd3XKdVONMU=";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/libsoundio/default.nix b/nixpkgs/pkgs/development/libraries/libsoundio/default.nix
index ac9f3b256546..2ef629e5467b 100644
--- a/nixpkgs/pkgs/development/libraries/libsoundio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsoundio/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, alsaLib, libjack2, libpulseaudio, AudioUnit }:
+{ lib, stdenv, fetchFromGitHub, cmake, alsa-lib, libjack2, libpulseaudio, AudioUnit }:
 
 stdenv.mkDerivation rec {
   version = "2.0.0";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ libjack2 libpulseaudio ]
-    ++ lib.optional stdenv.isLinux alsaLib
+    ++ lib.optional stdenv.isLinux alsa-lib
     ++ lib.optional stdenv.isDarwin AudioUnit;
 
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-strict-prototypes";
diff --git a/nixpkgs/pkgs/development/libraries/libsoup/default.nix b/nixpkgs/pkgs/development/libraries/libsoup/default.nix
index 47fcdd41f8ab..960591d1a22d 100644
--- a/nixpkgs/pkgs/development/libraries/libsoup/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsoup/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, glib, libxml2, meson, ninja, pkg-config, gnome3, libsysprof-capture
+{ stdenv, lib, fetchurl, fetchpatch, glib, libxml2, meson, ninja, pkg-config, gnome, libsysprof-capture
 , gnomeSupport ? true, sqlite, glib-networking, gobject-introspection, vala
 , libpsl, python3, brotli
 }:
@@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
     sha256 = "11skbyw2pw32178q3h8pi7xqa41b2x4k6q4k9f75zxmh8s23y30p";
   };
 
+  patches = [
+    (fetchpatch {
+      # https://gitlab.gnome.org/GNOME/libsoup/-/issues/222
+      url = "https://gitlab.gnome.org/GNOME/libsoup/commit/b5e4f15a09d197b6a9b4b2d78b33779f27d828af.patch";
+      sha256 = "1hqk8lqzc200hi0nwbwq9qm6f03z296cnd79d4ql30683s80xqws";
+    })
+  ];
+
   postPatch = ''
     patchShebangs libsoup/
   '';
@@ -46,8 +54,9 @@ stdenv.mkDerivation rec {
 
   passthru = {
     propagatedUserEnvPackages = [ glib-networking.out ];
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libspatialite/default.nix b/nixpkgs/pkgs/development/libraries/libspatialite/default.nix
index 2e9dadf0bf5d..592b7101a074 100644
--- a/nixpkgs/pkgs/development/libraries/libspatialite/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspatialite/default.nix
@@ -1,34 +1,54 @@
-{ stdenv, lib, fetchurl, pkg-config, libxml2, sqlite, zlib, proj, geos, libiconv }:
-
-with lib;
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, geos
+, librttopo
+, libxml2
+, minizip
+, proj
+, sqlite
+, libiconv
+}:
 
 stdenv.mkDerivation rec {
-  name = "libspatialite-4.3.0a";
+  pname = "libspatialite";
+  version = "5.0.1";
+
+  outputs = [ "out" "dev" ];
 
   src = fetchurl {
-    url = "https://www.gaia-gis.it/gaia-sins/libspatialite-sources/${name}.tar.gz";
-    sha256 = "16d4lpl7xrm9zy4gphy6nwanpjp8wn9g4wq2i2kh8abnlhq01448";
+    url = "https://www.gaia-gis.it/gaia-sins/libspatialite-sources/${pname}-${version}.tar.gz";
+    sha256 = "sha256-7svJQxHHgBLQWevA+uhupe9u7LEzA+boKzdTwbNAnpg=";
   };
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ libxml2 sqlite zlib proj geos libiconv ];
+  buildInputs = [
+    geos
+    librttopo
+    libxml2
+    minizip
+    proj
+    sqlite
+  ] ++ lib.optionals stdenv.isDarwin [
+    libiconv
+  ];
 
   configureFlags = [ "--disable-freexl" ];
 
   enableParallelBuilding = true;
 
-  CFLAGS = "-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1";
-
-  postInstall = "" + optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.isDarwin ''
     ln -s $out/lib/mod_spatialite.{so,dylib}
   '';
 
-  meta = {
+  meta = with lib; {
     description = "Extensible spatial index library in C++";
     homepage = "https://www.gaia-gis.it/fossil/libspatialite";
     # They allow any of these
     license = with licenses; [ gpl2Plus lgpl21Plus mpl11 ];
     platforms = platforms.unix;
+    maintainers = with maintainers; [ dotlambda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libspnav/configure-socket-path.patch b/nixpkgs/pkgs/development/libraries/libspnav/configure-socket-path.patch
new file mode 100644
index 000000000000..9a8ef0d49811
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libspnav/configure-socket-path.patch
@@ -0,0 +1,47 @@
+diff --git a/spnav.c b/spnav.c
+index f9e10f8..27149f7 100644
+--- a/spnav.c
++++ b/spnav.c
+@@ -36,7 +36,7 @@ OF SUCH DAMAGE.
+ #include <sys/select.h>
+ #include "spnav.h"
+ 
+-#define SPNAV_SOCK_PATH "/var/run/spnav.sock"
++#define DEFAULT_SPNAV_SOCK_PATH "/run/spnav.sock"
+ 
+ #ifdef USE_X11
+ #include <X11/Xlib.h>
+@@ -70,6 +70,24 @@ static struct event_node *ev_queue, *ev_queue_tail;
+ /* AF_UNIX socket used for alternative communication with daemon */
+ static int sock = -1;
+ 
++static char *spath = NULL;
++
++static char *socket_path()
++{
++	char *xdg_runtime_dir;
++	if((xdg_runtime_dir = getenv("XDG_RUNTIME_DIR"))) {
++		if ( spath == NULL ) {
++			spath = malloc(strlen(xdg_runtime_dir) + strlen("/spnav.sock") + 1);
++			if ( spath != NULL ) {
++				sprintf(spath, "%s/spnav.sock", xdg_runtime_dir);
++			}
++		}
++		if(access(spath, F_OK) != -1){
++			return spath;
++		}
++	}
++	return DEFAULT_SPNAV_SOCK_PATH;
++}
+ 
+ int spnav_open(void)
+ {
+@@ -92,7 +110,7 @@ int spnav_open(void)
+ 
+ 	memset(&addr, 0, sizeof addr);
+ 	addr.sun_family = AF_UNIX;
+-	strncpy(addr.sun_path, SPNAV_SOCK_PATH, sizeof(addr.sun_path));
++	strncpy(addr.sun_path, socket_path(), sizeof(addr.sun_path));
+ 
+ 
+ 	if(connect(s, (struct sockaddr*)&addr, sizeof addr) == -1) {
diff --git a/nixpkgs/pkgs/development/libraries/libspnav/default.nix b/nixpkgs/pkgs/development/libraries/libspnav/default.nix
index fb2a2744d6ad..99f2a64d7b12 100644
--- a/nixpkgs/pkgs/development/libraries/libspnav/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspnav/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, libX11}:
+{ stdenv, lib, fetchFromGitHub, libX11, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
   version = "0.2.3";
@@ -11,9 +11,17 @@ stdenv.mkDerivation rec {
     sha256 = "098h1jhlj87axpza5zgy58prp0zn94wyrbch6x0s7q4mzh7dc8ba";
   };
 
+  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
   buildInputs = [ libX11 ];
 
+  patches = [
+    # Changes the socket path from /run/spnav.sock to $XDG_RUNTIME_DIR/spnav.sock
+    # to allow for a user service
+    ./configure-socket-path.patch
+  ];
+
   configureFlags = [ "--disable-debug"];
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
 
   preInstall = ''
     mkdir -p $out/{lib,include}
diff --git a/nixpkgs/pkgs/development/libraries/libspotify/default.nix b/nixpkgs/pkgs/development/libraries/libspotify/default.nix
index 004460abe312..d9be4a2964f4 100644
--- a/nixpkgs/pkgs/development/libraries/libspotify/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspotify/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, libspotify, alsaLib, readline, pkg-config, apiKey ? null, unzip, gnused }:
+{ lib, stdenv, fetchurl, libspotify, alsa-lib, readline, pkg-config, apiKey ? null, unzip, gnused }:
 
 let
   version = "12.1.51";
@@ -67,7 +67,7 @@ else stdenv.mkDerivation {
         src = libspotify.src;
   nativeBuildInputs = [ pkg-config ];
         buildInputs = [ libspotify readline ]
-          ++ lib.optional (!stdenv.isDarwin) alsaLib;
+          ++ lib.optional (!stdenv.isDarwin) alsa-lib;
         postUnpack = "sourceRoot=$sourceRoot/share/doc/libspotify/examples";
         patchPhase = "cp ${apiKey} appkey.c";
         installPhase = ''
diff --git a/nixpkgs/pkgs/development/libraries/libsvm/default.nix b/nixpkgs/pkgs/development/libraries/libsvm/default.nix
index 6f4741ed4d05..fbc9bc4d3314 100644
--- a/nixpkgs/pkgs/development/libraries/libsvm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsvm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libsvm";
-  version = "3.24";
+  version = "3.25";
 
   src = fetchurl {
     url = "https://www.csie.ntu.edu.tw/~cjlin/libsvm/libsvm-${version}.tar.gz";
-    sha256 = "15l69y23fxslrap415dvqb383x5fxvbffp9giszjfqjf38h1m26m";
+    sha256 = "sha256-UjUOiqdAsXbh13Pp3AjxNAIYw34BvsN6uQ2wEn5LteU=";
   };
 
   buildPhase = ''
diff --git a/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix b/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
index 920315bb1bc2..dcf8990a879e 100644
--- a/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, pkg-config, autoreconfHook
-, openssl, libopus, alsaLib, libpulseaudio
+, openssl, libopus, alsa-lib, libpulseaudio
 }:
 
 with lib;
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
-  buildInputs = [ openssl libopus alsaLib libpulseaudio ];
+  buildInputs = [ openssl libopus alsa-lib libpulseaudio ];
   enableParallelBuilding = true;
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/libthreadar/default.nix b/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
index c67be246928c..953800cdd576 100644
--- a/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
@@ -3,12 +3,12 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  version = "1.3.1";
+  version = "1.3.2";
   pname = "libthreadar";
 
   src = fetchurl {
     url = "mirror://sourceforge/libthreadar/${pname}-${version}.tar.gz";
-    sha256 = "0x1kkccy81rcqbhlw88sw7lykp7398vmrvp6f9yy42k9bl4yxn2q";
+    sha256 = "sha256-q5FiBlncbhdXDgRm7wgxcd4rkxqje/1ls9kPGqmomP0=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/libtomcrypt/default.nix b/nixpkgs/pkgs/development/libraries/libtomcrypt/default.nix
index 7ed8fca3babd..936c92bf7c5d 100644
--- a/nixpkgs/pkgs/development/libraries/libtomcrypt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtomcrypt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, libtool }:
+{ lib, stdenv, fetchurl, fetchpatch, libtool, libtommath }:
 
 stdenv.mkDerivation rec {
   pname = "libtomcrypt";
@@ -17,14 +17,16 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ libtool ];
+  nativeBuildInputs = [ libtool libtommath ];
 
   postPatch = ''
     substituteInPlace makefile.shared --replace "LT:=glibtool" "LT:=libtool"
   '';
 
   preBuild = ''
-    makeFlagsArray=(PREFIX=$out \
+    makeFlagsArray+=(PREFIX=$out \
+      CFLAGS="-DUSE_LTM -DLTM_DESC -DLTC_PTHREAD" \
+      EXTRALIBS=\"-ltommath\" \
       INSTALL_GROUP=$(id -g) \
       INSTALL_USER=$(id -u))
   '';
diff --git a/nixpkgs/pkgs/development/libraries/libubox/default.nix b/nixpkgs/pkgs/development/libraries/libubox/default.nix
index f8dfa80a9597..9261d1b81bac 100644
--- a/nixpkgs/pkgs/development/libraries/libubox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libubox/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation {
   pname = "libubox";
-  version = "unstable-2020-01-20";
+  version = "unstable-2021-03-09";
 
   src = fetchgit {
     url = "https://git.openwrt.org/project/libubox.git";
-    rev = "43a103ff17ee5872669f8712606578c90c14591d";
-    sha256 = "0cihgckghamcfxrvqjjn69giib80xhsqaj98ldn0gd96zqh96sd4";
+    rev = "551d75b5662cccd0466b990d58136bdf799a804d";
+    sha256 = "05cnjjqjv9nvrs1d8pg4xxxf27jryiv6xk8plmdpmm7r2wkvwn3r";
   };
 
   cmakeFlags = [ "-DBUILD_LUA=OFF" "-DBUILD_EXAMPLES=OFF" ];
diff --git a/nixpkgs/pkgs/development/libraries/libunique/default.nix b/nixpkgs/pkgs/development/libraries/libunique/default.nix
index 27db05ee98ab..82f71f59070c 100644
--- a/nixpkgs/pkgs/development/libraries/libunique/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libunique/default.nix
@@ -9,6 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "1fsgvmncd9caw552lyfg8swmsd6bh4ijjsph69bwacwfxwf09j75";
   };
 
+  # Don't make deprecated usages hard errors
+  prePatch = ''
+    substituteInPlace configure --replace "-Werror" "";
+  '';
+
   # glib-2.62 deprecations
   NIX_CFLAGS_COMPILE = "-DGLIB_DISABLE_DEPRECATION_WARNINGS";
 
@@ -23,9 +28,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ glib gtk2 dbus-glib ];
 
-  # Don't make deprecated usages hard errors
-  preBuild = ''substituteInPlace unique/dbus/Makefile --replace -Werror ""'';
-
   doCheck = true;
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/libunity/default.nix b/nixpkgs/pkgs/development/libraries/libunity/default.nix
index f6fb9a13e4cd..c27fce32ec00 100644
--- a/nixpkgs/pkgs/development/libraries/libunity/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libunity/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchgit
 , pkg-config
 , glib
@@ -14,16 +15,24 @@
 
 stdenv.mkDerivation {
   pname = "libunity";
-  version = "unstable-2019-03-19";
+  version = "unstable-2021-02-01";
 
   outputs = [ "out" "dev" "py" ];
 
+  # Obtained from https://git.launchpad.net/ubuntu/+source/libunity/log/
   src = fetchgit {
     url = "https://git.launchpad.net/ubuntu/+source/libunity";
-    rev = "import/7.1.4+19.04.20190319-0ubuntu1";
-    sha256 = "15b49v88v74q20a5c0lq867qnlz7fx20xifl6j8ha359r0zkfwzj";
+    rev = "import/7.1.4+19.04.20190319-5";
+    sha256 = "LHUs6kl1srS6Xektx+jmm4SXLR47VuQ9IhYbBxf2Wc8=";
   };
 
+  patches = [
+    # Fix builf with latest Vala
+    # https://code.launchpad.net/~jtojnar/libunity/libunity
+    # Did not send upstream because Ubuntu is stuck on Vala 0.48.
+    ./fix-vala.patch
+  ];
+
   nativeBuildInputs = [
     autoreconfHook
     gobject-introspection
@@ -43,11 +52,6 @@ stdenv.mkDerivation {
     libdbusmenu
   ];
 
-  patches = [
-    # See: https://gitlab.gnome.org/GNOME/vala/issues/766
-    ./fix-vala.patch
-  ];
-
   preConfigure = ''
     intltoolize
   '';
@@ -61,6 +65,6 @@ stdenv.mkDerivation {
     homepage = "https://launchpad.net/libunity";
     license = licenses.lgpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libunity/fix-vala.patch b/nixpkgs/pkgs/development/libraries/libunity/fix-vala.patch
index ec34229b4443..555c2ad7bcb0 100644
--- a/nixpkgs/pkgs/development/libraries/libunity/fix-vala.patch
+++ b/nixpkgs/pkgs/development/libraries/libunity/fix-vala.patch
@@ -1,36 +1,12 @@
-diff -ru old/libunity/src/unity-aggregator-scope.vala libunity/src/unity-aggregator-scope.vala
---- old/libunity/src/unity-aggregator-scope.vala	1969-12-31 19:00:01.000000000 -0500
-+++ libunity/src/unity-aggregator-scope.vala	2019-09-21 17:06:12.663864891 -0400
-@@ -51,7 +51,7 @@
-    */
-   public abstract int category_index_for_scope_id (string scope_id);
+--- a/protocol/protocol-icon.vala	2013-08-27 12:53:57 +0000
++++ b/protocol/protocol-icon.vala	2021-04-13 22:34:41 +0000
+@@ -185,7 +185,7 @@
+   }
  
--  public AggregatorScope (string dbus_path_, string id_, MergeMode merge_mode = AggregatorScope.MergeMode.OWNER_SCOPE, bool proxy_filter_hints = false)
-+  protected AggregatorScope (string dbus_path_, string id_, MergeMode merge_mode = AggregatorScope.MergeMode.OWNER_SCOPE, bool proxy_filter_hints = false)
-   {
-     Object (dbus_path: dbus_path_, id: id_, is_master: true,
-             merge_mode: merge_mode, proxy_filter_hints: proxy_filter_hints);
-diff -ru old/libunity/src/unity-deprecated-scope.vala libunity/src/unity-deprecated-scope.vala
---- old/libunity/src/unity-deprecated-scope.vala	1969-12-31 19:00:01.000000000 -0500
-+++ libunity/src/unity-deprecated-scope.vala	2019-09-21 17:06:39.721627805 -0400
-@@ -61,7 +61,7 @@
-   internal CategorySet _categories;
-   internal FilterSet _filters;
-    
--  public DeprecatedScopeBase (string dbus_path_, string id_)
-+  protected DeprecatedScopeBase (string dbus_path_, string id_)
+   /* Added to GIcon interface in 2.37 */
+-  private Variant serialize ()
++  private Variant? serialize ()
    {
-     Object (dbus_path: dbus_path_, id: id_);
-   }
-diff -ru old/libunity/tools/preview-renderer.vala libunity/tools/preview-renderer.vala
---- old/libunity/tools/preview-renderer.vala	1969-12-31 19:00:01.000000000 -0500
-+++ libunity/tools/preview-renderer.vala	2019-09-21 17:09:16.201522110 -0400
-@@ -63,7 +63,7 @@
-      */
-     public abstract class GridRenderer: PreviewRenderer
-     {
--        public GridRenderer()
-+        protected GridRenderer()
-         {
-             Object();
-         }
+     Variant? ret = null;
+     return ret;
+
diff --git a/nixpkgs/pkgs/development/libraries/libunwind/default.nix b/nixpkgs/pkgs/development/libraries/libunwind/default.nix
index b2b5db2309c1..bda7f72a5576 100644
--- a/nixpkgs/pkgs/development/libraries/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libunwind/default.nix
@@ -38,8 +38,7 @@ stdenv.mkDerivation rec {
     description = "A portable and efficient API to determine the call-chain of a program";
     maintainers = with maintainers; [ orivej ];
     platforms = platforms.linux;
+    badPlatforms = [ "riscv32-linux" "riscv64-linux" ];
     license = licenses.mit;
   };
-
-  passthru.supportsHost = !stdenv.hostPlatform.isRiscV;
 }
diff --git a/nixpkgs/pkgs/development/libraries/libvdpau-va-gl/default.nix b/nixpkgs/pkgs/development/libraries/libvdpau-va-gl/default.nix
index 85ebef12fe1f..7a042a172c82 100644
--- a/nixpkgs/pkgs/development/libraries/libvdpau-va-gl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvdpau-va-gl/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, libX11, libpthreadstubs, libXau, libXdmcp
-, libXext, libvdpau, glib, libva, ffmpeg_3, libGLU }:
+, libXext, libvdpau, glib, libva, libGLU }:
 
 stdenv.mkDerivation rec {
   pname = "libvdpau-va-gl";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ libX11 libpthreadstubs libXau libXdmcp libXext libvdpau glib libva ffmpeg_3 libGLU ];
+  buildInputs = [ libX11 libpthreadstubs libXau libXdmcp libXext libvdpau glib libva libGLU ];
 
   doCheck = false; # fails. needs DRI access
 
diff --git a/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix b/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
index a61094d17fe8..5e1c0c671d90 100644
--- a/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
@@ -1,21 +1,47 @@
-{ lib, stdenv, fetchurl, pkg-config, gobject-introspection, intltool, vala
-, libcap_ng, libvirt, libxml2
+{ lib
+, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, gobject-introspection
+, gettext
+, gtk-doc
+, docbook-xsl-nons
+, vala
+, libcap_ng
+, libvirt
+, libxml2
 }:
 
 stdenv.mkDerivation rec {
-  name = "libvirt-glib-3.0.0";
+  name = "libvirt-glib-4.0.0";
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "https://libvirt.org/sources/glib/${name}.tar.gz";
-    sha256 = "1zpbv4ninc57c9rw4zmmkvvqn7154iv1qfr20kyxn8xplalqrzvz";
+    url = "https://libvirt.org/sources/glib/${name}.tar.xz";
+    sha256 = "hCP3Bp2qR2MHMh0cEeLswoU0DNMsqfwFIHdihD7erL0=";
   };
 
-  nativeBuildInputs = [ pkg-config intltool vala gobject-introspection ];
-  buildInputs = [ libcap_ng libvirt libxml2 gobject-introspection ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    gtk-doc
+    docbook-xsl-nons
+    vala
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    libcap_ng
+    libvirt
+    libxml2
+    gobject-introspection
+  ];
 
-  enableParallelBuilding = true;
   strictDeps = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/libvirt/default.nix b/nixpkgs/pkgs/development/libraries/libvirt/default.nix
index ea4b40c3c891..28b67a801989 100644
--- a/nixpkgs/pkgs/development/libraries/libvirt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvirt/default.nix
@@ -9,6 +9,7 @@
 , enableXen ? false, xen ? null
 , enableIscsi ? false, openiscsi
 , enableCeph ? false, ceph
+, enableGlusterfs ? false, glusterfs
 }:
 
 with lib;
@@ -72,6 +73,8 @@ in stdenv.mkDerivation rec {
     openiscsi
   ] ++ optionals enableCeph [
     ceph
+  ] ++ optionals enableGlusterfs [
+    glusterfs
   ] ++ optionals stdenv.isDarwin [
     libiconv gmp
   ];
@@ -119,6 +122,7 @@ in stdenv.mkDerivation rec {
     "-Dsecdriver_apparmor=enabled"
     "-Dnumad=enabled"
     "-Dstorage_disk=enabled"
+    (opt "glusterfs" enableGlusterfs)
     (opt "storage_rbd" enableCeph)
   ] ++ optionals stdenv.isDarwin [
     "-Dinit_script=none"
diff --git a/nixpkgs/pkgs/development/libraries/libvncserver/default.nix b/nixpkgs/pkgs/development/libraries/libvncserver/default.nix
index 7c8d4a76fc95..01a079a20512 100644
--- a/nixpkgs/pkgs/development/libraries/libvncserver/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvncserver/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchzip, fetchpatch, cmake
 , libjpeg, openssl, zlib, libgcrypt, libpng
-, systemd
+, systemd, Carbon
 }:
 
 let
@@ -19,10 +19,11 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [
-    libjpeg openssl libgcrypt libpng
-  ] ++ lib.optional stdenv.isLinux systemd;
+  buildInputs = [ libjpeg openssl libgcrypt libpng ]
+    ++ lib.optional stdenv.isLinux systemd
+    ++ lib.optional stdenv.isDarwin Carbon;
   propagatedBuildInputs = [ zlib ];
+
   meta = {
     inherit (s) version;
     description = "VNC server library";
diff --git a/nixpkgs/pkgs/development/libraries/libwnck/3.x.nix b/nixpkgs/pkgs/development/libraries/libwnck/3.x.nix
index 3792b826f594..425a1bab3550 100644
--- a/nixpkgs/pkgs/development/libraries/libwnck/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/libwnck/3.x.nix
@@ -16,7 +16,7 @@
 , libstartup_notification
 , gettext
 , gobject-introspection
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -60,9 +60,10 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "${pname}${lib.versions.major version}";
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -70,6 +71,6 @@ stdenv.mkDerivation rec {
     description = "Library to manage X windows and workspaces (via pagers, tasklists, etc.)";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.worldofpeace ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libwpe/default.nix b/nixpkgs/pkgs/development/libraries/libwpe/default.nix
index 4397f65ac4b6..9e7886eb68d1 100644
--- a/nixpkgs/pkgs/development/libraries/libwpe/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libwpe/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libwpe";
-  version = "1.8.0";
+  version = "1.10.0";
 
   src = fetchurl {
     url = "https://wpewebkit.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "sha256-pvAKfQkcvU21f+fuO0wSxjUJIdZU7XmBKACibIiEgdI=";
+    sha256 = "sha256-JBXicNReNZXtQFK8EF9zN0TcLTZ34S/0qDHlAphBCE0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libxc/default.nix b/nixpkgs/pkgs/development/libraries/libxc/default.nix
index d4f6391fe6f4..48c5a4f9b475 100644
--- a/nixpkgs/pkgs/development/libraries/libxc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxc/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitLab, cmake, gfortran, perl }:
 
 let
-  version = "5.1.3";
+  version = "5.1.4";
 
 in stdenv.mkDerivation {
   pname = "libxc";
@@ -11,7 +11,7 @@ in stdenv.mkDerivation {
     owner = "libxc";
     repo = "libxc";
     rev = version;
-    sha256 = "14czspifznsmvvix5hcm1rk18iy590qk8p5m00p0y032gmn9i2zj";
+    sha256 = "0rs6v72zz3jr22r29zxxdk8wdsfv6wid6cx2661974z09dbvbr1f";
   };
 
   buildInputs = [ gfortran ];
diff --git a/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix b/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
index 8c37bb0c173b..b738089c853f 100644
--- a/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
@@ -1,34 +1,46 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, bison, doxygen
-, xkeyboard_config, libxcb, libxml2
+{ lib
+, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, bison
+, doxygen
+, xkeyboard_config
+, libxcb
+, libxml2
 , python3
 , libX11
-# To enable the "interactive-wayland" subcommand of xkbcli:
-, withWaylandSupport ? false, wayland, wayland-protocols
+  # To enable the "interactive-wayland" subcommand of xkbcli. This is the
+  # wayland equivalent of `xev` on X11.
+, withWaylandTools ? stdenv.isLinux
+, wayland
+, wayland-protocols
 }:
 
 stdenv.mkDerivation rec {
   pname = "libxkbcommon";
-  version = "1.2.1";
+  version = "1.3.0";
 
   src = fetchurl {
     url = "https://xkbcommon.org/download/${pname}-${version}.tar.xz";
-    sha256 = "1cqzd4vd5jw3ghibmdqvy90mb1h8vvazc81bxgavk6sc0b9sfcz8";
+    sha256 = "0ysynzzgzd9jdrh1321r4bgw8wd5zljrlyn5y1a31g39xacf02bv";
   };
 
   outputs = [ "out" "dev" "doc" ];
 
   depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ meson ninja pkg-config bison doxygen ]
-    ++ lib.optional withWaylandSupport wayland;
+    ++ lib.optional withWaylandTools wayland;
   buildInputs = [ xkeyboard_config libxcb libxml2 ]
-    ++ lib.optionals withWaylandSupport [ wayland wayland-protocols ];
+    ++ lib.optionals withWaylandTools [ wayland wayland-protocols ];
   checkInputs = [ python3 ];
 
   mesonFlags = [
     "-Dxkb-config-root=${xkeyboard_config}/etc/X11/xkb"
     "-Dxkb-config-extra-path=/etc/xkb" # default=$sysconfdir/xkb ($out/etc)
     "-Dx-locale-root=${libX11.out}/share/X11/locale"
-    "-Denable-wayland=${lib.boolToString withWaylandSupport}"
+    "-Denable-wayland=${lib.boolToString withWaylandTools}"
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix b/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
index 849ebcf3c863..4bb80cb04a45 100644
--- a/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libxlsxwriter";
-  version = "1.0.3";
+  version = "1.0.6";
 
   src = fetchFromGitHub {
     owner = "jmcnamara";
     repo = "libxlsxwriter";
     rev = "RELEASE_${version}";
-    sha256 = "14c5rgx87nhzasr0j7mcfr1w7ifz0gmdiqy2xq59di5xvcdrpxpv";
+    sha256 = "03fdcbm0xnkxwv6fir4yy4x9q2p5h08j099w9xh5gc2ni7ygjlyx";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libxml2/default.nix b/nixpkgs/pkgs/development/libraries/libxml2/default.nix
index 30a65e3a0a36..ca3cbc4a1884 100644
--- a/nixpkgs/pkgs/development/libraries/libxml2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxml2/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, lib, fetchurl, fetchpatch
+{ stdenv, lib, fetchurl
 , zlib, xz, libintl, python, gettext, ncurses, findXMLCatalogs
 , pythonSupport ? enableShared && stdenv.buildPlatform == stdenv.hostPlatform
 , icuSupport ? false, icu ? null
 , enableShared ? stdenv.hostPlatform.libc != "msvcrt"
-, enableStatic ? !enableShared,
+, enableStatic ? !enableShared
 }:
 
 stdenv.mkDerivation rec {
   pname = "libxml2";
-  version = "2.9.10";
+  version = "2.9.12";
 
   src = fetchurl {
     url = "http://xmlsoft.org/sources/${pname}-${version}.tar.gz";
-    sha256 = "07xynh8hcxb2yb1fs051xrgszjvj37wnxvxgsj10rzmqzy9y3zma";
+    sha256 = "14hxwzmf5xqppx77z7i0ni9lpzg1a84dqpf8j8l1fvy570g6imn8";
   };
   patches = [
     # Upstream bugs:
@@ -27,28 +27,6 @@ stdenv.mkDerivation rec {
     #   https://github.com/NixOS/nixpkgs/pull/63174
     #   https://github.com/NixOS/nixpkgs/pull/72342
     ./utf8-xmlErrorFuncHandler.patch
-    (fetchpatch {
-      name = "CVE-2019-20388.patch";
-      url = "https://gitlab.gnome.org/GNOME/libxml2/commit/6088a74bcf7d0c42e24cff4594d804e1d3c9fbca.patch";
-      sha256 = "070s7al2r2k92320h9cdfc2097jy4kk04d0disc98ddc165r80jl";
-    })
-    (fetchpatch {
-      name = "CVE-2020-7595.patch";
-      url = "https://gitlab.gnome.org/GNOME/libxml2/commit/0e1a49c8907645d2e155f0d89d4d9895ac5112b5.patch";
-      sha256 = "0klvaxkzakkpyq0m44l9xrpn5kwaii194sqsivfm6zhnb9hhl15l";
-    })
-    (fetchpatch {
-      name = "CVE-2020-24977.patch";
-      url = "https://gitlab.gnome.org/GNOME/libxml2/commit/50f06b3efb638efb0abd95dc62dca05ae67882c2.patch";
-      sha256 = "093f1ic5qfiq8nk9mc6b8p1qcs8m9hir3ardr6r5il4zi2dnjrj4";
-    })
-    # Fix compatibility with Python 3.9.
-    # https://gitlab.gnome.org/GNOME/libxml2/-/issues/149
-    (fetchpatch {
-      name = "python39.patch";
-      url = "https://gitlab.gnome.org/nwellnhof/libxml2/-/commit/e4fb36841800038c289997432ca547c9bfef9db1.patch";
-      sha256 = "0h3vpy9fg3339b14qa64640ypp65z3hrrrmpjl8qm72srkp24ci5";
-    })
   ];
 
   outputs = [ "bin" "dev" "out" "man" "doc" ]
@@ -75,6 +53,10 @@ stdenv.mkDerivation rec {
     (lib.withFeatureAs pythonSupport "python" python)
   ];
 
+  preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '';
+
   enableParallelBuilding = true;
 
   # disable test that's problematic with newer pythons: see
diff --git a/nixpkgs/pkgs/development/libraries/libxmlb/default.nix b/nixpkgs/pkgs/development/libraries/libxmlb/default.nix
index 161833a928cd..b476edaf5e60 100644
--- a/nixpkgs/pkgs/development/libraries/libxmlb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxmlb/default.nix
@@ -15,7 +15,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libxmlb";
-  version = "0.3.0";
+  version = "0.3.1";
 
   outputs = [ "out" "lib" "dev" "devdoc" "installedTests" ];
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     owner = "hughsie";
     repo = "libxmlb";
     rev = version;
-    sha256 = "sha256-prHsigfjifwiuBSUHaCWhjJIaw1LkOGHJu20cdPgH9c=";
+    sha256 = "sha256-4gJBmSbo5uGj12Y2Ov4gmS8nJshQxuBM9BAevY/lwjg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/libxmlxx/default.nix b/nixpkgs/pkgs/development/libraries/libxmlxx/default.nix
index 19282ddc822d..67c5a0794ed5 100644
--- a/nixpkgs/pkgs/development/libraries/libxmlxx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxmlxx/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, libxml2, glibmm, perl, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, libxml2, glibmm, perl, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "libxml++";
@@ -16,8 +16,9 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ libxml2 glibmm ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libxslt/default.nix b/nixpkgs/pkgs/development/libraries/libxslt/default.nix
index 650e17d3179d..eb23e16d653a 100644
--- a/nixpkgs/pkgs/development/libraries/libxslt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxslt/default.nix
@@ -1,4 +1,6 @@
-{ lib, stdenv, fetchurl, fetchpatch, libxml2, findXMLCatalogs, gettext, python3, libgcrypt
+{ lib, stdenv, fetchurl
+, pkg-config
+, libxml2, findXMLCatalogs, gettext, python3, libgcrypt
 , cryptoSupport ? false
 , pythonSupport ? stdenv.buildPlatform == stdenv.hostPlatform
 }:
@@ -14,6 +16,10 @@ stdenv.mkDerivation rec {
 
   outputs = [ "bin" "dev" "out" "man" "doc" ] ++ lib.optional pythonSupport "py";
 
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
   buildInputs = [ libxml2.dev ]
     ++ lib.optional stdenv.isDarwin gettext
     ++ lib.optionals pythonSupport [ libxml2.py python3 ]
@@ -22,7 +28,6 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ findXMLCatalogs ];
 
   configureFlags = [
-    "--with-libxml-prefix=${libxml2.dev}"
     "--without-debug"
     "--without-mem-debug"
     "--without-debugger"
diff --git a/nixpkgs/pkgs/development/libraries/libzapojit/default.nix b/nixpkgs/pkgs/development/libraries/libzapojit/default.nix
index d16f34039f19..8acb5e858df8 100644
--- a/nixpkgs/pkgs/development/libraries/libzapojit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libzapojit/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, intltool, json-glib, librest, libsoup, gnome3, gnome-online-accounts, gobject-introspection }:
+{ lib, stdenv, fetchurl, pkg-config, glib, intltool, json-glib, librest, libsoup, gnome, gnome-online-accounts, gobject-introspection }:
 
 stdenv.mkDerivation rec {
   pname = "libzapojit";
@@ -15,8 +15,9 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ glib json-glib librest libsoup gnome-online-accounts ]; # zapojit-0.0.pc
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/lief/default.nix b/nixpkgs/pkgs/development/libraries/lief/default.nix
index 872327ed4b8f..706408061907 100644
--- a/nixpkgs/pkgs/development/libraries/lief/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lief/default.nix
@@ -10,13 +10,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "lief";
-  version = "0.11.4";
+  version = "0.11.5";
 
   src = fetchFromGitHub {
     owner = "lief-project";
     repo = "LIEF";
     rev = version;
-    sha256 = "DgsTrJ2+zdXJK6CdDOan7roakaaxQiwrVeiQnzJnk0A=";
+    sha256 = "sha256-crYFBeX+YaIvVAv3uvGEeNCg+ZbUryr0NacDG56TUGE=";
   };
 
   outputs = [ "out" "py" ];
diff --git a/nixpkgs/pkgs/development/libraries/lime/default.nix b/nixpkgs/pkgs/development/libraries/lime/default.nix
index 741f05bea6f9..4d52b848ae40 100644
--- a/nixpkgs/pkgs/development/libraries/lime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lime/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "lime";
-  version = "4.5.1";
+  version = "4.5.14";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "1fsldk7gxagxkbkzksz6dz8a8dmix1lxfy8nvvp0m355pzgqj6lb";
+    sha256 = "sha256-ixqJ37+ljAru3hZ512nosTak0G/m6/nnmv2p/s5sVLs=";
   };
 
   buildInputs = [ bctoolbox soci belle-sip sqlite ];
diff --git a/nixpkgs/pkgs/development/libraries/lirc/default.nix b/nixpkgs/pkgs/development/libraries/lirc/default.nix
index 6b7f0c102ee8..b93cc96bde02 100644
--- a/nixpkgs/pkgs/development/libraries/lirc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lirc/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchpatch, autoreconfHook, pkg-config, help2man, python3,
-  alsaLib, xlibsWrapper, libxslt, systemd, libusb-compat-0_1, libftdi1 }:
+  alsa-lib, xlibsWrapper, libxslt, systemd, libusb-compat-0_1, libftdi1 }:
 
 stdenv.mkDerivation rec {
   name = "lirc-0.10.1";
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook pkg-config help2man
     (python3.withPackages (p: with p; [ pyyaml setuptools ])) ];
 
-  buildInputs = [ alsaLib xlibsWrapper libxslt systemd libusb-compat-0_1 libftdi1 ];
+  buildInputs = [ alsa-lib xlibsWrapper libxslt systemd libusb-compat-0_1 libftdi1 ];
 
   configureFlags = [
     "--sysconfdir=/etc"
diff --git a/nixpkgs/pkgs/development/libraries/lmdb/default.nix b/nixpkgs/pkgs/development/libraries/lmdb/default.nix
index 229e82c323aa..0a3515db2622 100644
--- a/nixpkgs/pkgs/development/libraries/lmdb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lmdb/default.nix
@@ -1,13 +1,15 @@
-{ lib, stdenv, fetchgit }:
+{ lib, stdenv, fetchFromGitLab }:
 
 stdenv.mkDerivation rec {
   pname = "lmdb";
-  version = "0.9.28";
+  version = "0.9.29";
 
-  src = fetchgit {
-    url = "https://git.openldap.org/openldap/openldap.git";
+  src = fetchFromGitLab {
+    domain = "git.openldap.org";
+    owner = "openldap";
+    repo = "openldap";
     rev = "LMDB_${version}";
-    sha256 = "012a8bs49cswsnzw7k4piis5b6dn4by85w7a7mai9i04xcjyy9as";
+    sha256 = "19zq5s1amrv1fhw1aszcn2w2xjrk080l6jj5hc9f46yiqf98jjg3";
   };
 
   postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";
@@ -25,7 +27,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/liblmdb.so";
 
   doCheck = true;
-  checkPhase = "make test";
+  checkTarget = "test";
 
   postInstall = ''
     moveToOutput bin "$bin"
@@ -52,7 +54,7 @@ stdenv.mkDerivation rec {
       offering the persistence of standard disk-based databases, and is only
       limited to the size of the virtual address space.
     '';
-    homepage = "http://symas.com/mdb/";
+    homepage = "https://symas.com/lmdb/";
     maintainers = with maintainers; [ jb55 vcunat ];
     license = licenses.openldap;
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/development/libraries/lmdbxx/default.nix b/nixpkgs/pkgs/development/libraries/lmdbxx/default.nix
index 2d037afbe213..4fc1573eea1a 100644
--- a/nixpkgs/pkgs/development/libraries/lmdbxx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lmdbxx/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = {
-    homepage = "https://github.com/drycpp/lmdbxx#readme";
+    homepage = "https://github.com/hoytech/lmdbxx#readme";
     description = "C++11 wrapper for the LMDB embedded B+ tree database library";
     license = lib.licenses.unlicense;
     maintainers = with lib.maintainers; [ fgaz ];
diff --git a/nixpkgs/pkgs/development/libraries/lucene++/default.nix b/nixpkgs/pkgs/development/libraries/lucene++/default.nix
index 2761329ea23c..79e28cc7bb4a 100644
--- a/nixpkgs/pkgs/development/libraries/lucene++/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lucene++/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchurl, cmake, boost, gtest }:
+{ lib, stdenv, fetchFromGitHub, cmake, boost, gtest }:
 
 stdenv.mkDerivation rec {
   pname = "lucene++";
   version = "3.0.7";
 
-  src = fetchurl {
-    url = "https://github.com/luceneplusplus/LucenePlusPlus/"
-        + "archive/rel_${version}.tar.gz";
-    sha256 = "032yb35b381ifm7wb8cy2m3yndklnxyi5cgprjh48jqy641z46bc";
+  src = fetchFromGitHub {
+    owner = "luceneplusplus";
+    repo = "LucenePlusPlus";
+    rev = "rel_${version}";
+    sha256 = "06b37fly6l27zc6kbm93f6khfsv61w792j8xihfagpcm9cfz2zi1";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/lyra/default.nix b/nixpkgs/pkgs/development/libraries/lyra/default.nix
index ed02af56f784..31b85b01d6a5 100644
--- a/nixpkgs/pkgs/development/libraries/lyra/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lyra/default.nix
@@ -13,8 +13,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ meson ninja ];
 
-  enableParallelBuilding = true;
-
   postPatch = "sed -i s#/usr#$out#g meson.build";
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/libraries/malcontent/default.nix b/nixpkgs/pkgs/development/libraries/malcontent/default.nix
index 641f3b87c3fe..82635ae66d63 100644
--- a/nixpkgs/pkgs/development/libraries/malcontent/default.nix
+++ b/nixpkgs/pkgs/development/libraries/malcontent/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "malcontent";
-  version = "0.10.0";
+  version = "0.10.1";
 
   outputs = [ "bin" "out" "lib" "pam" "dev" "man" "installedTests" ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "pwithnall";
     repo = pname;
     rev = version;
-    sha256 = "1b6rgf7h9gj2kw1b7ba0mvhsb89riwf9p4pviqjfzd1i5nmbmnyx";
+    sha256 = "sha256-GgY+E+1gzmiAAALzdKu1CjN3xPeVMhbmNLqJNB1zHaU=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/mapnik/default.nix b/nixpkgs/pkgs/development/libraries/mapnik/default.nix
index d4f11c1d126a..45d5e0a40eb0 100644
--- a/nixpkgs/pkgs/development/libraries/mapnik/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mapnik/default.nix
@@ -23,18 +23,42 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ boost cairo freetype gdal harfbuzz icu libjpeg libpng libtiff
-      libwebp libxml2 proj python sqlite zlib
+      libwebp proj python sqlite zlib
 
       # optional inputs
       postgresql
     ];
 
+  propagatedBuildInputs = [ libxml2 ];
+
   prefixKey = "PREFIX=";
 
   preConfigure = ''
     patchShebangs ./configure
   '';
 
+  # NOTE: 2021-05-06:
+  # Add -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1 for backwards compatibility
+  # with major versions 6 and 7 of proj which are otherwise not compatible
+  # with mapnik 3.1.0. Note that:
+  #
+  # 1. Starting with proj version 8, this workaround will no longer be
+  #    supported by the upstream proj project.
+  #
+  # 2. Without the workaround, mapnik configures itself without proj support.
+  #
+  # 3. The master branch of mapnik (after 3.1.0) appears to add native support
+  #    for the proj 6 api, so this workaround is not likely to be needed in
+  #    subsequent mapnik releases. At that point, this block comment and the
+  #    NIX_CFLAGS_COMPILE expression can be removed.
+
+  NIX_CFLAGS_COMPILE =
+    if version != "3.1.0" && lib.versionAtLeast version "3.1.0"
+    then throw "The mapnik compatibility workaround for proj 6 may no longer be required. Remove workaround after checking."
+    else if lib.versionAtLeast (lib.getVersion proj) "8"
+    then throw ("mapnik currently requires a version of proj less than 8, but proj version is: " + (lib.getVersion proj))
+    else "-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1";
+
   configureFlags = [
     "BOOST_INCLUDES=${boost.dev}/include"
     "BOOST_LIBS=${boost.out}/lib"
@@ -51,16 +75,19 @@ stdenv.mkDerivation rec {
     "JPEG_LIBS=${libjpeg.out}/lib"
     "PNG_INCLUDES=${libpng.dev}/include"
     "PNG_LIBS=${libpng.out}/lib"
-    "PROJ_INCLUDES=${proj}/include"
-    "PROJ_LIBS=${proj}/lib"
+    "PROJ_INCLUDES=${proj.dev}/include"
+    "PROJ_LIBS=${proj.out}/lib"
     "SQLITE_INCLUDES=${sqlite.dev}/include"
     "SQLITE_LIBS=${sqlite.out}/lib"
     "TIFF_INCLUDES=${libtiff.dev}/include"
     "TIFF_LIBS=${libtiff.out}/lib"
     "WEBP_INCLUDES=${libwebp}/include"
     "WEBP_LIBS=${libwebp}/lib"
-    "XML2_INCLUDES=${libxml2.dev}/include"
-    "XML2_LIBS=${libxml2.out}/lib"
+    "XMLPARSER=libxml2"
+  ];
+
+  buildFlags = [
+    "JOBS=$(NIX_BUILD_CORES)"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/matio/default.nix b/nixpkgs/pkgs/development/libraries/matio/default.nix
index 0b8143b69117..3b0e811097e7 100644
--- a/nixpkgs/pkgs/development/libraries/matio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/matio/default.nix
@@ -1,9 +1,9 @@
 { lib, stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "matio-1.5.20";
+  name = "matio-1.5.21";
   src = fetchurl {
     url = "mirror://sourceforge/matio/${name}.tar.gz";
-    sha256 = "sha256-XR9yofUav2qc0j6qgS+xe4YQlwWQlfSMdoxINcWqJZg=";
+    sha256 = "sha256-IYCRd+VYOefJTa2nRO5Vwd6n11fdqriWBXdtUBIvsGU=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/mauikit-filebrowsing/default.nix b/nixpkgs/pkgs/development/libraries/mauikit-filebrowsing/default.nix
new file mode 100644
index 000000000000..5cce0382c8f0
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/mauikit-filebrowsing/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, mkDerivation
+, fetchFromGitLab
+, cmake
+, extra-cmake-modules
+, kconfig
+, kio
+, mauikit
+}:
+
+mkDerivation rec {
+  pname = "mauikit-filebrowsing";
+  version = "1.2.2";
+
+  src = fetchFromGitLab {
+    domain = "invent.kde.org";
+    owner = "maui";
+    repo = "mauikit-filebrowsing";
+    rev = "v${version}";
+    sha256 = "1m56lil7w884wn8qycl7y55abvw2vanfy8c4g786200p6acsh3kl";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+  ];
+
+  buildInputs = [
+    kconfig
+    kio
+    mauikit
+  ];
+
+  meta = with lib; {
+    homepage = "https://invent.kde.org/maui/mauikit-filebrowsing";
+    description = "MauiKit File Browsing utilities and controls";
+    license = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/mauikit/default.nix b/nixpkgs/pkgs/development/libraries/mauikit/default.nix
index 38e938080ba3..22155a7a52a6 100644
--- a/nixpkgs/pkgs/development/libraries/mauikit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mauikit/default.nix
@@ -3,22 +3,23 @@
 , fetchFromGitLab
 , cmake
 , extra-cmake-modules
-, kio
+, kconfig
+, kcoreaddons
+, ki18n
 , qtbase
 , qtquickcontrols2
-, syntax-highlighting
 }:
 
 mkDerivation rec {
   pname = "mauikit";
-  version = "1.2.1";
+  version = "1.2.2";
 
   src = fetchFromGitLab {
     domain = "invent.kde.org";
     owner = "maui";
     repo = "mauikit";
     rev = "v${version}";
-    sha256 = "1wimbpbn9yqqdcjd59x83z0mw2fycjz09py2rwimfi8ldmvi5lgy";
+    sha256 = "1jz0a65bbznjg7aaq19rdyp956wn6xc1x4xigfkhj6mwsvnb49av";
   };
 
   nativeBuildInputs = [
@@ -27,9 +28,10 @@ mkDerivation rec {
   ];
 
   buildInputs = [
-    kio
+    kconfig
+    kcoreaddons
+    ki18n
     qtquickcontrols2
-    syntax-highlighting
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/md4c/default.nix b/nixpkgs/pkgs/development/libraries/md4c/default.nix
index a711ecb7c768..a29b521a2de5 100644
--- a/nixpkgs/pkgs/development/libraries/md4c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/md4c/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "md4c";
-  version = "0.4.7";
+  version = "0.4.8";
 
   src = fetchFromGitHub {
     owner = "mity";
     repo = pname;
     rev = "release-${version}";
-    hash = "sha256-nfMXUP1wu3ifn1QVTO/+XcfFRsThG8PlmYRv+b8AYlQ=";
+    hash = "sha256-+LObAD5JB8Vb4Rt4hTo1Z4ispxzfFkkXA2sw6TKB7Yo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix b/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
index aaa31b29e9ea..5d9cc98b1a9c 100644
--- a/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
@@ -1,10 +1,10 @@
-{ alsaLib
+{ alsa-lib
 , bctoolbox
 , bzrtp
 , cmake
 , doxygen
 , fetchFromGitLab
-, ffmpeg_3
+, ffmpeg
 , glew
 , gsm
 , intltool
@@ -33,7 +33,7 @@
 
 stdenv.mkDerivation rec {
   pname = "mediastreamer2";
-  version = "4.5.1";
+  version = "4.5.15";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "0aqma9834lzy1593qb9qwmzvzn50y6fzhmmg493jznf8977b0gsw";
+    sha256 = "sha256-n/EuXEQ9nJKC32PMvWkfP1G+E6uQQuu1/A168n8/cIY=";
   };
 
   patches = [
@@ -62,10 +62,10 @@ stdenv.mkDerivation rec {
   ];
 
   propagatedBuildInputs = [
-    alsaLib
+    alsa-lib
     bctoolbox
     bzrtp
-    ffmpeg_3
+    ffmpeg
     glew
     gsm
     libGL
diff --git a/nixpkgs/pkgs/development/libraries/mesa/default.nix b/nixpkgs/pkgs/development/libraries/mesa/default.nix
index 1186882aa809..2b94f9c3bb50 100644
--- a/nixpkgs/pkgs/development/libraries/mesa/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mesa/default.nix
@@ -122,7 +122,7 @@ self = stdenv.mkDerivation {
   ];
 
   buildInputs = with xorg; [
-    expat llvmPackages.llvm libglvnd xorgproto
+    expat llvmPackages.libllvm libglvnd xorgproto
     libX11 libXext libxcb libXt libXfixes libxshmfence libXrandr
     libffi libvdpau libelf libXvMC
     libpthreadstubs openssl /*or another sha1 provider*/
@@ -145,7 +145,6 @@ self = stdenv.mkDerivation {
   ] ++ optional stdenv.isLinux libdrm
     ++ optionals stdenv.isDarwin [ OpenGL Xplugin ];
 
-  enableParallelBuilding = true;
   doCheck = false;
 
   postInstall = ''
@@ -185,14 +184,14 @@ self = stdenv.mkDerivation {
   postFixup = optionalString stdenv.isLinux ''
     # set the default search path for DRI drivers; used e.g. by X server
     substituteInPlace "$dev/lib/pkgconfig/dri.pc" --replace "$drivers" "${libglvnd.driverLink}"
-    substituteInPlace "$dev/lib/pkgconfig/d3d.pc" --replace "$drivers" "${libglvnd.driverLink}"
+    [ -f "$dev/lib/pkgconfig/d3d.pc" ] && substituteInPlace "$dev/lib/pkgconfig/d3d.pc" --replace "$drivers" "${libglvnd.driverLink}"
 
     # remove pkgconfig files for GL/EGL; they are provided by libGL.
     rm -f $dev/lib/pkgconfig/{gl,egl}.pc
 
     # Move development files for libraries in $drivers to $driversdev
     mkdir -p $driversdev/include
-    mv $dev/include/xa_* $dev/include/d3d* $driversdev/include
+    mv $dev/include/xa_* $dev/include/d3d* -t $driversdev/include || true
     mkdir -p $driversdev/lib/pkgconfig
     for pc in lib/pkgconfig/{xatracker,d3d}.pc; do
       if [ -f "$dev/$pc" ]; then
diff --git a/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix b/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
index af1c1c91a94f..5a5257168eb4 100644
--- a/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
@@ -21,7 +21,8 @@ stdenv.mkDerivation rec {
   buildPhase = if nativeBuild then "make" else "true";
 
   # https://github.com/microsoft/GSL/issues/806
-  cmakeFlags = [ "-DCMAKE_CXX_FLAGS=-Wno-catch-value" ];
+  cmakeFlags = lib.optionals stdenv.cc.isGNU
+    [ "-DCMAKE_CXX_FLAGS=-Wno-catch-value" ];
 
   installPhase = ''
     mkdir -p $out/include
diff --git a/nixpkgs/pkgs/development/libraries/mm-common/default.nix b/nixpkgs/pkgs/development/libraries/mm-common/default.nix
index a43d99503a3f..7ce2675e3017 100644
--- a/nixpkgs/pkgs/development/libraries/mm-common/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mm-common/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , fetchurl
-, gnome3
+, gnome
 , meson
 , python3
 , ninja
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/mpfi/default.nix b/nixpkgs/pkgs/development/libraries/mpfi/default.nix
index db36ed38a953..5ff0dcd29e7e 100644
--- a/nixpkgs/pkgs/development/libraries/mpfi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mpfi/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, autoconf, automake, libtool, texinfo, mpfr}:
+{lib, stdenv, fetchurl, autoreconfHook, texinfo, mpfr}:
 stdenv.mkDerivation rec {
   pname = "mpfi";
   version = "1.5.4";
@@ -12,13 +12,9 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Ozk4WV1yCvF5c96vcnz8DdQcixbCCtwQOpcPSkOuOlY=";
   };
 
-  nativeBuildInputs = [ autoconf automake libtool texinfo ];
+  nativeBuildInputs = [ autoreconfHook texinfo ];
   buildInputs = [ mpfr ];
 
-  preConfigure = ''
-    ./autogen.sh
-  '';
-
   meta = {
     inherit version;
     description = "A multiple precision interval arithmetic library based on MPFR";
diff --git a/nixpkgs/pkgs/development/libraries/mpich/default.nix b/nixpkgs/pkgs/development/libraries/mpich/default.nix
index 49af2593e51e..9227cd705430 100644
--- a/nixpkgs/pkgs/development/libraries/mpich/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mpich/default.nix
@@ -1,41 +1,23 @@
 { stdenv, lib, fetchurl, perl, gfortran
-, openssh, hwloc, autoconf, automake, libtool
-# device options are ch3 or ch4
-, device ? "ch4"
-# backend option are libfabric or ucx
-, ch4backend ? "libfabric"
-, ucx, libfabric
+, openssh, hwloc
+# either libfabric or ucx work for ch4backend on linux. On darwin, neither of
+# these libraries currently build so this argument is ignored on Darwin.
+, ch4backend
 # Process manager to build
 , withPm ? "hydra:gforker"
 } :
 
-assert (ch4backend == "ucx" || ch4backend == "libfabric");
+assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric");
 
 stdenv.mkDerivation  rec {
   pname = "mpich";
-  version = "3.4.1";
+  version = "3.4.2";
 
   src = fetchurl {
     url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz";
-    sha256 = "09wpfw9lsrc84vcmfw94razd4xv4znx4mmg7rqmljvgg0jc96dl8";
+    sha256 = "1gw7qpb27mhsj7ip0hhljshgpwvz2hmyhizhlp6793afp2lbw6aw";
   };
 
-  patches = [
-    # Reverts an upstream change that causes json-c test to fail
-    ./jsonc-test.patch
-  ];
-
-  # Required for the json-c patch
-  nativeBuildInputs = [ autoconf automake libtool ];
-
-  # Update configure after patch
-  postPatch = ''
-    cd modules/json-c
-    ./autogen.sh
-    cd ../..
-  '';
-
-
   configureFlags = [
     "--enable-shared"
     "--enable-sharedlib"
@@ -45,8 +27,7 @@ stdenv.mkDerivation  rec {
   enableParallelBuilding = true;
 
   buildInputs = [ perl gfortran openssh hwloc ]
-    ++ lib.optional (ch4backend == "ucx") ucx
-    ++ lib.optional (ch4backend == "libfabric") libfabric;
+    ++ lib.optional (!stdenv.isDarwin) ch4backend;
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/mpich/jsonc-test.patch b/nixpkgs/pkgs/development/libraries/mpich/jsonc-test.patch
deleted file mode 100644
index 2f8d87b409b4..000000000000
--- a/nixpkgs/pkgs/development/libraries/mpich/jsonc-test.patch
+++ /dev/null
@@ -1,62 +0,0 @@
---- b/modules/json-c/configure.ac
-+++ a/modules/json-c/configure.ac
-@@ -75,7 +75,7 @@
- AC_FUNC_VPRINTF
- AC_FUNC_MEMCMP
- AC_CHECK_FUNCS([realloc])
-+AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open strncasecmp setlocale)
--AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf open strncasecmp setlocale)
- AC_CHECK_DECLS([INFINITY], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
---- b/modules/json-c/json_pointer.c
-+++ a/modules/json-c/json_pointer.c
-@@ -208,7 +208,7 @@
- 	}
-
- 	va_start(args, path_fmt);
-+	rc = vasprintf(&path_copy, path_fmt, args);
--	rc = json_vasprintf(&path_copy, path_fmt, args);
- 	va_end(args);
-
- 	if (rc < 0)
-@@ -287,7 +287,7 @@
-
- 	/* pass a working copy to the recursive call */
- 	va_start(args, path_fmt);
-+	rc = vasprintf(&path_copy, path_fmt, args);
--	rc = json_vasprintf(&path_copy, path_fmt, args);
- 	va_end(args);
-
- 	if (rc < 0)
---- b/modules/json-c/printbuf.c
-+++ a/modules/json-c/printbuf.c
-@@ -129,7 +129,7 @@
-      would have been written - this code handles both cases. */
-   if(size == -1 || size > 127) {
-     va_start(ap, msg);
-+    if((size = vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; }
--    if((size = json_vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; }
-     va_end(ap);
-     printbuf_memappend(p, t, size);
-     free(t);
---- b/modules/json-c/vasprintf_compat.h
-+++ a/modules/json-c/vasprintf_compat.h
-@@ -8,8 +8,9 @@
-
- #include "snprintf_compat.h"
-
-+#if !defined(HAVE_VASPRINTF)
- /* CAW: compliant version of vasprintf */
-+static int vasprintf(char **buf, const char *fmt, va_list ap)
--static int json_vasprintf(char **buf, const char *fmt, va_list ap)
- {
- #ifndef WIN32
- 	static char _T_emptybuffer = '\0';
-@@ -40,5 +41,6 @@
-
- 	return chars;
- }
-+#endif /* !HAVE_VASPRINTF */
-
- #endif /* __vasprintf_compat_h */
diff --git a/nixpkgs/pkgs/development/libraries/mpir/default.nix b/nixpkgs/pkgs/development/libraries/mpir/default.nix
index 5e68ad80fc2e..36505b4a6670 100644
--- a/nixpkgs/pkgs/development/libraries/mpir/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mpir/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "1fvmhrqdjs925hzr2i8bszm50h00gwsh17p2kn2pi51zrxck9xjj";
   };
 
-  configureFlags = [ "--enable-cxx" "--enable-fat" ];
+  configureFlags = [ "--enable-cxx" ]
+    ++ lib.optionals stdenv.isLinux [ "--enable-fat" ];
 
   meta = {
     inherit version;
diff --git a/nixpkgs/pkgs/development/libraries/mutest/default.nix b/nixpkgs/pkgs/development/libraries/mutest/default.nix
index 9470b812586a..f2d3a5595530 100644
--- a/nixpkgs/pkgs/development/libraries/mutest/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mutest/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
     homepage = "https://ebassi.github.io/mutest/mutest.md.html";
     description = "A BDD testing framework for C, inspired by Mocha";
     license = licenses.mit;
-    maintainers = with maintainers; [ jtojnar worldofpeace ];
+    maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/mvapich/default.nix b/nixpkgs/pkgs/development/libraries/mvapich/default.nix
new file mode 100644
index 000000000000..704a28dbb8cd
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/mvapich/default.nix
@@ -0,0 +1,73 @@
+{ lib, stdenv, fetchurl, pkg-config, bison, numactl, libxml2
+, perl, gfortran, slurm, openssh, hwloc, zlib, makeWrapper
+# InfiniBand dependencies
+, opensm, rdma-core
+# OmniPath dependencies
+, libpsm2, libfabric
+# Compile with slurm as a process manager
+, useSlurm ? false
+# Network type for MVAPICH2
+, network ? "ethernet"
+} :
+
+assert builtins.elem network [ "ethernet" "infiniband" "omnipath" ];
+
+stdenv.mkDerivation rec {
+  pname = "mvapich";
+  version = "2.3.6";
+
+  src = fetchurl {
+    url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-${version}.tar.gz";
+    sha256 = "0jd28vy9ivl3rcpkxmhw73b6krzm0pd9jps8asw92wa00lm2z9mk";
+  };
+
+  nativeBuildInputs = [ pkg-config bison makeWrapper ];
+  propagatedBuildInputs = [ numactl rdma-core zlib opensm ];
+  buildInputs = with lib; [
+    numactl
+    libxml2
+    perl
+    gfortran
+    openssh
+    hwloc
+  ] ++ optionals (network == "infiniband") [ rdma-core opensm ]
+    ++ optionals (network == "omnipath") [ libpsm2 libfabric ]
+    ++ optional useSlurm slurm;
+
+  configureFlags = with lib; [
+    "--with-pm=hydra"
+    "--enable-fortran=all"
+    "--enable-cxx"
+    "--enable-threads=multiple"
+    "--enable-hybrid"
+    "--enable-shared"
+  ] ++ optional useSlurm "--with-pm=slurm"
+    ++ optional (network == "ethernet") "--with-device=ch3:sock"
+    ++ optionals (network == "infiniband") [ "--with-device=ch3:mrail" "--with-rdma=gen2" ]
+    ++ optionals (network == "omnipath") ["--with-device=ch3:psm" "--with-psm2=${libpsm2}"];
+
+  doCheck = true;
+
+  preFixup = ''
+    # /tmp/nix-build... ends up in the RPATH, fix it manually
+    for entry in $out/bin/mpichversion $out/bin/mpivars; do
+      echo "fix rpath: $entry"
+      patchelf --set-rpath "$out/lib" $entry
+    done
+
+    # Ensure the default compilers are the ones mvapich was built with
+    substituteInPlace $out/bin/mpicc --replace 'CC="gcc"' 'CC=${stdenv.cc}/bin/cc'
+    substituteInPlace $out/bin/mpicxx --replace 'CXX="g++"' 'CXX=${stdenv.cc}/bin/c++'
+    substituteInPlace $out/bin/mpifort --replace 'FC="gfortran"' 'FC=${gfortran}/bin/gfortran'
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    description = "MPI-3.1 implementation optimized for Infiband transport";
+    homepage = "https://mvapich.cse.ohio-state.edu";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.markuskowa ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/mygui/default.nix b/nixpkgs/pkgs/development/libraries/mygui/default.nix
index 8e63cb681203..740c1fec8834 100644
--- a/nixpkgs/pkgs/development/libraries/mygui/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mygui/default.nix
@@ -1,4 +1,4 @@
-{  lib, stdenv, fetchFromGitHub, libX11, unzip, cmake, ois, freetype, libuuid,
+{  lib, stdenv, fetchFromGitHub, libX11, cmake, ois, freetype, libuuid,
    boost, pkg-config, withOgre ? false, ogre ? null, libGL, libGLU ? null } :
 
 let
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
     sha256 = "0a4zi8w18pjj813n7kmxldl1d9r1jp0iyhkw7pbqgl8f7qaq994w";
   };
 
-  nativeBuildInputs = [ cmake pkg-config unzip ];
+  nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ libX11 ois freetype libuuid boost ]
     ++ (if withOgre then [ ogre ] else [ libGL libGLU ]);
 
diff --git a/nixpkgs/pkgs/development/libraries/netcdf-cxx4/default.nix b/nixpkgs/pkgs/development/libraries/netcdf-cxx4/default.nix
index b594a672140f..494f4bf71575 100644
--- a/nixpkgs/pkgs/development/libraries/netcdf-cxx4/default.nix
+++ b/nixpkgs/pkgs/development/libraries/netcdf-cxx4/default.nix
@@ -1,15 +1,22 @@
-{ lib, stdenv, fetchurl, netcdf, hdf5, curl }:
+{ lib, stdenv, fetchzip, netcdf, hdf5, curl, cmake, ninja }:
 stdenv.mkDerivation rec {
   pname = "netcdf-cxx4";
-  version = "4.3.0";
+  version = "4.3.1";
 
-  src = fetchurl {
+  src = fetchzip {
     url = "https://github.com/Unidata/netcdf-cxx4/archive/v${version}.tar.gz";
-    sha256 = "13zi8cbk18gggx1c12a580wdsbl714lw68a1wg7c86x0sybirni5";
+    sha256 = "05kydd5z9iil5iv4fp7l11cicda5n5lsg5sdmsmc55xpspnsg7hr";
   };
 
+  preConfigure = ''
+    cmakeFlags+="-Dabs_top_srcdir=$(readlink -f ./)"
+  '';
+
+  nativeBuildInputs = [ cmake ninja ];
   buildInputs = [ netcdf hdf5 curl ];
+
   doCheck = true;
+  enableParallelChecking = false;
 
   meta = {
     description = "C++ API to manipulate netcdf files";
diff --git a/nixpkgs/pkgs/development/libraries/nss/3.44.nix b/nixpkgs/pkgs/development/libraries/nss/3.44.nix
deleted file mode 100644
index b08b8b3ed2a7..000000000000
--- a/nixpkgs/pkgs/development/libraries/nss/3.44.nix
+++ /dev/null
@@ -1,144 +0,0 @@
-{ lib, stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages }:
-
-let
-  nssPEM = fetchurl {
-    url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz";
-    sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw";
-  };
-  version = "3.44.4";
-  underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
-
-in stdenv.mkDerivation rec {
-  pname = "nss";
-  inherit version;
-
-  src = fetchurl {
-    url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
-    sha256 = "7ec1a52e20fd9a23e1907eeba8f4f2ecd619dac5d20fa023ec5b4faa1843e847";
-  };
-
-  depsBuildBuild = [ buildPackages.stdenv.cc ];
-
-  nativeBuildInputs = [ perl ]
-    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-
-  buildInputs = [ zlib sqlite ];
-
-  propagatedBuildInputs = [ nspr ];
-
-  prePatch = ''
-    xz -d < ${nssPEM} | patch -p1
-  '';
-
-  patches =
-    [
-      # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
-      ./85_security_load-3.44.patch
-      ./ckpem.patch
-    ];
-
-  patchFlags = [ "-p0" ];
-
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
-  '';
-
-  outputs = [ "out" "dev" "tools" ];
-
-  preConfigure = "cd nss";
-
-  makeFlags = let
-    # NSS's build systems expects aarch32 to be called arm; if we pass in armv6l/armv7l, it
-    # fails with a linker error
-    cpu = if stdenv.hostPlatform.isAarch32 then "arm" else stdenv.hostPlatform.parsed.cpu.name;
-  in [
-    "NSPR_INCLUDE_DIR=${nspr.dev}/include"
-    "NSPR_LIB_DIR=${nspr.out}/lib"
-    "NSDISTMODE=copy"
-    "BUILD_OPT=1"
-    "SOURCE_PREFIX=\$(out)"
-    "NSS_ENABLE_ECC=1"
-    "USE_SYSTEM_ZLIB=1"
-    "NSS_USE_SYSTEM_SQLITE=1"
-    "NATIVE_CC=${buildPackages.stdenv.cc}/bin/cc"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    # Pass in CPU even if we're not cross compiling, because otherwise it tries to guess with
-    # uname, which can be wrong if e.g. we're compiling for aarch32 on aarch64
-    "OS_TEST=${cpu}"
-    "CPU_ARCH=${cpu}"
-  ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
-    "CROSS_COMPILE=1"
-    "NSS_DISABLE_GTESTS=1" # don't want to build tests when cross-compiling
-  ] ++ lib.optional stdenv.is64bit "USE_64=1"
-    ++ lib.optional stdenv.isDarwin "CCC=clang++";
-
-  NIX_CFLAGS_COMPILE = "-Wno-error";
-
-  # TODO(@oxij): investigate this: `make -n check` works but `make
-  # check` fails with "no rule", same for "installcheck".
-  doCheck = false;
-  doInstallCheck = false;
-
-  postInstall = ''
-    rm -rf $out/private
-    mv $out/public $out/include
-    mv $out/*.OBJ/* $out/
-    rmdir $out/*.OBJ
-
-    ln -s lib $out/lib64
-
-    # Upstream issue: https://bugzilla.mozilla.org/show_bug.cgi?id=530672
-    # https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/nss/files/nss-3.32-gentoo-fixups.patch?id=af1acce6c6d2c3adb17689261dfe2c2b6771ab8a
-    NSS_MAJOR_VERSION=`grep "NSS_VMAJOR" lib/nss/nss.h | awk '{print $3}'`
-    NSS_MINOR_VERSION=`grep "NSS_VMINOR" lib/nss/nss.h | awk '{print $3}'`
-    NSS_PATCH_VERSION=`grep "NSS_VPATCH" lib/nss/nss.h | awk '{print $3}'`
-    PREFIX="$out"
-
-    mkdir -p $out/lib/pkgconfig
-    sed -e "s,%prefix%,$PREFIX," \
-        -e "s,%exec_prefix%,$PREFIX," \
-        -e "s,%libdir%,$PREFIX/lib64," \
-        -e "s,%includedir%,$dev/include/nss," \
-        -e "s,%NSS_VERSION%,$NSS_MAJOR_VERSION.$NSS_MINOR_VERSION.$NSS_PATCH_VERSION,g" \
-        -e "s,%NSPR_VERSION%,4.16,g" \
-        pkg/pkg-config/nss.pc.in > $out/lib/pkgconfig/nss.pc
-    chmod 0644 $out/lib/pkgconfig/nss.pc
-
-    sed -e "s,@prefix@,$PREFIX," \
-        -e "s,@MOD_MAJOR_VERSION@,$NSS_MAJOR_VERSION," \
-        -e "s,@MOD_MINOR_VERSION@,$NSS_MINOR_VERSION," \
-        -e "s,@MOD_PATCH_VERSION@,$NSS_PATCH_VERSION," \
-        pkg/pkg-config/nss-config.in > $out/bin/nss-config
-    chmod 0755 $out/bin/nss-config
-  '';
-
-  postFixup = let
-    isCross = stdenv.hostPlatform != stdenv.buildPlatform;
-    nss = if isCross then buildPackages.nss.tools else "$out";
-  in ''
-    for libname in freebl3 nssdbm3 softokn3
-    do '' +
-    (if stdenv.isDarwin
-     then ''
-       libfile="$out/lib/lib$libname.dylib"
-       DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
-     '' else ''
-       libfile="$out/lib/lib$libname.so"
-       LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
-     '') + ''
-        ${nss}/bin/shlibsign -v -i "$libfile"
-    done
-
-    moveToOutput bin "$tools"
-    moveToOutput bin/nss-config "$dev"
-    moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
-    rm -f "$out"/lib/*.a
-  '';
-
-  meta = with lib; {
-    homepage = "https://developer.mozilla.org/en-US/docs/NSS";
-    description = "A set of libraries for development of security-enabled client and server applications";
-    license = licenses.mpl20;
-    platforms = platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/nss/85_security_load-3.44.patch b/nixpkgs/pkgs/development/libraries/nss/85_security_load-3.44.patch
deleted file mode 100644
index 132d5a96b29f..000000000000
--- a/nixpkgs/pkgs/development/libraries/nss/85_security_load-3.44.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c
---- nss/cmd/shlibsign/shlibsign.c	2017-01-04 15:24:24.000000000 +0100
-+++ nss/cmd/shlibsign/shlibsign.c	2017-01-24 14:43:31.030420852 +0100
-@@ -875,6 +875,8 @@
-         goto cleanup;
-     }
-     lib = PR_LoadLibrary(libname);
-+    if (!lib)
-+        lib = PR_LoadLibrary(NIX_NSS_LIBDIR"libsoftokn3.so");
-     assert(lib != NULL);
-     if (!lib) {
-         PR_fprintf(PR_STDERR, "loading softokn3 failed");
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/coreconf/config.mk nss/coreconf/config.mk
---- nss/coreconf/config.mk	2017-01-04 15:24:24.000000000 +0100
-+++ nss/coreconf/config.mk	2017-01-24 14:43:47.989432372 +0100
-@@ -202,3 +202,6 @@
- 
- # Hide old, deprecated, TLS cipher suite names when building NSS
- DEFINES += -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES
-+
-+# Nix specific stuff.
-+DEFINES += -DNIX_NSS_LIBDIR=\"$(out)/lib/\"
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c
---- nss/lib/pk11wrap/pk11load.c	2017-01-04 15:24:24.000000000 +0100
-+++ nss/lib/pk11wrap/pk11load.c	2017-01-24 14:45:06.883485652 +0100
-@@ -440,6 +440,13 @@
-          * unload the library if anything goes wrong from here on out...
-          */
-         library = PR_LoadLibrary(mod->dllName);
-+        if ((library == NULL) &&
-+            !rindex(mod->dllName, PR_GetDirectorySeparator())) {
-+            library = PORT_LoadLibraryFromOrigin(my_shlib_name,
-+                (PRFuncPtr) &softoken_LoadDSO,
-+                mod->dllName);
-+        }
-+
-         mod->library = (void *)library;
- 
-         if (library == NULL) {
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secload.c
---- nss/lib/util/secload.c	2017-01-04 15:24:24.000000000 +0100
-+++ nss/lib/util/secload.c	2017-01-24 14:43:31.030420852 +0100
-@@ -70,9 +70,14 @@
- 
-     /* Remove the trailing filename from referencePath and add the new one */
-     c = strrchr(referencePath, PR_GetDirectorySeparator());
-+    if (!c) { /* referencePath doesn't contain a / means that dladdr gave us argv[0]
-+               * and program was called from $PATH. Hack to get libs from NIX_NSS_LIBDIR */
-+        referencePath = NIX_NSS_LIBDIR;
-+        c = (char*) &referencePath[sizeof(NIX_NSS_LIBDIR) - 1]; /* last / */
-+    }
-     if (c) {
-         size_t referencePathSize = 1 + c - referencePath;
--        fullName = (char*)PORT_Alloc(strlen(name) + referencePathSize + 1);
-+        fullName = (char*) PORT_Alloc(strlen(name) + referencePathSize + 5);
-         if (fullName) {
-             memcpy(fullName, referencePath, referencePathSize);
-             strcpy(fullName + referencePathSize, name);
-@@ -82,6 +87,11 @@
- #endif
-             libSpec.type = PR_LibSpec_Pathname;
-             libSpec.value.pathname = fullName;
-+            if ((referencePathSize >= 4) &&
-+                (strncmp(fullName + referencePathSize - 4, "bin", 3) == 0)) {
-+                memcpy(fullName + referencePathSize -4, "lib", 3);
-+            }
-+            strcpy(fullName + referencePathSize, name);
-             dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL
- #ifdef PR_LD_ALT_SEARCH_PATH
-                                                        /* allow library's dependencies to be found in the same directory
-@@ -89,6 +99,10 @@
-                                                        | PR_LD_ALT_SEARCH_PATH
- #endif
-                                           );
-+            if (! dlh) {
-+                strcpy(fullName + referencePathSize, name);
-+                dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL);
-+            }
-             PORT_Free(fullName);
-         }
-     }
diff --git a/nixpkgs/pkgs/development/libraries/nss/default.nix b/nixpkgs/pkgs/development/libraries/nss/default.nix
index e6e2190a1a60..962204268d7f 100644
--- a/nixpkgs/pkgs/development/libraries/nss/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nss/default.nix
@@ -18,7 +18,7 @@ let
   #       It will rebuild itself using the version of this package (NSS) and if
   #       an update is required do the required changes to the expression.
   #       Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert
-  version = "3.63";
+  version = "3.64";
   underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
 
 in stdenv.mkDerivation rec {
@@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
-    sha256 = "0892xbjcaw6g4rd2rs4qa37nbda248cjrgxa4faaw0licbpjyb8q";
+    sha256 = "09hivz4qf3dw7m21lshw34l0yncinwn4ax5w3rpkm71f2wkm85yk";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/nixpkgs/pkgs/development/libraries/nss_wrapper/default.nix b/nixpkgs/pkgs/development/libraries/nss_wrapper/default.nix
index 3cdeb93dc9b1..0e08083c4d82 100644
--- a/nixpkgs/pkgs/development/libraries/nss_wrapper/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nss_wrapper/default.nix
@@ -14,6 +14,7 @@ stdenv.mkDerivation rec {
     description = "A wrapper for the user, group and hosts NSS API";
     homepage = "https://git.samba.org/?p=nss_wrapper.git;a=summary;";
     license = licenses.bsd3;
-    platforms = platforms.all;
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/nv-codec-headers/10_x.nix b/nixpkgs/pkgs/development/libraries/nv-codec-headers/10_x.nix
new file mode 100644
index 000000000000..b1fe1611301f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/nv-codec-headers/10_x.nix
@@ -0,0 +1,22 @@
+{ lib, stdenv, fetchgit }:
+
+stdenv.mkDerivation rec {
+  pname = "nv-codec-headers";
+  version = "10.0.26.2";
+
+  src = fetchgit {
+    url = "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git";
+    rev = "n${version}";
+    sha256 = "0n5jlwjfv5irx1if1g0n52m279bw7ab6bd3jz2v4vwg9cdzbxx85";
+  };
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = {
+    description = "FFmpeg version of headers for NVENC";
+    homepage = "https://ffmpeg.org/";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.MP2E ];
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/octomap/default.nix b/nixpkgs/pkgs/development/libraries/octomap/default.nix
new file mode 100644
index 000000000000..e35a0df79f08
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/octomap/default.nix
@@ -0,0 +1,24 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "octomap";
+  version = "1.9.7";
+
+  src = fetchFromGitHub {
+    owner = "OctoMap";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1pb58w6vka7wzs533lcy7i6y5nwjfrzy6b35fhrb1dhq2mgszc79";
+  };
+  sourceRoot = "source/octomap";
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    description = "A probabilistic, flexible, and compact 3D mapping library for robotic systems";
+    homepage = "https://octomap.github.io/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lopsided98 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/ogre/default.nix b/nixpkgs/pkgs/development/libraries/ogre/default.nix
index ae65da3f418b..d097dc623e76 100644
--- a/nixpkgs/pkgs/development/libraries/ogre/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ogre/default.nix
@@ -6,6 +6,7 @@
 , libXxf86vm, libICE
 , unzip
 , libXrender
+, SDL2
 , withNvidiaCg ? false, nvidia_cg_toolkit
 , withSamples ? false }:
 
@@ -18,7 +19,7 @@ stdenv.mkDerivation rec {
      sha256 = "1iv6k0dwdzg5nnzw2mcgcl663q4f7p2kj7nhs8afnsikrzxxgsi4";
   };
 
-  cmakeFlags = [ "-DOGRE_BUILD_SAMPLES=${toString withSamples}" ]
+  cmakeFlags = [ "-DOGRE_BUILD_DEPENDENCIES=OFF" "-DOGRE_BUILD_SAMPLES=${toString withSamples}" ]
     ++ map (x: "-DOGRE_BUILD_PLUGIN_${x}=on")
            ([ "BSP" "OCTREE" "PCZ" "PFX" ] ++ lib.optional withNvidiaCg "CG")
     ++ map (x: "-DOGRE_BUILD_RENDERSYSTEM_${x}=on") [ "GL" ];
@@ -32,6 +33,7 @@ stdenv.mkDerivation rec {
      libX11 libXmu libSM
      libXxf86vm libICE
      libXrender
+     SDL2
    ] ++ lib.optional withNvidiaCg nvidia_cg_toolkit;
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/openal-soft/default.nix b/nixpkgs/pkgs/development/libraries/openal-soft/default.nix
index 43c781cf52ce..2d469a406dec 100644
--- a/nixpkgs/pkgs/development/libraries/openal-soft/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openal-soft/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchFromGitHub, cmake
-, alsaSupport ? !stdenv.isDarwin, alsaLib ? null
+, alsaSupport ? !stdenv.isDarwin, alsa-lib ? null
 , pulseSupport ? !stdenv.isDarwin, libpulseaudio ? null
 , CoreServices, AudioUnit, AudioToolbox
 }:
 
 with lib;
 
-assert alsaSupport -> alsaLib != null;
+assert alsaSupport -> alsa-lib != null;
 assert pulseSupport -> libpulseaudio != null;
 
 stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = []
-    ++ optional alsaSupport alsaLib
+    ++ optional alsaSupport alsa-lib
     ++ optional pulseSupport libpulseaudio
     ++ optionals stdenv.isDarwin [ CoreServices AudioUnit AudioToolbox ];
 
diff --git a/nixpkgs/pkgs/development/libraries/openbsm/default.nix b/nixpkgs/pkgs/development/libraries/openbsm/default.nix
index 269b0138091b..4719b7fb7470 100644
--- a/nixpkgs/pkgs/development/libraries/openbsm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openbsm/default.nix
@@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
 
   patches = lib.optional stdenv.isDarwin [ ./bsm-add-audit_token_to_pid.patch ];
 
+  preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '';
+
   configureFlags = [ "ac_cv_file__usr_include_mach_audit_triggers_defs=no" ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/opencl-clang/default.nix b/nixpkgs/pkgs/development/libraries/opencl-clang/default.nix
index 8bbde9796d9a..48c681973d16 100644
--- a/nixpkgs/pkgs/development/libraries/opencl-clang/default.nix
+++ b/nixpkgs/pkgs/development/libraries/opencl-clang/default.nix
@@ -32,7 +32,9 @@ let
 
   passthru = rec {
 
-    clang-unwrapped = addPatches "clang" llvmPkgs.clang-unwrapped;
+    libclang = addPatches "clang" llvmPkgs.libclang;
+
+    clang-unwrapped = libclang.out;
 
     clang = llvmPkgs.clang.override {
       cc = clang-unwrapped;
@@ -53,7 +55,7 @@ let
 
   library = let
     inherit (llvmPkgs) llvm;
-    inherit (if buildWithPatches then passthru else llvmPkgs) clang-unwrapped spirv-llvm-translator;
+    inherit (if buildWithPatches then passthru else llvmPkgs) libclang spirv-llvm-translator;
   in
     stdenv.mkDerivation rec {
       pname = "opencl-clang";
@@ -74,13 +76,20 @@ let
         ./opencl-headers-dir.patch
       ];
 
-      nativeBuildInputs = [ cmake git ];
+      # Uses linker flags that are not supported on Darwin.
+      postPatch = lib.optionalString stdenv.isDarwin ''
+        sed -i -e '/SET_LINUX_EXPORTS_FILE/d' CMakeLists.txt
+        substituteInPlace CMakeLists.txt \
+          --replace '-Wl,--no-undefined' ""
+      '';
+
+      nativeBuildInputs = [ cmake git llvm.dev ];
 
-      buildInputs = [ clang-unwrapped llvm spirv-llvm-translator ];
+      buildInputs = [ libclang llvm spirv-llvm-translator ];
 
       cmakeFlags = [
         "-DPREFERRED_LLVM_VERSION=${getVersion llvm}"
-        "-DOPENCL_HEADERS_DIR=${clang-unwrapped}/lib/clang/${getVersion clang-unwrapped}/include/"
+        "-DOPENCL_HEADERS_DIR=${libclang.lib}/lib/clang/${getVersion libclang}/include/"
 
         "-DLLVMSPIRV_INCLUDED_IN_LLVM=OFF"
         "-DSPIRV_TRANSLATOR_DIR=${spirv-llvm-translator}"
diff --git a/nixpkgs/pkgs/development/libraries/opencv/3.x.nix b/nixpkgs/pkgs/development/libraries/opencv/3.x.nix
index a65e978f9816..33b1cd187571 100644
--- a/nixpkgs/pkgs/development/libraries/opencv/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/opencv/3.x.nix
@@ -22,7 +22,7 @@
 , enableGtk2      ? false, gtk2
 , enableGtk3      ? false, gtk3
 , enableVtk       ? false, vtk
-, enableFfmpeg    ? false, ffmpeg_3
+, enableFfmpeg    ? false, ffmpeg
 , enableGStreamer ? false, gst_all_1
 , enableTesseract ? false, tesseract, leptonica
 , enableTbb       ? false, tbb
@@ -188,7 +188,7 @@ stdenv.mkDerivation {
     ++ lib.optional enableTIFF libtiff
     ++ lib.optional enableWebP libwebp
     ++ lib.optionals enableEXR [ openexr ilmbase ]
-    ++ lib.optional enableFfmpeg ffmpeg_3
+    ++ lib.optional enableFfmpeg ffmpeg
     ++ lib.optionals (enableFfmpeg && stdenv.isDarwin)
                      [ VideoDecodeAcceleration bzip2 ]
     ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
diff --git a/nixpkgs/pkgs/development/libraries/opencv/4.x.nix b/nixpkgs/pkgs/development/libraries/opencv/4.x.nix
index 15c8d46b6131..58609a9186d6 100644
--- a/nixpkgs/pkgs/development/libraries/opencv/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/opencv/4.x.nix
@@ -45,7 +45,7 @@
 , enableVtk ? false
 , vtk
 , enableFfmpeg ? true
-, ffmpeg_3
+, ffmpeg
 , enableGStreamer ? true
 , gst_all_1
 , enableTesseract ? false
@@ -252,7 +252,7 @@ stdenv.mkDerivation {
     ++ lib.optional enableTIFF libtiff
     ++ lib.optional enableWebP libwebp
     ++ lib.optionals enableEXR [ openexr ilmbase ]
-    ++ lib.optional enableFfmpeg ffmpeg_3
+    ++ lib.optional enableFfmpeg ffmpeg
     ++ lib.optionals (enableFfmpeg && stdenv.isDarwin)
       [ VideoDecodeAcceleration bzip2 ]
     ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
diff --git a/nixpkgs/pkgs/development/libraries/opencv/default.nix b/nixpkgs/pkgs/development/libraries/opencv/default.nix
index 2575f6bb45d5..005257780e40 100644
--- a/nixpkgs/pkgs/development/libraries/opencv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/opencv/default.nix
@@ -6,7 +6,7 @@
 , enablePNG ? true, libpng
 , enableTIFF ? true, libtiff
 , enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
-, enableFfmpeg ? false, ffmpeg_3
+, enableFfmpeg ? false, ffmpeg
 , enableGStreamer ? false, gst_all_1
 , enableEigen ? true, eigen
 , Cocoa, QTKit
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional enablePNG libpng
     ++ lib.optional enableTIFF libtiff
     ++ lib.optionals enableEXR [ openexr ilmbase ]
-    ++ lib.optional enableFfmpeg ffmpeg_3
+    ++ lib.optional enableFfmpeg ffmpeg
     ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
     ++ lib.optional enableEigen eigen
     ++ lib.optionals stdenv.isDarwin [ Cocoa QTKit ]
diff --git a/nixpkgs/pkgs/development/libraries/openexr/default.nix b/nixpkgs/pkgs/development/libraries/openexr/default.nix
index 4e04de30d654..dc8004d8f481 100644
--- a/nixpkgs/pkgs/development/libraries/openexr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openexr/default.nix
@@ -1,6 +1,5 @@
 { lib
 , stdenv
-, buildPackages
 , fetchFromGitHub
 , zlib
 , ilmbase
diff --git a/nixpkgs/pkgs/development/libraries/openexrid-unstable/default.nix b/nixpkgs/pkgs/development/libraries/openexrid-unstable/default.nix
index 1e3ee9896447..47b2f6395478 100644
--- a/nixpkgs/pkgs/development/libraries/openexrid-unstable/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openexrid-unstable/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, unzip, re2, openfx, zlib, ilmbase, libGLU, libGL, openexr }:
+{ lib, stdenv, fetchFromGitHub, re2, openfx, zlib, ilmbase, libGLU, libGL, openexr }:
 
 stdenv.mkDerivation {
   pname = "openexrid-unstable";
@@ -25,7 +25,6 @@ stdenv.mkDerivation {
                        -I${openfx.dev}/include/OpenFX
                       '';
 
-  nativeBuildInputs = [ unzip ];
   buildInputs = [ re2 openfx zlib ilmbase libGLU libGL openexr ];
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/openfx/default.nix b/nixpkgs/pkgs/development/libraries/openfx/default.nix
index a26e97798aef..201bf16ad647 100644
--- a/nixpkgs/pkgs/development/libraries/openfx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openfx/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, unzip }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
   pname = "openfx";
@@ -11,8 +11,6 @@ stdenv.mkDerivation {
     sha256 = "0k9ggzr6bisn77mipjfvawg3mv4bz50b63v8f7w1jhldi1sfy548";
   };
 
-  nativeBuildInputs = [ unzip ];
-
   outputs = [ "dev" "out" ];
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/openimagedenoise/default.nix b/nixpkgs/pkgs/development/libraries/openimagedenoise/default.nix
index 61ffdcbb5cac..6547c321db70 100644
--- a/nixpkgs/pkgs/development/libraries/openimagedenoise/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openimagedenoise/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "openimagedenoise";
-  version = "1.3.0";
+  version = "1.4.0";
 
   # 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-ls0F2D5pC+wqhQn1Zh8m8Q/KoK7rAkhKatTY9k+letQ=";
+    sha256 = "sha256-UsiZT3ufRVo1BQ/md/A3CXpUfMPrJR1DhZg9hrjOG2A=";
   };
 
   nativeBuildInputs = [ cmake python3 ispc ];
@@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = [ maintainers.leshainc ];
     platforms = platforms.unix;
+    changelog = "https://github.com/OpenImageDenoise/oidn/blob/v${version}/CHANGELOG.md";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/openldap/default.nix b/nixpkgs/pkgs/development/libraries/openldap/default.nix
index 39831a3baf08..f9e2b3c0b3fc 100644
--- a/nixpkgs/pkgs/development/libraries/openldap/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openldap/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, openssl, db, groff, libtool
+{ lib, stdenv, fetchurl, openssl, db, groff, libtool, libsodium
 , withCyrusSasl ? true
 , cyrus_sasl
 }:
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ groff ];
 
-  buildInputs = [ openssl cyrus_sasl db libtool ];
+  buildInputs = [ openssl cyrus_sasl db libsodium libtool ];
 
   # Disable install stripping as it breaks cross-compiling.
   # We strip binaries anyway in fixupPhase.
@@ -30,6 +30,10 @@ stdenv.mkDerivation rec {
     "CC=${stdenv.cc.targetPrefix}cc"
   ];
 
+  preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '';
+
   configureFlags = [
     "--enable-overlays"
     "--disable-dependency-tracking"   # speeds up one-time build
@@ -46,6 +50,7 @@ stdenv.mkDerivation rec {
   postBuild = ''
     make $makeFlags CC=$CC -C contrib/slapd-modules/passwd/sha2
     make $makeFlags CC=$CC -C contrib/slapd-modules/passwd/pbkdf2
+    make $makeFlags CC=$CC -C contrib/slapd-modules/passwd/argon2
   '';
 
   doCheck = false; # needs a running LDAP server
@@ -54,6 +59,9 @@ stdenv.mkDerivation rec {
     "sysconfdir=$(out)/etc"
     "localstatedir=$(out)/var"
     "moduledir=$(out)/lib/modules"
+    # The argon2 module hardcodes /usr/bin/install as the path for the
+    # `install` binary, which is overridden here.
+    "INSTALL=install"
   ];
 
   # 1. Libraries left in the build location confuse `patchelf --shrink-rpath`
@@ -76,6 +84,7 @@ stdenv.mkDerivation rec {
   postInstall = ''
     make $installFlags install -C contrib/slapd-modules/passwd/sha2
     make $installFlags install -C contrib/slapd-modules/passwd/pbkdf2
+    make $installFlags install-lib -C contrib/slapd-modules/passwd/argon2
     chmod +x "$out"/lib/*.{so,dylib}
   '';
 
diff --git a/nixpkgs/pkgs/development/libraries/openmpi/default.nix b/nixpkgs/pkgs/development/libraries/openmpi/default.nix
index 46b2748cad98..2df08426368d 100644
--- a/nixpkgs/pkgs/development/libraries/openmpi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openmpi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, gfortran, perl, libnl
+{ lib, stdenv, fetchurl, gfortran, perl, libnl
 , rdma-core, zlib, numactl, libevent, hwloc, targetPackages, symlinkJoin
 , libpsm2, libfabric, pmix, ucx
 
@@ -18,7 +18,7 @@
 assert !cudaSupport || cudatoolkit != null;
 
 let
-  version = "4.1.0";
+  version = "4.1.1";
 
   cudatoolkit_joined = symlinkJoin {
     name = "${cudatoolkit.name}-unsplit";
@@ -30,7 +30,7 @@ in stdenv.mkDerivation rec {
 
   src = with lib.versions; fetchurl {
     url = "https://www.open-mpi.org/software/ompi/v${major version}.${minor version}/downloads/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-c4Zvt3CQgZtqjIXLhTljjTfWh3RVglt04onWR6Of1bU=";
+    sha256 = "1nkwq123vvmggcay48snm9qqmrh0bdzpln0l1jnp26niidvplkz2";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/openscenegraph/default.nix b/nixpkgs/pkgs/development/libraries/openscenegraph/default.nix
index da7e9c755a03..6b446882ba13 100644
--- a/nixpkgs/pkgs/development/libraries/openscenegraph/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openscenegraph/default.nix
@@ -11,7 +11,7 @@
   curlSupport ? true, curl,
   colladaSupport ? false, opencollada,
   opencascadeSupport ? false, opencascade,
-  ffmpegSupport ? false, ffmpeg_3,
+  ffmpegSupport ? false, ffmpeg,
   nvttSupport ? false, nvidia-texture-tools,
   freetypeSupport ? true, freetype,
   svgSupport ? false, librsvg,
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional curlSupport curl
     ++ lib.optional colladaSupport opencollada
     ++ lib.optional opencascadeSupport opencascade
-    ++ lib.optional ffmpegSupport ffmpeg_3
+    ++ lib.optional ffmpegSupport ffmpeg
     ++ lib.optional nvttSupport nvidia-texture-tools
     ++ lib.optional freetypeSupport freetype
     ++ lib.optional svgSupport librsvg
diff --git a/nixpkgs/pkgs/development/libraries/openslide/default.nix b/nixpkgs/pkgs/development/libraries/openslide/default.nix
new file mode 100644
index 000000000000..71c2017f9e5a
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/openslide/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, autoreconfHook
+, pkg-config, cairo, glib, gdk-pixbuf, libjpeg
+, libpng, libtiff, libxml2, openjpeg, sqlite, zlib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openslide";
+  version = "3.4.1";
+
+  src = fetchFromGitHub {
+    owner = "openslide";
+    repo = "openslide";
+    rev = "v${version}";
+    sha256 = "1g4hhjr4cbx754cwi9wl84k33bkg232w8ajic7aqhzm8x182hszp";
+  };
+
+  buildInputs = [ cairo glib gdk-pixbuf libjpeg libpng libtiff libxml2 openjpeg sqlite zlib ];
+
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
+
+  meta = with lib; {
+    homepage = "https://openslide.org";
+    description = "A C library that provides a simple interface to read whole-slide images.";
+    license = licenses.lgpl21;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ lromor ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/openssl/default.nix b/nixpkgs/pkgs/development/libraries/openssl/default.nix
index f6d45f66b1af..2a586f9e9efc 100644
--- a/nixpkgs/pkgs/development/libraries/openssl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openssl/default.nix
@@ -6,7 +6,7 @@
 # Used to avoid cross compiling perl, for example, in darwin bootstrap tools.
 # This will cause c_rehash to refer to perl via the environment, but otherwise
 # will produce a perfectly functional openssl binary and library.
-, withPerl ? true
+, withPerl ? stdenv.hostPlatform == stdenv.buildPlatform
 }:
 
 assert (
@@ -42,8 +42,10 @@ let
         substituteInPlace "$a" \
           --replace /bin/rm rm
       done
-    '' + optionalString (versionAtLeast version "1.1.1") ''
-      substituteInPlace config --replace '/usr/bin/env' '${coreutils}/bin/env'
+    ''
+    # config is a configure script which is not installed.
+    + optionalString (versionAtLeast version "1.1.1") ''
+      substituteInPlace config --replace '/usr/bin/env' '${buildPackages.coreutils}/bin/env'
     '' + optionalString (versionAtLeast version "1.1.0" && stdenv.hostPlatform.isMusl) ''
       substituteInPlace crypto/async/arch/async_posix.h \
         --replace '!defined(__ANDROID__) && !defined(__OpenBSD__)' \
@@ -67,6 +69,7 @@ let
         armv6l-linux = "./Configure linux-armv4 -march=armv6";
         armv7l-linux = "./Configure linux-armv4 -march=armv7-a";
         x86_64-darwin  = "./Configure darwin64-x86_64-cc";
+        aarch64-darwin = "./Configure darwin64-arm64-cc";
         x86_64-linux = "./Configure linux-x86_64";
         x86_64-solaris = "./Configure solaris64-x86_64-gcc";
       }.${stdenv.hostPlatform.system} or (
@@ -123,8 +126,6 @@ let
       if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib $out/lib/*.dll)" ]; then
           rm "$out/lib/"*.a
       fi
-
-      mkdir -p $bin
     '' + lib.optionalString (!stdenv.hostPlatform.isWindows)
       # Fix bin/c_rehash's perl interpreter line
       #
@@ -138,9 +139,9 @@ let
       # "#!/usr/bin/env perl"
     ''
       substituteInPlace $out/bin/c_rehash --replace ${buildPackages.perl}/bin/perl "/usr/bin/env perl"
-    '' +
-    ''
-      mv $out/bin $bin/
+    '' + ''
+      mkdir -p $bin
+      mv $out/bin $bin/bin
 
       mkdir $dev
       mv $out/include $dev/
diff --git a/nixpkgs/pkgs/development/libraries/openvdb/default.nix b/nixpkgs/pkgs/development/libraries/openvdb/default.nix
index b5317ce9aae8..655d664d8fa6 100644
--- a/nixpkgs/pkgs/development/libraries/openvdb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openvdb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, unzip, openexr, boost, jemalloc, c-blosc, ilmbase, tbb }:
+{ lib, stdenv, fetchFromGitHub, openexr, boost, jemalloc, c-blosc, ilmbase, tbb }:
 
 stdenv.mkDerivation rec
 {
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec
 
   outputs = [ "out" ];
 
-  nativeBuildInputs = [ unzip ];
   buildInputs = [ openexr boost tbb jemalloc c-blosc ilmbase ];
 
   setSourceRoot = ''
diff --git a/nixpkgs/pkgs/development/libraries/openvino/default.nix b/nixpkgs/pkgs/development/libraries/openvino/default.nix
index a083c06a334f..b4e487887999 100644
--- a/nixpkgs/pkgs/development/libraries/openvino/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openvino/default.nix
@@ -83,13 +83,13 @@ stdenv.mkDerivation rec {
     cmake
     autoPatchelfHook
     addOpenGLRunpath
+    unzip
   ];
 
   buildInputs = [
     git
     protobuf
     opencv
-    unzip
     python
     tbb
     shellcheck
diff --git a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
index c6efc901e8ae..df7ce6fd4b13 100644
--- a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
+++ b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
@@ -123,7 +123,7 @@ in stdenv.mkDerivation {
     '';
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    maintainers = with maintainers; [ pesterhazy flokli ];
+    maintainers = with maintainers; [ flokli ];
     hydraPlatforms = [];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/osm-gps-map/default.nix b/nixpkgs/pkgs/development/libraries/osm-gps-map/default.nix
index 9ba581e3a401..79bc2421dc99 100644
--- a/nixpkgs/pkgs/development/libraries/osm-gps-map/default.nix
+++ b/nixpkgs/pkgs/development/libraries/osm-gps-map/default.nix
@@ -1,4 +1,4 @@
-{ cairo, fetchzip, glib, gnome3, gtk3, gobject-introspection, pkg-config, lib, stdenv }:
+{ cairo, fetchzip, glib, gnome, gtk3, gobject-introspection, pkg-config, lib, stdenv }:
 
 stdenv.mkDerivation rec {
   pname = "osm-gps-map";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     cairo glib gobject-introspection
-    gnome3.gnome-common gtk3 gnome3.libsoup
+    gnome.gnome-common gtk3 gnome.libsoup
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/pango/default.nix b/nixpkgs/pkgs/development/libraries/pango/default.nix
index 0369cedebf4c..f4dba00d3518 100644
--- a/nixpkgs/pkgs/development/libraries/pango/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pango/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchurl
-, fetchpatch
 , pkg-config
 , cairo
 , harfbuzz
@@ -10,7 +9,7 @@
 , gobject-introspection
 , darwin
 , fribidi
-, gnome3
+, gnome
 , gi-docgen
 , makeFontsConf
 , freefont_ttf
@@ -22,23 +21,15 @@
 
 stdenv.mkDerivation rec {
   pname = "pango";
-  version = "1.48.3";
+  version = "1.48.4";
 
   outputs = [ "bin" "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0ijbkcs6217ygzphlpi0vajxkccifdbsl0jdjpy8wz11h9f19sin";
+    sha256 = "0ym3cvajy2asapj8xbhfpy05rak79afrhi32hiss0w900vxi72a1";
   };
 
-  patches = [
-    # Install developer documentation.
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/pango/commit/a2f35860115e8cd44f07d5158e2df059e8163a08.patch";
-      sha256 = "hN7O4DBk4A+TmBl6DGx6RHni5qRBg6akdjv9o3iWKDQ=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson ninja
     glib # for glib-mkenum
@@ -88,8 +79,9 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/pangolin/default.nix b/nixpkgs/pkgs/development/libraries/pangolin/default.nix
index 0e5d705a1ce6..331284021e3b 100644
--- a/nixpkgs/pkgs/development/libraries/pangolin/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pangolin/default.nix
@@ -1,18 +1,18 @@
 { stdenv, lib, fetchFromGitHub, cmake, pkg-config, doxygen, libGL, glew
-, xorg , ffmpeg_3, python3 , libjpeg, libpng, libtiff, eigen
+, xorg, ffmpeg, libjpeg, libpng, libtiff, eigen
 , Carbon ? null, Cocoa ? null
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "pangolin";
 
-  version = "2017-08-02";
+  version = "0.6";
 
   src = fetchFromGitHub {
     owner = "stevenlovegrove";
     repo = "Pangolin";
-    rev = "f05a8cdc4f0e32cc1664a430f1f85e60e233c407";
-    sha256 = "0pfbaarlsw7f7cmsppm7m13nz0k530wwwyczy2l9k448p3v7x9j0";
+    rev = "v${version}";
+    sha256 = "0abjajxj7lc2yajshimar4w8kf8115prsjnhy83s6jc7cbz63wj8";
   };
 
   nativeBuildInputs = [ cmake pkg-config doxygen ];
@@ -21,8 +21,7 @@ stdenv.mkDerivation {
     libGL
     glew
     xorg.libX11
-    ffmpeg_3
-    python3
+    ffmpeg
     libjpeg
     libpng
     libtiff
diff --git a/nixpkgs/pkgs/development/libraries/pangomm/2.48.nix b/nixpkgs/pkgs/development/libraries/pangomm/2.48.nix
new file mode 100644
index 000000000000..3c25d113d727
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/pangomm/2.48.nix
@@ -0,0 +1,65 @@
+{ stdenv
+, lib
+, fetchurl
+, pkg-config
+, meson
+, ninja
+, python3
+, pango
+, glibmm_2_68
+, cairomm_1_16
+, gnome
+, ApplicationServices
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pangomm";
+  version= "2.48.0";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "sha256-ng7UdMM/jCACyp4rYcoNHz2OQJ4J6Z9NjBnur8z1W3g=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    python3
+  ] ++ lib.optional stdenv.isDarwin [
+    ApplicationServices
+  ];
+
+  propagatedBuildInputs = [
+    pango
+    glibmm_2_68
+    cairomm_1_16
+  ];
+
+  doCheck = true;
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "${pname}_2_48";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "C++ interface to the Pango text rendering library";
+    longDescription = ''
+      Pango is a library for laying out and rendering of text, with an
+      emphasis on internationalization.  Pango can be used anywhere
+      that text layout is needed, though most of the work on Pango so
+      far has been done in the context of the GTK widget toolkit.
+      Pango forms the core of text and font handling for GTK.
+    '';
+    homepage = "https://www.pango.org/";
+    license = licenses.lgpl21Plus;
+    maintainers = teams.gnome.members ++ (with maintainers; [ lovek323 raskin ]);
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/pangomm/default.nix b/nixpkgs/pkgs/development/libraries/pangomm/default.nix
index 3eb5f39c3825..afb79c7eafed 100644
--- a/nixpkgs/pkgs/development/libraries/pangomm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pangomm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, meson, ninja, python3, pango, glibmm, cairomm, gnome3
+{ lib, stdenv, fetchurl, pkg-config, meson, ninja, python3, pango, glibmm, cairomm, gnome
 , ApplicationServices }:
 
 stdenv.mkDerivation rec {
@@ -20,8 +20,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/pc-ble-driver/default.nix b/nixpkgs/pkgs/development/libraries/pc-ble-driver/default.nix
index 1777b0856f80..5f09860cb3a4 100644
--- a/nixpkgs/pkgs/development/libraries/pc-ble-driver/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pc-ble-driver/default.nix
@@ -1,14 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, git, cmake, catch2, asio, udev, IOKit }:
+{ lib, stdenv, fetchFromGitHub
+, cmake, git
+, asio, catch2, spdlog
+, IOKit, udev
+}:
 
 stdenv.mkDerivation rec {
   pname = "pc-ble-driver";
-  version = "4.1.1";
+  version = "4.1.4";
 
   src = fetchFromGitHub {
     owner = "NordicSemiconductor";
     repo = "pc-ble-driver";
     rev = "v${version}";
-    sha256 = "1llhkpbdbsq9d91m873vc96bprkgpb5wsm5fgs1qhzdikdhg077q";
+    sha256 = "1609x17sbfi668jfwyvnfk9z29w6cgzvgv67xcpvpx5jv0czpcdj";
   };
 
   cmakeFlags = [
@@ -16,7 +20,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ cmake git ];
-  buildInputs = [ catch2 asio ];
+  buildInputs = [ asio catch2 spdlog ];
 
   propagatedBuildInputs = [
 
diff --git a/nixpkgs/pkgs/development/libraries/pcaudiolib/default.nix b/nixpkgs/pkgs/development/libraries/pcaudiolib/default.nix
index ebdacdfc9bdb..2c7dd440da82 100644
--- a/nixpkgs/pkgs/development/libraries/pcaudiolib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pcaudiolib/default.nix
@@ -1,6 +1,6 @@
 { config, stdenv, lib, fetchFromGitHub
 , autoconf, automake, which, libtool, pkg-config
-, portaudio, alsaLib
+, portaudio, alsa-lib
 , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoconf automake which libtool pkg-config ];
 
   buildInputs = [ portaudio ]
-    ++ lib.optionals stdenv.isLinux [ alsaLib ]
+    ++ lib.optionals stdenv.isLinux [ alsa-lib ]
     ++ lib.optionals pulseaudioSupport [ libpulseaudio ];
 
   preConfigure = "./autogen.sh";
diff --git a/nixpkgs/pkgs/development/libraries/pcl/default.nix b/nixpkgs/pkgs/development/libraries/pcl/default.nix
index b8cdff1f48c8..2b2763b5a05d 100644
--- a/nixpkgs/pkgs/development/libraries/pcl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pcl/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , wrapQtAppsHook
 , cmake
 , qhull
@@ -30,6 +31,15 @@ stdenv.mkDerivation rec {
     sha256 = "1cli2rxqsk6nxp36p5mgvvahjz8hm4fb68yi8cf9nw4ygbcvcwb1";
   };
 
+  patches = [
+    # Support newer QHull versions (2020.2)
+    # Backport of https://github.com/PointCloudLibrary/pcl/pull/4540
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/conda-forge/pcl-feedstock/0b1eff402994a3fb891b44659c261e7e85c8d915/recipe/4540.patch";
+      sha256 = "0hhvw6ajigzrarn95aicni73zd3sdgnb8rc3wgjrrg19xs84z138";
+    })
+  ];
+
   nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook ];
   buildInputs = [
     qhull
diff --git a/nixpkgs/pkgs/development/libraries/pcmsolver/default.nix b/nixpkgs/pkgs/development/libraries/pcmsolver/default.nix
new file mode 100644
index 000000000000..8cd4b318cc5a
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/pcmsolver/default.nix
@@ -0,0 +1,43 @@
+{ lib, stdenv, fetchFromGitHub, cmake, perl, gfortran, python
+, boost, eigen, zlib
+} :
+
+stdenv.mkDerivation rec {
+  pname = "pcmsolver";
+  version = "1.3.0";
+
+  src = fetchFromGitHub  {
+    owner = "PCMSolver";
+    repo = pname;
+    rev = "v${version}";
+    sha256= "0jrxr8z21hjy7ik999hna9rdqy221kbkl3qkb06xw7g80rc9x9yr";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    gfortran
+    perl
+    python
+  ];
+
+  buildInputs = [
+    boost
+    eigen
+    zlib
+  ];
+
+  cmakeFlags = [ "-DENABLE_OPENMP=ON" ];
+
+  hardeningDisable = [ "format" ];
+
+  # Requires files, that are not installed.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "An API for the Polarizable Continuum Model";
+    homepage = "https://pcmsolver.readthedocs.io/en/stable/";
+    license = licenses.lgpl3Only;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/pcre/default.nix b/nixpkgs/pkgs/development/libraries/pcre/default.nix
index 8d9b9ec02599..c91d4e2bd0c2 100644
--- a/nixpkgs/pkgs/development/libraries/pcre/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pcre/default.nix
@@ -23,7 +23,8 @@ in stdenv.mkDerivation {
 
   outputs = [ "bin" "dev" "out" "doc" "man" ];
 
-  configureFlags = optional (!stdenv.hostPlatform.isRiscV) "--enable-jit" ++ [
+  # Disable jit on Apple Silicon, https://github.com/zherczeg/sljit/issues/51
+  configureFlags = optional (!stdenv.hostPlatform.isRiscV && !(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)) "--enable-jit" ++ [
     "--enable-unicode-properties"
     "--disable-cpp"
   ]
diff --git a/nixpkgs/pkgs/development/libraries/pcre2/default.nix b/nixpkgs/pkgs/development/libraries/pcre2/default.nix
index 6bf6cff98bbe..188fa9b16b7e 100644
--- a/nixpkgs/pkgs/development/libraries/pcre2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pcre2/default.nix
@@ -8,10 +8,11 @@ stdenv.mkDerivation rec {
     sha256 = "0p3699msps07p40g9426lvxa3b41rg7k2fn7qxl2jm0kh4kkkvx9";
   };
 
+  # Disable jit on Apple Silicon, https://github.com/zherczeg/sljit/issues/51
   configureFlags = [
     "--enable-pcre2-16"
     "--enable-pcre2-32"
-  ] ++ lib.optional (!stdenv.hostPlatform.isRiscV) "--enable-jit";
+  ] ++ lib.optional (!stdenv.hostPlatform.isRiscV && !(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)) "--enable-jit";
 
   outputs = [ "bin" "dev" "out" "doc" "man" "devdoc" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/physfs/default.nix b/nixpkgs/pkgs/development/libraries/physfs/default.nix
index 3eb4077d9852..faa338c94fcf 100644
--- a/nixpkgs/pkgs/development/libraries/physfs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physfs/default.nix
@@ -1,5 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, doxygen, darwin
-, zlib }:
+{ lib, stdenv, fetchurl, cmake, doxygen, zlib, Foundation, Carbon }:
 
 let
   generic = version: sha256:
@@ -15,7 +14,7 @@ let
     nativeBuildInputs = [ cmake doxygen ];
 
     buildInputs = [ zlib ]
-      ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Foundation ];
+      ++ lib.optionals stdenv.isDarwin [ Foundation Carbon ];
 
     patchPhase = ''
       sed s,-Werror,, -i CMakeLists.txt
diff --git a/nixpkgs/pkgs/development/libraries/physics/apfel/default.nix b/nixpkgs/pkgs/development/libraries/physics/apfel/default.nix
index e3fd0a26a7fd..b0fff0c92ba5 100644
--- a/nixpkgs/pkgs/development/libraries/physics/apfel/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/apfel/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "apfel";
-  version = "3.0.4";
+  version = "3.0.5";
 
   src = fetchFromGitHub {
     owner = "scarrazza";
     repo = "apfel";
     rev = version;
-    sha256 = "13n5ygbqvskg3qq5n4sff1nbii0li0zf1vqissai7x0hynxgy7p6";
+    sha256 = "sha256-szEtSC/NouYlHSjVoX9Hoh7yQ0W82rVccYEF1L2tXoU=";
   };
 
   buildInputs = [ gfortran lhapdf python2 zlib ];
diff --git a/nixpkgs/pkgs/development/libraries/physics/fastnlo/default.nix b/nixpkgs/pkgs/development/libraries/physics/fastnlo_toolkit/default.nix
index 87e2ae9631c5..d6cbe7cc4dd0 100644
--- a/nixpkgs/pkgs/development/libraries/physics/fastnlo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/fastnlo_toolkit/default.nix
@@ -1,38 +1,44 @@
 { lib
 , stdenv
 , fetchurl
+, autoreconfHook
 , boost
-, fastjet
 , gfortran
 , lhapdf
-, python2
-, root
+, ncurses
+, python
+, swig
 , yoda
 , zlib
+, withPython ? false
 }:
 
 stdenv.mkDerivation rec {
   pname = "fastnlo_toolkit";
-  version = "2.3.1pre-2402";
+  version = "2.3.1pre-2411";
 
   src = fetchurl {
-    url = "https://fastnlo.hepforge.org/code/v23/${pname}-${version}.tar.gz";
-    sha256 = "1h41xnqcz401x3zbs8i2dsb4xlhbv8i5ps0561p6y7gcyridgcbl";
+    urls = [
+      "https://fastnlo.hepforge.org/code/v23/${pname}-${version}.tar.gz"
+      "https://sid.ethz.ch/debian/fastnlo/${pname}-${version}.tar.gz"
+    ];
+    sha256 = "0fm9k732pmi3prbicj2yaq815nmcjll95fagjqzf542ng3swpqnb";
   };
 
+  nativeBuildInputs = lib.optional withPython autoreconfHook;
+
   buildInputs = [
     boost
-    fastjet
     gfortran
     gfortran.cc.lib
     lhapdf
-    python2
-    root
     yoda
-  ];
+  ] ++ lib.optional withPython python
+    ++ lib.optional (withPython && python.isPy3k) ncurses;
+
   propagatedBuildInputs = [
     zlib
-  ];
+  ] ++ lib.optional withPython swig;
 
   preConfigure = ''
     substituteInPlace ./fastnlotoolkit/Makefile.in \
@@ -41,7 +47,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-yoda=${yoda}"
-  ];
+  ] ++ lib.optional withPython "--enable-pyext";
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/physics/lhapdf/default.nix b/nixpkgs/pkgs/development/libraries/physics/lhapdf/default.nix
index 19e9f9d9ec86..143f72541b4d 100644
--- a/nixpkgs/pkgs/development/libraries/physics/lhapdf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/lhapdf/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python2, makeWrapper }:
+{ lib, stdenv, fetchurl, python, makeWrapper }:
 
 stdenv.mkDerivation rec {
   pname = "lhapdf";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ python2 ];
+  buildInputs = [ python ];
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/physics/pythia/default.nix b/nixpkgs/pkgs/development/libraries/physics/pythia/default.nix
index 48fc95e788a5..8a58cd638b9d 100644
--- a/nixpkgs/pkgs/development/libraries/physics/pythia/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/pythia/default.nix
@@ -2,14 +2,15 @@
 
 stdenv.mkDerivation rec {
   pname = "pythia";
-  version = "8.304";
+  version = "8.305";
 
   src = fetchurl {
     url = "http://home.thep.lu.se/~torbjorn/pythia8/pythia${builtins.replaceStrings ["."] [""] version}.tgz";
-    sha256 = "18frx7xyvxnz57fxjncjyjzsk169h0jz6hxzjfpmwm3dzcc712fk";
+    sha256 = "03rpy2bmx67217fh1spfn36x9xrk0igcj56byki77lgj0y5mz21a";
   };
 
-  buildInputs = [ boost fastjet hepmc zlib rsync lhapdf ];
+  nativeBuildInputs = [ rsync ];
+  buildInputs = [ boost fastjet hepmc zlib lhapdf ];
 
   preConfigure = ''
     patchShebangs ./configure
@@ -26,11 +27,11 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  meta = {
+  meta = with lib; {
     description = "A program for the generation of high-energy physics events";
-    license     = lib.licenses.gpl2;
-    homepage    = "http://home.thep.lu.se/~torbjorn/Pythia.html";
-    platforms   = lib.platforms.unix;
-    maintainers = with lib.maintainers; [ veprbl ];
+    license = licenses.gpl2Only;
+    homepage = "http://home.thep.lu.se/~torbjorn/Pythia.html";
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ veprbl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix b/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
index 3b9057ad31a5..c5a83f782f46 100644
--- a/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python, root, makeWrapper, zlib, withRootSupport ? false }:
+{ lib, stdenv, fetchurl, fetchpatch, python, root, makeWrapper, zlib, withRootSupport ? false }:
 
 stdenv.mkDerivation rec {
   pname = "yoda";
@@ -9,6 +9,24 @@ stdenv.mkDerivation rec {
     sha256 = "1x7xi6w7lb92x8202kbaxgqg1sly534wana4f38l3gpbzw9dwmcs";
   };
 
+  patches = [
+    # fix a minor bug
+    # https://gitlab.com/hepcedar/yoda/-/merge_requests/38
+    (fetchpatch {
+      name = "yoda-fix-fuzzy-compare-bin2d.patch";
+      url = "https://gitlab.com/hepcedar/yoda/-/commit/a2999d78cb3d9ed874f367bad375dc39a1a11148.diff";
+      sha256 = "sha256-BsaVm+4VtCvRoEuN4r6A4bj9XwgMe75UesKzN+b56Qw=";
+    })
+    # fix a regression
+    # https://gitlab.com/hepcedar/yoda/-/merge_requests/40
+    (fetchpatch {
+      name = "yoda-fix-for-yodagz.patch";
+      url = "https://gitlab.com/hepcedar/yoda/-/commit/3338ba5a7466599ac6969e4ae462f133d6cf4fd8.diff";
+      sha256 = "sha256-MZTOIt468bdPCS7UVfr5hQZUsVy3TpY/TjRrNySIL70=";
+      excludes = [ "ChangeLog" ];
+    })
+  ];
+
   nativeBuildInputs = with python.pkgs; [ cython makeWrapper ];
   buildInputs = [ python ]
     ++ (with python.pkgs; [ numpy matplotlib ])
diff --git a/nixpkgs/pkgs/development/libraries/pico-sdk/default.nix b/nixpkgs/pkgs/development/libraries/pico-sdk/default.nix
new file mode 100644
index 000000000000..3db4ff336ffb
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/pico-sdk/default.nix
@@ -0,0 +1,35 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "pico-sdk";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "raspberrypi";
+    repo = pname;
+    rev = version;
+    sha256 = "00z160f7ypws5pzp1ql7xrs3gmjcbw6gywnnq2fiwl47940balns";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  # SDK contains libraries and build-system to develop projects for RP2040 chip
+  # We only need to compile pioasm binary
+  sourceRoot = "source/tools/pioasm";
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/lib/pico-sdk
+    cp -a ../../../* $out/lib/pico-sdk/
+    chmod 755 $out/lib/pico-sdk/tools/pioasm/build/pioasm
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/raspberrypi/picotool";
+    description = "SDK provides the headers, libraries and build system necessary to write programs for the RP2040-based devices";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ musfay ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0.2.nix b/nixpkgs/pkgs/development/libraries/pipewire/0.2.nix
index 1e686b980043..276ad6b8c492 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0.2.nix
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0.2.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, doxygen, graphviz, valgrind
-, glib, dbus, gst_all_1, alsaLib, ffmpeg_4, libjack2, udev, libva, xorg
+, glib, dbus, gst_all_1, alsa-lib, ffmpeg_4, libjack2, udev, libva, xorg
 , sbc, SDL2, makeFontsConf
 }:
 
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
   ];
   buildInputs = [
     glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer
-    alsaLib ffmpeg_4 libjack2 udev libva xorg.libX11 sbc SDL2
+    alsa-lib ffmpeg_4 libjack2 udev libva xorg.libX11 sbc SDL2
   ];
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0040-alsa-profiles-use-libdir.patch b/nixpkgs/pkgs/development/libraries/pipewire/0040-alsa-profiles-use-libdir.patch
index c657d12f7d0c..fab89c4ffd93 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0040-alsa-profiles-use-libdir.patch
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0040-alsa-profiles-use-libdir.patch
@@ -1,13 +1,13 @@
 diff --git a/meson.build b/meson.build
-index ffee41b4..f3e4ec74 100644
+index 99a4b2d1..d4a4cda7 100644
 --- a/meson.build
 +++ b/meson.build
-@@ -53,7 +53,7 @@ endif
+@@ -55,7 +55,7 @@ endif
  
- spa_plugindir = join_paths(pipewire_libdir, spa_name)
+ spa_plugindir = pipewire_libdir / spa_name
  
--alsadatadir = join_paths(pipewire_datadir, 'alsa-card-profile', 'mixer')
-+alsadatadir = join_paths(pipewire_libdir, '..', 'share', 'alsa-card-profile', 'mixer')
+-alsadatadir = pipewire_datadir / 'alsa-card-profile' / 'mixer'
++alsadatadir = pipewire_libdir / '..' / 'share' / 'alsa-card-profile' / 'mixer'
  
- pipewire_headers_dir = join_paths(pipewire_name, 'pipewire')
+ pipewire_headers_dir = pipewire_name / 'pipewire'
  
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0050-pipewire-pulse-path.patch b/nixpkgs/pkgs/development/libraries/pipewire/0050-pipewire-pulse-path.patch
index 4a6b21dd4312..fd7d031ee0fe 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0050-pipewire-pulse-path.patch
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0050-pipewire-pulse-path.patch
@@ -1,8 +1,8 @@
 diff --git a/meson_options.txt b/meson_options.txt
-index ce364d93..a6c8af72 100644
+index 66791f3a..93b5e2a9 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -152,6 +152,9 @@ option('udev',
+@@ -172,6 +172,9 @@ option('udev',
  option('udevrulesdir',
         type : 'string',
         description : 'Directory for udev rules (defaults to /lib/udev/rules.d)')
@@ -13,15 +13,15 @@ index ce364d93..a6c8af72 100644
         type : 'string',
         description : 'Directory for user systemd units (defaults to /usr/lib/systemd/user)')
 diff --git a/src/daemon/systemd/user/meson.build b/src/daemon/systemd/user/meson.build
-index 0a5e5042..4a70b0b0 100644
+index aa30a86f..1edebb2d 100644
 --- a/src/daemon/systemd/user/meson.build
 +++ b/src/daemon/systemd/user/meson.build
 @@ -9,7 +9,7 @@ install_data(
  
  systemd_config = configuration_data()
- systemd_config.set('PW_BINARY', join_paths(pipewire_bindir, 'pipewire'))
--systemd_config.set('PW_PULSE_BINARY', join_paths(pipewire_bindir, 'pipewire-pulse'))
-+systemd_config.set('PW_PULSE_BINARY', join_paths(get_option('pipewire_pulse_prefix'), 'bin/pipewire-pulse'))
- systemd_config.set('PW_MEDIA_SESSION_BINARY', join_paths(pipewire_bindir, 'pipewire-media-session'))
+ systemd_config.set('PW_BINARY', pipewire_bindir / 'pipewire')
+-systemd_config.set('PW_PULSE_BINARY', pipewire_bindir / 'pipewire-pulse')
++systemd_config.set('PW_PULSE_BINARY', get_option('pipewire_pulse_prefix') / 'bin/pipewire-pulse')
+ systemd_config.set('PW_MEDIA_SESSION_BINARY', pipewire_bindir / 'pipewire-media-session')
  
  configure_file(input : 'pipewire.service.in',
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0055-pipewire-media-session-path.patch b/nixpkgs/pkgs/development/libraries/pipewire/0055-pipewire-media-session-path.patch
index a4fb8b41e7a1..be6683c3e7b7 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0055-pipewire-media-session-path.patch
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0055-pipewire-media-session-path.patch
@@ -1,8 +1,8 @@
 diff --git a/meson_options.txt b/meson_options.txt
-index e2a1e028..310029f2 100644
+index 93b5e2a9..1b915ac3 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -10,6 +10,9 @@ option('media-session',
+@@ -13,6 +13,9 @@ option('media-session',
         description: 'Build and install pipewire-media-session',
         type: 'feature',
         value: 'auto')
@@ -13,15 +13,15 @@ index e2a1e028..310029f2 100644
         description: 'Build manpages',
         type: 'feature',
 diff --git a/src/daemon/systemd/user/meson.build b/src/daemon/systemd/user/meson.build
-index 5c4d1af0..7296220f 100644
+index 1edebb2d..251270eb 100644
 --- a/src/daemon/systemd/user/meson.build
 +++ b/src/daemon/systemd/user/meson.build
 @@ -10,7 +10,7 @@ install_data(
  systemd_config = configuration_data()
- systemd_config.set('PW_BINARY', join_paths(pipewire_bindir, 'pipewire'))
- systemd_config.set('PW_PULSE_BINARY', join_paths(get_option('pipewire_pulse_prefix'), 'bin/pipewire-pulse'))
--systemd_config.set('PW_MEDIA_SESSION_BINARY', join_paths(pipewire_bindir, 'pipewire-media-session'))
-+systemd_config.set('PW_MEDIA_SESSION_BINARY', join_paths(get_option('media-session-prefix'), 'bin/pipewire-media-session'))
-
+ systemd_config.set('PW_BINARY', pipewire_bindir / 'pipewire')
+ systemd_config.set('PW_PULSE_BINARY', get_option('pipewire_pulse_prefix') / 'bin/pipewire-pulse')
+-systemd_config.set('PW_MEDIA_SESSION_BINARY', pipewire_bindir / 'pipewire-media-session')
++systemd_config.set('PW_MEDIA_SESSION_BINARY', get_option('media-session-prefix') / 'bin/pipewire-media-session')
+ 
  configure_file(input : 'pipewire.service.in',
                 output : 'pipewire.service',
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0070-installed-tests-path.patch b/nixpkgs/pkgs/development/libraries/pipewire/0070-installed-tests-path.patch
index cb695fa398ca..926de3062546 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0070-installed-tests-path.patch
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0070-installed-tests-path.patch
@@ -1,23 +1,23 @@
 diff --git a/meson.build b/meson.build
-index 97d4d939..b17358e5 100644
+index d4a4cda7..a27569bd 100644
 --- a/meson.build
 +++ b/meson.build
 @@ -353,8 +353,8 @@ libinotify_dep = (build_machine.system() == 'freebsd'
-
+ 
  alsa_dep = dependency('alsa', version : '>=1.1.7', required: get_option('pipewire-alsa'))
-
--installed_tests_metadir = join_paths(pipewire_datadir, 'installed-tests', pipewire_name)
--installed_tests_execdir = join_paths(pipewire_libexecdir, 'installed-tests', pipewire_name)
-+installed_tests_metadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', pipewire_name)
-+installed_tests_execdir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', pipewire_name)
+ 
+-installed_tests_metadir = pipewire_datadir / 'installed-tests' / pipewire_name
+-installed_tests_execdir = pipewire_libexecdir / 'installed-tests' / pipewire_name
++installed_tests_metadir = get_option('installed_test_prefix') / 'share' / 'installed-tests' / pipewire_name
++installed_tests_execdir = get_option('installed_test_prefix') / 'libexec' / 'installed-tests' / pipewire_name
  installed_tests_enabled = not get_option('installed_tests').disabled()
  installed_tests_template = files('template.test.in')
-
+ 
 diff --git a/meson_options.txt b/meson_options.txt
-index fba0d647..8c6106cd 100644
+index 1b915ac3..85beb86a 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -26,6 +26,9 @@ option('installed_tests',
+@@ -29,6 +29,9 @@ option('installed_tests',
         description: 'Install manual and automated test executables',
         type: 'feature',
         value: 'disabled')
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/0080-pipewire-config-dir.patch b/nixpkgs/pkgs/development/libraries/pipewire/0080-pipewire-config-dir.patch
index ad1ae93684b1..b92e2818ea07 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/0080-pipewire-config-dir.patch
+++ b/nixpkgs/pkgs/development/libraries/pipewire/0080-pipewire-config-dir.patch
@@ -1,30 +1,30 @@
 diff --git a/meson.build b/meson.build
-index 0073eb13..0ffc6863 100644
+index a27569bd..fcf18344 100644
 --- a/meson.build
 +++ b/meson.build
-@@ -34,7 +34,10 @@ pipewire_libexecdir = join_paths(prefix, get_option('libexecdir'))
- pipewire_localedir = join_paths(prefix, get_option('localedir'))
- pipewire_sysconfdir = join_paths(prefix, get_option('sysconfdir'))
+@@ -36,7 +36,10 @@ pipewire_libexecdir = prefix / get_option('libexecdir')
+ pipewire_localedir = prefix / get_option('localedir')
+ pipewire_sysconfdir = prefix / get_option('sysconfdir')
  
--pipewire_configdir = join_paths(pipewire_sysconfdir, 'pipewire')
+-pipewire_configdir = pipewire_sysconfdir / 'pipewire'
 +pipewire_configdir = get_option('pipewire_config_dir')
 +if pipewire_configdir == ''
-+  pipewire_configdir = join_paths(pipewire_sysconfdir, 'pipewire')
++  pipewire_configdir = pipewire_sysconfdir / 'pipewire'
 +endif
- modules_install_dir = join_paths(pipewire_libdir, pipewire_name)
+ modules_install_dir = pipewire_libdir / pipewire_name
  
  if host_machine.system() == 'linux'
 diff --git a/meson_options.txt b/meson_options.txt
-index 4b9e46b8..8c301459 100644
+index 85beb86a..372e8faa 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -56,6 +56,9 @@ option('pipewire-pulseaudio',
- option('libpulse-path',
-        description: 'Where to install the libpulse.so library',
+@@ -67,6 +67,9 @@ option('jack-devel',
+ option('libjack-path',
+        description: 'Where to install the libjack.so library',
         type: 'string')
 +option('pipewire_config_dir',
 +       type : 'string',
 +       description : 'Directory for pipewire configuration (defaults to /etc/pipewire)')
  option('spa-plugins',
         description: 'Enable spa plugins integration',
-        type: 'boolean',
+        type: 'feature',
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/default.nix b/nixpkgs/pkgs/development/libraries/pipewire/default.nix
index 47a85c36c23a..40f4e328c317 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pipewire/default.nix
@@ -11,7 +11,7 @@
 , valgrind
 , glib
 , dbus
-, alsaLib
+, alsa-lib
 , libjack2
 , udev
 , libva
@@ -42,7 +42,7 @@ let
 
   self = stdenv.mkDerivation rec {
     pname = "pipewire";
-    version = "0.3.25";
+    version = "0.3.27";
 
     outputs = [
       "out"
@@ -60,7 +60,7 @@ let
       owner = "pipewire";
       repo = "pipewire";
       rev = version;
-      hash = "sha256:EbXWcf6QLtbvm6/eXBI+PF2sTw2opYfmc+H/SMDEH1U=";
+      sha256 = "sha256-GfcMODQWtcahBvXnZ98/PKIm4pkqLaz09oOy7zQR4IA=";
     };
 
     patches = [
@@ -85,7 +85,7 @@ let
     ];
 
     buildInputs = [
-      alsaLib
+      alsa-lib
       dbus
       glib
       libjack2
@@ -146,29 +146,31 @@ let
       moveToOutput "bin/pipewire-pulse" "$pulse"
     '';
 
-    passthru.tests = {
-      installedTests = nixosTests.installed-tests.pipewire;
-
-      # This ensures that all the paths used by the NixOS module are found.
-      test-paths = callPackage ./test-paths.nix {
-        paths-out = [
-          "share/alsa/alsa.conf.d/50-pipewire.conf"
-          "nix-support/etc/pipewire/client.conf.json"
-          "nix-support/etc/pipewire/client-rt.conf.json"
-          "nix-support/etc/pipewire/jack.conf.json"
-          "nix-support/etc/pipewire/pipewire.conf.json"
-          "nix-support/etc/pipewire/pipewire-pulse.conf.json"
-        ];
-        paths-out-media-session = [
-          "nix-support/etc/pipewire/media-session.d/alsa-monitor.conf.json"
-          "nix-support/etc/pipewire/media-session.d/bluez-monitor.conf.json"
-          "nix-support/etc/pipewire/media-session.d/media-session.conf.json"
-          "nix-support/etc/pipewire/media-session.d/v4l2-monitor.conf.json"
-        ];
-        paths-lib = [
-          "lib/alsa-lib/libasound_module_pcm_pipewire.so"
-          "share/alsa-card-profile/mixer"
-        ];
+    passthru = {
+      updateScript = ./update.sh;
+      tests = {
+        installedTests = nixosTests.installed-tests.pipewire;
+
+        # This ensures that all the paths used by the NixOS module are found.
+        test-paths = callPackage ./test-paths.nix {
+          paths-out = [
+            "share/alsa/alsa.conf.d/50-pipewire.conf"
+            "nix-support/etc/pipewire/client.conf.json"
+            "nix-support/etc/pipewire/jack.conf.json"
+            "nix-support/etc/pipewire/pipewire.conf.json"
+            "nix-support/etc/pipewire/pipewire-pulse.conf.json"
+          ];
+          paths-out-media-session = [
+            "nix-support/etc/pipewire/media-session.d/alsa-monitor.conf.json"
+            "nix-support/etc/pipewire/media-session.d/bluez-monitor.conf.json"
+            "nix-support/etc/pipewire/media-session.d/media-session.conf.json"
+            "nix-support/etc/pipewire/media-session.d/v4l2-monitor.conf.json"
+          ];
+          paths-lib = [
+            "lib/alsa-lib/libasound_module_pcm_pipewire.so"
+            "share/alsa-card-profile/mixer"
+          ];
+        };
       };
     };
 
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/test-paths.nix b/nixpkgs/pkgs/development/libraries/pipewire/test-paths.nix
index 11d00e7c2ca1..939b79686e3f 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/test-paths.nix
+++ b/nixpkgs/pkgs/development/libraries/pipewire/test-paths.nix
@@ -1,4 +1,4 @@
-{ lib, runCommand, pipewire, paths-out, paths-lib }:
+{ lib, runCommand, pipewire, paths-out, paths-lib, paths-out-media-session }:
 
 let
   check-path = output: path: ''
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/update.sh b/nixpkgs/pkgs/development/libraries/pipewire/update.sh
new file mode 100755
index 000000000000..6d0088c206cb
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/pipewire/update.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -p nix-update -i bash
+# shellcheck shell=bash
+
+set -o errexit -o pipefail -o nounset -o errtrace
+shopt -s inherit_errexit
+shopt -s nullglob
+IFS=$'\n'
+
+NIXPKGS_ROOT="$(git rev-parse --show-toplevel)"
+
+cd "$NIXPKGS_ROOT"
+nix-update pipewire
+outputs=$(nix-build . -A pipewire -A pipewire.mediaSession)
+for p in $outputs; do
+    conf_files=$(find "$p/nix-support/etc/pipewire/" -name '*.conf.json')
+    for c in $conf_files; do
+        file_name=$(basename "$c")
+        if [[ ! -e "nixos/modules/services/desktops/pipewire/$file_name" ]]; then
+            echo "New file $file_name found! Add it to the module config and passthru tests!"
+        fi
+        install -m 0644 "$c" "nixos/modules/services/desktops/pipewire/"
+    done
+done
diff --git a/nixpkgs/pkgs/development/libraries/plasma-wayland-protocols/default.nix b/nixpkgs/pkgs/development/libraries/plasma-wayland-protocols/default.nix
index 2d3a5239d7b7..ea02eb428db1 100644
--- a/nixpkgs/pkgs/development/libraries/plasma-wayland-protocols/default.nix
+++ b/nixpkgs/pkgs/development/libraries/plasma-wayland-protocols/default.nix
@@ -5,11 +5,11 @@
 
 mkDerivation rec {
   pname = "plasma-wayland-protocols";
-  version = "1.1.1";
+  version = "1.2.1";
 
   src = fetchurl {
-    url = "mirror://kde/stable/${pname}/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-xUkzg9EVFxw0NeqaIbOWaGBjKoRFRP+sj1SJBDalHTg=";
+    url = "mirror://kde/stable/${pname}/${pname}-v${version}.tar.xz";
+    sha256 = "sha256-KHuQkD+afzlMdedcsYdCaGLq9kqS8b5+LvaOmf2Muqo=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/nixpkgs/pkgs/development/libraries/pmdk/default.nix b/nixpkgs/pkgs/development/libraries/pmdk/default.nix
index 01392f232d9c..6e0b6ab6722b 100644
--- a/nixpkgs/pkgs/development/libraries/pmdk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pmdk/default.nix
@@ -1,19 +1,19 @@
 { lib, stdenv, fetchFromGitHub
-, autoconf, libndctl, pkg-config
+, autoconf, libndctl, pkg-config, gnum4, pandoc
 }:
 
 stdenv.mkDerivation rec {
   pname = "pmdk";
-  version = "1.7";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner  = "pmem";
     repo   = "pmdk";
     rev    = "refs/tags/${version}";
-    sha256 = "1833sq0f1msaqwn31dn1fp37a6d5zp995i9gkazanydmppi2qy0i";
+    sha256 = "0awmkj6j9y2pbqqmp9ql00s7qa3mnpppa82dfy5324lindq0z8a1";
   };
 
-  nativeBuildInputs = [ autoconf pkg-config ];
+  nativeBuildInputs = [ autoconf pkg-config gnum4 pandoc ];
   buildInputs = [ libndctl ];
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/polkit/default.nix b/nixpkgs/pkgs/development/libraries/polkit/default.nix
index 7e8e95ef1eac..bc7f7e80d9c2 100644
--- a/nixpkgs/pkgs/development/libraries/polkit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/polkit/default.nix
@@ -34,6 +34,13 @@ stdenv.mkDerivation rec {
       url = "https://gitlab.freedesktop.org/polkit/polkit/commit/5dd4e22efd05d55833c4634b56e473812b5acbf2.patch";
       sha256 = "17lv7xj5ksa27iv4zpm4zwd4iy8zbwjj4ximslfq3sasiz9kxhlp";
     })
+    (fetchpatch {
+      # https://www.openwall.com/lists/oss-security/2021/06/03/1
+      # https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/79
+      name = "CVE-2021-3560.patch";
+      url = "https://gitlab.freedesktop.org/polkit/polkit/-/commit/a04d13affe0fa53ff618e07aa8f57f4c0e3b9b81.patch";
+      sha256 = "157ddsizgr290jsb8fpafrc37gc1qw5pdvl351vnn3pzhqs7n6f4";
+    })
   ] ++ lib.optionals stdenv.hostPlatform.isMusl [
     # Make netgroup support optional (musl does not have it)
     # Upstream MR: https://gitlab.freedesktop.org/polkit/polkit/merge_requests/10
@@ -116,6 +123,6 @@ stdenv.mkDerivation rec {
     description = "A toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes";
     license = licenses.gpl2;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = teams.freedesktop.members ++ (with maintainers; [ ]);
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/poppler/default.nix b/nixpkgs/pkgs/development/libraries/poppler/default.nix
index fd2a8ab92cfa..8a5c6e132a71 100644
--- a/nixpkgs/pkgs/development/libraries/poppler/default.nix
+++ b/nixpkgs/pkgs/development/libraries/poppler/default.nix
@@ -1,10 +1,30 @@
-{ stdenv, lib, fetchurl, fetchpatch, cmake, ninja, pkg-config, libiconv, libintl
-, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg
+{ stdenv
+, lib
+, fetchurl
+, fetchpatch
+, cmake
+, ninja
+, pkg-config
+, libiconv
+, libintl
+, zlib
+, curl
+, cairo
+, freetype
+, fontconfig
+, lcms
+, libjpeg
+, openjpeg
 , withData ? true, poppler_data
 , qt5Support ? false, qtbase ? null
 , introspectionSupport ? false, gobject-introspection ? null
 , utils ? false, nss ? null
-, minimal ? false, suffix ? "glib"
+, minimal ? false
+, suffix ? "glib"
+, inkscape
+, cups-filters
+, texlive
+, scribusUnstable
 }:
 
 let
@@ -12,33 +32,45 @@ let
 in
 stdenv.mkDerivation rec {
   name = "poppler-${suffix}-${version}";
-  version = "21.02.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
+  version = "21.05.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
+
+  outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "${meta.homepage}/poppler-${version}.tar.xz";
-    sha256 = "sha256-XBR1nJmJHm5HKs7W1fD/Haz4XYDNkCbTZcVcZT7feSw=";
+    sha256 = "sha256-2v1Te2gPrRIVvED8U9HzjoRJ18GFvGDVqJ4dJskNvYw=";
   };
 
-  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [
+    cmake
+    ninja
+    pkg-config
+  ];
 
-  buildInputs = [ libiconv libintl ] ++ lib.optional withData poppler_data;
+  buildInputs = [
+    libiconv
+    libintl
+  ] ++ lib.optional withData [
+    poppler_data
+  ];
 
   # TODO: reduce propagation to necessary libs
-  propagatedBuildInputs = with lib;
-    [ zlib freetype fontconfig libjpeg openjpeg ]
-    ++ optionals (!minimal) [ cairo lcms curl ]
-    ++ optional qt5Support qtbase
-    ++ optional utils nss
-    ++ optional introspectionSupport gobject-introspection;
-
-  nativeBuildInputs = [ cmake ninja pkg-config ];
-
-  # Workaround #54606
-  preConfigure = lib.optionalString stdenv.isDarwin ''
-    sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt
-  '';
-
-  dontWrapQtApps = true;
+  propagatedBuildInputs = [
+    zlib
+    freetype
+    fontconfig
+    libjpeg
+    openjpeg
+  ] ++ lib.optionals (!minimal) [
+    cairo
+    lcms
+    curl
+    nss
+  ] ++ lib.optionals qt5Support [
+    qtbase
+  ] ++ lib.optionals introspectionSupport [
+    gobject-introspection
+  ];
 
   cmakeFlags = [
     (mkFlag true "UNSTABLE_API_ABI_HEADERS") # previously "XPDF_HEADERS"
@@ -49,6 +81,20 @@ stdenv.mkDerivation rec {
     (mkFlag qt5Support "QT5")
   ];
 
+  dontWrapQtApps = true;
+
+  # Workaround #54606
+  preConfigure = lib.optionalString stdenv.isDarwin ''
+    sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt
+  '';
+
+  passthru = {
+    tests = {
+      # These depend on internal poppler code that frequently changes.
+      inherit inkscape cups-filters texlive scribusUnstable;
+    };
+  };
+
   meta = with lib; {
     homepage = "https://poppler.freedesktop.org/";
     description = "A PDF rendering library";
@@ -59,7 +105,7 @@ stdenv.mkDerivation rec {
       installed separately.
     '';
 
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ ttuegel ] ++ teams.freedesktop.members;
   };
diff --git a/nixpkgs/pkgs/development/libraries/portaudio/default.nix b/nixpkgs/pkgs/development/libraries/portaudio/default.nix
index c7de116e879b..efa68146e8d8 100644
--- a/nixpkgs/pkgs/development/libraries/portaudio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/portaudio/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, alsaLib, pkg-config, libjack2
+{ lib, stdenv, fetchurl, alsa-lib, pkg-config, libjack2
 , AudioUnit, AudioToolbox, CoreAudio, CoreServices, Carbon }:
 
 stdenv.mkDerivation {
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libjack2 ]
-    ++ lib.optional (!stdenv.isDarwin) alsaLib;
+    ++ lib.optional (!stdenv.isDarwin) alsa-lib;
 
   configureFlags = [ "--disable-mac-universal" "--enable-cxx" ];
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
     make install
   '' + lib.optionalString (!stdenv.isDarwin) ''
     # fixup .pc file to find alsa library
-    sed -i "s|-lasound|-L${alsaLib.out}/lib -lasound|" "$out/lib/pkgconfig/"*.pc
+    sed -i "s|-lasound|-L${alsa-lib.out}/lib -lasound|" "$out/lib/pkgconfig/"*.pc
   '' + lib.optionalString stdenv.isDarwin ''
     cp include/pa_mac_core.h $out/include/pa_mac_core.h
   '';
diff --git a/nixpkgs/pkgs/development/libraries/portmidi/default.nix b/nixpkgs/pkgs/development/libraries/portmidi/default.nix
index e9a868240bb3..0151d461c139 100644
--- a/nixpkgs/pkgs/development/libraries/portmidi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/portmidi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, unzip, cmake, /*jdk,*/ alsaLib }:
+{ lib, stdenv, fetchurl, unzip, cmake, /*jdk,*/ alsa-lib }:
 
 stdenv.mkDerivation rec {
   pname = "portmidi";
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ unzip cmake ];
-  buildInputs = [ alsaLib ];
+  buildInputs = [ alsa-lib ];
 
   hardeningDisable = [ "format" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/presage/default.nix b/nixpkgs/pkgs/development/libraries/presage/default.nix
new file mode 100644
index 000000000000..df15e73f73cf
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/presage/default.nix
@@ -0,0 +1,69 @@
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, autoreconfHook
+, dbus
+, doxygen
+, fontconfig
+, gettext
+, graphviz
+, help2man
+, pkg-config
+, sqlite
+, tinyxml
+, cppunit
+}:
+
+stdenv.mkDerivation rec {
+  pname = "presage";
+  version = "0.9.1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/presage/presage/${version}/presage-${version}.tar.gz";
+    sha256 = "0rm3b3zaf6bd7hia0lr1wyvi1rrvxkn7hg05r5r1saj0a3ingmay";
+  };
+
+  patches = [
+    (fetchpatch {
+      url = "https://git.alpinelinux.org/aports/plain/community/presage/gcc6.patch";
+      sha256 = "0243nx1ygggmsly7057vndb4pkjxg9rpay5gyqqrq9jjzjzh63dj";
+    })
+    ./fixed-cppunit-detection.patch
+  ];
+
+  nativeBuildInputs = [
+    autoreconfHook
+    doxygen
+    fontconfig
+    gettext
+    graphviz
+    help2man
+    pkg-config
+  ];
+
+  preBuild = ''
+    export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf
+  '';
+
+  buildInputs = [
+    dbus
+    sqlite
+    tinyxml
+  ];
+
+  checkInputs = [
+    cppunit
+  ];
+
+  doCheck = true;
+
+  checkTarget = "check";
+
+  meta = with lib; {
+    description = "An intelligent predictive text entry system";
+    homepage = "https://presage.sourceforge.io/";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/presage/fixed-cppunit-detection.patch b/nixpkgs/pkgs/development/libraries/presage/fixed-cppunit-detection.patch
new file mode 100644
index 000000000000..27238d2956d1
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/presage/fixed-cppunit-detection.patch
@@ -0,0 +1,46 @@
+From 5624aa156c551ab2b81bb86279844397ed690653 Mon Sep 17 00:00:00 2001
+From: Matteo Vescovi <matteo.vescovi@yahoo.co.uk>
+Date: Sun, 21 Jan 2018 17:17:12 +0000
+Subject: [PATCH] Fixed cppunit detection.
+
+---
+ configure.ac | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index a02e9f1..1538a51 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -204,10 +204,16 @@ AM_CONDITIONAL([USE_SQLITE], [test "x$use_sqlite" = "xyes"])
+ dnl ==================
+ dnl Checks for CppUnit
+ dnl ==================
+-AM_PATH_CPPUNIT([1.9.6],
+-                [],
+-                [AC_MSG_WARN([CppUnit not found. Unit tests will not be built. CppUnit can be obtained from http://cppunit.sourceforge.net.])])
+-AM_CONDITIONAL([HAVE_CPPUNIT], [test "$CPPUNIT_LIBS"])
++PKG_CHECK_MODULES([CPPUNIT],
++                  [cppunit >= 1.9],
++                  [have_cppunit=yes],
++                  [AM_PATH_CPPUNIT([1.9],
++                                   [have_cppunit=yes],
++                                   [AC_MSG_WARN([CppUnit not found. Unit tests will not be built. CppUnit can be obtained from http://cppunit.sourceforge.net.])])
++                  ])
++AC_SUBST([CPPUNIT_CFLAGS])
++AC_SUBST([CPPUNIT_LIBS])
++AM_CONDITIONAL([HAVE_CPPUNIT], [test "x$have_cppunit" = "xyes"])
+ 
+ 
+ dnl ============================
+@@ -592,7 +598,7 @@ then
+ else
+     build_demo_application="no"
+ fi
+-if test "$CPPUNIT_LIBS"
++if test "x$have_cppunit" = "xyes"
+ then
+     build_unit_tests="yes"
+ else
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/libraries/proj/default.nix b/nixpkgs/pkgs/development/libraries/proj/default.nix
index 92119a8788d7..3bbc4c6da33a 100644
--- a/nixpkgs/pkgs/development/libraries/proj/default.nix
+++ b/nixpkgs/pkgs/development/libraries/proj/default.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, sqlite, autoreconfHook, libtiff, curl }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, sqlite
+, libtiff
+, curl
+, gtest
+}:
 
 stdenv.mkDerivation rec {
   pname = "proj";
@@ -11,19 +20,34 @@ stdenv.mkDerivation rec {
     sha256 = "0mymvfvs8xggl4axvlj7kc1ksd9g94kaz6w1vdv0x2y5mqk93gx9";
   };
 
+  postPatch = lib.optionalString (version == "7.2.1") ''
+    substituteInPlace CMakeLists.txt \
+      --replace "MAJOR 7 MINOR 2 PATCH 0" "MAJOR 7 MINOR 2 PATCH 1"
+  '';
+
   outputs = [ "out" "dev"];
 
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
+  nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [ sqlite libtiff curl ];
 
+  checkInputs = [ gtest ];
+
+  cmakeFlags = [
+    "-DUSE_EXTERNAL_GTEST=ON"
+  ];
+
   doCheck = stdenv.is64bit;
 
+  preCheck = ''
+    export HOME=$TMPDIR
+  '';
+
   meta = with lib; {
     description = "Cartographic Projections Library";
     homepage = "https://proj4.org";
     license = licenses.mit;
-    platforms = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ vbgl ];
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ vbgl dotlambda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/3.15.nix b/nixpkgs/pkgs/development/libraries/protobuf/3.15.nix
index 661a552882e8..e4783be6a351 100644
--- a/nixpkgs/pkgs/development/libraries/protobuf/3.15.nix
+++ b/nixpkgs/pkgs/development/libraries/protobuf/3.15.nix
@@ -1,6 +1,6 @@
 { callPackage, ... }:
 
 callPackage ./generic-v3.nix {
-  version = "3.15.7";
-  sha256 = "03fx96rwxfbmr47f1nrflvaq5kk5p3a9wms4688nbnmymyghyml0";
+  version = "3.15.8";
+  sha256 = "1q3k8axhq6g8fqczmd6kbgzpdplrrgygppym4x1l99lzhplx9rqv";
 }
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/3.16.nix b/nixpkgs/pkgs/development/libraries/protobuf/3.16.nix
new file mode 100644
index 000000000000..df8d53b9f1c3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/protobuf/3.16.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... }:
+
+callPackage ./generic-v3.nix {
+  version = "3.16.0";
+  sha256 = "0jc523ys6xh1fk3l52f5mfqxhb4g8aim1js7330v0fdc3fjr8ncf";
+}
diff --git a/nixpkgs/pkgs/development/libraries/pslib/default.nix b/nixpkgs/pkgs/development/libraries/pslib/default.nix
index ec2362009ff3..b3439b7ee96f 100644
--- a/nixpkgs/pkgs/development/libraries/pslib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pslib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, pkg-config, zlib, libpng, libjpeg, libungif, libtiff
+{ lib, stdenv, fetchurl, cmake, pkg-config, zlib, libpng, libjpeg, giflib, libtiff
 }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ zlib libpng libjpeg libungif libtiff ];
+  buildInputs = [ zlib libpng libjpeg giflib libtiff ];
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/py3c/default.nix b/nixpkgs/pkgs/development/libraries/py3c/default.nix
new file mode 100644
index 000000000000..eec051f0cc1c
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/py3c/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, fetchFromGitHub, python2, python3 }:
+
+stdenv.mkDerivation rec {
+  pname = "py3c";
+  version = "1.3.1";
+
+  src = fetchFromGitHub {
+    owner = "encukou";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "04i2z7hrig78clc59q3i1z2hh24g7z1bfvxznlzxv00d4s57nhpi";
+  };
+
+  postPatch = lib.optionalString stdenv.cc.isClang ''
+    substituteInPlace test/setup.py \
+      --replace "'-Werror', " ""
+  '';
+
+  makeFlags = [
+    "prefix=${placeholder "out"}"
+  ];
+
+  doCheck = true;
+
+  checkInputs = [
+    python2
+    python3
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/encukou/py3c";
+    description = "Python 2/3 compatibility layer for C extensions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ajs124 dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/qca-qt5/default.nix b/nixpkgs/pkgs/development/libraries/qca-qt5/default.nix
index e53404557fba..f8159417378c 100644
--- a/nixpkgs/pkgs/development/libraries/qca-qt5/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qca-qt5/default.nix
@@ -14,10 +14,6 @@ stdenv.mkDerivation rec {
 
   dontWrapQtApps = true;
 
-  # Without this patch cmake fails with a "No known features for CXX compiler"
-  # error on darwin
-  patches = lib.optional stdenv.isDarwin ./move-project.patch ;
-
   # tells CMake to use this CA bundle file if it is accessible
   preConfigure = "export QC_CERTSTORE_PATH=/etc/ssl/certs/ca-certificates.crt";
 
diff --git a/nixpkgs/pkgs/development/libraries/qca-qt5/move-project.patch b/nixpkgs/pkgs/development/libraries/qca-qt5/move-project.patch
deleted file mode 100644
index dcecb83d7db9..000000000000
--- a/nixpkgs/pkgs/development/libraries/qca-qt5/move-project.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2f2b5d0..971dee3 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -6,10 +6,11 @@ if(NOT CMAKE_INSTALL_PREFIX)
-   unset(CMAKE_INSTALL_PREFIX CACHE)
- endif(NOT CMAKE_INSTALL_PREFIX)
- 
--project(qca)
- 
- cmake_minimum_required(VERSION 3.4)
- 
-+project(qca)
-+
- set(QCA_LIB_MAJOR_VERSION "2")
- set(QCA_LIB_MINOR_VERSION "2")
- set(QCA_LIB_PATCH_VERSION "1")
diff --git a/nixpkgs/pkgs/development/libraries/qgnomeplatform/default.nix b/nixpkgs/pkgs/development/libraries/qgnomeplatform/default.nix
index f739c1bc275e..e3bb938f5f8f 100644
--- a/nixpkgs/pkgs/development/libraries/qgnomeplatform/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qgnomeplatform/default.nix
@@ -62,7 +62,7 @@ mkDerivation rec {
     description = "QPlatformTheme for a better Qt application inclusion in GNOME";
     homepage = "https://github.com/FedoraQt/QGnomePlatform";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = teams.gnome.members ++ (with maintainers; [ ]);
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/qhull/default.nix b/nixpkgs/pkgs/development/libraries/qhull/default.nix
index 0a6f39e672cd..a7f1bc271155 100644
--- a/nixpkgs/pkgs/development/libraries/qhull/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qhull/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, cmake, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
   pname = "qhull";
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-djUO3qzY8ch29AuhY3Bn1ajxWZ4/W70icWVrxWRAxRc=";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ]
+    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
   meta = with lib; {
     homepage = "http://www.qhull.org/";
diff --git a/nixpkgs/pkgs/development/libraries/qscintilla/default.nix b/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
index 314bdabdb558..28c16e325350 100644
--- a/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
@@ -6,14 +6,14 @@
 
 let
   pname = "qscintilla-qt${if withQt5 then "5" else "4"}";
-  version = "2.11.5";
+  version = "2.11.6";
 
 in stdenv.mkDerivation rec {
   inherit pname version;
 
   src = fetchurl {
     url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla-${version}.tar.gz";
-    sha256 = "k2Hib9f7e1gZp+uSxcGIChjem9PtndLrAI5XOIaWcWs=";
+    sha256 = "5zRgV9tH0vs4RGf6/M/LE6oHQTc8XVk7xytVsvDdIKc=";
   };
 
   sourceRoot = "QScintilla-${version}/Qt4Qt5";
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix
index a4ac41d81df7..ed93d86a1979 100644
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix
@@ -3,7 +3,7 @@
 , libXfixes, libXrandr, libSM, freetype, fontconfig, zlib, libjpeg, libpng
 , libmng, which, libGLU, openssl, dbus, cups, pkg-config
 , libtiff, glib, icu, libmysqlclient, postgresql, sqlite, perl, coreutils, libXi
-, alsaLib
+, alsa-lib
 , libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
 , gtkStyle ? stdenv.hostPlatform == stdenv.buildPlatform, gtk2, gdk-pixbuf
 , gnomeStyle ? false, libgnomeui, GConf, gnome_vfs
@@ -204,7 +204,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional stdenv.isLinux "-std=gnu++98" # gnu++ in (Obj)C flags is no good on Darwin
     ++ lib.optionals (stdenv.isFreeBSD || stdenv.isDarwin)
       [ "-I${glib.dev}/include/glib-2.0" "-I${glib.out}/lib/glib-2.0/include" ]
-    ++ lib.optional stdenv.isDarwin "-I${libcxx}/include/c++/v1");
+    ++ lib.optional stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1");
 
   NIX_LDFLAGS = lib.optionalString (stdenv.isFreeBSD || stdenv.isDarwin) "-lglib-2.0";
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix b/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
index 63e893ea69ff..fcb6297f5191 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -98,6 +98,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch b/nixpkgs/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch
index d5d8e70b788f..506397bc6056 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch
@@ -1,6 +1,6 @@
-From 8bdbddc2e5fef1553b1ba0297d3c03b38e9b947b Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel <ttuegel@mailbox.org>
-Date: Wed, 18 Sep 2019 05:39:39 -0500
+From 9ffbcc5e362d17aea3e3d67e43cd3cd993e987eb Mon Sep 17 00:00:00 2001
+From: OPNA2608 <christoph.neidahl@gmail.com>
+Date: Mon, 12 Apr 2021 20:05:25 +0200
 Subject: [PATCH 03/12] qtbase-mkspecs
 
 ---
@@ -12,13 +12,13 @@ Subject: [PATCH 03/12] qtbase-mkspecs
  mkspecs/features/qt_build_paths.prf           |  4 +-
  mkspecs/features/qt_docs.prf                  | 10 +--
  mkspecs/features/qt_example_installs.prf      |  2 +-
- mkspecs/features/qt_functions.prf             |  2 +-
+ mkspecs/features/qt_functions.prf             | 27 ++++---
  mkspecs/features/qt_installs.prf              | 22 ++---
  mkspecs/features/qt_plugin.prf                |  2 +-
- 11 files changed, 39 insertions(+), 142 deletions(-)
+ 11 files changed, 53 insertions(+), 153 deletions(-)
 
 diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
-index 00da9bd33f..bd166fbfea 100644
+index 02e5775983..3782949d32 100644
 --- a/mkspecs/features/create_cmake.prf
 +++ b/mkspecs/features/create_cmake.prf
 @@ -21,7 +21,7 @@ load(cmake_functions)
@@ -96,7 +96,7 @@ index 00da9bd33f..bd166fbfea 100644
      INSTALLS += cmake_qt5_plugin_file
  
      return()
-@@ -333,7 +308,7 @@ exists($$cmake_macros_file.input) {
+@@ -334,7 +309,7 @@ exists($$cmake_macros_file.input) {
      cmake_qt5_module_files.files += $$cmake_macros_file.output
  }
  
@@ -370,18 +370,44 @@ index 43b58817fe..e635b8f67a 100644
  
  check_examples {
 diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
-index 1903e509c8..ae7b585989 100644
+index 1903e509c8..1dc117a388 100644
 --- a/mkspecs/features/qt_functions.prf
 +++ b/mkspecs/features/qt_functions.prf
-@@ -69,7 +69,7 @@ defineTest(qtHaveModule) {
+@@ -69,19 +69,22 @@ defineTest(qtHaveModule) {
  defineTest(qtPrepareTool) {
      cmd = $$eval(QT_TOOL.$${2}.binary)
      isEmpty(cmd) {
 -        cmd = $$[QT_HOST_BINS]/$$2
-+        cmd = $$system("command -v $$2")
-         exists($${cmd}.pl) {
-             $${1}_EXE = $${cmd}.pl
-             cmd = perl -w $$system_path($${cmd}.pl)
+-        exists($${cmd}.pl) {
+-            $${1}_EXE = $${cmd}.pl
+-            cmd = perl -w $$system_path($${cmd}.pl)
+-        } else: contains(QMAKE_HOST.os, Windows) {
+-            $${1}_EXE = $${cmd}.exe
+-            cmd = $$system_path($${cmd}.exe)
+-        } else:contains(QMAKE_HOST.os, Darwin) {
+-            BUNDLENAME = $${cmd}.app/Contents/MacOS/$$2
+-            exists($$BUNDLENAME) {
+-                cmd = $$BUNDLENAME
++        cmd = $$system("command -v $${2}")
++        isEmpty(cmd) {
++            cmd = $$system("command -v $${2}.pl")
++            !isEmpty(cmd) {
++                $${1}_EXE = $$cmd
++                cmd = perl -w $$system_path($${cmd})
++            } else: contains(QMAKE_HOST.os, Windows) {
++                cmd = $$system("command -v $${2}.exe")
++                $${1}_EXE = $$cmd
++            } else: contains(QMAKE_HOST.os, Darwin) {
++                cmd = $$system("command -v $${2}.app")
++                !isEmpty(cmd) {
++                    cmd = $${cmd}/Contents/MacOS/$${2}
++                    $${1}_EXE = $$cmd
++                }
+             }
+-            $${1}_EXE = $$cmd
+         } else {
+             $${1}_EXE = $$cmd
+         }
 diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
 index 1ebca17366..b784441da0 100644
 --- a/mkspecs/features/qt_installs.prf
@@ -461,5 +487,5 @@ index 40528a65e2..903f795284 100644
  
  TARGET = $$qt5LibraryTarget($$TARGET)
 -- 
-2.23.GIT
+2.29.3
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.14/default.nix b/nixpkgs/pkgs/development/libraries/qt-5/5.14/default.nix
index 3e3790ed1a4c..02b170e0eb17 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.14/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.14/default.nix
@@ -111,6 +111,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
     ] ++ optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0003-qtbase-mkspecs.patch b/nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0003-qtbase-mkspecs.patch
index b704d0dc8722..dbd6b3663443 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0003-qtbase-mkspecs.patch
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0003-qtbase-mkspecs.patch
@@ -1,6 +1,6 @@
-From 1cb5581d7f20bf87ac8d67a7295447a78a1d9645 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Milan=20P=C3=A4ssler?= <me@pbb.lc>
-Date: Sat, 4 Apr 2020 00:25:52 +0200
+From 87c81a31d65862a2f32fdc575cfb47b7a46bfae7 Mon Sep 17 00:00:00 2001
+From: OPNA2608 <christoph.neidahl@gmail.com>
+Date: Mon, 12 Apr 2021 20:05:25 +0200
 Subject: [PATCH 03/10] qtbase-mkspecs
 
 ---
@@ -12,10 +12,10 @@ Subject: [PATCH 03/10] qtbase-mkspecs
  mkspecs/features/qt_build_paths.prf           |  4 +-
  mkspecs/features/qt_docs.prf                  | 10 +--
  mkspecs/features/qt_example_installs.prf      |  2 +-
- mkspecs/features/qt_functions.prf             |  2 +-
+ mkspecs/features/qt_functions.prf             | 27 ++++---
  mkspecs/features/qt_installs.prf              | 22 ++---
  mkspecs/features/qt_plugin.prf                |  2 +-
- 11 files changed, 38 insertions(+), 141 deletions(-)
+ 11 files changed, 52 insertions(+), 152 deletions(-)
 
 diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
 index 0e71fd0015..ba071d9a70 100644
@@ -369,18 +369,44 @@ index 72b47bce27..d59e949e78 100644
  
  check_examples {
 diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
-index 7777e615bd..abeb03a663 100644
+index 7777e615bd..b0c6880a74 100644
 --- a/mkspecs/features/qt_functions.prf
 +++ b/mkspecs/features/qt_functions.prf
-@@ -87,7 +87,7 @@ defineTest(qtHaveModule) {
+@@ -87,19 +87,22 @@ defineTest(qtHaveModule) {
  defineTest(qtPrepareTool) {
      cmd = $$eval(QT_TOOL.$${2}.binary)
      isEmpty(cmd) {
 -        cmd = $$[QT_HOST_BINS]/$$2
-+        cmd = $$system("command -v $$2")
-         exists($${cmd}.pl) {
-             $${1}_EXE = $${cmd}.pl
-             cmd = perl -w $$system_path($${cmd}.pl)
+-        exists($${cmd}.pl) {
+-            $${1}_EXE = $${cmd}.pl
+-            cmd = perl -w $$system_path($${cmd}.pl)
+-        } else: contains(QMAKE_HOST.os, Windows) {
+-            $${1}_EXE = $${cmd}.exe
+-            cmd = $$system_path($${cmd}.exe)
+-        } else:contains(QMAKE_HOST.os, Darwin) {
+-            BUNDLENAME = $${cmd}.app/Contents/MacOS/$$2
+-            exists($$BUNDLENAME) {
+-                cmd = $$BUNDLENAME
++        cmd = $$system("command -v $${2}")
++        isEmpty(cmd) {
++            cmd = $$system("command -v $${2}.pl")
++            !isEmpty(cmd) {
++                $${1}_EXE = $$cmd
++                cmd = perl -w $$system_path($${cmd})
++            } else: contains(QMAKE_HOST.os, Windows) {
++                cmd = $$system("command -v $${2}.exe")
++                $${1}_EXE = $$cmd
++            } else: contains(QMAKE_HOST.os, Darwin) {
++                cmd = $$system("command -v $${2}.app")
++                !isEmpty(cmd) {
++                    cmd = $${cmd}/Contents/MacOS/$${2}
++                    $${1}_EXE = $$cmd
++                }
+             }
+-            $${1}_EXE = $$cmd
+         } else {
+             $${1}_EXE = $$cmd
+         }
 diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
 index 1ebca17366..a8f958eae8 100644
 --- a/mkspecs/features/qt_installs.prf
@@ -460,5 +486,5 @@ index 573d717eea..024c624cb6 100644
  
  qt_libinfix_plugins: TARGET = $$TARGET$$QT_LIBINFIX
 -- 
-2.25.1
+2.29.3
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix b/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
index f969254b5952..5cfca8d80c71 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -135,6 +135,11 @@ let
         url = "https://github.com/qtwebkit/qtwebkit/commit/d92b11fea65364fefa700249bd3340e0cd4c5b31.patch";
         sha256 = "0h8ymfnwgkjkwaankr3iifiscsvngqpwb91yygndx344qdiw9y0n";
       })
+      (fetchpatch {
+        name = "qtwebkit-glib-2.68.patch";
+        url = "https://github.com/qtwebkit/qtwebkit/pull/1058/commits/5b698ba3faffd4e198a45be9fe74f53307395e4b.patch";
+        sha256 = "0a3xv0h4lv8wggckgy8cg8xnpkg7n9h45312pdjdnnwy87xvzss0";
+      })
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
     ] ++ optionals stdenv.isDarwin [
@@ -181,6 +186,7 @@ let
       qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
       qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
       qtdoc = callPackage ../modules/qtdoc.nix {};
+      qtgamepad = callPackage ../modules/qtgamepad.nix {};
       qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
       qtimageformats = callPackage ../modules/qtimageformats.nix {};
       qtlocation = callPackage ../modules/qtlocation.nix {};
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/0003-qtbase-mkspecs.patch b/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/0003-qtbase-mkspecs.patch
index 9f8ef67ab5d9..1c9012c0f2e8 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/0003-qtbase-mkspecs.patch
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.15/qtbase.patch.d/0003-qtbase-mkspecs.patch
@@ -1,6 +1,6 @@
-From 82771c437957b3684ce296997d795432756aa8b1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Milan=20P=C3=A4ssler?= <me@pbb.lc>
-Date: Sat, 4 Apr 2020 00:25:52 +0200
+From 03a5a7eab673d18d00c9b5eb8c7d5b790079e8ff Mon Sep 17 00:00:00 2001
+From: OPNA2608 <christoph.neidahl@gmail.com>
+Date: Mon, 12 Apr 2021 20:20:46 +0200
 Subject: [PATCH 03/11] qtbase-mkspecs
 
 ---
@@ -12,10 +12,10 @@ Subject: [PATCH 03/11] qtbase-mkspecs
  mkspecs/features/qt_build_paths.prf           |  4 +-
  mkspecs/features/qt_docs.prf                  | 10 +--
  mkspecs/features/qt_example_installs.prf      |  2 +-
- mkspecs/features/qt_functions.prf             |  2 +-
+ mkspecs/features/qt_functions.prf             | 27 ++++---
  mkspecs/features/qt_installs.prf              | 22 ++---
  mkspecs/features/qt_plugin.prf                |  2 +-
- 11 files changed, 38 insertions(+), 141 deletions(-)
+ 11 files changed, 52 insertions(+), 152 deletions(-)
 
 diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
 index 24ed125f12..f0666a1986 100644
@@ -105,7 +105,7 @@ index 24ed125f12..f0666a1986 100644
  # We are generating cmake files. Most developers of Qt are not aware of cmake,
  # so we require automatic tests to be available. The only module which should
 diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index 309798a767..b6c3ab8609 100644
+index db18dbece6..8246f37931 100644
 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
 +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
 @@ -2,30 +2,6 @@ if (CMAKE_VERSION VERSION_LESS 3.1.0)
@@ -200,7 +200,7 @@ index 309798a767..b6c3ab8609 100644
  !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS)
      include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL)
  !!ENDIF
-@@ -499,25 +455,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -491,25 +447,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
  !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
  !!IF isEmpty(CMAKE_DEBUG_TYPE)
  !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
@@ -226,7 +226,7 @@ index 309798a767..b6c3ab8609 100644
          _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" $${CMAKE_DEBUG_AND_RELEASE})
  !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
      endif()
-@@ -536,25 +480,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -528,25 +472,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
  !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
  !!IF isEmpty(CMAKE_RELEASE_TYPE)
  !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
@@ -252,7 +252,7 @@ index 309798a767..b6c3ab8609 100644
          _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" $${CMAKE_DEBUG_AND_RELEASE})
  !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
      endif()
-@@ -581,11 +513,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -573,11 +505,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
            IsDebugAndRelease)
          set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
  
@@ -265,7 +265,7 @@ index 309798a767..b6c3ab8609 100644
          set_target_properties(Qt5::${Plugin} PROPERTIES
              \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
 diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf
-index c0b50416c9..cabe39b22e 100644
+index 3d6cd9b3db..ca8b0b2701 100644
 --- a/mkspecs/features/qml_module.prf
 +++ b/mkspecs/features/qml_module.prf
 @@ -51,7 +51,7 @@ builtin_resources {
@@ -369,18 +369,44 @@ index 15b373ba40..5c373fe1d5 100644
  
  check_examples {
 diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
-index 7777e615bd..abeb03a663 100644
+index 7777e615bd..b0c6880a74 100644
 --- a/mkspecs/features/qt_functions.prf
 +++ b/mkspecs/features/qt_functions.prf
-@@ -87,7 +87,7 @@ defineTest(qtHaveModule) {
+@@ -87,19 +87,22 @@ defineTest(qtHaveModule) {
  defineTest(qtPrepareTool) {
      cmd = $$eval(QT_TOOL.$${2}.binary)
      isEmpty(cmd) {
 -        cmd = $$[QT_HOST_BINS]/$$2
-+        cmd = $$system("command -v $$2")
-         exists($${cmd}.pl) {
-             $${1}_EXE = $${cmd}.pl
-             cmd = perl -w $$system_path($${cmd}.pl)
+-        exists($${cmd}.pl) {
+-            $${1}_EXE = $${cmd}.pl
+-            cmd = perl -w $$system_path($${cmd}.pl)
+-        } else: contains(QMAKE_HOST.os, Windows) {
+-            $${1}_EXE = $${cmd}.exe
+-            cmd = $$system_path($${cmd}.exe)
+-        } else:contains(QMAKE_HOST.os, Darwin) {
+-            BUNDLENAME = $${cmd}.app/Contents/MacOS/$$2
+-            exists($$BUNDLENAME) {
+-                cmd = $$BUNDLENAME
++        cmd = $$system("command -v $${2}")
++        isEmpty(cmd) {
++            cmd = $$system("command -v $${2}.pl")
++            !isEmpty(cmd) {
++                $${1}_EXE = $$cmd
++                cmd = perl -w $$system_path($${cmd})
++            } else: contains(QMAKE_HOST.os, Windows) {
++                cmd = $$system("command -v $${2}.exe")
++                $${1}_EXE = $$cmd
++            } else: contains(QMAKE_HOST.os, Darwin) {
++                cmd = $$system("command -v $${2}.app")
++                !isEmpty(cmd) {
++                    cmd = $${cmd}/Contents/MacOS/$${2}
++                    $${1}_EXE = $$cmd
++                }
+             }
+-            $${1}_EXE = $$cmd
+         } else {
+             $${1}_EXE = $$cmd
+         }
 diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
 index 1ebca17366..a8f958eae8 100644
 --- a/mkspecs/features/qt_installs.prf
@@ -460,5 +486,5 @@ index 573d717eea..024c624cb6 100644
  
  qt_libinfix_plugins: TARGET = $$TARGET$$QT_LIBINFIX
 -- 
-2.25.4
+2.29.3
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtcharts.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtcharts.nix
index 84d3a17ea8ce..f5d034bcc327 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtcharts.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtcharts.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtcharts";
+  pname = "qtcharts";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
index f6aeb23fb7b4..ae3aa25427c8 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
@@ -1,7 +1,7 @@
 { qtModule, lib, stdenv, qtbase, qtdeclarative, bluez }:
 
 qtModule {
-  name = "qtconnectivity";
+  pname = "qtconnectivity";
   qtInputs = [ qtbase qtdeclarative ];
   buildInputs = lib.optional stdenv.isLinux bluez;
   outputs = [ "out" "dev" "bin" ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
index b611282294c6..97248ca18076 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
@@ -3,7 +3,7 @@
 with lib;
 
 qtModule {
-  name = "qtdeclarative";
+  pname = "qtdeclarative";
   qtInputs = [ qtbase qtsvg ];
   nativeBuildInputs = [ python3 ];
   outputs = [ "out" "dev" "bin" ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdoc.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdoc.nix
index 10623962c430..4ef4915000e5 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdoc.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtdoc.nix
@@ -1,7 +1,7 @@
 { qtModule, qtdeclarative }:
 
 qtModule {
-  name = "qtdoc";
+  pname = "qtdoc";
   qtInputs = [ qtdeclarative ];
   outputs = [ "out" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgamepad.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
index 6bc023eb9bbd..2e266060a341 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative, pkg-config }:
 
 qtModule {
-  name = "qtgamepad";
+  pname = "qtgamepad";
   qtInputs = [ qtbase qtdeclarative ];
   buildInputs = [ ];
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
index d0be6ae77694..c90280090b8e 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
@@ -1,7 +1,7 @@
 { qtModule, qtdeclarative }:
 
 qtModule {
-  name = "qtgraphicaleffects";
+  pname = "qtgraphicaleffects";
   qtInputs = [ qtdeclarative ];
   outputs = [ "out" "dev" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtimageformats.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
index 9c80507b7c70..52fa4d4ba8ff 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, libtiff }:
 
 qtModule {
-  name = "qtimageformats";
+  pname = "qtimageformats";
   qtInputs = [ qtbase ];
   propagatedBuildInputs = [ libtiff ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtlocation.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtlocation.nix
index 182b5f5bc334..687571f18d29 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtlocation.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtlocation.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, qtModule, qtbase, qtmultimedia }:
 
 qtModule {
-  name = "qtlocation";
+  pname = "qtlocation";
   qtInputs = [ qtbase qtmultimedia ];
   outputs = [ "bin" "out" "dev" ];
   qmakeFlags = lib.optional stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmacextras.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmacextras.nix
index 5e7ccf702045..30e363cff59a 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmacextras.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmacextras.nix
@@ -1,7 +1,7 @@
 { lib, qtModule, qtbase }:
 
 qtModule {
-  name = "qtmacextras";
+  pname = "qtmacextras";
   qtInputs = [ qtbase ];
   meta = with lib; {
     maintainers = with maintainers; [ periklis ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
index eb2c3bc7431d..0d2d565fe7ae 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
@@ -1,15 +1,15 @@
 { qtModule, lib, stdenv, qtbase, qtdeclarative, pkg-config
-, alsaLib, gstreamer, gst-plugins-base, libpulseaudio, wayland
+, alsa-lib, gstreamer, gst-plugins-base, libpulseaudio, wayland
 }:
 
 with lib;
 
 qtModule {
-  name = "qtmultimedia";
+  pname = "qtmultimedia";
   qtInputs = [ qtbase qtdeclarative ];
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ gstreamer gst-plugins-base libpulseaudio ]
-    ++ optional (stdenv.isLinux) alsaLib
+    ++ optional (stdenv.isLinux) alsa-lib
     ++ optional (versionAtLeast qtbase.version "5.14.0" && stdenv.isLinux) wayland;
   outputs = [ "bin" "dev" "out" ];
   qmakeFlags = [ "GST_VERSION=1.0" ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtnetworkauth.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtnetworkauth.nix
index e6ef428cc3c4..148ed890fc9e 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtnetworkauth.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtnetworkauth.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase }:
 
 qtModule {
-  name = "qtnetworkauth";
+  pname = "qtnetworkauth";
   qtInputs = [ qtbase ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
index ba0f20bc0d83..6c85a91fb78c 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
@@ -1,6 +1,6 @@
 { qtModule, qtdeclarative }:
 
 qtModule {
-  name = "qtquickcontrols";
+  pname = "qtquickcontrols";
   qtInputs = [ qtdeclarative ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix
index a9522f4b1f0c..a50ad9e2a304 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix
@@ -1,7 +1,7 @@
 { qtModule, qtdeclarative }:
 
 qtModule {
-  name = "qtquickcontrols2";
+  pname = "qtquickcontrols2";
   qtInputs = [ qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscript.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscript.nix
index 5a1a462a9640..e7ce86b74a68 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscript.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscript.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase, qttools }:
 
 qtModule {
-  name = "qtscript";
+  pname = "qtscript";
   qtInputs = [ qtbase qttools ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscxml.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscxml.nix
index 62b428b08933..cf9af0bc7543 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscxml.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtscxml.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtscxml";
+  pname = "qtscxml";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsensors.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsensors.nix
index 3b8732b68851..3fbd032b968f 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsensors.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsensors.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtsensors";
+  pname = "qtsensors";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialbus.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialbus.nix
index 48968a254c65..4fd6d7cb83c3 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialbus.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialbus.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase, qtserialport }:
 
 qtModule {
-  name = "qtserialbus";
+  pname = "qtserialbus";
   qtInputs = [ qtbase qtserialport ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialport.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialport.nix
index 516d38340dc5..caeaedbcf3d5 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialport.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtserialport.nix
@@ -3,7 +3,7 @@
 let inherit (lib) getLib optional; in
 
 qtModule {
-  name = "qtserialport";
+  pname = "qtserialport";
   qtInputs = [ qtbase ];
   NIX_CFLAGS_COMPILE =
     optional stdenv.isLinux
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtspeech.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtspeech.nix
index ddef01a9482e..d2748ba8d4c5 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtspeech.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtspeech.nix
@@ -1,7 +1,7 @@
 { qtModule }:
 
 qtModule {
-  name = "qtspeech";
+  pname = "qtspeech";
   qtInputs = [ ];
   outputs = [ "out" "dev" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsvg.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsvg.nix
index 3ce68e56e412..59c7cf67448c 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsvg.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtsvg.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase }:
 
 qtModule {
-  name = "qtsvg";
+  pname = "qtsvg";
   qtInputs = [ qtbase ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qttools.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qttools.nix
index fae90972978f..437ec6cef743 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qttools.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qttools.nix
@@ -3,7 +3,7 @@
 with lib;
 
 qtModule {
-  name = "qttools";
+  pname = "qttools";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qttranslations.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qttranslations.nix
index 11a6e3fedcb1..f49a4eb9a85d 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qttranslations.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qttranslations.nix
@@ -1,6 +1,6 @@
 { qtModule, qttools }:
 
 qtModule {
-  name = "qttranslations";
+  pname = "qttranslations";
   qtInputs = [ qttools ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtvirtualkeyboard.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtvirtualkeyboard.nix
index 2ba720c8eedc..77f1948dbf43 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtvirtualkeyboard.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtvirtualkeyboard.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase, qtdeclarative, qtsvg, hunspell  }:
 
 qtModule {
-  name = "qtvirtualkeyboard";
+  pname = "qtvirtualkeyboard";
   qtInputs = [ qtbase qtdeclarative qtsvg hunspell ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwayland.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwayland.nix
index 5291ea9c9a78..1bd1adedaf04 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwayland.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwayland.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtquickcontrols, wayland, pkg-config }:
 
 qtModule {
-  name = "qtwayland";
+  pname = "qtwayland";
   qtInputs = [ qtbase qtquickcontrols ];
   buildInputs = [ wayland ];
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix
index 84fb88385a3e..f49e9e234901 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtwebchannel";
+  pname = "qtwebchannel";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
index e2ca47f45f2c..729c5f388f99 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
@@ -8,14 +8,15 @@
 , fontconfig, freetype, harfbuzz, icu, dbus, libdrm
 , zlib, minizip, libjpeg, libpng, libtiff, libwebp, libopus
 , jsoncpp, protobuf, libvpx, srtp, snappy, nss, libevent
-, alsaLib
+, alsa-lib
 , libcap
 , pciutils
 , systemd
+, pipewire_0_2
 , enableProprietaryCodecs ? true
 , gn
 , cups, darwin, openbsm, runCommand, xcbuild, writeScriptBin
-, ffmpeg_3 ? null
+, ffmpeg ? null
 , lib, stdenv, fetchpatch
 , version ? null
 , qtCompatVersion
@@ -24,18 +25,10 @@
 with lib;
 
 qtModule {
-  name = "qtwebengine";
+  pname = "qtwebengine";
   qtInputs = [ qtdeclarative qtquickcontrols qtlocation qtwebchannel ];
   nativeBuildInputs = [
     bison coreutils flex git gperf ninja pkg-config python2 which gn nodejs
-
-    # qmake looks for syncqt instead of syncqt.pl and fails with a cryptic
-    # error if it can't find it. syncqt.pl also has a /usr/bin/env shebang, so
-    # it can't be directly used in a sandboxed build environment.
-    (writeScriptBin "syncqt" ''
-      #!${stdenv.shell}
-      exec ${perl}/bin/perl ${qtbase.dev}/bin/syncqt.pl "$@"
-    '')
   ] ++ optional stdenv.isDarwin xcbuild;
   doCheck = true;
   outputs = [ "bin" "dev" "out" ];
@@ -140,9 +133,9 @@ qtModule {
     fi
   '';
 
-  qmakeFlags = if stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64
-    then [ "--" "-system-ffmpeg" ] ++ optional enableProprietaryCodecs "-proprietary-codecs"
-    else optional enableProprietaryCodecs "-- -proprietary-codecs";
+  qmakeFlags = [ "--" "-system-ffmpeg" ]
+    ++ optional (stdenv.isLinux && (lib.versionAtLeast qtCompatVersion "5.15")) "-webengine-webrtc-pipewire"
+    ++ optional enableProprietaryCodecs "-proprietary-codecs";
 
   propagatedBuildInputs = [
     # Image formats
@@ -158,13 +151,12 @@ qtModule {
     harfbuzz icu
 
     libevent
-  ] ++ optionals (stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64) [
-    ffmpeg_3
+    ffmpeg
   ] ++ optionals (!stdenv.isDarwin) [
     dbus zlib minizip snappy nss protobuf jsoncpp
 
     # Audio formats
-    alsaLib
+    alsa-lib
 
     # Text rendering
     fontconfig freetype
@@ -175,6 +167,10 @@ qtModule {
     # X11 libs
     xorg.xrandr libXScrnSaver libXcursor libXrandr xorg.libpciaccess libXtst
     xorg.libXcomposite xorg.libXdamage libdrm
+
+  ] ++ optionals (stdenv.isLinux && (lib.versionAtLeast qtCompatVersion "5.15")) [
+    # Pipewire
+    pipewire_0_2
   ]
 
   # FIXME These dependencies shouldn't be needed but can't find a way
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix
index 444d0c1beae8..d8fd7a692370 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase, qtwebsockets }:
 
 qtModule {
-  name = "qtwebglplugin";
+  pname = "qtwebglplugin";
   qtInputs = [ qtbase qtwebsockets ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebkit.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
index 288a0e30f690..e2dd0d4b19c7 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
@@ -22,7 +22,7 @@ let
   usingAnnulenWebkitFork = lib.versionAtLeast qtbase.version "5.11.0";
 in
 qtModule {
-  name = "qtwebkit";
+  pname = "qtwebkit";
   qtInputs = [ qtbase qtdeclarative qtlocation qtsensors ]
     ++ optional (stdenv.isDarwin && lib.versionAtLeast qtbase.version "5.9.0") qtmultimedia
     ++ optional usingAnnulenWebkitFork qtwebchannel;
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix
index ad5e7625f289..540fcade73c9 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtwebsockets";
+  pname = "qtwebsockets";
   qtInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebview.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebview.nix
index 4034dce49f56..1df8ef866389 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebview.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtwebview.nix
@@ -3,7 +3,7 @@
 with lib;
 
 qtModule {
-  name = "qtwebview";
+  pname = "qtwebview";
   qtInputs = [ qtdeclarative qtwebengine ];
   buildInputs = optional (stdenv.isDarwin) [
     darwin.apple_sdk.frameworks.CoreFoundation
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtx11extras.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtx11extras.nix
index 4d431fee278b..ad743523bb00 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtx11extras.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtx11extras.nix
@@ -1,6 +1,6 @@
 { qtModule, qtbase }:
 
 qtModule {
-  name = "qtx11extras";
+  pname = "qtx11extras";
   qtInputs = [ qtbase ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix
index 7ac922421f08..c602b1e39d2d 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix
@@ -1,7 +1,7 @@
 { qtModule, qtbase, qtdeclarative }:
 
 qtModule {
-  name = "qtxmlpatterns";
+  pname = "qtxmlpatterns";
   qtInputs = [ qtbase qtdeclarative ];
   devTools = [ "bin/xmlpatterns" "bin/xmlpatternsvalidator" ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/qtModule.nix b/nixpkgs/pkgs/development/libraries/qt-5/qtModule.nix
index 930ed9d67baa..767cbc91142d 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/qtModule.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/qtModule.nix
@@ -7,15 +7,14 @@ let inherit (lib) licenses maintainers platforms; in
 args:
 
 let
-  inherit (args) name;
-  version = args.version or srcs.${name}.version;
-  src = args.src or srcs.${name}.src;
+  inherit (args) pname;
+  version = args.version or srcs.${pname}.version;
+  src = args.src or srcs.${pname}.src;
 in
 
 mkDerivation (args // {
-  name = "${name}-${version}";
-  inherit src;
-  patches = args.patches or patches.${name} or [];
+  inherit pname version src;
+  patches = args.patches or patches.${pname} or [];
 
   nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ perl self.qmake ];
   propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
diff --git a/nixpkgs/pkgs/development/libraries/qtfeedback/default.nix b/nixpkgs/pkgs/development/libraries/qtfeedback/default.nix
new file mode 100644
index 000000000000..a329ece074ba
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/qtfeedback/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, perl
+, qmake
+, qtbase
+, qtdeclarative
+}:
+
+mkDerivation rec {
+  pname = "qtfeedback";
+  version = "unstable-2018-09-03";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchFromGitHub {
+    owner = "qt";
+    repo = "qtfeedback";
+    rev = "a14bd0bb1373cde86e09e3619fb9dc70f34c71f2";
+    sha256 = "0kiiffvriagql1cark6g1qxy7l9c3q3s13cx3s2plbz19nlnikj7";
+  };
+
+  nativeBuildInputs = [
+    perl
+    qmake
+  ];
+
+  buildInputs = [
+    qtdeclarative
+  ];
+
+  qmakeFlags = [ "CONFIG+=git_build" ];
+
+  doCheck = true;
+
+  postFixup = ''
+    # Drop QMAKE_PRL_BUILD_DIR because it references the build dir
+    find "$out/lib" -type f -name '*.prl' \
+      -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+  '';
+
+  meta = with lib; {
+    description = "Qt Tactile Feedback";
+    homepage = "https://github.com/qt/qtfeedback";
+    license = with licenses; [ lgpl3Only /* or */ gpl2Plus ];
+    maintainers = with maintainers; [ dotlambda OPNA2608 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/qtstyleplugins/default.nix b/nixpkgs/pkgs/development/libraries/qtstyleplugins/default.nix
index 85468bd4f183..ebc7bc081933 100644
--- a/nixpkgs/pkgs/development/libraries/qtstyleplugins/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qtstyleplugins/default.nix
@@ -31,7 +31,7 @@ mkDerivation {
     description = "Additional style plugins for Qt5, including BB10, GTK, Cleanlooks, Motif, Plastique";
     homepage = "http://blog.qt.io/blog/2012/10/30/cleaning-up-styles-in-qt5-and-adding-fusion/";
     license = licenses.lgpl21;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/quazip/default.nix b/nixpkgs/pkgs/development/libraries/quazip/default.nix
index a12d6cafe4ae..4184f3276c06 100644
--- a/nixpkgs/pkgs/development/libraries/quazip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/quazip/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "quazip";
-  version = "0.9.1";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "stachenov";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11icgwv2xyxhd1hm1add51xv54zwkcqkg85d1xqlgiigvbm196iq";
+    sha256 = "06srglrj6jvy5ngmidlgx03i0d5w91yhi7sf846wql00v8rvhc5h";
   };
 
   buildInputs = [ zlib qtbase ];
diff --git a/nixpkgs/pkgs/development/libraries/raft-canonical/default.nix b/nixpkgs/pkgs/development/libraries/raft-canonical/default.nix
index 69fa7f6eadc5..1ff8c2b0cc21 100644
--- a/nixpkgs/pkgs/development/libraries/raft-canonical/default.nix
+++ b/nixpkgs/pkgs/development/libraries/raft-canonical/default.nix
@@ -2,18 +2,20 @@
 
 stdenv.mkDerivation rec {
   pname = "raft-canonical";
-  version = "0.9.23";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "canonical";
     repo = "raft";
     rev = "v${version}";
-    sha256 = "0swn95cf11fqczllmxr0nj3ig532rw4n3w6g3ckdnqka8520xjyr";
+    sha256 = "sha256-Q4m0CCIArgsobhmhqLvkr7fK40SX/qBk6K5Qu0eRLaI=";
   };
 
   nativeBuildInputs = [ autoreconfHook file pkg-config ];
   buildInputs = [ libuv ];
 
+  enableParallelBuilding = true;
+
   preConfigure = ''
     substituteInPlace configure --replace /usr/bin/ " "
   '';
diff --git a/nixpkgs/pkgs/development/libraries/rarian/default.nix b/nixpkgs/pkgs/development/libraries/rarian/default.nix
index 522456cfa40d..b8995e6a2c48 100644
--- a/nixpkgs/pkgs/development/libraries/rarian/default.nix
+++ b/nixpkgs/pkgs/development/libraries/rarian/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, pkg-config, perlPackages, libxml2, libxslt, docbook_xml_dtd_42, gnome3}:
+{lib, stdenv, fetchurl, pkg-config, perlPackages, libxml2, libxslt, docbook_xml_dtd_42, gnome}:
 let
   pname = "rarian";
   version = "0.8.1";
@@ -15,12 +15,6 @@ in stdenv.mkDerivation rec {
     ++ (with perlPackages; [ perl XMLParser ]);
   configureFlags = [ "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat" ];
 
-  passthru = {
-    updateScript = gnome3.updateScript {
-      packageName = pname;
-    };
-  };
-
   meta = with lib; {
     description = "Documentation metadata library based on the proposed Freedesktop.org spec";
     homepage = "https://rarian.freedesktop.org/";
diff --git a/nixpkgs/pkgs/development/libraries/raylib/default.nix b/nixpkgs/pkgs/development/libraries/raylib/default.nix
index 47d8fdb040b2..836bafd4280f 100644
--- a/nixpkgs/pkgs/development/libraries/raylib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/raylib/default.nix
@@ -1,46 +1,47 @@
 { stdenv, lib, fetchFromGitHub, fetchpatch, cmake,
   mesa, libGLU, glfw,
   libX11, libXi, libXcursor, libXrandr, libXinerama,
-  alsaSupport ? stdenv.hostPlatform.isLinux, alsaLib,
+  alsaSupport ? stdenv.hostPlatform.isLinux, alsa-lib,
   pulseSupport ? stdenv.hostPlatform.isLinux, libpulseaudio,
+  sharedLib ? true,
   includeEverything ? true
 }:
 
 stdenv.mkDerivation rec {
   pname = "raylib";
-  version = "3.5.0";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "raysan5";
     repo = pname;
     rev = version;
-    sha256 = "0syvd5js1lbx3g4cddwwncqg95l6hb3fdz5nsh5pqy7fr6v84kwj";
+    sha256 = "1w8v747hqy0ils6zmy8sm056f24ybjhn9bamqzlxvbqhvh9vvly1";
   };
 
   patches = [
-    # fixes examples not compiling in 3.5.0
+    # fixes incorrect version being set by cmake
     (fetchpatch {
-      url = "https://patch-diff.githubusercontent.com/raw/raysan5/raylib/pull/1470.patch";
-      sha256 = "1ff5l839wl8dxwrs2bwky7kqa8kk9qmsflg31sk5vbil68dzbzg0";
+      url = "https://github.com/raysan5/raylib/commit/204aa4c46fdd6986aa0130eeba658562c540759f.patch";
+      sha256 = "10pl7828iy4kadach0wy4fs95vr7k08z3mxw90j8dm9xak1ri8fz";
     })
   ];
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [
     mesa libGLU glfw libX11 libXi libXcursor libXrandr libXinerama
-  ] ++ lib.optional alsaSupport alsaLib
+  ] ++ lib.optional alsaSupport alsa-lib
     ++ lib.optional pulseSupport libpulseaudio;
 
   # https://github.com/raysan5/raylib/wiki/CMake-Build-Options
   cmakeFlags = [
     "-DUSE_EXTERNAL_GLFW=ON"
-    "-DSHARED=ON"
     "-DBUILD_EXAMPLES=OFF"
-  ] ++ lib.optional includeEverything "-DINCLUDE_EVERYTHING=ON";
+  ] ++ lib.optional includeEverything "-DINCLUDE_EVERYTHING=ON"
+    ++ lib.optional sharedLib "-DBUILD_SHARED_LIBS=ON";
 
   # fix libasound.so/libpulse.so not being found
   preFixup = ''
-    ${lib.optionalString alsaSupport "patchelf --add-needed ${alsaLib}/lib/libasound.so $out/lib/libraylib.so.${version}"}
+    ${lib.optionalString alsaSupport "patchelf --add-needed ${alsa-lib}/lib/libasound.so $out/lib/libraylib.so.${version}"}
     ${lib.optionalString pulseSupport "patchelf --add-needed ${libpulseaudio}/lib/libpulse.so $out/lib/libraylib.so.${version}"}
   '';
 
diff --git a/nixpkgs/pkgs/development/libraries/re2/default.nix b/nixpkgs/pkgs/development/libraries/re2/default.nix
index 2d8d00597647..9b7a2e910117 100644
--- a/nixpkgs/pkgs/development/libraries/re2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/re2/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "re2";
-  version = "20201001";
+  version = "2021-04-01";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "re2";
-    rev = "2020-10-01";
-    sha256 = "0a5f7av1pk6p3jxc2w6prl00lyrplap97m68hnhw7jllnwljk0bx";
+    rev = version;
+    sha256 = "1iia0883lssj7ckbsr0n7yb3gdw24c8wnl2q5hhzlml23h4ipbh3";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/development/libraries/readline/8.0.nix b/nixpkgs/pkgs/development/libraries/readline/8.1.nix
index 9ea0277467e5..35835c1a1436 100644
--- a/nixpkgs/pkgs/development/libraries/readline/8.0.nix
+++ b/nixpkgs/pkgs/development/libraries/readline/8.1.nix
@@ -1,13 +1,13 @@
-{ fetchurl, lib, stdenv, ncurses
+{ fetchurl, stdenv, lib, ncurses
 }:
 
 stdenv.mkDerivation rec {
   pname = "readline";
-  version = "8.0p${toString (builtins.length upstreamPatches)}";
+  version = "8.1p${toString (builtins.length upstreamPatches)}";
 
   src = fetchurl {
     url = "mirror://gnu/readline/readline-${meta.branch}.tar.gz";
-    sha256 = "0qg4924hf4hg0r0wbx2chswsr08734536fh5iagkd3a7f4czafg3";
+    sha256 = "00ibp0n9crbwx15k9vvckq5wsipw98b1px8pd8i34chy2gpb9kpq";
   };
 
   outputs = [ "out" "dev" "man" "doc" "info" ];
@@ -20,11 +20,11 @@ stdenv.mkDerivation rec {
     (let
        patch = nr: sha256:
          fetchurl {
-           url = "mirror://gnu/readline/readline-${meta.branch}-patches/readline80-${nr}";
+           url = "mirror://gnu/readline/readline-${meta.branch}-patches/readline81-${nr}";
            inherit sha256;
          };
      in
-       import ./readline-8.0-patches.nix patch);
+       import ./readline-8.1-patches.nix patch);
 
   patches =
     [ ./link-against-ncurses.patch
@@ -57,6 +57,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ dtzWill ];
 
     platforms = platforms.unix;
-    branch = "8.0";
+    branch = "8.1";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/readline/readline-8.0-patches.nix b/nixpkgs/pkgs/development/libraries/readline/readline-8.0-patches.nix
deleted file mode 100644
index 2fac6a413c71..000000000000
--- a/nixpkgs/pkgs/development/libraries/readline/readline-8.0-patches.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-# Automatically generated by `update-patch-set.sh'; do not edit.
-
-patch: [
-(patch "001" "0sfh7wn0pr743xspnb1zndxndlv9rc0hcg14cbw5cmyg6f4ykrfq")
-(patch "002" "1xy8mv8xm8hsfixwp3ci9kfx3dii3y92cq27wwd0jq75y6zzxc1n")
-(patch "003" "1vza7sxjcsr2z295ij12nzgncdil1vb6as3mqy4m7svi1chv5pcl")
-(patch "004" "0k1rfx9w32lglxg564yvp0mw6jg6883p8ac2f2lxxqpf80m3vami")
-]
diff --git a/nixpkgs/pkgs/development/libraries/readline/readline-8.1-patches.nix b/nixpkgs/pkgs/development/libraries/readline/readline-8.1-patches.nix
new file mode 100644
index 000000000000..b8019fb33502
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/readline/readline-8.1-patches.nix
@@ -0,0 +1,4 @@
+# Automatically generated by `update-patch-set.sh'; do not edit.
+
+patch: [
+]
diff --git a/nixpkgs/pkgs/development/libraries/rlottie/default.nix b/nixpkgs/pkgs/development/libraries/rlottie/default.nix
index a8cd88cae507..f1d3ffd02124 100644
--- a/nixpkgs/pkgs/development/libraries/rlottie/default.nix
+++ b/nixpkgs/pkgs/development/libraries/rlottie/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rlottie";
-  version = "0.1";
+  version = "0.2";
 
   src = fetchFromGitHub {
     owner = "Samsung";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-8KQ0ZnVg5rTb44IYnn02WBSe2SA5UGUOSLEdmmscUDs=";
+    sha256 = "10bxr1zf9wxl55d4cw2j02r6sgqln7mbxplhhfvhw0z92fi40kr3";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/Samsung/rlottie";
     description = "A platform independent standalone c++ library for rendering vector based animations and art in realtime";
-    license = licenses.unfree; # Mixed, see https://github.com/Samsung/rlottie/blob/master/COPYING
+    license = with licenses; [ mit bsd3 mpl11 ftl ];
     platforms = platforms.all;
     maintainers = with maintainers; [ CRTified ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/s2n-tls/default.nix b/nixpkgs/pkgs/development/libraries/s2n-tls/default.nix
index 2d3ebc6cb414..5bae8df59e6a 100644
--- a/nixpkgs/pkgs/development/libraries/s2n-tls/default.nix
+++ b/nixpkgs/pkgs/development/libraries/s2n-tls/default.nix
@@ -2,23 +2,33 @@
 
 stdenv.mkDerivation rec {
   pname = "s2n-tls";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1q6kmgwb8jxmc4ijzk9pkqzz8lsbfsv9hyzqvy944w7306zx1r5h";
+    sha256 = "sha256-V/ZtO6t+Jxu/HmAEVzjkXuGWbZFwkGLsab1UCSG2tdk=";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  propagatedBuildInputs = [ openssl ]; # s2n-config has find_dependency(LibCrypto).
+  outputs = [ "out" "dev"];
+
+  buildInputs = [ openssl ]; # s2n-config has find_dependency(LibCrypto).
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=ON"
+    "-DCMAKE_SKIP_BUILD_RPATH=OFF"
   ];
 
+  propagatedBuildInputs = [ openssl ]; # s2n-config has find_dependency(LibCrypto).
+
+  postInstall = ''
+    substituteInPlace $out/lib/s2n/cmake/shared/s2n-targets.cmake \
+      --replace 'INTERFACE_INCLUDE_DIRECTORIES "''${_IMPORT_PREFIX}/include"' 'INTERFACE_INCLUDE_DIRECTORIES ""'
+  '';
+
   meta = with lib; {
     description = "C99 implementation of the TLS/SSL protocols";
     homepage = "https://github.com/aws/s2n-tls";
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/default.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/default.nix
index f7966046fa87..7a9a5a80700f 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "indilib";
-  version = "1.8.9";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "indilib";
     repo = "indi";
     rev = "v${version}";
-    sha256 = "sha256-W6LfrKL56K1B6srEfbNcq1MZwg7Oj8qoJkQ83ZhYhFs=";
+    sha256 = "sha256-YdVBzhz+Gim27/Js5MhEJNukoXp5eK9/dZ+JQVyls0M=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
index 34ef40887135..5909a06cfb59 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
@@ -1,6 +1,5 @@
 { stdenv
 , lib
-, fetchFromGitHub
 , cmake
 , cfitsio
 , libusb1
@@ -18,39 +17,54 @@
 , libdc1394
 , gpsd
 , ffmpeg
+, version
+, src
+, withFirmware ? false
+, firmware ? null
 }:
 
 stdenv.mkDerivation rec {
   pname = "indi-3rdparty";
-  version = "1.8.9";
 
-  src = fetchFromGitHub {
-    owner = "indilib";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "0klvknhp7l6y2ab4vyv4jq7znk1gjl5b3709kyplm7dsh4b8bppy";
-  };
+  inherit version src;
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [
+    indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd
+    libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw
+  ] ++ lib.optionals withFirmware [
+    firmware
+  ];
+
+  postPatch = ''
+    for f in indi-qsi/CMakeLists.txt \
+             indi-dsi/CMakeLists.txt \
+             indi-armadillo-platypus/CMakeLists.txt
+    do
+      substituteInPlace $f \
+        --replace "/lib/udev/rules.d" "lib/udev/rules.d" \
+        --replace "/etc/udev/rules.d" "lib/udev/rules.d" \
+        --replace "/lib/firmware" "lib/firmware"
+    done
+  '';
 
   cmakeFlags = [
-    "-DINDI_DATA_DIR=\${CMAKE_INSTALL_PREFIX}/share/indi"
+    "-DINDI_DATA_DIR=share/indi"
     "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d"
     "-DRULES_INSTALL_DIR=lib/udev/rules.d"
+    # Pentax, Atik, and SX cmakelists are currently broken
+    "-DWITH_PENTAX=off"
+    "-DWITH_ATIK=off"
     "-DWITH_SX=off"
-    "-DWITH_SBIG=off"
+  ] ++ lib.optionals (!withFirmware) [
     "-DWITH_APOGEE=off"
-    "-DWITH_FISHCAMP=off"
     "-DWITH_DSI=off"
     "-DWITH_QHY=off"
     "-DWITH_ARMADILLO=off"
-    "-DWITH_PENTAX=off"
-  ];
-
-  nativeBuildInputs = [ cmake ];
-
-  buildInputs = [
-    indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd
-    libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw
+    "-DWITH_FISHCAMP=off"
+    "-DWITH_SBIG=off"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
new file mode 100644
index 000000000000..d23673ac37ae
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
@@ -0,0 +1,66 @@
+{ stdenv
+, lib
+, cmake
+, cfitsio
+, libusb1
+, zlib
+, boost
+, libnova
+, curl
+, libjpeg
+, gsl
+, fftw
+, indilib
+, libgphoto2
+, libraw
+, libftdi1
+, libdc1394
+, gpsd
+, ffmpeg
+, version
+, src
+}:
+
+stdenv.mkDerivation rec {
+  pname = "indi-firmware";
+
+  inherit version src;
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [
+    indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd
+    libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw
+  ];
+
+  cmakeFlags = [
+    "-DINDI_DATA_DIR=\${CMAKE_INSTALL_PREFIX}/share/indi"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+    "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d"
+    "-DRULES_INSTALL_DIR=lib/udev/rules.d"
+    "-DFIRMWARE_INSTALL_DIR=\${CMAKE_INSTALL_PREFIX}/lib/firmware"
+    "-DCONF_DIR=etc"
+    "-DBUILD_LIBS=1"
+    "-DWITH_PENTAX=off"
+  ];
+
+  postPatch = ''
+    for f in libfishcamp/CMakeLists.txt libsbig/CMakeLists.txt
+    do
+      substituteInPlace $f --replace "/lib/firmware" "lib/firmware"
+    done
+  '';
+
+  postFixup = ''
+    rm $out/lib/udev/rules.d/99-fli.rules
+  '';
+
+  meta = with lib; {
+    homepage = "https://www.indilib.org/";
+    description = "Third party firmware for the INDI astronomical software suite";
+    changelog = "https://github.com/indilib/indi-3rdparty/releases/tag/v${version}";
+    license = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ hjones2199 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
index e52da9f2eab1..50aa9fb8b4ac 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
@@ -1,11 +1,30 @@
-{ callPackage, indilib, indi-3rdparty }:
+{ stdenv, lib, callPackage, fetchFromGitHub, indilib }:
 
 let
-  indi-with-drivers = ./indi-with-drivers.nix;
+  indi-version = "1.9.0";
+  indi-3rdparty-src = fetchFromGitHub {
+    owner = "indilib";
+    repo = "indi-3rdparty";
+    rev = "v${indi-version}";
+    sha256 = "sha256-5VR1MN52a0ZtaHYw4lD6LWmnvc1oHlfE5GLGbfBKvqE=";
+  };
+  indi-firmware = callPackage ./indi-firmware.nix {
+    version = indi-version;
+    src = indi-3rdparty-src;
+  };
+  indi-3rdparty = callPackage ./indi-3rdparty.nix {
+    version = indi-version;
+    src = indi-3rdparty-src;
+    withFirmware = stdenv.isx86_64;
+    firmware = indi-firmware;
+  };
 in
-callPackage indi-with-drivers {
-  pkgName = "indi-full";
+callPackage ./indi-with-drivers.nix {
+  pname = "indi-full";
+  version = indi-version;
   extraDrivers = [
     indi-3rdparty
+  ] ++ lib.optionals stdenv.isx86_64 [
+    indi-firmware
   ];
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix
index 27ac86ddbadf..5ec1acdf21e9 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix
@@ -1,7 +1,7 @@
-{ buildEnv, indilib ? indilib, extraDrivers ? null , pkgName ? "indi-with-drivers" }:
+{ buildEnv, indilib ? indilib, pname ? "indi-with-drivers", version ? null, extraDrivers ? null }:
 
 buildEnv {
-  name = pkgName;
+  name = "${pname}-${version}";
   paths = [
     indilib
   ]
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
index f55c72bd2095..c3a63c637c34 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
@@ -25,6 +25,6 @@ mkDerivation rec {
     description = "Astrometric plate solving library";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ hjones2199 ];
-    platforms = [ "x86_64-linux" ];
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/benchmark/papi/default.nix b/nixpkgs/pkgs/development/libraries/science/benchmark/papi/default.nix
index c265f24c182b..d4610d60415b 100644
--- a/nixpkgs/pkgs/development/libraries/science/benchmark/papi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/benchmark/papi/default.nix
@@ -2,19 +2,17 @@
 , fetchurl
 }:
 
-stdenv.mkDerivation {
-  version = "5.6.0";
+stdenv.mkDerivation rec {
+  version = "6.0.0.1";
   pname = "papi";
 
   src = fetchurl {
-    url = "https://bitbucket.org/icl/papi/get/papi-5-6-0-t.tar.gz";
-    sha256 = "13mngf9kl0y2wfxqvkad0smdaag7k8fvw82b4312gx62nwhc1i6r";
+    url = "https://bitbucket.org/icl/papi/get/papi-${lib.replaceStrings ["."] ["-"] version}-t.tar.gz";
+    sha256 = "1jd67yadyffzxwsqlylsi0bx8ishb0cgj2ziz1wdslaz6ylvyf9j";
   };
 
-  NIX_CFLAGS_COMPILE = "-Wno-error=format-truncation";
-
-  preConfigure = ''
-    cd src
+  setSourceRoot = ''
+    sourceRoot=$(echo */src)
   '';
 
   doCheck = true;
@@ -22,9 +20,9 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     homepage = "https://icl.utk.edu/papi/";
-    description = "PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors";
+    description = "Library providing access to various hardware performance counters";
     license = licenses.bsdOriginal;
     platforms = platforms.linux;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc zhaofengli ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/math/arpack/default.nix b/nixpkgs/pkgs/development/libraries/science/math/arpack/default.nix
index 23e44bf28b06..a26a3bb6d8d9 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/arpack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/arpack/default.nix
@@ -46,6 +46,10 @@ stdenv.mkDerivation rec {
     export OMP_NUM_THREADS=2
   '';
 
+  postFixup = lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libarpack.dylib
+  '';
+
   meta = {
     homepage = "https://github.com/opencollab/arpack-ng";
     description = ''
diff --git a/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix b/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
index d4c7fcac9785..d2a5a8c2a790 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
@@ -30,12 +30,12 @@ in rec {
   cudnn_cudatoolkit_10 = cudnn_cudatoolkit_10_2;
 
   cudnn_cudatoolkit_11_0 = generic rec {
-    version = "8.1.0";
+    version = "8.1.1";
     cudatoolkit = cudatoolkit_11_0;
     # 8.1.0 is compatible with CUDA 11.0, 11.1, and 11.2:
     # https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html#cudnn-cuda-hardware-versions
-    srcName = "cudnn-11.2-linux-x64-v8.1.0.77.tgz";
-    sha256 = "sha256-2+gvrwcdkbqbzwBIAUatM/RiSC3+5WyvRHnBuNq+Pss=";
+    srcName = "cudnn-11.2-linux-x64-v8.1.1.33.tgz";
+    hash = "sha256-mKh4TpKGLyABjSDCgbMNSgzZUfk2lPZDPM9K6cUCumo=";
   };
 
   cudnn_cudatoolkit_11_1 = cudnn_cudatoolkit_11_0.override {
diff --git a/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix b/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
index d9c19e6790c6..f5a4fac1a908 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
@@ -1,8 +1,11 @@
 { version
 , srcName
-, sha256
+, hash ? null
+, sha256 ? null
 }:
 
+assert (hash != null) || (sha256 != null);
+
 { stdenv
 , lib
 , cudatoolkit
@@ -22,11 +25,13 @@ stdenv.mkDerivation {
   name = "cudatoolkit-${cudatoolkit.majorVersion}-cudnn-${version}";
 
   inherit version;
-  src = fetchurl {
+
+  src = let
+    hash_ = if hash != null then { inherit hash; } else { inherit sha256; };
+  in fetchurl ({
     # URL from NVIDIA docker containers: https://gitlab.com/nvidia/cuda/blob/centos7/7.0/runtime/cudnn4/Dockerfile
     url = "https://developer.download.nvidia.com/compute/redist/cudnn/v${version}/${srcName}";
-    inherit sha256;
-  };
+  } // hash_);
 
   nativeBuildInputs = [ addOpenGLRunpath ];
 
diff --git a/nixpkgs/pkgs/development/libraries/science/math/libtorch/bin.nix b/nixpkgs/pkgs/development/libraries/science/math/libtorch/bin.nix
index 481836a4e115..87b5835aa9ef 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/libtorch/bin.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/libtorch/bin.nix
@@ -18,7 +18,7 @@ let
   # this derivation. However, we should ensure on version bumps
   # that the CUDA toolkit for `passthru.tests` is still
   # up-to-date.
-  version = "1.8.0";
+  version = "1.8.1";
   device = if cudaSupport then "cuda" else "cpu";
   srcs = import ./binary-hashes.nix version;
   unavailable = throw "libtorch is not available for this platform";
diff --git a/nixpkgs/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix b/nixpkgs/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
index 208e0b7adab8..ec4522a75592 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
@@ -1,14 +1,14 @@
 version: {
   x86_64-darwin-cpu = {
     url = "https://download.pytorch.org/libtorch/cpu/libtorch-macos-${version}.zip";
-    hash = "sha256-V1lbztMB09wyWjdiJrwVwJ00DT8Kihy/TC2cKmdBLIE=";
+    hash = "sha256-FYgnd5zlycjCYnP5bZcjpMdGYXrRERwhFFBYo/SJgzs=";
   };
   x86_64-linux-cpu = {
     url = "https://download.pytorch.org/libtorch/cpu/libtorch-cxx11-abi-shared-with-deps-${version}%2Bcpu.zip";
-    hash = "sha256-xBaNyI7eiQnSArHMITonrQQLZnZCZK/SWKOTWnxzdpc=";
+    hash = "sha256-xneCcVrY25Whgbs/kPbwdS1Lc0e6RxsDRpA5lHTZigc=";
   };
   x86_64-linux-cuda = {
     url = "https://download.pytorch.org/libtorch/cu111/libtorch-cxx11-abi-shared-with-deps-${version}%2Bcu111.zip";
-    hash = "sha256-uQ7ptOuzowJ0JSPIvJHyNotBfpsqAnxpMDLq7Vl6L00=";
+    hash = "sha256-VW+TW00nD49GBztCyxHE4dTyy81aN/kfYE3hKQOIm50=";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/math/libtorch/test/default.nix b/nixpkgs/pkgs/development/libraries/science/math/libtorch/test/default.nix
index 60f9b5ad8846..eaea649d4340 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/libtorch/test/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/libtorch/test/default.nix
@@ -42,8 +42,9 @@ in stdenv.mkDerivation {
     touch $out
   '';
 
-  checkPhase = ''
+  checkPhase = lib.optionalString cudaSupport ''
     LD_LIBRARY_PATH=${cudaStub}''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH \
-      ./test
+  '' + ''
+    ./test
   '';
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/math/openblas/default.nix b/nixpkgs/pkgs/development/libraries/science/math/openblas/default.nix
index c66e4ba44ef9..f464a755f6e4 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/openblas/default.nix
@@ -15,6 +15,8 @@
 # Select a specific optimization target (other than the default)
 # See https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt
 , target ? null
+# Select whether DYNAMIC_ARCH is enabled or not.
+, dynamicArch ? null
 , enableStatic ? stdenv.hostPlatform.isStatic
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
@@ -25,27 +27,28 @@ let blas64_ = blas64; in
 
 let
   setTarget = x: if target == null then x else target;
+  setDynamicArch = x: if dynamicArch == null then x else dynamicArch;
 
   # To add support for a new platform, add an element to this set.
   configs = {
     armv6l-linux = {
       BINARY = 32;
       TARGET = setTarget "ARMV6";
-      DYNAMIC_ARCH = false;
+      DYNAMIC_ARCH = setDynamicArch false;
       USE_OPENMP = true;
     };
 
     armv7l-linux = {
       BINARY = 32;
       TARGET = setTarget "ARMV7";
-      DYNAMIC_ARCH = false;
+      DYNAMIC_ARCH = setDynamicArch false;
       USE_OPENMP = true;
     };
 
     aarch64-darwin = {
       BINARY = 64;
       TARGET = setTarget "VORTEX";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = false;
       MACOSX_DEPLOYMENT_TARGET = "11.0";
     };
@@ -53,21 +56,21 @@ let
     aarch64-linux = {
       BINARY = 64;
       TARGET = setTarget "ARMV8";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = true;
     };
 
     i686-linux = {
       BINARY = 32;
       TARGET = setTarget "P2";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = true;
     };
 
     x86_64-darwin = {
       BINARY = 64;
       TARGET = setTarget "ATHLON";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = false;
       MACOSX_DEPLOYMENT_TARGET = "10.7";
     };
@@ -75,14 +78,14 @@ let
     x86_64-linux = {
       BINARY = 64;
       TARGET = setTarget "ATHLON";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = !stdenv.hostPlatform.isMusl;
     };
 
     powerpc64le-linux = {
       BINARY = 64;
       TARGET = setTarget "POWER5";
-      DYNAMIC_ARCH = true;
+      DYNAMIC_ARCH = setDynamicArch true;
       USE_OPENMP = !stdenv.hostPlatform.isMusl;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix b/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
index 2b6eb5705cd9..741c6f4898b6 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , abseil-cpp
 , bzip2
@@ -17,25 +16,16 @@
 
 stdenv.mkDerivation rec {
   pname = "or-tools";
-  version = "8.1";
+  version = "9.0";
   disabled = python.pythonOlder "3.6";  # not supported upstream
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "or-tools";
     rev = "v${version}";
-    sha256 = "1zqgvkaw5vf2d8pwsa34g9jysbpiwplzxc8jyy8kdbzmj8ax3gpg";
+    sha256 = "0yihrsg8wj4b82xwg1hbn97my8zqd7xhw7dk7wm2axsyvqd6m3b3";
   };
 
-  patches = [
-    # This patch (on master as of Feb 11, 2021) fixes or-tools failing to respect
-    # USE_SCIP=OFF and then failing to find scip/scip.h
-    (fetchpatch {
-      url = "https://github.com/google/or-tools/commit/17321869832b5adaccd9864e7e5576122730a5d5.patch";
-      sha256 = "0bi2z1hqlpdm1if3xa5dzc2zv0qlm5xi2x979brx10f8k779ghn0";
-    })
-  ];
-
   # The original build system uses cmake which does things like pull
   # in dependencies through git and Makefile creation time. We
   # obviously don't want to do this so instead we provide the
diff --git a/nixpkgs/pkgs/development/libraries/snack/default.nix b/nixpkgs/pkgs/development/libraries/snack/default.nix
index 4948e481ff58..41d776c68698 100644
--- a/nixpkgs/pkgs/development/libraries/snack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/snack/default.nix
@@ -1,4 +1,4 @@
-# alsaLib vorbis-tools python can be made optional
+# alsa-lib vorbis-tools python can be made optional
 
 { lib, stdenv, fetchurl, python, tcl, tk, vorbis-tools, pkg-config, xlibsWrapper }:
 
diff --git a/nixpkgs/pkgs/development/libraries/sofia-sip/default.nix b/nixpkgs/pkgs/development/libraries/sofia-sip/default.nix
index 593bd87a9829..c9db54fd59c4 100644
--- a/nixpkgs/pkgs/development/libraries/sofia-sip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sofia-sip/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, glib, openssl, pkg-config, autoreconfHook }:
+{ lib, stdenv, fetchFromGitHub, glib, openssl, pkg-config, autoreconfHook, SystemConfiguration }:
 
 stdenv.mkDerivation rec {
   pname = "sofia-sip";
@@ -11,13 +11,13 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-qMgZpLo/BHGJbJ0DDN8COHAhU3ujWgVK9oZOnnMwKas=";
   };
 
-  buildInputs = [ glib openssl ];
+  buildInputs = [ glib openssl ] ++ lib.optional stdenv.isDarwin SystemConfiguration;
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   meta = with lib; {
     description = "Open-source SIP User-Agent library, compliant with the IETF RFC3261 specification";
     homepage = "https://github.com/freeswitch/sofia-sip";
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.lgpl2;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/spandsp/3.nix b/nixpkgs/pkgs/development/libraries/spandsp/3.nix
index b3522afdf860..ceb53e05744e 100644
--- a/nixpkgs/pkgs/development/libraries/spandsp/3.nix
+++ b/nixpkgs/pkgs/development/libraries/spandsp/3.nix
@@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A portable and modular SIP User-Agent with audio and video support";
     homepage = "https://github.com/freeswitch/spandsp";
-    platforms = with lib.platforms; linux;
-    maintainers = with lib.maintainers; [ ajs124 ];
+    platforms = with lib.platforms; unix;
+    maintainers = with lib.maintainers; [ ajs124 misuzu ];
     license = lib.licenses.gpl2;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/spatialite-tools/default.nix b/nixpkgs/pkgs/development/libraries/spatialite-tools/default.nix
index ffded04510b4..265769f872f4 100644
--- a/nixpkgs/pkgs/development/libraries/spatialite-tools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spatialite-tools/default.nix
@@ -1,15 +1,40 @@
-{ lib, stdenv, fetchurl, pkg-config, sqlite, expat, zlib, proj, geos, libspatialite, readosm }:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, geos
+, expat
+, librttopo
+, libspatialite
+, libxml2
+, minizip
+, proj
+, readosm
+, sqlite
+}:
 
 stdenv.mkDerivation rec {
-  name = "spatialite-tools-4.1.1";
+  pname = "spatialite-tools";
+  version = "5.0.1";
 
   src = fetchurl {
-    url = "https://www.gaia-gis.it/gaia-sins/spatialite-tools-sources/${name}.tar.gz";
-    sha256 = "14aqmhvab63ydbb82fglsbig7jw1wmci8jjvci07aavdhvh1pyrv";
+    url = "https://www.gaia-gis.it/gaia-sins/spatialite-tools-sources/${pname}-${version}.tar.gz";
+    sha256 = "sha256-lgTCBeh/A3eJvFIwLGbM0TccPpjHTo7E4psHUt41Fxw=";
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ sqlite expat zlib proj geos libspatialite readosm ];
+
+  buildInputs = [
+    expat
+    geos
+    librttopo
+    libspatialite
+    libxml2
+    minizip
+    proj
+    readosm
+    sqlite
+  ];
 
   configureFlags = [ "--disable-freexl" ];
 
@@ -17,10 +42,11 @@ stdenv.mkDerivation rec {
 
   NIX_LDFLAGS = "-lsqlite3";
 
-  meta = {
+  meta = with lib; {
     description = "A complete sqlite3-compatible CLI front-end for libspatialite";
     homepage = "https://www.gaia-gis.it/fossil/spatialite-tools";
-    license = with lib.licenses; [ mpl11 gpl2Plus lgpl21Plus ];
-    platforms = lib.platforms.linux;
+    license = with licenses; [ mpl11 gpl2Plus lgpl21Plus ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ dotlambda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/spdk/default.nix b/nixpkgs/pkgs/development/libraries/spdk/default.nix
index a0c875079c44..eec08f3cc2d0 100644
--- a/nixpkgs/pkgs/development/libraries/spdk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spdk/default.nix
@@ -13,31 +13,17 @@
 , openssl
 }:
 
-let
-  dpdk-compat-patch = fetchurl {
-    url = "https://review.spdk.io/gerrit/plugins/gitiles/spdk/spdk/+/6acb9a58755856fb9316baf9dbbb7239dc6b9446%5E%21/?format=TEXT";
-    sha256 = "18q0956fkjw19r29hp16x4pygkfv01alj9cld2wlqqyfgp41nhn0";
-  };
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "spdk";
-  version = "20.04.1";
+  version = "21.04";
 
   src = fetchFromGitHub {
     owner = "spdk";
     repo = "spdk";
     rev = "v${version}";
-    sha256 = "ApMyGamPrMalzZLbVkJlcwatiB8dOJmoxesdjkWZElk=";
+    sha256 = "sha256-Xmmgojgtt1HwTqG/1ZOJVo1BcdAH0sheu40d73OJ68w=";
   };
 
-  patches = [
-    ./spdk-dpdk-meson.patch
-    # https://review.spdk.io/gerrit/c/spdk/spdk/+/3134
-    (fetchpatch {
-      url = "https://github.com/spdk/spdk/commit/c954b5b722c5c163774d3598458ff726c48852ab.patch";
-      sha256 = "1n149hva5qxmpr0nmav10nya7zklafxi136f809clv8pag84g698";
-    })
-  ];
-
   nativeBuildInputs = [
     python3
   ];
@@ -48,14 +34,13 @@ in stdenv.mkDerivation rec {
 
   postPatch = ''
     patchShebangs .
-    base64 -d ${dpdk-compat-patch} | patch -p1
   '';
 
   configureFlags = [ "--with-dpdk=${dpdk}" ];
 
   NIX_CFLAGS_COMPILE = "-mssse3"; # Necessary to compile.
-
-  enableParallelBuilding = true;
+  # otherwise does not find strncpy when compiling
+  NIX_LDFLAGS = "-lbsd";
 
   meta = with lib; {
     description = "Set of libraries for fast user-mode storage";
diff --git a/nixpkgs/pkgs/development/libraries/speech-tools/default.nix b/nixpkgs/pkgs/development/libraries/speech-tools/default.nix
index c54b4a3721f6..8706b8789227 100644
--- a/nixpkgs/pkgs/development/libraries/speech-tools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/speech-tools/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, alsaLib, ncurses }:
+{ lib, stdenv, fetchurl, alsa-lib, ncurses }:
 
 stdenv.mkDerivation rec {
   name = "speech_tools-${version}.0";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1k2xh13miyv48gh06rgsq2vj25xwj7z6vwq9ilsn8i7ig3nrgzg4";
   };
 
-  buildInputs = [ alsaLib ncurses ];
+  buildInputs = [ alsa-lib ncurses ];
 
   preConfigure = ''
     sed -e s@/usr/bin/@@g -i $( grep -rl '/usr/bin/' . )
diff --git a/nixpkgs/pkgs/development/libraries/speechd/default.nix b/nixpkgs/pkgs/development/libraries/speechd/default.nix
index b6ec4842e077..80034a5a9cf0 100644
--- a/nixpkgs/pkgs/development/libraries/speechd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/speechd/default.nix
@@ -2,6 +2,7 @@
 , substituteAll
 , pkg-config
 , fetchurl
+, fetchpatch
 , python3Packages
 , gettext
 , itstool
@@ -14,7 +15,7 @@
 , libsndfile
 , withLibao ? true, libao
 , withPulse ? false, libpulseaudio
-, withAlsa ? false, alsaLib
+, withAlsa ? false, alsa-lib
 , withOss ? false
 , withFlite ? true, flite
 # , withFestival ? false, festival-freebsoft-utils
@@ -51,6 +52,13 @@ in stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       utillinux = util-linux;
     })
+
+    # Fix build with Glib 2.68
+    # https://github.com/brailcom/speechd/pull/462
+    (fetchpatch {
+      url = "https://github.com/brailcom/speechd/commit/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch";
+      sha256 = "8Q7tUdKKBBtgXZZnj59OcJOkrCNeBR9gkBjhKlpW0hQ=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -69,7 +77,7 @@ in stdenv.mkDerivation rec {
     libsndfile
     libao
     libpulseaudio
-    alsaLib
+    alsa-lib
     python
   ] ++ optionals withEspeak [
     espeak
diff --git a/nixpkgs/pkgs/development/libraries/spice/default.nix b/nixpkgs/pkgs/development/libraries/spice/default.nix
index 584b1e15a8e3..ff1f5eb8041a 100644
--- a/nixpkgs/pkgs/development/libraries/spice/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spice/default.nix
@@ -4,7 +4,7 @@
 , ninja
 , pkg-config
 , pixman
-, alsaLib
+, alsa-lib
 , openssl
 , libXrandr
 , libXfixes
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    alsaLib
+    alsa-lib
     cyrus_sasl
     glib
     gst_all_1.gst-plugins-base
diff --git a/nixpkgs/pkgs/development/libraries/sqlite/sqlar.nix b/nixpkgs/pkgs/development/libraries/sqlite/sqlar.nix
index 0828f2f45543..9063879b7e37 100644
--- a/nixpkgs/pkgs/development/libraries/sqlite/sqlar.nix
+++ b/nixpkgs/pkgs/development/libraries/sqlite/sqlar.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, fetchurl, fuse, zlib }:
+{ lib, stdenv, fetchurl, fuse, zlib
+, withFuse ? true }:
 
 stdenv.mkDerivation {
   pname = "sqlar";
@@ -9,12 +10,21 @@ stdenv.mkDerivation {
     sha256 = "09pikkbp93gqypn3da9zi0dzc47jyypkwc9vnmfzhmw7kpyv8nm9";
   };
 
-  buildInputs = [ fuse zlib ];
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace 'gcc' '${stdenv.cc.targetPrefix}cc'
+  '';
+
+  buildInputs = [ zlib ]
+    ++ lib.optional withFuse fuse;
 
-  buildFlags = [ "sqlar" "sqlarfs" "CFLAGS=-Wno-error" ];
+  buildFlags = [ "CFLAGS=-Wno-error" "sqlar" ]
+    ++ lib.optional withFuse "sqlarfs";
 
   installPhase = ''
-    install -D -t $out/bin sqlar sqlarfs
+    install -D -t $out/bin sqlar
+  '' + lib.optionalString withFuse ''
+    install -D -t $out/bin sqlarfs
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/sqlite/tools.nix b/nixpkgs/pkgs/development/libraries/sqlite/tools.nix
index d260c4211ec9..45bcda727edf 100644
--- a/nixpkgs/pkgs/development/libraries/sqlite/tools.nix
+++ b/nixpkgs/pkgs/development/libraries/sqlite/tools.nix
@@ -22,7 +22,7 @@ let
       inherit description homepage;
       downloadPage = http://sqlite.org/download.html;
       license = licenses.publicDomain;
-      maintainers = with maintainers; [ pesterhazy johnazoidberg ];
+      maintainers = with maintainers; [ johnazoidberg ];
       platforms = platforms.unix;
     };
   };
diff --git a/nixpkgs/pkgs/development/libraries/sqlitecpp/default.nix b/nixpkgs/pkgs/development/libraries/sqlitecpp/default.nix
index ffe5e4bbb838..60724aaa8046 100644
--- a/nixpkgs/pkgs/development/libraries/sqlitecpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sqlitecpp/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake, sqlite, cppcheck, gtest }:
 
 stdenv.mkDerivation rec {
-  pname = "SQLiteCpp";
+  pname = "sqlitecpp";
   version = "3.1.1";
 
   src = fetchFromGitHub {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    homepage = "http://srombauts.github.com/SQLiteCpp";
+    homepage = "https://srombauts.github.io/SQLiteCpp/";
     description = "C++ SQLite3 wrapper";
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/sundials/default.nix b/nixpkgs/pkgs/development/libraries/sundials/default.nix
index 3536ebd586e4..f04b22abe8c6 100644
--- a/nixpkgs/pkgs/development/libraries/sundials/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sundials/default.nix
@@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "examples" ];
 
   src = fetchurl {
-    url = "https://computation.llnl.gov/projects/${pname}/download/${pname}-${version}.tar.gz";
-    sha256 = "jW3QlP7Mu41uzEE0DsFqZfq6yC7UQVAj9tfBwjkOovM=";
+    url = "https://github.com/LLNL/sundials/releases/download/v${version}/sundials-${version}.tar.gz";
+    hash = "sha256-SNp7qoFS3bIq7RsC2C0du0+/6iKs9nY0ARqgMDoQCkM=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/tachyon/darwin.patch b/nixpkgs/pkgs/development/libraries/tachyon/darwin.patch
deleted file mode 100644
index dbede586f073..000000000000
--- a/nixpkgs/pkgs/development/libraries/tachyon/darwin.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/unix/Make-arch b/unix/Make-arch
-index 08afb85..822c4fc 100644
---- a/unix/Make-arch
-+++ b/unix/Make-arch
-@@ -924,7 +924,7 @@ macosx-thr:
- 	$(MAKE) all \
- 	"ARCH = macosx-thr" \
- 	"CC = cc" \
--	"CFLAGS = -Os -ffast-math -DBsd -DTHR -F/System/Library/Frameworks $(MISCFLAGS)" \
-+	"CFLAGS = -Os -ffast-math -DBsd -DTHR $(MISCFLAGS)" \
- 	"AR = ar" \
- 	"ARFLAGS = r" \
- 	"STRIP = strip" \
-@@ -946,7 +946,7 @@ macosx-x86-thr:
- 	$(MAKE) all \
- 	"ARCH = macosx-x86-thr" \
- 	"CC = cc" \
--	"CFLAGS = -O2 -ffast-math -DBsd -DTHR -F/System/Library/Frameworks $(MISCFLAGS)" \
-+	"CFLAGS = -O2 -ffast-math -DBsd -DTHR $(MISCFLAGS)" \
- 	"AR = ar" \
- 	"ARFLAGS = r" \
- 	"STRIP = strip" \
-@@ -957,7 +957,7 @@ macosx-x86-thr-ogl:
- 	$(MAKE) all \
- 	"ARCH = macosx-x86-thr-ogl" \
- 	"CC = cc" \
--	"CFLAGS = -O2 -ffast-math -DBsd -DTHR -I/usr/X11R6/include -F/System/Library/Frameworks $(MISCFLAGS) -DUSEOPENGL" \
-+	"CFLAGS = -O2 -ffast-math -DBsd -DTHR -I/usr/X11R6/include $(MISCFLAGS) -DUSEOPENGL" \
- 	"AR = ar" \
- 	"ARFLAGS = r" \
- 	"STRIP = strip" \
diff --git a/nixpkgs/pkgs/development/libraries/tachyon/default.nix b/nixpkgs/pkgs/development/libraries/tachyon/default.nix
index 47cebd62df65..5994aeb0a590 100644
--- a/nixpkgs/pkgs/development/libraries/tachyon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tachyon/default.nix
@@ -48,14 +48,18 @@ stdenv.mkDerivation rec {
          if stdenv.hostPlatform.system == "x686-freebsd"   then "bsd"           else
          throw "Don't know what arch to select for tachyon build";
   makeFlags = [ arch ];
+
   patches = [
     # Remove absolute paths in Make-config (and unset variables so they can be set in preBuild)
     ./no-absolute-paths.patch
     # Include new targets (like arm)
     ./make-archs.patch
-  ] ++
-  # Ensure looks for nix-provided Carbon, not system frameworks
-  lib.optional stdenv.isDarwin ./darwin.patch;
+  ];
+  postPatch = ''
+    # Ensure looks for nix-provided Carbon, not system frameworks
+    substituteInPlace unix/Make-arch \
+      --replace '-F/System/Library/Frameworks' ""
+  '';
 
   installPhase = ''
     cd ../compile/${arch}
diff --git a/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix b/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
index 44e107693c97..95afae065efe 100644
--- a/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
+++ b/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, cmake, taglib}:
+{lib, stdenv, fetchurl, cmake, taglib, zlib}:
 
 stdenv.mkDerivation rec {
   name = "taglib-extras-1.0.1";
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
     sha256 = "0cln49ws9svvvals5fzxjxlzqm0fzjfymn7yfp4jfcjz655nnm7y";
   };
   buildInputs = [ taglib ];
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake zlib ];
 
   # Workaround for upstream bug https://bugs.kde.org/show_bug.cgi?id=357181
   preConfigure = ''
diff --git a/nixpkgs/pkgs/development/libraries/taglib/default.nix b/nixpkgs/pkgs/development/libraries/taglib/default.nix
index 3fcfaa12339a..5f136a5e6b64 100644
--- a/nixpkgs/pkgs/development/libraries/taglib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/taglib/default.nix
@@ -1,39 +1,21 @@
-{ lib, stdenv, fetchurl, cmake, fetchpatch
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
 , zlib
 }:
 
 stdenv.mkDerivation rec {
   pname = "taglib";
-  version = "1.11.1";
+  version = "1.12";
 
-  src = fetchurl {
-    url = "http://taglib.org/releases/${pname}-${version}.tar.gz";
-    sha256 = "0ssjcdjv4qf9liph5ry1kngam1y7zp8fzr9xv4wzzrma22kabldn";
+  src = fetchFromGitHub {
+    owner = "taglib";
+    repo = "taglib";
+    rev = "v${version}";
+    sha256 = "sha256-omErajnYgxbflsbe6pS2KsexZcXisso0WGYnmIud7WA=";
   };
 
-  patches = [
-    (fetchpatch {
-      # https://github.com/taglib/taglib/issues/829
-      name = "CVE-2017-12678.patch";
-      url = "https://github.com/taglib/taglib/commit/eb9ded1206f18.patch";
-      sha256 = "1bvpxsvmlpi3by7myzss9kkpdkv405612n8ff68mw1ambj8h1m90";
-    })
-
-    (fetchpatch {
-      # https://github.com/taglib/taglib/pull/869
-      name = "CVE-2018-11439.patch";
-      url = "https://github.com/taglib/taglib/commit/272648ccfcccae30e002ccf34a22e075dd477278.patch";
-      sha256 = "0p397qq4anvcm0p8xs68mxa8hg6dl07chg260lc6k2929m34xv72";
-    })
-
-    (fetchpatch {
-      # many consumers of taglib have started vendoring taglib due to this bug
-      name = "fix_ogg_corruption.patch";
-      url = "https://github.com/taglib/taglib/commit/9336c82da3a04552168f208cd7a5fa4646701ea4.patch";
-      sha256 = "01wlwk4gmfxdg5hjj9jmrain7kia89z0zsdaf5gn3nibmy5bq70r";
-    })
-  ];
-
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ zlib ];
@@ -51,7 +33,6 @@ stdenv.mkDerivation rec {
       Speex, WavPack, TrueAudio, WAV, AIFF, MP4 and ASF files.
     '';
     license = with licenses; [ lgpl3 mpl11 ];
-    inherit (cmake.meta) platforms;
     maintainers = with maintainers; [ ttuegel ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/tbb/default.nix b/nixpkgs/pkgs/development/libraries/tbb/default.nix
index 2047b0d5bc2e..7aef5ba74768 100644
--- a/nixpkgs/pkgs/development/libraries/tbb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tbb/default.nix
@@ -1,22 +1,44 @@
-{ lib, stdenv, fetchFromGitHub, fixDarwinDylibNames, compiler ? if stdenv.cc.isClang then "clang" else null, stdver ? null }:
+{ lib
+, stdenv
+, fetchurl
+, fetchFromGitHub
+, fixDarwinDylibNames
+}:
 
-with lib; stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "tbb";
-  version = "2019_U9";
+  version = "2020.3";
 
   src = fetchFromGitHub {
-    owner = "01org";
-    repo = "tbb";
-    rev = version;
-    sha256 = "1a39nflw7b2n51jfp3fdprnkpgzaspzww1dckfvaigflfli9s8rj";
+    owner = "oneapi-src";
+    repo = "oneTBB";
+    rev = "v${version}";
+    sha256 = "prO2O5hd+Wz5iA0vfrqmyHFr0Ptzk64so5KpSpvuKmU=";
   };
 
-  nativeBuildInputs = optional stdenv.isDarwin fixDarwinDylibNames;
+  patches = [
+    # Fixes build with Musl.
+    (fetchurl {
+      url = "https://github.com/openembedded/meta-openembedded/raw/39185eb1d1615e919e3ae14ae63b8ed7d3e5d83f/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch";
+      sha256 = "gUfXQ9OZQ82qD6brgauBCsKdjLvyHafMc18B+KxZoYs=";
+    })
 
-  makeFlags = optional (compiler != null) "compiler=${compiler}"
-    ++ optional (stdver != null) "stdver=${stdver}";
+    # Fixes build with Musl.
+    (fetchurl {
+      url = "https://github.com/openembedded/meta-openembedded/raw/39185eb1d1615e919e3ae14ae63b8ed7d3e5d83f/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch";
+      sha256 = "fhorfqO1hHKZ61uq+yTR7eQ8KYdyLwpM3K7WpwJpV74=";
+    })
+  ];
 
-  patches = lib.optional stdenv.hostPlatform.isMusl ./glibc-struct-mallinfo.patch;
+  nativeBuildInputs = lib.optionals stdenv.isDarwin [
+    fixDarwinDylibNames
+  ];
+
+  makeFlags = lib.optionals stdenv.cc.isClang [
+    "compiler=clang"
+  ];
+
+  enableParallelBuilding = true;
 
   installPhase = ''
     runHook preInstall
@@ -29,9 +51,24 @@ with lib; stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  enableParallelBuilding = true;
+  postInstall = let
+    pcTemplate = fetchurl {
+      url = "https://github.com/oneapi-src/oneTBB/raw/master/integration/pkg-config/tbb.pc.in";
+      sha256 = "2pCad9txSpNbzac0vp/VY3x7HNySaYkbH3Rx8LK53pI=";
+    };
+  in ''
+    # Generate pkg-config file based on upstream template.
+    # It should not be necessary with tbb after 2021.2.
+    mkdir -p "$out/lib/pkgconfig"
+    substitute "${pcTemplate}" "$out/lib/pkgconfig/tbb.pc" \
+      --subst-var-by CMAKE_INSTALL_PREFIX "$out" \
+      --subst-var-by CMAKE_INSTALL_LIBDIR "lib" \
+      --subst-var-by CMAKE_INSTALL_INCLUDEDIR "include" \
+      --subst-var-by TBB_VERSION "${version}" \
+      --subst-var-by TBB_LIB_NAME "tbb"
+  '';
 
-  meta = {
+  meta = with lib; {
     description = "Intel Thread Building Blocks C++ Library";
     homepage = "http://threadingbuildingblocks.org/";
     license = licenses.asl20;
@@ -43,7 +80,7 @@ with lib; stdenv.mkDerivation rec {
       represents a higher-level, task-based parallelism that abstracts platform
       details and threading mechanisms for scalability and performance.
     '';
-    platforms = with platforms; linux ++ darwin;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice dizfer ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/tbb/glibc-struct-mallinfo.patch b/nixpkgs/pkgs/development/libraries/tbb/glibc-struct-mallinfo.patch
deleted file mode 100644
index 64056ecb1462..000000000000
--- a/nixpkgs/pkgs/development/libraries/tbb/glibc-struct-mallinfo.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From b577153a10c98f4e13405dc93ea2ab1a7b990e07 Mon Sep 17 00:00:00 2001
-From: David Huffman <storedbox+alpine@outlook.com>
-Date: Wed, 6 Jan 2016 07:09:30 -0500
-Subject: [PATCH] hard-code glibc's definition of struct mallinfo
-
----
- src/tbbmalloc/proxy.h | 20 ++++++++++++++++++++
- 1 file changed, 20 insertions(+)
-
-diff --git a/src/tbbmalloc/proxy.h b/src/tbbmalloc/proxy.h
-index 781cadc..e1ea1ae 100644
---- a/src/tbbmalloc/proxy.h
-+++ b/src/tbbmalloc/proxy.h
-@@ -32,6 +32,26 @@
- 
- #include <stddef.h>
- 
-+// The following definition was taken from /usr/include/malloc.h as provided by
-+// the glibc-devel-2.19-17.4.x86_64 package on openSUSE Leap 42.1; it is
-+// made available under the GNU Lesser General Public License v2.1 or later.
-+// See <https://www.gnu.org/licenses>.
-+//
-+// Copyright (C) 1996-2014 Free Software Foundation, Inc.
-+struct mallinfo
-+{
-+  int arena;    /* non-mmapped space allocated from system */
-+  int ordblks;  /* number of free chunks */
-+  int smblks;   /* number of fastbin blocks */
-+  int hblks;    /* number of mmapped regions */
-+  int hblkhd;   /* space in mmapped regions */
-+  int usmblks;  /* maximum total allocated space */
-+  int fsmblks;  /* space available in freed fastbin blocks */
-+  int uordblks; /* total allocated space */
-+  int fordblks; /* total free space */
-+  int keepcost; /* top-most, releasable (via malloc_trim) space */
-+};
-+
- extern "C" {
-     void * scalable_malloc(size_t size);
-     void * scalable_calloc(size_t nobj, size_t size);
--- 
-2.6.2
-
diff --git a/nixpkgs/pkgs/development/libraries/template-glib/default.nix b/nixpkgs/pkgs/development/libraries/template-glib/default.nix
index 2c89e3f433ab..c0ee2c1d3506 100644
--- a/nixpkgs/pkgs/development/libraries/template-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/template-glib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome3, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }:
 let
   version = "3.34.0";
   pname = "template-glib";
@@ -21,8 +21,9 @@ stdenv.mkDerivation {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/tepl/default.nix b/nixpkgs/pkgs/development/libraries/tepl/default.nix
index 84d50faf54e2..f561efb473c5 100644
--- a/nixpkgs/pkgs/development/libraries/tepl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tepl/default.nix
@@ -3,7 +3,7 @@
 , meson
 , ninja
 , amtk
-, gnome3
+, gnome
 , gobject-introspection
 , gtk3
 , gtksourceview4
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tepl";
-  version = "5.0.1";
+  version = "6.00.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sSdJZ2CfUkSEs4d1+p7LKWxtZhaqvQUvKGM5oomRKAQ=";
+    sha256 = "0qvs7s86gqyyrzi0r5fbrj8zczlgv8xhdjswgbgc1afwjnl9fqx8";
   };
 
   nativeBuildInputs = [
@@ -46,7 +46,10 @@ stdenv.mkDerivation rec {
   # correctly installed or GVfs metadata are not supported on this platform. In
   # the latter case, you should configure Tepl with --disable-gvfs-metadata.
 
-  passthru.updateScript = gnome3.updateScript { packageName = pname; };
+  passthru.updateScript = gnome.updateScript {
+    packageName = pname;
+    versionPolicy = "odd-unstable";
+  };
 
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Projects/Tepl";
diff --git a/nixpkgs/pkgs/development/libraries/tk/generic.nix b/nixpkgs/pkgs/development/libraries/tk/generic.nix
index 57dc3dac2d09..ecb3840b2de3 100644
--- a/nixpkgs/pkgs/development/libraries/tk/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/tk/generic.nix
@@ -16,6 +16,12 @@ stdenv.mkDerivation {
     cd unix
   '';
 
+  postPatch = ''
+    for file in $(find library/demos/. -type f ! -name "*.*"); do
+      substituteInPlace $file --replace "exec wish" "exec $out/bin/wish"
+    done
+  '';
+
   postInstall = ''
     ln -s $out/bin/wish* $out/bin/wish
     cp ../{unix,generic}/*.h $out/include
diff --git a/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix b/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
index c93ec8dccf9b..08c989b799b6 100644
--- a/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
+++ b/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, libxml2, gobject-introspection, gnome3 }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, libxml2, gobject-introspection, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "totem-pl-parser";
@@ -10,8 +10,9 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
index 5b4c1d195ece..c571e2238447 100644
--- a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
@@ -20,7 +20,7 @@
 , exempi
 , giflib
 , glib
-, gnome3
+, gnome
 , gst_all_1
 , icu
 , json-glib
@@ -48,11 +48,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tracker-miners";
-  version = "3.0.4";
+  version = "3.1.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-E877xx1S93RvPTfQQdjFvBM2pA/13ZK1Nw6GUMJqiY4=";
+    sha256 = "sha256-5NNhNRsVbyhipSRBX76/BTnHgc2HxmKWYvAmW0gDuLg=";
   };
 
   nativeBuildInputs = [
@@ -122,7 +122,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/libraries/tracker/default.nix b/nixpkgs/pkgs/development/libraries/tracker/default.nix
index ab769312c36f..0ee5e0fa5672 100644
--- a/nixpkgs/pkgs/development/libraries/tracker/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tracker/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchurl
+, fetchpatch
 , gettext
 , meson
 , ninja
@@ -17,7 +18,7 @@
 , sqlite
 , libxslt
 , libstemmer
-, gnome3
+, gnome
 , icu
 , libuuid
 , libsoup
@@ -27,15 +28,15 @@
 , substituteAll
 }:
 
-stdenv.mkDerivation (rec {
+stdenv.mkDerivation rec {
   pname = "tracker";
-  version = "3.0.3";
+  version = "3.1.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-b1yEqzvh7aUgUBsq7XIhYWoM8VKRDFN3V7U4vAXv/KM=";
+    sha256 = "sha256-Q3bi6YRUBm9E96JC5FuZs7/kwDtn+rGauw7Vhsp0iuc=";
   };
 
   patches = [
@@ -43,6 +44,17 @@ stdenv.mkDerivation (rec {
       src = ./fix-paths.patch;
       inherit asciidoc;
     })
+
+    # Add missing build target dependencies to fix parallel building of docs.
+    # TODO: Upstream this.
+    ./fix-docs.patch
+
+    # Fix 32bit datetime issue, use this upstream patch until 3.1.2 lands
+    # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/401
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/tracker/merge_requests/401.patch";
+      sha256 = "QEf+ciGkkCzanmtGO0aig6nAxd+NxjvuNi4RbNOwZEA=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -74,22 +86,23 @@ stdenv.mkDerivation (rec {
     libstemmer
   ];
 
-  checkInputs = [
-    python3.pkgs.pygobject3
+  checkInputs = with python3.pkgs; [
+    pygobject3
+    tappy
   ];
 
   mesonFlags = [
     "-Ddocs=true"
   ];
 
-  # https://gitlab.gnome.org/GNOME/tracker/-/issues/292#note_1075369
-  doCheck = !stdenv.isi686;
+  doCheck = true;
 
   postPatch = ''
     patchShebangs utils/g-ir-merge/g-ir-merge
     patchShebangs utils/data-generators/cc/generate
     patchShebangs tests/functional-tests/test-runner.sh.in
     patchShebangs tests/functional-tests/*.py
+    patchShebangs examples/python/endpoint.py
   '';
 
   preCheck = ''
@@ -120,7 +133,7 @@ stdenv.mkDerivation (rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
@@ -134,8 +147,3 @@ stdenv.mkDerivation (rec {
     platforms = platforms.linux;
   };
 }
-  // {
-    # TMP: fatal error: libtracker-sparql/tracker-sparql-enum-types.h: No such file or directory
-    enableParallelBuilding = false;
-  }
-)
diff --git a/nixpkgs/pkgs/development/libraries/tracker/fix-docs.patch b/nixpkgs/pkgs/development/libraries/tracker/fix-docs.patch
new file mode 100644
index 000000000000..a6ff84cda3e5
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/tracker/fix-docs.patch
@@ -0,0 +1,28 @@
+diff --git a/docs/reference/libtracker-sparql/examples/meson.build b/docs/reference/libtracker-sparql/examples/meson.build
+index 1cb1d9f3f..313c72345 100644
+--- a/docs/reference/libtracker-sparql/examples/meson.build
++++ b/docs/reference/libtracker-sparql/examples/meson.build
+@@ -1,20 +1,20 @@
+ executable(
+   'readonly-example',
+   'readonly-example.c',
+-  dependencies: tracker_sparql_dep,
++  dependencies: [tracker_common_dep, tracker_sparql_dep],
+   build_by_default: true
+ )
+ 
+ executable(
+   'writeonly-example',
+   'writeonly-example.c',
+-  dependencies: tracker_sparql_dep,
++  dependencies: [tracker_common_dep, tracker_sparql_dep],
+   build_by_default: true
+ )
+ 
+ executable(
+   'writeonly-with-blank-nodes-example',
+   'writeonly-with-blank-nodes-example.c',
+-  dependencies: tracker_sparql_dep,
++  dependencies: [tracker_common_dep, tracker_sparql_dep],
+   build_by_default: true
+ )
diff --git a/nixpkgs/pkgs/development/libraries/ubus/default.nix b/nixpkgs/pkgs/development/libraries/ubus/default.nix
index db947d373a2d..4bbec39291a9 100644
--- a/nixpkgs/pkgs/development/libraries/ubus/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ubus/default.nix
@@ -2,22 +2,22 @@
 
 stdenv.mkDerivation {
   pname = "ubus";
-  version = "unstable-2020-01-05";
+  version = "unstable-2021-02-15";
 
   src = fetchgit {
     url = "https://git.openwrt.org/project/ubus.git";
-    rev = "d35df8adda873dc75d876f72b78e84db8cfa72ee";
-    sha256 = "1ksrih5vfyixaafzsrs6ab88qw34d0197wvw201jl5p1fc7drgn4";
+    rev = "2537be01858710e714c329153760c64fe3f8a73e";
+    sha256 = "03ljxsn4w87bfrilccxhrkzqmd30hy6ihkvsinw0i3l7rpp5m4a7";
   };
 
-  cmakeFlags = [ "-D BUILD_LUA:BOOL=OFF" ];
+  cmakeFlags = [ "-DBUILD_LUA=OFF" ];
   buildInputs = [ libubox libjson ];
   nativeBuildInputs = [ cmake ];
 
   meta = with lib; {
     description = "OpenWrt system message/RPC bus";
     homepage = "https://git.openwrt.org/?p=project/ubus.git;a=summary";
-    license = licenses.lgpl21;
+    license = licenses.lgpl21Only;
     platforms = platforms.all;
     maintainers = with maintainers; [ petabyteboy ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/uci/default.nix b/nixpkgs/pkgs/development/libraries/uci/default.nix
index 0a5af8b907b8..49aba6cd1831 100644
--- a/nixpkgs/pkgs/development/libraries/uci/default.nix
+++ b/nixpkgs/pkgs/development/libraries/uci/default.nix
@@ -2,23 +2,23 @@
 
 stdenv.mkDerivation {
   pname = "uci";
-  version = "unstable-2020-04-27";
+  version = "unstable-2021-04-14";
 
   src = fetchgit {
     url = "https://git.openwrt.org/project/uci.git";
-    rev = "ec8d3233948603485e1b97384113fac9f1bab5d6";
-    sha256 = "0p765l8znvwhzhgkq7dp36w62k5rmzav59vgdqmqq1bjmlz1yyi6";
+    rev = "4b3db1179747b6a6779029407984bacef851325c";
+    sha256 = "1zflxazazzkrycpflzfg420kzp7kgy4dlz85cms279vk07dc1d52";
   };
 
   hardeningDisable = [ "all" ];
-  cmakeFlags = [ "-D BUILD_LUA:BOOL=OFF" ];
+  cmakeFlags = [ "-DBUILD_LUA=OFF" ];
   buildInputs = [ libubox ];
   nativeBuildInputs = [ cmake pkg-config ];
 
   meta = with lib; {
     description = "OpenWrt Unified Configuration Interface";
     homepage = "https://git.openwrt.org/?p=project/uci.git;a=summary";
-    license = licenses.lgpl21;
+    license = licenses.lgpl21Only;
     platforms = platforms.all;
     maintainers = with maintainers; [ petabyteboy ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/ucx/default.nix b/nixpkgs/pkgs/development/libraries/ucx/default.nix
index fae81276878e..872e7fbc4f21 100644
--- a/nixpkgs/pkgs/development/libraries/ucx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ucx/default.nix
@@ -2,17 +2,15 @@
 , numactl, rdma-core, libbfd, libiberty, perl, zlib
 }:
 
-let
-  version = "1.9.0";
-
-in stdenv.mkDerivation {
-  name = "ucx-${version}";
+stdenv.mkDerivation rec {
+  pname = "ucx";
+  version = "1.10.1";
 
   src = fetchFromGitHub {
     owner = "openucx";
     repo = "ucx";
     rev = "v${version}";
-    sha256 = "0i0ji5ivzxjqh3ys1m517ghw3am7cw1hvf40ma7hsq3wznsyx5s1";
+    sha256 = "1jl7wrmcpf6lakpi1gvjcs18cy0mmwgsv5wdd80zyl41cpd8gm8d";
   };
 
   nativeBuildInputs = [ autoreconfHook doxygen ];
diff --git a/nixpkgs/pkgs/development/libraries/umockdev/default.nix b/nixpkgs/pkgs/development/libraries/umockdev/default.nix
index d27adb2a061d..2dac161bb4a4 100644
--- a/nixpkgs/pkgs/development/libraries/umockdev/default.nix
+++ b/nixpkgs/pkgs/development/libraries/umockdev/default.nix
@@ -1,6 +1,8 @@
-{ lib, stdenv
-, docbook_xsl
+{ stdenv
+, lib
+, docbook-xsl-nons
 , fetchurl
+, fetchpatch
 , glib
 , gobject-introspection
 , gtk-doc
@@ -19,21 +21,23 @@ stdenv.mkDerivation rec {
   pname = "umockdev";
   version = "0.15.4";
 
-  outputs = [ "bin" "out" "dev" "doc" ];
+  outputs = [ "bin" "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "https://github.com/martinpitt/umockdev/releases/download/${version}/${pname}-${version}.tar.xz";
     sha256 = "09k8jwvsphd97hcagf0zaf0hwzlzq2r8jfgbmvj55k7ylrg8hjxg";
   };
 
-  mesonFlags = [
-    "-Dgtk_doc=true"
+  patches = [
+    # Fix build with Vala 0.52
+    (fetchpatch {
+      url = "https://github.com/martinpitt/umockdev/commit/a236f0b55fbb6ff50a6429da9d404703d6637d94.patch";
+      sha256 = "sZs9Ove1r7te/a9vmWUmFetLVhyzhHmx7ijhkK/2S5o=";
+    })
   ];
 
-  buildInputs = [ glib systemd libgudev ];
-
   nativeBuildInputs = [
-    docbook_xsl
+    docbook-xsl-nons
     gobject-introspection
     gtk-doc
     meson
@@ -42,20 +46,27 @@ stdenv.mkDerivation rec {
     vala
   ];
 
-  checkInputs = [ python3 which usbutils ];
+  buildInputs = [
+    glib
+    systemd
+    libgudev
+  ];
+
+  checkInputs = [
+    python3
+    which
+    usbutils
+  ];
 
-  enableParallelBuilding = true;
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
 
   doCheck = true;
 
-  postInstall = ''
-    mkdir -p $doc/share/doc/umockdev/
-    mv docs/reference $doc/share/doc/umockdev/
-  '';
-
   meta = with lib; {
     description = "Mock hardware devices for creating unit tests";
-    license = licenses.lgpl2;
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ flokli ];
     platforms = with platforms; linux;
   };
diff --git a/nixpkgs/pkgs/development/libraries/usrsctp/default.nix b/nixpkgs/pkgs/development/libraries/usrsctp/default.nix
new file mode 100644
index 000000000000..64b1debc0ce5
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/usrsctp/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, lib, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "usrsctp";
+  version = "0.9.5.0";
+
+  src = fetchFromGitHub {
+    owner = "sctplab";
+    repo = "usrsctp";
+    rev = version;
+    sha256 = "10ndzkip8blgkw572n3dicl6mgjaa7kygwn3vls80liq92vf1sa9";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    homepage = "https://github.com/sctplab/usrsctp";
+    description = "A portable SCTP userland stack";
+    maintainers = with maintainers; [ misuzu ];
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/v8/default.nix b/nixpkgs/pkgs/development/libraries/v8/default.nix
index d513e01b7a35..7c463aa01228 100644
--- a/nixpkgs/pkgs/development/libraries/v8/default.nix
+++ b/nixpkgs/pkgs/development/libraries/v8/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchgit, fetchFromGitHub
-, gn, ninja, python, glib, pkg-config, icu
+, gn, ninja, python, pythonPackages, glib, pkg-config, icu
 , xcbuild, darwin
 , fetchpatch
 }:
@@ -55,6 +55,11 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   patches = [
+    # Remove unrecognized clang debug flags
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/saiarcot895/chromium-ubuntu-build/663dbfc492fd2f8ba28d9af40fb3b1327e6aa56e/debian/patches/revert-Xclang-instcombine-lower-dbg-declare.patch";
+      sha256 = "07qp4bjgbwbdrzqslvl2bgbzr3v97b9isbp0539x3lc8cy3h02g1";
+    })
     ./darwin.patch
     ./gcc_arm.patch  # Fix building zlib with gcc on aarch64, from https://gist.github.com/Adenilson/d973b6fd96c7709d33ddf08cf1dcb149
   ];
@@ -78,6 +83,13 @@ stdenv.mkDerivation rec {
   postPatch = lib.optionalString stdenv.isAarch64 ''
     substituteInPlace build/toolchain/linux/BUILD.gn \
       --replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
+  '' + lib.optionalString stdenv.isDarwin ''
+    substituteInPlace build/config/compiler/compiler.gni \
+      --replace 'strip_absolute_paths_from_debug_symbols = true' \
+                'strip_absolute_paths_from_debug_symbols = false'
+    substituteInPlace build/config/compiler/BUILD.gn \
+      --replace 'current_toolchain == host_toolchain || !use_xcode_clang' \
+                'false'
   '';
 
   gnFlags = [
@@ -85,6 +97,7 @@ stdenv.mkDerivation rec {
     "is_clang=${lib.boolToString stdenv.cc.isClang}"
     "use_sysroot=false"
     # "use_system_icu=true"
+    "clang_use_chrome_plugins=false"
     "is_component_build=false"
     "v8_use_external_startup_data=false"
     "v8_monolithic=true"
@@ -93,16 +106,25 @@ stdenv.mkDerivation rec {
     "treat_warnings_as_errors=false"
     "v8_enable_i18n_support=true"
     "use_gold=false"
-    "use_system_xcode=true"
+    "init_stack_vars=false"
     # ''custom_toolchain="//build/toolchain/linux/unbundle:default"''
     ''host_toolchain="//build/toolchain/linux/unbundle:default"''
     ''v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"''
   ] ++ lib.optional stdenv.cc.isClang ''clang_base_path="${stdenv.cc}"'';
 
   NIX_CFLAGS_COMPILE = "-O2";
-
-  nativeBuildInputs = [ gn ninja pkg-config python ]
-    ++ lib.optionals stdenv.isDarwin [ xcbuild darwin.DarwinTools ];
+  FORCE_MAC_SDK_MIN = stdenv.targetPlatform.sdkVer or "10.12";
+
+  nativeBuildInputs = [
+    gn
+    ninja
+    pkg-config
+    python
+  ] ++ lib.optionals stdenv.isDarwin [
+    xcbuild
+    darwin.DarwinTools
+    pythonPackages.setuptools
+  ];
   buildInputs = [ glib icu ];
 
   ninjaFlags = [ ":d8" "v8_monolith" ];
diff --git a/nixpkgs/pkgs/development/libraries/vapoursynth/plugin-interface.nix b/nixpkgs/pkgs/development/libraries/vapoursynth/plugin-interface.nix
index 55b2b03c893e..95df3c97747f 100644
--- a/nixpkgs/pkgs/development/libraries/vapoursynth/plugin-interface.nix
+++ b/nixpkgs/pkgs/development/libraries/vapoursynth/plugin-interface.nix
@@ -8,10 +8,11 @@ plugins: let
 
   getRecursivePropagatedBuildInputs = pkgs: lib.flatten
     (map
-      (pkg: pkg.propagatedBuildInputs ++ (getRecursivePropagatedBuildInputs pkg.propagatedBuildInputs))
+      (pkg: let cleanPropagatedBuildInputs = lib.filter lib.isDerivation pkg.propagatedBuildInputs;
+        in cleanPropagatedBuildInputs ++ (getRecursivePropagatedBuildInputs cleanPropagatedBuildInputs))
       pkgs);
 
-  deepPlugins = plugins ++ (getRecursivePropagatedBuildInputs plugins);
+  deepPlugins = lib.unique (plugins ++ (getRecursivePropagatedBuildInputs plugins));
 
   pluginsEnv = buildEnv {
     name = "vapoursynth-plugins-env";
diff --git a/nixpkgs/pkgs/development/libraries/vte/2.90.nix b/nixpkgs/pkgs/development/libraries/vte/2.90.nix
index 4a9e4d8a66c9..55ef86c88a0e 100644
--- a/nixpkgs/pkgs/development/libraries/vte/2.90.nix
+++ b/nixpkgs/pkgs/development/libraries/vte/2.90.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       the system's terminfo database.
     '';
     license = licenses.lgpl2;
-    maintainers = with maintainers; [ astsmtl antono lethalman ];
+    maintainers = with maintainers; [ astsmtl antono ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/vte/default.nix b/nixpkgs/pkgs/development/libraries/vte/default.nix
index a17b164445f3..c3631cccbe01 100644
--- a/nixpkgs/pkgs/development/libraries/vte/default.nix
+++ b/nixpkgs/pkgs/development/libraries/vte/default.nix
@@ -6,11 +6,12 @@
 , pkg-config
 , meson
 , ninja
-, gnome3
+, gnome
 , glib
 , gtk3
 , gobject-introspection
 , vala
+, python3
 , libxml2
 , gnutls
 , gperf
@@ -24,18 +25,25 @@
 
 stdenv.mkDerivation rec {
   pname = "vte";
-  version = "0.62.2";
+  version = "0.64.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-sDALvPDALfWBKhCjy45P/3I7q5LAjJegqQwWfPVDr/A=";
+    sha256 = "sha256-EvtBqf+OA8XxcRtGVgkQpLmzECrsPp52Cc7vTfqYqio=";
   };
 
-  passthru = {
-    updateScript = gnome3.updateScript { packageName = pname; };
-  };
+  patches = [
+    # VTE needs a small patch to work with musl:
+    # https://gitlab.gnome.org/GNOME/vte/issues/72
+    # Taken from https://git.alpinelinux.org/aports/tree/community/vte3
+    (fetchpatch {
+      name = "0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
+      url = "https://git.alpinelinux.org/aports/plain/community/vte3/fix-W_EXITCODE.patch?id=4d35c076ce77bfac7655f60c4c3e4c86933ab7dd";
+      sha256 = "FkVyhsM0mRUzZmS2Gh172oqwcfXv6PyD6IEgjBhy2uU=";
+    })
+  ];
 
   nativeBuildInputs = [
     gettext
@@ -46,6 +54,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
+    python3
   ];
 
   buildInputs = [
@@ -64,22 +73,20 @@ stdenv.mkDerivation rec {
     pango
   ];
 
-  patches =
-    # VTE needs a small patch to work with musl:
-    # https://gitlab.gnome.org/GNOME/vte/issues/72
-    lib.optional
-      stdenv.hostPlatform.isMusl
-      (fetchpatch {
-            name = "0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
-            url = "https://gitlab.gnome.org/GNOME/vte/uploads/c334f767f5d605e0f30ecaa2a0e4d226/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
-            sha256 = "1ii9db9i5l3fy2alxz7bjfsgjs3lappnlx339dvxbi2141zknf5r";
-      });
-
   postPatch = ''
     patchShebangs perf/*
     patchShebangs src/box_drawing_generate.sh
+    patchShebangs src/parser-seq.py
+    patchShebangs src/modes.py
   '';
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      versionPolicy = "odd-unstable";
+    };
+  };
+
   meta = with lib; {
     homepage = "https://www.gnome.org/";
     description = "A library implementing a terminal emulator widget for GTK";
@@ -91,8 +98,8 @@ stdenv.mkDerivation rec {
       character set conversion, as well as emulating any terminal known to
       the system's terminfo database.
     '';
-    license = licenses.lgpl2;
-    maintainers = with maintainers; [ astsmtl antono lethalman ] ++ teams.gnome.members;
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ astsmtl antono ] ++ teams.gnome.members;
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/waffle/default.nix b/nixpkgs/pkgs/development/libraries/waffle/default.nix
index dd783036f230..e6d8a98b5335 100644
--- a/nixpkgs/pkgs/development/libraries/waffle/default.nix
+++ b/nixpkgs/pkgs/development/libraries/waffle/default.nix
@@ -1,36 +1,34 @@
 { stdenv
 , fetchFromGitLab
 , lib
+, cmake
 , meson
 , ninja
+, bash-completion
 , libGL
-, libglvnd ? null
+, libglvnd
 , makeWrapper
 , pkg-config
 , python3
-, x11Support ? true, libxcb ? null, libX11 ? null
-, waylandSupport ? true, wayland ? null
-, useGbm ? true, mesa ? null, libudev ? null
+, x11Support ? true, libxcb, libX11
+, waylandSupport ? true, wayland, wayland-protocols
+, useGbm ? true, mesa, udev
 }:
 
-assert x11Support -> (libxcb != null && libX11 != null);
-assert waylandSupport -> wayland != null;
-assert useGbm -> (mesa != null && libudev != null);
-assert with stdenv.hostPlatform; isUnix && !isDarwin -> libglvnd != null;
-
 stdenv.mkDerivation rec {
   pname = "waffle";
-  version = "1.6.1";
+  version = "1.7.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "mesa";
     repo = "waffle";
     rev = "v${version}";
-    sha256 = "0s8gislmhccfa04zsj1yqk97lscbbnmxirr2zm4q3p8ybmpfhpqr";
+    sha256 = "iY+dAgXutD/uDFocwd9QXjq502IOsk+3RQMA2S/CMV4=";
   };
 
   buildInputs = [
+    bash-completion
     libGL
   ] ++ lib.optionals (with stdenv.hostPlatform; isUnix && !isDarwin) [
     libglvnd
@@ -39,19 +37,25 @@ stdenv.mkDerivation rec {
     libxcb
   ] ++ lib.optionals waylandSupport [
     wayland
+    wayland-protocols
   ] ++ lib.optionals useGbm [
+    udev
     mesa
-    libudev
   ];
 
+  dontUseCmakeConfigure = true;
+
   nativeBuildInputs = [
+    cmake
+    makeWrapper
     meson
     ninja
-    makeWrapper
     pkg-config
     python3
   ];
 
+  PKG_CONFIG_BASH_COMPLETION_COMPLETIONSDIR= "${placeholder "out"}/share/bash-completion/completions";
+
   postInstall = ''
     wrapProgram $out/bin/wflinfo \
       --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libGL libglvnd ]}
diff --git a/nixpkgs/pkgs/development/libraries/wasilibc/default.nix b/nixpkgs/pkgs/development/libraries/wasilibc/default.nix
index f8142f046b74..56ed7367b2b2 100644
--- a/nixpkgs/pkgs/development/libraries/wasilibc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wasilibc/default.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchFromGitHub, lib }:
 
 stdenv.mkDerivation {
-  name = "wasilibc-20190712";
+  pname = "wasilibc";
+  version = "20190712";
   src = fetchFromGitHub {
     owner = "CraneStation";
     repo = "wasi-libc";
diff --git a/nixpkgs/pkgs/development/libraries/wayland/default.nix b/nixpkgs/pkgs/development/libraries/wayland/default.nix
index 07671ddebddc..08741c29dd6d 100644
--- a/nixpkgs/pkgs/development/libraries/wayland/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wayland/default.nix
@@ -1,11 +1,12 @@
 { lib
 , stdenv
 , fetchurl
+, fetchpatch
 , substituteAll
 , meson
 , pkg-config
 , ninja
-, wayland
+, wayland-scanner
 , expat
 , libxml2
 , withLibraries ? stdenv.isLinux
@@ -37,6 +38,11 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
+    # Picked from upstream 'main' branch for Darwin support.
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/wayland/wayland/-/commit/f452e41264387dee4fd737cbf1af58b34b53941b.patch";
+      sha256 = "00mk32a01vgn31sm3wk4p8mfwvqv3xv02rxvdj1ygnzgb1ac62r7";
+    })
     (substituteAll {
       src = ./0001-add-placeholder-for-nm.patch;
       nm = "${stdenv.cc.targetPrefix}nm";
@@ -64,7 +70,7 @@ stdenv.mkDerivation rec {
     pkg-config
     ninja
   ] ++ lib.optionals isCross [
-    wayland # For wayland-scanner during the build
+    wayland-scanner
   ] ++ lib.optionals withDocumentation [
     (graphviz-nox.override { pango = null; }) # To avoid an infinite recursion
     doxygen
@@ -85,6 +91,18 @@ stdenv.mkDerivation rec {
     docbook_xml_dtd_42
   ];
 
+  postFixup = ''
+    # The pkg-config file is required for cross-compilation:
+    mkdir -p $bin/lib/pkgconfig/
+    cat <<EOF > $bin/lib/pkgconfig/wayland-scanner.pc
+    wayland_scanner=$bin/bin/wayland-scanner
+
+    Name: Wayland Scanner
+    Description: Wayland scanner
+    Version: ${version}
+    EOF
+  '';
+
   meta = with lib; {
     description = "Core Wayland window system code and protocol";
     longDescription = ''
@@ -99,6 +117,8 @@ stdenv.mkDerivation rec {
     license = licenses.mit; # Expat version
     platforms = if withLibraries then platforms.linux else platforms.unix;
     maintainers = with maintainers; [ primeos codyopel qyliss ];
+    # big sur doesn't support gcc stdenv and wayland doesn't build with clang
+    broken = stdenv.isDarwin;
   };
 
   passthru.version = version;
diff --git a/nixpkgs/pkgs/development/libraries/wayland/protocols.nix b/nixpkgs/pkgs/development/libraries/wayland/protocols.nix
index 23258aff3e93..8a2b05aa4dff 100644
--- a/nixpkgs/pkgs/development/libraries/wayland/protocols.nix
+++ b/nixpkgs/pkgs/development/libraries/wayland/protocols.nix
@@ -1,19 +1,15 @@
-{ lib, stdenv, fetchurl, pkg-config
-, wayland
-}:
+{ lib, stdenv, fetchurl, wayland-scanner }:
 
 stdenv.mkDerivation rec {
   pname = "wayland-protocols";
-  version = "1.20";
+  version = "1.21";
 
   src = fetchurl {
     url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "1rsdgvkkvxs3cjhpl6agvbkm53vm7k8rg127j9y2vn33m2hvg0lp";
+    sha256 = "1rfdlkzz67qsb955zqb8jbw3m22pl6ppvrvfq8bqiqcb5n24b6dr";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ wayland ];
+  nativeBuildInputs = [ wayland-scanner ];
 
   meta = {
     description = "Wayland protocol extensions";
diff --git a/nixpkgs/pkgs/development/libraries/webkitgtk/428774.patch b/nixpkgs/pkgs/development/libraries/webkitgtk/428774.patch
new file mode 100644
index 000000000000..85da185dc4e4
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/webkitgtk/428774.patch
@@ -0,0 +1,86 @@
+diff -aru a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp
+--- a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp	2021-02-26 04:57:15.000000000 -0500
++++ b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp	2021-05-16 14:45:32.000000000 -0400
+@@ -87,7 +87,7 @@
+     if (!m_store.createSharedMemoryHandle(handle))
+         return;
+ 
+-#if OS(DARWIN) || OS(WINDOWS)
++#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
+     uint64_t dataSize = handle.size();
+ #else
+     uint64_t dataSize = 0;
+diff -aru a/Source/WebKit/Platform/IPC/IPCSemaphore.cpp b/Source/WebKit/Platform/IPC/IPCSemaphore.cpp
+--- a/Source/WebKit/Platform/IPC/IPCSemaphore.cpp	2021-02-26 04:57:15.000000000 -0500
++++ b/Source/WebKit/Platform/IPC/IPCSemaphore.cpp	2021-05-16 15:54:53.000000000 -0400
+@@ -26,8 +26,6 @@
+ #include "config.h"
+ #include "IPCSemaphore.h"
+ 
+-#if !OS(DARWIN)
+-
+ namespace IPC {
+ 
+ Semaphore::Semaphore() = default;
+@@ -46,5 +44,3 @@
+ }
+ 
+ }
+-
+-#endif
+diff -aru a/Source/WebKit/Platform/IPC/IPCSemaphore.h b/Source/WebKit/Platform/IPC/IPCSemaphore.h
+--- a/Source/WebKit/Platform/IPC/IPCSemaphore.h	2021-02-26 04:57:15.000000000 -0500
++++ b/Source/WebKit/Platform/IPC/IPCSemaphore.h	2021-05-16 14:46:13.000000000 -0400
+@@ -29,7 +29,7 @@
+ #include <wtf/Optional.h>
+ #include <wtf/Seconds.h>
+ 
+-#if OS(DARWIN)
++#if PLATFORM(COCOA)
+ #include <mach/semaphore.h>
+ #include <wtf/MachSendRight.h>
+ #endif
+@@ -51,7 +51,7 @@
+     void encode(Encoder&) const;
+     static Optional<Semaphore> decode(Decoder&);
+ 
+-#if OS(DARWIN)
++#if PLATFORM(COCOA)
+     explicit Semaphore(MachSendRight&&);
+ 
+     void signal();
+@@ -64,7 +64,7 @@
+ #endif
+ 
+ private:
+-#if OS(DARWIN)
++#if PLATFORM(COCOA)
+     void destroy();
+     MachSendRight m_sendRight;
+     semaphore_t m_semaphore { SEMAPHORE_NULL };
+Only in b/Source/WebKit/Platform/IPC: IPCSemaphore.h.orig
+diff -aru a/Source/WebKit/Platform/SharedMemory.h b/Source/WebKit/Platform/SharedMemory.h
+--- a/Source/WebKit/Platform/SharedMemory.h	2021-02-26 04:57:15.000000000 -0500
++++ b/Source/WebKit/Platform/SharedMemory.h	2021-05-16 14:45:32.000000000 -0400
+@@ -75,7 +75,7 @@
+ 
+         bool isNull() const;
+ 
+-#if OS(DARWIN) || OS(WINDOWS)
++#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
+         size_t size() const { return m_size; }
+ #endif
+ 
+diff -aru a/Source/WebKit/UIProcess/VisitedLinkStore.cpp b/Source/WebKit/UIProcess/VisitedLinkStore.cpp
+--- a/Source/WebKit/UIProcess/VisitedLinkStore.cpp	2021-02-26 04:57:16.000000000 -0500
++++ b/Source/WebKit/UIProcess/VisitedLinkStore.cpp	2021-05-16 14:45:32.000000000 -0400
+@@ -119,7 +119,7 @@
+         return;
+ 
+     // FIXME: Get the actual size of data being sent from m_linkHashStore and send it in the SharedMemory::IPCHandle object.
+-#if OS(DARWIN) || OS(WINDOWS)
++#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
+     uint64_t dataSize = handle.size();
+ #else
+     uint64_t dataSize = 0;
+Only in b/Source/WebKit/WebProcess/WebPage/CoordinatedGraphics: DrawingAreaCoordinatedGraphics.cpp.orig
diff --git a/nixpkgs/pkgs/development/libraries/webkitgtk/default.nix b/nixpkgs/pkgs/development/libraries/webkitgtk/default.nix
index 84a9e2a1db77..40f51d6f48a3 100644
--- a/nixpkgs/pkgs/development/libraries/webkitgtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/webkitgtk/default.nix
@@ -1,5 +1,7 @@
 { lib, stdenv
+, runCommandNoCC
 , fetchurl
+, fetchpatch
 , perl
 , python3
 , ruby
@@ -34,6 +36,7 @@
 , libidn
 , libedit
 , readline
+, sdk
 , libGL
 , libGLU
 , mesa
@@ -53,15 +56,14 @@
 , xdg-dbus-proxy
 , substituteAll
 , glib
+, addOpenGLRunpath
 }:
 
 assert enableGeoLocation -> geoclue2 != null;
 
-with lib;
-
 stdenv.mkDerivation rec {
   pname = "webkitgtk";
-  version = "2.32.0";
+  version = "2.32.1";
 
   outputs = [ "out" "dev" ];
 
@@ -69,15 +71,42 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://webkitgtk.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "1w3b0w8izp0i070grhv19j631sdcd0mcqnjnax13k8mdx7dg8zcx";
+    sha256 = "05v9hgpkc6mi2klrd8nqql1n8xzq8rgdz3hvyy369xkhgwqifq8k";
   };
 
-  patches = optionals stdenv.isLinux [
+  patches = lib.optionals stdenv.isLinux [
     (substituteAll {
       src = ./fix-bubblewrap-paths.patch;
       inherit (builtins) storeDir;
+      inherit (addOpenGLRunpath) driverLink;
     })
     ./libglvnd-headers.patch
+  ] ++ lib.optionals stdenv.isDarwin [
+    (fetchpatch {
+      url = "https://github.com/WebKit/WebKit/commit/94cdcd289b993ed4d39c17d4b8b90db7c81a9b10.diff";
+      sha256 = "sha256-ywrTEjf3ATqI0Vvs60TeAZ+m58kCibum4DamRWrQfaA=";
+      excludes = [ "Source/WebKit/ChangeLog" ];
+    })
+
+    # https://bugs.webkit.org/show_bug.cgi?id=225856
+    (fetchpatch {
+      url = "https://bug-225856-attachments.webkit.org/attachment.cgi?id=428797";
+      sha256 = "sha256-ffo5p2EyyjXe3DxdrvAcDKqxwnoqHtYBtWod+1fOjMU=";
+      excludes = [ "Source/WebCore/ChangeLog" ];
+    })
+
+    # https://bugs.webkit.org/show_bug.cgi?id=225850
+    ./428774.patch # https://bug-225850-attachments.webkit.org/attachment.cgi?id=428774
+    (fetchpatch {
+      url = "https://bug-225850-attachments.webkit.org/attachment.cgi?id=428776";
+      sha256 = "sha256-ryNRYMsk72SL0lNdh6eaAdDV3OT8KEqVq1H0j581jmQ=";
+      excludes = [ "Source/WTF/ChangeLog" ];
+    })
+    (fetchpatch {
+      url = "https://bug-225850-attachments.webkit.org/attachment.cgi?id=428778";
+      sha256 = "sha256-78iP+T2vaIufO8TmIPO/tNDgmBgzlDzalklrOPrtUeo=";
+      excludes = [ "Source/WebKit/ChangeLog" ];
+    })
   ];
 
   preConfigure = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
@@ -85,7 +114,7 @@ stdenv.mkDerivation rec {
     # pick up the wrong gettext. TODO: Find a better solution for
     # this, maybe make cmake not look up executables in
     # CMAKE_PREFIX_PATH.
-    cmakeFlags+=" -DCMAKE_IGNORE_PATH=${getBin gettext}/bin"
+    cmakeFlags+=" -DCMAKE_IGNORE_PATH=${lib.getBin gettext}/bin"
   '';
 
   nativeBuildInputs = [
@@ -96,6 +125,7 @@ stdenv.mkDerivation rec {
     gperf
     ninja
     perl
+    perl.pkgs.FileCopyRecursive # used by copy-user-interface-resources.pl
     pkg-config
     python3
     ruby
@@ -118,7 +148,9 @@ stdenv.mkDerivation rec {
     libgcrypt
     libidn
     libintl
+  ] ++ lib.optionals stdenv.isLinux [
     libmanette
+  ] ++ [
     libnotify
     libpthreadstubs
     libsecret
@@ -138,16 +170,22 @@ stdenv.mkDerivation rec {
     libXdmcp
     libXt
     libXtst
-  ]) ++ optionals stdenv.isDarwin [
+  ]) ++ lib.optionals stdenv.isDarwin [
     libedit
     readline
-  ] ++ optionals stdenv.isLinux [
+    # Pull a header that contains a definition of proc_pid_rusage().
+    # (We pick just that one because using the other headers from `sdk` is not
+    # compatible with our C++ standard library)
+    (runCommandNoCC "${pname}_headers" {} ''
+      install -Dm444 "${lib.getDev sdk}"/include/libproc.h "$out"/include/libproc.h
+    '')
+  ] ++ lib.optionals stdenv.isLinux [
     bubblewrap
     libseccomp
     systemd
     wayland
     xdg-dbus-proxy
-  ] ++ optional enableGeoLocation geoclue2;
+  ] ++ lib.optional enableGeoLocation geoclue2;
 
   propagatedBuildInputs = [
     gtk3
@@ -159,27 +197,34 @@ stdenv.mkDerivation rec {
     "-DPORT=GTK"
     "-DUSE_LIBHYPHEN=OFF"
     "-DUSE_WPE_RENDERER=OFF"
-  ] ++ optionals stdenv.isDarwin [
-    "-DENABLE_GRAPHICS_CONTEXT_3D=OFF"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "-DENABLE_GAMEPAD=OFF"
     "-DENABLE_GTKDOC=OFF"
     "-DENABLE_MINIBROWSER=OFF"
-    "-DENABLE_OPENGL=OFF"
     "-DENABLE_QUARTZ_TARGET=ON"
     "-DENABLE_VIDEO=ON"
     "-DENABLE_WEBGL=OFF"
     "-DENABLE_WEB_AUDIO=OFF"
     "-DENABLE_X11_TARGET=OFF"
-    "-DUSE_ACCELERATE=0"
+    "-DUSE_APPLE_ICU=OFF"
+    "-DUSE_OPENGL_OR_ES=OFF"
     "-DUSE_SYSTEM_MALLOC=ON"
-  ] ++ optional (stdenv.isLinux && enableGLES) "-DENABLE_GLES2=ON";
+  ] ++ lib.optionals (!stdenv.isLinux) [
+    "-DUSE_SYSTEMD=OFF"
+  ] ++ lib.optional (stdenv.isLinux && enableGLES) "-DENABLE_GLES2=ON";
 
   postPatch = ''
     patchShebangs .
+  '' + lib.optionalString stdenv.isDarwin ''
+    # It needs malloc_good_size.
+    sed 22i'#include <malloc/malloc.h>' -i Source/WTF/wtf/FastMalloc.h
+    # <CommonCrypto/CommonRandom.h> needs CCCryptorStatus.
+    sed 43i'#include <CommonCrypto/CommonCryptor.h>' -i Source/WTF/wtf/RandomDevice.cpp
   '';
 
   requiredSystemFeatures = [ "big-parallel" ];
 
-  meta = {
+  meta = with lib; {
     description = "Web content rendering engine, GTK port";
     homepage = "https://webkitgtk.org/";
     license = licenses.bsd2;
diff --git a/nixpkgs/pkgs/development/libraries/webkitgtk/fix-bubblewrap-paths.patch b/nixpkgs/pkgs/development/libraries/webkitgtk/fix-bubblewrap-paths.patch
index 03a6b6903a8a..d502958f4f1a 100644
--- a/nixpkgs/pkgs/development/libraries/webkitgtk/fix-bubblewrap-paths.patch
+++ b/nixpkgs/pkgs/development/libraries/webkitgtk/fix-bubblewrap-paths.patch
@@ -1,16 +1,7 @@
 diff -ru old/webkitgtk-2.26.0/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp webkitgtk-2.26.0/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
 --- old/webkitgtk-2.26.0/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp	2019-09-09 04:47:07.000000000 -0400
 +++ webkitgtk-2.26.0/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp	2019-09-20 21:14:10.537921173 -0400
-@@ -585,7 +585,7 @@
-         { SCMP_SYS(keyctl), nullptr },
-         { SCMP_SYS(request_key), nullptr },
- 
--        // Scary VM/NUMA ops 
-+        // Scary VM/NUMA ops
-         { SCMP_SYS(move_pages), nullptr },
-         { SCMP_SYS(mbind), nullptr },
-         { SCMP_SYS(get_mempolicy), nullptr },
-@@ -724,6 +724,11 @@
+@@ -724,6 +724,12 @@
          "--ro-bind-try", "/usr/local/lib64", "/usr/local/lib64",
  
          "--ro-bind-try", PKGLIBEXECDIR, PKGLIBEXECDIR,
@@ -18,7 +9,8 @@ diff -ru old/webkitgtk-2.26.0/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLa
 +        // Nix Directories
 +        "--ro-bind", "@storeDir@", "@storeDir@",
 +        "--ro-bind", "/run/current-system", "/run/current-system",
-+        "--ro-bind", "/run/opengl-driver", "/run/opengl-driver",
++        "--ro-bind-try", "@driverLink@/lib", "@driverLink@/lib",
++        "--ro-bind-try", "@driverLink@/share", "@driverLink@/share",
      };
      // We would have to parse ld config files for more info.
      bindPathVar(sandboxArgs, "LD_LIBRARY_PATH");
diff --git a/nixpkgs/pkgs/development/libraries/wiiuse/default.nix b/nixpkgs/pkgs/development/libraries/wiiuse/default.nix
index 738c6a430084..d5d34fb618d6 100644
--- a/nixpkgs/pkgs/development/libraries/wiiuse/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wiiuse/default.nix
@@ -2,8 +2,10 @@
 , stdenv
 , fetchFromGitHub
 , cmake
-, pkg-config
 , bluez
+, libobjc
+, Foundation
+, IOBluetooth
 }:
 stdenv.mkDerivation rec {
 
@@ -19,15 +21,18 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ (lib.getDev bluez) ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ bluez ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libobjc Foundation IOBluetooth ];
 
-  cmakeFlags = [ "-DBUILD_EXAMPLE_SDL=NO" ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ bluez ];
+
+  cmakeFlags = [ "-DBUILD_EXAMPLE_SDL=OFF" ];
 
   meta = with lib; {
     description = "Feature complete cross-platform Wii Remote access library";
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     homepage = "https://github.com/wiiuse/wiiuse";
     maintainers = with maintainers; [ shamilton ];
-    platforms = with platforms; linux;
+    platforms = with platforms; unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/wildmidi/default.nix b/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
index 880823a84732..81c1b51e6589 100644
--- a/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, alsaLib, freepats }:
+{ lib, stdenv, fetchurl, cmake, alsa-lib, freepats }:
 
 stdenv.mkDerivation rec {
   name = "wildmidi-0.4.3";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ alsaLib stdenv.cc.libc/*couldn't find libm*/ ];
+  buildInputs = [ alsa-lib stdenv.cc.libc/*couldn't find libm*/ ];
 
   preConfigure = ''
     substituteInPlace CMakeLists.txt \
diff --git a/nixpkgs/pkgs/development/libraries/wiredtiger/default.nix b/nixpkgs/pkgs/development/libraries/wiredtiger/default.nix
index 469da2523d99..b6064c42b5c9 100644
--- a/nixpkgs/pkgs/development/libraries/wiredtiger/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wiredtiger/default.nix
@@ -14,7 +14,7 @@ let
   mkEnable = mkFlag "enable-" "disable-";
   mkWith = mkFlag "with-" "without-";
 
-  shouldUsePkg = pkg: if pkg != null && lib.any (lib.meta.platformMatch stdenv.hostPlatform) pkg.meta.platforms then pkg else null;
+  shouldUsePkg = pkg: if pkg != null && lib.meta.availableOn stdenv.hostPlatform pkg then pkg else null;
 
   optLz4 = shouldUsePkg lz4;
   optSnappy = shouldUsePkg snappy;
diff --git a/nixpkgs/pkgs/development/libraries/wlroots/0.12.nix b/nixpkgs/pkgs/development/libraries/wlroots/0.12.nix
index 66d4fab2bf98..c21205beabc3 100644
--- a/nixpkgs/pkgs/development/libraries/wlroots/0.12.nix
+++ b/nixpkgs/pkgs/development/libraries/wlroots/0.12.nix
@@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [ "-Dlogind-provider=systemd" "-Dlibseat=disabled" ];
 
+  CFLAGS = "-Wno-error=deprecated-declarations";
+
   postFixup = ''
     # Install ALL example programs to $examples:
     # screencopy dmabuf-capture input-inhibitor layer-shell idle-inhibit idle
diff --git a/nixpkgs/pkgs/development/libraries/wt/default.nix b/nixpkgs/pkgs/development/libraries/wt/default.nix
index 8887c4410f4c..cb3ceeae2f1c 100644
--- a/nixpkgs/pkgs/development/libraries/wt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wt/default.nix
@@ -21,7 +21,7 @@ let
       buildInputs = [
         boost doxygen qt48Full libharu
         pango fcgi firebird libmysqlclient postgresql graphicsmagick glew
-        openssl pcre
+        openssl pcre harfbuzz
       ];
 
       cmakeFlags = [
@@ -32,8 +32,6 @@ let
         "-DWT_WRASTERIMAGE_IMPLEMENTATION=GraphicsMagick"
         "-DGM_PREFIX=${graphicsmagick}"
       ]
-      ++ lib.optional (harfbuzz != null)
-        "-DHARFBUZZ_INCLUDE_DIR=${harfbuzz.dev}/include"
       ++ lib.optional (libmysqlclient != null)
         "-DMYSQL_PREFIX=${libmysqlclient}";
 
@@ -52,7 +50,7 @@ in {
   };
 
   wt4 = generic {
-    version = "4.2.0";
-    sha256 = "0zrrdjz0sa8hrmybjp4aap1lcqcqvsicd7dj49zj1m5k8gnfpm4v";
+    version = "4.5.0";
+    sha256 = "16svzdma2mc2ggnpy5z7m1ggzhd5nrccmmj8xnc7bd1dd3486xwv";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/wxSVG/default.nix b/nixpkgs/pkgs/development/libraries/wxSVG/default.nix
index 5e7f7b71fbe5..f83f7e408977 100644
--- a/nixpkgs/pkgs/development/libraries/wxSVG/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wxSVG/default.nix
@@ -1,34 +1,43 @@
-{ lib, stdenv, fetchurl
-, pkg-config, wxGTK
-, ffmpeg_3, libexif
-, cairo, pango }:
+{ lib
+, stdenv
+, fetchurl
+, cairo
+, ffmpeg
+, libexif
+, pango
+, pkg-config
+, wxGTK
+}:
 
 stdenv.mkDerivation rec {
-
   pname = "wxSVG";
-  srcName = "wxsvg-${version}";
   version = "1.5.22";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/wxsvg/wxsvg/${version}/${srcName}.tar.bz2";
-    sha256 = "0agmmwg0zlsw1idygvqjpj1nk41akzlbdha0hsdk1k8ckz6niq8d";
+    url = "mirror://sourceforge/project/wxsvg/wxsvg/${version}/wxsvg-${version}.tar.bz2";
+    hash = "sha256-DeFozZ8MzTCbhkDBtuifKpBpg7wS7+dbDFzTDx6v9Sk=";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-
-  propagatedBuildInputs = [ wxGTK ffmpeg_3 libexif ];
-
-  buildInputs = [ cairo pango ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
+  buildInputs = [
+    cairo
+    ffmpeg
+    libexif
+    pango
+    wxGTK
+  ];
 
   meta = with lib; {
+    homepage = "http://wxsvg.sourceforge.net/";
     description = "A SVG manipulation library built with wxWidgets";
     longDescription = ''
-    wxSVG is C++ library to create, manipulate and render
-    Scalable Vector Graphics (SVG) files with the wxWidgets toolkit.
+      wxSVG is C++ library to create, manipulate and render Scalable Vector
+      Graphics (SVG) files with the wxWidgets toolkit.
     '';
-    homepage = "http://wxsvg.sourceforge.net/";
-    license = with licenses; gpl2;
+    license = with licenses; gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres ];
-    platforms = with platforms; linux;
+    platforms = wxGTK.meta.platforms;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/xcb-imdkit/default.nix b/nixpkgs/pkgs/development/libraries/xcb-imdkit/default.nix
index a3bcc822b367..b2e56c8193b5 100644
--- a/nixpkgs/pkgs/development/libraries/xcb-imdkit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xcb-imdkit/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xcb-imdkit";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "fcitx";
     repo = "xcb-imdkit";
     rev = version;
-    sha256 = "sha256-ISaVsMtDsyfhbhsAwDSWkQ7ZcpNtvC7M9NFQsWA5ju8=";
+    sha256 = "sha256-IPuTRSgmrnCJRgGWcE4JRaxd0sGCcHrKRnn2B1OdDMU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index be96001c46fb..93a308a658da 100644
--- a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -5,7 +5,7 @@
 , libxml2
 , xdg-desktop-portal
 , gtk3
-, gnome3
+, gnome
 , glib
 , wrapGAppsHook
 , gsettings-desktop-schemas
@@ -32,10 +32,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    gsettings-desktop-schemas
+    gsettings-desktop-schemas # settings exposed by settings portal
     gtk3
-    gnome3.gnome-desktop
-    gnome3.gnome-settings-daemon # schemas needed for settings api (fonts, etc)
+    gnome.gnome-desktop
+    gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s)
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-wlr/default.nix b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-wlr/default.nix
index da60f2b27fcc..3739284d70ac 100644
--- a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-wlr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-wlr/default.nix
@@ -1,25 +1,29 @@
-{ lib, stdenv, fetchFromGitHub
+{ lib, stdenv, fetchFromGitHub, makeWrapper
 , meson, ninja, pkg-config, wayland-protocols
-, pipewire, wayland, systemd, libdrm }:
+, pipewire, wayland, systemd, libdrm, iniparser, scdoc, grim, slurp }:
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-wlr";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1vjz0y3ib1xw25z8hl679l2p6g4zcg7b8fcd502bhmnqgwgdcsfx";
+    sha256 = "sha256-6ArUQfWx5rNdpsd8Q22MqlpxLT8GTSsymAf21zGe1KI=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config wayland-protocols ];
-  buildInputs = [ pipewire wayland systemd libdrm ];
+  nativeBuildInputs = [ meson ninja pkg-config wayland-protocols makeWrapper ];
+  buildInputs = [ pipewire wayland systemd libdrm iniparser scdoc ];
 
   mesonFlags = [
     "-Dsd-bus-provider=libsystemd"
   ];
 
+  postInstall = ''
+    wrapProgram $out/libexec/xdg-desktop-portal-wlr --prefix PATH ":" ${lib.makeBinPath [ grim slurp ]}
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/emersion/xdg-desktop-portal-wlr";
     description = "xdg-desktop-portal backend for wlroots";
diff --git a/nixpkgs/pkgs/development/libraries/xgboost/default.nix b/nixpkgs/pkgs/development/libraries/xgboost/default.nix
index 973e7dc028e0..26872565de8f 100644
--- a/nixpkgs/pkgs/development/libraries/xgboost/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xgboost/default.nix
@@ -1,6 +1,14 @@
-{ config, stdenv, lib, fetchgit, cmake
-, cudaSupport ? config.cudaSupport or false, cudatoolkit
-, ncclSupport ? false, nccl
+{ config
+, stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, gtest
+, doCheck ? true
+, cudaSupport ? config.cudaSupport or false
+, cudatoolkit
+, ncclSupport ? false
+, nccl
 , llvmPackages
 }:
 
@@ -8,37 +16,43 @@ assert ncclSupport -> cudaSupport;
 
 stdenv.mkDerivation rec {
   pname = "xgboost";
-  version = "0.90";
-
-  # needs submodules
-  src = fetchgit {
-    url = "https://github.com/dmlc/xgboost";
-    rev = "refs/tags/v${version}";
-    sha256 = "1zs15k9crkiq7bnr4gqq53mkn3w8z9dq4nwlavmfcr5xr5gw2pw4";
+  version = "1.4.1";
+
+  src = fetchFromGitHub {
+    owner = "dmlc";
+    repo = pname;
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "12b1417dg8jqyxd72kg5a3xhg5h11vz0k7bkv72mzrv83jvgn5ci";
   };
 
   nativeBuildInputs = [ cmake ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp;
 
-  buildInputs = lib.optional cudaSupport cudatoolkit
+  buildInputs = [ gtest ] ++ lib.optional cudaSupport cudatoolkit
                 ++ lib.optional ncclSupport nccl;
 
-  cmakeFlags = lib.optionals cudaSupport [ "-DUSE_CUDA=ON" "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc" ]
-               ++ lib.optional ncclSupport "-DUSE_NCCL=ON";
+  cmakeFlags = lib.optionals doCheck [ "-DGOOGLE_TEST=ON" ]
+    ++ lib.optionals cudaSupport [ "-DUSE_CUDA=ON" "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc" ]
+    ++ lib.optionals ncclSupport [ "-DUSE_NCCL=ON" ];
+
+  inherit doCheck;
 
   installPhase = let
     libname = "libxgboost${stdenv.hostPlatform.extensions.sharedLibrary}";
   in ''
+    runHook preInstall
     mkdir -p $out
     cp -r ../include $out
     install -Dm755 ../lib/${libname} $out/lib/${libname}
     install -Dm755 ../xgboost $out/bin/xgboost
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "Scalable, Portable and Distributed Gradient Boosting (GBDT, GBRT or GBM) Library";
     homepage = "https://github.com/dmlc/xgboost";
     license = licenses.asl20;
-    platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
+    platforms = platforms.unix;
     maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/xine-lib/default.nix b/nixpkgs/pkgs/development/libraries/xine-lib/default.nix
index cbdc1a2dcf0b..70fdf24dd9f4 100644
--- a/nixpkgs/pkgs/development/libraries/xine-lib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xine-lib/default.nix
@@ -1,43 +1,80 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, xorg, alsaLib, libGLU, libGL, aalib
-, libvorbis, libtheora, speex, zlib, perl, ffmpeg_3
-, flac, libcaca, libpulseaudio, libmng, libcdio, libv4l, vcdimager
+{ lib
+, stdenv
+, fetchurl
+, aalib
+, alsa-lib
+, ffmpeg
+, flac
+, libGL
+, libGLU
+, libcaca
+, libcdio
+, libmng
 , libmpcdec
+, libpulseaudio
+, libtheora
+, libv4l
+, libvorbis
+, ncurses
+, perl
+, pkg-config
+, speex
+, vcdimager
+, xorg
+, zlib
 }:
 
 stdenv.mkDerivation rec {
-  name = "xine-lib-1.2.9";
+  pname = "xine-lib";
+  version = "1.2.11";
 
   src = fetchurl {
-    url = "mirror://sourceforge/xine/${name}.tar.xz";
-    sha256 = "13clir4qxl2zvsvvjd9yv3yrdhsnvcn5s7ambbbn5dzy9604xcrj";
+    url = "mirror://sourceforge/xine/xine-lib-${version}.tar.xz";
+    sha256 = "sha256-71GyHRDdoQRfp9cRvZFxz9rwpaKHQjO88W/98o7AcAU=";
   };
 
-  nativeBuildInputs = [ pkg-config perl ];
-
-  buildInputs = [
-    xorg.libX11 xorg.libXv xorg.libXinerama xorg.libxcb xorg.libXext
-    alsaLib libGLU libGL aalib libvorbis libtheora speex perl ffmpeg_3 flac
-    libcaca libpulseaudio libmng libcdio libv4l vcdimager libmpcdec
+  nativeBuildInputs = [
+    pkg-config
+    perl
   ];
+  buildInputs = [
+    aalib
+    alsa-lib
+    ffmpeg
+    flac
+    libGL
+    libGLU
+    libcaca
+    libcdio
+    libmng
+    libmpcdec
+    libpulseaudio
+    libtheora
+    libv4l
+    libvorbis
+    ncurses
+    perl
+    speex
+    vcdimager
+    zlib
+  ] ++ (with xorg; [
+    libX11
+    libXext
+    libXinerama
+    libXv
+    libxcb
+  ]);
 
-  patches = [
-    (fetchpatch {
-      name = "0001-fix-XINE_PLUGIN_PATH-splitting.patch";
-      url = "https://sourceforge.net/p/xine/mailman/attachment/32394053-5e27-6558-f0c9-49e0da0bc3cc%40gmx.de/1/";
-      sha256 = "0nrsdn7myvjs8fl9rj6k4g1bnv0a84prsscg1q9n49gwn339v5rc";
-    })
-  ];
+  enableParallelBuilding = true;
 
   NIX_LDFLAGS = "-lxcb-shm";
 
-  propagatedBuildInputs = [zlib];
-
-  enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = "http://www.xine-project.org/";
+    homepage = "http://www.xinehq.de/";
     description = "A high-performance, portable and reusable multimedia playback engine";
+    license = with licenses; [ gpl2Plus lgpl2Plus ];
+    maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.linux;
-    license = with licenses; [ gpl2 lgpl2 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/xsimd/default.nix b/nixpkgs/pkgs/development/libraries/xsimd/default.nix
new file mode 100644
index 000000000000..745ee9ee3fce
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/xsimd/default.nix
@@ -0,0 +1,56 @@
+{ lib, stdenv, fetchFromGitHub, cmake, gtest }:
+let
+  version = "7.5.0";
+
+  darwin_src = fetchFromGitHub {
+    owner = "xtensor-stack";
+    repo = "xsimd";
+    rev = version;
+    sha256 = "eGAdRSYhf7rbFdm8g1Tz1ZtSVu44yjH/loewblhv9Vs=";
+    # Avoid requiring apple_sdk. We're doing this here instead of in the patchPhase
+    # because this source is directly used in arrow-cpp.
+    # pyconfig.h defines _GNU_SOURCE to 1, so we need to stamp that out too.
+    # Upstream PR with a better fix: https://github.com/xtensor-stack/xsimd/pull/463
+    postFetch = ''
+      mkdir $out
+      tar -xf $downloadedFile --directory=$out --strip-components=1
+      substituteInPlace $out/include/xsimd/types/xsimd_scalar.hpp \
+        --replace 'defined(__APPLE__)' 0 \
+        --replace 'defined(_GNU_SOURCE)' 0
+    '';
+  };
+
+  src = fetchFromGitHub {
+    owner = "xtensor-stack";
+    repo = "xsimd";
+    rev = version;
+    sha256 = "0c9pq5vz43j99z83w3b9qylfi66mn749k1afpv5cwfxggbxvy63f";
+  };
+in stdenv.mkDerivation {
+  pname = "xsimd";
+  inherit version;
+  src = if stdenv.hostPlatform.isDarwin then darwin_src else src;
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = [ "-DBUILD_TESTS=ON" ];
+
+  doCheck = true;
+  checkInputs = [ gtest ];
+  checkTarget = "xtest";
+  GTEST_FILTER = let
+      # Upstream Issue: https://github.com/xtensor-stack/xsimd/issues/456
+      filteredTests = lib.optionals stdenv.hostPlatform.isDarwin [
+        "error_gamma_test/sse_double.gamma"
+        "error_gamma_test/avx_double.gamma"
+      ];
+    in "-${builtins.concatStringsSep ":" filteredTests}";
+
+  meta = with lib; {
+    description = "C++ wrappers for SIMD intrinsics";
+    homepage = "https://github.com/xtensor-stack/xsimd";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ tobim ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/xtensor/default.nix b/nixpkgs/pkgs/development/libraries/xtensor/default.nix
new file mode 100644
index 000000000000..fe978998d637
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/xtensor/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, gtest
+, xsimd
+, xtl
+}:
+stdenv.mkDerivation rec {
+  pname = "xtensor";
+  version = "0.23.10";
+
+  src = fetchFromGitHub {
+    owner = "xtensor-stack";
+    repo = "xtensor";
+    rev = version;
+    sha256 = "1ayrhyh9x33b87ic01b4jzxc8x27yxpxzya5x54ikazvz8p71n14";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  propagatedBuildInputs = [ xtl xsimd ];
+
+  cmakeFlags = [ "-DBUILD_TESTS=ON" ];
+
+  doCheck = true;
+  checkInputs = [ gtest ];
+  checkTarget = "xtest";
+
+  meta = with lib; {
+    description = "Multi-dimensional arrays with broadcasting and lazy computing.";
+    homepage = "https://github.com/xtensor-stack/xtensor";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ cpcloud ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/xtl/default.nix b/nixpkgs/pkgs/development/libraries/xtl/default.nix
new file mode 100644
index 000000000000..fb50105cffa2
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/xtl/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, gtest
+}:
+stdenv.mkDerivation rec {
+  pname = "xtl";
+  version = "0.7.2";
+
+  src = fetchFromGitHub {
+    owner = "xtensor-stack";
+    repo = "xtl";
+    rev = version;
+    sha256 = "177ym67sz544wdylksfkkpi6bqn34kagycfnb3cv0nkmpipqj9lg";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = [ "-DBUILD_TESTS=ON" ];
+
+  doCheck = true;
+  checkInputs = [ gtest ];
+  checkTarget = "xtest";
+
+  meta = with lib; {
+    description = "Basic tools (containers, algorithms) used by other quantstack packages";
+    homepage = "https://github.com/xtensor-stack/xtl";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ cpcloud ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/zchunk/default.nix b/nixpkgs/pkgs/development/libraries/zchunk/default.nix
index 2037d815a81b..cf0063f7780d 100644
--- a/nixpkgs/pkgs/development/libraries/zchunk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/zchunk/default.nix
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   pname = "zchunk";
-  version = "1.1.9";
+  version = "1.1.11";
 
   outputs = [ "out" "lib" "dev" ];
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     owner = "zchunk";
     repo = pname;
     rev = version;
-    hash = "sha256-MqnHtqOjLl6R5GZ4f2UX1iLoO9FUT2IfZlSN58wW8JA=";
+    hash = "sha256-r+qWJOUnTyPJjM9eW44Q2DMKxx4HloyfNrQ6xWDO9vQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/zeitgeist/default.nix b/nixpkgs/pkgs/development/libraries/zeitgeist/default.nix
index 039ecc610f41..de1953622e93 100644
--- a/nixpkgs/pkgs/development/libraries/zeitgeist/default.nix
+++ b/nixpkgs/pkgs/development/libraries/zeitgeist/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "zeitgeist";
-  version = "1.0.2";
+  version = "1.0.3";
 
   outputs = [ "out" "lib" "dev" "man" ] ++ lib.optional pythonSupport "py";
 
@@ -29,14 +29,14 @@ stdenv.mkDerivation rec {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ig3d3j1n0ghaxsgfww6g2hhcdwx8cljwwfmp9jk1nrvkxd6rnmv";
+    sha256 = "0y6fyzxl5np4yskcxibd0p03h619w9ir907nhf40h02y0pk1kgkp";
   };
 
   patches = [
-    # Fix build with gettext 0.20
+    # Fix build with Vala 0.52
     (fetchpatch {
-      url = "https://gitlab.freedesktop.org/zeitgeist/zeitgeist/commit/b5c00e80189fd59a059a95c4e276728a2492cb89.patch";
-      sha256 = "1r7f7j3l2p6xlzxajihgx8bzbc2sxcb9spc9pi26rz9bwmngdyq7";
+      url = "https://gitlab.freedesktop.org/zeitgeist/zeitgeist/commit/64ac3a6f94cd299e5e14945dc31b48f009dec152.patch";
+      sha256 = "Dw1kNE3JoFdmgcQ0eFoFLYvmxlPjXNj56Jkn2meINz4=";
     })
   ];
 
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A service which logs the users’s activities and events";
     homepage = "https://zeitgeist.freedesktop.org/";
-    maintainers = with maintainers; [ lethalman worldofpeace ];
+    maintainers = teams.freedesktop.members ++ (with maintainers; [ ]);
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/development/libraries/zlib/default.nix b/nixpkgs/pkgs/development/libraries/zlib/default.nix
index da8aac5229b6..a9fadf46c4b2 100644
--- a/nixpkgs/pkgs/development/libraries/zlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/zlib/default.nix
@@ -37,8 +37,8 @@ stdenv.mkDerivation (rec {
 
   postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace configure \
-      --replace '/usr/bin/libtool' 'ar' \
-      --replace 'AR="libtool"' 'AR="ar"' \
+      --replace '/usr/bin/libtool' '${stdenv.cc.targetPrefix}ar' \
+      --replace 'AR="libtool"' 'AR="${stdenv.cc.targetPrefix}ar"' \
       --replace 'ARFLAGS="-o"' 'ARFLAGS="-r"'
   '';
 
@@ -84,7 +84,7 @@ stdenv.mkDerivation (rec {
   ''
     # Non-typical naming confuses libtool which then refuses to use zlib's DLL
     # in some cases, e.g. when compiling libpng.
-  + lib.optionalString (stdenv.hostPlatform.libc == "msvcrt") ''
+  + lib.optionalString (stdenv.hostPlatform.libc == "msvcrt" && shared) ''
     ln -s zlib1.dll $out/bin/libz.dll
   '';
 
diff --git a/nixpkgs/pkgs/development/lisp-modules/README.txt b/nixpkgs/pkgs/development/lisp-modules/README.txt
index 08452d979ad2..46d7208bcd22 100644
--- a/nixpkgs/pkgs/development/lisp-modules/README.txt
+++ b/nixpkgs/pkgs/development/lisp-modules/README.txt
@@ -1,6 +1,6 @@
 Want to add a package?  There are 3 simple steps!
 1. Add the needed system names to quicklisp-to-nix-systems.txt.
-2. cd <path to quicklisp-to-nix-systems.txt> ; nix-shell --run 'quicklisp-to-nix .'
+2. cd <path to quicklisp-to-nix-systems.txt> ; nix-shell --pure --run 'quicklisp-to-nix .'
   You might want to specify also the --cacheSystemInfoDir and --cacheFaslDir
   parameters to preserve some data between runs. For example, it is very
   useful when you add new packages with native dependencies and fail to
diff --git a/nixpkgs/pkgs/development/lisp-modules/clwrapper/setup-hook.sh b/nixpkgs/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
index abbbdc3e77a6..5cb238b2973f 100644
--- a/nixpkgs/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
+++ b/nixpkgs/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
@@ -9,7 +9,7 @@ addASDFPaths () {
 }
 
 setLisp () {
-    if [ -z "${NIX_LISP_COMMAND:-}" ]; then 
+    if [ -z "${NIX_LISP_COMMAND:-}" ]; then
       for j in "$1"/bin/*; do
           case "$(basename "$j")" in
               sbcl) NIX_LISP_COMMAND="$j" ;;
@@ -20,14 +20,14 @@ setLisp () {
           esac
       done
     fi
-    if [ -n "${NIX_LISP_COMMAND:-}" ] && [ -z "${NIX_LISP:-}" ]; then 
+    if [ -n "${NIX_LISP_COMMAND:-}" ] && [ -z "${NIX_LISP:-}" ]; then
         NIX_LISP="${NIX_LISP_COMMAND##*/}"
     fi
 }
 
 collectNixLispLDLP () {
-     if echo "$1/lib"/lib*.so* | grep . > /dev/null; then
-	 export NIX_LISP_LD_LIBRARY_PATH="${NIX_LISP_LD_LIBRARY_PATH-}${NIX_LISP_LD_LIBRARY_PATH:+:}$1/lib"
+     if echo "$1/lib"/lib*.{so,dylib}* | grep . > /dev/null; then
+     export NIX_LISP_LD_LIBRARY_PATH="${NIX_LISP_LD_LIBRARY_PATH-}${NIX_LISP_LD_LIBRARY_PATH:+:}$1/lib"
      fi
 }
 
diff --git a/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix b/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
index 927254f52ae2..e4f623686a9a 100644
--- a/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
@@ -24,8 +24,8 @@ let lispPackages = rec {
       quicklispdist = pkgs.fetchurl {
         # Will usually be replaced with a fresh version anyway, but needs to be
         # a valid distinfo.txt
-        url = "https://beta.quicklisp.org/dist/quicklisp/2021-02-28/distinfo.txt";
-        sha256 = "sha256:1apc0s07fmm386rj866dbrhrkq3lrbgbd79kwcyp91ix7sza8z3z";
+        url = "https://beta.quicklisp.org/dist/quicklisp/2021-04-11/distinfo.txt";
+        sha256 = "sha256:1z7a7m9cm7iv4m9ajvyqphsw30s3qwb0l8g8ayfmkvmvhlj79g86";
       };
       buildPhase = "true; ";
       postInstall = ''
@@ -124,14 +124,21 @@ let lispPackages = rec {
   };
   nyxt = pkgs.lispPackages.buildLispPackage rec {
     baseName = "nyxt";
-    version = "2021-03-27";
-
+    version = "2.0.0";
 
     description = "Browser";
 
     overrides = x: {
       postInstall = ''
         echo "Building nyxt binary"
+        (
+          source "$out/lib/common-lisp-settings"/*-shell-config.sh
+          cd "$out/lib/common-lisp"/*/
+          makeFlags="''${makeFlags:-}"
+          make LISP=common-lisp.sh NYXT_INTERNAL_QUICKLISP=false PREFIX="$out" $makeFlags all
+          make LISP=common-lisp.sh NYXT_INTERNAL_QUICKLISP=false PREFIX="$out" $makeFlags install
+          cp nyxt "$out/bin/nyxt"
+        )
         NIX_LISP_PRELAUNCH_HOOK='
           nix_lisp_build_system nyxt/gtk-application \
            "(asdf/system:component-entry-point (asdf:find-system :nyxt/gtk-application))" \
@@ -181,13 +188,13 @@ let lispPackages = rec {
             fset
             cl-cffi-gtk
             cl-webkit2
+            cl-gobject-introspection
     ];
     src = pkgs.fetchFromGitHub {
       owner = "atlas-engineer";
       repo = "nyxt";
-      rev = "8ef171fd1eb62d168defe4a2d7115393230314d1";
-      sha256 = "sha256:1dz55mdmj68kmllih7ab70nmp0mwzqp9lh3im7kcjfmc1r64irdv";
-      # date = 2021-03-27T09:10:00+00:00;
+      rev = "${version}";
+      sha256 = "sha256-eSRNfzkAzGTorLjdHo1LQEKLx4ASdv3RGXIFZ5WFIXk=";
     };
 
     packageName = "nyxt";
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix
index 4fb5488b7a87..c8855a7f24b4 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "_3bmd-ext-code-blocks";
-  version = "3bmd-20201220-git";
+  version = "3bmd-20210411-git";
 
   description = "extension to 3bmd implementing github style ``` delimited code blocks, with support for syntax highlighting using colorize, pygments, or chroma";
 
   deps = [ args."_3bmd" args."alexandria" args."colorize" args."esrap" args."html-encode" args."split-sequence" args."trivial-with-current-source-form" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/3bmd/2020-12-20/3bmd-20201220-git.tgz";
-    sha256 = "0hcx8p8la3fmwhj8ddqik7bwrn9rvf5mcv6m77glimwckh51na71";
+    url = "http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz";
+    sha256 = "1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp";
   };
 
   packageName = "3bmd-ext-code-blocks";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM 3bmd-ext-code-blocks DESCRIPTION
     extension to 3bmd implementing github style ``` delimited code blocks, with support for syntax highlighting using colorize, pygments, or chroma
-    SHA256 0hcx8p8la3fmwhj8ddqik7bwrn9rvf5mcv6m77glimwckh51na71 URL
-    http://beta.quicklisp.org/archive/3bmd/2020-12-20/3bmd-20201220-git.tgz MD5
-    67b6e5fa51d18817e7110e4fef6517ac NAME 3bmd-ext-code-blocks FILENAME
+    SHA256 1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp URL
+    http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz MD5
+    09f9290aa1708aeb469fb5154ab1a397 NAME 3bmd-ext-code-blocks FILENAME
     _3bmd-ext-code-blocks DEPS
     ((NAME 3bmd FILENAME _3bmd) (NAME alexandria FILENAME alexandria)
      (NAME colorize FILENAME colorize) (NAME esrap FILENAME esrap)
@@ -33,7 +33,7 @@ rec {
     DEPENDENCIES
     (3bmd alexandria colorize esrap html-encode split-sequence
      trivial-with-current-source-form)
-    VERSION 3bmd-20201220-git SIBLINGS
+    VERSION 3bmd-20210411-git SIBLINGS
     (3bmd-ext-definition-lists 3bmd-ext-math 3bmd-ext-tables
      3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd-youtube 3bmd)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd.nix
index 8d8299a70309..630316bc8577 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/_3bmd.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "_3bmd";
-  version = "20201220-git";
+  version = "20210411-git";
 
   description = "markdown processor in CL using esrap parser.";
 
   deps = [ args."alexandria" args."esrap" args."split-sequence" args."trivial-with-current-source-form" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/3bmd/2020-12-20/3bmd-20201220-git.tgz";
-    sha256 = "0hcx8p8la3fmwhj8ddqik7bwrn9rvf5mcv6m77glimwckh51na71";
+    url = "http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz";
+    sha256 = "1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp";
   };
 
   packageName = "3bmd";
@@ -19,16 +19,16 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM 3bmd DESCRIPTION markdown processor in CL using esrap parser. SHA256
-    0hcx8p8la3fmwhj8ddqik7bwrn9rvf5mcv6m77glimwckh51na71 URL
-    http://beta.quicklisp.org/archive/3bmd/2020-12-20/3bmd-20201220-git.tgz MD5
-    67b6e5fa51d18817e7110e4fef6517ac NAME 3bmd FILENAME _3bmd DEPS
+    1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp URL
+    http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz MD5
+    09f9290aa1708aeb469fb5154ab1a397 NAME 3bmd FILENAME _3bmd DEPS
     ((NAME alexandria FILENAME alexandria) (NAME esrap FILENAME esrap)
      (NAME split-sequence FILENAME split-sequence)
      (NAME trivial-with-current-source-form FILENAME
       trivial-with-current-source-form))
     DEPENDENCIES
     (alexandria esrap split-sequence trivial-with-current-source-form) VERSION
-    20201220-git SIBLINGS
+    20210411-git SIBLINGS
     (3bmd-ext-code-blocks 3bmd-ext-definition-lists 3bmd-ext-math
      3bmd-ext-tables 3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd-youtube)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/agutil.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/agutil.nix
new file mode 100644
index 000000000000..c159b2064185
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/agutil.nix
@@ -0,0 +1,42 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "agutil";
+  version = "20200325-git";
+
+  description = "A collection of utility functions not found in other utility libraries.";
+
+  deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."iterate" args."lisp-namespace" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/agutil/2020-03-25/agutil-20200325-git.tgz";
+    sha256 = "0jfbb2x3f8sm507r63qwrzx44lyyj98i36yyyaf4kpyqfir35z2k";
+  };
+
+  packageName = "agutil";
+
+  asdFilesToKeep = ["agutil.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM agutil DESCRIPTION
+    A collection of utility functions not found in other utility libraries.
+    SHA256 0jfbb2x3f8sm507r63qwrzx44lyyj98i36yyyaf4kpyqfir35z2k URL
+    http://beta.quicklisp.org/archive/agutil/2020-03-25/agutil-20200325-git.tgz
+    MD5 89e47bd15c0f9930a5025d04b9706b60 NAME agutil FILENAME agutil DEPS
+    ((NAME alexandria FILENAME alexandria)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME introspect-environment FILENAME introspect-environment)
+     (NAME iterate FILENAME iterate)
+     (NAME lisp-namespace FILENAME lisp-namespace)
+     (NAME trivia FILENAME trivia)
+     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
+     (NAME trivia.level0 FILENAME trivia_dot_level0)
+     (NAME trivia.level1 FILENAME trivia_dot_level1)
+     (NAME trivia.level2 FILENAME trivia_dot_level2)
+     (NAME trivia.trivial FILENAME trivia_dot_trivial)
+     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
+    DEPENDENCIES
+    (alexandria closer-mop introspect-environment iterate lisp-namespace trivia
+     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
+     trivia.trivial trivial-cltl2 type-i)
+    VERSION 20200325-git SIBLINGS NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
index f58416bffee7..324831796ef0 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "alexandria";
-  version = "20200925-git";
+  version = "20210411-git";
 
   description = "Alexandria is a collection of portable public domain utilities.";
 
   deps = [ ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/alexandria/2020-09-25/alexandria-20200925-git.tgz";
-    sha256 = "1cpvnzfs807ah07hrk8kplim6ryzqs4r35ym03cpky5xdl8c89fl";
+    url = "http://beta.quicklisp.org/archive/alexandria/2021-04-11/alexandria-20210411-git.tgz";
+    sha256 = "0bd4axr1z1q6khvpyf5xvgybdajs1dc7my6g0rdzhhxbibfcf3yh";
   };
 
   packageName = "alexandria";
@@ -20,8 +20,8 @@ rec {
 }
 /* (SYSTEM alexandria DESCRIPTION
     Alexandria is a collection of portable public domain utilities. SHA256
-    1cpvnzfs807ah07hrk8kplim6ryzqs4r35ym03cpky5xdl8c89fl URL
-    http://beta.quicklisp.org/archive/alexandria/2020-09-25/alexandria-20200925-git.tgz
-    MD5 59c8237a854de6f4f93328cd5747cd14 NAME alexandria FILENAME alexandria
-    DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS (alexandria-tests)
+    0bd4axr1z1q6khvpyf5xvgybdajs1dc7my6g0rdzhhxbibfcf3yh URL
+    http://beta.quicklisp.org/archive/alexandria/2021-04-11/alexandria-20210411-git.tgz
+    MD5 415c43451862b490577b20ee4fb8e8d7 NAME alexandria FILENAME alexandria
+    DEPS NIL DEPENDENCIES NIL VERSION 20210411-git SIBLINGS (alexandria-tests)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/arrows.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/arrows.nix
new file mode 100644
index 000000000000..13076ff26e87
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/arrows.nix
@@ -0,0 +1,31 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "arrows";
+  version = "20181018-git";
+
+  parasites = [ "arrows/test" ];
+
+  description = "Implements -> and ->> from Clojure, as well as several expansions on the
+idea.";
+
+  deps = [ args."hu_dot_dwim_dot_stefil" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz";
+    sha256 = "1b13pnn71z1dv1cwysh6p5jfgjsp3q8ivsdxfspl1hg1nh9mqa7r";
+  };
+
+  packageName = "arrows";
+
+  asdFilesToKeep = ["arrows.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM arrows DESCRIPTION
+    Implements -> and ->> from Clojure, as well as several expansions on the
+idea.
+    SHA256 1b13pnn71z1dv1cwysh6p5jfgjsp3q8ivsdxfspl1hg1nh9mqa7r URL
+    http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz
+    MD5 c60b5d79680de19baad018a0fe87bc48 NAME arrows FILENAME arrows DEPS
+    ((NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)) DEPENDENCIES
+    (hu.dwim.stefil) VERSION 20181018-git SIBLINGS NIL PARASITES (arrows/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
index f65c68e0d7fa..b33f95934f82 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cffi-grovel";
-  version = "cffi_0.23.0";
+  version = "cffi_0.24.1";
 
   description = "The CFFI Groveller";
 
   deps = [ args."alexandria" args."babel" args."cffi" args."cffi-toolchain" args."trivial-features" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz";
-    sha256 = "1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck";
+    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
+    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
   };
 
   packageName = "cffi-grovel";
@@ -19,13 +19,13 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cffi-grovel DESCRIPTION The CFFI Groveller SHA256
-    1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck URL
-    http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz MD5
-    a43e3c440fc4f20494e6d2347887c963 NAME cffi-grovel FILENAME cffi-grovel DEPS
+    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
+    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
+    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-grovel FILENAME cffi-grovel DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cffi FILENAME cffi) (NAME cffi-toolchain FILENAME cffi-toolchain)
      (NAME trivial-features FILENAME trivial-features))
     DEPENDENCIES (alexandria babel cffi cffi-toolchain trivial-features)
-    VERSION cffi_0.23.0 SIBLINGS
+    VERSION cffi_0.24.1 SIBLINGS
     (cffi-examples cffi-libffi cffi-tests cffi-toolchain cffi-uffi-compat cffi)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix
index af7c96639d6d..b326d625f4da 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cffi-toolchain";
-  version = "cffi_0.23.0";
+  version = "cffi_0.24.1";
 
   description = "The CFFI toolchain";
 
   deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz";
-    sha256 = "1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck";
+    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
+    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
   };
 
   packageName = "cffi-toolchain";
@@ -19,14 +19,14 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cffi-toolchain DESCRIPTION The CFFI toolchain SHA256
-    1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck URL
-    http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz MD5
-    a43e3c440fc4f20494e6d2347887c963 NAME cffi-toolchain FILENAME
+    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
+    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
+    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-toolchain FILENAME
     cffi-toolchain DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cffi FILENAME cffi)
      (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION cffi_0.23.0
+    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION cffi_0.24.1
     SIBLINGS
     (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-uffi-compat cffi)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix
index ec452750457c..822b7a811661 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cffi-uffi-compat";
-  version = "cffi_0.23.0";
+  version = "cffi_0.24.1";
 
   description = "UFFI Compatibility Layer for CFFI";
 
   deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz";
-    sha256 = "1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck";
+    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
+    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
   };
 
   packageName = "cffi-uffi-compat";
@@ -19,14 +19,14 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cffi-uffi-compat DESCRIPTION UFFI Compatibility Layer for CFFI
-    SHA256 1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck URL
-    http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz MD5
-    a43e3c440fc4f20494e6d2347887c963 NAME cffi-uffi-compat FILENAME
+    SHA256 1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
+    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
+    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-uffi-compat FILENAME
     cffi-uffi-compat DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cffi FILENAME cffi)
      (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION cffi_0.23.0
+    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION cffi_0.24.1
     SIBLINGS
     (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-toolchain cffi)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
index 103f233fa41f..0738ea5909f4 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cffi";
-  version = "cffi_0.23.0";
+  version = "cffi_0.24.1";
 
   parasites = [ "cffi/c2ffi" "cffi/c2ffi-generator" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."babel" args."cl-json" args."cl-ppcre" args."trivial-features" args."uiop" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz";
-    sha256 = "1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck";
+    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
+    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
   };
 
   packageName = "cffi";
@@ -21,15 +21,15 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cffi DESCRIPTION The Common Foreign Function Interface SHA256
-    1szpbg5m5fjq7bpkblflpnwmgz3ncsvp1y43g3jzwlk7yfxrwxck URL
-    http://beta.quicklisp.org/archive/cffi/2020-07-15/cffi_0.23.0.tgz MD5
-    a43e3c440fc4f20494e6d2347887c963 NAME cffi FILENAME cffi DEPS
+    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
+    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
+    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi FILENAME cffi DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cl-json FILENAME cl-json) (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME trivial-features FILENAME trivial-features)
      (NAME uiop FILENAME uiop))
     DEPENDENCIES (alexandria babel cl-json cl-ppcre trivial-features uiop)
-    VERSION cffi_0.23.0 SIBLINGS
+    VERSION cffi_0.24.1 SIBLINGS
     (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-toolchain
      cffi-uffi-compat)
     PARASITES (cffi/c2ffi cffi/c2ffi-generator)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/chanl.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/chanl.nix
index b6940af59865..8e32a0b1abf4 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/chanl.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/chanl.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "chanl";
-  version = "20210124-git";
+  version = "20210411-git";
 
   parasites = [ "chanl/examples" "chanl/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."bordeaux-threads" args."fiveam" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/chanl/2021-01-24/chanl-20210124-git.tgz";
-    sha256 = "1lb0k5nh51f8hskpm1pma5ds4lk1zpbk9czpw9bk8hdykr178mzc";
+    url = "http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz";
+    sha256 = "1c1yiw616q5hv6vzyg1y4kg68v94p37s5jrq387rwadfnnf46rgi";
   };
 
   packageName = "chanl";
@@ -22,11 +22,11 @@ rec {
 }
 /* (SYSTEM chanl DESCRIPTION
     Communicating Sequential Process support for Common Lisp SHA256
-    1lb0k5nh51f8hskpm1pma5ds4lk1zpbk9czpw9bk8hdykr178mzc URL
-    http://beta.quicklisp.org/archive/chanl/2021-01-24/chanl-20210124-git.tgz
-    MD5 2f9e2d16caa2febff4f5beb6226b7ccf NAME chanl FILENAME chanl DEPS
+    1c1yiw616q5hv6vzyg1y4kg68v94p37s5jrq387rwadfnnf46rgi URL
+    http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz
+    MD5 efaa5705b5feaa718290d25a95e2a684 NAME chanl FILENAME chanl DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria bordeaux-threads fiveam) VERSION 20210124-git
+    DEPENDENCIES (alexandria bordeaux-threads fiveam) VERSION 20210411-git
     SIBLINGS NIL PARASITES (chanl/examples chanl/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-change-case.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-change-case.nix
index eb967399371b..99ff56f9b15e 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-change-case.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-change-case.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl-change-case";
-  version = "20210228-git";
+  version = "20210411-git";
 
   parasites = [ "cl-change-case/test" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."cl-ppcre" args."cl-ppcre-unicode" args."cl-unicode" args."fiveam" args."flexi-streams" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-change-case/2021-02-28/cl-change-case-20210228-git.tgz";
-    sha256 = "15x8zxwa3pxs02fh0qxmbvz6vi59x6ha09p5hs4rgd6axs0k4pmi";
+    url = "http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz";
+    sha256 = "14s26b907h1nsnwdqbj6j4c9bvc4rc2l8ry2q1j7ibjfzqvhp4mj";
   };
 
   packageName = "cl-change-case";
@@ -22,13 +22,13 @@ rec {
 }
 /* (SYSTEM cl-change-case DESCRIPTION
     Convert strings between camelCase, param-case, PascalCase and more SHA256
-    15x8zxwa3pxs02fh0qxmbvz6vi59x6ha09p5hs4rgd6axs0k4pmi URL
-    http://beta.quicklisp.org/archive/cl-change-case/2021-02-28/cl-change-case-20210228-git.tgz
-    MD5 8fec07f0634a739134dc4fcec807fe16 NAME cl-change-case FILENAME
+    14s26b907h1nsnwdqbj6j4c9bvc4rc2l8ry2q1j7ibjfzqvhp4mj URL
+    http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz
+    MD5 df72a3d71a6c65e149704688aec859b9 NAME cl-change-case FILENAME
     cl-change-case DEPS
     ((NAME cl-ppcre FILENAME cl-ppcre)
      (NAME cl-ppcre-unicode FILENAME cl-ppcre-unicode)
      (NAME cl-unicode FILENAME cl-unicode) (NAME fiveam FILENAME fiveam)
      (NAME flexi-streams FILENAME flexi-streams))
     DEPENDENCIES (cl-ppcre cl-ppcre-unicode cl-unicode fiveam flexi-streams)
-    VERSION 20210228-git SIBLINGS NIL PARASITES (cl-change-case/test)) */
+    VERSION 20210411-git SIBLINGS NIL PARASITES (cl-change-case/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors2.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors2.nix
index 5a8bea30a59e..5fac77896b69 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors2.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors2.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl-colors2";
-  version = "20200218-git";
+  version = "20210411-git";
 
   parasites = [ "cl-colors2/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."cl-ppcre" args."clunit2" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-colors2/2020-02-18/cl-colors2-20200218-git.tgz";
-    sha256 = "0rpf8j232qv254zhkvkz3ja20al1kswvcqhvvv0r2ag6dks56j29";
+    url = "http://beta.quicklisp.org/archive/cl-colors2/2021-04-11/cl-colors2-20210411-git.tgz";
+    sha256 = "14kdi214x8rxil27wfbx0csgi7g8dg5wsifpsrdrqph0p7ps8snk";
   };
 
   packageName = "cl-colors2";
@@ -21,11 +21,11 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-colors2 DESCRIPTION Simple color library for Common Lisp SHA256
-    0rpf8j232qv254zhkvkz3ja20al1kswvcqhvvv0r2ag6dks56j29 URL
-    http://beta.quicklisp.org/archive/cl-colors2/2020-02-18/cl-colors2-20200218-git.tgz
-    MD5 054283564f17af46a09e259ff509b656 NAME cl-colors2 FILENAME cl-colors2
+    14kdi214x8rxil27wfbx0csgi7g8dg5wsifpsrdrqph0p7ps8snk URL
+    http://beta.quicklisp.org/archive/cl-colors2/2021-04-11/cl-colors2-20210411-git.tgz
+    MD5 e6b54e76e7d1cfcff45955dbd4752f1d NAME cl-colors2 FILENAME cl-colors2
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME clunit2 FILENAME clunit2))
-    DEPENDENCIES (alexandria cl-ppcre clunit2) VERSION 20200218-git SIBLINGS
+    DEPENDENCIES (alexandria cl-ppcre clunit2) VERSION 20210411-git SIBLINGS
     NIL PARASITES (cl-colors2/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-environments.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-environments.nix
new file mode 100644
index 000000000000..803d138b2eab
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-environments.nix
@@ -0,0 +1,44 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "cl-environments";
+  version = "20210411-git";
+
+  parasites = [ "cl-environments/test" ];
+
+  description = "Implements the CLTL2 environment access functionality
+                for implementations which do not provide the
+                functionality to the programmer.";
+
+  deps = [ args."alexandria" args."anaphora" args."cl-ansi-text" args."cl-colors" args."cl-ppcre" args."closer-mop" args."collectors" args."iterate" args."optima" args."prove" args."prove-asdf" args."symbol-munger" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/cl-environments/2021-04-11/cl-environments-20210411-git.tgz";
+    sha256 = "1xs1wwf6fmzq5zxmv5d9f2mfmhc7j2w03519ky6id5md75j68lhk";
+  };
+
+  packageName = "cl-environments";
+
+  asdFilesToKeep = ["cl-environments.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-environments DESCRIPTION
+    Implements the CLTL2 environment access functionality
+                for implementations which do not provide the
+                functionality to the programmer.
+    SHA256 1xs1wwf6fmzq5zxmv5d9f2mfmhc7j2w03519ky6id5md75j68lhk URL
+    http://beta.quicklisp.org/archive/cl-environments/2021-04-11/cl-environments-20210411-git.tgz
+    MD5 87b7c0186d37d30d24df11d021ab4fba NAME cl-environments FILENAME
+    cl-environments DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
+     (NAME cl-ansi-text FILENAME cl-ansi-text)
+     (NAME cl-colors FILENAME cl-colors) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors) (NAME iterate FILENAME iterate)
+     (NAME optima FILENAME optima) (NAME prove FILENAME prove)
+     (NAME prove-asdf FILENAME prove-asdf)
+     (NAME symbol-munger FILENAME symbol-munger))
+    DEPENDENCIES
+    (alexandria anaphora cl-ansi-text cl-colors cl-ppcre closer-mop collectors
+     iterate optima prove prove-asdf symbol-munger)
+    VERSION 20210411-git SIBLINGS NIL PARASITES (cl-environments/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-gobject-introspection.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-gobject-introspection.nix
new file mode 100644
index 000000000000..15b16ef84c1a
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-gobject-introspection.nix
@@ -0,0 +1,32 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "cl-gobject-introspection";
+  version = "20210124-git";
+
+  description = "Binding to GObjectIntrospection";
+
+  deps = [ args."alexandria" args."babel" args."cffi" args."iterate" args."trivial-features" args."trivial-garbage" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz";
+    sha256 = "1hrc451d9xdp3pfmwalw32r3iqfvw6ccy665kl5560lihwmk59w0";
+  };
+
+  packageName = "cl-gobject-introspection";
+
+  asdFilesToKeep = ["cl-gobject-introspection.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM cl-gobject-introspection DESCRIPTION Binding to GObjectIntrospection
+    SHA256 1hrc451d9xdp3pfmwalw32r3iqfvw6ccy665kl5560lihwmk59w0 URL
+    http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz
+    MD5 ad760b820c86142c0a1309af29541680 NAME cl-gobject-introspection FILENAME
+    cl-gobject-introspection DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
+     (NAME cffi FILENAME cffi) (NAME iterate FILENAME iterate)
+     (NAME trivial-features FILENAME trivial-features)
+     (NAME trivial-garbage FILENAME trivial-garbage))
+    DEPENDENCIES
+    (alexandria babel cffi iterate trivial-features trivial-garbage) VERSION
+    20210124-git SIBLINGS (cl-gobject-introspection-test) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
index 95f5d0373812..5e78f8e98c46 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl-postgres";
-  version = "postmodern-20210124-git";
+  version = "postmodern-20210411-git";
 
   parasites = [ "cl-postgres/simple-date-tests" "cl-postgres/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-ppcre" args."fiveam" args."ironclad" args."md5" args."simple-date" args."simple-date_slash_postgres-glue" args."split-sequence" args."uax-15" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz";
-    sha256 = "1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc";
+    url = "http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz";
+    sha256 = "0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw";
   };
 
   packageName = "cl-postgres";
@@ -21,9 +21,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-postgres DESCRIPTION Low-level client library for PostgreSQL
-    SHA256 1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc URL
-    http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz
-    MD5 05c2c5f4d2354a5fa69a32b7b96f8ff8 NAME cl-postgres FILENAME cl-postgres
+    SHA256 0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw URL
+    http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz
+    MD5 8a75a05ba9e371f672f2620d40724cb2 NAME cl-postgres FILENAME cl-postgres
     DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -36,5 +36,5 @@ rec {
     DEPENDENCIES
     (alexandria bordeaux-threads cl-base64 cl-ppcre fiveam ironclad md5
      simple-date simple-date/postgres-glue split-sequence uax-15 usocket)
-    VERSION postmodern-20210124-git SIBLINGS (postmodern s-sql simple-date)
+    VERSION postmodern-20210411-git SIBLINGS (postmodern s-sql simple-date)
     PARASITES (cl-postgres/simple-date-tests cl-postgres/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-typesetting.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-typesetting.nix
index 82beff705798..0284b2dfd223 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-typesetting.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-typesetting.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl-typesetting";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Common Lisp Typesetting system";
 
   deps = [ args."cl-pdf" args."iterate" args."zpb-ttf" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-02-28/cl-typesetting-20210228-git.tgz";
-    sha256 = "13rmzyzp0glq35jq3qdlmrsdssa6csqp5g455li4wi7kq8clrwnp";
+    url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-04-11/cl-typesetting-20210411-git.tgz";
+    sha256 = "1102n049hhg0kqnfvdfcisjq5l9yfvbw090nq0q8vd2bc688ng41";
   };
 
   packageName = "cl-typesetting";
@@ -19,11 +19,11 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-typesetting DESCRIPTION Common Lisp Typesetting system SHA256
-    13rmzyzp0glq35jq3qdlmrsdssa6csqp5g455li4wi7kq8clrwnp URL
-    http://beta.quicklisp.org/archive/cl-typesetting/2021-02-28/cl-typesetting-20210228-git.tgz
-    MD5 949e7de37838d63f4c6b6e7dd88befeb NAME cl-typesetting FILENAME
+    1102n049hhg0kqnfvdfcisjq5l9yfvbw090nq0q8vd2bc688ng41 URL
+    http://beta.quicklisp.org/archive/cl-typesetting/2021-04-11/cl-typesetting-20210411-git.tgz
+    MD5 f3fc7a47efb99cf849cb5eeede96dbaf NAME cl-typesetting FILENAME
     cl-typesetting DEPS
     ((NAME cl-pdf FILENAME cl-pdf) (NAME iterate FILENAME iterate)
      (NAME zpb-ttf FILENAME zpb-ttf))
-    DEPENDENCIES (cl-pdf iterate zpb-ttf) VERSION 20210228-git SIBLINGS
+    DEPENDENCIES (cl-pdf iterate zpb-ttf) VERSION 20210411-git SIBLINGS
     (xml-render cl-pdf-doc) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-webkit2.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-webkit2.nix
index 56275d72740c..84005b13b205 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-webkit2.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-webkit2.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl-webkit2";
-  version = "cl-webkit-20210228-git";
+  version = "cl-webkit-20210411-git";
 
   description = "An FFI binding to WebKit2GTK+";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk" args."cl-cffi-gtk-cairo" args."cl-cffi-gtk-gdk" args."cl-cffi-gtk-gdk-pixbuf" args."cl-cffi-gtk-gio" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."cl-cffi-gtk-pango" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-webkit/2021-02-28/cl-webkit-20210228-git.tgz";
-    sha256 = "1r6i64g37palar4hij6c5m240xbn2dwzwaashv015nhjwmra1ms1";
+    url = "http://beta.quicklisp.org/archive/cl-webkit/2021-04-11/cl-webkit-20210411-git.tgz";
+    sha256 = "10cky5v67s9mx2j96k0z01qbqfyc8w6a8byaamm7al5qkw997brh";
   };
 
   packageName = "cl-webkit2";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-webkit2 DESCRIPTION An FFI binding to WebKit2GTK+ SHA256
-    1r6i64g37palar4hij6c5m240xbn2dwzwaashv015nhjwmra1ms1 URL
-    http://beta.quicklisp.org/archive/cl-webkit/2021-02-28/cl-webkit-20210228-git.tgz
-    MD5 49f38c18ac292122628356762270e5ff NAME cl-webkit2 FILENAME cl-webkit2
+    10cky5v67s9mx2j96k0z01qbqfyc8w6a8byaamm7al5qkw997brh URL
+    http://beta.quicklisp.org/archive/cl-webkit/2021-04-11/cl-webkit-20210411-git.tgz
+    MD5 01b52f031fd8742ac9d422e4fcd2a225 NAME cl-webkit2 FILENAME cl-webkit2
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -41,4 +41,4 @@ rec {
      cl-cffi-gtk-gdk cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gio cl-cffi-gtk-glib
      cl-cffi-gtk-gobject cl-cffi-gtk-pango closer-mop iterate trivial-features
      trivial-garbage)
-    VERSION cl-webkit-20210228-git SIBLINGS NIL PARASITES NIL) */
+    VERSION cl-webkit-20210411-git SIBLINGS NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
index 6811c62ad2e1..55eb89349458 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "cl_plus_ssl";
-  version = "cl+ssl-20210228-git";
+  version = "cl+ssl-20210411-git";
 
   description = "Common Lisp interface to OpenSSL.";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."flexi-streams" args."split-sequence" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."uiop" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl+ssl/2021-02-28/cl+ssl-20210228-git.tgz";
-    sha256 = "1njppcg5fm8l0lhf7nf8nfyaz9vsr922y0vfxqdp9hp7qfid8yll";
+    url = "http://beta.quicklisp.org/archive/cl+ssl/2021-04-11/cl+ssl-20210411-git.tgz";
+    sha256 = "1rc13lc5wwzlkn7yhl3bwl6cmxxldmbfnz52nz5b83v4wlw2zbcw";
   };
 
   packageName = "cl+ssl";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl+ssl DESCRIPTION Common Lisp interface to OpenSSL. SHA256
-    1njppcg5fm8l0lhf7nf8nfyaz9vsr922y0vfxqdp9hp7qfid8yll URL
-    http://beta.quicklisp.org/archive/cl+ssl/2021-02-28/cl+ssl-20210228-git.tgz
-    MD5 01b61fd8ee6ad8d3c1c695ba56d510b6 NAME cl+ssl FILENAME cl_plus_ssl DEPS
+    1rc13lc5wwzlkn7yhl3bwl6cmxxldmbfnz52nz5b83v4wlw2zbcw URL
+    http://beta.quicklisp.org/archive/cl+ssl/2021-04-11/cl+ssl-20210411-git.tgz
+    MD5 9ef5b60ac4c8ad4f435a3ef6234897d0 NAME cl+ssl FILENAME cl_plus_ssl DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME flexi-streams FILENAME flexi-streams)
@@ -33,4 +33,4 @@ rec {
     DEPENDENCIES
     (alexandria babel bordeaux-threads cffi flexi-streams split-sequence
      trivial-features trivial-garbage trivial-gray-streams uiop usocket)
-    VERSION cl+ssl-20210228-git SIBLINGS (cl+ssl.test) PARASITES NIL) */
+    VERSION cl+ssl-20210411-git SIBLINGS (cl+ssl.test) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
index ff3679a2639a..3c18fd911952 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "clack-handler-hunchentoot";
-  version = "clack-20191007-git";
+  version = "clack-20210411-git";
 
   description = "Clack handler for Hunchentoot.";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-fad" args."cl-ppcre" args."clack-socket" args."flexi-streams" args."hunchentoot" args."md5" args."rfc2388" args."split-sequence" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz";
-    sha256 = "004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w";
+    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
+    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
   };
 
   packageName = "clack-handler-hunchentoot";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-handler-hunchentoot DESCRIPTION Clack handler for Hunchentoot.
-    SHA256 004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w URL
-    http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz
-    MD5 25741855fa1e989d373ac06ddfabf351 NAME clack-handler-hunchentoot
+    SHA256 0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
+    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
+    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-handler-hunchentoot
     FILENAME clack-handler-hunchentoot DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -43,7 +43,7 @@ rec {
      cl-ppcre clack-socket flexi-streams hunchentoot md5 rfc2388 split-sequence
      trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
      usocket)
-    VERSION clack-20191007-git SIBLINGS
+    VERSION clack-20210411-git SIBLINGS
     (clack-handler-fcgi clack-handler-toot clack-handler-wookie clack-socket
      clack-test clack-v1-compat clack t-clack-handler-fcgi
      t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
index e597bb66d60f..2fe47652ebbc 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "clack-socket";
-  version = "clack-20191007-git";
+  version = "clack-20210411-git";
 
   description = "System lacks description";
 
   deps = [ ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz";
-    sha256 = "004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w";
+    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
+    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
   };
 
   packageName = "clack-socket";
@@ -19,10 +19,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-socket DESCRIPTION System lacks description SHA256
-    004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w URL
-    http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz
-    MD5 25741855fa1e989d373ac06ddfabf351 NAME clack-socket FILENAME
-    clack-socket DEPS NIL DEPENDENCIES NIL VERSION clack-20191007-git SIBLINGS
+    0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
+    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
+    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-socket FILENAME
+    clack-socket DEPS NIL DEPENDENCIES NIL VERSION clack-20210411-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-test clack-v1-compat clack t-clack-handler-fcgi
      t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
index d014ccc21110..ab2794fbdd1c 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "clack-test";
-  version = "clack-20191007-git";
+  version = "clack-20210411-git";
 
   description = "Testing Clack Applications.";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-annot" args."cl-base64" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."dexador" args."dissect" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."local-time" args."md5" args."named-readtables" args."proc-parse" args."quri" args."rfc2388" args."rove" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz";
-    sha256 = "004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w";
+    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
+    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
   };
 
   packageName = "clack-test";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-test DESCRIPTION Testing Clack Applications. SHA256
-    004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w URL
-    http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz
-    MD5 25741855fa1e989d373ac06ddfabf351 NAME clack-test FILENAME clack-test
+    0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
+    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
+    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-test FILENAME clack-test
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -68,7 +68,7 @@ rec {
      proc-parse quri rfc2388 rove smart-buffer split-sequence static-vectors
      trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
      trivial-mimes trivial-types usocket xsubseq)
-    VERSION clack-20191007-git SIBLINGS
+    VERSION clack-20210411-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-v1-compat clack
      t-clack-handler-fcgi t-clack-handler-hunchentoot t-clack-handler-toot
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
index 6d90a5ef1f08..f93b8e1c9d67 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "clack-v1-compat";
-  version = "clack-20191007-git";
+  version = "clack-20210411-git";
 
   description = "System lacks description";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."circular-streams" args."cl_plus_ssl" args."cl-annot" args."cl-base64" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."clack-test" args."dexador" args."dissect" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."local-time" args."marshal" args."md5" args."named-readtables" args."proc-parse" args."quri" args."rfc2388" args."rove" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."uiop" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz";
-    sha256 = "004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w";
+    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
+    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
   };
 
   packageName = "clack-v1-compat";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-v1-compat DESCRIPTION System lacks description SHA256
-    004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w URL
-    http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz
-    MD5 25741855fa1e989d373ac06ddfabf351 NAME clack-v1-compat FILENAME
+    0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
+    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
+    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-v1-compat FILENAME
     clack-v1-compat DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -73,7 +73,7 @@ rec {
      split-sequence static-vectors trivial-backtrace trivial-features
      trivial-garbage trivial-gray-streams trivial-mimes trivial-types uiop
      usocket xsubseq)
-    VERSION clack-20191007-git SIBLINGS
+    VERSION clack-20210411-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-test clack t-clack-handler-fcgi
      t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
index 78ffa543ece4..95447ca8ad78 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "clack";
-  version = "20191007-git";
+  version = "20210411-git";
 
   description = "Web application environment for Common Lisp";
 
-  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."uiop" ];
+  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."split-sequence" args."uiop" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz";
-    sha256 = "004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w";
+    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
+    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
   };
 
   packageName = "clack";
@@ -19,19 +19,21 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack DESCRIPTION Web application environment for Common Lisp SHA256
-    004drm82mhxmcsa00lbmq2l89g4fzwn6j2drfwdazrpi27z0ry5w URL
-    http://beta.quicklisp.org/archive/clack/2019-10-07/clack-20191007-git.tgz
-    MD5 25741855fa1e989d373ac06ddfabf351 NAME clack FILENAME clack DEPS
+    0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
+    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
+    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack FILENAME clack DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME ironclad FILENAME ironclad) (NAME lack FILENAME lack)
      (NAME lack-component FILENAME lack-component)
      (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
-     (NAME lack-util FILENAME lack-util) (NAME uiop FILENAME uiop))
+     (NAME lack-util FILENAME lack-util)
+     (NAME split-sequence FILENAME split-sequence) (NAME uiop FILENAME uiop)
+     (NAME usocket FILENAME usocket))
     DEPENDENCIES
     (alexandria bordeaux-threads ironclad lack lack-component
-     lack-middleware-backtrace lack-util uiop)
-    VERSION 20191007-git SIBLINGS
+     lack-middleware-backtrace lack-util split-sequence uiop usocket)
+    VERSION 20210411-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-test clack-v1-compat
      t-clack-handler-fcgi t-clack-handler-hunchentoot t-clack-handler-toot
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
index ff8e7cc953ca..876681846c89 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "closer-mop";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.";
 
   deps = [ ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/closer-mop/2021-02-28/closer-mop-20210228-git.tgz";
-    sha256 = "0x3rp2v84zzw5mhcxrgbq2kcb9gs4jn1l9rh4ylsnih89l9lqc6i";
+    url = "http://beta.quicklisp.org/archive/closer-mop/2021-04-11/closer-mop-20210411-git.tgz";
+    sha256 = "0pynql962m2z7wqnmd51a2xm3wsqvgfxcq9maw2br0zs0icys236";
   };
 
   packageName = "closer-mop";
@@ -20,7 +20,7 @@ rec {
 }
 /* (SYSTEM closer-mop DESCRIPTION
     Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.
-    SHA256 0x3rp2v84zzw5mhcxrgbq2kcb9gs4jn1l9rh4ylsnih89l9lqc6i URL
-    http://beta.quicklisp.org/archive/closer-mop/2021-02-28/closer-mop-20210228-git.tgz
-    MD5 49c0004ff21157bc99f227cecf7b6025 NAME closer-mop FILENAME closer-mop
-    DEPS NIL DEPENDENCIES NIL VERSION 20210228-git SIBLINGS NIL PARASITES NIL) */
+    SHA256 0pynql962m2z7wqnmd51a2xm3wsqvgfxcq9maw2br0zs0icys236 URL
+    http://beta.quicklisp.org/archive/closer-mop/2021-04-11/closer-mop-20210411-git.tgz
+    MD5 05b05d98ad294f8bd6f9779d04cc848a NAME closer-mop FILENAME closer-mop
+    DEPS NIL DEPENDENCIES NIL VERSION 20210411-git SIBLINGS NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
index b7b7cf0eadc7..b035477eda47 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "dexador";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Yet another HTTP client for Common Lisp";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-cookie" args."cl-ppcre" args."cl-reexport" args."cl-utilities" args."fast-http" args."fast-io" args."flexi-streams" args."local-time" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/dexador/2021-02-28/dexador-20210228-git.tgz";
-    sha256 = "0glzvi7nbr58izpwr8xzxvlcc78zmgwqaik374rmcy6w89q5ksw7";
+    url = "http://beta.quicklisp.org/archive/dexador/2021-04-11/dexador-20210411-git.tgz";
+    sha256 = "1px4llzb6x930cq3dmrkzidydqqc8rd2y4s3nlwpsrv4874cxwx1";
   };
 
   packageName = "dexador";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dexador DESCRIPTION Yet another HTTP client for Common Lisp SHA256
-    0glzvi7nbr58izpwr8xzxvlcc78zmgwqaik374rmcy6w89q5ksw7 URL
-    http://beta.quicklisp.org/archive/dexador/2021-02-28/dexador-20210228-git.tgz
-    MD5 e3b69c8ceb78d99351e574c40dfd0e12 NAME dexador FILENAME dexador DEPS
+    1px4llzb6x930cq3dmrkzidydqqc8rd2y4s3nlwpsrv4874cxwx1 URL
+    http://beta.quicklisp.org/archive/dexador/2021-04-11/dexador-20210411-git.tgz
+    MD5 10d59691af3e25e590a2dfff29c91292 NAME dexador FILENAME dexador DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
@@ -48,4 +48,4 @@ rec {
      fast-http fast-io flexi-streams local-time proc-parse quri smart-buffer
      split-sequence static-vectors trivial-features trivial-garbage
      trivial-gray-streams trivial-mimes usocket xsubseq)
-    VERSION 20210228-git SIBLINGS (dexador-test) PARASITES NIL) */
+    VERSION 20210411-git SIBLINGS (dexador-test) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/file-attributes.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/file-attributes.nix
index c6bb4c1baaf0..6af2f0f24fee 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/file-attributes.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/file-attributes.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "file-attributes";
-  version = "20200925-git";
+  version = "20210411-git";
 
   description = "Access to file attributes (uid, gid, atime, mtime, mod)";
 
   deps = [ args."alexandria" args."babel" args."cffi" args."documentation-utils" args."trivial-features" args."trivial-indent" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/file-attributes/2020-09-25/file-attributes-20200925-git.tgz";
-    sha256 = "0wq3gs36zwl8dzknj3c794l60vg1zpf0siwhd7ad9pn81v3mdan7";
+    url = "http://beta.quicklisp.org/archive/file-attributes/2021-04-11/file-attributes-20210411-git.tgz";
+    sha256 = "0zsqimyzfivr08d6pdg6xxw6cj7q9pjh2wi9c460nh85z7a51yc9";
   };
 
   packageName = "file-attributes";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM file-attributes DESCRIPTION
     Access to file attributes (uid, gid, atime, mtime, mod) SHA256
-    0wq3gs36zwl8dzknj3c794l60vg1zpf0siwhd7ad9pn81v3mdan7 URL
-    http://beta.quicklisp.org/archive/file-attributes/2020-09-25/file-attributes-20200925-git.tgz
-    MD5 368468453cf57ecc29fa75f2a030a738 NAME file-attributes FILENAME
+    0zsqimyzfivr08d6pdg6xxw6cj7q9pjh2wi9c460nh85z7a51yc9 URL
+    http://beta.quicklisp.org/archive/file-attributes/2021-04-11/file-attributes-20210411-git.tgz
+    MD5 75e0f0e2c280c97fe496545e7105fa01 NAME file-attributes FILENAME
     file-attributes DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cffi FILENAME cffi)
@@ -31,4 +31,4 @@ rec {
      (NAME trivial-indent FILENAME trivial-indent))
     DEPENDENCIES
     (alexandria babel cffi documentation-utils trivial-features trivial-indent)
-    VERSION 20200925-git SIBLINGS NIL PARASITES NIL) */
+    VERSION 20210411-git SIBLINGS NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/generic-cl.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/generic-cl.nix
new file mode 100644
index 000000000000..04750febab07
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/generic-cl.nix
@@ -0,0 +1,56 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "generic-cl";
+  version = "20201220-git";
+
+  parasites = [ "generic-cl/test" ];
+
+  description = "Standard Common Lisp functions implemented using generic functions.";
+
+  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-ansi-text" args."cl-colors" args."cl-custom-hash-table" args."cl-environments" args."cl-ppcre" args."closer-mop" args."collectors" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."prove" args."prove-asdf" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/generic-cl/2020-12-20/generic-cl-20201220-git.tgz";
+    sha256 = "02awl64bfykkasv3z9xpiiwq3v9vgcacqagbwvigqdk15hqrknyl";
+  };
+
+  packageName = "generic-cl";
+
+  asdFilesToKeep = ["generic-cl.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM generic-cl DESCRIPTION
+    Standard Common Lisp functions implemented using generic functions. SHA256
+    02awl64bfykkasv3z9xpiiwq3v9vgcacqagbwvigqdk15hqrknyl URL
+    http://beta.quicklisp.org/archive/generic-cl/2020-12-20/generic-cl-20201220-git.tgz
+    MD5 76aa19981d3addb9a741fd4705d5d3ff NAME generic-cl FILENAME generic-cl
+    DEPS
+    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
+     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
+     (NAME cl-ansi-text FILENAME cl-ansi-text)
+     (NAME cl-colors FILENAME cl-colors)
+     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
+     (NAME cl-environments FILENAME cl-environments)
+     (NAME cl-ppcre FILENAME cl-ppcre) (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors)
+     (NAME introspect-environment FILENAME introspect-environment)
+     (NAME iterate FILENAME iterate)
+     (NAME lisp-namespace FILENAME lisp-namespace)
+     (NAME optima FILENAME optima) (NAME prove FILENAME prove)
+     (NAME prove-asdf FILENAME prove-asdf)
+     (NAME static-dispatch FILENAME static-dispatch)
+     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
+     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
+     (NAME trivia.level0 FILENAME trivia_dot_level0)
+     (NAME trivia.level1 FILENAME trivia_dot_level1)
+     (NAME trivia.level2 FILENAME trivia_dot_level2)
+     (NAME trivia.trivial FILENAME trivia_dot_trivial)
+     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
+    DEPENDENCIES
+    (agutil alexandria anaphora arrows cl-ansi-text cl-colors
+     cl-custom-hash-table cl-environments cl-ppcre closer-mop collectors
+     introspect-environment iterate lisp-namespace optima prove prove-asdf
+     static-dispatch symbol-munger trivia trivia.balland2006 trivia.level0
+     trivia.level1 trivia.level2 trivia.trivial trivial-cltl2 type-i)
+    VERSION 20201220-git SIBLINGS (generic-cl.util) PARASITES (generic-cl/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
index c511435ac9c3..b6f602387e16 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "ironclad";
-  version = "v0.54";
+  version = "v0.55";
 
   parasites = [ "ironclad/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."bordeaux-threads" args."rt" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/ironclad/2021-01-24/ironclad-v0.54.tgz";
-    sha256 = "01mpsnjx8cgn3wx2n0dkv8v83z93da9zrxncn58ghbpyq3z1i4w2";
+    url = "http://beta.quicklisp.org/archive/ironclad/2021-04-11/ironclad-v0.55.tgz";
+    sha256 = "0vdqaad9i3dkz6z2y1iqmh6m77kc9jy49xh9bysgywl0gfdyhnq6";
   };
 
   packageName = "ironclad";
@@ -22,10 +22,10 @@ rec {
 }
 /* (SYSTEM ironclad DESCRIPTION
     A cryptographic toolkit written in pure Common Lisp SHA256
-    01mpsnjx8cgn3wx2n0dkv8v83z93da9zrxncn58ghbpyq3z1i4w2 URL
-    http://beta.quicklisp.org/archive/ironclad/2021-01-24/ironclad-v0.54.tgz
-    MD5 f99610509e4603aac66d9aa03ede2770 NAME ironclad FILENAME ironclad DEPS
+    0vdqaad9i3dkz6z2y1iqmh6m77kc9jy49xh9bysgywl0gfdyhnq6 URL
+    http://beta.quicklisp.org/archive/ironclad/2021-04-11/ironclad-v0.55.tgz
+    MD5 c3c4a88e71ef37c9604662071069afcc NAME ironclad FILENAME ironclad DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads) (NAME rt FILENAME rt))
-    DEPENDENCIES (alexandria bordeaux-threads rt) VERSION v0.54 SIBLINGS
+    DEPENDENCIES (alexandria bordeaux-threads rt) VERSION v0.55 SIBLINGS
     (ironclad-text) PARASITES (ironclad/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
index e9e5ed5f1d16..e935d2b3d99d 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "marshal";
-  version = "cl-20201016-git";
+  version = "cl-20210411-git";
 
   description = "marshal: Simple (de)serialization of Lisp datastructures.";
 
   deps = [ ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-marshal/2020-10-16/cl-marshal-20201016-git.tgz";
-    sha256 = "03j52yhgpc2myypgy07213l20rznxvf6m3sfbzy2wyapcmv7nxnz";
+    url = "http://beta.quicklisp.org/archive/cl-marshal/2021-04-11/cl-marshal-20210411-git.tgz";
+    sha256 = "0wi4csgl5qxgl0si5mcg19xx4qlmw125qn0w1i2f3dvvrzp20qrp";
   };
 
   packageName = "marshal";
@@ -20,8 +20,8 @@ rec {
 }
 /* (SYSTEM marshal DESCRIPTION
     marshal: Simple (de)serialization of Lisp datastructures. SHA256
-    03j52yhgpc2myypgy07213l20rznxvf6m3sfbzy2wyapcmv7nxnz URL
-    http://beta.quicklisp.org/archive/cl-marshal/2020-10-16/cl-marshal-20201016-git.tgz
-    MD5 243a2c3a5f1243ffb1639bca32a0aff0 NAME marshal FILENAME marshal DEPS NIL
-    DEPENDENCIES NIL VERSION cl-20201016-git SIBLINGS (marshal-tests) PARASITES
+    0wi4csgl5qxgl0si5mcg19xx4qlmw125qn0w1i2f3dvvrzp20qrp URL
+    http://beta.quicklisp.org/archive/cl-marshal/2021-04-11/cl-marshal-20210411-git.tgz
+    MD5 2463314a6bcd1a18bea2690deb6bce55 NAME marshal FILENAME marshal DEPS NIL
+    DEPENDENCIES NIL VERSION cl-20210411-git SIBLINGS (marshal-tests) PARASITES
     NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/mgl-pax.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/mgl-pax.nix
index 53896192b52e..c22acbce4f0c 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/mgl-pax.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/mgl-pax.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "mgl-pax";
-  version = "20210228-git";
+  version = "20210411-git";
 
   parasites = [ "mgl-pax/test" ];
 
@@ -12,8 +12,8 @@ rec {
   deps = [ args."_3bmd" args."_3bmd-ext-code-blocks" args."alexandria" args."babel" args."bordeaux-threads" args."cl-fad" args."colorize" args."esrap" args."html-encode" args."ironclad" args."named-readtables" args."pythonic-string-reader" args."split-sequence" args."swank" args."trivial-features" args."trivial-with-current-source-form" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/mgl-pax/2021-02-28/mgl-pax-20210228-git.tgz";
-    sha256 = "1dyhbnd69lb6ih89pvg8nn6pwsg25v5xjsfk1i5l1fdib14612cw";
+    url = "http://beta.quicklisp.org/archive/mgl-pax/2021-04-11/mgl-pax-20210411-git.tgz";
+    sha256 = "0dq5jkb6li0s1gqj6hfhifs6cd4kypavv2kjqg5zgs6zfs82sxh3";
   };
 
   packageName = "mgl-pax";
@@ -23,9 +23,9 @@ rec {
 }
 /* (SYSTEM mgl-pax DESCRIPTION Exploratory programming tool and documentation
   generator.
-    SHA256 1dyhbnd69lb6ih89pvg8nn6pwsg25v5xjsfk1i5l1fdib14612cw URL
-    http://beta.quicklisp.org/archive/mgl-pax/2021-02-28/mgl-pax-20210228-git.tgz
-    MD5 a256ce4ee76d669d233ee09830ef7968 NAME mgl-pax FILENAME mgl-pax DEPS
+    SHA256 0dq5jkb6li0s1gqj6hfhifs6cd4kypavv2kjqg5zgs6zfs82sxh3 URL
+    http://beta.quicklisp.org/archive/mgl-pax/2021-04-11/mgl-pax-20210411-git.tgz
+    MD5 44cf1bd71e6c40c256a43a87efa2c2a1 NAME mgl-pax FILENAME mgl-pax DEPS
     ((NAME 3bmd FILENAME _3bmd)
      (NAME 3bmd-ext-code-blocks FILENAME _3bmd-ext-code-blocks)
      (NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
@@ -44,4 +44,4 @@ rec {
      colorize esrap html-encode ironclad named-readtables
      pythonic-string-reader split-sequence swank trivial-features
      trivial-with-current-source-form)
-    VERSION 20210228-git SIBLINGS NIL PARASITES (mgl-pax/test)) */
+    VERSION 20210411-git SIBLINGS NIL PARASITES (mgl-pax/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
index ef0817fbe7ca..fa7d1e047d93 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "plump";
-  version = "20210124-git";
+  version = "20210411-git";
 
   description = "An XML / XHTML / HTML parser that aims to be as lenient as possible.";
 
   deps = [ args."array-utils" args."documentation-utils" args."trivial-indent" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/plump/2021-01-24/plump-20210124-git.tgz";
-    sha256 = "0br64xiz4mgmmsvkfmi43k2q16rmc6hbqf976x8cdafs3h266jdm";
+    url = "http://beta.quicklisp.org/archive/plump/2021-04-11/plump-20210411-git.tgz";
+    sha256 = "05zs9blznfhapz5yiy08968hw64rzdgqgvfgc9r9da45b45pl6dp";
   };
 
   packageName = "plump";
@@ -20,11 +20,11 @@ rec {
 }
 /* (SYSTEM plump DESCRIPTION
     An XML / XHTML / HTML parser that aims to be as lenient as possible. SHA256
-    0br64xiz4mgmmsvkfmi43k2q16rmc6hbqf976x8cdafs3h266jdm URL
-    http://beta.quicklisp.org/archive/plump/2021-01-24/plump-20210124-git.tgz
-    MD5 44a5d371dd1c3d4afc6b8801926b059a NAME plump FILENAME plump DEPS
+    05zs9blznfhapz5yiy08968hw64rzdgqgvfgc9r9da45b45pl6dp URL
+    http://beta.quicklisp.org/archive/plump/2021-04-11/plump-20210411-git.tgz
+    MD5 055e30ed07ae793426a48b55c947f9bb NAME plump FILENAME plump DEPS
     ((NAME array-utils FILENAME array-utils)
      (NAME documentation-utils FILENAME documentation-utils)
      (NAME trivial-indent FILENAME trivial-indent))
     DEPENDENCIES (array-utils documentation-utils trivial-indent) VERSION
-    20210124-git SIBLINGS (plump-dom plump-lexer plump-parser) PARASITES NIL) */
+    20210411-git SIBLINGS (plump-dom plump-lexer plump-parser) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix
index f530d71eb687..245cb109a32c 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/postmodern.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "postmodern";
-  version = "20210124-git";
+  version = "20210411-git";
 
   parasites = [ "postmodern/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_plus_local-time" args."cl-postgres_slash_tests" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."fiveam" args."flexi-streams" args."global-vars" args."ironclad" args."local-time" args."md5" args."s-sql" args."s-sql_slash_tests" args."simple-date" args."simple-date_slash_postgres-glue" args."split-sequence" args."uax-15" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz";
-    sha256 = "1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc";
+    url = "http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz";
+    sha256 = "0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw";
   };
 
   packageName = "postmodern";
@@ -21,9 +21,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM postmodern DESCRIPTION PostgreSQL programming API SHA256
-    1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc URL
-    http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz
-    MD5 05c2c5f4d2354a5fa69a32b7b96f8ff8 NAME postmodern FILENAME postmodern
+    0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw URL
+    http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz
+    MD5 8a75a05ba9e371f672f2620d40724cb2 NAME postmodern FILENAME postmodern
     DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -46,5 +46,5 @@ rec {
      cl-postgres/tests cl-ppcre cl-unicode closer-mop fiveam flexi-streams
      global-vars ironclad local-time md5 s-sql s-sql/tests simple-date
      simple-date/postgres-glue split-sequence uax-15 usocket)
-    VERSION 20210124-git SIBLINGS (cl-postgres s-sql simple-date) PARASITES
+    VERSION 20210411-git SIBLINGS (cl-postgres s-sql simple-date) PARASITES
     (postmodern/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
index 12ea17a3491b..48d98ca23959 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "quri";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Yet another URI library for Common Lisp";
 
   deps = [ args."alexandria" args."babel" args."cl-utilities" args."split-sequence" args."trivial-features" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/quri/2021-02-28/quri-20210228-git.tgz";
-    sha256 = "03hq6x715kv37c089b73f6j8b0f4ywhxr37wbw9any2jcgrswx0g";
+    url = "http://beta.quicklisp.org/archive/quri/2021-04-11/quri-20210411-git.tgz";
+    sha256 = "1j4al77bl8awj7755g8zvgvfskdh6gcl3gygbz2fi6lrrk9125d7";
   };
 
   packageName = "quri";
@@ -19,13 +19,13 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM quri DESCRIPTION Yet another URI library for Common Lisp SHA256
-    03hq6x715kv37c089b73f6j8b0f4ywhxr37wbw9any2jcgrswx0g URL
-    http://beta.quicklisp.org/archive/quri/2021-02-28/quri-20210228-git.tgz MD5
-    67eac028850cc2539c076d31b049f7bd NAME quri FILENAME quri DEPS
+    1j4al77bl8awj7755g8zvgvfskdh6gcl3gygbz2fi6lrrk9125d7 URL
+    http://beta.quicklisp.org/archive/quri/2021-04-11/quri-20210411-git.tgz MD5
+    2727c706f51bef480171c59f6134bba5 NAME quri FILENAME quri DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cl-utilities FILENAME cl-utilities)
      (NAME split-sequence FILENAME split-sequence)
      (NAME trivial-features FILENAME trivial-features))
     DEPENDENCIES
     (alexandria babel cl-utilities split-sequence trivial-features) VERSION
-    20210228-git SIBLINGS (quri-test) PARASITES NIL) */
+    20210411-git SIBLINGS (quri-test) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix
index d6ac95810a48..d91ab87d8225 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/s-sql.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "s-sql";
-  version = "postmodern-20210124-git";
+  version = "postmodern-20210411-git";
 
   parasites = [ "s-sql/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_slash_tests" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."fiveam" args."global-vars" args."ironclad" args."md5" args."postmodern" args."split-sequence" args."uax-15" args."usocket" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz";
-    sha256 = "1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc";
+    url = "http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz";
+    sha256 = "0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw";
   };
 
   packageName = "s-sql";
@@ -21,9 +21,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM s-sql DESCRIPTION Lispy DSL for SQL SHA256
-    1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc URL
-    http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz
-    MD5 05c2c5f4d2354a5fa69a32b7b96f8ff8 NAME s-sql FILENAME s-sql DEPS
+    0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw URL
+    http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz
+    MD5 8a75a05ba9e371f672f2620d40724cb2 NAME s-sql FILENAME s-sql DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cl-base64 FILENAME cl-base64)
@@ -39,5 +39,5 @@ rec {
     (alexandria bordeaux-threads cl-base64 cl-postgres cl-postgres/tests
      cl-ppcre cl-unicode closer-mop fiveam global-vars ironclad md5 postmodern
      split-sequence uax-15 usocket)
-    VERSION postmodern-20210124-git SIBLINGS
+    VERSION postmodern-20210411-git SIBLINGS
     (cl-postgres postmodern simple-date) PARASITES (s-sql/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/serapeum.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/serapeum.nix
index cab4e8c14946..e97a639814e9 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/serapeum.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/serapeum.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "serapeum";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Utilities beyond Alexandria.";
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-extras" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."global-vars" args."introspect-environment" args."iterate" args."lisp-namespace" args."named-readtables" args."parse-declarations-1_dot_0" args."parse-number" args."split-sequence" args."string-case" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" args."trivial-features" args."trivial-file-size" args."trivial-garbage" args."trivial-macroexpand-all" args."type-i" args."uiop" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/serapeum/2021-02-28/serapeum-20210228-git.tgz";
-    sha256 = "1dici8bmvrx5h74disrlvwns8f8jl746i4cyzyclswhv208x2m3x";
+    url = "http://beta.quicklisp.org/archive/serapeum/2021-04-11/serapeum-20210411-git.tgz";
+    sha256 = "1zz0sjp2dwy7qg7a3h1asvflkl9z2ajwk9zqfqylm0mhl0mv2c01";
   };
 
   packageName = "serapeum";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM serapeum DESCRIPTION Utilities beyond Alexandria. SHA256
-    1dici8bmvrx5h74disrlvwns8f8jl746i4cyzyclswhv208x2m3x URL
-    http://beta.quicklisp.org/archive/serapeum/2021-02-28/serapeum-20210228-git.tgz
-    MD5 25502093ea13851021422000686a54b7 NAME serapeum FILENAME serapeum DEPS
+    1zz0sjp2dwy7qg7a3h1asvflkl9z2ajwk9zqfqylm0mhl0mv2c01 URL
+    http://beta.quicklisp.org/archive/serapeum/2021-04-11/serapeum-20210411-git.tgz
+    MD5 091a7c572d48164ba8499bb44a37a85f NAME serapeum FILENAME serapeum DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME closer-mop FILENAME closer-mop)
@@ -60,4 +60,4 @@ rec {
      trivia.level2 trivia.quasiquote trivia.trivial trivial-cltl2
      trivial-features trivial-file-size trivial-garbage trivial-macroexpand-all
      type-i uiop)
-    VERSION 20210228-git SIBLINGS NIL PARASITES NIL) */
+    VERSION 20210411-git SIBLINGS NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
index d861d72cccde..efe7f6a9eeed 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "simple-date";
-  version = "postmodern-20210124-git";
+  version = "postmodern-20210411-git";
 
   parasites = [ "simple-date/tests" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."fiveam" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz";
-    sha256 = "1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc";
+    url = "http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz";
+    sha256 = "0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw";
   };
 
   packageName = "simple-date";
@@ -22,9 +22,9 @@ rec {
 }
 /* (SYSTEM simple-date DESCRIPTION
     Simple date library that can be used with postmodern SHA256
-    1fl103fga5iq2gf1p15xvbrmmjrcv2bbi3lz1zv32j6smy5aymhc URL
-    http://beta.quicklisp.org/archive/postmodern/2021-01-24/postmodern-20210124-git.tgz
-    MD5 05c2c5f4d2354a5fa69a32b7b96f8ff8 NAME simple-date FILENAME simple-date
+    0q8izkkddmqq5sw55chkx6jrycawgchaknik5i84vynv50zirsbw URL
+    http://beta.quicklisp.org/archive/postmodern/2021-04-11/postmodern-20210411-git.tgz
+    MD5 8a75a05ba9e371f672f2620d40724cb2 NAME simple-date FILENAME simple-date
     DEPS ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam) VERSION
-    postmodern-20210124-git SIBLINGS (cl-postgres postmodern s-sql) PARASITES
+    postmodern-20210411-git SIBLINGS (cl-postgres postmodern s-sql) PARASITES
     (simple-date/tests)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-dispatch.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-dispatch.nix
new file mode 100644
index 000000000000..040bf87d306f
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-dispatch.nix
@@ -0,0 +1,55 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "static-dispatch";
+  version = "20210411-git";
+
+  parasites = [ "static-dispatch/test" ];
+
+  description = "Static generic function dispatch for Common Lisp.";
+
+  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-ansi-text" args."cl-colors" args."cl-environments" args."cl-interpol" args."closer-mop" args."collectors" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."prove" args."prove-asdf" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/static-dispatch/2021-04-11/static-dispatch-20210411-git.tgz";
+    sha256 = "0dqkapripvb5qrhpim1b5y2ymn99s2zcwf38vmqyiqk3n3hvjjh1";
+  };
+
+  packageName = "static-dispatch";
+
+  asdFilesToKeep = ["static-dispatch.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM static-dispatch DESCRIPTION
+    Static generic function dispatch for Common Lisp. SHA256
+    0dqkapripvb5qrhpim1b5y2ymn99s2zcwf38vmqyiqk3n3hvjjh1 URL
+    http://beta.quicklisp.org/archive/static-dispatch/2021-04-11/static-dispatch-20210411-git.tgz
+    MD5 7af665c6a3a1aa3315fe0a651ca559de NAME static-dispatch FILENAME
+    static-dispatch DEPS
+    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
+     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
+     (NAME cl-ansi-text FILENAME cl-ansi-text)
+     (NAME cl-colors FILENAME cl-colors)
+     (NAME cl-environments FILENAME cl-environments)
+     (NAME cl-interpol FILENAME cl-interpol)
+     (NAME closer-mop FILENAME closer-mop)
+     (NAME collectors FILENAME collectors)
+     (NAME introspect-environment FILENAME introspect-environment)
+     (NAME iterate FILENAME iterate)
+     (NAME lisp-namespace FILENAME lisp-namespace)
+     (NAME optima FILENAME optima) (NAME prove FILENAME prove)
+     (NAME prove-asdf FILENAME prove-asdf)
+     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
+     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
+     (NAME trivia.level0 FILENAME trivia_dot_level0)
+     (NAME trivia.level1 FILENAME trivia_dot_level1)
+     (NAME trivia.level2 FILENAME trivia_dot_level2)
+     (NAME trivia.trivial FILENAME trivia_dot_trivial)
+     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
+    DEPENDENCIES
+    (agutil alexandria anaphora arrows cl-ansi-text cl-colors cl-environments
+     cl-interpol closer-mop collectors introspect-environment iterate
+     lisp-namespace optima prove prove-asdf symbol-munger trivia
+     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
+     trivia.trivial trivial-cltl2 type-i)
+    VERSION 20210411-git SIBLINGS NIL PARASITES (static-dispatch/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/str.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/str.nix
index b352c476e081..11ddf729c3ae 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/str.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/str.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "str";
-  version = "cl-20210124-git";
+  version = "cl-20210411-git";
 
   description = "Modern, consistent and terse Common Lisp string manipulation library.";
 
   deps = [ args."cl-change-case" args."cl-ppcre" args."cl-ppcre-unicode" args."cl-unicode" args."flexi-streams" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-str/2021-01-24/cl-str-20210124-git.tgz";
-    sha256 = "07y24mx8gmhwz6px63llgsz15aqicqa4m8gd5zwxy708xggv73jc";
+    url = "http://beta.quicklisp.org/archive/cl-str/2021-04-11/cl-str-20210411-git.tgz";
+    sha256 = "0xyazb3j4j0wsq443fpavv4hxnizkcvhkgz709lnp7cxygpdnl7m";
   };
 
   packageName = "str";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM str DESCRIPTION
     Modern, consistent and terse Common Lisp string manipulation library.
-    SHA256 07y24mx8gmhwz6px63llgsz15aqicqa4m8gd5zwxy708xggv73jc URL
-    http://beta.quicklisp.org/archive/cl-str/2021-01-24/cl-str-20210124-git.tgz
-    MD5 afd5d3e1078bef872b0507215855397e NAME str FILENAME str DEPS
+    SHA256 0xyazb3j4j0wsq443fpavv4hxnizkcvhkgz709lnp7cxygpdnl7m URL
+    http://beta.quicklisp.org/archive/cl-str/2021-04-11/cl-str-20210411-git.tgz
+    MD5 6c6b4de0886d448155a5cca0dd38a189 NAME str FILENAME str DEPS
     ((NAME cl-change-case FILENAME cl-change-case)
      (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME cl-ppcre-unicode FILENAME cl-ppcre-unicode)
@@ -30,4 +30,4 @@ rec {
      (NAME flexi-streams FILENAME flexi-streams))
     DEPENDENCIES
     (cl-change-case cl-ppcre cl-ppcre-unicode cl-unicode flexi-streams) VERSION
-    cl-20210124-git SIBLINGS (str.test) PARASITES NIL) */
+    cl-20210411-git SIBLINGS (str.test) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
index f59a9d34e3db..13b025ea5bed 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "stumpwm";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "A tiling, keyboard driven window manager";
 
   deps = [ args."alexandria" args."cl-ppcre" args."clx" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/stumpwm/2021-02-28/stumpwm-20210228-git.tgz";
-    sha256 = "0vfhn90vfyhlbjkfkzx0i7i6qh79p9q4c4hhsym80niz508xw5v8";
+    url = "http://beta.quicklisp.org/archive/stumpwm/2021-04-11/stumpwm-20210411-git.tgz";
+    sha256 = "0rrhmryfgbjrl04ww107pvm4lzm620xp7a5kwhqbh5d7hpbdk49j";
   };
 
   packageName = "stumpwm";
@@ -19,10 +19,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM stumpwm DESCRIPTION A tiling, keyboard driven window manager SHA256
-    0vfhn90vfyhlbjkfkzx0i7i6qh79p9q4c4hhsym80niz508xw5v8 URL
-    http://beta.quicklisp.org/archive/stumpwm/2021-02-28/stumpwm-20210228-git.tgz
-    MD5 0506bcd0951463ea45cebfdb5ce76511 NAME stumpwm FILENAME stumpwm DEPS
+    0rrhmryfgbjrl04ww107pvm4lzm620xp7a5kwhqbh5d7hpbdk49j URL
+    http://beta.quicklisp.org/archive/stumpwm/2021-04-11/stumpwm-20210411-git.tgz
+    MD5 4497670e2aac3038ed5fb87121ff1b7a NAME stumpwm FILENAME stumpwm DEPS
     ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME clx FILENAME clx))
-    DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20210228-git SIBLINGS
+    DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20210411-git SIBLINGS
     (stumpwm-tests) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia.nix
index b8c330cc2fd8..7f1077ed0cdd 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase";
 
   deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."iterate" args."lisp-namespace" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM trivia DESCRIPTION
     NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase
-    SHA256 0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia FILENAME trivia DEPS
+    SHA256 1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia FILENAME trivia DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME closer-mop FILENAME closer-mop)
      (NAME introspect-environment FILENAME introspect-environment)
@@ -38,7 +38,7 @@ rec {
     (alexandria closer-mop introspect-environment iterate lisp-namespace
      trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
      trivia.trivial trivial-cltl2 type-i)
-    VERSION 20210228-git SIBLINGS
+    VERSION 20210411-git SIBLINGS
     (trivia.balland2006 trivia.benchmark trivia.cffi trivia.level0
      trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test
      trivia.trivial)
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_balland2006.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_balland2006.nix
index 801781dd5a54..ce47f1d3df26 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_balland2006.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_balland2006.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_balland2006";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "Optimizer for Trivia based on (Balland 2006)";
 
   deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."iterate" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.balland2006";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM trivia.balland2006 DESCRIPTION
     Optimizer for Trivia based on (Balland 2006) SHA256
-    0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.balland2006 FILENAME
+    1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.balland2006 FILENAME
     trivia_dot_balland2006 DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME closer-mop FILENAME closer-mop)
@@ -38,7 +38,7 @@ rec {
     (alexandria closer-mop introspect-environment iterate lisp-namespace
      trivia.level0 trivia.level1 trivia.level2 trivia.trivial trivial-cltl2
      type-i)
-    VERSION trivia-20210228-git SIBLINGS
+    VERSION trivia-20210411-git SIBLINGS
     (trivia trivia.benchmark trivia.cffi trivia.level0 trivia.level1
      trivia.level2 trivia.ppcre trivia.quasiquote trivia.test trivia.trivial)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level0.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level0.nix
index 327ac0cdf1c4..cfa992935f9c 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level0.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level0.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_level0";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "Bootstrapping Pattern Matching Library for implementing Trivia";
 
   deps = [ args."alexandria" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.level0";
@@ -20,11 +20,11 @@ rec {
 }
 /* (SYSTEM trivia.level0 DESCRIPTION
     Bootstrapping Pattern Matching Library for implementing Trivia SHA256
-    0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.level0 FILENAME
+    1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.level0 FILENAME
     trivia_dot_level0 DEPS ((NAME alexandria FILENAME alexandria)) DEPENDENCIES
-    (alexandria) VERSION trivia-20210228-git SIBLINGS
+    (alexandria) VERSION trivia-20210411-git SIBLINGS
     (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.level1
      trivia.level2 trivia.ppcre trivia.quasiquote trivia.test trivia.trivial)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level1.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level1.nix
index eecb4c17eacd..5cadfcf57235 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level1.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level1.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_level1";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "Core patterns of Trivia";
 
   deps = [ args."alexandria" args."trivia_dot_level0" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.level1";
@@ -19,13 +19,13 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM trivia.level1 DESCRIPTION Core patterns of Trivia SHA256
-    0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.level1 FILENAME
+    1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.level1 FILENAME
     trivia_dot_level1 DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME trivia.level0 FILENAME trivia_dot_level0))
-    DEPENDENCIES (alexandria trivia.level0) VERSION trivia-20210228-git
+    DEPENDENCIES (alexandria trivia.level0) VERSION trivia-20210411-git
     SIBLINGS
     (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.level0
      trivia.level2 trivia.ppcre trivia.quasiquote trivia.test trivia.trivial)
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level2.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level2.nix
index ec0d99e06be3..9e8ceca1eebb 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level2.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_level2.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_level2";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase";
 
   deps = [ args."alexandria" args."closer-mop" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivial-cltl2" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.level2";
@@ -20,9 +20,9 @@ rec {
 }
 /* (SYSTEM trivia.level2 DESCRIPTION
     NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase
-    SHA256 0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.level2 FILENAME
+    SHA256 1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.level2 FILENAME
     trivia_dot_level2 DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME closer-mop FILENAME closer-mop)
@@ -33,7 +33,7 @@ rec {
     DEPENDENCIES
     (alexandria closer-mop lisp-namespace trivia.level0 trivia.level1
      trivial-cltl2)
-    VERSION trivia-20210228-git SIBLINGS
+    VERSION trivia-20210411-git SIBLINGS
     (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.level0
      trivia.level1 trivia.ppcre trivia.quasiquote trivia.test trivia.trivial)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_quasiquote.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_quasiquote.nix
index 420e4ae30586..bf6b1fb3548e 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_quasiquote.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_quasiquote.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_quasiquote";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "fare-quasiquote extension for trivia";
 
   deps = [ args."alexandria" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-readtable" args."fare-utils" args."lisp-namespace" args."named-readtables" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.quasiquote";
@@ -19,9 +19,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM trivia.quasiquote DESCRIPTION fare-quasiquote extension for trivia
-    SHA256 0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.quasiquote FILENAME
+    SHA256 1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.quasiquote FILENAME
     trivia_dot_quasiquote DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME closer-mop FILENAME closer-mop)
@@ -39,7 +39,7 @@ rec {
     (alexandria closer-mop fare-quasiquote fare-quasiquote-readtable fare-utils
      lisp-namespace named-readtables trivia.level0 trivia.level1 trivia.level2
      trivia.trivial trivial-cltl2)
-    VERSION trivia-20210228-git SIBLINGS
+    VERSION trivia-20210411-git SIBLINGS
     (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.level0
      trivia.level1 trivia.level2 trivia.ppcre trivia.test trivia.trivial)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_trivial.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_trivial.nix
index 1173a24c8c60..3fe1ddbd06c6 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_trivial.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivia_dot_trivial.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivia_dot_trivial";
-  version = "trivia-20210228-git";
+  version = "trivia-20210411-git";
 
   description = "Base level system of Trivia with a trivial optimizer.
  Systems that intend to enhance Trivia should depend on this package, not the TRIVIA system,
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."closer-mop" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivial-cltl2" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz";
-    sha256 = "0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6";
+    url = "http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz";
+    sha256 = "1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8";
   };
 
   packageName = "trivia.trivial";
@@ -24,9 +24,9 @@ rec {
     Base level system of Trivia with a trivial optimizer.
  Systems that intend to enhance Trivia should depend on this package, not the TRIVIA system,
  in order to avoid the circular dependency.
-    SHA256 0qqyspq2mryl87wgrm43sj7d2wqb1pckk7fjvnmmyrf5kz5p4pc6 URL
-    http://beta.quicklisp.org/archive/trivia/2021-02-28/trivia-20210228-git.tgz
-    MD5 b374212a63c1e3b7e5c0e26348516106 NAME trivia.trivial FILENAME
+    SHA256 1dy35yhjhzcqsq5rwsan1f9x2ss8wcw55n2jzzgymj1vqvzp5mn8 URL
+    http://beta.quicklisp.org/archive/trivia/2021-04-11/trivia-20210411-git.tgz
+    MD5 3fde6243390481d089cda082573876f6 NAME trivia.trivial FILENAME
     trivia_dot_trivial DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME closer-mop FILENAME closer-mop)
@@ -38,7 +38,7 @@ rec {
     DEPENDENCIES
     (alexandria closer-mop lisp-namespace trivia.level0 trivia.level1
      trivia.level2 trivial-cltl2)
-    VERSION trivia-20210228-git SIBLINGS
+    VERSION trivia-20210411-git SIBLINGS
     (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.level0
      trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test)
     PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-arguments.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-arguments.nix
new file mode 100644
index 000000000000..9444b0b690df
--- /dev/null
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-arguments.nix
@@ -0,0 +1,27 @@
+/* Generated file. */
+args @ { fetchurl, ... }:
+rec {
+  baseName = "trivial-arguments";
+  version = "20200925-git";
+
+  description = "A simple library to retrieve the lambda-list of a function.";
+
+  deps = [ ];
+
+  src = fetchurl {
+    url = "http://beta.quicklisp.org/archive/trivial-arguments/2020-09-25/trivial-arguments-20200925-git.tgz";
+    sha256 = "079xm6f1vmsng7dzgb2x3m7k46jfw19wskwf1l5cid5nm267d295";
+  };
+
+  packageName = "trivial-arguments";
+
+  asdFilesToKeep = ["trivial-arguments.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM trivial-arguments DESCRIPTION
+    A simple library to retrieve the lambda-list of a function. SHA256
+    079xm6f1vmsng7dzgb2x3m7k46jfw19wskwf1l5cid5nm267d295 URL
+    http://beta.quicklisp.org/archive/trivial-arguments/2020-09-25/trivial-arguments-20200925-git.tgz
+    MD5 3d7b76a729b272019c8827e40bfb6db8 NAME trivial-arguments FILENAME
+    trivial-arguments DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS
+    NIL PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
index 272361dadc09..e762613bf086 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
@@ -2,15 +2,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "trivial-features";
-  version = "20210228-git";
+  version = "20210411-git";
 
   description = "Ensures consistent *FEATURES* across multiple CLs.";
 
   deps = [ ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-features/2021-02-28/trivial-features-20210228-git.tgz";
-    sha256 = "1najk88r8nlpbxm8mjfj8b22f9chr9h2hxg9wqz87kkmhg4rfwwj";
+    url = "http://beta.quicklisp.org/archive/trivial-features/2021-04-11/trivial-features-20210411-git.tgz";
+    sha256 = "0z6nzql8z7bz8kzd08mh36h0r54vqx7pwigy8r617jhvb0r0n0n4";
   };
 
   packageName = "trivial-features";
@@ -20,8 +20,8 @@ rec {
 }
 /* (SYSTEM trivial-features DESCRIPTION
     Ensures consistent *FEATURES* across multiple CLs. SHA256
-    1najk88r8nlpbxm8mjfj8b22f9chr9h2hxg9wqz87kkmhg4rfwwj URL
-    http://beta.quicklisp.org/archive/trivial-features/2021-02-28/trivial-features-20210228-git.tgz
-    MD5 6d628c0c941346773751a684213a52d7 NAME trivial-features FILENAME
-    trivial-features DEPS NIL DEPENDENCIES NIL VERSION 20210228-git SIBLINGS
+    0z6nzql8z7bz8kzd08mh36h0r54vqx7pwigy8r617jhvb0r0n0n4 URL
+    http://beta.quicklisp.org/archive/trivial-features/2021-04-11/trivial-features-20210411-git.tgz
+    MD5 5ec554fff48d38af5023604a1ae42d3a NAME trivial-features FILENAME
+    trivial-features DEPS NIL DEPENDENCIES NIL VERSION 20210411-git SIBLINGS
     (trivial-features-tests) PARASITES NIL) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix
index bbaf2de554f0..1e9decab3271 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-output/utilities_dot_print-items.nix
@@ -2,7 +2,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = "utilities_dot_print-items";
-  version = "20190813-git";
+  version = "20210411-git";
 
   parasites = [ "utilities.print-items/test" ];
 
@@ -11,8 +11,8 @@ rec {
   deps = [ args."alexandria" args."fiveam" ];
 
   src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/utilities.print-items/2019-08-13/utilities.print-items-20190813-git.tgz";
-    sha256 = "12l4kzz621qfcg8p5qzyxp4n4hh9wdlpiziykwb4c80g32rdwkc2";
+    url = "http://beta.quicklisp.org/archive/utilities.print-items/2021-04-11/utilities.print-items-20210411-git.tgz";
+    sha256 = "0da2m4b993w31wph2ybdmdd6rycadrp44ccjdba5pygpkf3x00gx";
   };
 
   packageName = "utilities.print-items";
@@ -22,10 +22,10 @@ rec {
 }
 /* (SYSTEM utilities.print-items DESCRIPTION
     A protocol for flexible and composable printing. SHA256
-    12l4kzz621qfcg8p5qzyxp4n4hh9wdlpiziykwb4c80g32rdwkc2 URL
-    http://beta.quicklisp.org/archive/utilities.print-items/2019-08-13/utilities.print-items-20190813-git.tgz
-    MD5 0f26580bb5d3587ed1815f70976b2a0a NAME utilities.print-items FILENAME
+    0da2m4b993w31wph2ybdmdd6rycadrp44ccjdba5pygpkf3x00gx URL
+    http://beta.quicklisp.org/archive/utilities.print-items/2021-04-11/utilities.print-items-20210411-git.tgz
+    MD5 35be0e5ee4c957699082fb6ae8f14ef2 NAME utilities.print-items FILENAME
     utilities_dot_print-items DEPS
     ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria fiveam) VERSION 20190813-git SIBLINGS NIL
+    DEPENDENCIES (alexandria fiveam) VERSION 20210411-git SIBLINGS NIL
     PARASITES (utilities.print-items/test)) */
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
index 628001000e8c..dbc57cb8d1fc 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
@@ -276,4 +276,7 @@ $out/lib/common-lisp/query-fs"
     (extraLispDeps (with quicklisp-to-nix-packages; [cl-syslog]));
   md5 = ifLispNotIn ["sbcl" "ccl" "gcl"]
     (extraLispDeps (with quicklisp-to-nix-packages; [flexi-streams]));
+  cl-gobject-introspection = addNativeLibs (with pkgs; [glib gobject-introspection]);
+  generic-cl = x: { parasites = []; };
+  static-dispatch = x: { parasites = []; };
 }
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
index 27eb3c90eddb..6cbd7f4115a9 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
@@ -41,6 +41,7 @@ cl-emb
 cl-fad
 cl-fuse
 cl-fuse-meta-fs
+cl-gobject-introspection
 cl-hooks
 cl-html-diff
 cl-html5-parser
@@ -122,6 +123,7 @@ fiveam
 flexi-streams
 form-fiddle
 fset
+generic-cl
 gettext
 http-body
 hu.dwim.asdf
@@ -188,6 +190,7 @@ swank
 swap-bytes
 symbol-munger
 trivia
+trivial-arguments
 trivial-backtrace
 trivial-clipboard
 trivial-features
diff --git a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix.nix b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix.nix
index 1e0952aabafd..ed8e87162c84 100644
--- a/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/quicklisp-to-nix.nix
@@ -289,15 +289,18 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "type-i" = buildLispPackage
+  "trivia_dot_quasiquote" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."type-i" or (x: {}))
-       (import ./quicklisp-to-nix-output/type-i.nix {
+       (qlOverrides."trivia_dot_quasiquote" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivia_dot_quasiquote.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
+           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
            "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
            "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
            "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
@@ -306,37 +309,47 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "trivial-cltl2" = buildLispPackage
+  "fare-quasiquote-readtable" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."trivial-cltl2" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-cltl2.nix {
+       (qlOverrides."fare-quasiquote-readtable" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-quasiquote-readtable.nix {
          inherit fetchurl;
+           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
        }));
 
 
-  "trivia_dot_trivial" = buildLispPackage
+  "fare-quasiquote-optima" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_trivial" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_trivial.nix {
+       (qlOverrides."fare-quasiquote-optima" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-quasiquote-optima.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
+           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
+           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
            "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
            "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
            "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
+           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
            "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
        }));
 
 
-  "trivia_dot_quasiquote" = buildLispPackage
+  "fare-quasiquote-extras" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_quasiquote" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_quasiquote.nix {
+       (qlOverrides."fare-quasiquote-extras" or (x: {}))
+       (import ./quicklisp-to-nix-output/fare-quasiquote-extras.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "closer-mop" = quicklisp-to-nix-packages."closer-mop";
            "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
+           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
            "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
            "fare-utils" = quicklisp-to-nix-packages."fare-utils";
            "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
@@ -344,11 +357,52 @@ let quicklisp-to-nix-packages = rec {
            "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
            "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
            "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
+           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
+           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+       }));
+
+
+  "type-i" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."type-i" or (x: {}))
+       (import ./quicklisp-to-nix-output/type-i.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
+           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
+           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
            "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
            "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
        }));
 
 
+  "trivial-cltl2" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-cltl2" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-cltl2.nix {
+         inherit fetchurl;
+       }));
+
+
+  "trivia_dot_trivial" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivia_dot_trivial" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivia_dot_trivial.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
+           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
+           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+       }));
+
+
   "trivia_dot_level2" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivia_dot_level2" or (x: {}))
@@ -401,6 +455,39 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "static-dispatch" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."static-dispatch" or (x: {}))
+       (import ./quicklisp-to-nix-output/static-dispatch.nix {
+         inherit fetchurl;
+           "agutil" = quicklisp-to-nix-packages."agutil";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "arrows" = quicklisp-to-nix-packages."arrows";
+           "cl-ansi-text" = quicklisp-to-nix-packages."cl-ansi-text";
+           "cl-colors" = quicklisp-to-nix-packages."cl-colors";
+           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
+           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "optima" = quicklisp-to-nix-packages."optima";
+           "prove" = quicklisp-to-nix-packages."prove";
+           "prove-asdf" = quicklisp-to-nix-packages."prove-asdf";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+           "trivia" = quicklisp-to-nix-packages."trivia";
+           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
+           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
+           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
+           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
+           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+           "type-i" = quicklisp-to-nix-packages."type-i";
+       }));
+
+
   "introspect-environment" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."introspect-environment" or (x: {}))
@@ -409,57 +496,53 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "fare-quasiquote-readtable" = buildLispPackage
+  "cl-environments" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-readtable" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-readtable.nix {
+       (qlOverrides."cl-environments" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-environments.nix {
          inherit fetchurl;
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "cl-ansi-text" = quicklisp-to-nix-packages."cl-ansi-text";
+           "cl-colors" = quicklisp-to-nix-packages."cl-colors";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "optima" = quicklisp-to-nix-packages."optima";
+           "prove" = quicklisp-to-nix-packages."prove";
+           "prove-asdf" = quicklisp-to-nix-packages."prove-asdf";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
        }));
 
 
-  "fare-quasiquote-optima" = buildLispPackage
+  "arrows" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-optima" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-optima.nix {
+       (qlOverrides."arrows" or (x: {}))
+       (import ./quicklisp-to-nix-output/arrows.nix {
          inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
        }));
 
 
-  "fare-quasiquote-extras" = buildLispPackage
+  "agutil" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-extras" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-extras.nix {
+       (qlOverrides."agutil" or (x: {}))
+       (import ./quicklisp-to-nix-output/agutil.nix {
          inherit fetchurl;
            "alexandria" = quicklisp-to-nix-packages."alexandria";
            "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
+           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "iterate" = quicklisp-to-nix-packages."iterate";
            "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
+           "trivia" = quicklisp-to-nix-packages."trivia";
+           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
            "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
            "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
            "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
            "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
            "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+           "type-i" = quicklisp-to-nix-packages."type-i";
        }));
 
 
@@ -1556,6 +1639,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "trivial-arguments" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."trivial-arguments" or (x: {}))
+       (import ./quicklisp-to-nix-output/trivial-arguments.nix {
+         inherit fetchurl;
+       }));
+
+
   "trivia" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivia" or (x: {}))
@@ -2414,6 +2505,41 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "generic-cl" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."generic-cl" or (x: {}))
+       (import ./quicklisp-to-nix-output/generic-cl.nix {
+         inherit fetchurl;
+           "agutil" = quicklisp-to-nix-packages."agutil";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "anaphora" = quicklisp-to-nix-packages."anaphora";
+           "arrows" = quicklisp-to-nix-packages."arrows";
+           "cl-ansi-text" = quicklisp-to-nix-packages."cl-ansi-text";
+           "cl-colors" = quicklisp-to-nix-packages."cl-colors";
+           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
+           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
+           "collectors" = quicklisp-to-nix-packages."collectors";
+           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
+           "optima" = quicklisp-to-nix-packages."optima";
+           "prove" = quicklisp-to-nix-packages."prove";
+           "prove-asdf" = quicklisp-to-nix-packages."prove-asdf";
+           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
+           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
+           "trivia" = quicklisp-to-nix-packages."trivia";
+           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
+           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
+           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
+           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
+           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
+           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
+           "type-i" = quicklisp-to-nix-packages."type-i";
+       }));
+
+
   "fset" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."fset" or (x: {}))
@@ -3520,6 +3646,20 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-gobject-introspection" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-gobject-introspection" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-gobject-introspection.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "iterate" = quicklisp-to-nix-packages."iterate";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+       }));
+
+
   "cl-fuse-meta-fs" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-fuse-meta-fs" or (x: {}))
@@ -3879,7 +4019,9 @@ let quicklisp-to-nix-packages = rec {
            "lack-component" = quicklisp-to-nix-packages."lack-component";
            "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
            "lack-util" = quicklisp-to-nix-packages."lack-util";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "uiop" = quicklisp-to-nix-packages."uiop";
+           "usocket" = quicklisp-to-nix-packages."usocket";
        }));
 
 
diff --git a/nixpkgs/pkgs/development/lisp-modules/shell.nix b/nixpkgs/pkgs/development/lisp-modules/shell.nix
index a8ed246e6f8f..bd6eea65f6f3 100644
--- a/nixpkgs/pkgs/development/lisp-modules/shell.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/shell.nix
@@ -11,6 +11,6 @@ self = rec {
     lispPackages.quicklisp-to-nix lispPackages.quicklisp-to-nix-system-info
   ];
   CPATH = "${libfixposix}/include";
-  LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${libmysqlclient}/lib:${libmysqlclient}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib:${openssl_lib_marked}/lib:${glib.out}/lib:${gdk-pixbuf}/lib:${cairo}/lib:${pango.out}/lib:${gtk3}/lib:${webkitgtk}/lib";
+  LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${libmysqlclient}/lib:${libmysqlclient}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib:${openssl_lib_marked}/lib:${glib.out}/lib:${gdk-pixbuf}/lib:${cairo}/lib:${pango.out}/lib:${gtk3}/lib:${webkitgtk}/lib:${gobject-introspection}/lib";
 };
 in stdenv.mkDerivation self
diff --git a/nixpkgs/pkgs/development/lua-modules/overrides.nix b/nixpkgs/pkgs/development/lua-modules/overrides.nix
index eec969f99caf..288f4fc078ba 100644
--- a/nixpkgs/pkgs/development/lua-modules/overrides.nix
+++ b/nixpkgs/pkgs/development/lua-modules/overrides.nix
@@ -173,7 +173,7 @@ with super;
       MYSQL_LIBDIR="${pkgs.libmysqlclient}/lib/mysql";
     };
     buildInputs = [
-      pkgs.mysql.client
+      pkgs.mariadb.client
       pkgs.libmysqlclient
     ];
   });
diff --git a/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix b/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
index 7f49430c15c3..17bedd5e7d32 100644
--- a/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
+++ b/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
@@ -6,9 +6,8 @@ mkDerivation {
   version = "0.16.1.0";
   src = fetchgit {
     url = "https://github.com/hercules-ci/optparse-applicative.git";
-    sha256 = "0v0r11jaav95im82if976256kncp0ji7nfdrlpbgmwxnkj1hxl48";
-    rev = "f9d1242f9889d2e09ff852db9dc2d231d9a3e8d8";
-    fetchSubmodules = true;
+    sha256 = "05vchaw2rf46hh2128qjpky686iy5hff964mbdhcyiz612jjflyp";
+    rev = "9e2968c09a7c5b29d04578dc68d81ce5aec0591e";
   };
   libraryHaskellDepends = [
     ansi-wl-pprint base process transformers transformers-compat
diff --git a/nixpkgs/pkgs/development/misc/loc/default.nix b/nixpkgs/pkgs/development/misc/loc/default.nix
index fb518279d00b..ce262d946a80 100644
--- a/nixpkgs/pkgs/development/misc/loc/default.nix
+++ b/nixpkgs/pkgs/development/misc/loc/default.nix
@@ -13,7 +13,7 @@ buildRustPackage rec {
     sha256 = "0086asrx48qlmc484pjz5r5znli85q6qgpfbd81gjlzylj7f57gg";
   };
 
-  cargoSha256 = "1fgv1kxiif48q9mm60ygn88r5nkxfyiacmvbgwp0jxiacv8r7779";
+  cargoSha256 = "1qfqhqimp56g34bir30zgl273yssrbmwf1h8h8yvdpzkybpd92gx";
 
   meta = with lib; {
     homepage = "https://github.com/cgag/loc";
diff --git a/nixpkgs/pkgs/development/misc/msp430/mspds/binary.nix b/nixpkgs/pkgs/development/misc/msp430/mspds/binary.nix
new file mode 100644
index 000000000000..690ed3e45e71
--- /dev/null
+++ b/nixpkgs/pkgs/development/misc/msp430/mspds/binary.nix
@@ -0,0 +1,35 @@
+{ stdenv, lib, fetchurl, unzip, autoPatchelfHook }:
+
+with lib;
+
+let
+  archPostfix = optionalString (stdenv.is64bit && !stdenv.isDarwin) "_64";
+in stdenv.mkDerivation rec {
+  pname = "msp-debug-stack-bin";
+  version = "3.15.1.1";
+  src = fetchurl {
+    url = "http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPDS/3_15_1_001/export/MSP430_DLL_Developer_Package_Rev_3_15_1_1.zip";
+    sha256 = "1m1ssrwbhqvqwbp3m4hnjyxnz3f9d4acz9vl1av3fbnhvxr0d2hb";
+  };
+  sourceRoot = ".";
+
+  libname =
+    if stdenv.hostPlatform.isWindows then "MSP430${archPostfix}.dll"
+    else "libmsp430${archPostfix}${stdenv.hostPlatform.extensions.sharedLibrary}";
+
+  nativeBuildInputs = [ unzip autoPatchelfHook ];
+  buildInputs = [ stdenv.cc.cc ];
+
+  installPhase = ''
+    install -Dm0755 $libname $out/lib/''${libname//_64/}
+    install -Dm0644 -t $out/include Inc/*.h
+  '';
+
+  meta = {
+    description = "Unfree binary release of the TI MSP430 FET debug driver";
+    homepage = https://www.ti.com/tool/MSPDS;
+    license = licenses.unfree;
+    platforms = platforms.linux ++ platforms.darwin;
+    maintainers = with maintainers; [ aerialx ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/misc/msp430/mspds/bsl430.patch b/nixpkgs/pkgs/development/misc/msp430/mspds/bsl430.patch
new file mode 100644
index 000000000000..6c57fb040e26
--- /dev/null
+++ b/nixpkgs/pkgs/development/misc/msp430/mspds/bsl430.patch
@@ -0,0 +1,51 @@
+diff -ruN a/Makefile b/Makefile
+--- a/Makefile	2020-06-03 16:10:18.000000000 -0700
++++ b/Makefile	2020-07-21 18:03:12.464121056 -0700
+@@ -42,7 +42,7 @@
+ 
+ PLATFORM := $(shell uname -s)
+ ifeq ($(PLATFORM),Linux)
+-	CXX:= g++
++	CXX?= g++
+ 	
+ 	STATICOUTPUT := linux64
+ 
+@@ -68,7 +68,7 @@
+ 
+ 	HIDOBJ := $(LIBTHIRD)/hid-libusb.o
+ else
+-	CXX:= clang++
++	CXX?= clang++
+ 
+ 	OUTPUT := libmsp430.dylib
+ 	STATICOUTPUT := mac64
+@@ -134,7 +134,7 @@
+ 	$(CXX) -c -o $@ $< $(USE_PCH) $(CXXFLAGS) $(INCLUDES) $(DEFINES)
+ 
+ $(BSLLIB):
+-	$(MAKE) -C ./ThirdParty/BSL430_DLL
++	$(MAKE) -C ./ThirdParty/BSL430_DLL OUTPUT=../../$(BSLLIB)
+ 
+ install:
+ 	cp $(OUTPUT) /usr/local/lib/
+diff -ruN a/ThirdParty/BSL430_DLL/Makefile b/ThirdParty/BSL430_DLL/Makefile
+--- a/ThirdParty/BSL430_DLL/Makefile	2019-11-18 13:16:00.000000000 -0800
++++ b/ThirdParty/BSL430_DLL/Makefile	2020-07-21 18:02:55.987782494 -0700
+@@ -36,7 +36,7 @@
+ 
+ PLATFORM := $(shell uname -s)
+ ifeq ($(PLATFORM),Linux)
+-	CXX:= g++
++	CXX?= g++
+ 
+ 	ifdef BIT32
+ 	CXXFLAGS += -m32
+@@ -47,7 +47,7 @@
+ 	INCLUDES += -I$(BOOST_DIR)
+ 	endif
+ else
+-	CXX:= clang++
++	CXX?= clang++
+ 
+ 	ifdef BOOST_DIR
+ 	INCLUDES += -I$(BOOST_DIR)/include
diff --git a/nixpkgs/pkgs/development/misc/msp430/mspds/default.nix b/nixpkgs/pkgs/development/misc/msp430/mspds/default.nix
new file mode 100644
index 000000000000..2481b50bfbef
--- /dev/null
+++ b/nixpkgs/pkgs/development/misc/msp430/mspds/default.nix
@@ -0,0 +1,56 @@
+{ stdenv
+, lib
+, fetchurl, unzip
+, boost, pugixml
+, hidapi
+, libusb1 ? null
+}:
+
+with lib;
+assert stdenv.isLinux -> libusb1 != null;
+
+let
+  hidapiDriver = optionalString stdenv.isLinux "-libusb";
+
+in stdenv.mkDerivation {
+  pname = "msp-debug-stack";
+  version = "3.15.1.1";
+
+  src = fetchurl {
+    url = "http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPDS/3_15_1_001/export/MSPDebugStack_OS_Package_3_15_1_1.zip";
+    sha256 = "1j5sljqwc20zrb50mrji4mnmw5i680qc7n0lb0pakrrxqjc9m9g3";
+  };
+  sourceRoot = ".";
+
+  enableParallelBuilding = true;
+  libName = "libmsp430${stdenv.hostPlatform.extensions.sharedLibrary}";
+  makeFlags = [ "OUTPUT=$(libName)" "HIDOBJ=" ];
+  NIX_LDFLAGS = [ "-lpugixml" "-lhidapi${hidapiDriver}" ];
+  NIX_CFLAGS_COMPILE = [ "-I${hidapi}/include/hidapi" ];
+
+  patches = [ ./bsl430.patch ];
+
+  preBuild = ''
+    rm ThirdParty/src/pugixml.cpp
+    rm ThirdParty/include/pugi{config,xml}.hpp
+  '' + optionalString stdenv.isDarwin ''
+    makeFlagsArray+=(OUTNAME="-install_name ")
+  '';
+
+  installPhase = ''
+    install -Dm0755 -t $out/lib $libName
+    install -Dm0644 -t $out/include DLL430_v3/include/*.h
+  '';
+
+  nativeBuildInputs = [ unzip ];
+  buildInputs = [ boost hidapi pugixml ]
+    ++ optional stdenv.isLinux libusb1;
+
+  meta = {
+    description = "TI MSP430 FET debug driver";
+    homepage = https://www.ti.com/tool/MSPDS;
+    license = licenses.bsd3;
+    platforms = platforms.linux ++ platforms.darwin;
+    maintainers = with maintainers; [ aerialx ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/misc/umr/default.nix b/nixpkgs/pkgs/development/misc/umr/default.nix
index 158cef2eed1e..3dba51022d3c 100644
--- a/nixpkgs/pkgs/development/misc/umr/default.nix
+++ b/nixpkgs/pkgs/development/misc/umr/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "IwTkHEuJ82hngPjFVIihU2rSolLBqHxQTNsP8puYPaY=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config llvmPackages.llvm.dev ];
 
   buildInputs = [
     bash-completion
diff --git a/nixpkgs/pkgs/development/misc/yelp-tools/default.nix b/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
index bf348d68041a..fc3be7421adb 100644
--- a/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
+++ b/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
@@ -4,34 +4,50 @@
 , libxml2
 , libxslt
 , itstool
-, gnome3
+, gnome
 , pkg-config
+, meson
+, ninja
+, python3
 }:
 
-stdenv.mkDerivation rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "yelp-tools";
-  version = "3.38.0";
+  version = "40.0";
+
+  format = "other";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/yelp-tools/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1c045c794sm83rrjan67jmsk20qacrw1m814p4nw85w5xsry8z30";
+    url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "1bkanqp3qwmirv06mi99qv2acr5ba5rlhy9zlh0fyrfxygraqjv6";
   };
 
   nativeBuildInputs = [
     pkg-config
+    meson
+    ninja
+  ];
+
+  propagatedBuildInputs = [
+    libxml2 # xmllint required by yelp-check.
+    libxslt # xsltproc required by yelp-build and yelp-check.
   ];
 
   buildInputs = [
-    libxml2
-    libxslt
-    itstool
-    gnome3.yelp-xsl
+    itstool # build script checks for its presence but I am not sure if anything uses it
+    gnome.yelp-xsl
   ];
 
+  pythonPath = [
+    python3.pkgs.lxml
+  ];
+
+  strictDeps = false; # TODO: Meson cannot find xmllint oherwise. Maybe add it to machine file?
+
   doCheck = true;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/mobile/androidenv/emulator.nix b/nixpkgs/pkgs/development/mobile/androidenv/emulator.nix
index c8fce166aa7d..2746a60247bf 100644
--- a/nixpkgs/pkgs/development/mobile/androidenv/emulator.nix
+++ b/nixpkgs/pkgs/development/mobile/androidenv/emulator.nix
@@ -26,7 +26,7 @@ deployAndroidPackage {
     pkgs.freetype
     pkgs.nss
     pkgs.nspr
-    pkgs.alsaLib
+    pkgs.alsa-lib
   ];
   patchInstructions = lib.optionalString (os == "linux") ''
     addAutoPatchelfSearchPath $packageBaseDir/lib
diff --git a/nixpkgs/pkgs/development/mobile/androidenv/examples/shell.nix b/nixpkgs/pkgs/development/mobile/androidenv/examples/shell.nix
index 95f6a3bdbbac..45cccf22c7df 100644
--- a/nixpkgs/pkgs/development/mobile/androidenv/examples/shell.nix
+++ b/nixpkgs/pkgs/development/mobile/androidenv/examples/shell.nix
@@ -115,7 +115,7 @@ let
 in
 pkgs.mkShell rec {
   name = "androidenv-demo";
-  buildInputs = [ androidSdk platformTools jdk pkgs.android-studio ];
+  packages = [ androidSdk platformTools jdk pkgs.android-studio ];
 
   LANG = "C.UTF-8";
   LC_ALL = "C.UTF-8";
diff --git a/nixpkgs/pkgs/development/node-packages/default.nix b/nixpkgs/pkgs/development/node-packages/default.nix
index 7ed334ed0722..42f799274d8c 100644
--- a/nixpkgs/pkgs/development/node-packages/default.nix
+++ b/nixpkgs/pkgs/development/node-packages/default.nix
@@ -1,4 +1,4 @@
-{ pkgs, nodejs, stdenv }:
+{ pkgs, nodejs, stdenv, fetchFromGitHub }:
 
 let
   since = (version: pkgs.lib.versionAtLeast nodejs.version version);
@@ -69,8 +69,9 @@ let
       };
     });
 
-    bitwarden-cli = pkgs.lib.overrideDerivation super."@bitwarden/cli" (drv: {
+    bitwarden-cli = super."@bitwarden/cli".override (drv: {
       name = "bitwarden-cli-${drv.version}";
+      meta.mainProgram = "bw";
     });
 
     fast-cli = super."fast-cli-1.x".override {
@@ -83,6 +84,7 @@ let
 
     flood = super.flood.override {
       buildInputs = [ self.node-pre-gyp ];
+      meta.mainProgram = "flood";
     };
 
     expo-cli = super."expo-cli".override (attrs: {
@@ -126,6 +128,10 @@ let
       '';
     };
 
+    markdownlint-cli = super.markdownlint-cli.override {
+      meta.mainProgram = "markdownlint";
+    };
+
     mirakurun = super.mirakurun.override rec {
       nativeBuildInputs = with pkgs; [ makeWrapper ];
       postInstall = let
@@ -217,6 +223,26 @@ let
       '';
     };
 
+    netlify-cli =
+      let
+        esbuild = pkgs.esbuild.overrideAttrs (old: rec {
+          version = "0.11.14";
+
+          src = fetchFromGitHub {
+            owner = "evanw";
+            repo = "esbuild";
+            rev = "v${version}";
+            sha256 = "sha256-N7WNam0zF1t++nLVhuxXSDGV/JaFtlFhufp+etinvmM=";
+          };
+
+        });
+      in
+      super.netlify-cli.override {
+        preRebuild = ''
+          export ESBUILD_BINARY_PATH="${esbuild}/bin/esbuild"
+        '';
+      };
+
     ssb-server = super.ssb-server.override {
       buildInputs = [ pkgs.automake pkgs.autoconf self.node-gyp-build ];
       meta.broken = since "10";
@@ -314,5 +340,16 @@ let
         --prefix NODE_PATH : ${self.prettier}/lib/node_modules
       '';
     };
+
+    wavedrom-cli = super.wavedrom-cli.override {
+      nativeBuildInputs = [ pkgs.pkg-config self.node-pre-gyp ];
+      # These dependencies are required by
+      # https://github.com/Automattic/node-canvas.
+      buildInputs = with pkgs; [
+        pixman
+        cairo
+        pango
+      ];
+    };
   };
 in self
diff --git a/nixpkgs/pkgs/development/node-packages/node-packages.json b/nixpkgs/pkgs/development/node-packages/node-packages.json
index d8b98ea14428..27d13e4adeb3 100644
--- a/nixpkgs/pkgs/development/node-packages/node-packages.json
+++ b/nixpkgs/pkgs/development/node-packages/node-packages.json
@@ -152,6 +152,7 @@
 , "livedown"
 , {"lumo-build-deps": "../interpreters/clojurescript/lumo" }
 , "madoko"
+, "markdownlint-cli"
 , "markdown-link-check"
 , "mastodon-bot"
 , "mathjax"
@@ -252,6 +253,7 @@
 , "vega-cli"
 , "vega-lite"
 , "vim-language-server"
+, "vls"
 , "vscode-css-languageserver-bin"
 , "vscode-html-languageserver-bin"
 , "vscode-json-languageserver"
@@ -259,6 +261,7 @@
 , { "vscode-lldb-build-deps": "../../misc/vscode-extensions/vscode-lldb/build-deps" }
 , "vue-cli"
 , "vue-language-server"
+, "wavedrom-cli"
 , "web-ext"
 , "webpack"
 , "webpack-cli"
diff --git a/nixpkgs/pkgs/development/node-packages/node-packages.nix b/nixpkgs/pkgs/development/node-packages/node-packages.nix
index 366e04440f98..d5381c9c288d 100644
--- a/nixpkgs/pkgs/development/node-packages/node-packages.nix
+++ b/nixpkgs/pkgs/development/node-packages/node-packages.nix
@@ -49,13 +49,13 @@ let
         sha512 = "o/xdK8b4P0t/xpCARgWXAeaiWeh9jeua6bP1jrcbfN39+Z4zC4x2jg4NysHNhz6spRG8dJFH3kJIUoIbs0Ckww==";
       };
     };
-    "@angular-devkit/architect-0.1102.9" = {
+    "@angular-devkit/architect-0.1200.2" = {
       name = "_at_angular-devkit_slash_architect";
       packageName = "@angular-devkit/architect";
-      version = "0.1102.9";
+      version = "0.1200.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1102.9.tgz";
-        sha512 = "AU7i0VqWUwBc04oyT98Pp6sMDMp67JTZd/Cfrz5AM4MqrCZsDJMsTlWH26fAbESSLHgNst7H91Eq0cnC8rCmOQ==";
+        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1200.2.tgz";
+        sha512 = "Vy/dE1iwEiV63cxcU+SC+Lf5SUnY64vg9J3YA3jxFlJnELbxxN+T7xDfjMEMPoLzTY02K9XNb8ZGLStZxVmZLg==";
       };
     };
     "@angular-devkit/core-11.2.4" = {
@@ -76,13 +76,13 @@ let
         sha512 = "3dA0Z6sIIxCDjZS/DucgmIKti7EZ/LgHoHgCO72Q50H5ZXbUSNBz5wGl5hVq2+gzrnFgU/0u40MIs6eptk30ZA==";
       };
     };
-    "@angular-devkit/core-11.2.9" = {
+    "@angular-devkit/core-12.0.2" = {
       name = "_at_angular-devkit_slash_core";
       packageName = "@angular-devkit/core";
-      version = "11.2.9";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-11.2.9.tgz";
-        sha512 = "TqihgUEKjX4C1hSd8RgUyCwuezFRdput9Ctcq8c4VgOcseEnXq3BkCSJbXtUh4Fln8WPxM7WHM8HClcWya/41g==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-12.0.2.tgz";
+        sha512 = "n7BmZAW0nx4pEigdAsibvtIm4Vjk1IwY3Bbc8fqD+AQpdYCo+Ake1Eu6fL2XoW8Yco7U4JYYdn/uodWEgBdroQ==";
       };
     };
     "@angular-devkit/schematics-11.2.4" = {
@@ -103,13 +103,13 @@ let
         sha512 = "bhi2+5xtVAjtr3bsXKT8pnoBamQrArd/Y20ueA4Od7cd38YT97nzTA1wyHBFG0vWd0HMyg42ZS0aycNBuOebaA==";
       };
     };
-    "@angular-devkit/schematics-11.2.9" = {
+    "@angular-devkit/schematics-12.0.2" = {
       name = "_at_angular-devkit_slash_schematics";
       packageName = "@angular-devkit/schematics";
-      version = "11.2.9";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-11.2.9.tgz";
-        sha512 = "NqcBMK9ZbfXykj+2/cSlZcLVmbep/N+yYb+dUSfvRup3rW3uYSpMMJAnys3ro0m7TnUrI7h7t0UTgX8oxjlCow==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-12.0.2.tgz";
+        sha512 = "PS+SrRhAc/lyRfuBsi6Rt2yV7IA34B7T6J0K8/Av0GABZ83x+0vLiZC39eSPS1X8qcM/U09pCfDT8Q6ZQPCICA==";
       };
     };
     "@angular-devkit/schematics-cli-0.1102.6" = {
@@ -238,22 +238,22 @@ let
         sha512 = "QdwOGF1+eeyFh+17v2Tz626WX0nucd1iKOm6JUTUvCZdbolblCOOQCxGrQPY0f7jEhn36PiAWqZnsC2r5vmUWg==";
       };
     };
-    "@apollo/protobufjs-1.0.5" = {
+    "@apollo/protobufjs-1.2.2" = {
       name = "_at_apollo_slash_protobufjs";
       packageName = "@apollo/protobufjs";
-      version = "1.0.5";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.0.5.tgz";
-        sha512 = "ZtyaBH1icCgqwIGb3zrtopV2D5Q8yxibkJzlaViM08eOhTQc7rACdYu0pfORFfhllvdMZ3aq69vifYHszY4gNA==";
+        url = "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.2.2.tgz";
+        sha512 = "vF+zxhPiLtkwxONs6YanSt1EpwpGilThpneExUN5K3tCymuxNnVq2yojTvnpRjv2QfsEIt/n7ozPIIzBLwGIDQ==";
       };
     };
-    "@apollographql/apollo-tools-0.4.9" = {
+    "@apollographql/apollo-tools-0.5.1" = {
       name = "_at_apollographql_slash_apollo-tools";
       packageName = "@apollographql/apollo-tools";
-      version = "0.4.9";
+      version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@apollographql/apollo-tools/-/apollo-tools-0.4.9.tgz";
-        sha512 = "M50pk8oo3CGTu4waGOklIX3YtTZoPfWG9K/G9WB8NpyQGA1OwYTiBFv94XqUtKElTDoFwoMXpMQd3Wy5dINvxA==";
+        url = "https://registry.npmjs.org/@apollographql/apollo-tools/-/apollo-tools-0.5.1.tgz";
+        sha512 = "ZII+/xUFfb9ezDU2gad114+zScxVFMVlZ91f8fGApMzlS1kkqoyLnC4AJaQ1Ya/X+b63I20B4Gd+eCL8QuB4sA==";
       };
     };
     "@apollographql/graphql-playground-html-1.6.27" = {
@@ -310,13 +310,13 @@ let
         sha1 = "e70187f8a862e191b1bce6c0268f13acd3a56b20";
       };
     };
-    "@babel/cli-7.13.14" = {
+    "@babel/cli-7.14.3" = {
       name = "_at_babel_slash_cli";
       packageName = "@babel/cli";
-      version = "7.13.14";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/cli/-/cli-7.13.14.tgz";
-        sha512 = "zmEFV8WBRsW+mPQumO1/4b34QNALBVReaiHJOkxhUsdo/AvYM62c+SKSuLi2aZ42t3ocK6OI0uwUXRvrIbREZw==";
+        url = "https://registry.npmjs.org/@babel/cli/-/cli-7.14.3.tgz";
+        sha512 = "zU4JLvwk32ay1lhhyGfqiRUSPoltVDjhYkA3aQq8+Yby9z30s/EsFw1EPOHxWG9YZo2pAGfgdRNeHZQAYU5m9A==";
       };
     };
     "@babel/code-frame-7.10.4" = {
@@ -346,13 +346,13 @@ let
         sha512 = "HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==";
       };
     };
-    "@babel/compat-data-7.13.15" = {
+    "@babel/compat-data-7.14.4" = {
       name = "_at_babel_slash_compat-data";
       packageName = "@babel/compat-data";
-      version = "7.13.15";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.15.tgz";
-        sha512 = "ltnibHKR1VnrU4ymHyQ/CXtNXI6yZC0oJThyW78Hft8XndANwi+9H+UIklBDraIjFEJzw8wmcM427oDd9KS5wA==";
+        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.4.tgz";
+        sha512 = "i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==";
       };
     };
     "@babel/core-7.10.5" = {
@@ -364,13 +364,13 @@ let
         sha512 = "O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w==";
       };
     };
-    "@babel/core-7.13.15" = {
+    "@babel/core-7.14.3" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.13.15";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.13.15.tgz";
-        sha512 = "6GXmNYeNjS2Uz+uls5jalOemgIhnTMeaXo+yBUA72kC2uX/8VW6XyhVIo2L8/q0goKQA3EVKx0KOQpVKSeWadQ==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz";
+        sha512 = "jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==";
       };
     };
     "@babel/core-7.9.0" = {
@@ -382,13 +382,13 @@ let
         sha512 = "kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==";
       };
     };
-    "@babel/generator-7.13.9" = {
+    "@babel/generator-7.14.3" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.13.9";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz";
-        sha512 = "mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz";
+        sha512 = "bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==";
       };
     };
     "@babel/helper-annotate-as-pure-7.12.13" = {
@@ -409,40 +409,40 @@ let
         sha512 = "CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==";
       };
     };
-    "@babel/helper-compilation-targets-7.13.13" = {
+    "@babel/helper-compilation-targets-7.14.4" = {
       name = "_at_babel_slash_helper-compilation-targets";
       packageName = "@babel/helper-compilation-targets";
-      version = "7.13.13";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.13.tgz";
-        sha512 = "q1kcdHNZehBwD9jYPh3WyXcsFERi39X4I59I3NadciWtNDyZ6x+GboOxncFK0kXlKIv6BJm5acncehXWUjWQMQ==";
+        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz";
+        sha512 = "JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==";
       };
     };
-    "@babel/helper-create-class-features-plugin-7.13.11" = {
+    "@babel/helper-create-class-features-plugin-7.14.4" = {
       name = "_at_babel_slash_helper-create-class-features-plugin";
       packageName = "@babel/helper-create-class-features-plugin";
-      version = "7.13.11";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz";
-        sha512 = "ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw==";
+        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.4.tgz";
+        sha512 = "idr3pthFlDCpV+p/rMgGLGYIVtazeatrSOQk8YzO2pAepIjQhCN3myeihVg58ax2bbbGK9PUE1reFi7axOYIOw==";
       };
     };
-    "@babel/helper-create-regexp-features-plugin-7.12.17" = {
+    "@babel/helper-create-regexp-features-plugin-7.14.3" = {
       name = "_at_babel_slash_helper-create-regexp-features-plugin";
       packageName = "@babel/helper-create-regexp-features-plugin";
-      version = "7.12.17";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz";
-        sha512 = "p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg==";
+        url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.3.tgz";
+        sha512 = "JIB2+XJrb7v3zceV2XzDhGIB902CmKGSpSl4q2C6agU9SNLG/2V1RtFRGPG1Ajh9STj3+q6zJMOC+N/pp2P9DA==";
       };
     };
-    "@babel/helper-define-polyfill-provider-0.2.0" = {
+    "@babel/helper-define-polyfill-provider-0.2.3" = {
       name = "_at_babel_slash_helper-define-polyfill-provider";
       packageName = "@babel/helper-define-polyfill-provider";
-      version = "0.2.0";
+      version = "0.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.0.tgz";
-        sha512 = "JT8tHuFjKBo8NnaUbblz7mIu1nnvUDiHVjXXkulZULyidvo/7P6TY7+YqpV37IfF+KUFxmlK04elKtGKXaiVgw==";
+        url = "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz";
+        sha512 = "RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==";
       };
     };
     "@babel/helper-explode-assignable-expression-7.13.0" = {
@@ -454,13 +454,13 @@ let
         sha512 = "qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA==";
       };
     };
-    "@babel/helper-function-name-7.12.13" = {
+    "@babel/helper-function-name-7.14.2" = {
       name = "_at_babel_slash_helper-function-name";
       packageName = "@babel/helper-function-name";
-      version = "7.12.13";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz";
-        sha512 = "TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==";
+        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz";
+        sha512 = "NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==";
       };
     };
     "@babel/helper-get-function-arity-7.12.13" = {
@@ -472,13 +472,13 @@ let
         sha512 = "DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==";
       };
     };
-    "@babel/helper-hoist-variables-7.13.0" = {
+    "@babel/helper-hoist-variables-7.13.16" = {
       name = "_at_babel_slash_helper-hoist-variables";
       packageName = "@babel/helper-hoist-variables";
-      version = "7.13.0";
+      version = "7.13.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz";
-        sha512 = "0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g==";
+        url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.16.tgz";
+        sha512 = "1eMtTrXtrwscjcAeO4BVK+vvkxaLJSPFz1w1KLawz6HLNi9bPFGBNwwDyVfiu1Tv/vRRFYfoGaKhmAQPGPn5Wg==";
       };
     };
     "@babel/helper-member-expression-to-functions-7.13.12" = {
@@ -499,13 +499,13 @@ let
         sha512 = "4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==";
       };
     };
-    "@babel/helper-module-transforms-7.13.14" = {
+    "@babel/helper-module-transforms-7.14.2" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.13.14";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.14.tgz";
-        sha512 = "QuU/OJ0iAOSIatyVZmfqB0lbkVP0kDRiKj34xy+QNsnVZi/PA6BoSoreeqnxxa9EHFAIL0R9XOaAR/G9WlIy5g==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz";
+        sha512 = "OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==";
       };
     };
     "@babel/helper-optimise-call-expression-7.12.13" = {
@@ -544,13 +544,13 @@ let
         sha512 = "pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg==";
       };
     };
-    "@babel/helper-replace-supers-7.13.12" = {
+    "@babel/helper-replace-supers-7.14.4" = {
       name = "_at_babel_slash_helper-replace-supers";
       packageName = "@babel/helper-replace-supers";
-      version = "7.13.12";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz";
-        sha512 = "Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==";
+        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz";
+        sha512 = "zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==";
       };
     };
     "@babel/helper-simple-access-7.13.12" = {
@@ -580,13 +580,13 @@ let
         sha512 = "tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==";
       };
     };
-    "@babel/helper-validator-identifier-7.12.11" = {
+    "@babel/helper-validator-identifier-7.14.0" = {
       name = "_at_babel_slash_helper-validator-identifier";
       packageName = "@babel/helper-validator-identifier";
-      version = "7.12.11";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz";
-        sha512 = "np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==";
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz";
+        sha512 = "V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==";
       };
     };
     "@babel/helper-validator-option-7.12.17" = {
@@ -607,31 +607,31 @@ let
         sha512 = "1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==";
       };
     };
-    "@babel/helpers-7.13.10" = {
+    "@babel/helpers-7.14.0" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.13.10";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz";
-        sha512 = "4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz";
+        sha512 = "+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==";
       };
     };
-    "@babel/highlight-7.13.10" = {
+    "@babel/highlight-7.14.0" = {
       name = "_at_babel_slash_highlight";
       packageName = "@babel/highlight";
-      version = "7.13.10";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz";
-        sha512 = "5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==";
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz";
+        sha512 = "YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==";
       };
     };
-    "@babel/parser-7.13.15" = {
+    "@babel/parser-7.14.4" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.13.15";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.13.15.tgz";
-        sha512 = "b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz";
+        sha512 = "ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==";
       };
     };
     "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12" = {
@@ -652,13 +652,13 @@ let
         sha512 = "mx0WXDDiIl5DwzMtzWGRSPugXi9BxROS05GQrhLNbEamhBiicgn994ibwkyiBH+6png7bm/yA7AUsvHyCXi4Vw==";
       };
     };
-    "@babel/plugin-proposal-async-generator-functions-7.13.15" = {
+    "@babel/plugin-proposal-async-generator-functions-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-async-generator-functions";
       packageName = "@babel/plugin-proposal-async-generator-functions";
-      version = "7.13.15";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.15.tgz";
-        sha512 = "VapibkWzFeoa6ubXy/NgV5U2U4MVnUlvnx6wo1XhlsaTrLYWE0UFpDQsVrmn22q5CzeloqJ8gEMHSKxuee6ZdA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.2.tgz";
+        sha512 = "b1AM4F6fwck4N8ItZ/AtC4FP/cqZqmKRQ4FaTDutwSYyjuhtvsGEMLK4N/ztV/ImP40BjIDyMgBQAeAMsQYVFQ==";
       };
     };
     "@babel/plugin-proposal-class-properties-7.12.13" = {
@@ -679,13 +679,22 @@ let
         sha512 = "KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==";
       };
     };
-    "@babel/plugin-proposal-dynamic-import-7.13.8" = {
+    "@babel/plugin-proposal-class-static-block-7.14.3" = {
+      name = "_at_babel_slash_plugin-proposal-class-static-block";
+      packageName = "@babel/plugin-proposal-class-static-block";
+      version = "7.14.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.3.tgz";
+        sha512 = "HEjzp5q+lWSjAgJtSluFDrGGosmwTgKwCXdDQZvhKsRlwv3YdkUEqxNrrjesJd+B9E9zvr1PVPVBvhYZ9msjvQ==";
+      };
+    };
+    "@babel/plugin-proposal-dynamic-import-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-dynamic-import";
       packageName = "@babel/plugin-proposal-dynamic-import";
-      version = "7.13.8";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz";
-        sha512 = "ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.2.tgz";
+        sha512 = "oxVQZIWFh91vuNEMKltqNsKLFWkOIyJc95k2Gv9lWVyDfPUQGSSlbDEgWuJUU1afGE9WwlzpucMZ3yDRHIItkA==";
       };
     };
     "@babel/plugin-proposal-export-default-from-7.12.13" = {
@@ -697,49 +706,49 @@ let
         sha512 = "idIsBT+DGXdOHL82U+8bwX4goHm/z10g8sGGrQroh+HCRcm7mDv/luaGdWJQMTuCX2FsdXS7X0Nyyzp4znAPJA==";
       };
     };
-    "@babel/plugin-proposal-export-namespace-from-7.12.13" = {
+    "@babel/plugin-proposal-export-namespace-from-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-export-namespace-from";
       packageName = "@babel/plugin-proposal-export-namespace-from";
-      version = "7.12.13";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz";
-        sha512 = "INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.2.tgz";
+        sha512 = "sRxW3z3Zp3pFfLAgVEvzTFutTXax837oOatUIvSG9o5gRj9mKwm3br1Se5f4QalTQs9x4AzlA/HrCWbQIHASUQ==";
       };
     };
-    "@babel/plugin-proposal-json-strings-7.13.8" = {
+    "@babel/plugin-proposal-json-strings-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-json-strings";
       packageName = "@babel/plugin-proposal-json-strings";
-      version = "7.13.8";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz";
-        sha512 = "w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.2.tgz";
+        sha512 = "w2DtsfXBBJddJacXMBhElGEYqCZQqN99Se1qeYn8DVLB33owlrlLftIbMzn5nz1OITfDVknXF433tBrLEAOEjA==";
       };
     };
-    "@babel/plugin-proposal-logical-assignment-operators-7.13.8" = {
+    "@babel/plugin-proposal-logical-assignment-operators-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-logical-assignment-operators";
       packageName = "@babel/plugin-proposal-logical-assignment-operators";
-      version = "7.13.8";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz";
-        sha512 = "aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.2.tgz";
+        sha512 = "1JAZtUrqYyGsS7IDmFeaem+/LJqujfLZ2weLR9ugB0ufUPjzf8cguyVT1g5im7f7RXxuLq1xUxEzvm68uYRtGg==";
       };
     };
-    "@babel/plugin-proposal-nullish-coalescing-operator-7.13.8" = {
+    "@babel/plugin-proposal-nullish-coalescing-operator-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-nullish-coalescing-operator";
       packageName = "@babel/plugin-proposal-nullish-coalescing-operator";
-      version = "7.13.8";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz";
-        sha512 = "iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.2.tgz";
+        sha512 = "ebR0zU9OvI2N4qiAC38KIAK75KItpIPTpAtd2r4OZmMFeKbKJpUFLYP2EuDut82+BmYi8sz42B+TfTptJ9iG5Q==";
       };
     };
-    "@babel/plugin-proposal-numeric-separator-7.12.13" = {
+    "@babel/plugin-proposal-numeric-separator-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-numeric-separator";
       packageName = "@babel/plugin-proposal-numeric-separator";
-      version = "7.12.13";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz";
-        sha512 = "O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.2.tgz";
+        sha512 = "DcTQY9syxu9BpU3Uo94fjCB3LN9/hgPS8oUL7KrSW3bA2ePrKZZPJcc5y0hoJAM9dft3pGfErtEUvxXQcfLxUg==";
       };
     };
     "@babel/plugin-proposal-object-rest-spread-7.10.4" = {
@@ -751,31 +760,31 @@ let
         sha512 = "6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA==";
       };
     };
-    "@babel/plugin-proposal-object-rest-spread-7.13.8" = {
+    "@babel/plugin-proposal-object-rest-spread-7.14.4" = {
       name = "_at_babel_slash_plugin-proposal-object-rest-spread";
       packageName = "@babel/plugin-proposal-object-rest-spread";
-      version = "7.13.8";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz";
-        sha512 = "DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.4.tgz";
+        sha512 = "AYosOWBlyyXEagrPRfLJ1enStufsr7D1+ddpj8OLi9k7B6+NdZ0t/9V7Fh+wJ4g2Jol8z2JkgczYqtWrZd4vbA==";
       };
     };
-    "@babel/plugin-proposal-optional-catch-binding-7.13.8" = {
+    "@babel/plugin-proposal-optional-catch-binding-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-optional-catch-binding";
       packageName = "@babel/plugin-proposal-optional-catch-binding";
-      version = "7.13.8";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz";
-        sha512 = "0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.2.tgz";
+        sha512 = "XtkJsmJtBaUbOxZsNk0Fvrv8eiqgneug0A6aqLFZ4TSkar2L5dSXWcnUKHgmjJt49pyB/6ZHvkr3dPgl9MOWRQ==";
       };
     };
-    "@babel/plugin-proposal-optional-chaining-7.13.12" = {
+    "@babel/plugin-proposal-optional-chaining-7.14.2" = {
       name = "_at_babel_slash_plugin-proposal-optional-chaining";
       packageName = "@babel/plugin-proposal-optional-chaining";
-      version = "7.13.12";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz";
-        sha512 = "fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.2.tgz";
+        sha512 = "qQByMRPwMZJainfig10BoaDldx/+VDtNcrA7qdNaEOAj6VXud+gfrkA8j4CRAU5HjnWREXqIpSpH30qZX1xivA==";
       };
     };
     "@babel/plugin-proposal-private-methods-7.13.0" = {
@@ -787,6 +796,15 @@ let
         sha512 = "MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q==";
       };
     };
+    "@babel/plugin-proposal-private-property-in-object-7.14.0" = {
+      name = "_at_babel_slash_plugin-proposal-private-property-in-object";
+      packageName = "@babel/plugin-proposal-private-property-in-object";
+      version = "7.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.0.tgz";
+        sha512 = "59ANdmEwwRUkLjB7CRtwJxxwtjESw+X2IePItA+RGQh+oy5RmpCh/EvVVvh5XQc3yxsm5gtv0+i9oBZhaDNVTg==";
+      };
+    };
     "@babel/plugin-proposal-unicode-property-regex-7.12.13" = {
       name = "_at_babel_slash_plugin-proposal-unicode-property-regex";
       packageName = "@babel/plugin-proposal-unicode-property-regex";
@@ -823,6 +841,15 @@ let
         sha512 = "fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==";
       };
     };
+    "@babel/plugin-syntax-class-static-block-7.12.13" = {
+      name = "_at_babel_slash_plugin-syntax-class-static-block";
+      packageName = "@babel/plugin-syntax-class-static-block";
+      version = "7.12.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.12.13.tgz";
+        sha512 = "ZmKQ0ZXR0nYpHZIIuj9zE7oIqCx2hw9TKi+lIo73NNrMPAZGHfS92/VRV0ZmPj6H2ffBgyFHXvJ5NYsNeEaP2A==";
+      };
+    };
     "@babel/plugin-syntax-dynamic-import-7.8.3" = {
       name = "_at_babel_slash_plugin-syntax-dynamic-import";
       packageName = "@babel/plugin-syntax-dynamic-import";
@@ -949,6 +976,15 @@ let
         sha512 = "KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==";
       };
     };
+    "@babel/plugin-syntax-private-property-in-object-7.14.0" = {
+      name = "_at_babel_slash_plugin-syntax-private-property-in-object";
+      packageName = "@babel/plugin-syntax-private-property-in-object";
+      version = "7.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.0.tgz";
+        sha512 = "bda3xF8wGl5/5btF794utNOL0Jw+9jE5C1sLZcoK7c4uonE/y3iQiyG+KbkF3WBV/paX58VCpjhxLPkdj5Fe4w==";
+      };
+    };
     "@babel/plugin-syntax-top-level-await-7.12.13" = {
       name = "_at_babel_slash_plugin-syntax-top-level-await";
       packageName = "@babel/plugin-syntax-top-level-await";
@@ -994,22 +1030,22 @@ let
         sha512 = "zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==";
       };
     };
-    "@babel/plugin-transform-block-scoping-7.12.13" = {
+    "@babel/plugin-transform-block-scoping-7.14.4" = {
       name = "_at_babel_slash_plugin-transform-block-scoping";
       packageName = "@babel/plugin-transform-block-scoping";
-      version = "7.12.13";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz";
-        sha512 = "Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.4.tgz";
+        sha512 = "5KdpkGxsZlTk+fPleDtGKsA+pon28+ptYmMO8GBSa5fHERCJWAzj50uAfCKBqq42HO+Zot6JF1x37CRprwmN4g==";
       };
     };
-    "@babel/plugin-transform-classes-7.13.0" = {
+    "@babel/plugin-transform-classes-7.14.4" = {
       name = "_at_babel_slash_plugin-transform-classes";
       packageName = "@babel/plugin-transform-classes";
-      version = "7.13.0";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz";
-        sha512 = "9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.4.tgz";
+        sha512 = "p73t31SIj6y94RDVX57rafVjttNr8MvKEgs5YFatNB/xC68zM3pyosuOEcQmYsYlyQaGY9R7rAULVRcat5FKJQ==";
       };
     };
     "@babel/plugin-transform-computed-properties-7.13.0" = {
@@ -1021,13 +1057,13 @@ let
         sha512 = "RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==";
       };
     };
-    "@babel/plugin-transform-destructuring-7.13.0" = {
+    "@babel/plugin-transform-destructuring-7.14.4" = {
       name = "_at_babel_slash_plugin-transform-destructuring";
       packageName = "@babel/plugin-transform-destructuring";
-      version = "7.13.0";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz";
-        sha512 = "zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.4.tgz";
+        sha512 = "JyywKreTCGTUsL1OKu1A3ms/R1sTP0WxbpXlALeGzF53eB3bxtNkYdMj9SDgK7g6ImPy76J5oYYKoTtQImlhQA==";
       };
     };
     "@babel/plugin-transform-dotall-regex-7.12.13" = {
@@ -1102,22 +1138,22 @@ let
         sha512 = "kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==";
       };
     };
-    "@babel/plugin-transform-modules-amd-7.13.0" = {
+    "@babel/plugin-transform-modules-amd-7.14.2" = {
       name = "_at_babel_slash_plugin-transform-modules-amd";
       packageName = "@babel/plugin-transform-modules-amd";
-      version = "7.13.0";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz";
-        sha512 = "EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.2.tgz";
+        sha512 = "hPC6XBswt8P3G2D1tSV2HzdKvkqOpmbyoy+g73JG0qlF/qx2y3KaMmXb1fLrpmWGLZYA0ojCvaHdzFWjlmV+Pw==";
       };
     };
-    "@babel/plugin-transform-modules-commonjs-7.13.8" = {
+    "@babel/plugin-transform-modules-commonjs-7.14.0" = {
       name = "_at_babel_slash_plugin-transform-modules-commonjs";
       packageName = "@babel/plugin-transform-modules-commonjs";
-      version = "7.13.8";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz";
-        sha512 = "9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.0.tgz";
+        sha512 = "EX4QePlsTaRZQmw9BsoPeyh5OCtRGIhwfLquhxGp5e32w+dyL8htOcDwamlitmNFK6xBZYlygjdye9dbd9rUlQ==";
       };
     };
     "@babel/plugin-transform-modules-systemjs-7.13.8" = {
@@ -1129,13 +1165,13 @@ let
         sha512 = "hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A==";
       };
     };
-    "@babel/plugin-transform-modules-umd-7.13.0" = {
+    "@babel/plugin-transform-modules-umd-7.14.0" = {
       name = "_at_babel_slash_plugin-transform-modules-umd";
       packageName = "@babel/plugin-transform-modules-umd";
-      version = "7.13.0";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz";
-        sha512 = "D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.0.tgz";
+        sha512 = "nPZdnWtXXeY7I87UZr9VlsWme3Y0cfFFE41Wbxz4bbaexAjNMInXPFUpRRUJ8NoMm0Cw+zxbqjdPmLhcjfazMw==";
       };
     };
     "@babel/plugin-transform-named-capturing-groups-regex-7.12.13" = {
@@ -1174,13 +1210,13 @@ let
         sha512 = "JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==";
       };
     };
-    "@babel/plugin-transform-parameters-7.13.0" = {
+    "@babel/plugin-transform-parameters-7.14.2" = {
       name = "_at_babel_slash_plugin-transform-parameters";
       packageName = "@babel/plugin-transform-parameters";
-      version = "7.13.0";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz";
-        sha512 = "Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz";
+        sha512 = "NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==";
       };
     };
     "@babel/plugin-transform-property-literals-7.12.13" = {
@@ -1192,22 +1228,22 @@ let
         sha512 = "nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==";
       };
     };
-    "@babel/plugin-transform-react-display-name-7.12.13" = {
+    "@babel/plugin-transform-react-display-name-7.14.2" = {
       name = "_at_babel_slash_plugin-transform-react-display-name";
       packageName = "@babel/plugin-transform-react-display-name";
-      version = "7.12.13";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.13.tgz";
-        sha512 = "MprESJzI9O5VnJZrL7gg1MpdqmiFcUv41Jc7SahxYsNP2kDkFqClxxTZq+1Qv4AFCamm+GXMRDQINNn+qrxmiA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.2.tgz";
+        sha512 = "zCubvP+jjahpnFJvPaHPiGVfuVUjXHhFvJKQdNnsmSsiU9kR/rCZ41jHc++tERD2zV+p7Hr6is+t5b6iWTCqSw==";
       };
     };
-    "@babel/plugin-transform-react-jsx-7.13.12" = {
+    "@babel/plugin-transform-react-jsx-7.14.3" = {
       name = "_at_babel_slash_plugin-transform-react-jsx";
       packageName = "@babel/plugin-transform-react-jsx";
-      version = "7.13.12";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.13.12.tgz";
-        sha512 = "jcEI2UqIcpCqB5U5DRxIl0tQEProI2gcu+g8VTIqxLO5Iidojb4d77q+fwGseCvd8af/lJ9masp4QWzBXFE2xA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.3.tgz";
+        sha512 = "uuxuoUNVhdgYzERiHHFkE4dWoJx+UFVyuAl0aqN8P2/AKFHwqgUC5w2+4/PjpKXJsFgBlYAFXlUmDQ3k3DUkXw==";
       };
     };
     "@babel/plugin-transform-react-jsx-development-7.12.17" = {
@@ -1228,13 +1264,13 @@ let
         sha512 = "FXYw98TTJ125GVCCkFLZXlZ1qGcsYqNQhVBQcZjyrwf8FEUtVfKIoidnO8S0q+KBQpDYNTmiGo1gn67Vti04lQ==";
       };
     };
-    "@babel/plugin-transform-react-jsx-source-7.12.13" = {
+    "@babel/plugin-transform-react-jsx-source-7.14.2" = {
       name = "_at_babel_slash_plugin-transform-react-jsx-source";
       packageName = "@babel/plugin-transform-react-jsx-source";
-      version = "7.12.13";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.12.13.tgz";
-        sha512 = "O5JJi6fyfih0WfDgIJXksSPhGP/G0fQpfxYy87sDc+1sFmsCS6wr3aAn+whbzkhbjtq4VMqLRaSzR6IsshIC0Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.14.2.tgz";
+        sha512 = "OMorspVyjxghAjzgeAWc6O7W7vHbJhV69NeTGdl9Mxgz6PaweAuo7ffB9T5A1OQ9dGcw0As4SYMUhyNC4u7mVg==";
       };
     };
     "@babel/plugin-transform-react-pure-annotations-7.12.1" = {
@@ -1264,13 +1300,13 @@ let
         sha512 = "xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==";
       };
     };
-    "@babel/plugin-transform-runtime-7.13.15" = {
+    "@babel/plugin-transform-runtime-7.14.3" = {
       name = "_at_babel_slash_plugin-transform-runtime";
       packageName = "@babel/plugin-transform-runtime";
-      version = "7.13.15";
+      version = "7.14.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.13.15.tgz";
-        sha512 = "d+ezl76gx6Jal08XngJUkXM4lFXK/5Ikl9Mh4HKDxSfGJXmZ9xG64XT2oivBzfxb/eQ62VfvoMkaCZUKJMVrBA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.14.3.tgz";
+        sha512 = "t960xbi8wpTFE623ef7sd+UpEC5T6EEguQlTBJDEO05+XwnIWVfuqLw/vdLWY6IdFmtZE+65CZAfByT39zRpkg==";
       };
     };
     "@babel/plugin-transform-shorthand-properties-7.12.13" = {
@@ -1318,13 +1354,13 @@ let
         sha512 = "eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==";
       };
     };
-    "@babel/plugin-transform-typescript-7.13.0" = {
+    "@babel/plugin-transform-typescript-7.14.4" = {
       name = "_at_babel_slash_plugin-transform-typescript";
       packageName = "@babel/plugin-transform-typescript";
-      version = "7.13.0";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.13.0.tgz";
-        sha512 = "elQEwluzaU8R8dbVuW2Q2Y8Nznf7hnjM7+DSCd14Lo5fF63C9qNLbwZYbmZrtV9/ySpSUpkRpQXvJb6xyu4hCQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.14.4.tgz";
+        sha512 = "WYdcGNEO7mCCZ2XzRlxwGj3PgeAr50ifkofOUC/+IN/GzKLB+biDPVBUAQN2C/dVZTvEXCp80kfQ1FFZPrwykQ==";
       };
     };
     "@babel/plugin-transform-unicode-escapes-7.12.13" = {
@@ -1354,13 +1390,13 @@ let
         sha512 = "9PMijx8zFbCwTHrd2P4PJR5nWGH3zWebx2OcpTjqQrHhCiL2ssSR2Sc9ko2BsI2VmVBfoaQmPrlMTCui4LmXQg==";
       };
     };
-    "@babel/preset-env-7.13.15" = {
+    "@babel/preset-env-7.14.4" = {
       name = "_at_babel_slash_preset-env";
       packageName = "@babel/preset-env";
-      version = "7.13.15";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.13.15.tgz";
-        sha512 = "D4JAPMXcxk69PKe81jRJ21/fP/uYdcTZ3hJDF5QX2HSI9bBxxYw/dumdR6dGumhjxlprHPE4XWoPaqzZUVy2MA==";
+        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.4.tgz";
+        sha512 = "GwMMsuAnDtULyOtuxHhzzuSRxFeP0aR/LNzrHRzP8y6AgDNgqnrfCCBm/1cRdTU75tRs28Eh76poHLcg9VF0LA==";
       };
     };
     "@babel/preset-flow-7.13.13" = {
@@ -1426,31 +1462,31 @@ let
         sha512 = "LXJwxrHy0N3f6gIJlYbLta1D9BDtHpQeqwzM0LIfjDlr6UE/D5Mc7W4iDiQzaE+ks0sTjT26ArcHWnJVt0QiHw==";
       };
     };
-    "@babel/register-7.13.14" = {
+    "@babel/register-7.13.16" = {
       name = "_at_babel_slash_register";
       packageName = "@babel/register";
-      version = "7.13.14";
+      version = "7.13.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/register/-/register-7.13.14.tgz";
-        sha512 = "iyw0hUwjh/fzN8qklVqZodbyWjEBOG0KdDnBOpv3zzIgK3NmuRXBmIXH39ZBdspkn8LTHvSboN+oYb4MT43+9Q==";
+        url = "https://registry.npmjs.org/@babel/register/-/register-7.13.16.tgz";
+        sha512 = "dh2t11ysujTwByQjXNgJ48QZ2zcXKQVdV8s0TbeMI0flmtGWCdTwK9tJiACHXPLmncm5+ktNn/diojA45JE4jg==";
       };
     };
-    "@babel/runtime-7.13.10" = {
+    "@babel/runtime-7.13.9" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.13.10";
+      version = "7.13.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz";
-        sha512 = "4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.9.tgz";
+        sha512 = "aY2kU+xgJ3dJ1eU6FMB9EH8dIe8dmusF1xEku52joLvw6eAFN0AI+WxCLDnpev2LEejWBAy2sBvBOBAjI3zmvA==";
       };
     };
-    "@babel/runtime-7.13.9" = {
+    "@babel/runtime-7.14.0" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.13.9";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.9.tgz";
-        sha512 = "aY2kU+xgJ3dJ1eU6FMB9EH8dIe8dmusF1xEku52joLvw6eAFN0AI+WxCLDnpev2LEejWBAy2sBvBOBAjI3zmvA==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.0.tgz";
+        sha512 = "JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA==";
       };
     };
     "@babel/runtime-7.9.0" = {
@@ -1462,22 +1498,22 @@ let
         sha512 = "cTIudHnzuWLS56ik4DnRnqqNf8MkdUzV4iFFI1h7Jo9xvrpQROYaAnaSd2mHLQAzzZAPfATynX5ord6YlNYNMA==";
       };
     };
-    "@babel/runtime-corejs3-7.13.10" = {
+    "@babel/runtime-corejs3-7.14.0" = {
       name = "_at_babel_slash_runtime-corejs3";
       packageName = "@babel/runtime-corejs3";
-      version = "7.13.10";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.13.10.tgz";
-        sha512 = "x/XYVQ1h684pp1mJwOV4CyvqZXqbc8CMsMGUnAbuc82ZCdv1U63w5RSUzgDSXQHG5Rps/kiksH6g2D5BuaKyXg==";
+        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.0.tgz";
+        sha512 = "0R0HTZWHLk6G8jIk0FtoX+AatCtKnswS98VhXwGImFc759PJRp4Tru0PQYZofyijTFUr+gT8Mu7sgXVJLQ0ceg==";
       };
     };
-    "@babel/standalone-7.13.15" = {
+    "@babel/standalone-7.14.4" = {
       name = "_at_babel_slash_standalone";
       packageName = "@babel/standalone";
-      version = "7.13.15";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.13.15.tgz";
-        sha512 = "gKEx9cfMLJegKYYVnI1/4swITcWQa2/e0HlAU9S/+h94xGdyXtoYVQiz8gcXabQ/8MMlOwGclkRoTL3cAxplZg==";
+        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.14.4.tgz";
+        sha512 = "oBvBtSdACtNeH2YAg2kyZhfbqfKQK7lgudfHo8IC03JiBrfuvvMlfkBaSrqxrpf9DmUCZJnDZH3uLNVN5QoXog==";
       };
     };
     "@babel/template-7.12.13" = {
@@ -1489,22 +1525,22 @@ let
         sha512 = "/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==";
       };
     };
-    "@babel/traverse-7.13.15" = {
+    "@babel/traverse-7.14.2" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.13.15";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.15.tgz";
-        sha512 = "/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz";
+        sha512 = "TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==";
       };
     };
-    "@babel/types-7.13.14" = {
+    "@babel/types-7.14.4" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.13.14";
+      version = "7.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz";
-        sha512 = "A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz";
+        sha512 = "lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==";
       };
     };
     "@braintree/sanitize-url-3.1.0" = {
@@ -1516,22 +1552,22 @@ let
         sha512 = "GcIY79elgB+azP74j8vqkiXz8xLFfIzbQJdlwOPisgbKT00tviJQuEghOXSMVxJ00HoYJbGswr4kcllUc4xCcg==";
       };
     };
-    "@bugsnag/browser-7.9.2" = {
+    "@bugsnag/browser-7.10.1" = {
       name = "_at_bugsnag_slash_browser";
       packageName = "@bugsnag/browser";
-      version = "7.9.2";
+      version = "7.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.9.2.tgz";
-        sha512 = "vD0UEpInqoOWxqSdXhDN7wbt8hUnaqmHF/nyQK6pVYlPmBOaseexwjGBWQ1BCa4QWwK1CDDBy6sS9onUvWKsnw==";
+        url = "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.10.1.tgz";
+        sha512 = "Yxm/DheT/NHX2PhadBDuafuHBhP547Iav6Y9jf+skBBSi1n0ZYkGhtVxh8ZWLgqz5W8MsJ0HFiLBqcg/mulSvQ==";
       };
     };
-    "@bugsnag/core-7.9.2" = {
+    "@bugsnag/core-7.10.0" = {
       name = "_at_bugsnag_slash_core";
       packageName = "@bugsnag/core";
-      version = "7.9.2";
+      version = "7.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/core/-/core-7.9.2.tgz";
-        sha512 = "iz18qkEhrF0Bra0lpEP4VC0EJa48R+3QDDiTtfHW9fiZGKw+ADrUhwW7pHJn+LDqWfq4kMqJNuQC+8s4dV3MYg==";
+        url = "https://registry.npmjs.org/@bugsnag/core/-/core-7.10.0.tgz";
+        sha512 = "sDa2nDxwsxHQx2/2/tsBWjYqH0TewCR8N/r5at6B+irwVkI0uts7Qc2JyqDTfiEiBXKVEXFK+fHTz1x9b8tsiA==";
       };
     };
     "@bugsnag/cuid-3.0.0" = {
@@ -1543,22 +1579,22 @@ let
         sha512 = "LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg==";
       };
     };
-    "@bugsnag/js-7.9.2" = {
+    "@bugsnag/js-7.10.1" = {
       name = "_at_bugsnag_slash_js";
       packageName = "@bugsnag/js";
-      version = "7.9.2";
+      version = "7.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/js/-/js-7.9.2.tgz";
-        sha512 = "RkajX7cnlYKm4uWclf4oQKZL69A9Vo5jNyQiE7u8uFXhotHoDyHi5QLkdHOSIOZHkBGkgoRV9tkbPAJKcnJSuQ==";
+        url = "https://registry.npmjs.org/@bugsnag/js/-/js-7.10.1.tgz";
+        sha512 = "1/MK/Bw2ViFx1hMG2TOX8MOq/LzT2VRd0VswknF4LYsZSgzohkRzz/hi6P2TSlLeapRs+bkDC6u2RCq4zYvyiA==";
       };
     };
-    "@bugsnag/node-7.9.2" = {
+    "@bugsnag/node-7.10.1" = {
       name = "_at_bugsnag_slash_node";
       packageName = "@bugsnag/node";
-      version = "7.9.2";
+      version = "7.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/node/-/node-7.9.2.tgz";
-        sha512 = "e+tEyUBQ6e5z4WJlPAi962rnbR0f+0wxPjSoUHV5uVFg5Dkjg3ioXDdzKVbxfOEv3nVpXlMD8DrQqYe5g0O6sA==";
+        url = "https://registry.npmjs.org/@bugsnag/node/-/node-7.10.1.tgz";
+        sha512 = "kpasrz/im5ljptt2JOqrjbOu4b0i5sAZOYU4L0psWXlD31/wXytk7im11QlNALdI8gZZBxIFsVo8ks6dR6mHzg==";
       };
     };
     "@bugsnag/safe-json-stringify-6.0.0" = {
@@ -1570,13 +1606,13 @@ let
         sha512 = "htzFO1Zc57S8kgdRK9mLcPVTW1BY2ijfH7Dk2CeZmspTWKdKqSo1iwmqrq2WtRjFlo8aRZYgLX0wFrDXF/9DLA==";
       };
     };
-    "@cdktf/hcl2json-0.2.2" = {
+    "@cdktf/hcl2json-0.4.0" = {
       name = "_at_cdktf_slash_hcl2json";
       packageName = "@cdktf/hcl2json";
-      version = "0.2.2";
+      version = "0.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cdktf/hcl2json/-/hcl2json-0.2.2.tgz";
-        sha512 = "C/IOl8ARTRiafC9mdZiIuJbqys6LRmaVM/grux7OASkVbkyYy2RHKPVXRBsD5mtfLBXQaL/NGjLLJ4aSC7jFZQ==";
+        url = "https://registry.npmjs.org/@cdktf/hcl2json/-/hcl2json-0.4.0.tgz";
+        sha512 = "etFW1+DoAwQ7ENtdvpuKxmosJDDJ2rnQUDkJPZnNIqLUAXcGG3MdU6PWTnLQX/xwDMQq7xfCZlDK/hrV7g2rhA==";
       };
     };
     "@chemzqm/neovim-5.2.13" = {
@@ -1723,175 +1759,175 @@ let
         sha512 = "HilPrVrCosYWqSyjfpDtaaN1kJwdlBpS+IAflP3z+e7nsEgk3JGJf1Vg0NgHJooTf5HDfXSyZqMVg+5jvXCK0g==";
       };
     };
-    "@discoveryjs/json-ext-0.5.2" = {
+    "@discoveryjs/json-ext-0.5.3" = {
       name = "_at_discoveryjs_slash_json-ext";
       packageName = "@discoveryjs/json-ext";
-      version = "0.5.2";
+      version = "0.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz";
-        sha512 = "HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==";
+        url = "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz";
+        sha512 = "Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==";
       };
     };
-    "@electron-forge/async-ora-6.0.0-beta.54" = {
+    "@electron-forge/async-ora-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_async-ora";
       packageName = "@electron-forge/async-ora";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.54.tgz";
-        sha512 = "OCoHds0BIXaB54HgKw6pjlHC1cnaTcfJfVVkPSJl1GLC3VShZ5bETJfsitwbiP2kbfKLUQFayW27sqbwnwQR2w==";
+        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.57.tgz";
+        sha512 = "pinf6bB5etIKNwFgMx2V+kwsFlkjU4mApALv0Jn/lmcH5dlAB4zPwuKTccC44xVO4pp/bV1HWb1XJ4lHVxYaJg==";
       };
     };
-    "@electron-forge/core-6.0.0-beta.54" = {
+    "@electron-forge/core-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_core";
       packageName = "@electron-forge/core";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.54.tgz";
-        sha512 = "yggZeiwRLnIsQYCT5jKhx2L7I02CwUCjnIzA+CqUZXD0AU1c2o0BA/26dNOGvY/+pr5yWjOXcrGy1hvj3dnLmQ==";
+        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.57.tgz";
+        sha512 = "pLYG0QefjAEjxRazgEjryb4TrxVeebGTqXqZsKOpABAlDaKU4EmBq06SeSu8H9IAzMPwzpDIa6PaXdkMclqhnA==";
       };
     };
-    "@electron-forge/installer-base-6.0.0-beta.54" = {
+    "@electron-forge/installer-base-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-base";
       packageName = "@electron-forge/installer-base";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.54.tgz";
-        sha512 = "q6Z5kBAE6StKqn+3Z5tXVHu7WGCb9OMeIomw9H9Q41UUIehF7V0J3tCWTkJdhZ8D6/tkXcis3GKptaj0wfMpyg==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.57.tgz";
+        sha512 = "qeQMUos0WADEddSGhViCUeMswsFz1IL+elIy5h06AxgjoRtOU75VVy9RgVfDAMIN0iKvEWNKLQz1CBUtVAt0fA==";
       };
     };
-    "@electron-forge/installer-darwin-6.0.0-beta.54" = {
+    "@electron-forge/installer-darwin-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-darwin";
       packageName = "@electron-forge/installer-darwin";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.54.tgz";
-        sha512 = "kRbH24+QBhbcIugnIvevnf43JGzLFLoyFsoY3YeyZeeDL3vfyg0vtSyUx0hfq1GpHG+zObDf3o18c3WbxdXlXA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.57.tgz";
+        sha512 = "3dsa948r3gCkD+ooKeGwWSUyh5GEJ7ngi9t1dRD+f1jUnkU1e3SqcGXH68dr5NYn3OcsFDWreK3xvx/1qdEQAg==";
       };
     };
-    "@electron-forge/installer-deb-6.0.0-beta.54" = {
+    "@electron-forge/installer-deb-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-deb";
       packageName = "@electron-forge/installer-deb";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.54.tgz";
-        sha512 = "UbJR2Md0SBqex5AIv9YZ56hY2Iz5gZ6f1iAx0q4PlYpCY19W9nRXdudLNhx1w5go26DsT53+h6EzX2NGpBLq3Q==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.57.tgz";
+        sha512 = "Dnm68RUwR0UEe1hq1OPWso0LwdkZTa7Rpv0m9bHl+IvXTmrU//S5fdHEtjHAmto8f8PD5VadsLQcxsc3bQVNGQ==";
       };
     };
-    "@electron-forge/installer-dmg-6.0.0-beta.54" = {
+    "@electron-forge/installer-dmg-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-dmg";
       packageName = "@electron-forge/installer-dmg";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.54.tgz";
-        sha512 = "F9jwhUTzdFNlbLus7RQ8paoGPryr79JFYDLi42f0dyuFwlOjwlrA1wN5xWqrvcMeqFlc3DfjjeRWZ+10RQyorA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.57.tgz";
+        sha512 = "kmAYga2yY5JcrRI3Dtpau5Ldsebzs4pGkCCBJqq5asqgDGdCpw+8Cky6ouJDaZMl853C0CEnqxeoGYDTAlVBKA==";
       };
     };
-    "@electron-forge/installer-exe-6.0.0-beta.54" = {
+    "@electron-forge/installer-exe-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-exe";
       packageName = "@electron-forge/installer-exe";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.54.tgz";
-        sha512 = "PE7RBPerSenNcSkKXJWpervKNl7AVT+JeMzx61OHUQSw3h63NHRvXWh31llxk32mmJcaKRgGle2GsWob87Lv/w==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.57.tgz";
+        sha512 = "hVh4vh2q7BxJ8npsVCSxSdoUMwQwcs0LidbanXK8CqHmTgnb9MNDSHomCxOnX+kMQX85mCj9Nc5ROviXnLN4Xg==";
       };
     };
-    "@electron-forge/installer-linux-6.0.0-beta.54" = {
+    "@electron-forge/installer-linux-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-linux";
       packageName = "@electron-forge/installer-linux";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.54.tgz";
-        sha512 = "WQVV5fitsfTyktjb18m9Bx+Dho6rCFvVILqFNZAu1RfXIsjLl/h0WdkozdGDccfeDMqlRYmaNs3e5THn5swnAg==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.57.tgz";
+        sha512 = "MTK4wLCWxYctzo/htghNhZ5ptIf46AE3UdeQItjiEhL4+KjJjQN8JAVkl40WeM+rUDA53WRQ35HeykNBmspb6A==";
       };
     };
-    "@electron-forge/installer-rpm-6.0.0-beta.54" = {
+    "@electron-forge/installer-rpm-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-rpm";
       packageName = "@electron-forge/installer-rpm";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.54.tgz";
-        sha512 = "8gaJA2m8+Y/ZhV4xEeijXz8UksrliMEzyUAdwM5ZdAsmfmGlnhchGr0L6rI23D66dQP9DeyvUIuUwXrsTlj1nQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.57.tgz";
+        sha512 = "cTzL6mwkhKEkl4v7NE2ATaEsptf5OhTbtwb/tRVIuEOblYKTxw3x9nnH8iGJ73xPW/54awGiU1kHJTKA6UhcUA==";
       };
     };
-    "@electron-forge/installer-zip-6.0.0-beta.54" = {
+    "@electron-forge/installer-zip-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_installer-zip";
       packageName = "@electron-forge/installer-zip";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.54.tgz";
-        sha512 = "KCY5zreA79wjZODhLmtrbFweTWdlh9JgmW9WruIrmHm3sK19rRhCdaZ+Dg5ZWUhMx2A79d5a2C7r78lWGcHl7A==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.57.tgz";
+        sha512 = "ip/mlC32/mdUzFsM/39cZWshLN1B1f6atYHd2OpXlyAz6IZWrRHdsrJGtYsGdpgeoV/wMm09MTyuKXku3ehPaQ==";
       };
     };
-    "@electron-forge/maker-base-6.0.0-beta.54" = {
+    "@electron-forge/maker-base-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_maker-base";
       packageName = "@electron-forge/maker-base";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.54.tgz";
-        sha512 = "4y0y15ieb1EOR5mibtFM9tZzaShbAO0RZu6ARLCpD5BgKuJBzXRPfWvEmY6WeDNzoWTJ+mQdYikLAeOL2E9mew==";
+        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.57.tgz";
+        sha512 = "VnoSCeyCHBv9q0Bz9JRgKC1b4k3z/Qb2T9DrpMqEVW6ClZVkOAZVmjyEtb+Xn8DnRPc4UtSjpAquycC/AZJ4MQ==";
       };
     };
-    "@electron-forge/plugin-base-6.0.0-beta.54" = {
+    "@electron-forge/plugin-base-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_plugin-base";
       packageName = "@electron-forge/plugin-base";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.54.tgz";
-        sha512 = "8HwGzgNCHo2PgUfNnTch3Gvj7l6fqOgjnARK1y056UfsxFy+hwvHaAO+7LLfr7ktNwU/bH3hGhOpE+ZmBSwSqQ==";
+        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.57.tgz";
+        sha512 = "lErdgdSGd+HcIzXsZC1Pf6VuLYsDVHTwFUzuZqUPdl28AOWKfwW+XpIZoPMDt2/Mdd5K0mCcYSylikcSa8RHYA==";
       };
     };
-    "@electron-forge/publisher-base-6.0.0-beta.54" = {
+    "@electron-forge/publisher-base-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_publisher-base";
       packageName = "@electron-forge/publisher-base";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.54.tgz";
-        sha512 = "Dny0jW0N8QcNYKHTtzQFZD4pBWJ7tclJWf3ZCX031vUKG7RhThdA06IPNzV6JtWJswrvAE9TPndzZONMza2V7g==";
+        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.57.tgz";
+        sha512 = "eJFVt4JI/zCw86PMu/LERMAMVcPchyFfZ9upFec4YuOOMLaJH1NvbO3gGgYj7vavH1hQWZA6Yn7u8b+E8y8Byw==";
       };
     };
-    "@electron-forge/shared-types-6.0.0-beta.54" = {
+    "@electron-forge/shared-types-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_shared-types";
       packageName = "@electron-forge/shared-types";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.54.tgz";
-        sha512 = "6CzWKFR17rxxeIqm1w5ZyT9uTAHSVAjhqL8c+TmizF2703GyCEusUkjP2UXt/tZNY4MJlukZoJM66Bct6oZJ+w==";
+        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.57.tgz";
+        sha512 = "8jRAf7HsfQC5BA8MTOwh8cXmqJ8JJqzO7WzDW9A50tHOKbpBxPW9YM8036SZzZ4GNZYBSWmJt3d3vW+KFLeYXg==";
       };
     };
-    "@electron-forge/template-base-6.0.0-beta.54" = {
+    "@electron-forge/template-base-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_template-base";
       packageName = "@electron-forge/template-base";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.54.tgz";
-        sha512 = "LuSpeOiM6AzUbamz5U/NqRkn4y7dzof1JK1ISAb+6tORf7JU014aKqDcLdwgP8Lxaz6P1bdlMmNJTvg5+SBrEw==";
+        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.57.tgz";
+        sha512 = "3Nc7ik99VHQK8eTUrO/lA2tMRM5a0fLX+GgjR32yzkaAv081qd6t/XWS7MfU3k5Ld5cYMturUywJnEP/QdxOvA==";
       };
     };
-    "@electron-forge/template-typescript-6.0.0-beta.54" = {
+    "@electron-forge/template-typescript-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_template-typescript";
       packageName = "@electron-forge/template-typescript";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.54.tgz";
-        sha512 = "7V87LWH+vJ1YibM9MsTttbz7upfwLrmXgchQ399EfLxK306g7q/ouyGkeTerhLr2gCUAvm/Oqx+sXQ7402ol9w==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.57.tgz";
+        sha512 = "NhcyTaLjbBGtdCTkAJgazKR4B9+yNFNH8QiXm3u6bg0cv2MhPWydmPuiEjFRLqG+Vz6jS4sW6jSIyCjFRK42ow==";
       };
     };
-    "@electron-forge/template-typescript-webpack-6.0.0-beta.54" = {
+    "@electron-forge/template-typescript-webpack-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_template-typescript-webpack";
       packageName = "@electron-forge/template-typescript-webpack";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.54.tgz";
-        sha512 = "1MIw1eGlMZg7KLG4oAEE0rB28WDOtz01OSoW2a2NqkmUzmu4BxJdSvQ97Tp7xCU0naW0H1uU39B9QOjJQgLGCQ==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.57.tgz";
+        sha512 = "S9AzVLB02AvOwEOtQvtSJlv7BPZPSX3gdqwhoxPcTP6Pi/hOvVeEweptkwwRzGsZmSI7/ifi1bq7avhnzjasZw==";
       };
     };
-    "@electron-forge/template-webpack-6.0.0-beta.54" = {
+    "@electron-forge/template-webpack-6.0.0-beta.57" = {
       name = "_at_electron-forge_slash_template-webpack";
       packageName = "@electron-forge/template-webpack";
-      version = "6.0.0-beta.54";
+      version = "6.0.0-beta.57";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.54.tgz";
-        sha512 = "4/zUOZ8MCZqs8PcUCeeG6ofpy6HT53tQiLknM23OPaFP6ckuE6kOunC6N/teijUrJuLpKl3P8d39SWPVacxEzg==";
+        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.57.tgz";
+        sha512 = "df4/jHKcZ6+8qIE+h2U9Ej5P36uGQZjI8+CcIPDE/46avHT+BwCmlMA/ZTGUQ787U9WkoMiI7122jdd7GNyuCQ==";
       };
     };
     "@electron/get-1.12.4" = {
@@ -1975,13 +2011,13 @@ let
         sha512 = "OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==";
       };
     };
-    "@eslint/eslintrc-0.4.0" = {
+    "@eslint/eslintrc-0.4.1" = {
       name = "_at_eslint_slash_eslintrc";
       packageName = "@eslint/eslintrc";
-      version = "0.4.0";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz";
-        sha512 = "2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==";
+        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz";
+        sha512 = "5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==";
       };
     };
     "@exodus/schemasafe-1.0.0-rc.3" = {
@@ -1993,13 +2029,13 @@ let
         sha512 = "GoXw0U2Qaa33m3eUcxuHnHpNvHjNlLo0gtV091XBpaRINaB4X6FGCG5XKxSFNFiPpugUDqNruHzaqpTdDm4AOg==";
       };
     };
-    "@expo/apple-utils-0.0.0-alpha.17" = {
+    "@expo/apple-utils-0.0.0-alpha.20" = {
       name = "_at_expo_slash_apple-utils";
       packageName = "@expo/apple-utils";
-      version = "0.0.0-alpha.17";
+      version = "0.0.0-alpha.20";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/apple-utils/-/apple-utils-0.0.0-alpha.17.tgz";
-        sha512 = "ecpC6e3xTtMVVKWpp231L8vptoSPqwtKSmfJ8sXfMlQRtWbq8Bu1pCHR/pdAx9X4IYzygjrTa9IDAPpbGuSaMg==";
+        url = "https://registry.npmjs.org/@expo/apple-utils/-/apple-utils-0.0.0-alpha.20.tgz";
+        sha512 = "L/M9NPNlT1e38whA3M4QdnIDCClj6Y2GPXFOxBxuwzlmh847RHwZ/ojJpVP8sLVC+is54DS1hU9vtDkiPHGPRw==";
       };
     };
     "@expo/bunyan-4.0.0" = {
@@ -2011,58 +2047,58 @@ let
         sha512 = "Ydf4LidRB/EBI+YrB+cVLqIseiRfjUI/AeHBgjGMtq3GroraDu81OV7zqophRgupngoL3iS3JUMDMnxO7g39qA==";
       };
     };
-    "@expo/config-3.3.36" = {
+    "@expo/config-4.0.2" = {
       name = "_at_expo_slash_config";
       packageName = "@expo/config";
-      version = "3.3.36";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config/-/config-3.3.36.tgz";
-        sha512 = "qUaq3Ct3O2uML3ISsjekol3UNTQUvJm2AMrRjlwYXHzxG2EVIHNaWseOZoFtXxrfAj3IqWXEtS9avfho+nbgBg==";
+        url = "https://registry.npmjs.org/@expo/config/-/config-4.0.2.tgz";
+        sha512 = "zKKWt6Qs2lJLSwp8NeBCQ+iAPuKYkRJB6PZZJFIXaXD9AC5uJYSElUG+HVfy73se4KF/4JjndOWXWZEkCAivxw==";
       };
     };
-    "@expo/config-plugins-1.0.26" = {
+    "@expo/config-plugins-2.0.2" = {
       name = "_at_expo_slash_config-plugins";
       packageName = "@expo/config-plugins";
-      version = "1.0.26";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-1.0.26.tgz";
-        sha512 = "zfdNL7FgM2yCYSX0sq7PUkcE9pk+w6GfgCnnXuYH5JOOi2UYtiOu0FgYc0M+ZmUlhNkTtiBZDt8aPGcikopwpw==";
+        url = "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-2.0.2.tgz";
+        sha512 = "kaTfzLfg9sjy9uAHq708FVqC2hlVQyzCmrCsnfRguk2d+5V9ZyCVdMPiDdAIKHtWCPygIPNmlIP4FYQ093RNzQ==";
       };
     };
-    "@expo/config-types-40.0.0-beta.2" = {
+    "@expo/config-types-41.0.0" = {
       name = "_at_expo_slash_config-types";
       packageName = "@expo/config-types";
-      version = "40.0.0-beta.2";
+      version = "41.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config-types/-/config-types-40.0.0-beta.2.tgz";
-        sha512 = "t9pHCQMXOP4nwd7LGXuHkLlFy0JdfknRSCAeVF4Kw2/y+5OBbR9hW9ZVnetpBf0kORrekgiI7K/qDaa3hh5+Qg==";
+        url = "https://registry.npmjs.org/@expo/config-types/-/config-types-41.0.0.tgz";
+        sha512 = "Ax0pHuY5OQaSrzplOkT9DdpdmNzaVDnq9VySb4Ujq7UJ4U4jriLy8u93W98zunOXpcu0iiKubPsqD6lCiq0pig==";
       };
     };
-    "@expo/configure-splash-screen-0.3.4" = {
+    "@expo/configure-splash-screen-0.4.0" = {
       name = "_at_expo_slash_configure-splash-screen";
       packageName = "@expo/configure-splash-screen";
-      version = "0.3.4";
+      version = "0.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/configure-splash-screen/-/configure-splash-screen-0.3.4.tgz";
-        sha512 = "HsukM03X5/EXSucVsLN/oLqyFq/1jAjpADkgU1HLaezFpkr+TOquI6yDwdDp1450kcm891PE/SYJ+mCdPxzDLw==";
+        url = "https://registry.npmjs.org/@expo/configure-splash-screen/-/configure-splash-screen-0.4.0.tgz";
+        sha512 = "IDPnr2/DW1tYpDHqedFYNCDzRTf9HYinWFQ7fOelNZLuOCMoErLbSStA5zfkv46o69AgcCpteqgKHSoxsIBz5g==";
       };
     };
-    "@expo/dev-server-0.1.62" = {
+    "@expo/dev-server-0.1.72" = {
       name = "_at_expo_slash_dev-server";
       packageName = "@expo/dev-server";
-      version = "0.1.62";
+      version = "0.1.72";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/dev-server/-/dev-server-0.1.62.tgz";
-        sha512 = "ZNBQI/Q9Di19TjU7QT2lNxT+VEf8Aq6puwCNVQx2ohdKQjqh4+YSlvvChXY+x25SG1CorWc8SfLjTtXnIcheJg==";
+        url = "https://registry.npmjs.org/@expo/dev-server/-/dev-server-0.1.72.tgz";
+        sha512 = "W1ULabPSCDiV1ySy3ZkX2nTUPiWLqj1ocMLE8sk1wddO8RWneKGB9FlrGDj0+RFTDOYi6ZmBESesKrH/elNkRw==";
       };
     };
-    "@expo/dev-tools-0.13.92" = {
+    "@expo/dev-tools-0.13.102" = {
       name = "_at_expo_slash_dev-tools";
       packageName = "@expo/dev-tools";
-      version = "0.13.92";
+      version = "0.13.102";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/dev-tools/-/dev-tools-0.13.92.tgz";
-        sha512 = "Fu5Bw5lk3Pl1aj9XMOSNP8trzksrmb4w969qiBzCGxVrrSql93xBPDwpd40oOiAesk+X7Qg6eF/IIJpYNfgUCg==";
+        url = "https://registry.npmjs.org/@expo/dev-tools/-/dev-tools-0.13.102.tgz";
+        sha512 = "yVpt9EERqMrPXaFgjV5HumcDSoni0rhaafTB186NB4BYPNuBDytSeb9RnpxyHHWxzF3/mav5DIQ+x6HB6TdWig==";
       };
     };
     "@expo/devcert-1.0.0" = {
@@ -2074,58 +2110,67 @@ let
         sha512 = "cahGyQCmpZmHpn2U04NR9KwsOIZy7Rhsw8Fg4q+A6563lIJxbkrgPnxq/O3NQAh3ohEvOXOOnoFx0b4yycCkpQ==";
       };
     };
-    "@expo/image-utils-0.3.12" = {
+    "@expo/image-utils-0.3.14" = {
       name = "_at_expo_slash_image-utils";
       packageName = "@expo/image-utils";
-      version = "0.3.12";
+      version = "0.3.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.12.tgz";
-        sha512 = "QMMAjyCJUFXI8b6AOrVC40gubkt++qYfRJdKgbegf9JHQNul/O4Q1ENWTgid+PH0EUqlMLbv6kJ6ai0ZjO08kw==";
+        url = "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.14.tgz";
+        sha512 = "n+JkLZ71CWuNKLVVsPTzMGRwmbeKiVQw/2b99Ro7znCKzJy3tyE5T2C6WBvYh/5h/hjg8TqEODjXXWucRIzMXA==";
       };
     };
-    "@expo/json-file-8.2.28" = {
+    "@expo/json-file-8.2.30" = {
       name = "_at_expo_slash_json-file";
       packageName = "@expo/json-file";
-      version = "8.2.28";
+      version = "8.2.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/json-file/-/json-file-8.2.28.tgz";
-        sha512 = "C28McDuCIOmCmp6e2ZgIpNaT/fZG+L3/WFv5x2DCrooOQmamrkLSH/4Dib0NUmLgWVhgIhXL2hU4RB+LjzVvkQ==";
+        url = "https://registry.npmjs.org/@expo/json-file/-/json-file-8.2.30.tgz";
+        sha512 = "vrgGyPEXBoFI5NY70IegusCSoSVIFV3T3ry4tjJg1MFQKTUlR7E0r+8g8XR6qC705rc2PawaZQjqXMAVtV6s2A==";
       };
     };
-    "@expo/metro-config-0.1.62" = {
+    "@expo/metro-config-0.1.72" = {
       name = "_at_expo_slash_metro-config";
       packageName = "@expo/metro-config";
-      version = "0.1.62";
+      version = "0.1.72";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.1.62.tgz";
-        sha512 = "CvEtzryyLCDky9faY0/+rilkF4wS/KlbdtCbRk5esu5eH3dc0hztEap6TrIP4axQJ481uHRxy/dN2FBivQfLdg==";
+        url = "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.1.72.tgz";
+        sha512 = "PvWn5DZCV6hNYA9CTOBWEfwb9FCjyQCiyYnmxjsT0k9eplIBGTtfy74uIOd0SdDdCTPCgCO8SMyabc+Qg599xg==";
       };
     };
-    "@expo/osascript-2.0.25" = {
+    "@expo/osascript-2.0.28" = {
       name = "_at_expo_slash_osascript";
       packageName = "@expo/osascript";
-      version = "2.0.25";
+      version = "2.0.28";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/osascript/-/osascript-2.0.25.tgz";
-        sha512 = "rB+RLHCp72q0OBWmisoBswfTpyzc91OJMs3UQVWJP9mXVNJhemONt7PKjE+FinBm33uH1HCC6U7JPGigpVsJBg==";
+        url = "https://registry.npmjs.org/@expo/osascript/-/osascript-2.0.28.tgz";
+        sha512 = "+0R/+DK/kTjFmkFShPlwowO3Ro0X0nQ3F7uRaOsXomZVjvrjSaOQOlFYRDr0Ci3pbEWS8MGUhlC7GXlba4VsTw==";
       };
     };
-    "@expo/package-manager-0.0.40" = {
+    "@expo/package-manager-0.0.43" = {
       name = "_at_expo_slash_package-manager";
       packageName = "@expo/package-manager";
-      version = "0.0.40";
+      version = "0.0.43";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/package-manager/-/package-manager-0.0.40.tgz";
-        sha512 = "JE5i/IYQ7ActzugX1MgzK5vUjAJHtEm+btEyNtZyf8SQKOlk+DMeSUdQuC6h07IgTlFIfqFiw1O8GW/x8RD77A==";
+        url = "https://registry.npmjs.org/@expo/package-manager/-/package-manager-0.0.43.tgz";
+        sha512 = "Keguxd7fH1JbFd/4fU3PuN3h4usZ3NyRFXgi7ZjAYul8uKt+/XB2HBvliukdThGJKhypMeVWcNYWuLCUm74B1Q==";
       };
     };
-    "@expo/plist-0.0.12" = {
+    "@expo/plist-0.0.13" = {
       name = "_at_expo_slash_plist";
       packageName = "@expo/plist";
-      version = "0.0.12";
+      version = "0.0.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/plist/-/plist-0.0.12.tgz";
-        sha512 = "anGvLk58fxfeHY2PbtH79VxhrLDPGd+173pHYYXNg9HlfbrEVLI2Vo0ZBOrr/cYr7cgU5A/WNcMphRoO/KfYZQ==";
+        url = "https://registry.npmjs.org/@expo/plist/-/plist-0.0.13.tgz";
+        sha512 = "zGPSq9OrCn7lWvwLLHLpHUUq2E40KptUFXn53xyZXPViI0k9lbApcR9KlonQZ95C+ELsf0BQ3gRficwK92Ivcw==";
+      };
+    };
+    "@expo/prebuild-config-1.0.3" = {
+      name = "_at_expo_slash_prebuild-config";
+      packageName = "@expo/prebuild-config";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-1.0.3.tgz";
+        sha512 = "4rkWeVs6FaO4TcOVf5GnH5HTPOaVHJX9d1GnqF/Msh3IdhX1+v+c3s6HYmxDezkild27SYwrinqu89CWRUtM/A==";
       };
     };
     "@expo/results-1.0.0" = {
@@ -2137,13 +2182,13 @@ let
         sha512 = "qECzzXX5oJot3m2Gu9pfRDz50USdBieQVwYAzeAtQRUTD3PVeTK1tlRUoDcrK8PSruDLuVYdKkLebX4w/o55VA==";
       };
     };
-    "@expo/schemer-1.3.27" = {
+    "@expo/schemer-1.3.29" = {
       name = "_at_expo_slash_schemer";
       packageName = "@expo/schemer";
-      version = "1.3.27";
+      version = "1.3.29";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/schemer/-/schemer-1.3.27.tgz";
-        sha512 = "cuCvSo6qErgK7OOM8CoCtCsVifq+WX1wUCeu+fmSyhnZcqnz45ZTK20Ghk5bT3OrTNQipbTiCjn9RCDrkEMMkg==";
+        url = "https://registry.npmjs.org/@expo/schemer/-/schemer-1.3.29.tgz";
+        sha512 = "7Ch3c39xZunAo/yv8lj62pc9m5jmKKeyCrz7wKe4p3dETvcvLpqaaxl8ylWm//Nok27D290y1q/pE5i12KA+Pg==";
       };
     };
     "@expo/simple-spinner-1.0.2" = {
@@ -2164,22 +2209,22 @@ let
         sha512 = "LB7jWkqrHo+5fJHNrLAFdimuSXQ2MQ4lA7SQW5bf/HbsXuV2VrT/jN/M8f/KoWt0uJMGN4k/j7Opx4AvOOxSew==";
       };
     };
-    "@expo/webpack-config-0.12.66" = {
+    "@expo/webpack-config-0.12.76" = {
       name = "_at_expo_slash_webpack-config";
       packageName = "@expo/webpack-config";
-      version = "0.12.66";
+      version = "0.12.76";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/webpack-config/-/webpack-config-0.12.66.tgz";
-        sha512 = "8U3m44Q2VMmoOl9Gw9djOsdCIX5yT8yD5ZnVyfyQHMGILz9uXkqn3kM0QNFFWhT8TZN/zCP6YkmYrH8yL3rTkg==";
+        url = "https://registry.npmjs.org/@expo/webpack-config/-/webpack-config-0.12.76.tgz";
+        sha512 = "8Q4sH+KBgM9jsH7Dp0A5lEmGiKvBXNcax2H6k8i54vfptaUh8gBZqohGuLshzeTJYT43I3LDulheOGr83yNB3g==";
       };
     };
-    "@expo/xcpretty-2.0.0" = {
+    "@expo/xcpretty-2.0.1" = {
       name = "_at_expo_slash_xcpretty";
       packageName = "@expo/xcpretty";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/xcpretty/-/xcpretty-2.0.0.tgz";
-        sha512 = "bukgcPcsiZq7dYxpSVPQ/qvSDrwpUVSkgEf8NQJS9UcClPakgpM+e5XIzYWe2WXLmHtskVJUPruoEX6zWUm8LA==";
+        url = "https://registry.npmjs.org/@expo/xcpretty/-/xcpretty-2.0.1.tgz";
+        sha512 = "fyQbzvZpLiKpx68QDzeLlL1AtFhhEW35dqxIqb4QQ6e3iofu57NdWBQTmIAQzDOPcNNXUR9SFncu3M4iyWwQ7Q==";
       };
     };
     "@fast-csv/format-4.3.5" = {
@@ -2218,22 +2263,22 @@ let
         sha512 = "XqPS7l3YoMwxdNlaYF6S2Mp0K3FmVIOIy2K3YkMc+eRxu9wFK6emr2Q/3rBhtG5u/On37NExRT7/5CTLnoi9gw==";
       };
     };
-    "@fluentui/keyboard-key-0.2.16" = {
+    "@fluentui/keyboard-key-0.2.17" = {
       name = "_at_fluentui_slash_keyboard-key";
       packageName = "@fluentui/keyboard-key";
-      version = "0.2.16";
+      version = "0.2.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.2.16.tgz";
-        sha512 = "T4eQ0uqhbTScsoXVx10Tlp0C2RgNdAzlbe52qJ0Tn288/Nuztda5Z/aTCRd5Rp5MRYBycjAf4iNot6ZHAP864g==";
+        url = "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.2.17.tgz";
+        sha512 = "iT1bU56rKrKEOfODoW6fScY11qj3iaYrZ+z11T6fo5+TDm84UGkkXjLXJTE57ZJzg0/gbccHQWYv+chY7bJN8Q==";
       };
     };
-    "@fluentui/react-7.168.0" = {
+    "@fluentui/react-7.170.1" = {
       name = "_at_fluentui_slash_react";
       packageName = "@fluentui/react";
-      version = "7.168.0";
+      version = "7.170.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react/-/react-7.168.0.tgz";
-        sha512 = "eM+vt4RDRnI/IGZtenxYp7cTssMOkXVY3GqFLJkiK/gHTRI3goMWPpLA9tux0lbuiB3zvnvgLrJ2k0ihWa3FCw==";
+        url = "https://registry.npmjs.org/@fluentui/react/-/react-7.170.1.tgz";
+        sha512 = "v43+TQ+zcjzW3vPOebIIUQpj4j1p4McDVwrVGplUmIVgxXPg9wBvXGB0CcBvpaFRZq6tKG95uUdanRsEStBMxQ==";
       };
     };
     "@fluentui/react-focus-7.17.6" = {
@@ -2299,13 +2344,13 @@ let
         sha512 = "d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw==";
       };
     };
-    "@google-cloud/pubsub-2.11.0" = {
+    "@google-cloud/pubsub-2.12.0" = {
       name = "_at_google-cloud_slash_pubsub";
       packageName = "@google-cloud/pubsub";
-      version = "2.11.0";
+      version = "2.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.11.0.tgz";
-        sha512 = "j9sIjVLFqSEVrAZdrGbmu4GVVuCW70Sg6/EBKSMjNKhN/ctQsgcP6kUVLVnnrrTWVF0+FfdlfuCHtdYxGy7mfw==";
+        url = "https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.12.0.tgz";
+        sha512 = "SF+y7sKX9Jo2ZoVqzwEuSReUyb6O4mwxzxP1B+dP3j0ArUk0XXSC/tFLQhYM7lC2ViLxGWoIbEZbRIw8SrIQnw==";
       };
     };
     "@graphql-cli/common-4.1.0" = {
@@ -2326,22 +2371,22 @@ let
         sha512 = "RNhQk0jMz6fZB4Ilu37PZj6YUQgSEZJrppXlaHpw/xYyDelcjYKZg/z9eMvYo6rxQPR2mGXjoj6by+zew1WgOw==";
       };
     };
-    "@graphql-tools/batch-execute-7.1.0" = {
+    "@graphql-tools/batch-execute-7.1.2" = {
       name = "_at_graphql-tools_slash_batch-execute";
       packageName = "@graphql-tools/batch-execute";
-      version = "7.1.0";
+      version = "7.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-7.1.0.tgz";
-        sha512 = "Yb4QRpHZqDk24+T4K3ARk/KFU26Dyl30XcbYeVvIrgIKcmeON/p3DfSeiB0+MaxYlsv+liQKvlxNbeC2hD31pA==";
+        url = "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-7.1.2.tgz";
+        sha512 = "IuR2SB2MnC2ztA/XeTMTfWcA0Wy7ZH5u+nDkDNLAdX+AaSyDnsQS35sCmHqG0VOGTl7rzoyBWLCKGwSJplgtwg==";
       };
     };
-    "@graphql-tools/delegate-7.1.2" = {
+    "@graphql-tools/delegate-7.1.5" = {
       name = "_at_graphql-tools_slash_delegate";
       packageName = "@graphql-tools/delegate";
-      version = "7.1.2";
+      version = "7.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-7.1.2.tgz";
-        sha512 = "XvmIod9ZYKMLk2vV5ulbUyo1Va4SCvvp/VNq4RTae2SEvYwNewc1xs1Klmz8khV+c2V30xKSccNWGA6BWyTTog==";
+        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-7.1.5.tgz";
+        sha512 = "bQu+hDd37e+FZ0CQGEEczmRSfQRnnXeUxI/0miDV+NV/zCbEdIJj5tYFNrKT03W6wgdqx8U06d8L23LxvGri/g==";
       };
     };
     "@graphql-tools/graphql-file-loader-6.2.7" = {
@@ -2353,13 +2398,13 @@ let
         sha512 = "5k2SNz0W87tDcymhEMZMkd6/vs6QawDyjQXWtqkuLTBF3vxjxPD1I4dwHoxgWPIjjANhXybvulD7E+St/7s9TQ==";
       };
     };
-    "@graphql-tools/import-6.3.0" = {
+    "@graphql-tools/import-6.3.1" = {
       name = "_at_graphql-tools_slash_import";
       packageName = "@graphql-tools/import";
-      version = "6.3.0";
+      version = "6.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/import/-/import-6.3.0.tgz";
-        sha512 = "zmaVhJ3UPjzJSb005Pjn2iWvH+9AYRXI4IUiTi14uPupiXppJP3s7S25Si3+DbHpFwurDF2nWRxBLiFPWudCqw==";
+        url = "https://registry.npmjs.org/@graphql-tools/import/-/import-6.3.1.tgz";
+        sha512 = "1szR19JI6WPibjYurMLdadHKZoG9C//8I/FZ0Dt4vJSbrMdVNp8WFxg4QnZrDeMG4MzZc90etsyF5ofKjcC+jw==";
       };
     };
     "@graphql-tools/json-file-loader-6.2.6" = {
@@ -2380,31 +2425,31 @@ let
         sha512 = "FlQC50VELwRxoWUbJMMMs5gG0Dl8BaQYMrXUHTsxwqR7UmksUYnysC21rdousvs6jVZ7pf4unZfZFtBjz+8Edg==";
       };
     };
-    "@graphql-tools/merge-6.2.13" = {
+    "@graphql-tools/merge-6.2.14" = {
       name = "_at_graphql-tools_slash_merge";
       packageName = "@graphql-tools/merge";
-      version = "6.2.13";
+      version = "6.2.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/merge/-/merge-6.2.13.tgz";
-        sha512 = "Qjlki0fp+bBQPinhdv7rv24eurvThZ5oIFvGMpLxMZplbw/ovJ2c6llwXr5PCuWAk9HGZsyM9NxxDgtTRfq3dQ==";
+        url = "https://registry.npmjs.org/@graphql-tools/merge/-/merge-6.2.14.tgz";
+        sha512 = "RWT4Td0ROJai2eR66NHejgf8UwnXJqZxXgDWDI+7hua5vNA2OW8Mf9K1Wav1ZkjWnuRp4ztNtkZGie5ISw55ow==";
       };
     };
-    "@graphql-tools/schema-7.1.3" = {
+    "@graphql-tools/schema-7.1.5" = {
       name = "_at_graphql-tools_slash_schema";
       packageName = "@graphql-tools/schema";
-      version = "7.1.3";
+      version = "7.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/schema/-/schema-7.1.3.tgz";
-        sha512 = "ZY76hmcJlF1iyg3Im0sQ3ASRkiShjgv102vLTVcH22lEGJeCaCyyS/GF1eUHom418S60bS8Th6+autRUxfBiBg==";
+        url = "https://registry.npmjs.org/@graphql-tools/schema/-/schema-7.1.5.tgz";
+        sha512 = "uyn3HSNSckf4mvQSq0Q07CPaVZMNFCYEVxroApOaw802m9DcZPgf9XVPy/gda5GWj9AhbijfRYVTZQgHnJ4CXA==";
       };
     };
-    "@graphql-tools/url-loader-6.8.2" = {
+    "@graphql-tools/url-loader-6.10.1" = {
       name = "_at_graphql-tools_slash_url-loader";
       packageName = "@graphql-tools/url-loader";
-      version = "6.8.2";
+      version = "6.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.8.2.tgz";
-        sha512 = "YzsXSCOwlSj8UqOMhQThPzgEChgS/MonyWV7f0WKmN9gAT/f3fPaUcYhVamsH0vGbvTkfNM4JdoZO/39amRs5Q==";
+        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.10.1.tgz";
+        sha512 = "DSDrbhQIv7fheQ60pfDpGD256ixUQIR6Hhf9Z5bRjVkXOCvO5XrkwoWLiU7iHL81GB1r0Ba31bf+sl+D4nyyfw==";
       };
     };
     "@graphql-tools/utils-6.2.4" = {
@@ -2416,22 +2461,22 @@ let
         sha512 = "ybgZ9EIJE3JMOtTrTd2VcIpTXtDrn2q6eiYkeYMKRVh3K41+LZa6YnR2zKERTXqTWqhobROwLt4BZbw2O3Aeeg==";
       };
     };
-    "@graphql-tools/utils-7.7.3" = {
+    "@graphql-tools/utils-7.10.0" = {
       name = "_at_graphql-tools_slash_utils";
       packageName = "@graphql-tools/utils";
-      version = "7.7.3";
+      version = "7.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.7.3.tgz";
-        sha512 = "zF8Ll1v7DOFfCsZVYGkJqvi3Zpwfga8NutOZkToXrumMlTPaMhEDFkiuwoIK4lV2PMVUke5ZCmpn9pc5pqy4Tw==";
+        url = "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.10.0.tgz";
+        sha512 = "d334r6bo9mxdSqZW6zWboEnnOOFRrAPVQJ7LkU8/6grglrbcu6WhwCLzHb90E94JI3TD3ricC3YGbUqIi9Xg0w==";
       };
     };
-    "@graphql-tools/wrap-7.0.5" = {
+    "@graphql-tools/wrap-7.0.8" = {
       name = "_at_graphql-tools_slash_wrap";
       packageName = "@graphql-tools/wrap";
-      version = "7.0.5";
+      version = "7.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-7.0.5.tgz";
-        sha512 = "KCWBXsDfvG46GNUawRltJL4j9BMGoOG7oo3WEyCQP+SByWXiTe5cBF45SLDVQgdjljGNZhZ4Lq/7avIkF7/zDQ==";
+        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-7.0.8.tgz";
+        sha512 = "1NDUymworsOlb53Qfh7fonDi2STvqCtbeE68ntKY9K/Ju/be2ZNxrFSbrBHwnxWcN9PjISNnLcAyJ1L5tCUyhg==";
       };
     };
     "@grpc/grpc-js-1.2.11" = {
@@ -2452,6 +2497,24 @@ let
         sha512 = "+gPCklP1eqIgrNPyzddYQdt9+GvZqPlLpIjIo+TveE+gbtp74VV1A2ju8ExeO8ma8f7MbpaGZx/KJPYVWL9eDw==";
       };
     };
+    "@grpc/grpc-js-1.3.1" = {
+      name = "_at_grpc_slash_grpc-js";
+      packageName = "@grpc/grpc-js";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.3.1.tgz";
+        sha512 = "zyFq9eW0U4vGyhJS/oeW3mIeKTzB13we9rBclcisfRHxGQbC9FCOKQ5BBA2129yZwRVMt4hQia1igGzECeuY9g==";
+      };
+    };
+    "@grpc/grpc-js-1.3.2" = {
+      name = "_at_grpc_slash_grpc-js";
+      packageName = "@grpc/grpc-js";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.3.2.tgz";
+        sha512 = "UXepkOKCATJrhHGsxt+CGfpZy9zUn1q9mop5kfcXq1fBkTePxVNPOdnISlCbJFlCtld+pSLGyZCzr9/zVprFKA==";
+      };
+    };
     "@grpc/proto-loader-0.5.6" = {
       name = "_at_grpc_slash_proto-loader";
       packageName = "@grpc/proto-loader";
@@ -2470,6 +2533,24 @@ let
         sha512 = "JwWZwGuN1nQuPdeL1d94hNGtnRtiOuy+SkdVUU8IwwQzksvdWvgKHyGDCesvAD0tndQTm1YUZHJw+JDTIDALyQ==";
       };
     };
+    "@grpc/proto-loader-0.6.1" = {
+      name = "_at_grpc_slash_proto-loader";
+      packageName = "@grpc/proto-loader";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.1.tgz";
+        sha512 = "4DIvEOZhw5nGj3RQngIoiMXRsre3InEH136krZTcirs/G2em3WMXdtx4Lqlnb4E2ertbWGs5gPeVDKU5BHffXw==";
+      };
+    };
+    "@grpc/proto-loader-0.6.2" = {
+      name = "_at_grpc_slash_proto-loader";
+      packageName = "@grpc/proto-loader";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.2.tgz";
+        sha512 = "q2Qle60Ht2OQBCp9S5hv1JbI4uBBq6/mqSevFNK3ZEgRDBCAkWqZPUhD/K9gXOHrHKluliHiVq2L9sw1mVyAIg==";
+      };
+    };
     "@gulp-sourcemaps/identity-map-1.0.2" = {
       name = "_at_gulp-sourcemaps_slash_identity-map";
       packageName = "@gulp-sourcemaps/identity-map";
@@ -3037,67 +3118,67 @@ let
         sha512 = "EjPkDQOzV/oZfbolEUgFT6SE++PtCccVBvjuACkttyCfl0P2jnpR49SwstyVLc2u8AwBAZEHHAw9lPYaMjtbXQ==";
       };
     };
-    "@joplin/fork-htmlparser2-4.1.23" = {
+    "@joplin/fork-htmlparser2-4.1.26" = {
       name = "_at_joplin_slash_fork-htmlparser2";
       packageName = "@joplin/fork-htmlparser2";
-      version = "4.1.23";
+      version = "4.1.26";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/fork-htmlparser2/-/fork-htmlparser2-4.1.23.tgz";
-        sha512 = "nTbOVZJbF02d32AhvwhWME2uQbbCZsFYulMgqRZ/I4realfJgqkaUfXclLxYcyOPAjzngXd+Wb1/M/Pz6luXGw==";
+        url = "https://registry.npmjs.org/@joplin/fork-htmlparser2/-/fork-htmlparser2-4.1.26.tgz";
+        sha512 = "ltw7n6MdZyz+oM8DUzOxDeVPdOs/ZTavkmHeP4mp7FE4HYyU7ynhRAVsBpGmzRbXTCYXzl6QHVtocKEUZHkbSg==";
       };
     };
-    "@joplin/fork-sax-1.2.27" = {
+    "@joplin/fork-sax-1.2.30" = {
       name = "_at_joplin_slash_fork-sax";
       packageName = "@joplin/fork-sax";
-      version = "1.2.27";
+      version = "1.2.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/fork-sax/-/fork-sax-1.2.27.tgz";
-        sha512 = "ON/8pg90WCRHKj8HttziC7Rtef+DKSSDZD9J3zjHYUvrXB0pu+7eZvRP8vF3Y2MSZnlshtFGQqiIRbwk3GVA+Q==";
+        url = "https://registry.npmjs.org/@joplin/fork-sax/-/fork-sax-1.2.30.tgz";
+        sha512 = "cRSVysAJwLnaRbFRGHCLDl3rB980iLThCDVwL5lVLpaB43pk+0GVJF3k288mJ1U20mPoZqwc0hV8C0Q5oDMKHw==";
       };
     };
-    "@joplin/lib-1.0.18" = {
+    "@joplin/lib-1.8.2" = {
       name = "_at_joplin_slash_lib";
       packageName = "@joplin/lib";
-      version = "1.0.18";
+      version = "1.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/lib/-/lib-1.0.18.tgz";
-        sha512 = "r0Z+bolszlPUsanaQIUk/tog3jHw0rGtUxXTHDMtycFWkWYVpjlT3bvxiYrV5MwLjyn/xnfUCIdHeUi/Lz3LPQ==";
+        url = "https://registry.npmjs.org/@joplin/lib/-/lib-1.8.2.tgz";
+        sha512 = "e/uEdz3PbxQQ8XUT6y1HNSM3LdpMjTEJbY+61E7LwC1PguyvAuQgr3tLS0/5OS/PJ1FP4Jm7gU61OJ28g4i4wA==";
       };
     };
-    "@joplin/renderer-1.0.26" = {
+    "@joplin/renderer-1.8.2" = {
       name = "_at_joplin_slash_renderer";
       packageName = "@joplin/renderer";
-      version = "1.0.26";
+      version = "1.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/renderer/-/renderer-1.0.26.tgz";
-        sha512 = "RDRYjuPCn1ltematEZQhgvZbIGBQ+2F3jgAdXpqByg71pmxrMZyOLLbNVYJyKK4w2Ecvmbpwuo0h9RbMb/56Ow==";
+        url = "https://registry.npmjs.org/@joplin/renderer/-/renderer-1.8.2.tgz";
+        sha512 = "Khl2DoM1aFEy15RX9JaMaYinjoNEYQHOgQqzMHq4wuWr+QuAQaX8/SofTe1FU2rS4SJrkObPA+XPavhVSAxpOQ==";
       };
     };
-    "@joplin/turndown-4.0.45" = {
+    "@joplin/turndown-4.0.48" = {
       name = "_at_joplin_slash_turndown";
       packageName = "@joplin/turndown";
-      version = "4.0.45";
+      version = "4.0.48";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/turndown/-/turndown-4.0.45.tgz";
-        sha512 = "u4J/ka4szy34ioQ5UVaCdLlfzfOxEQH/lDReHauYoNhH+H+EWt1qOwMh9A8fuTfoK2vnUUiPKHsWhOYCe+LRiw==";
+        url = "https://registry.npmjs.org/@joplin/turndown/-/turndown-4.0.48.tgz";
+        sha512 = "QJeys/bR9qtEdUs8EFfpwRTfu01+iGQ6GaW+gxQjgXttsmfV+NuoVWfz5/NCdZ+9hqF6DdE9tU45G4EX1diFJA==";
       };
     };
-    "@joplin/turndown-plugin-gfm-1.0.27" = {
+    "@joplin/turndown-plugin-gfm-1.0.30" = {
       name = "_at_joplin_slash_turndown-plugin-gfm";
       packageName = "@joplin/turndown-plugin-gfm";
-      version = "1.0.27";
+      version = "1.0.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@joplin/turndown-plugin-gfm/-/turndown-plugin-gfm-1.0.27.tgz";
-        sha512 = "4BPgTSkhvxPI3tbjG4BPiBq0VuNZji1Y77DRWHb09GnzsrgwBI+gpo3EI6obkyIeRuN/03wzf98W5u1iau2vpQ==";
+        url = "https://registry.npmjs.org/@joplin/turndown-plugin-gfm/-/turndown-plugin-gfm-1.0.30.tgz";
+        sha512 = "81syBeLWxduhIM+gZSdM9OGOBL5XXFSMymwfWSFTzS8svYx/I95TPwq0oERcIz6rZkeqf6C9Q52iY30GvKEOog==";
       };
     };
-    "@josephg/resolvable-1.0.0" = {
+    "@josephg/resolvable-1.0.1" = {
       name = "_at_josephg_slash_resolvable";
       packageName = "@josephg/resolvable";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.0.tgz";
-        sha512 = "OfTtjoqB2doov5aTJxkyAMK8dXoo7CjCUQSYUEtiY34jbWduOGV7+168tmCT8COMsUEd5DMSFg/0iAOPCBTNAQ==";
+        url = "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz";
+        sha512 = "CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg==";
       };
     };
     "@jsdevtools/ono-7.1.3" = {
@@ -3109,13 +3190,13 @@ let
         sha512 = "4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==";
       };
     };
-    "@jsii/spec-1.28.0" = {
+    "@jsii/spec-1.30.0" = {
       name = "_at_jsii_slash_spec";
       packageName = "@jsii/spec";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.28.0.tgz";
-        sha512 = "5mcupuCCXyhZwNmX/RDBn3WUYtd0oPXEDa3E+qOSjT30vaO8u9ZQ+mxwl4qsecx3m51LhXKnR1C9U9t4VlAmqA==";
+        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.30.0.tgz";
+        sha512 = "oXIwvZyHHc/TrwA/3pzQ3gkqBe916EWBvaexNI3rnKZujlHZT4vVVHMCjQ/kUJhcR0GEaahvwlNhiPTu6roC2g==";
       };
     };
     "@kwsites/file-exists-1.1.1" = {
@@ -3676,6 +3757,15 @@ let
         sha512 = "RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==";
       };
     };
+    "@mapbox/node-pre-gyp-1.0.5" = {
+      name = "_at_mapbox_slash_node-pre-gyp";
+      packageName = "@mapbox/node-pre-gyp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz";
+        sha512 = "4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==";
+      };
+    };
     "@mark.probst/typescript-json-schema-0.32.0" = {
       name = "_at_mark.probst_slash_typescript-json-schema";
       packageName = "@mark.probst/typescript-json-schema";
@@ -3694,13 +3784,13 @@ let
         sha512 = "7AQsO0hMmpqDledV7AhBuSYqYPFsKP9PaltMecX9nlnsyFxqtsqUg9/pvB2L/jxvskrDrNkdKYz2KTbQznCtng==";
       };
     };
-    "@mdn/browser-compat-data-3.1.3" = {
+    "@mdn/browser-compat-data-3.2.4" = {
       name = "_at_mdn_slash_browser-compat-data";
       packageName = "@mdn/browser-compat-data";
-      version = "3.1.3";
+      version = "3.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.1.3.tgz";
-        sha512 = "Qdqeox4APsYwAQQSO68D1p75DL9an1wS8b/51m+nH98unN4jbS5bvg22WQrg+TMq2/3Mg/E5zprqfUzJD84qgw==";
+        url = "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.2.4.tgz";
+        sha512 = "jEUurwoeiHOB7SceVnsg3ULxNlf9XxqMfcKNM+eJduPgCcoCnbLi/6og+e764fTAZCcBkqGcWUMhLQXwcqpbJQ==";
       };
     };
     "@mdx-js/util-2.0.0-next.8" = {
@@ -3721,13 +3811,22 @@ let
         sha512 = "/NdX1Ql8hKNM0vHFJnEr/bcw6BG0ULHD3HhInpniZw5ixpl+n/QIRfMEEmLCn7acedbM1zGdZvU5ZMbn9kcF5Q==";
       };
     };
-    "@microsoft/load-themed-styles-1.10.161" = {
+    "@microsoft/fetch-event-source-2.0.1" = {
+      name = "_at_microsoft_slash_fetch-event-source";
+      packageName = "@microsoft/fetch-event-source";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@microsoft/fetch-event-source/-/fetch-event-source-2.0.1.tgz";
+        sha512 = "W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==";
+      };
+    };
+    "@microsoft/load-themed-styles-1.10.174" = {
       name = "_at_microsoft_slash_load-themed-styles";
       packageName = "@microsoft/load-themed-styles";
-      version = "1.10.161";
+      version = "1.10.174";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.161.tgz";
-        sha512 = "ReHtvRknb3iYVUPl4c2PDEUWp18Jzh5x5MQE9zqHtSvYzpG6TGCWaqVBHKablshELqHv0dMf69929RB6VXiqyA==";
+        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.174.tgz";
+        sha512 = "O0ERVgeTrpzCzCLHOTZZDSg0K3FKdWRdBpFjs+X5wS21Jg21QqrA4T9FhCheilEcrF4Qmf41gBtgZ/16JNSWIA==";
       };
     };
     "@mitmaro/errors-1.0.0" = {
@@ -3793,13 +3892,13 @@ let
         sha512 = "b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==";
       };
     };
-    "@netlify/build-11.1.0" = {
+    "@netlify/build-11.29.2" = {
       name = "_at_netlify_slash_build";
       packageName = "@netlify/build";
-      version = "11.1.0";
+      version = "11.29.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/build/-/build-11.1.0.tgz";
-        sha512 = "544/wWXcFtiOb+XmTUqsn3OFxd/vyeggd2uM8t/V9mWg1PuP5UG4AqubnKglzxiwEHa7KGym8fQCq4HChTtLow==";
+        url = "https://registry.npmjs.org/@netlify/build/-/build-11.29.2.tgz";
+        sha512 = "fxVBpKjsTdcRkfj9RdMBVxy/TABQJhkf5/vFwzNZqnnBwes/Em6YFutNpML6zm5Ub9hpvE0HaceyOU4HkvjSFg==";
       };
     };
     "@netlify/cache-utils-1.0.7" = {
@@ -3811,67 +3910,67 @@ let
         sha512 = "yrdrnQkzg/qMovoFYwQ24UVt/OyHtP+t0KpQFd7eBl6gnuuGGgxFocaFFv6eKpMVwzHTsOwx/y9B/FcC3/6cfA==";
       };
     };
-    "@netlify/config-6.0.1" = {
+    "@netlify/config-6.7.1" = {
       name = "_at_netlify_slash_config";
       packageName = "@netlify/config";
-      version = "6.0.1";
+      version = "6.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/config/-/config-6.0.1.tgz";
-        sha512 = "rytv9UUW0QkBqwd0OkNF9SyEZLbGIbLmSms6h2Ob6pGiMUQd1wUwuX0PyS3ueIF/ZFB3PVKE8gUHNBC4wxyUrg==";
+        url = "https://registry.npmjs.org/@netlify/config/-/config-6.7.1.tgz";
+        sha512 = "4DyiSauSFaorJ46l4tBu+nbvPKY9i1gOQvw9L4yql7gd7qqJsHJi2zivdJ50+MPedQn0cgcs5lk303UBEfFsBQ==";
       };
     };
-    "@netlify/framework-info-3.3.0" = {
+    "@netlify/framework-info-5.1.2" = {
       name = "_at_netlify_slash_framework-info";
       packageName = "@netlify/framework-info";
-      version = "3.3.0";
+      version = "5.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/framework-info/-/framework-info-3.3.0.tgz";
-        sha512 = "oWlP+sWfnr0tXSqd3nfma9Abq1NvZc4lFbHPMvxU6UhAcrBOpizsMaVT9sUK0UcMwzR8xwESdskZajtFoHA28g==";
+        url = "https://registry.npmjs.org/@netlify/framework-info/-/framework-info-5.1.2.tgz";
+        sha512 = "v3Fs9REofVNMgye8j1c0NBfVRA+P+2cS50Y1RRwrlVz344UUwZd7b0LKhZl0EkQadsdyxG2a3XgjxF5Zb3jJ0Q==";
       };
     };
-    "@netlify/functions-utils-1.3.25" = {
+    "@netlify/functions-utils-1.3.37" = {
       name = "_at_netlify_slash_functions-utils";
       packageName = "@netlify/functions-utils";
-      version = "1.3.25";
+      version = "1.3.37";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/functions-utils/-/functions-utils-1.3.25.tgz";
-        sha512 = "iCGVHlj6XNqOIQxREDbhfWEs8RBLGpXLrZKNHisG8PnJvRmnlS+EyVb1on2yV7+nvMqoqssNUeDY6tvQmwuPng==";
+        url = "https://registry.npmjs.org/@netlify/functions-utils/-/functions-utils-1.3.37.tgz";
+        sha512 = "Lq1Aj3N2vWB3nNFRbEHgVjB+MpwCsZz+rUOCki3h5PwEUwnGFyFi2VcdHQ2FJtzF7vrcm5NoMfg4pG8iY91YGA==";
       };
     };
-    "@netlify/git-utils-1.0.8" = {
+    "@netlify/git-utils-1.0.11" = {
       name = "_at_netlify_slash_git-utils";
       packageName = "@netlify/git-utils";
-      version = "1.0.8";
+      version = "1.0.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/git-utils/-/git-utils-1.0.8.tgz";
-        sha512 = "YWK2H6qjBmspTIibE/ai8YTsSnqROtubqWUuXz/RoQXYf03KWx/F9BFRm1S/TOoQM9v4fozRhVeHyH45Ki0ztA==";
+        url = "https://registry.npmjs.org/@netlify/git-utils/-/git-utils-1.0.11.tgz";
+        sha512 = "bvlvFAB9VU3wTYYEEUinsOeRFxZ/MmetffzHehSMEyP00kXakvrySq4XbC6G8u3wCDln34eOjKDt8uPYoqfuNQ==";
       };
     };
-    "@netlify/open-api-1.3.0" = {
+    "@netlify/open-api-2.4.0" = {
       name = "_at_netlify_slash_open-api";
       packageName = "@netlify/open-api";
-      version = "1.3.0";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/open-api/-/open-api-1.3.0.tgz";
-        sha512 = "GcCPXIWI8VDBsLN4nPvb6sKS9tbi4lrHLhex90hT27nwTDeu4HgGE93YilcsgZ1LLODJNxC5LdfTNLtvEHMKVg==";
+        url = "https://registry.npmjs.org/@netlify/open-api/-/open-api-2.4.0.tgz";
+        sha512 = "ffNpGiJulY4is1pWkrs1dn3/ytNoqJxyAD/N70cnkIVNpOWMnPGSPKGBk/TBpaZhispgSBBQ+JZXEMJAGMDZ6Q==";
       };
     };
-    "@netlify/plugin-edge-handlers-1.11.6" = {
+    "@netlify/plugin-edge-handlers-1.11.13" = {
       name = "_at_netlify_slash_plugin-edge-handlers";
       packageName = "@netlify/plugin-edge-handlers";
-      version = "1.11.6";
+      version = "1.11.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/plugin-edge-handlers/-/plugin-edge-handlers-1.11.6.tgz";
-        sha512 = "7L5pkXlwPfyUrmm9cu2+nOQYW1FMx6waMbl2Uj5SmxjLz5Dvt2zkUYbNU2ImNmJ10mxziv3LABSFn2k2qy2nLw==";
+        url = "https://registry.npmjs.org/@netlify/plugin-edge-handlers/-/plugin-edge-handlers-1.11.13.tgz";
+        sha512 = "GPSg5bYlU2hgmt1MGx22+ZoXbPdnEiqkdj40hWxJjHuDIGqfvFa3nGup7BvHBNfd1uI+OVSlLXzabWl6aVjQIg==";
       };
     };
-    "@netlify/plugins-list-2.6.0" = {
+    "@netlify/plugins-list-2.14.2" = {
       name = "_at_netlify_slash_plugins-list";
       packageName = "@netlify/plugins-list";
-      version = "2.6.0";
+      version = "2.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-2.6.0.tgz";
-        sha512 = "XtBrsd4M0OW3RT9O7omqBhWevPoxVfkEX9BJ2Hv5J3gpujTN6IZEYmyprxhQ+Y98r4VvZVUX8dPzR99aF15YcQ==";
+        url = "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-2.14.2.tgz";
+        sha512 = "WbLQ0X1cnryXzWeV03dA3BHw0CEPDTrj3IvjbeOB45A5/dxvTgQVjAeFbmqgRj6A8GPHgSLoNN0kteoXBojHhw==";
       };
     };
     "@netlify/run-utils-1.0.7" = {
@@ -3919,67 +4018,67 @@ let
         sha512 = "ea6S9ik5X0TlA2e+jXk5D7lfvArPZjyQoIBEo7G1Tjw/vUU5Fx6KLfXv1iy7eJy+ENTLoyidscAjJ2wXlHI47g==";
       };
     };
-    "@netlify/zip-it-and-ship-it-3.4.0" = {
+    "@netlify/zip-it-and-ship-it-4.2.5" = {
       name = "_at_netlify_slash_zip-it-and-ship-it";
       packageName = "@netlify/zip-it-and-ship-it";
-      version = "3.4.0";
+      version = "4.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/zip-it-and-ship-it/-/zip-it-and-ship-it-3.4.0.tgz";
-        sha512 = "/wHeHVcpVyo8nD93VdmluSJeipQrTt4mXp08krqQbPZPgA2HyupyYT4ZgjWKCh00Mrh2/k1XRbbxJYRc70lzkw==";
+        url = "https://registry.npmjs.org/@netlify/zip-it-and-ship-it/-/zip-it-and-ship-it-4.2.5.tgz";
+        sha512 = "2ncCQEs49I8Ir30w2T3E1yogJp9cw+X8vfvL9a8i1AA0VE51F2rfhNsLbceWrEWn2T3TgogOMQP/0Qsxw2v0Tg==";
       };
     };
-    "@node-red/editor-api-1.3.2" = {
+    "@node-red/editor-api-1.3.5" = {
       name = "_at_node-red_slash_editor-api";
       packageName = "@node-red/editor-api";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/editor-api/-/editor-api-1.3.2.tgz";
-        sha512 = "meAJ4n9amAWxoWe5/rdigd8Wa0OKpwaNIn9Vqp+xqV4BqFa9RRe3ttO9FRUOuBeHwplDsMiWNnEVEdE9NCWlig==";
+        url = "https://registry.npmjs.org/@node-red/editor-api/-/editor-api-1.3.5.tgz";
+        sha512 = "IJyfyVhEvkf2YNRPoR+1SPSi76evVV/boAKhOeVoIMBBeuYd1wM1ihMM3rnNWDYXjN/7CbTKz2DVmdMQ5aCIeQ==";
       };
     };
-    "@node-red/editor-client-1.3.2" = {
+    "@node-red/editor-client-1.3.5" = {
       name = "_at_node-red_slash_editor-client";
       packageName = "@node-red/editor-client";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/editor-client/-/editor-client-1.3.2.tgz";
-        sha512 = "9YGb7PeLUmr7bMZYOn08euTOZzy+wIAqTo8R288sjbqLke0NKnFWhZsgl01pqPXv7rNjiyZpxTpU1uZLH49gDg==";
+        url = "https://registry.npmjs.org/@node-red/editor-client/-/editor-client-1.3.5.tgz";
+        sha512 = "B/JB7KuSeTHkiwzrQtCgmkUfHN5nP2htUoE4wkTt118IA/1xUWXEtl+WnT5aDLiFUyFI21q9Fl4BnDOa7JqLEw==";
       };
     };
-    "@node-red/nodes-1.3.2" = {
+    "@node-red/nodes-1.3.5" = {
       name = "_at_node-red_slash_nodes";
       packageName = "@node-red/nodes";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/nodes/-/nodes-1.3.2.tgz";
-        sha512 = "NAblXeu0/tdVu8lU/gpMDVbclqkbiRGUcUforJSGeTiXod2wk4brGtLjEhAN1ouehUaIGXwiF0QN+KgfXnHg2Q==";
+        url = "https://registry.npmjs.org/@node-red/nodes/-/nodes-1.3.5.tgz";
+        sha512 = "kLZOn8YDiDemJ/ufx0eagpmPPbUzLifgvoF1fHq9Jzf+K/xWtzDLHqNyLM6VSzo6QlCAnS939dU9kDb5G3fs3Q==";
       };
     };
-    "@node-red/registry-1.3.2" = {
+    "@node-red/registry-1.3.5" = {
       name = "_at_node-red_slash_registry";
       packageName = "@node-red/registry";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/registry/-/registry-1.3.2.tgz";
-        sha512 = "VB0em51luT17rhTa7tkOXHOQbuEBczUEI2goJaSQSv5c032yPvzh4KyAf3Xa7sDafENg33wfSZfePx2tGrdg+w==";
+        url = "https://registry.npmjs.org/@node-red/registry/-/registry-1.3.5.tgz";
+        sha512 = "wy74xMnD87v/oB5P/HnUiJ6kTgdcCTgIJadeRBh0DSwcMjG3MhSxe8QCk3U9BxLH1fxw0IwxWbNgGwzuM8EOdw==";
       };
     };
-    "@node-red/runtime-1.3.2" = {
+    "@node-red/runtime-1.3.5" = {
       name = "_at_node-red_slash_runtime";
       packageName = "@node-red/runtime";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/runtime/-/runtime-1.3.2.tgz";
-        sha512 = "HMrHfkH4wklp0tI3SjZR6Yzdf/swPg7FsYjzikv8HV/KBHV/Oe73gtE8CqXkP+rqUfhqdQC/X97Tq8vD6bC4WQ==";
+        url = "https://registry.npmjs.org/@node-red/runtime/-/runtime-1.3.5.tgz";
+        sha512 = "4Cz83wX9trvhhPxFkF5HfYzqYQEcVOYf4f1lSDHP2xYowE22+x4BTCs8gZA4hCI4kbon3eyaU5NrzlrKd+nZbQ==";
       };
     };
-    "@node-red/util-1.3.2" = {
+    "@node-red/util-1.3.5" = {
       name = "_at_node-red_slash_util";
       packageName = "@node-red/util";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/util/-/util-1.3.2.tgz";
-        sha512 = "AHrUP2mYTmy40Q0gP1X4GSwuJ1xWCgUL0RlEA843HpdTi7Gl6WB8xnJvcGFqptiuHiqE6mUFNrRMLmotctZqWg==";
+        url = "https://registry.npmjs.org/@node-red/util/-/util-1.3.5.tgz";
+        sha512 = "1TTvTwvGMSe9SQMEKN5zGdyGMv8Kth49eiUcdPnUWigtafk1BE9iP7gVSyLVYgijzCwh40GUkSYey0TUaSbRBw==";
       };
     };
     "@nodelib/fs.scandir-2.1.4" = {
@@ -4018,6 +4117,15 @@ let
         sha512 = "8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==";
       };
     };
+    "@npmcli/arborist-2.6.1" = {
+      name = "_at_npmcli_slash_arborist";
+      packageName = "@npmcli/arborist";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.6.1.tgz";
+        sha512 = "OOlntFIOAo7RplEQaYXlA5U5NXE+EwZtnTCsit4Wtme5+llGiea6GBytuV8dOzdPMPlNx3fQQjBUE9E8k76yjQ==";
+      };
+    };
     "@npmcli/ci-detect-1.3.0" = {
       name = "_at_npmcli_slash_ci-detect";
       packageName = "@npmcli/ci-detect";
@@ -4027,13 +4135,13 @@ let
         sha512 = "oN3y7FAROHhrAt7Rr7PnTSwrHrZVRTS2ZbyxeQwSSYD0ifwM3YNgQqbaRmjcWoPyq77MjchusjJDspbzMmip1Q==";
       };
     };
-    "@npmcli/git-2.0.8" = {
+    "@npmcli/git-2.0.9" = {
       name = "_at_npmcli_slash_git";
       packageName = "@npmcli/git";
-      version = "2.0.8";
+      version = "2.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@npmcli/git/-/git-2.0.8.tgz";
-        sha512 = "LPnzyBZ+1p7+JzHVwwKycMF8M3lr1ze3wxGRnxn/QxJtk++Y3prSJQrdBDGCxJyRpFsup6J3lrRBVYBhJVrM8Q==";
+        url = "https://registry.npmjs.org/@npmcli/git/-/git-2.0.9.tgz";
+        sha512 = "hTMbMryvOqGLwnmMBKs5usbPsJtyEsMsgXwJbmNrsEuQQh1LAIMDU77IoOrwkCg+NgQWl+ySlarJASwM3SutCA==";
       };
     };
     "@npmcli/installed-package-contents-1.0.7" = {
@@ -4045,6 +4153,24 @@ let
         sha512 = "9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==";
       };
     };
+    "@npmcli/map-workspaces-1.0.3" = {
+      name = "_at_npmcli_slash_map-workspaces";
+      packageName = "@npmcli/map-workspaces";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-1.0.3.tgz";
+        sha512 = "SdlRlOoQw4WKD4vtb/n5gUkobEABYBEOo8fRE4L8CtBkyWDSvIrReTfKvQ/Jc/LQqDaaZ5iv1iMSQzKCUr1n1A==";
+      };
+    };
+    "@npmcli/metavuln-calculator-1.1.1" = {
+      name = "_at_npmcli_slash_metavuln-calculator";
+      packageName = "@npmcli/metavuln-calculator";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-1.1.1.tgz";
+        sha512 = "9xe+ZZ1iGVaUovBVFI9h3qW+UuECUzhvZPxK9RaEA2mjU26o5D0JloGYWwLYvQELJNmBdQB6rrpuN8jni6LwzQ==";
+      };
+    };
     "@npmcli/move-file-1.1.2" = {
       name = "_at_npmcli_slash_move-file";
       packageName = "@npmcli/move-file";
@@ -4054,6 +4180,15 @@ let
         sha512 = "1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==";
       };
     };
+    "@npmcli/name-from-folder-1.0.1" = {
+      name = "_at_npmcli_slash_name-from-folder";
+      packageName = "@npmcli/name-from-folder";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz";
+        sha512 = "qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA==";
+      };
+    };
     "@npmcli/node-gyp-1.0.2" = {
       name = "_at_npmcli_slash_node-gyp";
       packageName = "@npmcli/node-gyp";
@@ -4072,13 +4207,13 @@ let
         sha512 = "QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==";
       };
     };
-    "@npmcli/run-script-1.8.4" = {
+    "@npmcli/run-script-1.8.5" = {
       name = "_at_npmcli_slash_run-script";
       packageName = "@npmcli/run-script";
-      version = "1.8.4";
+      version = "1.8.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.4.tgz";
-        sha512 = "Yd9HXTtF1JGDXZw0+SOn+mWLYS0e7bHBHVC/2C8yqs4wUrs/k8rwBSinD7rfk+3WG/MFGRZKxjyoD34Pch2E/A==";
+        url = "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.5.tgz";
+        sha512 = "NQspusBCpTjNwNRFMtz2C5MxoxyzlbuJ4YEhxAKrIonTiirKDtatsZictx9RgamQIx6+QuHMNmPl0wQdoESs9A==";
       };
     };
     "@oclif/color-0.1.2" = {
@@ -4153,15 +4288,6 @@ let
         sha512 = "tuzhvxxRtfLnWa96klngXBi5IwHt9S/twedCbQhl9dYIKTFMHI1BcOQcPra6ylct+M+b9jhEF5sjWLv78tB6tw==";
       };
     };
-    "@oclif/plugin-help-2.2.3" = {
-      name = "_at_oclif_slash_plugin-help";
-      packageName = "@oclif/plugin-help";
-      version = "2.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-2.2.3.tgz";
-        sha512 = "bGHUdo5e7DjPJ0vTeRBMIrfqTRDBfyR5w0MP41u0n3r7YG5p14lvMmiCXxi6WDaP2Hw5nqx3PnkAIntCKZZN7g==";
-      };
-    };
     "@oclif/plugin-help-3.2.2" = {
       name = "_at_oclif_slash_plugin-help";
       packageName = "@oclif/plugin-help";
@@ -4234,22 +4360,22 @@ let
         sha512 = "fUIPpx+pZyoLW4GCs3yMnlj2LfoXTWDUVPTC4V3MUEKZm48W+XYpeWSZCv+vYF1ZABUm2CqnDVf1sFtIYrj7KQ==";
       };
     };
-    "@octokit/graphql-4.6.1" = {
+    "@octokit/graphql-4.6.2" = {
       name = "_at_octokit_slash_graphql";
       packageName = "@octokit/graphql";
-      version = "4.6.1";
+      version = "4.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.6.1.tgz";
-        sha512 = "2lYlvf4YTDgZCTXTW4+OX+9WTLFtEUc6hGm4qM1nlZjzxj+arizM4aHWzBVBCxY9glh7GIs0WEuiSgbVzv8cmA==";
+        url = "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.6.2.tgz";
+        sha512 = "WmsIR1OzOr/3IqfG9JIczI8gMJUMzzyx5j0XXQ4YihHtKlQc+u35VpVoOXhlKAlaBntvry1WpAzPl/a+s3n89Q==";
       };
     };
-    "@octokit/openapi-types-6.0.0" = {
+    "@octokit/openapi-types-7.2.3" = {
       name = "_at_octokit_slash_openapi-types";
       packageName = "@octokit/openapi-types";
-      version = "6.0.0";
+      version = "7.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-6.0.0.tgz";
-        sha512 = "CnDdK7ivHkBtJYzWzZm7gEkanA7gKH6a09Eguz7flHw//GacPJLmkHA3f3N++MJmlxD1Fl+mB7B32EEpSCwztQ==";
+        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.2.3.tgz";
+        sha512 = "V1ycxkR19jqbIl3evf2RQiMRBvTNRi+Iy9h20G5OP5dPfEF6GJ1DPlUeiZRxo2HJxRr+UA4i0H1nn4btBDPFrw==";
       };
     };
     "@octokit/plugin-enterprise-rest-6.0.1" = {
@@ -4261,15 +4387,6 @@ let
         sha512 = "93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==";
       };
     };
-    "@octokit/plugin-paginate-rest-1.1.2" = {
-      name = "_at_octokit_slash_plugin-paginate-rest";
-      packageName = "@octokit/plugin-paginate-rest";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz";
-        sha512 = "jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==";
-      };
-    };
     "@octokit/plugin-paginate-rest-2.13.3" = {
       name = "_at_octokit_slash_plugin-paginate-rest";
       packageName = "@octokit/plugin-paginate-rest";
@@ -4288,22 +4405,13 @@ let
         sha512 = "4RFU4li238jMJAzLgAwkBAw+4Loile5haQMQr+uhFq27BmyJXcXSKvoQKqh0agsZEiUlW6iSv3FAgvmGkur7OQ==";
       };
     };
-    "@octokit/plugin-rest-endpoint-methods-2.4.0" = {
+    "@octokit/plugin-rest-endpoint-methods-5.3.1" = {
       name = "_at_octokit_slash_plugin-rest-endpoint-methods";
       packageName = "@octokit/plugin-rest-endpoint-methods";
-      version = "2.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz";
-        sha512 = "EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==";
-      };
-    };
-    "@octokit/plugin-rest-endpoint-methods-5.0.0" = {
-      name = "_at_octokit_slash_plugin-rest-endpoint-methods";
-      packageName = "@octokit/plugin-rest-endpoint-methods";
-      version = "5.0.0";
+      version = "5.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.0.0.tgz";
-        sha512 = "Jc7CLNUueIshXT+HWt6T+M0sySPjF32mSFQAK7UfAg8qGeRI6OM1GSBxDLwbXjkqy2NVdnqCedJcP1nC785JYg==";
+        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.3.1.tgz";
+        sha512 = "3B2iguGmkh6bQQaVOtCsS0gixrz8Lg0v4JuXPqBcFqLKuJtxAUf3K88RxMEf/naDOI73spD+goJ/o7Ie7Cvdjg==";
       };
     };
     "@octokit/request-5.4.15" = {
@@ -4315,15 +4423,6 @@ let
         sha512 = "6UnZfZzLwNhdLRreOtTkT9n57ZwulCve8q3IT/Z477vThu6snfdkBuhxnChpOKNGxcQ71ow561Qoa6uqLdPtag==";
       };
     };
-    "@octokit/request-error-1.2.1" = {
-      name = "_at_octokit_slash_request-error";
-      packageName = "@octokit/request-error";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz";
-        sha512 = "+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==";
-      };
-    };
     "@octokit/request-error-2.0.5" = {
       name = "_at_octokit_slash_request-error";
       packageName = "@octokit/request-error";
@@ -4333,40 +4432,22 @@ let
         sha512 = "T/2wcCFyM7SkXzNoyVNWjyVlUwBvW3igM3Btr/eKYiPmucXTtkxt2RBsf6gn3LTzaLSLTQtNmvg+dGsOxQrjZg==";
       };
     };
-    "@octokit/rest-16.43.2" = {
+    "@octokit/rest-18.5.5" = {
       name = "_at_octokit_slash_rest";
       packageName = "@octokit/rest";
-      version = "16.43.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.43.2.tgz";
-        sha512 = "ngDBevLbBTFfrHZeiS7SAMAZ6ssuVmXuya+F/7RaVvlysgGa1JKJkKWY+jV6TCJYcW0OALfJ7nTIGXcBXzycfQ==";
-      };
-    };
-    "@octokit/rest-18.5.2" = {
-      name = "_at_octokit_slash_rest";
-      packageName = "@octokit/rest";
-      version = "18.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.2.tgz";
-        sha512 = "Kz03XYfKS0yYdi61BkL9/aJ0pP2A/WK5vF/syhu9/kY30J8He3P68hv9GRpn8bULFx2K0A9MEErn4v3QEdbZcw==";
-      };
-    };
-    "@octokit/types-2.16.2" = {
-      name = "_at_octokit_slash_types";
-      packageName = "@octokit/types";
-      version = "2.16.2";
+      version = "18.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/types/-/types-2.16.2.tgz";
-        sha512 = "O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q==";
+        url = "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.5.tgz";
+        sha512 = "Py9sWvxBGeAwNY8UnhxP6jnq7aflvQ0uQ6gmZObyJLR9hmd5NEz9piu/A77cxV6+0l9UNACJVXX6FOnl5LIcPw==";
       };
     };
-    "@octokit/types-6.13.0" = {
+    "@octokit/types-6.16.2" = {
       name = "_at_octokit_slash_types";
       packageName = "@octokit/types";
-      version = "6.13.0";
+      version = "6.16.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/types/-/types-6.13.0.tgz";
-        sha512 = "W2J9qlVIU11jMwKHUp5/rbVUeErqelCsO5vW5PKNb7wAXQVUz87Rc+imjlEvpvbH8yUb+KHmv8NEjVZdsdpyxA==";
+        url = "https://registry.npmjs.org/@octokit/types/-/types-6.16.2.tgz";
+        sha512 = "wWPSynU4oLy3i4KGyk+J1BLwRKyoeW2TwRHgwbDz17WtVFzSK2GOErGliruIx8c+MaYtHSYTx36DSmLNoNbtgA==";
       };
     };
     "@open-policy-agent/opa-wasm-1.2.0" = {
@@ -4423,310 +4504,310 @@ let
         sha512 = "+0P+PrP9qSFVaayNdek4P1OAGE+PEl2SsufuHDRmUpOY25Wzjo7Atyar56Trjc32jkNy4lID6ZFT6BahsR9P9A==";
       };
     };
-    "@ot-builder/bin-composite-types-1.0.4" = {
+    "@ot-builder/bin-composite-types-1.0.8" = {
       name = "_at_ot-builder_slash_bin-composite-types";
       packageName = "@ot-builder/bin-composite-types";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.0.4.tgz";
-        sha512 = "mza6bLi18CosKPWDxbK+4BZqfzWRSVoiXmW9Z+UN/YvqRmUJD+Dc5C+t1M9KgtLAwKjsNSLPSqbPeOJwcBxQnw==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.0.8.tgz";
+        sha512 = "YVSC2OhhBYx4nTELZrS/DKbdseDhCIlyMiey4Zgc6VKQgC33ZXaGB9gUnAT/CHuGJINQJoKtsgyRA3nkd+2QJw==";
       };
     };
-    "@ot-builder/bin-util-1.0.4" = {
+    "@ot-builder/bin-util-1.0.8" = {
       name = "_at_ot-builder_slash_bin-util";
       packageName = "@ot-builder/bin-util";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.0.4.tgz";
-        sha512 = "MKlDHSyKNV8WKWLa9pL8pw1OIJ3lWO8zOjnYM/Had3RgqJMDtk98j1eYuB8VrX8Hbq3ur9NQ7Ycq+xDaGGjiyA==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.0.8.tgz";
+        sha512 = "GkyOMuUD3AQGCguvyaAgraEc7DMsKAHoujFPSUN76h6C9LUYGmayCDsbHjZoInkb90+m2OXcZ9hqSCIThZ6dcA==";
       };
     };
-    "@ot-builder/cli-help-shower-1.0.4" = {
+    "@ot-builder/cli-help-shower-1.0.8" = {
       name = "_at_ot-builder_slash_cli-help-shower";
       packageName = "@ot-builder/cli-help-shower";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.0.4.tgz";
-        sha512 = "Yz27agTVcxA4jblNqaiy6ULcx49c2CxIhOZdbL90d95d0ehDDiODeUuH2FlGcHE//KTUIOYGmM4KkOIE4iRVzQ==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.0.8.tgz";
+        sha512 = "MXbzoFtpSbU9eQozzynlEPRjUBDbtDq187SylpYIeV7FARfkaKd7f8M6FDH+gqeNMeAUcivnMYifAC+nz8bWOA==";
       };
     };
-    "@ot-builder/cli-proc-1.0.4" = {
+    "@ot-builder/cli-proc-1.0.8" = {
       name = "_at_ot-builder_slash_cli-proc";
       packageName = "@ot-builder/cli-proc";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.0.4.tgz";
-        sha512 = "6J2QTTHd4CkJqmwyooYZpAc6czWo4O+Fp+7SRGcFPrR2PdvprafxPv+vFkonnLLuRtiZguEt6LjCgkYK3oReoA==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.0.8.tgz";
+        sha512 = "kOGCHlc7cSI8J24gCRHXNbl4IvsjdorRUX9L3HtDDH9pVpHqVrlb3X2opcNVtPo0kYbKidANEGf76c/WRi0ERQ==";
       };
     };
-    "@ot-builder/cli-shared-1.0.4" = {
+    "@ot-builder/cli-shared-1.0.8" = {
       name = "_at_ot-builder_slash_cli-shared";
       packageName = "@ot-builder/cli-shared";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.0.4.tgz";
-        sha512 = "tmngc7PhETp+cwMWl7Jwxg90X9ArMdFNvAt2CMg/TPnz0wGV91PQaYdOLa8Z2spRAqg6CBsKv2P85UopeypImA==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.0.8.tgz";
+        sha512 = "B5c0RqrRkB8gb7h0+mX+JQAP6I8TtnLD8JiYRGMo+JszI2anh7ecD3XbVgMF0oJi8e5r5+p0xq8sDrJi4qy9SQ==";
       };
     };
-    "@ot-builder/common-impl-1.0.4" = {
+    "@ot-builder/common-impl-1.0.8" = {
       name = "_at_ot-builder_slash_common-impl";
       packageName = "@ot-builder/common-impl";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.0.4.tgz";
-        sha512 = "0yxLwOblp3AsyCtov7UQhAY+brguEVy8ilfpETOlkAmLSjruhsvjqjF8u7BkaBRQ4Uf13J2/15jQcAghMXLR3g==";
+        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.0.8.tgz";
+        sha512 = "ho7WtOf+MiMq6jjF6LbepqTTnyzEv6OeNTT1erkdWb52QETZnINYtbMks/HVPYHnGMZqy62dmN8f1PSe74yD0A==";
       };
     };
-    "@ot-builder/errors-1.0.4" = {
+    "@ot-builder/errors-1.0.8" = {
       name = "_at_ot-builder_slash_errors";
       packageName = "@ot-builder/errors";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.0.4.tgz";
-        sha512 = "xS7D4uP5Ri0lzcRbsfh6s3+g33zXHd/7NrQ5lg4paPksoEUmwGRooJTP+plSTLSaKQxd58d8V5SkYCXd3wf2AA==";
+        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.0.8.tgz";
+        sha512 = "I8XzcO4tg8rWKFTS3nHKvPOE27uGH8fZLy9HsqU4yw8rGMYUo1EDxabReQ8v53DhrIlpbObW3/nSrGF4LT6m8Q==";
       };
     };
-    "@ot-builder/io-bin-cff-1.0.4" = {
+    "@ot-builder/io-bin-cff-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-cff";
       packageName = "@ot-builder/io-bin-cff";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.0.4.tgz";
-        sha512 = "bUurjiAADRPRfzqb9eQK+AqpIfGCDFhJ+E+i+Ok29lfrkeE5RjnTu4Tsmvl7rcSJlawWLGG6ZWI4NT//TMDlEw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.0.8.tgz";
+        sha512 = "rHp9PFGeoblPwuCZd/i5l/CgNGv9hWEDQHZP11uQcO45H83iZugVxaT65ChBHoKDFp5x/+oxLSxp6kMu/7diZg==";
       };
     };
-    "@ot-builder/io-bin-encoding-1.0.4" = {
+    "@ot-builder/io-bin-encoding-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-encoding";
       packageName = "@ot-builder/io-bin-encoding";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.0.4.tgz";
-        sha512 = "QxrM/J3UTqHG5AtbR6VpbFeKo89Wj8jaGUUaZu0ifht81om9dfcuf/TVQ0D78eqeN7VqUXoP6uSYj4ECSo1uAg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.0.8.tgz";
+        sha512 = "bP7U7cr3fkdM3jYtW6fSgBfqjIcVKJu3iZfAOtcP0o+aID6FbETWGpxYrfGcJuvjcQLDPhc0pda1Ag/ypeTnvg==";
       };
     };
-    "@ot-builder/io-bin-ext-private-1.0.4" = {
+    "@ot-builder/io-bin-ext-private-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-ext-private";
       packageName = "@ot-builder/io-bin-ext-private";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.0.4.tgz";
-        sha512 = "c46Oa8LKEu8ULgCSYRCoToDA1LXuvb137TT6UugXJIl6JM53vMzbAQqFrMMlr5FY0RrItYumiS2YWQL8Vr9viw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.0.8.tgz";
+        sha512 = "RTCaiGvbO340gLHh2omj62v0ysOE+rEdcVuISiIb08fo0azLsi+MvzQdwprCOc1+8s5wY/peDCQ38HN/gYC7dA==";
       };
     };
-    "@ot-builder/io-bin-font-1.0.4" = {
+    "@ot-builder/io-bin-font-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-font";
       packageName = "@ot-builder/io-bin-font";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.0.4.tgz";
-        sha512 = "6gS5lEyAlz/DQi83roUap5buRDiublVwIqUJlvQ5qWF2hp9xQel6HoVHsdL4hfOhMBBqHBTgiM64cqeK+MV5KA==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.0.8.tgz";
+        sha512 = "6cL1cn7Qmzu1bsx4hr2aqKCMVu1+Si2xA8uGEVOryD94odjX76HJMta4bjH9P///PcQdIeJDczpk1s21LPg6Cw==";
       };
     };
-    "@ot-builder/io-bin-glyph-store-1.0.4" = {
+    "@ot-builder/io-bin-glyph-store-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-glyph-store";
       packageName = "@ot-builder/io-bin-glyph-store";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.0.4.tgz";
-        sha512 = "gAYsXuTzV9Xt87AI35tD0ZxLgF/20qgmITZXBW2fe8yR6lSzZX+zsU38w+2/6zW2UoYRyitck9Hikkw3TJ7VAw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.0.8.tgz";
+        sha512 = "vqr4pyK1oa3ADPUydKQgWZHKk1WAjO7hmMYARbqKzUCPHrqrr2dXJHMW8RNg+JhQykhG0ibHf6NdjHklBzTWIQ==";
       };
     };
-    "@ot-builder/io-bin-layout-1.0.4" = {
+    "@ot-builder/io-bin-layout-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-layout";
       packageName = "@ot-builder/io-bin-layout";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.0.4.tgz";
-        sha512 = "Iscx7nHRLeQHxVdlbb7nj+xTq3gZf6dftKT3EtjCBz9KtYYSqAkEi4Wq2UEBrkrlajz+z/ivvrwmv42hqOQTYw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.0.8.tgz";
+        sha512 = "0xrUl6WPQLpRwsVQXh1aBF28f7gJ0OR7N9xK5CZLsEku6R/uEGPSR0K9xlw8L+74J/ZWCX/WkbNgvvNUfyQLcw==";
       };
     };
-    "@ot-builder/io-bin-metadata-1.0.4" = {
+    "@ot-builder/io-bin-metadata-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-metadata";
       packageName = "@ot-builder/io-bin-metadata";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.0.4.tgz";
-        sha512 = "Hvd39Yut521rd09pI4zYQMeXTeOagiTEjDCE+3dzON6Prakb+tyA8E4M7itRY9dp+13kkLGDHF1CYZRLyAkb0g==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.0.8.tgz";
+        sha512 = "hgkeZy8JI5pgr3B0ayLDHxOxuIDRSnK/PRxZBydOCsArcW61N8cEPv/DzMKS3iNY0hpTUghZ7INLWC5+0KL63g==";
       };
     };
-    "@ot-builder/io-bin-metric-1.0.4" = {
+    "@ot-builder/io-bin-metric-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-metric";
       packageName = "@ot-builder/io-bin-metric";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.0.4.tgz";
-        sha512 = "wF6EtrR1g2uJz8f/bdAWTpcaaDFpPi52QcdW7gruw5mPx53H0wWZTaDT3S4MaJGtx0hxkQjELeJt2zN9VPjiwg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.0.8.tgz";
+        sha512 = "dKtTJ8AB1VWj/WYv9i+qhm6uKcwdC++MqQiaTLA7/eCnG9O2QjfTbOptYr6KI3+BKwe6/tbyzrqj7G5ZaVmtKA==";
       };
     };
-    "@ot-builder/io-bin-name-1.0.4" = {
+    "@ot-builder/io-bin-name-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-name";
       packageName = "@ot-builder/io-bin-name";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.0.4.tgz";
-        sha512 = "3mjxpyTVcffSiKLQqHdMwMNe9dyE/mCYexKi7LZkxLyXk/ZsYBOapZKld9jXmpF5KVXJO37FopoheTZGW44RHw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.0.8.tgz";
+        sha512 = "p93QSIEoBXtRyBEWI4KLuTTh3EtJTsoSeM7Ifopga7sCPDWFky5GeRqTq+Mvlk0cPiJtV24qdPdaIem5r5PBmg==";
       };
     };
-    "@ot-builder/io-bin-sfnt-1.0.4" = {
+    "@ot-builder/io-bin-sfnt-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-sfnt";
       packageName = "@ot-builder/io-bin-sfnt";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.0.4.tgz";
-        sha512 = "/24bZ7oXS3G4nOOxxapGmvq2bQF9E5k3zybsO9ettu2632ZYkLP2s4imwzTVfHk6dpikEgzhxwXCumdbTOnZjw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.0.8.tgz";
+        sha512 = "2yogXf3cdd6dI022HPU6lnzL10KU4DOOALkeg84qQCmse0WZdhZAKhdn08sqHIJ+EDjkfpRjHld0F96sKH8e0g==";
       };
     };
-    "@ot-builder/io-bin-ttf-1.0.4" = {
+    "@ot-builder/io-bin-ttf-1.0.8" = {
       name = "_at_ot-builder_slash_io-bin-ttf";
       packageName = "@ot-builder/io-bin-ttf";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.0.4.tgz";
-        sha512 = "ZtEDJYgS/Q/ag7Zw3/HbLJJtQJhgxtewmpUCXaPlIATxiZkwnmGJu4pTfzxr+ji2H/je2hBRZRPKLL9eKzyokg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.0.8.tgz";
+        sha512 = "TaX7s9UFyoyajgig7944DgWFmEzzcGjVGz3qz3olgAZcHhrgLoqIlmaxt1jEHgb7LZx3wG4G9WwcSl6arqMdAQ==";
       };
     };
-    "@ot-builder/ot-1.0.4" = {
+    "@ot-builder/ot-1.0.8" = {
       name = "_at_ot-builder_slash_ot";
       packageName = "@ot-builder/ot";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.0.4.tgz";
-        sha512 = "xwZJ0MEv9vsx4f/88a5ZwX5bsgEg6h5WLXxoCxAZwzTnzbIS0m2WYJ8OqBhJcBK5VZ56C13exFkvIS8l5lgVkg==";
+        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.0.8.tgz";
+        sha512 = "X2/4GcLGA1dTaR2+iHdhGn64cCLQJ9gZdoAVS3DZjMJIyyScFDVLAGhYHPLYk97EDQ5Pm7RnQNoY11U5igm28g==";
       };
     };
-    "@ot-builder/ot-encoding-1.0.4" = {
+    "@ot-builder/ot-encoding-1.0.8" = {
       name = "_at_ot-builder_slash_ot-encoding";
       packageName = "@ot-builder/ot-encoding";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.0.4.tgz";
-        sha512 = "7TPdtXtRaZ49j2Ho2+L54/eR728Pwvu+fvSqva8Ly7KzH1epyGm2NixgvaSqs/tRpwydnvvqp2odtCwTSzOAbA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.0.8.tgz";
+        sha512 = "dRmxL8WUfjZAjd8RcSmd3wI442Gzy9i4X7Ock2rj0ZwVxlfQB7F3dx71IVgvSRbrkz2Ny+7htW3eq+V0be+cmw==";
       };
     };
-    "@ot-builder/ot-ext-private-1.0.4" = {
+    "@ot-builder/ot-ext-private-1.0.8" = {
       name = "_at_ot-builder_slash_ot-ext-private";
       packageName = "@ot-builder/ot-ext-private";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.0.4.tgz";
-        sha512 = "eAu9kMaAGwgMxWYtl7XMpzEFlO5PLeuCxdIhR2QSG/JVSD6HpHMqxMUHM5qgP2o58PjkTUPiuEiTMvi5tMRWDg==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.0.8.tgz";
+        sha512 = "uloryF2vSRkIGHPqLN6FkAb1oZ6xkTR2w407PCgVYO9Pkq/j5d8ZHGM80VOYukfHFUdqskFyYcmojF/0WUA06A==";
       };
     };
-    "@ot-builder/ot-glyphs-1.0.4" = {
+    "@ot-builder/ot-glyphs-1.0.8" = {
       name = "_at_ot-builder_slash_ot-glyphs";
       packageName = "@ot-builder/ot-glyphs";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.0.4.tgz";
-        sha512 = "MWa871aCDPaA+2+tThDq7JdNLEeYQvO7yJOYmsKoA4pBxbGSE4PpI8FJL/NtRizShNxsjRmbYbnprm72NBiTOw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.0.8.tgz";
+        sha512 = "XP7pRUJPq/2dbDqzEAHWIFvwIdVK+BkZ/xPV75hGECEIquh7MpFKAXtLjRyFpVU+RRD0Xplmj/1P4W0047A4JQ==";
       };
     };
-    "@ot-builder/ot-layout-1.0.4" = {
+    "@ot-builder/ot-layout-1.0.8" = {
       name = "_at_ot-builder_slash_ot-layout";
       packageName = "@ot-builder/ot-layout";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.0.4.tgz";
-        sha512 = "Qxy7F/fX1fD4ZyCdPb7gFBhpeOA3d2G94HK32mlVlQPXcXOkXJOT4z0fvMraWch14a/eVr29IEDeOK/uhyYmug==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.0.8.tgz";
+        sha512 = "fRazZF4bTzyeYjFivbWim6/+dsWeGI6ZW6mCES5GmgidHzcFw2OrvDO1VYIKg5KSafjEZxe4QcMrF86bFkSDTg==";
       };
     };
-    "@ot-builder/ot-metadata-1.0.4" = {
+    "@ot-builder/ot-metadata-1.0.8" = {
       name = "_at_ot-builder_slash_ot-metadata";
       packageName = "@ot-builder/ot-metadata";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.0.4.tgz";
-        sha512 = "OZbrRtmSQte/OuL3pjUaIhD3Ono+W42hC7iQziLO0eP34uNeSEQNbNUNI6W3h8HuMSttbtJaLpJpDdmCPFi8sw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.0.8.tgz";
+        sha512 = "p0z1ywytkvDVUivKV9m8dE7jFztnBFvn/WIqXgpxaqhzXcDIc5mDl1hca/1DJU1ZAwdR03fifEsniCz+3Vaynw==";
       };
     };
-    "@ot-builder/ot-name-1.0.4" = {
+    "@ot-builder/ot-name-1.0.8" = {
       name = "_at_ot-builder_slash_ot-name";
       packageName = "@ot-builder/ot-name";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.0.4.tgz";
-        sha512 = "I4RU5F5XCCvkWHNa8uJ+bx282QVQ0n0jadAGZLcl5YIUwWkJ6Ih6kZNlkMfTsw/YMVakv3CHrCfh7GfxWMbbJA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.0.8.tgz";
+        sha512 = "P9X7Fwg7s27n4eTXJqh68Cfrg2K5x28JaIINdgIo4wnRNVfmc/JjH/Z5Rz5U3ahytUdY6+pS+YJAW9BYJ2DJOw==";
       };
     };
-    "@ot-builder/ot-sfnt-1.0.4" = {
+    "@ot-builder/ot-sfnt-1.0.8" = {
       name = "_at_ot-builder_slash_ot-sfnt";
       packageName = "@ot-builder/ot-sfnt";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.0.4.tgz";
-        sha512 = "m8ted+UhMW2tlccQ8+N0xzlN6lmKs/NBO93/BTaaxQt7CEjJcOYAncffa0TrFPQbCoAR4hyliNrogkLK81gUgg==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.0.8.tgz";
+        sha512 = "tfKv7EuSVKWgKFKOcdCMqWA6tCTf+bye3kWyYYJaG149w1YpzFqMMYk1uB95rL6cjJWvkphZdN2BSbEaUcD+sg==";
       };
     };
-    "@ot-builder/ot-standard-glyph-namer-1.0.4" = {
+    "@ot-builder/ot-standard-glyph-namer-1.0.8" = {
       name = "_at_ot-builder_slash_ot-standard-glyph-namer";
       packageName = "@ot-builder/ot-standard-glyph-namer";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.0.4.tgz";
-        sha512 = "cyMmKxbkFaGDoj6qTjykniMDAhihyHYJGjhrkCMyiYWbV259doWl476lGANI/AyPQsDbjS4bXF8QJOUpQBM6dA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.0.8.tgz";
+        sha512 = "sNEu9Ye5IdISzSaLnyNl/0ZwQY8DLUfvGuQs45JPT84WTpkB7c1BpndlSfcCDZaqdtTXN/tNS2fAN7TJm1g9Ig==";
       };
     };
-    "@ot-builder/prelude-1.0.4" = {
+    "@ot-builder/prelude-1.0.8" = {
       name = "_at_ot-builder_slash_prelude";
       packageName = "@ot-builder/prelude";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.0.4.tgz";
-        sha512 = "3SF8Y7WP5su2bCpzCbmKJv0zh6GRSbFQTGgk6KvZYt33ruZGpHyjJnlZUhSO9LsCyzR4B72/UnQK2UoZNcaI5g==";
+        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.0.8.tgz";
+        sha512 = "wknxzHrwwcN4m32P1FmYScTD03Vtj5mQWCx21NCzcsUyEfGasUvTzoPhOw5qUdklN3azFSjByfjpMUAjCRfnJg==";
       };
     };
-    "@ot-builder/primitive-1.0.4" = {
+    "@ot-builder/primitive-1.0.8" = {
       name = "_at_ot-builder_slash_primitive";
       packageName = "@ot-builder/primitive";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.0.4.tgz";
-        sha512 = "RO+s4TXioRd+BQadkyhEizu6/1sqDkbpvtwz4uLT6ncutB7QYYutCIC9N2BrArUHy6j30lWhv7mQuUjJsgzQOw==";
+        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.0.8.tgz";
+        sha512 = "jJydJoA67wop43AVcH+E+5Q2DU7epll1J6krs6Oz3Rrs7x2RB5fc79nWJMm8bHpKPB0xnA3zsLiJjERB7Ud9dw==";
       };
     };
-    "@ot-builder/rectify-1.0.4" = {
+    "@ot-builder/rectify-1.0.8" = {
       name = "_at_ot-builder_slash_rectify";
       packageName = "@ot-builder/rectify";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.0.4.tgz";
-        sha512 = "hHvlBACzKLDT/4bixeacWzdAXi7WbGzn/gJim0q5FhrJ6wuy6jMqcASUgfuxDu/tn4mLVL5BglKSr1xcS8C87g==";
+        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.0.8.tgz";
+        sha512 = "RFD/oA3kTviuj7WHRynyMT4zBFNB8tSifrMjQxyY28BEWckieX27RM9+QynfuHg07s1pZ/mZC5g3wLwjdeE5+w==";
       };
     };
-    "@ot-builder/stat-glyphs-1.0.4" = {
+    "@ot-builder/stat-glyphs-1.0.8" = {
       name = "_at_ot-builder_slash_stat-glyphs";
       packageName = "@ot-builder/stat-glyphs";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.0.4.tgz";
-        sha512 = "Dn6BxqpJaLC0dz73OsxEYV99zjc2hkY0FPt1u9SYgN5zWpmZeDqDLo18UOH5WsWJCd0AI6pRagSAROHA9/c1jw==";
+        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.0.8.tgz";
+        sha512 = "rSQPs0laN2H+jBTKFA/q9+rcOJO9bJVHvCxHu74hfwjvlpysWbaN/+9PwMb5mFIP/GzToYfYhgZ6e7qBNRSM+g==";
       };
     };
-    "@ot-builder/trace-1.0.4" = {
+    "@ot-builder/trace-1.0.8" = {
       name = "_at_ot-builder_slash_trace";
       packageName = "@ot-builder/trace";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.0.4.tgz";
-        sha512 = "vQKQtK6WbaSTUbr6h18bWyOSRpynVgo6WPPmq3xv4HGWc/hv+61bOwFrNl0KHeoZCWmlATVRdiyWOr6et5zPMA==";
+        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.0.8.tgz";
+        sha512 = "VGPt+1UT+yDzouUDugMW2z7tFED+sHJKT5mOwl6N2t/+Er6gaxrRlfYKvdHqdgFKIg8oKytoZS3wOauWiVF02w==";
       };
     };
-    "@ot-builder/var-store-1.0.4" = {
+    "@ot-builder/var-store-1.0.8" = {
       name = "_at_ot-builder_slash_var-store";
       packageName = "@ot-builder/var-store";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.0.4.tgz";
-        sha512 = "EiPpjeD1SownKU9e5T0+Fja/zuTuDPP5m+bSVMTPW77ROOFJMIbUseZmoG+Y4PqF3V43Kue9WRPLl9eipnHpcg==";
+        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.0.8.tgz";
+        sha512 = "Wo3xfMDzmlqSNEn5YOO8hxW7X9YTw6fCUmfUmfaOAmNYRWsVHnLwTSnu92M6p0shMqVHzgqhCHDxG7KZAuSNwQ==";
       };
     };
-    "@ot-builder/variance-1.0.4" = {
+    "@ot-builder/variance-1.0.8" = {
       name = "_at_ot-builder_slash_variance";
       packageName = "@ot-builder/variance";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.0.4.tgz";
-        sha512 = "X4a/zUGeDq6HlVD2jln1+Eb0uWs6Jhm4nRmX5/Ny9MYSa6kImQczika3gdU2qRg8+hnf182gqsDiXueiSukflw==";
+        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.0.8.tgz";
+        sha512 = "GaWs/PMrzkAJJmf5Wm0qr09AHYP9ydNk6J9KEs7GXH7gBm6X5pl/V6D105u+6Tx+QSGotRvc8einQm/vazug7A==";
       };
     };
     "@parcel/fs-1.11.0" = {
@@ -4819,13 +4900,13 @@ let
         sha512 = "uc6FmPEegAZawSHjUMFQwU7EjaDn7zy1iD/KD/wBROL9F4378OES8MKMYHoRAKT61Fk7LxVKZSDR5VespMQiqw==";
       };
     };
-    "@primer/octicons-12.1.0" = {
+    "@primer/octicons-14.1.0" = {
       name = "_at_primer_slash_octicons";
       packageName = "@primer/octicons";
-      version = "12.1.0";
+      version = "14.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@primer/octicons/-/octicons-12.1.0.tgz";
-        sha512 = "jayKLMTCx/0zh4fjYmkxdlEgQ8STwevn5S48fkvi/03asITmBkaYAMPrUgO8VNSQkSPHIEuc3oTLXgh+JwH0UQ==";
+        url = "https://registry.npmjs.org/@primer/octicons/-/octicons-14.1.0.tgz";
+        sha512 = "I/gRlM2meKPKXFN/1fxLoigPXvAUsivxRCih7vgeO7o4qrNNsl6Ah85l3UBbFi0t7ttjMde2+bS1A32a1Hu0BA==";
       };
     };
     "@protobufjs/aspromise-1.1.2" = {
@@ -4918,13 +4999,13 @@ let
         sha1 = "a777360b5b39a1a2e5106f8e858f2fd2d060c570";
       };
     };
-    "@putdotio/api-client-8.15.3" = {
+    "@putdotio/api-client-8.16.0" = {
       name = "_at_putdotio_slash_api-client";
       packageName = "@putdotio/api-client";
-      version = "8.15.3";
+      version = "8.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.15.3.tgz";
-        sha512 = "Z1MK912OTC+InURygDElVFAbnAdA8x9in+6GSHb/8rzWmp5iDA7PjU85OCOYH8hBfAwKlWINhR372tUUnUHImg==";
+        url = "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.16.0.tgz";
+        sha512 = "9a00sd5aArb5s1R8MBsHULP3gcRsD9ivokRUCtS3oBf8M53u9XUAx/D79sehhiWbMR20DYxwUFfSoEvM/daq3Q==";
       };
     };
     "@reach/router-1.3.4" = {
@@ -4972,13 +5053,13 @@ let
         sha512 = "RB6vWO78v6c+SW/3bZh+XZMr4nGdJKAiPGsBALuUZnLuCiQ7aXCT1AuFHqnfS2gyXbEUEj+kw8p4ux8KdAfs3A==";
       };
     };
-    "@redocly/openapi-core-1.0.0-beta.44" = {
+    "@redocly/openapi-core-1.0.0-beta.49" = {
       name = "_at_redocly_slash_openapi-core";
       packageName = "@redocly/openapi-core";
-      version = "1.0.0-beta.44";
+      version = "1.0.0-beta.49";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.44.tgz";
-        sha512 = "9HNnh1MzvMsLK1liuidFBqWiAsZ2Yg3RY58fcEsy0QruSMdDbn7SoeI1qnXe6O+BkBS+vAP4oVzZDMHCMKGsOQ==";
+        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.49.tgz";
+        sha512 = "SwCtQeyovcV7cS6YQoe5GWX3hWXAZrnrZQtQv0YW91CtrZMBdk5qA5eQ9Mkkbk6YOKKCWkc8yD+KdkRATlyPNw==";
       };
     };
     "@redocly/react-dropdown-aria-2.0.11" = {
@@ -5008,6 +5089,15 @@ let
         sha512 = "PoMdXCw0ZyvjpCMT5aV4nkL0QywxP29sODQsSGeDpr/oI49Qq9tRtAsb/LbYbDzFlOydVEqHmmZWFtXJEAX9ew==";
       };
     };
+    "@rollup/plugin-commonjs-18.1.0" = {
+      name = "_at_rollup_slash_plugin-commonjs";
+      packageName = "@rollup/plugin-commonjs";
+      version = "18.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-18.1.0.tgz";
+        sha512 = "h3e6T9rUxVMAQswpDIobfUHn/doMzM9sgkMrsMWCFLmB84PSoC8mV8tOloAJjSRwdqhXBqstlX2BwBpHJvbhxg==";
+      };
+    };
     "@rollup/plugin-inject-4.0.2" = {
       name = "_at_rollup_slash_plugin-inject";
       packageName = "@rollup/plugin-inject";
@@ -5071,13 +5161,13 @@ let
         sha512 = "c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==";
       };
     };
-    "@schematics/angular-11.2.9" = {
+    "@schematics/angular-12.0.2" = {
       name = "_at_schematics_slash_angular";
       packageName = "@schematics/angular";
-      version = "11.2.9";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/angular/-/angular-11.2.9.tgz";
-        sha512 = "yiuWCf+naAaS8cib2a9KKAhkwLx4LVnxE4lpF1Q2mEE5znQ7npYwzQYxgMHD70eMuSrki/L5nM9s7ZdVr5OKyg==";
+        url = "https://registry.npmjs.org/@schematics/angular/-/angular-12.0.2.tgz";
+        sha512 = "DMUfp7226QY2FkJeBm1xAUUKRX9umVCRhqEcku4Zaig6PylVd9LZFLjZvGKA4Vq2DkYRtClll3z5FIhAOSY3SQ==";
       };
     };
     "@schematics/schematics-0.1102.6" = {
@@ -5089,15 +5179,6 @@ let
         sha512 = "x77kbJL/HqR4gx0tbt35VCOGLyMvB7jD/x7eB1njhQRF8E/xynEOk3i+7A5VmK67QP5NJxU8BQKlPkJ55tBDmg==";
       };
     };
-    "@schematics/update-0.1102.9" = {
-      name = "_at_schematics_slash_update";
-      packageName = "@schematics/update";
-      version = "0.1102.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/update/-/update-0.1102.9.tgz";
-        sha512 = "JIbuvX4a87h7G9d3lsKTUceKXhE/lXtJEkGaQ2jv2sxFRxBkmMO2o2OmsKRDpIMtSRs7VTUTccK6RAOVZJX66w==";
-      };
-    };
     "@segment/loosely-validate-event-2.0.0" = {
       name = "_at_segment_slash_loosely-validate-event";
       packageName = "@segment/loosely-validate-event";
@@ -5125,13 +5206,13 @@ let
         sha512 = "lOUyRopNTKJYVEU9T6stp2irwlTDsYMmUKBOUjnMcwGveuUfIJqrCOtFLtIPPj3XJlbZy5F68l4KP9rZ8Ipang==";
       };
     };
-    "@serverless/components-3.8.3" = {
+    "@serverless/components-3.10.1" = {
       name = "_at_serverless_slash_components";
       packageName = "@serverless/components";
-      version = "3.8.3";
+      version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/components/-/components-3.8.3.tgz";
-        sha512 = "rdteMdPgsnJdfL8AcCguB1aFEII3cL2GL5XoOLwYUTJIZyJCC0kCkYl/gbN1H67XDASr5KD0eDyf8Dw0oCyfNA==";
+        url = "https://registry.npmjs.org/@serverless/components/-/components-3.10.1.tgz";
+        sha512 = "Kgs9sBcsgxW4l0j8H5Bh8ROV4MmeFEiEwcj8OjFI4MyGj/nNw8dQA5ArpF2COJCgVDLwYVqnRGOCR+tEF0TlnA==";
       };
     };
     "@serverless/core-1.1.2" = {
@@ -5143,13 +5224,13 @@ let
         sha512 = "PY7gH+7aQ+MltcUD7SRDuQODJ9Sav9HhFJsgOiyf8IVo7XVD6FxZIsSnpMI6paSkptOB7n+0Jz03gNlEkKetQQ==";
       };
     };
-    "@serverless/enterprise-plugin-4.5.3" = {
-      name = "_at_serverless_slash_enterprise-plugin";
-      packageName = "@serverless/enterprise-plugin";
-      version = "4.5.3";
+    "@serverless/dashboard-plugin-5.1.4" = {
+      name = "_at_serverless_slash_dashboard-plugin";
+      packageName = "@serverless/dashboard-plugin";
+      version = "5.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/enterprise-plugin/-/enterprise-plugin-4.5.3.tgz";
-        sha512 = "/JwlHoBSmxP8bAaWD3dIGePkJU1sLRHhEgvMyXuDo9i9tN5D6kyZypM2GUVNx4MpUR/XPJtCUgCSp5xI4aSsxg==";
+        url = "https://registry.npmjs.org/@serverless/dashboard-plugin/-/dashboard-plugin-5.1.4.tgz";
+        sha512 = "f6uSdUSfZmUhVxLjqwYMNUYi3EShakPQwzipCpVEChcB0AKZG6mhu2NBfTFeSBASvR2l1Mq8tqVgHoTXp9yq4Q==";
       };
     };
     "@serverless/event-mocks-1.1.1" = {
@@ -5170,13 +5251,13 @@ let
         sha512 = "8jP72e0POFGEW7HKtDzK0qt1amYtvlB7bYSal8JUCXbeY2qk3xRJZuLWCZBBKRGz4ha4eBNjlz7iniACb9biLg==";
       };
     };
-    "@serverless/platform-client-china-2.1.10" = {
+    "@serverless/platform-client-china-2.1.13" = {
       name = "_at_serverless_slash_platform-client-china";
       packageName = "@serverless/platform-client-china";
-      version = "2.1.10";
+      version = "2.1.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/platform-client-china/-/platform-client-china-2.1.10.tgz";
-        sha512 = "+ckY3WfN+J4gCYKK25VnoZ20b0jVmnb/v9UKG48YTPoS6MWDud6nbAUUQuNbL5UK4dbDFKEVsnFK42XEsBjfkg==";
+        url = "https://registry.npmjs.org/@serverless/platform-client-china/-/platform-client-china-2.1.13.tgz";
+        sha512 = "kQuWjHiBeslZ1SkIFzXRoEi+CCunUEBOyJRU7Zeg5l4vV4U63G8Ax1waMXxoBILgYK5cDG0F/y+UoSAvEhJmZw==";
       };
     };
     "@serverless/template-1.1.4" = {
@@ -5197,31 +5278,40 @@ let
         sha512 = "aI/cpGVUhWbJUR8QDMtPue28EU4ViG/L4/XKuZDfAN2uNQv3NRjwEFIBi/cxyfQnMTYVtMLe9wDjuwzOT4ENzA==";
       };
     };
-    "@serverless/utils-4.0.1" = {
+    "@serverless/utils-4.1.0" = {
       name = "_at_serverless_slash_utils";
       packageName = "@serverless/utils";
-      version = "4.0.1";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/utils/-/utils-4.0.1.tgz";
-        sha512 = "3/+Tw/kcIpBlrPyN244Ci7IZXVhGH9WLiLZcSwL0U96g0QQBofIGbv5v2h3Q6J4rBpPUOiZJcabJc7cIvlcP6Q==";
+        url = "https://registry.npmjs.org/@serverless/utils/-/utils-4.1.0.tgz";
+        sha512 = "cl5uPaGg72z0sCUpF0zsOhwYYUV72Gxc1FwFfxltO8hSvMeFDvwD7JrNE4kHcIcKRjwPGbSH0fdVPUpErZ8Mog==";
       };
     };
-    "@serverless/utils-china-1.0.14" = {
+    "@serverless/utils-5.2.0" = {
+      name = "_at_serverless_slash_utils";
+      packageName = "@serverless/utils";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@serverless/utils/-/utils-5.2.0.tgz";
+        sha512 = "QXBZO0W2da0AtROpg8H1c4YWMSl56+nef0Kukd+40Q4jEaY3a0dtpVzvGps3aLFDXer3kWZ3LtlhS5HGXLficw==";
+      };
+    };
+    "@serverless/utils-china-1.1.0" = {
       name = "_at_serverless_slash_utils-china";
       packageName = "@serverless/utils-china";
-      version = "1.0.14";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/utils-china/-/utils-china-1.0.14.tgz";
-        sha512 = "7ku9ePjb+bneFV1Akmz0t8pU8hhHfPJsBjG/Kf6IjyGAQrEjN/PcY2QUDm0emdCNyCsuido1wp0DWMGiwuhC8Q==";
+        url = "https://registry.npmjs.org/@serverless/utils-china/-/utils-china-1.1.0.tgz";
+        sha512 = "4iul4BaS6wi8c4fhRahkxt8IDSGB9swVyK3SpVqP4LJNGJ5UtKvStxa6pMC4OMVWs0LDCaLGlfFqOgBUo3VxRQ==";
       };
     };
-    "@sideway/address-4.1.1" = {
+    "@sideway/address-4.1.2" = {
       name = "_at_sideway_slash_address";
       packageName = "@sideway/address";
-      version = "4.1.1";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sideway/address/-/address-4.1.1.tgz";
-        sha512 = "+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ==";
+        url = "https://registry.npmjs.org/@sideway/address/-/address-4.1.2.tgz";
+        sha512 = "idTz8ibqWFrPU8kMirL0CoPH/A29XOzzAzpyN3zQ4kAWnzmNfFmRaoMNN6VI8ske5M73HZyhIaW4OuSFIdM4oA==";
       };
     };
     "@sideway/formula-3.0.0" = {
@@ -5296,13 +5386,13 @@ let
         sha512 = "JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==";
       };
     };
-    "@sindresorhus/is-4.0.0" = {
+    "@sindresorhus/is-4.0.1" = {
       name = "_at_sindresorhus_slash_is";
       packageName = "@sindresorhus/is";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.0.tgz";
-        sha512 = "FyD2meJpDPjyNQejSjvnhpgI/azsQkA4lGbuu5BQZfjvJ9cbRZXzeWL2HceCekW4lixO9JPesIIQkSoLjeJHNQ==";
+        url = "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz";
+        sha512 = "Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==";
       };
     };
     "@sindresorhus/slugify-1.1.2" = {
@@ -5332,13 +5422,13 @@ let
         sha512 = "mPZe3gBAV4ZDeYZbEs6WpNZuHHj7Hse9p44z6lrKBcbAMWnvApVOC7zZUpeQsUuWPTOWQRu/QSYElDKNajQ2oA==";
       };
     };
-    "@skorfmann/terraform-cloud-1.9.1" = {
+    "@skorfmann/terraform-cloud-1.10.1" = {
       name = "_at_skorfmann_slash_terraform-cloud";
       packageName = "@skorfmann/terraform-cloud";
-      version = "1.9.1";
+      version = "1.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@skorfmann/terraform-cloud/-/terraform-cloud-1.9.1.tgz";
-        sha512 = "R28bedoGjAmDiEYHu2cmeVd3R6vxq6anQQlGCpdjk5oqnSiROFFm8dzywvMon4/9C+CErhgY7fr76NVErS/U2w==";
+        url = "https://registry.npmjs.org/@skorfmann/terraform-cloud/-/terraform-cloud-1.10.1.tgz";
+        sha512 = "yQpxfH1VbwIcsyRQ8eN8qLJ76pZ4CQ1Ck1SmFtiKE7J790KFwC8o2r1dlTU130M/bv1eb/8gdPY1T3DLj40D8w==";
       };
     };
     "@slack/client-3.16.0" = {
@@ -5377,13 +5467,13 @@ let
         sha512 = "ca2JKOnSRzYHJkhOB9gYmdRZHmd02b/uBd/S0D5W+L9nIMS7sUBV5jfhKwVgrYPIpVNIc0XCI9rxK4TfkQRpiA==";
       };
     };
-    "@snyk/code-client-3.4.1" = {
+    "@snyk/code-client-3.7.0" = {
       name = "_at_snyk_slash_code-client";
       packageName = "@snyk/code-client";
-      version = "3.4.1";
+      version = "3.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/code-client/-/code-client-3.4.1.tgz";
-        sha512 = "XJ7tUdX1iQyzN/BmHac7p+Oyw1SyTcqSkCNExwBJxyQdlnUAKK6QKIWLXS81tTpZ79FgCdT+0fdS0AjsyS99eA==";
+        url = "https://registry.npmjs.org/@snyk/code-client/-/code-client-3.7.0.tgz";
+        sha512 = "a1uGkSpO4Pr9UucZUVfUR5PVcl1fEA4sXbdZPyzs1AABE7JhMY6FnBYKgQFz2qIkPAPy4M0m18bnGpHq5ZdWNg==";
       };
     };
     "@snyk/composer-lockfile-parser-1.4.1" = {
@@ -5404,13 +5494,13 @@ let
         sha512 = "Oup9nAvb558jdNvbZah/vaBtOtCcizkdeS+OBQeBIqIffyer4mc4juSn4b1SFjCpu7AG7piio8Lj8k1B9ps6Tg==";
       };
     };
-    "@snyk/docker-registry-v2-client-1.13.9" = {
+    "@snyk/docker-registry-v2-client-2.1.3" = {
       name = "_at_snyk_slash_docker-registry-v2-client";
       packageName = "@snyk/docker-registry-v2-client";
-      version = "1.13.9";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-1.13.9.tgz";
-        sha512 = "DIFLEhr8m1GrAwsLGInJmpcQMacjuhf3jcbpQTR+LeMvZA9IuKq+B7kqw2O2FzMiHMZmUb5z+tV+BR7+IUHkFQ==";
+        url = "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.1.3.tgz";
+        sha512 = "nbWgOhHFc2GXQsweDxhulhYtLptsBxoXMSI3Py7BOt8ITgXK0HUors2+mzGbwpbvnwMAYjwhv8PLOVVVsa8PXQ==";
       };
     };
     "@snyk/fast-glob-3.2.6-patch" = {
@@ -5422,13 +5512,22 @@ let
         sha512 = "E/Pfdze/WFfxwyuTFcfhQN1SwyUsc43yuCoW63RVBCaxTD6OzhVD2Pvc/Sy7BjiWUfmelzyKkIBpoow8zZX7Zg==";
       };
     };
-    "@snyk/fix-1.547.0" = {
+    "@snyk/fix-1.601.0" = {
       name = "_at_snyk_slash_fix";
       packageName = "@snyk/fix";
-      version = "1.547.0";
+      version = "1.601.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@snyk/fix/-/fix-1.601.0.tgz";
+        sha512 = "0Fz0nC547Qkg0FGpmvzDIPrrXvisQN6c07JM0RReM8Xb47p1o51O/MPsWdHIFJasIT5HkshyOaV5rjGQmfwHtQ==";
+      };
+    };
+    "@snyk/fix-pipenv-pipfile-0.3.5" = {
+      name = "_at_snyk_slash_fix-pipenv-pipfile";
+      packageName = "@snyk/fix-pipenv-pipfile";
+      version = "0.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/fix/-/fix-1.547.0.tgz";
-        sha512 = "ANTkn8PHsmPelQ8W8aiS+R3JBzUr0fjcHT67eTvr2a0h51qzzgBFEwhd8GH1Wuo0Nmvm3bsKkk5DxkxTtQWPtw==";
+        url = "https://registry.npmjs.org/@snyk/fix-pipenv-pipfile/-/fix-pipenv-pipfile-0.3.5.tgz";
+        sha512 = "Kqe9wqUrSSGB0+QFrJjCy5ub7bNg10F5I/avJK95RY/2g9cXpQnkdkTexRmVdOl+IF5z3JBXRjBnIQb6buvp6w==";
       };
     };
     "@snyk/gemfile-1.2.0" = {
@@ -5467,31 +5566,31 @@ let
         sha512 = "aWiQSOacH2lOpJ1ard9ErABcH4tdJogdr+mg1U67iZJOPO9n2gFgAwz1TQJDyPkv4/A5mh4hT2rg03Uq+KBn2Q==";
       };
     };
-    "@snyk/java-call-graph-builder-1.19.1" = {
+    "@snyk/java-call-graph-builder-1.21.0" = {
       name = "_at_snyk_slash_java-call-graph-builder";
       packageName = "@snyk/java-call-graph-builder";
-      version = "1.19.1";
+      version = "1.21.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.19.1.tgz";
-        sha512 = "bxjHef5Qm3pNc+BrFlxMudmSSbOjA395ZqBddc+dvsFHoHeyNbiY56Y1JSGUlTgjRM+PKNPBiCuELTSMaROeZg==";
+        url = "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.21.0.tgz";
+        sha512 = "i0c4N0+pYjpXEgqAkFniM3Q9YANvy+RtbbkQMPIvdEw41+XJISfEHzZ968ZmGWcoi480cgo5t9oxZEadFuHzyg==";
       };
     };
-    "@snyk/java-call-graph-builder-1.20.0" = {
+    "@snyk/java-call-graph-builder-1.23.0" = {
       name = "_at_snyk_slash_java-call-graph-builder";
       packageName = "@snyk/java-call-graph-builder";
-      version = "1.20.0";
+      version = "1.23.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.20.0.tgz";
-        sha512 = "NX8bpIu7oG5cuSSm6WvtxqcCuJs2gRjtKhtuSeF1p5TYXyESs3FXQ0nHjfY90LiyTTc+PW/UBq6SKbBA6bCBww==";
+        url = "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.23.0.tgz";
+        sha512 = "Go/UV33/R0SW10nvshrs/s8GjY2mnbJaRV4Xkj4zGrwpK80lL30th6LDpXDKEdXPZ66EbYGS1Q9gGlL7GzOdeA==";
       };
     };
-    "@snyk/mix-parser-1.3.1" = {
+    "@snyk/mix-parser-1.3.2" = {
       name = "_at_snyk_slash_mix-parser";
       packageName = "@snyk/mix-parser";
-      version = "1.3.1";
+      version = "1.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/mix-parser/-/mix-parser-1.3.1.tgz";
-        sha512 = "XvANfbbaRkCpmIxYJGa+nSy1hUvGOHPTY+J3lpJrJAsEPB3fCT/z9hMuIJJ2c4RXZ9HndkpoSz2oj27m/DiBKQ==";
+        url = "https://registry.npmjs.org/@snyk/mix-parser/-/mix-parser-1.3.2.tgz";
+        sha512 = "0Aq9vcgmjH0d9Gk5q0k6l4ZOvSHPf6/BCQGDVOpKp0hwOkXWnpDOLLPxL+uBCktuH9zTYQFB0aTk91kQImZqmA==";
       };
     };
     "@snyk/rpm-parser-2.2.1" = {
@@ -5512,22 +5611,22 @@ let
         sha512 = "WHhnwyoGOhjFOjBXqUfszD84SErrtjHjium/4xFbqKpEE+yuwxs8OwV/S29BtxhYiGtjpD1azv5QtH30VUMl0A==";
       };
     };
-    "@snyk/snyk-docker-pull-3.2.3" = {
+    "@snyk/snyk-docker-pull-3.2.5" = {
       name = "_at_snyk_slash_snyk-docker-pull";
       packageName = "@snyk/snyk-docker-pull";
-      version = "3.2.3";
+      version = "3.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.2.3.tgz";
-        sha512 = "hiFiSmWGLc2tOI7FfgIhVdFzO2f69im8O6p3OV4xEZ/Ss1l58vwtqudItoswsk7wj/azRlgfBW8wGu2MjoudQg==";
+        url = "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.2.5.tgz";
+        sha512 = "vElzqQs894u8Tj6LluGrj97/v1jlvi0DToaU5YBlxEKGaY5IgwSUcuqEW8r4h87fPuY2h4S9/zWqKPShwipvjw==";
       };
     };
-    "@snyk/snyk-hex-plugin-1.1.2" = {
+    "@snyk/snyk-hex-plugin-1.1.4" = {
       name = "_at_snyk_slash_snyk-hex-plugin";
       packageName = "@snyk/snyk-hex-plugin";
-      version = "1.1.2";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/snyk-hex-plugin/-/snyk-hex-plugin-1.1.2.tgz";
-        sha512 = "8zj19XxlBqTfe12CoeVgT0WtRBk0HEjJVO8hYB/AM71XVjucFzQT4/e/hR8mCUSA7i+B/F8X8iGPhs7Uj3J+zA==";
+        url = "https://registry.npmjs.org/@snyk/snyk-hex-plugin/-/snyk-hex-plugin-1.1.4.tgz";
+        sha512 = "kLfFGckSmyKe667UGPyWzR/H7/Trkt4fD8O/ktElOx1zWgmivpLm0Symb4RCfEmz9irWv+N6zIKRrfSNdytcPQ==";
       };
     };
     "@starptech/expression-parser-0.10.0" = {
@@ -5674,139 +5773,184 @@ let
         sha512 = "AmyMQndtxMsM59eDeA0gGiw8T2LzNvDhx/xl+ygFXXrsw+yb/mit73ndHkiHKcRA1EpNHTyD1PN9ATxghzplfg==";
       };
     };
-    "@textlint/ast-node-types-4.4.2" = {
+    "@tencent-sdk/cls-0.2.1" = {
+      name = "_at_tencent-sdk_slash_cls";
+      packageName = "@tencent-sdk/cls";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@tencent-sdk/cls/-/cls-0.2.1.tgz";
+        sha512 = "nSEPLAQyXf694XqoXi/OnWjfaJNPoo+JaPt81Kpy1QogOSZdEqEebgGj/ROs8kPjRa3kf+6+0s8MSQRtJBOOyQ==";
+      };
+    };
+    "@tencent-sdk/common-0.1.0" = {
+      name = "_at_tencent-sdk_slash_common";
+      packageName = "@tencent-sdk/common";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@tencent-sdk/common/-/common-0.1.0.tgz";
+        sha512 = "WHVGulaFv/CLwSqYC5501FCMNclu7B7nH1OminksjV2HSonIvx3o3Pms4+2/2Lse/sB5RCmPiiitV7g09b4mWw==";
+      };
+    };
+    "@tencent-sdk/faas-0.1.5" = {
+      name = "_at_tencent-sdk_slash_faas";
+      packageName = "@tencent-sdk/faas";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@tencent-sdk/faas/-/faas-0.1.5.tgz";
+        sha512 = "6wEkJCm1rN9LOgH/BZHW6ajJpYZQuf1qwfW+tGTNkczW0RepWASznS6MCzWC9HX09oosVpg8sGCGtcgWQSP1Qg==";
+      };
+    };
+    "@textlint/ast-node-types-12.0.0" = {
       name = "_at_textlint_slash_ast-node-types";
       packageName = "@textlint/ast-node-types";
-      version = "4.4.2";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.4.2.tgz";
-        sha512 = "m5brKbI7UY/Q8sbIZ7z1KB8ls04nRILshz5fPQ4EZ04jL19qrrUHJR8A6nK3vJ/GelkDWl4I0VDYSAjLEFQV8g==";
+        url = "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.0.0.tgz";
+        sha512 = "qUjmlpz1vR3AStBA9RPDCVT0/pGtePvBJ5Vb/0PzTrnr04iFktG6P6B1VOmgTh8J9Kl/FonQFo3A9M1Q3UH+JA==";
       };
     };
-    "@textlint/ast-tester-2.3.4" = {
+    "@textlint/ast-node-types-4.4.3" = {
+      name = "_at_textlint_slash_ast-node-types";
+      packageName = "@textlint/ast-node-types";
+      version = "4.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.4.3.tgz";
+        sha512 = "qi2jjgO6Tn3KNPGnm6B7p6QTEPvY95NFsIAaJuwbulur8iJUEenp1OnoUfiDaC/g2WPPEFkcfXpmnu8XEMFo2A==";
+      };
+    };
+    "@textlint/ast-tester-12.0.0" = {
       name = "_at_textlint_slash_ast-tester";
       packageName = "@textlint/ast-tester";
-      version = "2.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-2.3.4.tgz";
-        sha512 = "2gIsnJ1Dmr5jjF+u/vusNRqk2bJi0WwwbjP9WV/op51DhDTi7BUNjVSiZtcP9NVxidvs51XNEg+EMTRoKP3Msg==";
+        url = "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.0.0.tgz";
+        sha512 = "mcAqaOJnAhay8QtDC/na5S72XPxmqGCntOwcLwuSjEmPGAIuLC3GsumLQo4nWSQ2LGnWd6CwLDZT4eBlRWetNA==";
       };
     };
-    "@textlint/ast-traverse-2.3.4" = {
+    "@textlint/ast-traverse-12.0.0" = {
       name = "_at_textlint_slash_ast-traverse";
       packageName = "@textlint/ast-traverse";
-      version = "2.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-2.3.4.tgz";
-        sha512 = "NcjPXCvP8r4D2/azeQhwjPvh2+099I9RRBUrg6IpMfTW4IUUJb4BwZOPgjW+XRIVc71Dhgm82VSIagDL90FYcg==";
+        url = "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.0.0.tgz";
+        sha512 = "Mu0il8qWS9YkzVAqwmrTd+ga5S0LJVWOGjE6d9yADf5xObUDFk4g8ITlfEOiicpX5bTUxT4e1bORxPveCJ8iKQ==";
       };
     };
-    "@textlint/feature-flag-3.3.4" = {
+    "@textlint/feature-flag-12.0.0" = {
       name = "_at_textlint_slash_feature-flag";
       packageName = "@textlint/feature-flag";
-      version = "3.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-3.3.4.tgz";
-        sha512 = "ULAqdD2y1sPAhbkaMjS2fltrZYCNQGsNDv/NQWFsCmDpQ1R8kxoUaTiXpebTM+nVuyvU5GfdkxhHyMarPIjmYw==";
+        url = "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.0.0.tgz";
+        sha512 = "xgK6tsf1Gg6xn8/X0HN4LXzSkJYgmByAvzItUPlI0dzvA4HhhT4gkBeshDCuXsHLc970nYgzy1TYHpyscu7PTw==";
       };
     };
-    "@textlint/fixer-formatter-3.3.4" = {
+    "@textlint/fixer-formatter-12.0.0" = {
       name = "_at_textlint_slash_fixer-formatter";
       packageName = "@textlint/fixer-formatter";
-      version = "3.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-3.3.4.tgz";
-        sha512 = "H4i+N+uN7EiI5vRnfRIccFc5yekNHnO8795fiOK2TZPb6SzY3iwLOGZ2rDKvgu7ZKdyGW945w3T0elUF3Fkr5A==";
+        url = "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.0.0.tgz";
+        sha512 = "y2PWue8PANhSF9cXwksxmjDs/n9exOq4daNMhN7VvJk9yrXL+nSuAoyDXjyp09gX4Nfwa/xsOrQRTDVRbizgcw==";
       };
     };
-    "@textlint/kernel-3.4.4" = {
+    "@textlint/kernel-12.0.0" = {
       name = "_at_textlint_slash_kernel";
       packageName = "@textlint/kernel";
-      version = "3.4.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/kernel/-/kernel-3.4.4.tgz";
-        sha512 = "ro9TPnE16C6gtKkY3aOjTs8ZfzAxdXLCV9JD4BuV5P+xBiiu9NdiE2Hwm3LyEGQjMxaKnXjbm/DTCAxA4gz0Dg==";
+        url = "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.0.0.tgz";
+        sha512 = "8UXHKhSAgn1aexPjyQE1CRVivCfSz+aFuNrktT9+JOMM3XsSd4JFcMKDhPA1utiiRR+4yDVH5be38vuuJOG9cQ==";
       };
     };
-    "@textlint/linter-formatter-3.3.4" = {
+    "@textlint/linter-formatter-12.0.0" = {
       name = "_at_textlint_slash_linter-formatter";
       packageName = "@textlint/linter-formatter";
-      version = "3.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-3.3.4.tgz";
-        sha512 = "k1lyvR+w7ctwr5dWhMVRTKk19GH99BAO2dLk8ZS0ZcYyKqKAKu6Iyb1cWEg/u3dT3KFbWwoegnAelfz5828SHQ==";
+        url = "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.0.0.tgz";
+        sha512 = "jRRZluLCBXcP8VlA90N8DJOPy890j7rVOVSuyyFn0ypuUK88X2qH9XoEd9yYbo/HmH9ky2h+TeA8CJtOAIjU2g==";
       };
     };
-    "@textlint/markdown-to-ast-6.3.4" = {
+    "@textlint/markdown-to-ast-12.0.0" = {
       name = "_at_textlint_slash_markdown-to-ast";
       packageName = "@textlint/markdown-to-ast";
-      version = "6.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-6.3.4.tgz";
-        sha512 = "LLScbDRXov1l4U4OCLJ5clu9eWNonBG+rhuArwYAHpf0hwIoNoETfAQvrNtXZG/NZ96fdWv4PLtaN6dA4ldRdQ==";
+        url = "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.0.0.tgz";
+        sha512 = "XaiuePJVDGVIwdjIiITdbdRXZDFnAFY/so3Rb8qAId/Qq9fKPUvgefMkdIG73wUC7LzhrAzH6/CuEO+f77HR5g==";
       };
     };
-    "@textlint/module-interop-1.2.4" = {
+    "@textlint/module-interop-12.0.0" = {
       name = "_at_textlint_slash_module-interop";
       packageName = "@textlint/module-interop";
-      version = "1.2.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-1.2.4.tgz";
-        sha512 = "/wUKvDbBEujrhpcuD7Et4Mcicm3SG2oAe/tyMruLxSJ86umGxd34dEcHRON8fJzou9qyt0gFoczcypd4k3hJow==";
+        url = "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.0.0.tgz";
+        sha512 = "WSuwd3pd2xYDCYqpA6NE8FwMZS4WJ2gZmsSCXBpOh3qJ/pHbmrfEaiwOpGQJA4RfXVp8Fy5KfaAQJIr+wox98A==";
       };
     };
-    "@textlint/source-code-fixer-3.4.4" = {
+    "@textlint/source-code-fixer-12.0.0" = {
       name = "_at_textlint_slash_source-code-fixer";
       packageName = "@textlint/source-code-fixer";
-      version = "3.4.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-3.4.4.tgz";
-        sha512 = "GDHVin2EJ9PGJ33VMGlqtPcvUlY+pkTbaWs4jWv8oBaEK8UUBzS5ZpEc4xi7Xp5vIXnVsCSLKNC6bgvR9X/AoQ==";
+        url = "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.0.0.tgz";
+        sha512 = "+XMJ7unzezEqKh8euWIw1QUprvv7IJzOfV0UPVbkThX2d3ZOzBmK+AzlYbqzCwZ1jkV0QYaRqaptBE+iaaQjNg==";
       };
     };
-    "@textlint/text-to-ast-3.3.4" = {
+    "@textlint/text-to-ast-12.0.0" = {
       name = "_at_textlint_slash_text-to-ast";
       packageName = "@textlint/text-to-ast";
-      version = "3.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-3.3.4.tgz";
-        sha512 = "oDwGNQCAo7ROnHqaksPEogf8fxXGU3Z61C6NEv0n9vEWEkUX9oUVX4c9kh5UieZL5nN/xIdzVc3TrXywkkOK3g==";
+        url = "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.0.0.tgz";
+        sha512 = "j73hF6BiwdZurNdzHfOtP5j3v+nTWaTP7RtJf5wpfQBigT4RA+EqmKxUd/OpO+gt/Xy1NkpceLFNllZGRLEvkw==";
       };
     };
-    "@textlint/textlint-plugin-markdown-5.3.4" = {
+    "@textlint/textlint-plugin-markdown-12.0.0" = {
       name = "_at_textlint_slash_textlint-plugin-markdown";
       packageName = "@textlint/textlint-plugin-markdown";
-      version = "5.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-5.3.4.tgz";
-        sha512 = "g8KKuwhzzlRjvKrpq3SbGc+JJMAJoy5Xp0Ibvq7QKgNVxwN/f5WtmrJc8CdgFG7++jgtkDPlofz0c9xG63xKwQ==";
+        url = "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.0.0.tgz";
+        sha512 = "eo9deECYMkytoiJUqDxEwzugL8sLcCFUbeCpzV5IuIRwQBh85Hds3lp/mtW1B3Q/BxcSa08im2HAa9uRdcoe4Q==";
       };
     };
-    "@textlint/textlint-plugin-text-4.3.4" = {
+    "@textlint/textlint-plugin-text-12.0.0" = {
       name = "_at_textlint_slash_textlint-plugin-text";
       packageName = "@textlint/textlint-plugin-text";
-      version = "4.3.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-4.3.4.tgz";
-        sha512 = "ZtctKFR8V9mIZAMibS97xPWlt2lViizIRAy4oDaKCnxAwJ0uAjxm/OlHHdaFwNydGaEDtN60mcmarDqOOAZIiA==";
+        url = "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.0.0.tgz";
+        sha512 = "brtexdqu7yvFLstYvVlotMZz5T7SwKfnFnV9Sm+uhg/d3Ddea9exzpiWWcXfRAhfOBd12mmEGM6gwAuSwzrhqg==";
       };
     };
-    "@textlint/types-1.5.4" = {
+    "@textlint/types-1.5.5" = {
       name = "_at_textlint_slash_types";
       packageName = "@textlint/types";
-      version = "1.5.4";
+      version = "1.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/types/-/types-1.5.4.tgz";
-        sha512 = "bhSrOjW8AFSa/xf6lYZ2akE0j+4O/WEAA2S/R8RrjNMkA5Az2j57mxPNpqMhEeyHDkpzN/coIlqUwgYvcJHv1A==";
+        url = "https://registry.npmjs.org/@textlint/types/-/types-1.5.5.tgz";
+        sha512 = "80P6fcqgsG9bP6JgR6W/E/oIx+71pplaicYCvvB4vMIeGk0OnWls4Q21kCpDYmq/C/ABtZ/Gy/Ov/8ExQPeQ7A==";
       };
     };
-    "@textlint/utils-1.2.4" = {
+    "@textlint/types-12.0.0" = {
+      name = "_at_textlint_slash_types";
+      packageName = "@textlint/types";
+      version = "12.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@textlint/types/-/types-12.0.0.tgz";
+        sha512 = "3sB22cGtN9nPViDrW7FJxWkDrpGtyJbvNsvZqzX83HJbAiOmzzeHDkRRLvz9tax76lcdjlNk+2rHY3iSnjhEag==";
+      };
+    };
+    "@textlint/utils-12.0.0" = {
       name = "_at_textlint_slash_utils";
       packageName = "@textlint/utils";
-      version = "1.2.4";
+      version = "12.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/utils/-/utils-1.2.4.tgz";
-        sha512 = "FREWc8n6bJFsKehtUlHPtbqnXULWhdnlazqWiHMjiBtcxUfD+1kY3P7PNGbChdzeZGmwBkgFQyGkok8bAGnZOw==";
+        url = "https://registry.npmjs.org/@textlint/utils/-/utils-12.0.0.tgz";
+        sha512 = "bnIr17iouc4MtVR+r7v8mBasNn3ZsQpfTLTi4RelrZJdICHMBUMOWRX70cVRV/xJck/nfY9igt325qI0y2ELoQ==";
       };
     };
     "@tokenizer/token-0.1.1" = {
@@ -5863,15 +6007,6 @@ let
         sha512 = "jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==";
       };
     };
-    "@types/anymatch-1.3.1" = {
-      name = "_at_types_slash_anymatch";
-      packageName = "@types/anymatch";
-      version = "1.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz";
-        sha512 = "/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==";
-      };
-    };
     "@types/archiver-5.1.0" = {
       name = "_at_types_slash_archiver";
       packageName = "@types/archiver";
@@ -5962,15 +6097,6 @@ let
         sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==";
       };
     };
-    "@types/braces-3.0.0" = {
-      name = "_at_types_slash_braces";
-      packageName = "@types/braces";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/braces/-/braces-3.0.0.tgz";
-        sha512 = "TbH79tcyi9FHwbyboOKeRachRq63mSuWYXOflsNO9ZyE5ClQ/JaozNKl+aWUq87qPNsXasXxi2AbgfwIJ+8GQw==";
-      };
-    };
     "@types/cacheable-request-6.0.1" = {
       name = "_at_types_slash_cacheable-request";
       packageName = "@types/cacheable-request";
@@ -6142,13 +6268,13 @@ let
         sha512 = "DLVpLEGTEZGBXOYoYoagHSxXkDHONc0fZouF2ayw7Q18aRu1Afwci+1CFKvPpouCUOVWP+dmCaAWpQjswe7kpg==";
       };
     };
-    "@types/eslint-7.2.10" = {
+    "@types/eslint-7.2.12" = {
       name = "_at_types_slash_eslint";
       packageName = "@types/eslint";
-      version = "7.2.10";
+      version = "7.2.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.10.tgz";
-        sha512 = "kUEPnMKrqbtpCq/KTaGFFKAcz6Ethm2EjCoKIDaCmfRBWLbFuTcOJfTlorwbnboXBzahqWLgUp1BQeKHiJzPUQ==";
+        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.12.tgz";
+        sha512 = "HjikV/jX6e0Pg4DcB+rtOBKSrG6w5IaxWpmi3efL/eLxMz5lZTK+W1DKERrX5a+mNzL78axfsDNXu7JHFP4uLg==";
       };
     };
     "@types/eslint-scope-3.7.0" = {
@@ -6196,6 +6322,15 @@ let
         sha512 = "c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==";
       };
     };
+    "@types/expect-1.20.4" = {
+      name = "_at_types_slash_expect";
+      packageName = "@types/expect";
+      version = "1.20.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz";
+        sha512 = "Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==";
+      };
+    };
     "@types/express-4.17.11" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
@@ -6223,6 +6358,15 @@ let
         sha512 = "DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA==";
       };
     };
+    "@types/express-serve-static-core-4.17.20" = {
+      name = "_at_types_slash_express-serve-static-core";
+      packageName = "@types/express-serve-static-core";
+      version = "4.17.20";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.20.tgz";
+        sha512 = "8qqFN4W53IEWa9bdmuVrUcVkFemQWnt5DKPQ/oa8xKDYgtjCr2OO6NX5TIK49NLFr3mPYU2cLh92DQquC3oWWQ==";
+      };
+    };
     "@types/fancy-log-1.3.0" = {
       name = "_at_types_slash_fancy-log";
       packageName = "@types/fancy-log";
@@ -6232,13 +6376,13 @@ let
         sha512 = "mQjDxyOM1Cpocd+vm1kZBP7smwKZ4TNokFeds9LV7OZibmPJFEzY3+xZMrKfUdNT71lv8GoCPD6upKwHxubClw==";
       };
     };
-    "@types/fast-json-stable-stringify-2.0.0" = {
+    "@types/fast-json-stable-stringify-2.1.0" = {
       name = "_at_types_slash_fast-json-stable-stringify";
       packageName = "@types/fast-json-stable-stringify";
-      version = "2.0.0";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
-        sha512 = "mky/O83TXmGY39P1H9YbUpjV6l6voRYlufqfFCvel8l1phuy8HRjdWc1rrPuN53ITBJlbyMSV6z3niOySO5pgQ==";
+        url = "https://registry.npmjs.org/@types/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha512 = "IyNhGHu71jH1jCXTHmafuoAAdsbBON3kDh7u/UUhLmjYgN5TYB54e1R8ckTCiIevl2UuZaCsi9XRxineY5yUjw==";
       };
     };
     "@types/flat-cache-2.0.0" = {
@@ -6349,13 +6493,13 @@ let
         sha512 = "2aoSC4UUbHDj2uCsCxcG/vRMXey/m17bC7UwitVm5hn22nI8O8Y9iDpA76Orc+DWkQ4zZrOKEshCqR/jSuXAHA==";
       };
     };
-    "@types/http-proxy-1.17.5" = {
+    "@types/http-proxy-1.17.6" = {
       name = "_at_types_slash_http-proxy";
       packageName = "@types/http-proxy";
-      version = "1.17.5";
+      version = "1.17.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.5.tgz";
-        sha512 = "GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q==";
+        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.6.tgz";
+        sha512 = "+qsjqR75S/ib0ig0R9WN+CDoZeOBU6F2XLewgC4KVgdXiNHiKKHFEMRHOrs5PbYE97D5vataw5wPj4KLYfUkuQ==";
       };
     };
     "@types/inquirer-6.5.0" = {
@@ -6484,13 +6628,13 @@ let
         sha512 = "MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==";
       };
     };
-    "@types/koa-2.13.1" = {
+    "@types/koa-2.13.3" = {
       name = "_at_types_slash_koa";
       packageName = "@types/koa";
-      version = "2.13.1";
+      version = "2.13.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa/-/koa-2.13.1.tgz";
-        sha512 = "Qbno7FWom9nNqu0yHZ6A0+RWt4mrYBhw3wpBAQ3+IuzGcLlfeYkzZrnMq5wsxulN2np8M4KKeUpTodsOsSad5Q==";
+        url = "https://registry.npmjs.org/@types/koa/-/koa-2.13.3.tgz";
+        sha512 = "TaujBV+Dhe/FvmSMZJtCFBms+bqQacgUebk/M2C2tq8iGmHE/DDf4DcW2Hc7NqusVZmy5xzrWOjtdPKNP+fTfw==";
       };
     };
     "@types/koa-compose-3.2.5" = {
@@ -6511,13 +6655,13 @@ let
         sha512 = "EP6O3Jkr7bXvZZSZYlsgt5DIjiGr0dXP1/jVEwVLTFgg0d+3lWVQkRavYVQszV7dYUwvg0B8R0MBDpcmXg7XIA==";
       };
     };
-    "@types/lodash-4.14.168" = {
+    "@types/lodash-4.14.170" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.168";
+      version = "4.14.170";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.168.tgz";
-        sha512 = "oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.170.tgz";
+        sha512 = "bpcvu/MKHHeYX+qeEN8GE7DIravODWdACVA1ctevD8CN24RhPZIKMn9ntfAsrvLfSX3cR5RrBKAbYm9bGs0A+Q==";
       };
     };
     "@types/lodash.chunk-4.2.6" = {
@@ -6574,15 +6718,6 @@ let
         sha512 = "SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==";
       };
     };
-    "@types/micromatch-4.0.1" = {
-      name = "_at_types_slash_micromatch";
-      packageName = "@types/micromatch";
-      version = "4.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/micromatch/-/micromatch-4.0.1.tgz";
-        sha512 = "my6fLBvpY70KattTNzYOK6KU1oR1+UCz9ug/JbcF5UrEmeCt9P7DV2t7L8+t18mMPINqGQCE4O8PLOPbI84gxw==";
-      };
-    };
     "@types/mime-1.3.2" = {
       name = "_at_types_slash_mime";
       packageName = "@types/mime";
@@ -6673,6 +6808,15 @@ let
         sha512 = "wdfkiKBBEMTODNbuF3J+qDDSqJxt50yB9pgDiTcFew7f97Gcc7/sM4HR66ofGgpJPOALWOqKAch4gPyqEXSkeQ==";
       };
     };
+    "@types/multimatch-4.0.0" = {
+      name = "_at_types_slash_multimatch";
+      packageName = "@types/multimatch";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/multimatch/-/multimatch-4.0.0.tgz";
+        sha512 = "xS26gtqY5QASmfU/6jb5vj7F0D0SctgRGtwXsKSNng1knk/OewjISlkMwGonkMCbZCqSoW3s6nL0sAtTlzbL/g==";
+      };
+    };
     "@types/mysql-2.15.15" = {
       name = "_at_types_slash_mysql";
       packageName = "@types/mysql";
@@ -6691,13 +6835,13 @@ let
         sha512 = "fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ==";
       };
     };
-    "@types/node-10.17.58" = {
+    "@types/node-10.17.60" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "10.17.58";
+      version = "10.17.60";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-10.17.58.tgz";
-        sha512 = "Dn5RBxLohjdHFj17dVVw3rtrZAeXeWg+LQfvxDIW/fdPkSiuQk7h3frKMYtsQhtIW42wkErDcy9UMVxhGW4O7w==";
+        url = "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz";
+        sha512 = "F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==";
       };
     };
     "@types/node-12.12.70" = {
@@ -6709,13 +6853,13 @@ let
         sha512 = "i5y7HTbvhonZQE+GnUM2rz1Bi8QkzxdQmEv1LKOv4nWyaQk/gdeiTApuQR3PDJHX7WomAbpx2wlWSEpxXGZ/UQ==";
       };
     };
-    "@types/node-13.13.50" = {
+    "@types/node-13.13.52" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "13.13.50";
+      version = "13.13.52";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-13.13.50.tgz";
-        sha512 = "y7kkh+hX/0jZNxMyBR/6asG0QMSaPSzgeVK63dhWHl4QAXCQB8lExXmzLL6SzmOgKHydtawpMnNhlDbv7DXPEA==";
+        url = "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz";
+        sha512 = "s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==";
       };
     };
     "@types/node-14.11.1" = {
@@ -6745,13 +6889,31 @@ let
         sha512 = "XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw==";
       };
     };
-    "@types/node-14.14.41" = {
+    "@types/node-14.17.1" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "14.14.41";
+      version = "14.17.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-14.14.41.tgz";
-        sha512 = "dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g==";
+        url = "https://registry.npmjs.org/@types/node/-/node-14.17.1.tgz";
+        sha512 = "/tpUyFD7meeooTRwl3sYlihx2BrJE7q9XF71EguPFIySj9B7qgnRtHsHTho+0AUm4m1SvWGm6uSncrR94q6Vtw==";
+      };
+    };
+    "@types/node-15.0.3" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "15.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-15.0.3.tgz";
+        sha512 = "/WbxFeBU+0F79z9RdEOXH4CsDga+ibi5M8uEYr91u3CkT/pdWcV8MCook+4wDPnZBexRdwWS+PiVZ2xJviAzcQ==";
+      };
+    };
+    "@types/node-15.6.1" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "15.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz";
+        sha512 = "7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==";
       };
     };
     "@types/node-6.14.13" = {
@@ -6790,15 +6952,6 @@ let
         sha512 = "IpkX0AasN44hgEad0gEF/V6EgR5n69VEqPEgnmoM8GsIGro3PowbWs4tR6IhxUTyPLpOn+fiGG6nrQhcmoCuIQ==";
       };
     };
-    "@types/node-fetch-2.5.7" = {
-      name = "_at_types_slash_node-fetch";
-      packageName = "@types/node-fetch";
-      version = "2.5.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz";
-        sha512 = "o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==";
-      };
-    };
     "@types/normalize-package-data-2.4.0" = {
       name = "_at_types_slash_normalize-package-data";
       packageName = "@types/normalize-package-data";
@@ -6871,6 +7024,15 @@ let
         sha512 = "0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==";
       };
     };
+    "@types/raf-3.4.0" = {
+      name = "_at_types_slash_raf";
+      packageName = "@types/raf";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz";
+        sha512 = "taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==";
+      };
+    };
     "@types/range-parser-1.2.3" = {
       name = "_at_types_slash_range-parser";
       packageName = "@types/range-parser";
@@ -6880,13 +7042,13 @@ let
         sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==";
       };
     };
-    "@types/readable-stream-2.3.9" = {
+    "@types/readable-stream-2.3.10" = {
       name = "_at_types_slash_readable-stream";
       packageName = "@types/readable-stream";
-      version = "2.3.9";
+      version = "2.3.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.9.tgz";
-        sha512 = "sqsgQqFT7HmQz/V5jH1O0fvQQnXAJO46Gg9LRO/JPfjmVmGUlcx831TZZO3Y3HtWhIkzf3kTsNT0Z0kzIhIvZw==";
+        url = "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.10.tgz";
+        sha512 = "xwSXvAv9x4B9Vj88AMZnFyEVLilz1EBxKvRUhGqIF4nJpRQBSTm7jS236X4Y9Y2qPsVvaMxwrGJlNhLHEahlFQ==";
       };
     };
     "@types/request-2.48.5" = {
@@ -6970,13 +7132,13 @@ let
         sha512 = "41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==";
       };
     };
-    "@types/semver-7.3.4" = {
+    "@types/semver-7.3.6" = {
       name = "_at_types_slash_semver";
       packageName = "@types/semver";
-      version = "7.3.4";
+      version = "7.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/semver/-/semver-7.3.4.tgz";
-        sha512 = "+nVsLKlcUCeMzD2ufHEYuJ9a2ovstb6Dp52A5VsoKxDXgvE051XgHI/33I1EymwkRGQkwnA0LkhnUzituGs4EQ==";
+        url = "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz";
+        sha512 = "0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==";
       };
     };
     "@types/serve-static-1.13.9" = {
@@ -6988,13 +7150,13 @@ let
         sha512 = "ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==";
       };
     };
-    "@types/sizzle-2.3.2" = {
+    "@types/sizzle-2.3.3" = {
       name = "_at_types_slash_sizzle";
       packageName = "@types/sizzle";
-      version = "2.3.2";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz";
-        sha512 = "7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg==";
+        url = "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz";
+        sha512 = "JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==";
       };
     };
     "@types/socket.io-2.1.11" = {
@@ -7033,6 +7195,15 @@ let
         sha512 = "OBsK0KIGUICExQ/ZvnPY4cKx5Kz4NcrVyGTIvOL5y4ajXu7r++RfBajfpGfGDmDVCKcoCDX1dO84/oeyeITnxA==";
       };
     };
+    "@types/structured-source-3.0.0" = {
+      name = "_at_types_slash_structured-source";
+      packageName = "@types/structured-source";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/structured-source/-/structured-source-3.0.0.tgz";
+        sha512 = "8u+Wo5+GEXe4jZyQ8TplLp+1A7g32ZcVoE7VZu8VcxnlaEm5I/+T579R7q3qKN76jmK0lRshpo4hl4bj/kEPKA==";
+      };
+    };
     "@types/superagent-3.8.2" = {
       name = "_at_types_slash_superagent";
       packageName = "@types/superagent";
@@ -7132,22 +7303,31 @@ let
         sha512 = "GpTIuDpb9u4zIO165fUy9+fXcULdD8HFRNli04GehoMVbeNq7D6OBnqSmg3lxZnC+UvgUhEWKxdKiwYUkGltIw==";
       };
     };
-    "@types/vscode-1.55.0" = {
+    "@types/vinyl-2.0.4" = {
+      name = "_at_types_slash_vinyl";
+      packageName = "@types/vinyl";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.4.tgz";
+        sha512 = "2o6a2ixaVI2EbwBPg1QYLGQoHK56p/8X/sGfKbFC8N6sY9lfjsMf/GprtkQkSya0D4uRiutRZ2BWj7k3JvLsAQ==";
+      };
+    };
+    "@types/vscode-1.56.0" = {
       name = "_at_types_slash_vscode";
       packageName = "@types/vscode";
-      version = "1.55.0";
+      version = "1.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/vscode/-/vscode-1.55.0.tgz";
-        sha512 = "49hysH7jneTQoSC8TWbAi7nKK9Lc5osQNjmDHVosrcU8o3jecD9GrK0Qyul8q4aGPSXRfNGqIp9CBdb13akETg==";
+        url = "https://registry.npmjs.org/@types/vscode/-/vscode-1.56.0.tgz";
+        sha512 = "Q5VmQxOx+L1Y6lIJiGcJzwcyV3pQo/eiW8P+7sNLhFI16tJCwtua2DLjHRcpjbCLNVYpQM73kzfFo1Z0HyP9eQ==";
       };
     };
-    "@types/webpack-4.41.27" = {
+    "@types/webpack-4.41.29" = {
       name = "_at_types_slash_webpack";
       packageName = "@types/webpack";
-      version = "4.41.27";
+      version = "4.41.29";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.27.tgz";
-        sha512 = "wK/oi5gcHi72VMTbOaQ70VcDxSQ1uX8S2tukBK9ARuGXrYM/+u4ou73roc7trXDNmCxCoerE8zruQqX/wuHszA==";
+        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.29.tgz";
+        sha512 = "6pLaORaVNZxiB3FSHbyBiWM7QdazAWda1zvAq4SbZObZqHSDbWLi62iFdblVea6SK9eyBIVp5yHhKt/yNQdR7Q==";
       };
     };
     "@types/webpack-sources-2.1.0" = {
@@ -7186,6 +7366,15 @@ let
         sha512 = "ISCK1iFnR+jYv7+jLNX0wDqesZ/5RAeY3wUx6QaphmocphU61h+b+PHjS18TF4WIPTu/MMzxIq2PHr32o2TS5Q==";
       };
     };
+    "@types/ws-7.4.4" = {
+      name = "_at_types_slash_ws";
+      packageName = "@types/ws";
+      version = "7.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ws/-/ws-7.4.4.tgz";
+        sha512 = "d/7W23JAXPodQNbOZNXvl2K+bqAQrCMwlh/nuQsPSQk6Fq0opHoPrUw43aHsvSbIiQPr8Of2hkFbnz1XBFVyZQ==";
+      };
+    };
     "@types/yargs-13.0.11" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
@@ -7231,13 +7420,13 @@ let
         sha512 = "S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==";
       };
     };
-    "@typescript-eslint/eslint-plugin-4.22.0" = {
+    "@typescript-eslint/eslint-plugin-4.26.0" = {
       name = "_at_typescript-eslint_slash_eslint-plugin";
       packageName = "@typescript-eslint/eslint-plugin";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.22.0.tgz";
-        sha512 = "U8SP9VOs275iDXaL08Ln1Fa/wLXfj5aTr/1c0t0j6CdbOnxh+TruXu1p4I0NAvdPBQgoPjHsgKn28mOi0FzfoA==";
+        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.0.tgz";
+        sha512 = "yA7IWp+5Qqf+TLbd8b35ySFOFzUfL7i+4If50EqvjT6w35X8Lv0eBHb6rATeWmucks37w+zV+tWnOXI9JlG6Eg==";
       };
     };
     "@typescript-eslint/experimental-utils-3.10.1" = {
@@ -7249,13 +7438,13 @@ let
         sha512 = "DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==";
       };
     };
-    "@typescript-eslint/experimental-utils-4.22.0" = {
+    "@typescript-eslint/experimental-utils-4.26.0" = {
       name = "_at_typescript-eslint_slash_experimental-utils";
       packageName = "@typescript-eslint/experimental-utils";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.22.0.tgz";
-        sha512 = "xJXHHl6TuAxB5AWiVrGhvbGL8/hbiCQ8FiWwObO3r0fnvBdrbWEDy1hlvGQOAWc6qsCWuWMKdVWlLAEMpxnddg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.0.tgz";
+        sha512 = "TH2FO2rdDm7AWfAVRB5RSlbUhWxGVuxPNzGT7W65zVfl8H/WeXTk1e69IrcEVsBslrQSTDKQSaJD89hwKrhdkw==";
       };
     };
     "@typescript-eslint/parser-3.10.1" = {
@@ -7267,22 +7456,22 @@ let
         sha512 = "Ug1RcWcrJP02hmtaXVS3axPPTTPnZjupqhgj+NnZ6BCkwSImWk/283347+x9wN+lqOdK9Eo3vsyiyDHgsmiEJw==";
       };
     };
-    "@typescript-eslint/parser-4.22.0" = {
+    "@typescript-eslint/parser-4.26.0" = {
       name = "_at_typescript-eslint_slash_parser";
       packageName = "@typescript-eslint/parser";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.22.0.tgz";
-        sha512 = "z/bGdBJJZJN76nvAY9DkJANYgK3nlRstRRi74WHm3jjgf2I8AglrSY+6l7ogxOmn55YJ6oKZCLLy+6PW70z15Q==";
+        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.26.0.tgz";
+        sha512 = "b4jekVJG9FfmjUfmM4VoOItQhPlnt6MPOBUL0AQbiTmm+SSpSdhHYlwayOm4IW9KLI/4/cRKtQCmDl1oE2OlPg==";
       };
     };
-    "@typescript-eslint/scope-manager-4.22.0" = {
+    "@typescript-eslint/scope-manager-4.26.0" = {
       name = "_at_typescript-eslint_slash_scope-manager";
       packageName = "@typescript-eslint/scope-manager";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.22.0.tgz";
-        sha512 = "OcCO7LTdk6ukawUM40wo61WdeoA7NM/zaoq1/2cs13M7GyiF+T4rxuA4xM+6LeHWjWbss7hkGXjFDRcKD4O04Q==";
+        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz";
+        sha512 = "G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==";
       };
     };
     "@typescript-eslint/types-3.10.1" = {
@@ -7294,22 +7483,13 @@ let
         sha512 = "+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==";
       };
     };
-    "@typescript-eslint/types-4.22.0" = {
+    "@typescript-eslint/types-4.26.0" = {
       name = "_at_typescript-eslint_slash_types";
       packageName = "@typescript-eslint/types";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.22.0.tgz";
-        sha512 = "sW/BiXmmyMqDPO2kpOhSy2Py5w6KvRRsKZnV0c4+0nr4GIcedJwXAq+RHNK4lLVEZAJYFltnnk1tJSlbeS9lYA==";
-      };
-    };
-    "@typescript-eslint/typescript-estree-2.34.0" = {
-      name = "_at_typescript-eslint_slash_typescript-estree";
-      packageName = "@typescript-eslint/typescript-estree";
-      version = "2.34.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz";
-        sha512 = "OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz";
+        sha512 = "rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==";
       };
     };
     "@typescript-eslint/typescript-estree-3.10.1" = {
@@ -7321,13 +7501,13 @@ let
         sha512 = "QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==";
       };
     };
-    "@typescript-eslint/typescript-estree-4.22.0" = {
+    "@typescript-eslint/typescript-estree-4.26.0" = {
       name = "_at_typescript-eslint_slash_typescript-estree";
       packageName = "@typescript-eslint/typescript-estree";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.22.0.tgz";
-        sha512 = "TkIFeu5JEeSs5ze/4NID+PIcVjgoU3cUQUIZnH3Sb1cEn1lBo7StSV5bwPuJQuoxKXlzAObjYTilOEKRuhR5yg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz";
+        sha512 = "GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg==";
       };
     };
     "@typescript-eslint/visitor-keys-3.10.1" = {
@@ -7339,13 +7519,13 @@ let
         sha512 = "9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==";
       };
     };
-    "@typescript-eslint/visitor-keys-4.22.0" = {
+    "@typescript-eslint/visitor-keys-4.26.0" = {
       name = "_at_typescript-eslint_slash_visitor-keys";
       packageName = "@typescript-eslint/visitor-keys";
-      version = "4.22.0";
+      version = "4.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.22.0.tgz";
-        sha512 = "nnMu4F+s4o0sll6cBSsTeVsT4cwxB7zECK3dFxzEjPBii9xLpq4yqqsy/FU5zMfan6G60DKZSCXAa3sHJZrcYw==";
+        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz";
+        sha512 = "cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==";
       };
     };
     "@uifabric/foundation-7.9.26" = {
@@ -7447,40 +7627,40 @@ let
         sha1 = "c585c0bdb94210198945c6597e4fe23d6e63e084";
       };
     };
-    "@vue/cli-shared-utils-4.5.12" = {
+    "@vue/cli-shared-utils-4.5.13" = {
       name = "_at_vue_slash_cli-shared-utils";
       packageName = "@vue/cli-shared-utils";
-      version = "4.5.12";
+      version = "4.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.12.tgz";
-        sha512 = "qnIQPJ4XckMoqYh9fJ0Y91QKMIb4Hiibrm9+k4E15QHpk5RaokuOpf10SsOr2NLPCXSWsHOLo3hduZSwHPGY/Q==";
+        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.13.tgz";
+        sha512 = "HpnOrkLg42RFUsQGMJv26oTG3J3FmKtO2WSRhKIIL+1ok3w9OjGCtA3nMMXN27f9eX14TqO64M36DaiSZ1fSiw==";
       };
     };
-    "@vue/cli-ui-4.5.12" = {
+    "@vue/cli-ui-4.5.13" = {
       name = "_at_vue_slash_cli-ui";
       packageName = "@vue/cli-ui";
-      version = "4.5.12";
+      version = "4.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-4.5.12.tgz";
-        sha512 = "TeP4ujkrUF3/l92R7fAIl6SbTyEw5CbrMpQggctgKrtOtMWorSGhWm17vGtP0C3PoZqzniOzDC7cdO83PL4n+g==";
+        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-4.5.13.tgz";
+        sha512 = "kXsmK+KAX9A2ribCJ+JuFcJ9ICEKluWuFtJEwUMOvo85O/l5UNupA7XoCrXeHoItdVtw32hAOv+bEV+KmyPyuQ==";
       };
     };
-    "@vue/cli-ui-addon-webpack-4.5.12" = {
+    "@vue/cli-ui-addon-webpack-4.5.13" = {
       name = "_at_vue_slash_cli-ui-addon-webpack";
       packageName = "@vue/cli-ui-addon-webpack";
-      version = "4.5.12";
+      version = "4.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-4.5.12.tgz";
-        sha512 = "sPAElJL00koP6BxUSGj5wntH96+IBuhLpu+0YPUYpIMeT/e/Hip/HnsjBzeiv88CvGQKomsjykPQRi26kR/Tjw==";
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-4.5.13.tgz";
+        sha512 = "mtk174vPRza0aMqMvx80U/BBmprlOq8ngHr5v3+MYIC1tqzB7co5fCJvyGI/QJ4DjO6O0MaaTGBsxOp/YsqRaQ==";
       };
     };
-    "@vue/cli-ui-addon-widgets-4.5.12" = {
+    "@vue/cli-ui-addon-widgets-4.5.13" = {
       name = "_at_vue_slash_cli-ui-addon-widgets";
       packageName = "@vue/cli-ui-addon-widgets";
-      version = "4.5.12";
+      version = "4.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui-addon-widgets/-/cli-ui-addon-widgets-4.5.12.tgz";
-        sha512 = "GIh+ETKezlmEWmZ/MxKuuJqdfSgYk8DlnIsMnNpbUcdxhHZFbkV2mv/0UoQaH2y0BQhBXBOt9TBJ9j4OeN3DwA==";
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-widgets/-/cli-ui-addon-widgets-4.5.13.tgz";
+        sha512 = "B6PedV/H2kcGEAgnqncwjHe3E8fqUNXCLv1BsrNwkHHWQJXkDN7dFeuEB4oaucBOVbjhH7KGLJ6JAiXPE3S7xA==";
       };
     };
     "@vue/compiler-core-3.0.11" = {
@@ -8005,31 +8185,31 @@ let
         sha512 = "2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==";
       };
     };
-    "@webpack-cli/configtest-1.0.2" = {
+    "@webpack-cli/configtest-1.0.3" = {
       name = "_at_webpack-cli_slash_configtest";
       packageName = "@webpack-cli/configtest";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.2.tgz";
-        sha512 = "3OBzV2fBGZ5TBfdW50cha1lHDVf9vlvRXnjpVbJBa20pSZQaSkMJZiwA8V2vD9ogyeXn8nU5s5A6mHyf5jhMzA==";
+        url = "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz";
+        sha512 = "WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==";
       };
     };
-    "@webpack-cli/info-1.2.3" = {
+    "@webpack-cli/info-1.2.4" = {
       name = "_at_webpack-cli_slash_info";
       packageName = "@webpack-cli/info";
-      version = "1.2.3";
+      version = "1.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.3.tgz";
-        sha512 = "lLek3/T7u40lTqzCGpC6CAbY6+vXhdhmwFRxZLMnRm6/sIF/7qMpT8MocXCRQfz0JAh63wpbXLMnsQ5162WS7Q==";
+        url = "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz";
+        sha512 = "ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==";
       };
     };
-    "@webpack-cli/serve-1.3.1" = {
+    "@webpack-cli/serve-1.4.0" = {
       name = "_at_webpack-cli_slash_serve";
       packageName = "@webpack-cli/serve";
-      version = "1.3.1";
+      version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.1.tgz";
-        sha512 = "0qXvpeYO6vaNoRBI52/UsbcaBydJCggoBBnIo/ovQQdn6fug0BgwsjorV1hVS7fMqGVTZGcVxv8334gjmbj5hw==";
+        url = "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz";
+        sha512 = "xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==";
       };
     };
     "@wry/equality-0.1.11" = {
@@ -8239,15 +8419,6 @@ let
         sha512 = "h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==";
       };
     };
-    "abortcontroller-polyfill-1.7.1" = {
-      name = "abortcontroller-polyfill";
-      packageName = "abortcontroller-polyfill";
-      version = "1.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.1.tgz";
-        sha512 = "yml9NiDEH4M4p0G4AcPkg8AAa4mF3nfYF28VQxaokpO67j9H7gWgmsVWJ/f1Rn+PzsnDYvzJzWIQzCqDKRvWlA==";
-      };
-    };
     "absolute-0.0.1" = {
       name = "absolute";
       packageName = "absolute";
@@ -8374,13 +8545,13 @@ let
         sha512 = "nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==";
       };
     };
-    "acorn-8.1.1" = {
+    "acorn-8.3.0" = {
       name = "acorn";
       packageName = "acorn";
-      version = "8.1.1";
+      version = "8.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-8.1.1.tgz";
-        sha512 = "xYiIVjNuqtKXMxlRMDc6mZUhXehod4a3gbZ1qRlM7icK4EbxUFNLhWoPblCvFtB2Y9CIqHP3CF/rdxLItaQv8g==";
+        url = "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz";
+        sha512 = "tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==";
       };
     };
     "acorn-globals-1.0.9" = {
@@ -8518,22 +8689,22 @@ let
         sha1 = "6a7990437ca736d5e1288db92bd3266d5f5cb2aa";
       };
     };
-    "addons-linter-2.21.0" = {
+    "addons-linter-3.2.0" = {
       name = "addons-linter";
       packageName = "addons-linter";
-      version = "2.21.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-2.21.0.tgz";
-        sha512 = "1XfqeVbvaEpjRlWJq/Ti0W6bH3RszaIDPeKl+4ZmXCx+C8ovRqy4CJmitqNffLr+2KpY4h5ei2eRygbvJYDyrw==";
+        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-3.2.0.tgz";
+        sha512 = "b6oViLOBgXWsld5L3DJiJSt77DYjVrk2Yam2/gD5e2bsj5xfNvavugwhlJP/MIF0j5yetYT/XFQDXY1Hs0flOA==";
       };
     };
-    "addons-scanner-utils-4.2.0" = {
+    "addons-scanner-utils-4.4.0" = {
       name = "addons-scanner-utils";
       packageName = "addons-scanner-utils";
-      version = "4.2.0";
+      version = "4.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/addons-scanner-utils/-/addons-scanner-utils-4.2.0.tgz";
-        sha512 = "VKLYNlKg2RCMvmOKmbWlu14hjdyk2vcTHscQGmDlnHfWcf6fAb8E7vY9/ajWdLykVVKZEUiGOoD5EIkIp1FyUA==";
+        url = "https://registry.npmjs.org/addons-scanner-utils/-/addons-scanner-utils-4.4.0.tgz";
+        sha512 = "fEUGQIqLYeLl5cV6FFSHU+XFlOYETXqm8jxmYGsVayjZaAqWEkIjTXNu4+pDEiqIkrqjPYP2izjrnhBpHRsyog==";
       };
     };
     "addr-to-ip-port-1.5.1" = {
@@ -8581,13 +8752,13 @@ let
         sha1 = "09c5cddd8d503b9fe5f76e0b8dc5c70a8f193e34";
       };
     };
-    "adverb-where-0.2.2" = {
+    "adverb-where-0.2.5" = {
       name = "adverb-where";
       packageName = "adverb-where";
-      version = "0.2.2";
+      version = "0.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/adverb-where/-/adverb-where-0.2.2.tgz";
-        sha512 = "hZPUFSgljaJnzQQXqc4GCEVSxmyhBkLgf/DyeW7F068PdRE9PervS4LmftJWWSPfTpaEhpJebx3eP7D9slBjSw==";
+        url = "https://registry.npmjs.org/adverb-where/-/adverb-where-0.2.5.tgz";
+        sha512 = "JiQe2U1UR8l10jPrXv/PmlDhOLZpsxqjvTp+k6Dm5wYDUULdMZytDRmovkXU8X6V9o0sg0FBdetv3VXHAZZK5Q==";
       };
     };
     "after-0.8.1" = {
@@ -8653,6 +8824,15 @@ let
         sha512 = "4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==";
       };
     };
+    "aglfn-1.0.2" = {
+      name = "aglfn";
+      packageName = "aglfn";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aglfn/-/aglfn-1.0.2.tgz";
+        sha512 = "HUvXd7sNFa1aHtYgJnln2jPwzq7UAAOXhYH/+AY6BMdfXxprMxG8IrczlZn6MjjIWpYhpKR5mHwDWTgehZKO4g==";
+      };
+    };
     "airplay-js-0.2.16" = {
       name = "airplay-js";
       packageName = "airplay-js";
@@ -8725,22 +8905,22 @@ let
         sha512 = "LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==";
       };
     };
-    "ajv-7.2.4" = {
+    "ajv-8.2.0" = {
       name = "ajv";
       packageName = "ajv";
-      version = "7.2.4";
+      version = "8.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-7.2.4.tgz";
-        sha512 = "nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==";
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.2.0.tgz";
+        sha512 = "WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA==";
       };
     };
-    "ajv-8.1.0" = {
+    "ajv-8.5.0" = {
       name = "ajv";
       packageName = "ajv";
-      version = "8.1.0";
+      version = "8.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-8.1.0.tgz";
-        sha512 = "B/Sk2Ix7A36fs/ZkuGLIR86EdjbgR6fsAcbx9lOP/QBSXujDNbVmIS/U4Itz5k8fPFDeVZl/zQ/gJW4Jrq6XjQ==";
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.5.0.tgz";
+        sha512 = "Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==";
       };
     };
     "ajv-errors-1.0.1" = {
@@ -8752,13 +8932,22 @@ let
         sha512 = "DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==";
       };
     };
-    "ajv-formats-1.6.1" = {
+    "ajv-formats-2.0.2" = {
       name = "ajv-formats";
       packageName = "ajv-formats";
-      version = "1.6.1";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv-formats/-/ajv-formats-1.6.1.tgz";
-        sha512 = "4CjkH20If1lhR5CGtqkrVg3bbOtFEG80X9v6jDOIUhbzzbB+UzPBGy8GQhUNVZ0yvMHdMpawCOcy5ydGMsagGQ==";
+        url = "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.0.2.tgz";
+        sha512 = "Brah4Uo5/U8v76c6euTwtjVFFaVishwnJrQBYpev1JRh4vjA1F4HY3UzQez41YUCszUCXKagG8v6eVRBHV1gkw==";
+      };
+    };
+    "ajv-formats-2.1.0" = {
+      name = "ajv-formats";
+      packageName = "ajv-formats";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.0.tgz";
+        sha512 = "USH2jBb+C/hIpwD2iRjp0pe0k+MvzG0mlSn/FIdCgQhUb9ALPRjt2KIQdfZDS9r0ZIeUAg7gOu9KL0PFqGqr5Q==";
       };
     };
     "ajv-keywords-1.5.1" = {
@@ -9157,13 +9346,13 @@ let
         sha1 = "fd753efa4beada0eac99981bc52a3f6ff019deb7";
       };
     };
-    "ansi-to-html-0.6.14" = {
+    "ansi-to-html-0.6.15" = {
       name = "ansi-to-html";
       packageName = "ansi-to-html";
-      version = "0.6.14";
+      version = "0.6.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.14.tgz";
-        sha512 = "7ZslfB1+EnFSDO5Ju+ue5Y6It19DRnZXWv8jrGHgIlPna5Mh4jz7BV5jCbQneXNFurQcKoolaaAjHtgSBfOIuA==";
+        url = "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.15.tgz";
+        sha512 = "28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ==";
       };
     };
     "ansi-wrap-0.1.0" = {
@@ -9274,40 +9463,31 @@ let
         sha512 = "sbLEIMQrkV7RkIruqTPXxeCMkAAycv4yzTkBzRgOR1BrR5UB7qZtupqxkersTJSf0HZ3sbaNRrNV80TnnM7cUw==";
       };
     };
-    "apollo-cache-control-0.12.0" = {
+    "apollo-cache-control-0.14.0" = {
       name = "apollo-cache-control";
       packageName = "apollo-cache-control";
-      version = "0.12.0";
+      version = "0.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.12.0.tgz";
-        sha512 = "kClF5rfAm159Nboul1LxA+l58Tjz0M8L1GUknEMpZt0UHhILLAn3BfcG3ToX4TbNoR9M57kKMUcbPWLdy3Up7w==";
+        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.14.0.tgz";
+        sha512 = "qN4BCq90egQrgNnTRMUHikLZZAprf3gbm8rC5Vwmc6ZdLolQ7bFsa769Hqi6Tq/lS31KLsXBLTOsRbfPHph12w==";
       };
     };
-    "apollo-datasource-0.8.0" = {
+    "apollo-datasource-0.9.0" = {
       name = "apollo-datasource";
       packageName = "apollo-datasource";
-      version = "0.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.8.0.tgz";
-        sha512 = "gXgsGVLuejLc138z/2jUjPAzadDQxWbcLJyBgaQsg5BaXJNkv5uW/NjiSPk00cK51hyZrb0Xx8a+L+wPk2qIBA==";
-      };
-    };
-    "apollo-env-0.6.6" = {
-      name = "apollo-env";
-      packageName = "apollo-env";
-      version = "0.6.6";
+      version = "0.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-env/-/apollo-env-0.6.6.tgz";
-        sha512 = "hXI9PjJtzmD34XviBU+4sPMOxnifYrHVmxpjykqI/dUD2G3yTiuRaiQqwRwB2RCdwC1Ug/jBfoQ/NHDTnnjndQ==";
+        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.9.0.tgz";
+        sha512 = "y8H99NExU1Sk4TvcaUxTdzfq2SZo6uSj5dyh75XSQvbpH6gdAXIW9MaBcvlNC7n0cVPsidHmOcHOWxJ/pTXGjA==";
       };
     };
-    "apollo-graphql-0.6.1" = {
+    "apollo-graphql-0.9.3" = {
       name = "apollo-graphql";
       packageName = "apollo-graphql";
-      version = "0.6.1";
+      version = "0.9.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.6.1.tgz";
-        sha512 = "ZRXAV+k+hboCVS+FW86FW/QgnDR7gm/xMUwJPGXEbV53OLGuQQdIT0NCYK7AzzVkCfsbb7NJ3mmEclkZY9uuxQ==";
+        url = "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.9.3.tgz";
+        sha512 = "rcAl2E841Iko4kSzj4Pt3PRBitmyq1MvoEmpl04TQSpGnoVgl1E/ZXuLBYxMTSnEAm7umn2IsoY+c6Ll9U/10A==";
       };
     };
     "apollo-link-1.2.1" = {
@@ -9328,40 +9508,40 @@ let
         sha512 = "p67CMEFP7kOG1JZ0ZkYZwRDa369w5PIjtMjvrQd/HnIV8FRsHRqLqK+oAZQnFa1DDdZtOtHTi+aMIW6EatC2jg==";
       };
     };
-    "apollo-reporting-protobuf-0.6.2" = {
+    "apollo-reporting-protobuf-0.8.0" = {
       name = "apollo-reporting-protobuf";
       packageName = "apollo-reporting-protobuf";
-      version = "0.6.2";
+      version = "0.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-reporting-protobuf/-/apollo-reporting-protobuf-0.6.2.tgz";
-        sha512 = "WJTJxLM+MRHNUxt1RTl4zD0HrLdH44F2mDzMweBj1yHL0kSt8I1WwoiF/wiGVSpnG48LZrBegCaOJeuVbJTbtw==";
+        url = "https://registry.npmjs.org/apollo-reporting-protobuf/-/apollo-reporting-protobuf-0.8.0.tgz";
+        sha512 = "B3XmnkH6Y458iV6OsA7AhfwvTgeZnFq9nPVjbxmLKnvfkEl8hYADtz724uPa0WeBiD7DSFcnLtqg9yGmCkBohg==";
       };
     };
-    "apollo-server-caching-0.6.0" = {
+    "apollo-server-caching-0.7.0" = {
       name = "apollo-server-caching";
       packageName = "apollo-server-caching";
-      version = "0.6.0";
+      version = "0.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.6.0.tgz";
-        sha512 = "SfjKaccrhRzUQ8TAke9FrYppp4pZV3Rp8KCs+4Ox3kGtbco68acRPJkiYYtSVc4idR8XNAUOOVfAEZVNHdZQKQ==";
+        url = "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.7.0.tgz";
+        sha512 = "MsVCuf/2FxuTFVhGLK13B+TZH9tBd2qkyoXKKILIiGcZ5CDUEBO14vIV63aNkMkS1xxvK2U4wBcuuNj/VH2Mkw==";
       };
     };
-    "apollo-server-core-2.23.0" = {
+    "apollo-server-core-2.25.0" = {
       name = "apollo-server-core";
       packageName = "apollo-server-core";
-      version = "2.23.0";
+      version = "2.25.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.23.0.tgz";
-        sha512 = "3/a4LPgRADc8CdT/nRh7W0CAqQv3Q4DJvakWQgKqGSqDEb/0u4IBynYjlQKuPBi4wwKdeK2Hb1wiQLl+zu4StQ==";
+        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.25.0.tgz";
+        sha512 = "LqDmY+R5dcb6zj/RgM7P8NnURV2XdQFIF4rY7g80hD9mc2WSCKHF6eH+lHG0sFPW7f8iBr+lJ4LyETuWEVF0hg==";
       };
     };
-    "apollo-server-env-3.0.0" = {
+    "apollo-server-env-3.1.0" = {
       name = "apollo-server-env";
       packageName = "apollo-server-env";
-      version = "3.0.0";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-3.0.0.tgz";
-        sha512 = "tPSN+VttnPsoQAl/SBVUpGbLA97MXG990XIwq6YUnJyAixrrsjW1xYG7RlaOqetxm80y5mBZKLrRDiiSsW/vog==";
+        url = "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-3.1.0.tgz";
+        sha512 = "iGdZgEOAuVop3vb0F2J3+kaBVi4caMoxefHosxmgzAbbSpvWehB8Y1QiSyyMeouYC38XNVk5wnZl+jdGSsWsIQ==";
       };
     };
     "apollo-server-errors-2.5.0" = {
@@ -9373,40 +9553,40 @@ let
         sha512 = "lO5oTjgiC3vlVg2RKr3RiXIIQ5pGXBFxYGGUkKDhTud3jMIhs+gel8L8zsEjKaKxkjHhCQAA/bcEfYiKkGQIvA==";
       };
     };
-    "apollo-server-express-2.23.0" = {
+    "apollo-server-express-2.25.0" = {
       name = "apollo-server-express";
       packageName = "apollo-server-express";
-      version = "2.23.0";
+      version = "2.25.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.23.0.tgz";
-        sha512 = "tzil7c51ODH0rT1Bc5VMksdWzHrYGavdLtnDz4M0ePiTm18Gc81HD7X/4DPczorerEpfwwkf2YlADtPQfRSxlw==";
+        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.25.0.tgz";
+        sha512 = "FCTisD+VB1LCcTjjhKvQZ/dkly83KVlioFMgcPjW1X/kzCznRT3aQoVn9bQHlzQr7NnpwFseb4Rhd2KKD4wKEA==";
       };
     };
-    "apollo-server-plugin-base-0.11.0" = {
+    "apollo-server-plugin-base-0.13.0" = {
       name = "apollo-server-plugin-base";
       packageName = "apollo-server-plugin-base";
-      version = "0.11.0";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.11.0.tgz";
-        sha512 = "Du68x0XCyQ6EWlgoL9Z+1s8fJfXgY131QbKP7ao617StQPzwB0aGCwxBDfcMt1A75VXf4TkvV1rdUH5YeJFlhQ==";
+        url = "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.13.0.tgz";
+        sha512 = "L3TMmq2YE6BU6I4Tmgygmd0W55L+6XfD9137k+cWEBFu50vRY4Re+d+fL5WuPkk5xSPKd/PIaqzidu5V/zz8Kg==";
       };
     };
-    "apollo-server-types-0.7.0" = {
+    "apollo-server-types-0.9.0" = {
       name = "apollo-server-types";
       packageName = "apollo-server-types";
-      version = "0.7.0";
+      version = "0.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-0.7.0.tgz";
-        sha512 = "pJ6ri2N4xJ+e2PUUPHeCNpMDzHUagJyn0DDZGQmXDz6aoMlSd4B2KUvK81hHyHkw3wHk9clgcpfM9hKqbfZweA==";
+        url = "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-0.9.0.tgz";
+        sha512 = "qk9tg4Imwpk732JJHBkhW0jzfG0nFsLqK2DY6UhvJf7jLnRePYsPxWfPiNkxni27pLE2tiNlCwoDFSeWqpZyBg==";
       };
     };
-    "apollo-tracing-0.13.0" = {
+    "apollo-tracing-0.15.0" = {
       name = "apollo-tracing";
       packageName = "apollo-tracing";
-      version = "0.13.0";
+      version = "0.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.13.0.tgz";
-        sha512 = "28z4T+XfLQ6t696usU0nTFDxVN8BfF3o74d2p/zsT4eu1OuoyoDOEmVJqdInmVRpyTJK0tDEOjkIuDJJHZftog==";
+        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.15.0.tgz";
+        sha512 = "UP0fztFvaZPHDhIB/J+qGuy6hWO4If069MGC98qVs0I8FICIGu4/8ykpX3X3K6RtaQ56EDAWKykCxFv4ScxMeA==";
       };
     };
     "apollo-utilities-1.3.4" = {
@@ -9526,24 +9706,6 @@ let
         sha512 = "5Hxxcig7gw5Jod/8Gq0OneVgLYET+oNHcxgWItq4TbhOzRLKNAFUb9edAftiMKXvXfCB0vbGrJdZDNq0dWMsxg==";
       };
     };
-    "archiver-4.0.2" = {
-      name = "archiver";
-      packageName = "archiver";
-      version = "4.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/archiver/-/archiver-4.0.2.tgz";
-        sha512 = "B9IZjlGwaxF33UN4oPbfBkyA4V1SxNLeIhR1qY8sRXSsbdUkEHrrOvwlYFPx+8uQeCe9M+FG6KgO+imDmQ79CQ==";
-      };
-    };
-    "archiver-5.2.0" = {
-      name = "archiver";
-      packageName = "archiver";
-      version = "5.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/archiver/-/archiver-5.2.0.tgz";
-        sha512 = "QEAKlgQuAtUxKeZB9w5/ggKXh21bZS+dzzuQ0RPBC20qtDCbTyzqmisoeJP46MP39fg4B4IcyvR+yeyEBdblsQ==";
-      };
-    };
     "archiver-5.3.0" = {
       name = "archiver";
       packageName = "archiver";
@@ -9625,15 +9787,6 @@ let
         sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
       };
     };
-    "aria-query-4.2.2" = {
-      name = "aria-query";
-      packageName = "aria-query";
-      version = "4.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz";
-        sha512 = "o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==";
-      };
-    };
     "aribts-1.3.5" = {
       name = "aribts";
       packageName = "aribts";
@@ -9796,15 +9949,6 @@ let
         sha1 = "7da8cf2e26628ed732803581fd21f67cacd2eeec";
       };
     };
-    "array-filter-1.0.0" = {
-      name = "array-filter";
-      packageName = "array-filter";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz";
-        sha1 = "baf79e62e6ef4c2a4c0b831232daffec251f9d83";
-      };
-    };
     "array-find-0.1.1" = {
       name = "array-find";
       packageName = "array-find";
@@ -10048,24 +10192,6 @@ let
         sha512 = "mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==";
       };
     };
-    "array.prototype.flat-1.2.4" = {
-      name = "array.prototype.flat";
-      packageName = "array.prototype.flat";
-      version = "1.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz";
-        sha512 = "4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==";
-      };
-    };
-    "array.prototype.flatmap-1.2.4" = {
-      name = "array.prototype.flatmap";
-      packageName = "array.prototype.flatmap";
-      version = "1.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz";
-        sha512 = "r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==";
-      };
-    };
     "arraybuffer.slice-0.0.6" = {
       name = "arraybuffer.slice";
       packageName = "arraybuffer.slice";
@@ -10336,15 +10462,6 @@ let
         sha1 = "102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9";
       };
     };
-    "ast-types-flow-0.0.7" = {
-      name = "ast-types-flow";
-      packageName = "ast-types-flow";
-      version = "0.0.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz";
-        sha1 = "f70b735c6bca1a5c9c22d982c3e39e7feba3bdad";
-      };
-    };
     "astral-regex-1.0.0" = {
       name = "astral-regex";
       packageName = "astral-regex";
@@ -10507,13 +10624,13 @@ let
         sha512 = "gpuo6xOyF4D5DE5WvyqZdPA3NGhiT6Qf07l7DCB0wwDEsLvDIbCr6j9S5aj5Ch96dLace5tXVzWBZkxU/c5ohw==";
       };
     };
-    "async-lock-1.2.8" = {
+    "async-lock-1.3.0" = {
       name = "async-lock";
       packageName = "async-lock";
-      version = "1.2.8";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/async-lock/-/async-lock-1.2.8.tgz";
-        sha512 = "G+26B2jc0Gw0EG/WN2M6IczuGepBsfR1+DtqLnyFSH4p2C668qkOCtEkGNVEaaNAVlYwEMazy1+/jnLxltBkIQ==";
+        url = "https://registry.npmjs.org/async-lock/-/async-lock-1.3.0.tgz";
+        sha512 = "8A7SkiisnEgME2zEedtDYPxUPzdv3x//E7n5IFktPAtMYSEAV7eNJF0rMwrVyUFj6d/8rgajLantbjcNRQYXIg==";
       };
     };
     "async-mutex-0.1.4" = {
@@ -10642,15 +10759,6 @@ let
         sha512 = "Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==";
       };
     };
-    "atob-lite-2.0.0" = {
-      name = "atob-lite";
-      packageName = "atob-lite";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz";
-        sha1 = "0fef5ad46f1bd7a8502c65727f0367d5ee43d696";
-      };
-    };
     "atomic-batcher-1.0.2" = {
       name = "atomic-batcher";
       packageName = "atomic-batcher";
@@ -10678,6 +10786,15 @@ let
         sha512 = "Eh6pW+fRC2/1RxPq3hO8+PkZKv+wujzKky2MP/n69eC8yMkbNFfuEb/riZHqf13M7gr6Hvglpk/kISgBSBb6bQ==";
       };
     };
+    "atomic-file-rw-0.2.2" = {
+      name = "atomic-file-rw";
+      packageName = "atomic-file-rw";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atomic-file-rw/-/atomic-file-rw-0.2.2.tgz";
+        sha512 = "XZOcMIc32aIDxKFJGpYIPZ7H0p+Zmu3xAYyKDMmRgSQMNR97E8byl4tQa9vkYv4x8dNcYRQV8tw+KvtiKua0xQ==";
+      };
+    };
     "atomic-sleep-1.0.0" = {
       name = "atomic-sleep";
       packageName = "atomic-sleep";
@@ -10696,15 +10813,6 @@ let
         sha512 = "Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==";
       };
     };
-    "atomically-universal-0.1.1" = {
-      name = "atomically-universal";
-      packageName = "atomically-universal";
-      version = "0.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/atomically-universal/-/atomically-universal-0.1.1.tgz";
-        sha512 = "0bqmz+wKlA9hIiH/C4R3K8dpsVV6mM/X76QZ70LMHW0XzCDXzxdWD5gfkmRXxTM5txlbYE/06iz0IziohUQVzw==";
-      };
-    };
     "attach-ware-1.1.1" = {
       name = "attach-ware";
       packageName = "attach-ware";
@@ -10759,13 +10867,13 @@ let
         sha512 = "XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==";
       };
     };
-    "available-typed-arrays-1.0.2" = {
+    "available-typed-arrays-1.0.4" = {
       name = "available-typed-arrays";
       packageName = "available-typed-arrays";
-      version = "1.0.2";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz";
-        sha512 = "XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==";
+        url = "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz";
+        sha512 = "SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==";
       };
     };
     "await-semaphore-0.1.3" = {
@@ -10795,13 +10903,13 @@ let
         sha512 = "+KBkqH7t/XE91Fqn8eyJeNIWsnhSWL8bSUqFD7TfE3FN07MTlC0nprGYp+2WfcYNz5i8Bus1vY2DHNVhtTImnw==";
       };
     };
-    "aws-sdk-2.888.0" = {
+    "aws-sdk-2.918.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.888.0";
+      version = "2.918.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.888.0.tgz";
-        sha512 = "9Rg14eneXnrs5Wh5FL42qGEXf7QaqaV/gMHU9SfvAA0SEM390QnwVjCSKF5YAReWjSuJriKJTDiodMI39J+Nrg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.918.0.tgz";
+        sha512 = "ZjWanOA1Zo664EyWLCnbUlkwCjoRPmSIMx529W4gk1418qo3oCEcvUy1HeibGGIClYnZZ7J4FMQvVDm2+JtHLQ==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -10840,15 +10948,6 @@ let
         sha512 = "wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==";
       };
     };
-    "axe-core-4.1.4" = {
-      name = "axe-core";
-      packageName = "axe-core";
-      version = "4.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/axe-core/-/axe-core-4.1.4.tgz";
-        sha512 = "Pdgfv6iP0gNx9ejRGa3zE7Xgkj/iclXqLfe7BnatdZz0QnLZ3jrRHUVH8wNSdN68w05Sk3ShGTb3ydktMTooig==";
-      };
-    };
     "axios-0.19.2" = {
       name = "axios";
       packageName = "axios";
@@ -10876,22 +10975,13 @@ let
         sha512 = "NFCoNIHq8lYkJa6ku4m+V1837TP6lCa7n79Iuf8/AqATAHYB0ISaAS1eyIenDOfHOLtym34W65Sjke2xjg2fsA==";
       };
     };
-    "axobject-query-2.2.0" = {
-      name = "axobject-query";
-      packageName = "axobject-query";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz";
-        sha512 = "Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==";
-      };
-    };
-    "azure-devops-node-api-7.2.0" = {
+    "azure-devops-node-api-10.2.2" = {
       name = "azure-devops-node-api";
       packageName = "azure-devops-node-api";
-      version = "7.2.0";
+      version = "10.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-7.2.0.tgz";
-        sha512 = "pMfGJ6gAQ7LRKTHgiRF+8iaUUeGAI0c8puLaqHLc7B8AR7W6GJLozK9RFeUHFjEGybC9/EB3r67WPd7e46zQ8w==";
+        url = "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-10.2.2.tgz";
+        sha512 = "4TVv2X7oNStT0vLaEfExmy3J4/CzfuXolEcQl/BRUmvGySqKStTG2O55/hUQ0kM7UJlZBLgniM0SBq4d/WkKow==";
       };
     };
     "b24.js-1.0.3" = {
@@ -10930,6 +11020,15 @@ let
         sha512 = "z3U7eMY6r/3f3/JB9mTsLjyxrv0Yb1zb8PCWCLpguxfCzBIZUwy23R1t/XKewP+8mEN2Ck8Dtr4q20z6ce6SoA==";
       };
     };
+    "babel-eslint-10.1.0" = {
+      name = "babel-eslint";
+      packageName = "babel-eslint";
+      version = "10.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz";
+        sha512 = "ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==";
+      };
+    };
     "babel-extract-comments-1.0.0" = {
       name = "babel-extract-comments";
       packageName = "babel-extract-comments";
@@ -11164,31 +11263,31 @@ let
         sha1 = "1bc6f15b87f7ab1085d42b330b717657a2156500";
       };
     };
-    "babel-plugin-polyfill-corejs2-0.2.0" = {
+    "babel-plugin-polyfill-corejs2-0.2.2" = {
       name = "babel-plugin-polyfill-corejs2";
       packageName = "babel-plugin-polyfill-corejs2";
-      version = "0.2.0";
+      version = "0.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.0.tgz";
-        sha512 = "9bNwiR0dS881c5SHnzCmmGlMkJLl0OUZvxrxHo9w/iNoRuqaPjqlvBf4HrovXtQs/au5yKkpcdgfT1cC5PAZwg==";
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz";
+        sha512 = "kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==";
       };
     };
-    "babel-plugin-polyfill-corejs3-0.2.0" = {
+    "babel-plugin-polyfill-corejs3-0.2.2" = {
       name = "babel-plugin-polyfill-corejs3";
       packageName = "babel-plugin-polyfill-corejs3";
-      version = "0.2.0";
+      version = "0.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.0.tgz";
-        sha512 = "zZyi7p3BCUyzNxLx8KV61zTINkkV65zVkDAFNZmrTCRVhjo1jAS+YLvDJ9Jgd/w2tsAviCwFHReYfxO3Iql8Yg==";
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.2.tgz";
+        sha512 = "l1Cf8PKk12eEk5QP/NQ6TH8A1pee6wWDJ96WjxrMXFLHLOBFzYM4moG80HFgduVhTqAFez4alnZKEhP/bYHg0A==";
       };
     };
-    "babel-plugin-polyfill-regenerator-0.2.0" = {
+    "babel-plugin-polyfill-regenerator-0.2.2" = {
       name = "babel-plugin-polyfill-regenerator";
       packageName = "babel-plugin-polyfill-regenerator";
-      version = "0.2.0";
+      version = "0.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.0.tgz";
-        sha512 = "J7vKbCuD2Xi/eEHxquHN14bXAW9CXtecwuLrOIDJtcZzTaPzV1VdEfoUf9AzcRBMolKUQKM9/GVojeh0hFiqMg==";
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz";
+        sha512 = "Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==";
       };
     };
     "babel-plugin-styled-components-1.12.0" = {
@@ -11389,13 +11488,13 @@ let
         sha512 = "5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==";
       };
     };
-    "babel-preset-fbjs-3.3.0" = {
+    "babel-preset-fbjs-3.4.0" = {
       name = "babel-preset-fbjs";
       packageName = "babel-preset-fbjs";
-      version = "3.3.0";
+      version = "3.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.3.0.tgz";
-        sha512 = "7QTLTCd2gwB2qGoi5epSULMHugSVgpcVt5YAeiFO9ABLrutDQzKfGwzxgZHLpugq8qMdg/DhRZDZ5CLKxBkEbw==";
+        url = "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz";
+        sha512 = "9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==";
       };
     };
     "babel-preset-jest-25.5.0" = {
@@ -11533,6 +11632,15 @@ let
         sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
       };
     };
+    "balanced-match-2.0.0" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz";
+        sha512 = "1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==";
+      };
+    };
     "base-0.11.2" = {
       name = "base";
       packageName = "base";
@@ -12001,15 +12109,6 @@ let
         sha1 = "159a49b9a9714c1fb102f2e0ed1906fab6a450f4";
       };
     };
-    "big-integer-1.6.36" = {
-      name = "big-integer";
-      packageName = "big-integer";
-      version = "1.6.36";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.36.tgz";
-        sha512 = "t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==";
-      };
-    };
     "big-integer-1.6.48" = {
       name = "big-integer";
       packageName = "big-integer";
@@ -12073,6 +12172,15 @@ let
         sha1 = "dd3a862b2fedf66fee8471320069428d0d84427a";
       };
     };
+    "bin-links-2.2.1" = {
+      name = "bin-links";
+      packageName = "bin-links";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bin-links/-/bin-links-2.2.1.tgz";
+        sha512 = "wFzVTqavpgCCYAh8SVBdnZdiQMxTkGR+T3b14CNpBXIBe2neJWaMGAZ55XWWHELJJ89dscuq0VCBqcVaIOgCMg==";
+      };
+    };
     "bin-version-2.0.0" = {
       name = "bin-version";
       packageName = "bin-version";
@@ -12145,13 +12253,13 @@ let
         sha1 = "7dbb3b210fdca082450dad2334c304af39bdc784";
       };
     };
-    "binaryextensions-2.3.0" = {
+    "binaryextensions-4.15.0" = {
       name = "binaryextensions";
       packageName = "binaryextensions";
-      version = "2.3.0";
+      version = "4.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz";
-        sha512 = "nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==";
+        url = "https://registry.npmjs.org/binaryextensions/-/binaryextensions-4.15.0.tgz";
+        sha512 = "MkUl3szxXolQ2scI1PM14WOT951KnaTNJ0eMKg7WzOI4kvSxyNo/Cygx4LOBNhwyINhAuSQpJW1rYD9aBSxGaw==";
       };
     };
     "bindings-1.2.1" = {
@@ -12244,13 +12352,22 @@ let
         sha512 = "O1htyufFTYy3EO0JkHg2CLykdXEtV2ssqw47Gq9A0WByp662xpJnMEB9m43LZjsSDjIAOozWRExlFQk2hlV1XQ==";
       };
     };
-    "bipf-1.5.0" = {
+    "bipf-1.5.1" = {
       name = "bipf";
       packageName = "bipf";
-      version = "1.5.0";
+      version = "1.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bipf/-/bipf-1.5.0.tgz";
-        sha512 = "EjpRVanEn4/Z2ilD2OeTfkWnogvxe+PZ8Gxzt7m+2xRT9rg6g1pETAdYy2vmJhNNZYX9axiV3Zf8HxuaYb0W3w==";
+        url = "https://registry.npmjs.org/bipf/-/bipf-1.5.1.tgz";
+        sha512 = "SrLwMzrpETJDiH9z12EMcqtApgcQo9XsPi+S9Aodezu53ALcGjBBQ7+C+IWbsSCBlSvNEec8sqfh3itO/j/QUw==";
+      };
+    };
+    "bit-field-1.3.6" = {
+      name = "bit-field";
+      packageName = "bit-field";
+      version = "1.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bit-field/-/bit-field-1.3.6.tgz";
+        sha512 = "gu+wXJ+saekzja7tSRygoR+M+C88U0IoVTdp0SmZj5tyDwSkWmZNhSUkBmHx2NNZcSAB0gu9g8yBd1Kn7ECVmw==";
       };
     };
     "bitcoin-core-2.3.0" = {
@@ -12784,13 +12901,13 @@ let
         sha1 = "68dff5fbe60c51eb37725ea9e3ed310dcc1e776e";
       };
     };
-    "boolean-3.0.3" = {
+    "boolean-3.1.0" = {
       name = "boolean";
       packageName = "boolean";
-      version = "3.0.3";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/boolean/-/boolean-3.0.3.tgz";
-        sha512 = "EqrTKXQX6Z3A2nRmMEIlAIfjQOgFnVO2nqZGpbcsPnYGWBwpFqzlrozU1dy+S2iqfYDLh26ef4KrgTxu9xQrxA==";
+        url = "https://registry.npmjs.org/boolean/-/boolean-3.1.0.tgz";
+        sha512 = "K6r5tvO1ykeYerI7jIyTvSFw2l6D6DzqkljGj2E2uyYAAdDo2SV4qGJIV75cHIQpTFyb6BB0BEHiDdDrFsNI+g==";
       };
     };
     "boom-2.10.1" = {
@@ -12838,6 +12955,15 @@ let
         sha1 = "b4a0a5a839a406454af0fe05a8b91a7a766a54e2";
       };
     };
+    "bottleneck-2.19.5" = {
+      name = "bottleneck";
+      packageName = "bottleneck";
+      version = "2.19.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz";
+        sha512 = "VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==";
+      };
+    };
     "boundary-1.0.1" = {
       name = "boundary";
       packageName = "boundary";
@@ -13225,13 +13351,13 @@ let
         sha512 = "HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==";
       };
     };
-    "browserslist-4.16.4" = {
+    "browserslist-4.16.6" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.16.4";
+      version = "4.16.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.16.4.tgz";
-        sha512 = "d7rCxYV8I9kj41RH8UKYnvDYCRENUlHRgyXy/Rhr/1BaeLGfiCptEdFE8MIrvGfWbBFNjVYx76SQWvNX1j+/cQ==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz";
+        sha512 = "Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==";
       };
     };
     "brq-0.1.8" = {
@@ -13315,6 +13441,15 @@ let
         sha512 = "tkrtMDxeJorn5p0KxaLXELneT8AbfZMpOFeoKYZ5qCCMMSluNuwut7pGccLC5YOJqmuk0DR774vNVQLC9sNq/A==";
       };
     };
+    "btoa-1.2.1" = {
+      name = "btoa";
+      packageName = "btoa";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz";
+        sha512 = "SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==";
+      };
+    };
     "btoa-lite-1.0.0" = {
       name = "btoa-lite";
       packageName = "btoa-lite";
@@ -13864,13 +13999,13 @@ let
         sha512 = "a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==";
       };
     };
-    "cacache-15.0.6" = {
+    "cacache-15.2.0" = {
       name = "cacache";
       packageName = "cacache";
-      version = "15.0.6";
+      version = "15.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cacache/-/cacache-15.0.6.tgz";
-        sha512 = "g1WYDMct/jzW+JdWEyjaX2zoBkZ6ZT9VpOyp2I/VMtDsNLffNat3kqPFfi1eDRSK9/SuKGyORDHcQMcPF8sQ/w==";
+        url = "https://registry.npmjs.org/cacache/-/cacache-15.2.0.tgz";
+        sha512 = "uKoJSHmnrqXgthDFx/IU6ED/5xd+NNGe+Bb+kLZy7Ku4P+BaiWEUflAKPZ7eAzsYGcsAGASJZsybXp+quEcHTw==";
       };
     };
     "cache-base-1.0.1" = {
@@ -14179,22 +14314,31 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001209" = {
+    "caniuse-lite-1.0.30001232" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001209";
+      version = "1.0.30001232";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001209.tgz";
-        sha512 = "2Ktt4OeRM7EM/JaOZjuLzPYAIqmbwQMNnYbgooT+icoRGrKOyAxA1xhlnotBD1KArRSPsuJp3TdYcZYrL7qNxA==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001232.tgz";
+        sha512 = "e4Gyp7P8vqC2qV2iHA+cJNf/yqUKOShXQOJHQt81OHxlIZl/j/j3soEA0adAQi8CPUQgvOdDENyQ5kd6a6mNSg==";
       };
     };
-    "canvas-2.7.0" = {
+    "canvas-2.8.0" = {
       name = "canvas";
       packageName = "canvas";
-      version = "2.7.0";
+      version = "2.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/canvas/-/canvas-2.7.0.tgz";
-        sha512 = "pzCxtkHb+5su5MQjTtepMDlIOtaXo277x0C0u3nMOxtkhTyQ+h2yNKhlROAaDllWgRyePAUitC08sXw26Eb6aw==";
+        url = "https://registry.npmjs.org/canvas/-/canvas-2.8.0.tgz";
+        sha512 = "gLTi17X8WY9Cf5GZ2Yns8T5lfBOcGgFehDFb+JQwDqdOoBOcECS9ZWMEAqMSVcMYwXD659J8NyzjRY/2aE+C2Q==";
+      };
+    };
+    "canvg-3.0.7" = {
+      name = "canvg";
+      packageName = "canvg";
+      version = "3.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/canvg/-/canvg-3.0.7.tgz";
+        sha512 = "4sq6iL5Q4VOXS3PL1BapiXIZItpxYyANVzsAKpTPS5oq4u3SKbGfUcbZh2gdLCQ3jWpG/y5wRkMlBBAJhXeiZA==";
       };
     };
     "caporal-1.4.0" = {
@@ -14287,13 +14431,13 @@ let
         sha1 = "a9193b1a5448b8cb9a0415bd021c8811ed7b0544";
       };
     };
-    "catharsis-0.8.11" = {
+    "catharsis-0.9.0" = {
       name = "catharsis";
       packageName = "catharsis";
-      version = "0.8.11";
+      version = "0.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz";
-        sha512 = "a+xUyMV7hD1BrDQA/3iPV7oc+6W26BgVJO05PGEoatMyIuPScQKsde6i3YorWX1qs+AZjnJ18NqdKoCtKiNh1g==";
+        url = "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz";
+        sha512 = "prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==";
       };
     };
     "caw-2.0.1" = {
@@ -14332,22 +14476,22 @@ let
         sha512 = "vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==";
       };
     };
-    "cdk8s-1.0.0-beta.11" = {
+    "cdk8s-1.0.0-beta.14" = {
       name = "cdk8s";
       packageName = "cdk8s";
-      version = "1.0.0-beta.11";
+      version = "1.0.0-beta.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.0.0-beta.11.tgz";
-        sha512 = "G6SIJSg6mxeEzWEWNY8NAn/jqysTPegV79mOQ6eYj1uyKYggyzP5MzuWt8fKmYShM5BTDadnCRajwDnku9LZeQ==";
+        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.0.0-beta.14.tgz";
+        sha512 = "NU5mZbOE3RgRX7a9zHf4AgiNcI/clqQ9vw/YixSgVe2AOiAsUXuSH2BCc3eFAZSlPSQYLxWG6mSCGY/06cy5Hw==";
       };
     };
-    "cdktf-0.2.2" = {
+    "cdktf-0.4.0" = {
       name = "cdktf";
       packageName = "cdktf";
-      version = "0.2.2";
+      version = "0.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdktf/-/cdktf-0.2.2.tgz";
-        sha512 = "SMiDV99ruSGhjBm+dj30XmtV20BKesjY75SGGB3sTcFeaqn5d1Gf8gAaG69QTm3zqI8SbYO12MDslkoX1BY5Zw==";
+        url = "https://registry.npmjs.org/cdktf/-/cdktf-0.4.0.tgz";
+        sha512 = "P6KRqGokkAVRZdT2+fXfEdQszpOXrJa/EuNZr0WPcIrfTVfjL6HNrHyuP1HWUvJRzlcbG5ZZ3+8Uk4oFS9IXvA==";
       };
     };
     "center-align-0.1.3" = {
@@ -14476,6 +14620,15 @@ let
         sha512 = "qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==";
       };
     };
+    "chalk-4.1.1" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz";
+        sha512 = "diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==";
+      };
+    };
     "chance-1.0.18" = {
       name = "chance";
       packageName = "chance";
@@ -14701,6 +14854,15 @@ let
         sha512 = "hjx1XE1M/D5pAtMgvWwE21QClmAEeGHOIDfycgmndisdNgI6PE1cGRQkMGBcsbUbmEQyWu5PJLUcAOjtQS8DWw==";
       };
     };
+    "cheerio-1.0.0-rc.9" = {
+      name = "cheerio";
+      packageName = "cheerio";
+      version = "1.0.0-rc.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz";
+        sha512 = "QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==";
+      };
+    };
     "cheerio-select-1.4.0" = {
       name = "cheerio-select";
       packageName = "cheerio-select";
@@ -14737,6 +14899,15 @@ let
         sha512 = "0UQ55f51JBkOFa+fvR76ywRzxiPwQS3Xe8oe5bZRphpv+dIMeerW5Zn5e4cUy4COJwVtJyU0R79RMnw+aCqmGA==";
       };
     };
+    "child_process-1.0.2" = {
+      name = "child_process";
+      packageName = "child_process";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/child_process/-/child_process-1.0.2.tgz";
+        sha1 = "b1f7e7fc73d25e7fd1d455adc94e143830182b5a";
+      };
+    };
     "chloride-2.4.1" = {
       name = "chloride";
       packageName = "chloride";
@@ -14827,13 +14998,13 @@ let
         sha512 = "bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==";
       };
     };
-    "chroma-js-2.1.1" = {
+    "chroma-js-2.1.2" = {
       name = "chroma-js";
       packageName = "chroma-js";
-      version = "2.1.1";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chroma-js/-/chroma-js-2.1.1.tgz";
-        sha512 = "gYc5/Dooshun2OikK7oY/hYnoEiZ0dxqRpXosEdYRYm505vU5mRsHFqIW062C9nMtr32DVErP6mlxuepo2kNkw==";
+        url = "https://registry.npmjs.org/chroma-js/-/chroma-js-2.1.2.tgz";
+        sha512 = "ri/ouYDWuxfus3UcaMxC1Tfp3IE9K5iQzxc2hSxbBRVNQFut1UuGAsZmiAf2mOUubzGJwgMSv9lHg+XqLaz1QQ==";
       };
     };
     "chrome-dgram-3.0.6" = {
@@ -14953,13 +15124,13 @@ let
         sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==";
       };
     };
-    "ci-info-3.1.1" = {
+    "ci-info-3.2.0" = {
       name = "ci-info";
       packageName = "ci-info";
-      version = "3.1.1";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ci-info/-/ci-info-3.1.1.tgz";
-        sha512 = "kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ==";
+        url = "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz";
+        sha512 = "dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==";
       };
     };
     "cint-8.2.1" = {
@@ -15826,13 +15997,13 @@ let
         sha512 = "3WQV/Fpa77nvzjUlc+0u53uIroJyyMB2Qwl++aXpAiDIsrsiAQq4uCURwdRBRX+eLkOTIAmT0L4qna3T7+2pUg==";
       };
     };
-    "codemaker-1.28.0" = {
+    "codemaker-1.30.0" = {
       name = "codemaker";
       packageName = "codemaker";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.28.0.tgz";
-        sha512 = "TlpvV3q/68cZk7aljYW6b/5EvyB4uw523xJISTATrCrQu/UTA79/mxpA2ug8uhPcJoGYcfWXH4BHVVLNIuEtrg==";
+        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.30.0.tgz";
+        sha512 = "yntR55JhhVlZTfR4CPV6IrCULovPDrk3z0yQR7/ygEtNxEOQrHhX17djJ0rVmIwCJUawv+ODTJ1ipJY9CbxJQw==";
       };
     };
     "codepage-1.4.0" = {
@@ -16339,6 +16510,15 @@ let
         sha512 = "ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==";
       };
     };
+    "commander-7.1.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz";
+        sha512 = "pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==";
+      };
+    };
     "commander-7.2.0" = {
       name = "commander";
       packageName = "commander";
@@ -16366,6 +16546,15 @@ let
         sha512 = "rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==";
       };
     };
+    "common-ancestor-path-1.0.1" = {
+      name = "common-ancestor-path";
+      packageName = "common-ancestor-path";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz";
+        sha512 = "L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==";
+      };
+    };
     "common-path-prefix-2.0.0" = {
       name = "common-path-prefix";
       packageName = "common-path-prefix";
@@ -16528,22 +16717,13 @@ let
         sha512 = "eVw6n7CnEMFzc3duyFVrQEuY1BlHR3rYsSztyG32ibGMW722i3C6IizEGMFmfMU+A+fALvBIwxN3czffTcdA+Q==";
       };
     };
-    "compress-commons-3.0.0" = {
+    "compress-commons-4.1.1" = {
       name = "compress-commons";
       packageName = "compress-commons";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/compress-commons/-/compress-commons-3.0.0.tgz";
-        sha512 = "FyDqr8TKX5/X0qo+aVfaZ+PVmNJHJeckFBlq8jZGSJOgnynhfifoyl24qaqdUdDIBe0EVTHByN6NAkqYvE/2Xg==";
-      };
-    };
-    "compress-commons-4.1.0" = {
-      name = "compress-commons";
-      packageName = "compress-commons";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.0.tgz";
-        sha512 = "ofaaLqfraD1YRTkrRKPCrGJ1pFeDG/MVCkVVV2FNGeWquSlqw5wOrwOfPQ1xF2u+blpeWASie5EubHz+vsNIgA==";
+        url = "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz";
+        sha512 = "QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==";
       };
     };
     "compressible-2.0.18" = {
@@ -16609,13 +16789,13 @@ let
         sha512 = "4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==";
       };
     };
-    "concordance-4.0.0" = {
+    "concordance-5.0.4" = {
       name = "concordance";
       packageName = "concordance";
-      version = "4.0.0";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/concordance/-/concordance-4.0.0.tgz";
-        sha512 = "l0RFuB8RLfCS0Pt2Id39/oCPykE01pyxgAFypWTlaGRgvLkZrtczZ8atEHpTeEIW+zYWXTBuA9cCSeEOScxReQ==";
+        url = "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz";
+        sha512 = "OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==";
       };
     };
     "conf-1.4.0" = {
@@ -16627,6 +16807,15 @@ let
         sha512 = "bzlVWS2THbMetHqXKB8ypsXN4DQ/1qopGwNJi1eYbpwesJcd86FBjFciCQX/YwAhp9bM7NVnPFqZ5LpV7gP0Dg==";
       };
     };
+    "conf-10.0.1" = {
+      name = "conf";
+      packageName = "conf";
+      version = "10.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conf/-/conf-10.0.1.tgz";
+        sha512 = "QClEoNcruwBL84QgMEPHibL3ERxWIrRKhbjJKG1VsFBadm5QpS0jsu4QjY/maxUvhyAKXeyrs+ws+lC6PajnEg==";
+      };
+    };
     "conf-6.2.4" = {
       name = "conf";
       packageName = "conf";
@@ -16645,15 +16834,6 @@ let
         sha512 = "r8/HEoWPFn4CztjhMJaWNAe5n+gPUCSaJ0oufbqDLFKsA1V8JjAG7G+p0pgoDFAws9Bpk2VtVLLXqOBA7WxLeg==";
       };
     };
-    "conf-9.0.2" = {
-      name = "conf";
-      packageName = "conf";
-      version = "9.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/conf/-/conf-9.0.2.tgz";
-        sha512 = "rLSiilO85qHgaTBIIHQpsv8z+NnVfZq3cKuYNCXN1AOqPzced0GWZEe/A517VldRLyQYXUMyV+vszavE2jSAqw==";
-      };
-    };
     "config-1.31.0" = {
       name = "config";
       packageName = "config";
@@ -16861,13 +17041,13 @@ let
         sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
       };
     };
-    "constructs-3.3.71" = {
+    "constructs-3.3.75" = {
       name = "constructs";
       packageName = "constructs";
-      version = "3.3.71";
+      version = "3.3.75";
       src = fetchurl {
-        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.71.tgz";
-        sha512 = "3KFtTsA7OV27m/+pJhN4iJkKzHbPIPvyvEX5BQ/JCAWjfCHOQEVpIgxHLpT4i8L1OFta+pJrzcEVAHo6UitwqA==";
+        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.75.tgz";
+        sha512 = "q10foASSSfDWmS99OQLfnWDXCzqLvoORISAVWPFg0AmIGlBv2ZdDOtXxLqrJARPxVlOldmW2JzWzdRI+4+0/ZA==";
       };
     };
     "consume-http-header-1.0.0" = {
@@ -16897,15 +17077,6 @@ let
         sha1 = "6874f1e935fca99d048caeaaad9a0aeb020bcce0";
       };
     };
-    "contains-path-0.1.0" = {
-      name = "contains-path";
-      packageName = "contains-path";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz";
-        sha1 = "fe8cf184ff6670b6baef01a9d4861a5cbec4120a";
-      };
-    };
     "content-disposition-0.5.2" = {
       name = "content-disposition";
       packageName = "content-disposition";
@@ -16952,22 +17123,22 @@ let
         sha1 = "0e790b3abfef90f6ecb77ae8585db9099caf7578";
       };
     };
-    "contentful-management-7.15.1" = {
+    "contentful-management-7.22.4" = {
       name = "contentful-management";
       packageName = "contentful-management";
-      version = "7.15.1";
+      version = "7.22.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/contentful-management/-/contentful-management-7.15.1.tgz";
-        sha512 = "Wk4gpoNDXThkof49W0S3WgdW42T9kKQZj+7V7aDs+VrW0/WfTiNh5fMiMt0rxLqkWjxFrsa1TMAxR0WzT3lLyQ==";
+        url = "https://registry.npmjs.org/contentful-management/-/contentful-management-7.22.4.tgz";
+        sha512 = "nwFWfaaIQGveN9bAEZ6IpQjWeZlDgse1SXvgdR/D3mxTUYqDlyQv1sIqst+tcgd09zF4TuEKgF0e6Xmc0X1XhQ==";
       };
     };
-    "contentful-sdk-core-6.7.0" = {
+    "contentful-sdk-core-6.8.0" = {
       name = "contentful-sdk-core";
       packageName = "contentful-sdk-core";
-      version = "6.7.0";
+      version = "6.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/contentful-sdk-core/-/contentful-sdk-core-6.7.0.tgz";
-        sha512 = "+b8UXVE249Z6WzMLXvsu3CIvN/s5xXRZ9o+zY7zDdPkIYBMW15xcs9N2ATI6ncmc+s1uj4XZij/2skflletHiw==";
+        url = "https://registry.npmjs.org/contentful-sdk-core/-/contentful-sdk-core-6.8.0.tgz";
+        sha512 = "X45uNrcbQ2qY2p4G/Wx2EFUdnLnoDXjw29i+d0JVTUXqCG58p3q4GHuAPzTX+uafJL4h0ZY2xPOn4nvJ83eRBQ==";
       };
     };
     "continuable-1.1.8" = {
@@ -17375,13 +17546,13 @@ let
         sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==";
       };
     };
-    "core-js-3.10.1" = {
+    "core-js-3.13.1" = {
       name = "core-js";
       packageName = "core-js";
-      version = "3.10.1";
+      version = "3.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-3.10.1.tgz";
-        sha512 = "pwCxEXnj27XG47mu7SXAwhLP3L5CrlvCB91ANUkIz40P27kUcvNfSdvyZJ9CLHiVoKSp+TTChMQMSKQEH/IQxA==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.13.1.tgz";
+        sha512 = "JqveUc4igkqwStL2RTRn/EPFGBOfEZHxJl/8ej1mXJR75V3go2mFF4bmUYkEIT1rveHKnkUlcJX/c+f1TyIovQ==";
       };
     };
     "core-js-3.8.3" = {
@@ -17393,22 +17564,22 @@ let
         sha512 = "KPYXeVZYemC2TkNEkX/01I+7yd+nX3KddKwZ1Ww7SKWdI2wQprSgLmrTddT8nw92AjEklTsPBoSdQBhbI1bQ6Q==";
       };
     };
-    "core-js-compat-3.10.1" = {
+    "core-js-compat-3.13.1" = {
       name = "core-js-compat";
       packageName = "core-js-compat";
-      version = "3.10.1";
+      version = "3.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.10.1.tgz";
-        sha512 = "ZHQTdTPkqvw2CeHiZC970NNJcnwzT6YIueDMASKt+p3WbZsLXOcoD392SkcWhkC0wBBHhlfhqGKKsNCQUozYtg==";
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.13.1.tgz";
+        sha512 = "mdrcxc0WznfRd8ZicEZh1qVeJ2mu6bwQFh8YVUK48friy/FOwFV5EJj9/dlh+nMQ74YusdVfBFDuomKgUspxWQ==";
       };
     };
-    "core-js-pure-3.10.1" = {
+    "core-js-pure-3.13.1" = {
       name = "core-js-pure";
       packageName = "core-js-pure";
-      version = "3.10.1";
+      version = "3.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.10.1.tgz";
-        sha512 = "PeyJH2SE0KuxY5eCGNWA+W+CeDpB6M1PN3S7Am7jSv/Ttuxz2SnWbIiVQOn/TDaGaGtxo8CRWHkXwJscbUHtVw==";
+        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.13.1.tgz";
+        sha512 = "wVlh0IAi2t1iOEh16y4u1TRk6ubd4KvLE8dlMi+3QUI6SfKphQUh7tAwihGGSQ8affxEXpVIPpOdf9kjR4v4Pw==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -17420,13 +17591,13 @@ let
         sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
       };
     };
-    "core_d-3.0.0" = {
+    "core_d-3.2.0" = {
       name = "core_d";
       packageName = "core_d";
-      version = "3.0.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core_d/-/core_d-3.0.0.tgz";
-        sha512 = "6DM/spZ6j+Yha93TMdK+uz/ws82eDcYefPv2dKZBlMT5mFoJNG+zNPaqSpb5xFvrZh90KFXdSuau1Z+Jql2Tsg==";
+        url = "https://registry.npmjs.org/core_d/-/core_d-3.2.0.tgz";
+        sha512 = "waKkgHU2P19huhuMjCqCDWTYjxCIHoB+nnYjI7pVMUOC1giWxMNDrXkPw9QjWY+PWCFm49bD3wA/J+c7BGZ+og==";
       };
     };
     "cors-2.8.5" = {
@@ -17528,6 +17699,15 @@ let
         sha512 = "0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==";
       };
     };
+    "cp-file-9.0.0" = {
+      name = "cp-file";
+      packageName = "cp-file";
+      version = "9.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cp-file/-/cp-file-9.0.0.tgz";
+        sha512 = "hNEM3AuZz84zOPgL8ozJ057+DjuD6LpwyYNiyTsLDU71Ke2E3KV909xhGYLK7WQ0srJRwzs/1+bSE1pk/HRC6w==";
+      };
+    };
     "cpu-percentage-1.0.3" = {
       name = "cpu-percentage";
       packageName = "cpu-percentage";
@@ -17564,6 +17744,15 @@ let
         sha1 = "f4486b9bf0a12df83c3fca14e31e030fdabd9454";
       };
     };
+    "crc-3.6.0" = {
+      name = "crc";
+      packageName = "crc";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crc/-/crc-3.6.0.tgz";
+        sha512 = "K9CVP4+ugmpRvZidsumVVL1swX7t0cqYrLhT+5rAp7/S3TjiEtpovD8TISzy+3moanm6v6/cbXOzE6JbzB+siw==";
+      };
+    };
     "crc-3.8.0" = {
       name = "crc";
       packageName = "crc";
@@ -17618,13 +17807,13 @@ let
         sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6";
       };
     };
-    "create-gatsby-1.3.0" = {
+    "create-gatsby-1.6.0" = {
       name = "create-gatsby";
       packageName = "create-gatsby";
-      version = "1.3.0";
+      version = "1.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.3.0.tgz";
-        sha512 = "c78VG3AIqUg/sJCvxzFL5tGwO8MsDICRvyQ/FXS81Kf/QTr0ON9VvDjodEiM9AmtcyU5vRnM/GspEt1YfHo38A==";
+        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.6.0.tgz";
+        sha512 = "mNPBiTZ9aH24I2YInaiBoXDjPgibsystLsXXWpM5miIJpA6rZrJSRtHVGfXUxZXsKHLc/at2vNrFQbsVue3Nyg==";
       };
     };
     "create-graphback-1.0.1" = {
@@ -17726,15 +17915,6 @@ let
         sha512 = "KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==";
       };
     };
-    "cross-fetch-3.1.1" = {
-      name = "cross-fetch";
-      packageName = "cross-fetch";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.1.tgz";
-        sha512 = "eIF+IHQpRzoGd/0zPrwQmHwDC90mdvjk+hcbYhKoaRrEk4GEIDqdjs/MljmdPPoHTQudbmWS+f0hZsEpFaEvWw==";
-      };
-    };
     "cross-fetch-3.1.4" = {
       name = "cross-fetch";
       packageName = "cross-fetch";
@@ -17879,6 +18059,15 @@ let
         sha512 = "oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==";
       };
     };
+    "css-3.0.0" = {
+      name = "css";
+      packageName = "css";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css/-/css-3.0.0.tgz";
+        sha512 = "DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==";
+      };
+    };
     "css-b64-images-0.2.5" = {
       name = "css-b64-images";
       packageName = "css-b64-images";
@@ -18095,13 +18284,13 @@ let
         sha512 = "teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A==";
       };
     };
-    "css-what-5.0.0" = {
+    "css-what-5.0.1" = {
       name = "css-what";
       packageName = "css-what";
-      version = "5.0.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-what/-/css-what-5.0.0.tgz";
-        sha512 = "qxyKHQvgKwzwDWC/rGbT821eJalfupxYW2qbSJSAtdSTimsr/MlaGONoNLllaUPZWf8QnbcKM/kPVYUQuEKAFA==";
+        url = "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz";
+        sha512 = "FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==";
       };
     };
     "cssauron-1.4.0" = {
@@ -18284,13 +18473,13 @@ let
         sha1 = "d1cfd8743c2f849a0abb2fd544db56695d19a490";
       };
     };
-    "csv-parse-4.15.3" = {
+    "csv-parse-4.15.4" = {
       name = "csv-parse";
       packageName = "csv-parse";
-      version = "4.15.3";
+      version = "4.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/csv-parse/-/csv-parse-4.15.3.tgz";
-        sha512 = "jlTqDvLdHnYMSr08ynNfk4IAUSJgJjTKy2U5CQBSu4cN9vQOJonLVZP4Qo4gKKrIgIQ5dr07UwOJdi+lRqT12w==";
+        url = "https://registry.npmjs.org/csv-parse/-/csv-parse-4.15.4.tgz";
+        sha512 = "OdBbFc0yZhOm17lSxqkirrHlFFVpKRT0wp4DAGoJelsP3LbGzV9LNr7XmM/lrr0uGkCtaqac9UhP8PDHXOAbMg==";
       };
     };
     "csv-parser-1.12.1" = {
@@ -18905,24 +19094,6 @@ let
         sha512 = "e/6jXeCP7/ptlAM48clmX4xTZc5Ek6T6kagS7Oz2HrYSdqcLZFLqpAfh7ldbZRFfxCZVyh61NEPR08UQRVxJzQ==";
       };
     };
-    "damerau-levenshtein-1.0.6" = {
-      name = "damerau-levenshtein";
-      packageName = "damerau-levenshtein";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz";
-        sha512 = "JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==";
-      };
-    };
-    "dargs-6.1.0" = {
-      name = "dargs";
-      packageName = "dargs";
-      version = "6.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/dargs/-/dargs-6.1.0.tgz";
-        sha512 = "5dVBvpBLBnPwSsYXqfybFyehMmC/EenKEcf23AhCTgTf48JFBbmJKqoZBsERDnjL0FyiVTYWdFsRfTLHxLyKdQ==";
-      };
-    };
     "dargs-7.0.0" = {
       name = "dargs";
       packageName = "dargs";
@@ -19148,13 +19319,13 @@ let
         sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b";
       };
     };
-    "date-time-2.1.0" = {
+    "date-time-3.1.0" = {
       name = "date-time";
       packageName = "date-time";
-      version = "2.1.0";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz";
-        sha512 = "/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==";
+        url = "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz";
+        sha512 = "uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==";
       };
     };
     "dateformat-2.2.0" = {
@@ -19175,13 +19346,22 @@ let
         sha512 = "jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==";
       };
     };
-    "dayjs-1.10.4" = {
+    "dateformat-4.5.1" = {
+      name = "dateformat";
+      packageName = "dateformat";
+      version = "4.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dateformat/-/dateformat-4.5.1.tgz";
+        sha512 = "OD0TZ+B7yP7ZgpJf5K2DIbj3FZvFvxgFUuaqA/V5zTjAtAAXZ1E8bktHxmAGs4x5b7PflqA9LeQ84Og7wYtF7Q==";
+      };
+    };
+    "dayjs-1.10.5" = {
       name = "dayjs";
       packageName = "dayjs";
-      version = "1.10.4";
+      version = "1.10.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz";
-        sha512 = "RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw==";
+        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.5.tgz";
+        sha512 = "BUFis41ikLz+65iH6LHQCDm4YPMj5r1YFLdupPIyM4SGcXMmtiLQ7U37i+hGS8urIuqe7I/ou3IS1jVc4nbN4g==";
       };
     };
     "dayjs-1.8.36" = {
@@ -20120,13 +20300,13 @@ let
         sha1 = "3871cc0a6a002e8c3e5b3cf7f336264675f06b9d";
       };
     };
-    "detect-indent-6.0.0" = {
+    "detect-indent-6.1.0" = {
       name = "detect-indent";
       packageName = "detect-indent";
-      version = "6.0.0";
+      version = "6.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz";
-        sha512 = "oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==";
+        url = "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz";
+        sha512 = "reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==";
       };
     };
     "detect-libc-1.0.3" = {
@@ -20165,13 +20345,13 @@ let
         sha512 = "TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==";
       };
     };
-    "detect-node-2.0.5" = {
+    "detect-node-2.1.0" = {
       name = "detect-node";
       packageName = "detect-node";
-      version = "2.0.5";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz";
-        sha512 = "qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==";
+        url = "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz";
+        sha512 = "T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==";
       };
     };
     "detect-port-1.3.0" = {
@@ -20246,13 +20426,13 @@ let
         sha512 = "Rps1xDkEEBSq3kLdsdnHZL1x2S4NGDcbrjmd4q+PykK5aJwDdP5MBgrJw1Xo+kyUHuv3JEzPqxr+Dj9ryeDRTA==";
       };
     };
-    "detective-postcss-3.0.1" = {
+    "detective-postcss-4.0.0" = {
       name = "detective-postcss";
       packageName = "detective-postcss";
-      version = "3.0.1";
+      version = "4.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/detective-postcss/-/detective-postcss-3.0.1.tgz";
-        sha512 = "tfTS2GdpUal5NY0aCqI4dpEy8Xfr88AehYKB0iBIZvo8y2g3UsrcDnrp9PR2FbzoW7xD5Rip3NJW7eCSvtqdUw==";
+        url = "https://registry.npmjs.org/detective-postcss/-/detective-postcss-4.0.0.tgz";
+        sha512 = "Fwc/g9VcrowODIAeKRWZfVA/EufxYL7XfuqJQFroBKGikKX83d2G7NFw6kDlSYGG3LNQIyVa+eWv1mqre+v4+A==";
       };
     };
     "detective-sass-3.0.1" = {
@@ -20282,13 +20462,13 @@ let
         sha1 = "50aee7db8babb990381f010c63fabba5b58e54cd";
       };
     };
-    "detective-typescript-5.8.0" = {
+    "detective-typescript-7.0.0" = {
       name = "detective-typescript";
       packageName = "detective-typescript";
-      version = "5.8.0";
+      version = "7.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/detective-typescript/-/detective-typescript-5.8.0.tgz";
-        sha512 = "SrsUCfCaDTF64QVMHMidRal+kmkbIc5zP8cxxZPsomWx9vuEUjBlSJNhf7/ypE5cLdJJDI4qzKDmyzqQ+iz/xg==";
+        url = "https://registry.npmjs.org/detective-typescript/-/detective-typescript-7.0.0.tgz";
+        sha512 = "y/Ev98AleGvl43YKTNcA2Q+lyFmsmCfTTNWy4cjEJxoLkbobcXtRS0Kvx06daCgr2GdtlwLfNzL553BkktfJoA==";
       };
     };
     "devtools-protocol-0.0.854822" = {
@@ -20300,6 +20480,15 @@ let
         sha512 = "xd4D8kHQtB0KtWW0c9xBZD5LVtm9chkMOfs/3Yn01RhT/sFIsVtzTtypfKoFfWBaL+7xCYLxjOLkhwPXaX/Kcg==";
       };
     };
+    "devtools-protocol-0.0.869402" = {
+      name = "devtools-protocol";
+      packageName = "devtools-protocol";
+      version = "0.0.869402";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.869402.tgz";
+        sha512 = "VvlVYY+VDJe639yHs5PHISzdWTLL3Aw8rO4cvUtwvoxFd6FHbE4OpHHcde52M6096uYYazAmd4l0o5VuFRO2WA==";
+      };
+    };
     "dezalgo-1.0.3" = {
       name = "dezalgo";
       packageName = "dezalgo";
@@ -20408,13 +20597,13 @@ let
         sha512 = "Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==";
       };
     };
-    "diff2html-3.4.3" = {
+    "diff2html-3.4.4" = {
       name = "diff2html";
       packageName = "diff2html";
-      version = "3.4.3";
+      version = "3.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/diff2html/-/diff2html-3.4.3.tgz";
-        sha512 = "ISnQ+aIZWyRsD6F/VZUoeXC3n54rT5tftHPJBZhbYzCDrJfTuiZMvzSY34uoN3xJ/ookMDn0FDs3hc67DmwEyA==";
+        url = "https://registry.npmjs.org/diff2html/-/diff2html-3.4.4.tgz";
+        sha512 = "yAvhx2GbzzWCAWTepQJrdIPyrjL/29A5UepSAPwnHvwVB41N9oAMshonZmulrFFAFkDN8u9OHKKf/p3R06xuvQ==";
       };
     };
     "diff3-0.0.3" = {
@@ -20462,13 +20651,13 @@ let
         sha512 = "zBiL4ALDmviHdoLC0g0G6wVme5bwAow9WfhcZLLopXCAWgg3AEf7RYTs2xugszIGulRHzEVDF/SHl9oyQU07Pw==";
       };
     };
-    "dijkstrajs-1.0.1" = {
+    "dijkstrajs-1.0.2" = {
       name = "dijkstrajs";
       packageName = "dijkstrajs";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.1.tgz";
-        sha1 = "d3cd81221e3ea40742cfcde556d4e99e98ddc71b";
+        url = "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz";
+        sha512 = "QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg==";
       };
     };
     "dir-glob-2.0.0" = {
@@ -20561,13 +20750,13 @@ let
         sha512 = "EAyaxl8hy4Ph07kzlzGTfpbZMNAAAHXSZtNEMwdlnSd1noHzvA6HsgKt4fEMSvaEXQYLSphe5rPMxN4WOj0hcQ==";
       };
     };
-    "dispensary-0.61.0" = {
+    "dispensary-0.62.0" = {
       name = "dispensary";
       packageName = "dispensary";
-      version = "0.61.0";
+      version = "0.62.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dispensary/-/dispensary-0.61.0.tgz";
-        sha512 = "5BK13jrYQ+0bHgZBv7IOQsff5ydeNcnp87w3c7T8x5im21RDFQyiHrTlH0DoouZDyAVHILpat4Ytf7gRuhMRgw==";
+        url = "https://registry.npmjs.org/dispensary/-/dispensary-0.62.0.tgz";
+        sha512 = "x8vqPX7owhzDp3Y6t/iOuTuNoWx5hlZKITlzlybETsZoY05cYDubGpwt0soLfRLAWLuxX1lq0lTc/vXtk/CDCw==";
       };
     };
     "diveSync-0.3.0" = {
@@ -20633,13 +20822,13 @@ let
         sha1 = "5d66629b3c0e6a5eb0e14f0ae701d05f6ea46673";
       };
     };
-    "dns-packet-1.3.1" = {
+    "dns-packet-1.3.4" = {
       name = "dns-packet";
       packageName = "dns-packet";
-      version = "1.3.1";
+      version = "1.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz";
-        sha512 = "0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==";
+        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz";
+        sha512 = "BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==";
       };
     };
     "dns-packet-4.2.0" = {
@@ -20651,6 +20840,15 @@ let
         sha512 = "bn1AKpfkFbm0MIioOMHZ5qJzl2uypdBwI4nYNsqvhjsegBhcKJUlCrMPWLx6JEezRjxZmxhtIz/FkBEur2l8Cw==";
       };
     };
+    "dns-packet-5.2.4" = {
+      name = "dns-packet";
+      packageName = "dns-packet";
+      version = "5.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-5.2.4.tgz";
+        sha512 = "vgu5Bx5IV8mXmh/9cn1lzn+J7okFlXe1vBRp+kCBJXg1nBED6Z/Q4e+QaDxQRSozMr14p/VQmdXwsf/I2wGjUA==";
+      };
+    };
     "dns-socket-3.0.0" = {
       name = "dns-socket";
       packageName = "dns-socket";
@@ -20741,15 +20939,6 @@ let
         sha512 = "WfJEuXWdVdiarhxJgRlZ9bkMO/9un6dZDz+u3z6AYEXfsH2XRwYqdIvyOqFzaDDP0Hc6pR5rb9FJRSKyo+NuxA==";
       };
     };
-    "doctrine-1.5.0" = {
-      name = "doctrine";
-      packageName = "doctrine";
-      version = "1.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz";
-        sha1 = "379dce730f6166f76cefa4e6707a159b02c5a6fa";
-      };
-    };
     "doctrine-2.1.0" = {
       name = "doctrine";
       packageName = "doctrine";
@@ -20831,13 +21020,13 @@ let
         sha512 = "n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==";
       };
     };
-    "dom-serializer-1.3.1" = {
+    "dom-serializer-1.3.2" = {
       name = "dom-serializer";
       packageName = "dom-serializer";
-      version = "1.3.1";
+      version = "1.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.1.tgz";
-        sha512 = "Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q==";
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz";
+        sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==";
       };
     };
     "dom-storage-2.1.0" = {
@@ -20966,13 +21155,13 @@ let
         sha512 = "3VdM/SXBZX2omc9JF9nOPCtDaYQ67BGp5CoLpIQlO2KCAPETs8TcDHacF26jXadGbvUteZzRTeos2fhID5+ucQ==";
       };
     };
-    "dompurify-2.2.7" = {
+    "dompurify-2.2.9" = {
       name = "dompurify";
       packageName = "dompurify";
-      version = "2.2.7";
+      version = "2.2.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dompurify/-/dompurify-2.2.7.tgz";
-        sha512 = "jdtDffdGNY+C76jvodNTu9jt5yYj59vuTUyx+wXdzcSwAGTYZDAQkQ7Iwx9zcGrA4ixC1syU4H3RZROqRxokxg==";
+        url = "https://registry.npmjs.org/dompurify/-/dompurify-2.2.9.tgz";
+        sha512 = "+9MqacuigMIZ+1+EwoEltogyWGFTJZWU3258Rupxs+2CGs4H914G9er6pZbsme/bvb5L67o2rade9n21e4RW/w==";
       };
     };
     "domutils-1.4.3" = {
@@ -21056,6 +21245,15 @@ let
         sha1 = "d36517fe24b7cda61fce7a5026a0024afaf5a439";
       };
     };
+    "dotenv-10.0.0" = {
+      name = "dotenv";
+      packageName = "dotenv";
+      version = "10.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz";
+        sha512 = "rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==";
+      };
+    };
     "dotenv-5.0.1" = {
       name = "dotenv";
       packageName = "dotenv";
@@ -21074,13 +21272,22 @@ let
         sha512 = "HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w==";
       };
     };
-    "dotenv-8.2.0" = {
+    "dotenv-8.6.0" = {
       name = "dotenv";
       packageName = "dotenv";
-      version = "8.2.0";
+      version = "8.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz";
+        sha512 = "IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==";
+      };
+    };
+    "dotenv-9.0.2" = {
+      name = "dotenv";
+      packageName = "dotenv";
+      version = "9.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz";
-        sha512 = "8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==";
+        url = "https://registry.npmjs.org/dotenv/-/dotenv-9.0.2.tgz";
+        sha512 = "I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==";
       };
     };
     "dotenv-expand-5.1.0" = {
@@ -21137,15 +21344,6 @@ let
         sha512 = "xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==";
       };
     };
-    "download-8.0.0" = {
-      name = "download";
-      packageName = "download";
-      version = "8.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/download/-/download-8.0.0.tgz";
-        sha512 = "ASRY5QhDk7FK+XrQtQyvhpDKanLluEEQtWl/J7Lxuf/b+i8RYh997QeXvL85xitrmRKVlx9c7eTrcRdq2GS4eA==";
-      };
-    };
     "download-git-repo-1.1.0" = {
       name = "download-git-repo";
       packageName = "download-git-repo";
@@ -21173,15 +21371,6 @@ let
         sha512 = "N8hWXD4hXqmEcNoR8TBYFntaOcYvEQ7Bz90mgm3bZRTuteGQqwT32VDMnTyD0KTEvb8BWrMc1tVmzuV9u/WrAg==";
       };
     };
-    "download-stats-0.3.4" = {
-      name = "download-stats";
-      packageName = "download-stats";
-      version = "0.3.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/download-stats/-/download-stats-0.3.4.tgz";
-        sha512 = "ic2BigbyUWx7/CBbsfGjf71zUNZB4edBGC3oRliSzsoNmvyVx3Ycfp1w3vp2Y78Ee0eIIkjIEO5KzW0zThDGaA==";
-      };
-    };
     "draftlog-1.0.13" = {
       name = "draftlog";
       packageName = "draftlog";
@@ -21389,15 +21578,6 @@ let
         sha1 = "94a44248bb87da35db0eff7af0aa576168117f59";
       };
     };
-    "editions-2.3.1" = {
-      name = "editions";
-      packageName = "editions";
-      version = "2.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz";
-        sha512 = "ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==";
-      };
-    };
     "editor-1.0.0" = {
       name = "editor";
       packageName = "editor";
@@ -21497,13 +21677,13 @@ let
         sha512 = "1sQ1DRtQGpglFhc3urD4olMJzt/wxlbnAAsf+WY2xHf5c50ZovivZvCXSpVgTOP9f4TzOMvelWyspyfhxQKHzQ==";
       };
     };
-    "electron-to-chromium-1.3.717" = {
+    "electron-to-chromium-1.3.743" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.717";
+      version = "1.3.743";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.717.tgz";
-        sha512 = "OfzVPIqD1MkJ7fX+yTl2nKyOE4FReeVfMCzzxQS+Kp43hZYwHwThlGP+EGIZRXJsxCM7dqo8Y65NOX/HP12iXQ==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.743.tgz";
+        sha512 = "K2wXfo9iZQzNJNx67+Pld0DRF+9bYinj62gXCdgPhcu1vidwVuLPHQPPFnCdO55njWigXXpfBiT90jGUPbw8Zg==";
       };
     };
     "electrum-client-git://github.com/janoside/electrum-client" = {
@@ -21652,15 +21832,6 @@ let
         sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
       };
     };
-    "emoji-regex-9.2.2" = {
-      name = "emoji-regex";
-      packageName = "emoji-regex";
-      version = "9.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz";
-        sha512 = "L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==";
-      };
-    };
     "emoji-server-1.0.0" = {
       name = "emoji-server";
       packageName = "emoji-server";
@@ -21868,13 +22039,13 @@ let
         sha512 = "t2E9wLlssQjGw0nluF6aYyfX8LwYU8Jj0xct+pAhfWfv/YrBn6TSNtEYsgxHIfaMqfrLx07czcMg9bMN6di+3w==";
       };
     };
-    "engine.io-5.0.0" = {
+    "engine.io-5.1.1" = {
       name = "engine.io";
       packageName = "engine.io";
-      version = "5.0.0";
+      version = "5.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io/-/engine.io-5.0.0.tgz";
-        sha512 = "BATIdDV3H1SrE9/u2BAotvsmjJg0t1P4+vGedImSs1lkFAtQdvk4Ev1y4LDiPF7BPWgXWEG+NDY+nLvW3UrMWw==";
+        url = "https://registry.npmjs.org/engine.io/-/engine.io-5.1.1.tgz";
+        sha512 = "aMWot7H5aC8L4/T8qMYbLdvKlZOdJTH54FxfdFunTGvhMx1BHkJOntWArsVfgAZVwAO9LC2sryPWRcEeUzCe5w==";
       };
     };
     "engine.io-client-1.3.1" = {
@@ -21895,13 +22066,13 @@ let
         sha512 = "iU4CRr38Fecj8HoZEnFtm2EiKGbYZcPn3cHxqNGl/tmdWRf60KhK+9vE0JeSjgnlS/0oynEfLgKbT9ALpim0sQ==";
       };
     };
-    "engine.io-client-3.5.1" = {
+    "engine.io-client-3.5.2" = {
       name = "engine.io-client";
       packageName = "engine.io-client";
-      version = "3.5.1";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.1.tgz";
-        sha512 = "oVu9kBkGbcggulyVF0kz6BV3ganqUeqXvD79WOFKa+11oK692w1NyFkuEj4xrkFRpZhn92QOqTk4RQq5LiBXbQ==";
+        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.2.tgz";
+        sha512 = "QEqIp+gJ/kMHeUun7f5Vv3bteRHppHH/FMBQX/esFj/fuYfjyUKWGMo3VCvIP/V8bE9KcjHmRZrhIz2Z9oNsDA==";
       };
     };
     "engine.io-parser-1.0.6" = {
@@ -21949,13 +22120,13 @@ let
         sha512 = "Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==";
       };
     };
-    "enhanced-resolve-5.7.0" = {
+    "enhanced-resolve-5.8.2" = {
       name = "enhanced-resolve";
       packageName = "enhanced-resolve";
-      version = "5.7.0";
+      version = "5.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz";
-        sha512 = "6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==";
+        url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz";
+        sha512 = "F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==";
       };
     };
     "enquirer-2.3.6" = {
@@ -22120,15 +22291,6 @@ let
         sha512 = "nm1o1ncxcJvXtLJVoPl4AJFX7Bh0BhPsTC9XhCRWwdRJXp1Ud1DcGpi/6c3sUA/URmyoIc1WONNdub+/AE5vTQ==";
       };
     };
-    "err-code-1.1.2" = {
-      name = "err-code";
-      packageName = "err-code";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz";
-        sha1 = "06e0116d3028f6aef4806849eb0ea6a748ae6960";
-      };
-    };
     "err-code-2.0.3" = {
       name = "err-code";
       packageName = "err-code";
@@ -22147,15 +22309,6 @@ let
         sha512 = "GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==";
       };
     };
-    "errlop-2.2.0" = {
-      name = "errlop";
-      packageName = "errlop";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz";
-        sha512 = "e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==";
-      };
-    };
     "errno-0.1.8" = {
       name = "errno";
       packageName = "errno";
@@ -22165,22 +22318,22 @@ let
         sha512 = "dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==";
       };
     };
-    "error-7.0.2" = {
+    "error-10.4.0" = {
       name = "error";
       packageName = "error";
-      version = "7.0.2";
+      version = "10.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/error/-/error-7.0.2.tgz";
-        sha1 = "a5f75fff4d9926126ddac0ea5dc38e689153cb02";
+        url = "https://registry.npmjs.org/error/-/error-10.4.0.tgz";
+        sha512 = "YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw==";
       };
     };
-    "error-7.2.1" = {
+    "error-7.0.2" = {
       name = "error";
       packageName = "error";
-      version = "7.2.1";
+      version = "7.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/error/-/error-7.2.1.tgz";
-        sha512 = "fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==";
+        url = "https://registry.npmjs.org/error/-/error-7.0.2.tgz";
+        sha1 = "a5f75fff4d9926126ddac0ea5dc38e689153cb02";
       };
     };
     "error-ex-1.3.2" = {
@@ -22210,13 +22363,13 @@ let
         sha512 = "rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==";
       };
     };
-    "es-abstract-1.18.0" = {
+    "es-abstract-1.18.3" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.18.0";
+      version = "1.18.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz";
-        sha512 = "LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz";
+        sha512 = "nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==";
       };
     };
     "es-get-iterator-1.1.2" = {
@@ -22381,13 +22534,13 @@ let
         sha512 = "p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==";
       };
     };
-    "esbuild-0.11.12" = {
+    "esbuild-0.11.10" = {
       name = "esbuild";
       packageName = "esbuild";
-      version = "0.11.12";
+      version = "0.11.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild/-/esbuild-0.11.12.tgz";
-        sha512 = "c8cso/1RwVj+fbDvLtUgSG4ZJQ0y9Zdrl6Ot/GAjyy4pdMCHaFnDMts5gqFnWRPLajWtEnI+3hlET4R9fVoZng==";
+        url = "https://registry.npmjs.org/esbuild/-/esbuild-0.11.10.tgz";
+        sha512 = "XvGbf+UreVFA24Tlk6sNOqNcvF2z49XAZt4E7A4H80+yqn944QOLTTxaU0lkdYNtZKFiITNea+VxmtrfjvnLPA==";
       };
     };
     "esc-exit-2.0.2" = {
@@ -22561,15 +22714,6 @@ let
         sha512 = "S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==";
       };
     };
-    "eslint-7.21.0" = {
-      name = "eslint";
-      packageName = "eslint";
-      version = "7.21.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz";
-        sha512 = "W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==";
-      };
-    };
     "eslint-7.24.0" = {
       name = "eslint";
       packageName = "eslint";
@@ -22579,40 +22723,22 @@ let
         sha512 = "k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ==";
       };
     };
-    "eslint-import-resolver-node-0.3.4" = {
-      name = "eslint-import-resolver-node";
-      packageName = "eslint-import-resolver-node";
-      version = "0.3.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz";
-        sha512 = "ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==";
-      };
-    };
-    "eslint-module-utils-2.6.0" = {
-      name = "eslint-module-utils";
-      packageName = "eslint-module-utils";
-      version = "2.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz";
-        sha512 = "6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==";
-      };
-    };
-    "eslint-plugin-import-2.22.1" = {
-      name = "eslint-plugin-import";
-      packageName = "eslint-plugin-import";
-      version = "2.22.1";
+    "eslint-7.27.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "7.27.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz";
-        sha512 = "8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz";
+        sha512 = "JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==";
       };
     };
-    "eslint-plugin-jsx-a11y-6.4.1" = {
-      name = "eslint-plugin-jsx-a11y";
-      packageName = "eslint-plugin-jsx-a11y";
-      version = "6.4.1";
+    "eslint-config-prettier-8.3.0" = {
+      name = "eslint-config-prettier";
+      packageName = "eslint-config-prettier";
+      version = "8.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz";
-        sha512 = "0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==";
+        url = "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz";
+        sha512 = "BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==";
       };
     };
     "eslint-plugin-no-unsanitized-3.1.4" = {
@@ -22624,22 +22750,13 @@ let
         sha512 = "WF1+eZo2Sh+bQNjZuVNwT0dA61zuJORsLh+1Sww7+O6GOPw+WPWIIRfTWNqrmaXaDMhM4SXAqYPcNlhRMiH13g==";
       };
     };
-    "eslint-plugin-react-7.23.2" = {
-      name = "eslint-plugin-react";
-      packageName = "eslint-plugin-react";
-      version = "7.23.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.23.2.tgz";
-        sha512 = "AfjgFQB+nYszudkxRkTFu0UR1zEQig0ArVMPloKhxwlwkzaw/fBiH0QWcBBhZONlXqQC51+nfqFrkn4EzHcGBw==";
-      };
-    };
-    "eslint-plugin-react-hooks-4.2.0" = {
-      name = "eslint-plugin-react-hooks";
-      packageName = "eslint-plugin-react-hooks";
-      version = "4.2.0";
+    "eslint-plugin-prettier-3.4.0" = {
+      name = "eslint-plugin-prettier";
+      packageName = "eslint-plugin-prettier";
+      version = "3.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz";
-        sha512 = "623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==";
+        url = "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.0.tgz";
+        sha512 = "UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw==";
       };
     };
     "eslint-plugin-vue-6.2.2" = {
@@ -22651,13 +22768,13 @@ let
         sha512 = "Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ==";
       };
     };
-    "eslint-plugin-vue-7.9.0" = {
+    "eslint-plugin-vue-7.10.0" = {
       name = "eslint-plugin-vue";
       packageName = "eslint-plugin-vue";
-      version = "7.9.0";
+      version = "7.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.9.0.tgz";
-        sha512 = "2Q0qQp5+5h+pZvJKCbG1/jCRUYrdgAz5BYKGyTlp2NU8mx09u3Hp7PsH6d5qef6ojuPoCXMnrbbDxeoplihrSw==";
+        url = "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.10.0.tgz";
+        sha512 = "xdr6e4t/L2moRAeEQ9HKgge/hFq+w9v5Dj+BA54nTAzSFdUyKLiSOdZaRQjCHMY0Pk2WaQBFH9QiWG60xiC+6A==";
       };
     };
     "eslint-scope-3.7.3" = {
@@ -22705,6 +22822,15 @@ let
         sha512 = "w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==";
       };
     };
+    "eslint-utils-3.0.0" = {
+      name = "eslint-utils";
+      packageName = "eslint-utils";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz";
+        sha512 = "uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==";
+      };
+    };
     "eslint-visitor-keys-1.3.0" = {
       name = "eslint-visitor-keys";
       packageName = "eslint-visitor-keys";
@@ -22723,6 +22849,15 @@ let
         sha512 = "QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==";
       };
     };
+    "eslint-visitor-keys-2.1.0" = {
+      name = "eslint-visitor-keys";
+      packageName = "eslint-visitor-keys";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz";
+        sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
+      };
+    };
     "esmangle-1.0.1" = {
       name = "esmangle";
       packageName = "esmangle";
@@ -23227,15 +23362,6 @@ let
         sha512 = "Kd3EgYfODHueq6GzVfs/VUolh2EgJsS8hkO3KpnDrxVjU3eq63eXM2ujXkhPP+OkeUOhL8CxdfZbQXzryb5C4g==";
       };
     };
-    "events-to-array-1.1.2" = {
-      name = "events-to-array";
-      packageName = "events-to-array";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz";
-        sha1 = "2d41f563e1fe400ed4962fe1a4d5c6a7539df7f6";
-      };
-    };
     "events.node-0.4.9" = {
       name = "events.node";
       packageName = "events.node";
@@ -23380,13 +23506,13 @@ let
         sha512 = "j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==";
       };
     };
-    "execa-5.0.0" = {
+    "execa-5.0.1" = {
       name = "execa";
       packageName = "execa";
-      version = "5.0.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz";
-        sha512 = "ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==";
+        url = "https://registry.npmjs.org/execa/-/execa-5.0.1.tgz";
+        sha512 = "4hFTjFbFzQa3aCLobpbPJR/U+VoL1wdV5ozOWjeet0AWDeYr9UFGM1eUFWHX+VtOWFq4p0xXUXfW1YxUaP4fpw==";
       };
     };
     "execall-1.0.0" = {
@@ -23416,22 +23542,22 @@ let
         sha512 = "8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==";
       };
     };
-    "exegesis-2.5.6" = {
+    "exegesis-2.5.7" = {
       name = "exegesis";
       packageName = "exegesis";
-      version = "2.5.6";
+      version = "2.5.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/exegesis/-/exegesis-2.5.6.tgz";
-        sha512 = "e+YkH/zZTN2njiwrV8tY6tHGDsFu3LyR/YbrqdWvDZaAJ5YGWaBYyd3oX/Y26iGqQc+7jLEKLDTv2UPzjAYL8w==";
+        url = "https://registry.npmjs.org/exegesis/-/exegesis-2.5.7.tgz";
+        sha512 = "Y0gEY3hgoLa80aMUm8rhhlIW3/KWo4uqN5hKJqok2GLh3maZjRLRC+p0gj33Jw3upAOKOXeRgScT5rtRoMyxwQ==";
       };
     };
-    "exegesis-express-2.0.0" = {
+    "exegesis-express-2.0.1" = {
       name = "exegesis-express";
       packageName = "exegesis-express";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/exegesis-express/-/exegesis-express-2.0.0.tgz";
-        sha512 = "NKvKBsBa2OvU+1BFpWbz3PzoRMhA9q7/wU2oMmQ9X8lPy/FRatADvhlkGO1zYOMgeo35k1ZLO9ZV0uIs9pPnXg==";
+        url = "https://registry.npmjs.org/exegesis-express/-/exegesis-express-2.0.1.tgz";
+        sha512 = "8ORl1YRygYGPdR+zcClMqzaU+JQuvdNIw/s0RNwYluxNecEHkDEcXFmO6A5T79p7e48KI8iXJYt6KIn4Z9z4bg==";
       };
     };
     "exif-parser-0.1.12" = {
@@ -23533,13 +23659,13 @@ let
         sha1 = "a793d3ac0cad4c6ab571e9968fbbab6cb2532929";
       };
     };
-    "expo-pwa-0.0.72" = {
+    "expo-pwa-0.0.82" = {
       name = "expo-pwa";
       packageName = "expo-pwa";
-      version = "0.0.72";
+      version = "0.0.82";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expo-pwa/-/expo-pwa-0.0.72.tgz";
-        sha512 = "Mhyl8aqUwncBDo+zBWpqoXIFe38cfK0A4axKmJaiy8IIZd+ficVqo4zXrYVeuKpBY+P+eqEbXLbhTJlktkMhow==";
+        url = "https://registry.npmjs.org/expo-pwa/-/expo-pwa-0.0.82.tgz";
+        sha512 = "4TSJRmVl3/gOQbE56Xe7P+A+zIqNF2asqMtC8Au/YQF0o4emmEAICEwCCRMg2jdtgq7qVDwWjBfMNLDdGS4HrQ==";
       };
     };
     "express-2.5.11" = {
@@ -23668,6 +23794,15 @@ let
         sha512 = "UbHwgqjxQZJiWRTMyhvWGvjBQduGCSBDhhZXYenziMFjxst5rMV+aJZ6hKPHZnPyHGsrqRICxtX8jtEbm/z36Q==";
       };
     };
+    "express-session-1.17.2" = {
+      name = "express-session";
+      packageName = "express-session";
+      version = "1.17.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz";
+        sha512 = "mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==";
+      };
+    };
     "express-urlrewrite-1.4.0" = {
       name = "express-urlrewrite";
       packageName = "express-urlrewrite";
@@ -24046,13 +24181,13 @@ let
         sha512 = "4WKW0AL5+WEqO0zWavAfYGY1qwLsBgE//DN4TTcVEN2UlINgkv9b3vm2iHicoenWKSX9mKWmGOsU/iI5IST7pQ==";
       };
     };
-    "fast-equals-2.0.0" = {
+    "fast-equals-2.0.3" = {
       name = "fast-equals";
       packageName = "fast-equals";
-      version = "2.0.0";
+      version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.0.tgz";
-        sha512 = "u6RBd8cSiLLxAiC04wVsLV6GBFDOXcTCgWkd3wEoFXgidPSoAJENqC9m7Jb2vewSvjBIfXV6icKeh3GTKfIaXA==";
+        url = "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.3.tgz";
+        sha512 = "0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==";
       };
     };
     "fast-glob-2.2.7" = {
@@ -24127,13 +24262,13 @@ let
         sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
       };
     };
-    "fast-redact-3.0.0" = {
+    "fast-redact-3.0.1" = {
       name = "fast-redact";
       packageName = "fast-redact";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-redact/-/fast-redact-3.0.0.tgz";
-        sha512 = "a/S/Hp6aoIjx7EmugtzLqXmcNsyFszqbt6qQ99BdG61QjBZF6shNis0BYR6TsZOQ1twYc0FN2Xdhwwbv6+KD0w==";
+        url = "https://registry.npmjs.org/fast-redact/-/fast-redact-3.0.1.tgz";
+        sha512 = "kYpn4Y/valC9MdrISg47tZOpYBNoTXKgT9GYXFpHN/jYFs+lFkPoisY+LcBODdKVMY96ATzvzsWv+ES/4Kmufw==";
       };
     };
     "fast-safe-stringify-1.2.3" = {
@@ -24235,13 +24370,13 @@ let
         sha512 = "CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==";
       };
     };
-    "faunadb-4.0.3" = {
+    "faunadb-4.3.0" = {
       name = "faunadb";
       packageName = "faunadb";
-      version = "4.0.3";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/faunadb/-/faunadb-4.0.3.tgz";
-        sha512 = "pfXX3pwyQQfsx+wO4u8m16gQyDPJRbpjMGk5fCzq0tCT/3mPyCVlc5zTorSdBWWmLFuResP9idFrWdqo+q2IEA==";
+        url = "https://registry.npmjs.org/faunadb/-/faunadb-4.3.0.tgz";
+        sha512 = "H5ZnInUNLAvrjqDHYXmYX+S55HP8Ib85QbF/UK1fV/bz125unl7J7LbjqKvMGcREYqOvIrpQCaniK1LwAkXHTw==";
       };
     };
     "faye-websocket-0.10.0" = {
@@ -24253,13 +24388,13 @@ let
         sha1 = "4e492f8d04dfb6f89003507f6edbf2d501e7c6f4";
       };
     };
-    "faye-websocket-0.11.3" = {
+    "faye-websocket-0.11.4" = {
       name = "faye-websocket";
       packageName = "faye-websocket";
-      version = "0.11.3";
+      version = "0.11.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz";
-        sha512 = "D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==";
+        url = "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz";
+        sha512 = "CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==";
       };
     };
     "fb-watchman-2.0.1" = {
@@ -24478,15 +24613,6 @@ let
         sha512 = "uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==";
       };
     };
-    "file-type-11.1.0" = {
-      name = "file-type";
-      packageName = "file-type";
-      version = "11.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/file-type/-/file-type-11.1.0.tgz";
-        sha512 = "rM0UO7Qm9K7TWTtA6AShI/t7H5BPjDeGVDaNyg9BjHAj3PysKy7+8C8D137R88jnR3rFJZQB/tFgydl5sN5m7g==";
-      };
-    };
     "file-type-14.7.1" = {
       name = "file-type";
       packageName = "file-type";
@@ -24496,13 +24622,13 @@ let
         sha512 = "sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==";
       };
     };
-    "file-type-16.3.0" = {
+    "file-type-16.5.0" = {
       name = "file-type";
       packageName = "file-type";
-      version = "16.3.0";
+      version = "16.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/file-type/-/file-type-16.3.0.tgz";
-        sha512 = "ZA0hV64611vJT42ltw0T9IDwHApQuxRdrmQZWTeDmeAUtZBBVSQW3nSQqhhW1cAgpXgqcJvm410BYHXJQ9AymA==";
+        url = "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz";
+        sha512 = "OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==";
       };
     };
     "file-type-3.9.0" = {
@@ -24613,15 +24739,6 @@ let
         sha512 = "ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==";
       };
     };
-    "filenamify-3.0.0" = {
-      name = "filenamify";
-      packageName = "filenamify";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/filenamify/-/filenamify-3.0.0.tgz";
-        sha512 = "5EFZ//MsvJgXjBAFJ+Bh2YaCTRF/VP1YOmGrgt+KJ4SFRLjI87EIdwLLuT6wQX0I4F9W41xutobzczjsOKlI/g==";
-      };
-    };
     "filenamify-4.1.0" = {
       name = "filenamify";
       packageName = "filenamify";
@@ -24631,13 +24748,13 @@ let
         sha512 = "KQV/uJDI9VQgN7sHH1Zbk6+42cD6mnQ2HONzkXUfPJ+K2FC8GZ1dpewbbHw0Sz8Tf5k3EVdHVayM4DoAwWlmtg==";
       };
     };
-    "filenamify-4.2.0" = {
+    "filenamify-4.3.0" = {
       name = "filenamify";
       packageName = "filenamify";
-      version = "4.2.0";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/filenamify/-/filenamify-4.2.0.tgz";
-        sha512 = "pkgE+4p7N1n7QieOopmn3TqJaefjdWXwEkj2XLZJLKfOgcQKkn11ahvGNgTD8mLggexLiDFQxeTs14xVU22XPA==";
+        url = "https://registry.npmjs.org/filenamify/-/filenamify-4.3.0.tgz";
+        sha512 = "hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg==";
       };
     };
     "filesize-3.6.1" = {
@@ -24658,13 +24775,13 @@ let
         sha512 = "LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg==";
       };
     };
-    "filesize-6.2.5" = {
+    "filesize-6.3.0" = {
       name = "filesize";
       packageName = "filesize";
-      version = "6.2.5";
+      version = "6.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/filesize/-/filesize-6.2.5.tgz";
-        sha512 = "JkM1y2+IpnEwp3pbXOUXR+9ytuZE07ZnWb/OR0H/WOSkjWASpmXgC0ZBIs4/SAYq9wHqExeQxcYNoJKf6s0RCg==";
+        url = "https://registry.npmjs.org/filesize/-/filesize-6.3.0.tgz";
+        sha512 = "ytx0ruGpDHKWVoiui6+BY/QMNngtDQ/pJaFwfBpQif0J63+E8DLdFyqS3NkKQn7vIruUEpoGD9JUJSg7Kp+I0g==";
       };
     };
     "filestream-5.0.0" = {
@@ -24838,6 +24955,15 @@ let
         sha512 = "1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==";
       };
     };
+    "find-yarn-workspace-root2-1.2.16" = {
+      name = "find-yarn-workspace-root2";
+      packageName = "find-yarn-workspace-root2";
+      version = "1.2.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz";
+        sha512 = "hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==";
+      };
+    };
     "findit-1.2.0" = {
       name = "findit";
       packageName = "findit";
@@ -24892,13 +25018,13 @@ let
         sha512 = "ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==";
       };
     };
-    "firefox-profile-4.1.0" = {
+    "firefox-profile-4.2.0" = {
       name = "firefox-profile";
       packageName = "firefox-profile";
-      version = "4.1.0";
+      version = "4.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/firefox-profile/-/firefox-profile-4.1.0.tgz";
-        sha512 = "n+0jsWhW57i7cAmdHg67W6u5vVSoIJN9D+d7M3w1MzhFLE5X/QxBfP80ksjNvNQDFXGdJQAnW9YupLkzgCxaFQ==";
+        url = "https://registry.npmjs.org/firefox-profile/-/firefox-profile-4.2.0.tgz";
+        sha512 = "Z+/6GQ0JEW2eqgj63EYNbgKSgoIz7w1yXlkOWAIRkCNnj50rkfnQIz8uYwJkobxwYQM8vjFIbYiVtYuQV8US2A==";
       };
     };
     "first-chunk-stream-2.0.0" = {
@@ -25018,15 +25144,6 @@ let
         sha1 = "248cf79a3da7d7dc379e2a11c92a2719cbb540f6";
       };
     };
-    "flatmap-0.0.3" = {
-      name = "flatmap";
-      packageName = "flatmap";
-      version = "0.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/flatmap/-/flatmap-0.0.3.tgz";
-        sha1 = "1f18a4d938152d495965f9c958d923ab2dd669b4";
-      };
-    };
     "flatstr-1.0.12" = {
       name = "flatstr";
       packageName = "flatstr";
@@ -25090,13 +25207,13 @@ let
         sha512 = "jlbUu0XkbpXeXhan5xyTqVK1jmEKNxE8hpzznI3TThHTr76GiFwK0iRzhDo4KNy+S9h/KxHaqVhTP86vA6wHCg==";
       };
     };
-    "flow-parser-0.149.0" = {
+    "flow-parser-0.152.0" = {
       name = "flow-parser";
       packageName = "flow-parser";
-      version = "0.149.0";
+      version = "0.152.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.149.0.tgz";
-        sha512 = "ruUVkZuM9oFQjhSsLO/OJYRYpGnuXJpTnIZmgzna6DyLFb3CLpeO27oJbWyeXaa830hmKf0JRzpcdFsFS8lmpg==";
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.152.0.tgz";
+        sha512 = "qRXGE3ztuhyI2ovi4Ixwq7/GUYvKX9wmFdwBof2q5pWHteuveexFrlbwZxSonC0dWz2znA6sW+vce4RXgYLnnQ==";
       };
     };
     "fluent-ffmpeg-2.1.2" = {
@@ -25261,13 +25378,13 @@ let
         sha512 = "VjAQdSLsl6AkpZNyrQJfO7BXLo4chnStqb055bumZMbRUPpVuPN3a4ktsnRCmrFZjtMlYLkyXiR5rAs4WOpC4Q==";
       };
     };
-    "follow-redirects-1.13.3" = {
+    "follow-redirects-1.14.1" = {
       name = "follow-redirects";
       packageName = "follow-redirects";
-      version = "1.13.3";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz";
-        sha512 = "DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==";
+        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz";
+        sha512 = "HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==";
       };
     };
     "follow-redirects-1.5.10" = {
@@ -25522,6 +25639,15 @@ let
         sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
       };
     };
+    "forwarded-0.2.0" = {
+      name = "forwarded";
+      packageName = "forwarded";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz";
+        sha512 = "buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==";
+      };
+    };
     "fp-and-or-0.1.3" = {
       name = "fp-and-or";
       packageName = "fp-and-or";
@@ -25531,13 +25657,13 @@ let
         sha512 = "wJaE62fLaB3jCYvY2ZHjZvmKK2iiLiiehX38rz5QZxtdN8fVPJDeZUiVvJrHStdTc+23LHlyZuSEKgFc0pxi2g==";
       };
     };
-    "fp-ts-2.10.2" = {
+    "fp-ts-2.10.5" = {
       name = "fp-ts";
       packageName = "fp-ts";
-      version = "2.10.2";
+      version = "2.10.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fp-ts/-/fp-ts-2.10.2.tgz";
-        sha512 = "YB/FSwESW8C3kVCbbyFiZSXXoQEJ/SaeHHorL6KCKHoPIPV6v/hyfMiXBPMjW7O7D9jfxlRs6VeCRonfqi1Tcg==";
+        url = "https://registry.npmjs.org/fp-ts/-/fp-ts-2.10.5.tgz";
+        sha512 = "X2KfTIV0cxIk3d7/2Pvp/pxL/xr2MV1WooyEzKtTWYSc1+52VF4YzjBTXqeOlSiZsPCxIBpDGfT9Dyo7WEY0DQ==";
       };
     };
     "fragment-cache-0.2.1" = {
@@ -25630,15 +25756,6 @@ let
         sha512 = "8S4f4WsCryNw2mJJchi46YgB6CR5Ze+4L1h8ewl9tEpL4SJ3ZO+c/bS4BWhB8bK+O3TMqhuZarTitd0S0eh2pA==";
       };
     };
-    "fs-capacitor-6.2.0" = {
-      name = "fs-capacitor";
-      packageName = "fs-capacitor";
-      version = "6.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs-capacitor/-/fs-capacitor-6.2.0.tgz";
-        sha512 = "nKcE1UduoSKX27NSZlg879LdQc94OtbOsEmKMN2MBNudXREvijRKx2GEBsTMTfws+BrbkJoEuynbGSVRSpauvw==";
-      };
-    };
     "fs-chunk-store-1.7.0" = {
       name = "fs-chunk-store";
       packageName = "fs-chunk-store";
@@ -25684,15 +25801,6 @@ let
         sha1 = "982d6893af918e72d08dec9e8673ff2b5a8d6add";
       };
     };
-    "fs-extra-0.23.1" = {
-      name = "fs-extra";
-      packageName = "fs-extra";
-      version = "0.23.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-0.23.1.tgz";
-        sha1 = "6611dba6adf2ab8dc9c69fab37cddf8818157e3d";
-      };
-    };
     "fs-extra-0.24.0" = {
       name = "fs-extra";
       packageName = "fs-extra";
@@ -25729,6 +25837,15 @@ let
         sha1 = "cd3ce5f7e7cb6145883fcae3191e9877f8587950";
       };
     };
+    "fs-extra-10.0.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "10.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz";
+        sha512 = "C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==";
+      };
+    };
     "fs-extra-4.0.3" = {
       name = "fs-extra";
       packageName = "fs-extra";
@@ -26044,13 +26161,13 @@ let
         sha1 = "979e22f9451b4b38f051f7937c919dbacc692958";
       };
     };
-    "fx-runner-1.0.13" = {
+    "fx-runner-1.1.0" = {
       name = "fx-runner";
       packageName = "fx-runner";
-      version = "1.0.13";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.13.tgz";
-        sha512 = "Ces2bm+LNuXehkvmN1/Z+oEDkI/jHBp9xdyBtBy7hcgvF18/pv/D8F6A6kQgNkMZsnBgLEv+VvdDxyqkfkYycw==";
+        url = "https://registry.npmjs.org/fx-runner/-/fx-runner-1.1.0.tgz";
+        sha512 = "v/Eo69DDFW30zPdvjCYVXddjVvLy2xGeRbg0S18bPd8kEc0q9VsDoDkjyOxY5lTZsAqcQGy0OWjs3HCfRVBNSg==";
       };
     };
     "galactus-0.2.1" = {
@@ -26062,31 +26179,31 @@ let
         sha1 = "cbed2d20a40c1f5679a35908e2b9415733e78db9";
       };
     };
-    "gatsby-core-utils-2.3.0" = {
+    "gatsby-core-utils-2.6.0" = {
       name = "gatsby-core-utils";
       packageName = "gatsby-core-utils";
-      version = "2.3.0";
+      version = "2.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.3.0.tgz";
-        sha512 = "M7RlR6jL2dtkUu4AoKBoQaPTsbpByzWHc7HBgeYdwzuqbk4VuMe6K76pFDvFSNj0+LvVhWoRGHO7OEtpfb2bEA==";
+        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.6.0.tgz";
+        sha512 = "d8a/iblc3wIrLEOWTUcoK5uYE2DrvlQmeulx6DK3NY49KD8jet8ozB6T5GA1CftsvowWeO6aaDnoWDbTxIxTRA==";
       };
     };
-    "gatsby-recipes-0.14.0" = {
+    "gatsby-recipes-0.17.0" = {
       name = "gatsby-recipes";
       packageName = "gatsby-recipes";
-      version = "0.14.0";
+      version = "0.17.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.14.0.tgz";
-        sha512 = "f8vZtHA7mCWqLE/xxEs4gpKxfM53L4dPic6hkALMlNfg8040eu05D6YbNT3i3QLsyqpvX1vKH88SBHk7swwW8w==";
+        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.17.0.tgz";
+        sha512 = "tC2xUa05zrUp77DTyQE11ILhFiqv9JYxBHhh47b7tJGiLAU1XhjxZH0uFZ109r9wEeZjxTYOYkyoiTu+0Ps4pw==";
       };
     };
-    "gatsby-telemetry-2.3.0" = {
+    "gatsby-telemetry-2.6.0" = {
       name = "gatsby-telemetry";
       packageName = "gatsby-telemetry";
-      version = "2.3.0";
+      version = "2.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.3.0.tgz";
-        sha512 = "dr7pILAnEtoG9ZUyPRljSwB/fGBDM4OCoM0mGw3DYr6HFlvrsbIl7AVL4LVJIr4TrtVUrhTjC/crSw+bTzO42A==";
+        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.6.0.tgz";
+        sha512 = "ENrhT4tkETj9Gq48d+ziiyNTX8Q8/5EyqqWvDUTCSefeHV5xpBclJ+CEnxZkmkEa/QSoBCpjws2VbxnTmRwjWA==";
       };
     };
     "gauge-1.2.7" = {
@@ -26107,13 +26224,13 @@ let
         sha1 = "2c03405c7538c39d7eb37b317022e325fb018bf7";
       };
     };
-    "gaxios-4.2.0" = {
+    "gaxios-4.3.0" = {
       name = "gaxios";
       packageName = "gaxios";
-      version = "4.2.0";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gaxios/-/gaxios-4.2.0.tgz";
-        sha512 = "Ms7fNifGv0XVU+6eIyL9LB7RVESeML9+cMvkwGS70xyD6w2Z80wl6RiqiJ9k1KFlJCUTQqFFc8tXmPQfSKUe8g==";
+        url = "https://registry.npmjs.org/gaxios/-/gaxios-4.3.0.tgz";
+        sha512 = "pHplNbslpwCLMyII/lHPWFQbJWOX0B3R1hwBEOvzYi1GmdKZruuEHK4N9V6f7tf1EaPYyF80mui1+344p6SmLg==";
       };
     };
     "gaze-1.1.3" = {
@@ -26368,15 +26485,6 @@ let
         sha512 = "jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==";
       };
     };
-    "get-stdin-7.0.0" = {
-      name = "get-stdin";
-      packageName = "get-stdin";
-      version = "7.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz";
-        sha512 = "zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==";
-      };
-    };
     "get-stdin-8.0.0" = {
       name = "get-stdin";
       packageName = "get-stdin";
@@ -26485,15 +26593,6 @@ let
         sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
       };
     };
-    "gh-got-5.0.0" = {
-      name = "gh-got";
-      packageName = "gh-got";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gh-got/-/gh-got-5.0.0.tgz";
-        sha1 = "ee95be37106fd8748a96f8d1db4baea89e1bfa8a";
-      };
-    };
     "gh-release-fetch-1.1.0" = {
       name = "gh-release-fetch";
       packageName = "gh-release-fetch";
@@ -26701,15 +26800,6 @@ let
         sha1 = "f985fedcc0a9aa579dc88d7aff068d55cc6251a0";
       };
     };
-    "github-username-3.0.0" = {
-      name = "github-username";
-      packageName = "github-username";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/github-username/-/github-username-3.0.0.tgz";
-        sha1 = "0a772219b3130743429f2456d0bdd3db55dce7b1";
-      };
-    };
     "gl-matrix-2.8.1" = {
       name = "gl-matrix";
       packageName = "gl-matrix";
@@ -26782,6 +26872,15 @@ let
         sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==";
       };
     };
+    "glob-7.1.7" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz";
+        sha512 = "OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==";
+      };
+    };
     "glob-base-0.3.0" = {
       name = "glob-base";
       packageName = "glob-base";
@@ -26818,6 +26917,15 @@ let
         sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
       };
     };
+    "glob-parent-6.0.0" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.0.tgz";
+        sha512 = "Hdd4287VEJcZXUwv1l8a+vXC1GjOQqXe+VS30w/ypihpcnu9M1n3xeYeJu5CBpeEQj2nAab2xxz28GuA3vp4Ww==";
+      };
+    };
     "glob-slash-1.0.0" = {
       name = "glob-slash";
       packageName = "glob-slash";
@@ -27035,13 +27143,13 @@ let
         sha512 = "BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==";
       };
     };
-    "globals-13.8.0" = {
+    "globals-13.9.0" = {
       name = "globals";
       packageName = "globals";
-      version = "13.8.0";
+      version = "13.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/globals/-/globals-13.8.0.tgz";
-        sha512 = "rHtdA6+PDBIjeEvA91rpqzEvk/k3/i7EeNQiryiWuJH0Hw9cpyJMAt2jtbAwUaRdhD+573X4vWw6IcjKPasi9Q==";
+        url = "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz";
+        sha512 = "74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==";
       };
     };
     "globals-9.18.0" = {
@@ -27197,6 +27305,15 @@ let
         sha512 = "zNvkjnJQWbFWtK7or4CtX0WMy2n5AfMVnob5ipf+AznwLxKX8KyqY9W4bzYpVh6Xjm9N21ZUbubsPheV3mA4qQ==";
       };
     };
+    "goldengate-10.0.4" = {
+      name = "goldengate";
+      packageName = "goldengate";
+      version = "10.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/goldengate/-/goldengate-10.0.4.tgz";
+        sha512 = "WuLSD4trXP8fN8jCpWlNMpobrf1DBYCEy/0+SVrzen6znQepM4rRCByuna1Iy1G/XsbbdFiwYBd9iSxJiwqjDQ==";
+      };
+    };
     "gonzales-pe-4.3.0" = {
       name = "gonzales-pe";
       packageName = "gonzales-pe";
@@ -27224,13 +27341,13 @@ let
         sha512 = "Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==";
       };
     };
-    "google-auth-library-7.0.4" = {
+    "google-auth-library-7.1.0" = {
       name = "google-auth-library";
       packageName = "google-auth-library";
-      version = "7.0.4";
+      version = "7.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.0.4.tgz";
-        sha512 = "o8irYyeijEiecTXeoEe8UKNEzV1X+uhR4b2oNdapDMZixypp0J+eHimGOyx5Joa3UAeokGngdtDLXtq9vDqG2Q==";
+        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.1.0.tgz";
+        sha512 = "X+gbkGjnLN3HUZP2W3KBREuA603BXd80ITvL0PeS0QpyDNYz/u0pIZ7aRuGnrSuUc0grk/qxEgtVTFt1ogbP+A==";
       };
     };
     "google-closure-compiler-js-20170910.0.1" = {
@@ -27242,13 +27359,13 @@ let
         sha512 = "Vric7QFWxzHFxITZ10bmlG1H/5rhODb7hJuWyKWMD8GflpQzRmbMVqkFp3fKvN+U9tPwZItGVhkiOR+84PX3ew==";
       };
     };
-    "google-gax-2.11.2" = {
+    "google-gax-2.14.1" = {
       name = "google-gax";
       packageName = "google-gax";
-      version = "2.11.2";
+      version = "2.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/google-gax/-/google-gax-2.11.2.tgz";
-        sha512 = "PNqXv7Oi5XBMgoMWVxLZHUidfMv7cPHrDSDXqLyEd6kY6pqFnVKC8jt2T1df4JPSc2+VLPdeo6L7X9mbdQG8Xw==";
+        url = "https://registry.npmjs.org/google-gax/-/google-gax-2.14.1.tgz";
+        sha512 = "I5RDEN7MEptrCxeHX3ht7nKFGfyjgYX4hQKI9eVMBohMzVbFSwWUndo0CcKXu8es7NhB4gt2XYLm1AHkXhtHpA==";
       };
     };
     "google-p12-pem-3.0.3" = {
@@ -27296,15 +27413,6 @@ let
         sha512 = "aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==";
       };
     };
-    "got-11.4.0" = {
-      name = "got";
-      packageName = "got";
-      version = "11.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/got/-/got-11.4.0.tgz";
-        sha512 = "XysJZuZNVpaQ37Oo2LV90MIkPeYITehyy1A0QzO1JwOXm8EWuEf9eeGk2XuHePvLEGnm9AVOI37bHwD6KYyBtg==";
-      };
-    };
     "got-11.5.2" = {
       name = "got";
       packageName = "got";
@@ -27503,13 +27611,13 @@ let
         sha512 = "MBY0wEjvcgJtZUyoqpPvOE1e5qPI0hJaa1gKTqjonSFiCsNHX2lykNjpOPcodmAgH1V06ELxhGnm9kcVzqvi/g==";
       };
     };
-    "graphql-extensions-0.13.0" = {
+    "graphql-extensions-0.15.0" = {
       name = "graphql-extensions";
       packageName = "graphql-extensions";
-      version = "0.13.0";
+      version = "0.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.13.0.tgz";
-        sha512 = "Bb7E97nvfX4gtrIdZ/i5YFlqOd6MGzrw8ED+t4wQVraYje6NQ+8P8MHMOV2WZLfbW8zsNTx8NdnnlbsdH5siag==";
+        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.15.0.tgz";
+        sha512 = "bVddVO8YFJPwuACn+3pgmrEg6I8iBuYLuwvxiE+lcQQ7POotVZxm2rgGw0PvVYmWWf3DT7nTVDZ5ROh/ALp8mA==";
       };
     };
     "graphql-subscriptions-1.2.1" = {
@@ -27521,13 +27629,13 @@ let
         sha512 = "95yD/tKi24q8xYa7Q9rhQN16AYj5wPbrb8tmHGM3WRc9EBmWrG/0kkMl+tQG8wcEuE9ibR4zyOM31p5Sdr2v4g==";
       };
     };
-    "graphql-tag-2.12.3" = {
+    "graphql-tag-2.12.4" = {
       name = "graphql-tag";
       packageName = "graphql-tag";
-      version = "2.12.3";
+      version = "2.12.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.3.tgz";
-        sha512 = "5wJMjSvj30yzdciEuk9dPuUBUR56AqDi3xncoYQl1i42pGdSqOJrJsdb/rz5BDoy+qoGvQwABcBeF0xXY3TrKw==";
+        url = "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.4.tgz";
+        sha512 = "VV1U4O+9x99EkNpNmCUV5RZwq6MnK4+pGbRYWG+lA/m3uo7TSqJF81OkcOP148gFP6fzdl7JWYBrwWVTS9jXww==";
       };
     };
     "graphql-tools-3.0.0" = {
@@ -27557,22 +27665,13 @@ let
         sha512 = "J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg==";
       };
     };
-    "graphql-upload-11.0.0" = {
-      name = "graphql-upload";
-      packageName = "graphql-upload";
-      version = "11.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-upload/-/graphql-upload-11.0.0.tgz";
-        sha512 = "zsrDtu5gCbQFDWsNa5bMB4nf1LpKX9KDgh+f8oL1288ijV4RxeckhVozAjqjXAfRpxOHD1xOESsh6zq8SjdgjA==";
-      };
-    };
-    "graphql-ws-4.2.2" = {
+    "graphql-ws-4.7.0" = {
       name = "graphql-ws";
       packageName = "graphql-ws";
-      version = "4.2.2";
+      version = "4.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.2.2.tgz";
-        sha512 = "b6TLtWLAmKunD72muL9EeItRGpio9+V3Cx4zJsBkRA+3wxzTWXDvQr9/3qSwJ3D/2abz0ys2KHTM6lB1uH7KIQ==";
+        url = "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.7.0.tgz";
+        sha512 = "Md8SsmC9ZlsogFPd3Ot8HbIAAqsHh8Xoq7j4AmcIat1Bh6k91tjVyQvA0Au1/BolXSYq+RDvib6rATU2Hcf1Xw==";
       };
     };
     "gray-matter-2.1.1" = {
@@ -27593,13 +27692,13 @@ let
         sha512 = "CgXlq3PGpBRj8RMnLSYs46Hvl5q9Up9kwuMAcYlvS4sNgH5j4Ao7hbY+HI62PaYTeIdffiJidLEIeZVCmZCrFA==";
       };
     };
-    "grouped-queue-1.1.0" = {
+    "grouped-queue-2.0.0" = {
       name = "grouped-queue";
       packageName = "grouped-queue";
-      version = "1.1.0";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/grouped-queue/-/grouped-queue-1.1.0.tgz";
-        sha512 = "rZOFKfCqLhsu5VqjBjEWiwrYqJR07KxIkH4mLZlNlGDfntbb4FbMyGFP14TlvRPrU9S3Hnn/sgxbC5ZeN0no3Q==";
+        url = "https://registry.npmjs.org/grouped-queue/-/grouped-queue-2.0.0.tgz";
+        sha512 = "/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw==";
       };
     };
     "growl-1.10.5" = {
@@ -27629,13 +27728,13 @@ let
         sha1 = "f10748cbe76af964b7c96c93c6bcc28af120c081";
       };
     };
-    "grunt-known-options-1.1.1" = {
+    "grunt-known-options-2.0.0" = {
       name = "grunt-known-options";
       packageName = "grunt-known-options";
-      version = "1.1.1";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz";
-        sha512 = "cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==";
+        url = "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz";
+        sha512 = "GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==";
       };
     };
     "gtoken-5.2.1" = {
@@ -28214,6 +28313,15 @@ let
         sha512 = "JQMW+TJe0UAIXZMjCJ4Wf6ayDV9Yv3PBDPsHD4ExBpAspJ6MOcCX+nzVF+UJVv7OqPcg852WEMSHQPoRA+FVSw==";
       };
     };
+    "hast-util-from-parse5-5.0.3" = {
+      name = "hast-util-from-parse5";
+      packageName = "hast-util-from-parse5";
+      version = "5.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-5.0.3.tgz";
+        sha512 = "gOc8UB99F6eWVWFtM9jUikjN7QkWxB3nY0df5Z0Zq1/Nkwl5V4hAAsl0tmwlgWl/1shlTF8DnNYLO8X6wRV9pA==";
+      };
+    };
     "hast-util-from-parse5-6.0.1" = {
       name = "hast-util-from-parse5";
       packageName = "hast-util-from-parse5";
@@ -28295,6 +28403,15 @@ let
         sha512 = "I5GTdSfhYfAPNztx2xJRQpG8cuDSNt599/7YUn7Gx/WxNMsG+a835k97TDkFgk123cwjfwINaZknkKkphx/f2A==";
       };
     };
+    "hastscript-5.1.2" = {
+      name = "hastscript";
+      packageName = "hastscript";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hastscript/-/hastscript-5.1.2.tgz";
+        sha512 = "WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ==";
+      };
+    };
     "hastscript-6.0.0" = {
       name = "hastscript";
       packageName = "hastscript";
@@ -28331,15 +28448,6 @@ let
         sha1 = "078444bd7c1640b0fe540d2c9b73d59678e8e1c4";
       };
     };
-    "hcl-to-json-0.1.1" = {
-      name = "hcl-to-json";
-      packageName = "hcl-to-json";
-      version = "0.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hcl-to-json/-/hcl-to-json-0.1.1.tgz";
-        sha512 = "sj1RPsdgX/ilBGZGnyjbSHQbRe20hyA6VDXYBGJedHSCdwSWkr/7tr85N7FGeM7KvBjIQX7Gl897bo0Ug73Z/A==";
-      };
-    };
     "he-0.5.0" = {
       name = "he";
       packageName = "he";
@@ -29034,13 +29142,13 @@ let
         sha512 = "yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==";
       };
     };
-    "http-proxy-middleware-1.1.2" = {
+    "http-proxy-middleware-1.3.1" = {
       name = "http-proxy-middleware";
       packageName = "http-proxy-middleware";
-      version = "1.1.2";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.1.2.tgz";
-        sha512 = "YRFUeOG3q85FJjAaYVJUoNRW9a73SDlOtAyQOS5PHLr18QeZ/vEhxywNoOPiEO8BxCegz4RXzTHcvyLEGB78UA==";
+        url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz";
+        sha512 = "13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg==";
       };
     };
     "http-signature-0.11.0" = {
@@ -29349,6 +29457,15 @@ let
         sha512 = "2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==";
       };
     };
+    "iconv-lite-0.6.3" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz";
+        sha512 = "4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==";
+      };
+    };
     "icss-replace-symbols-1.1.0" = {
       name = "icss-replace-symbols";
       packageName = "icss-replace-symbols";
@@ -29439,13 +29556,13 @@ let
         sha1 = "48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09";
       };
     };
-    "ignore-walk-3.0.3" = {
+    "ignore-walk-3.0.4" = {
       name = "ignore-walk";
       packageName = "ignore-walk";
-      version = "3.0.3";
+      version = "3.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz";
-        sha512 = "m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==";
+        url = "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz";
+        sha512 = "PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==";
       };
     };
     "image-data-uri-2.0.1" = {
@@ -29466,6 +29583,15 @@ let
         sha1 = "09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c";
       };
     };
+    "image-size-0.9.7" = {
+      name = "image-size";
+      packageName = "image-size";
+      version = "0.9.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/image-size/-/image-size-0.9.7.tgz";
+        sha512 = "KRVgLNZkr00YGN0qn9MlIrmlxbRhsCcEb1Byq3WKGnIV4M48iD185cprRtaoK4t5iC+ym2Q5qlArxZ/V1yzDgA==";
+      };
+    };
     "image-type-3.1.0" = {
       name = "image-type";
       packageName = "image-type";
@@ -29511,13 +29637,13 @@ let
         sha1 = "0ecdad0c546332672d7b5b511b26bb18ce56e73f";
       };
     };
-    "immediate-chunk-store-2.1.1" = {
+    "immediate-chunk-store-2.2.0" = {
       name = "immediate-chunk-store";
       packageName = "immediate-chunk-store";
-      version = "2.1.1";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/immediate-chunk-store/-/immediate-chunk-store-2.1.1.tgz";
-        sha512 = "y5AxkxqpPTj2dkaAEkDnrMuSX4JNicXHD6yTpLfFnflVejL6yJpzf27obrnlf2PSSQiWUf3735Y9tJEjxvqnoA==";
+        url = "https://registry.npmjs.org/immediate-chunk-store/-/immediate-chunk-store-2.2.0.tgz";
+        sha512 = "1bHBna0hCa6arRXicu91IiL9RvvkbNYLVq+mzWdaLGZC3hXvX4doh8e1dLhMKez5siu63CYgO5NrGJbRX5lbPA==";
       };
     };
     "immer-7.0.15" = {
@@ -29862,13 +29988,13 @@ let
         sha512 = "ubMFylXYaG4IkXQVhPautbhV/p6Lo0GlvAMI/jh8cGJQ39yeznJbaTTJP2CqZXezA4GOHzalpwCWqux/NEY38w==";
       };
     };
-    "ink-spinner-4.0.1" = {
+    "ink-spinner-4.0.2" = {
       name = "ink-spinner";
       packageName = "ink-spinner";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ink-spinner/-/ink-spinner-4.0.1.tgz";
-        sha512 = "2eYtzzUPb22Z0Cn2bGvE4BteYjcqDhgrHnCzGJM81EHXXlyNU7aYfucPgZs2CZPy0LWz/5hwoecFhd0mj1hrbw==";
+        url = "https://registry.npmjs.org/ink-spinner/-/ink-spinner-4.0.2.tgz";
+        sha512 = "vQGmhWUEh3IG1IxK1Hl2w6RfH6aaRIJWw9lrG8CvFFyrQ23UpJ8GClJs5/sFBxkNvsrrK9sKNEGlGnsqTYiUww==";
       };
     };
     "ink-text-input-4.0.1" = {
@@ -30015,6 +30141,15 @@ let
         sha512 = "ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==";
       };
     };
+    "inquirer-8.1.0" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-8.1.0.tgz";
+        sha512 = "1nKYPoalt1vMBfCMtpomsUc32wmOoWXAoq3kM/5iTfxyQ2f/BxjixQpC+mbZ7BI0JUXHED4/XPXekDVtJNpXYw==";
+      };
+    };
     "inquirer-autocomplete-prompt-1.3.0" = {
       name = "inquirer-autocomplete-prompt";
       packageName = "inquirer-autocomplete-prompt";
@@ -30168,15 +30303,6 @@ let
         sha512 = "S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==";
       };
     };
-    "internal-slot-1.0.3" = {
-      name = "internal-slot";
-      packageName = "internal-slot";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz";
-        sha512 = "O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==";
-      };
-    };
     "internmap-1.0.1" = {
       name = "internmap";
       packageName = "internmap";
@@ -30258,13 +30384,13 @@ let
         sha512 = "phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==";
       };
     };
-    "inversify-5.0.5" = {
+    "inversify-5.1.1" = {
       name = "inversify";
       packageName = "inversify";
-      version = "5.0.5";
+      version = "5.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/inversify/-/inversify-5.0.5.tgz";
-        sha512 = "60QsfPz8NAU/GZqXu8hJ+BhNf/C/c+Hp0eDc6XMIJTxBiP36AQyyQKpBkOVTLWBFDQWYVHpbbEuIsHu9dLuJDA==";
+        url = "https://registry.npmjs.org/inversify/-/inversify-5.1.1.tgz";
+        sha512 = "j8grHGDzv1v+8T1sAQ+3boTCntFPfvxLCkNcxB1J8qA0lUN+fAlSyYd+RXKvaPRL4AGyPxViutBEJHNXOyUdFQ==";
       };
     };
     "invert-kv-1.0.0" = {
@@ -30312,6 +30438,15 @@ let
         sha512 = "AMCHpf/7sJOjeRbTgCLLvhH41ZnUv0D809ZFJRhR2dGOfp8GxJHzfnNqtgYGxQiW0+dVK2ooBVyR+dqoEQs6mw==";
       };
     };
+    "invoices-1.2.0" = {
+      name = "invoices";
+      packageName = "invoices";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/invoices/-/invoices-1.2.0.tgz";
+        sha512 = "x9jMmN/afPZkeL7qwMj15r+RSV7ztPsfxKgByD3bXR/WhmjrlfU+zwfliohScW/UV1b0FUSq6A7DgTME4tdMSQ==";
+      };
+    };
     "iota-array-1.0.0" = {
       name = "iota-array";
       packageName = "iota-array";
@@ -30573,13 +30708,13 @@ let
         sha1 = "f02ad0259a0921cd199ff21ce1b09e0f6b4e3929";
       };
     };
-    "is-bigint-1.0.1" = {
+    "is-bigint-1.0.2" = {
       name = "is-bigint";
       packageName = "is-bigint";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz";
-        sha512 = "J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==";
+        url = "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz";
+        sha512 = "0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==";
       };
     };
     "is-binary-path-1.0.1" = {
@@ -30600,13 +30735,13 @@ let
         sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
       };
     };
-    "is-boolean-object-1.1.0" = {
+    "is-boolean-object-1.1.1" = {
       name = "is-boolean-object";
       packageName = "is-boolean-object";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz";
-        sha512 = "a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==";
+        url = "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz";
+        sha512 = "bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==";
       };
     };
     "is-buffer-1.1.6" = {
@@ -30681,13 +30816,13 @@ let
         sha1 = "cfff471aee4dd5c9e158598fbe12967b5cdad345";
       };
     };
-    "is-core-module-2.2.0" = {
+    "is-core-module-2.4.0" = {
       name = "is-core-module";
       packageName = "is-core-module";
-      version = "2.2.0";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz";
-        sha512 = "XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==";
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz";
+        sha512 = "6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==";
       };
     };
     "is-data-descriptor-0.1.4" = {
@@ -30708,13 +30843,13 @@ let
         sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
       };
     };
-    "is-date-object-1.0.2" = {
+    "is-date-object-1.0.4" = {
       name = "is-date-object";
       packageName = "is-date-object";
-      version = "1.0.2";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz";
-        sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==";
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz";
+        sha512 = "/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==";
       };
     };
     "is-decimal-1.0.4" = {
@@ -30924,13 +31059,13 @@ let
         sha512 = "lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==";
       };
     };
-    "is-generator-function-1.0.8" = {
+    "is-generator-function-1.0.9" = {
       name = "is-generator-function";
       packageName = "is-generator-function";
-      version = "1.0.8";
+      version = "1.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz";
-        sha512 = "2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ==";
+        url = "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz";
+        sha512 = "ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==";
       };
     };
     "is-glob-2.0.1" = {
@@ -31203,13 +31338,13 @@ let
         sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
       };
     };
-    "is-number-object-1.0.4" = {
+    "is-number-object-1.0.5" = {
       name = "is-number-object";
       packageName = "is-number-object";
-      version = "1.0.4";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz";
-        sha512 = "zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==";
+        url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz";
+        sha512 = "RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==";
       };
     };
     "is-obj-1.0.1" = {
@@ -31446,13 +31581,13 @@ let
         sha512 = "vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==";
       };
     };
-    "is-regex-1.1.2" = {
+    "is-regex-1.1.3" = {
       name = "is-regex";
       packageName = "is-regex";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz";
-        sha512 = "axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==";
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz";
+        sha512 = "qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==";
       };
     };
     "is-regexp-1.0.0" = {
@@ -31545,15 +31680,6 @@ let
         sha512 = "AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==";
       };
     };
-    "is-scoped-1.0.0" = {
-      name = "is-scoped";
-      packageName = "is-scoped";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-scoped/-/is-scoped-1.0.0.tgz";
-        sha1 = "449ca98299e713038256289ecb2b540dc437cb30";
-      };
-    };
     "is-scoped-2.1.0" = {
       name = "is-scoped";
       packageName = "is-scoped";
@@ -31572,13 +31698,13 @@ let
         sha512 = "+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==";
       };
     };
-    "is-ssh-1.3.2" = {
+    "is-ssh-1.3.3" = {
       name = "is-ssh";
       packageName = "is-ssh";
-      version = "1.3.2";
+      version = "1.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.2.tgz";
-        sha512 = "elEw0/0c2UscLrNG+OAorbP539E3rhliKPg+hDMWN9VwrDXfYK+4PBEykDPfxlYYtQvl84TascnQyobfQLHEhQ==";
+        url = "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz";
+        sha512 = "NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ==";
       };
     };
     "is-stream-1.1.0" = {
@@ -31608,13 +31734,13 @@ let
         sha512 = "xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==";
       };
     };
-    "is-string-1.0.5" = {
+    "is-string-1.0.6" = {
       name = "is-string";
       packageName = "is-string";
-      version = "1.0.5";
+      version = "1.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz";
-        sha512 = "buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==";
+        url = "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz";
+        sha512 = "2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==";
       };
     };
     "is-supported-regexp-flag-1.0.1" = {
@@ -31626,13 +31752,13 @@ let
         sha512 = "3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ==";
       };
     };
-    "is-symbol-1.0.3" = {
+    "is-symbol-1.0.4" = {
       name = "is-symbol";
       packageName = "is-symbol";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz";
-        sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==";
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz";
+        sha512 = "C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==";
       };
     };
     "is-text-path-1.0.1" = {
@@ -31842,13 +31968,13 @@ let
         sha1 = "119556d1d1651a41ba105af803267c80b299f629";
       };
     };
-    "is2-2.0.6" = {
+    "is2-2.0.7" = {
       name = "is2";
       packageName = "is2";
-      version = "2.0.6";
+      version = "2.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is2/-/is2-2.0.6.tgz";
-        sha512 = "+Z62OHOjA6k2sUDOKXoZI3EXv7Fb1K52jpTBLbkfx62bcUeSsrTBLhEquCRDKTx0XE5XbHcG/S2vrtE3lnEDsQ==";
+        url = "https://registry.npmjs.org/is2/-/is2-2.0.7.tgz";
+        sha512 = "4vBQoURAXC6hnLFxD4VW7uc04XiwTTl/8ydYJxKvPwkWQrSjInkuM5VZVg6BGr1/natq69zDuvO9lGpLClJqvA==";
       };
     };
     "isarray-0.0.1" = {
@@ -31896,13 +32022,13 @@ let
         sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
       };
     };
-    "isbinaryfile-4.0.6" = {
+    "isbinaryfile-4.0.8" = {
       name = "isbinaryfile";
       packageName = "isbinaryfile";
-      version = "4.0.6";
+      version = "4.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz";
-        sha512 = "ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==";
+        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz";
+        sha512 = "53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==";
       };
     };
     "isemail-3.2.0" = {
@@ -32049,15 +32175,6 @@ let
         sha512 = "BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==";
       };
     };
-    "istextorbinary-2.6.0" = {
-      name = "istextorbinary";
-      packageName = "istextorbinary";
-      version = "2.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz";
-        sha512 = "+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==";
-      };
-    };
     "isuri-2.0.3" = {
       name = "isuri";
       packageName = "isuri";
@@ -32274,6 +32391,15 @@ let
         sha512 = "KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==";
       };
     };
+    "jest-worker-27.0.2" = {
+      name = "jest-worker";
+      packageName = "jest-worker";
+      version = "27.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.2.tgz";
+        sha512 = "EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==";
+      };
+    };
     "jimp-0.12.1" = {
       name = "jimp";
       packageName = "jimp";
@@ -32283,13 +32409,13 @@ let
         sha512 = "0soPJif+yjmzmOF+4cF2hyhxUWWpXpQntsm2joJXFFoRcQiPzsG4dbLKYqYPT3Fc6PjZ8MaLtCkDqqckVSfmRw==";
       };
     };
-    "jitdb-3.0.3" = {
+    "jitdb-3.1.4" = {
       name = "jitdb";
       packageName = "jitdb";
-      version = "3.0.3";
+      version = "3.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jitdb/-/jitdb-3.0.3.tgz";
-        sha512 = "BTXAauBdig83EUkBFdWY9dzdf8wB5DlJ4aa/uCMwmf2eki7DhQBT7rrJFuscR/Mkmqt00G1oxiqa4gnA+oPJ6Q==";
+        url = "https://registry.npmjs.org/jitdb/-/jitdb-3.1.4.tgz";
+        sha512 = "UEzC68eqFIQJPQnmPm2/KGirX2pE+GebhA2EZss3b0UZZca7eGgxpvQ7+sIPcwLKAcZr5rmkFhQHGIQJyf20bg==";
       };
     };
     "jju-1.4.0" = {
@@ -32409,13 +32535,13 @@ let
         sha1 = "bcb4045c8dd0539c134bc1488cdd3e768a7a9e51";
       };
     };
-    "jquery.terminal-2.22.0" = {
+    "jquery.terminal-2.25.1" = {
       name = "jquery.terminal";
       packageName = "jquery.terminal";
-      version = "2.22.0";
+      version = "2.25.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.22.0.tgz";
-        sha512 = "0VDAqWMrqIcI7Mduqkgw/SM9G8aTMJUx/Lu8rxHVPfn10wkHZmaVywczVQgQWRCSdGa+/hy/qZEdaVPPmLyplw==";
+        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.25.1.tgz";
+        sha512 = "I3PlUluRswKZb3UPBtH1UFdyBLLwPwdAJPVheV6xUJdS+0buguXCjn6aqmENWtZiobGGA2wkxCXR2hVQqtMCrw==";
       };
     };
     "js-base64-2.6.4" = {
@@ -32661,13 +32787,13 @@ let
         sha512 = "fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==";
       };
     };
-    "jsdom-16.5.3" = {
+    "jsdom-16.6.0" = {
       name = "jsdom";
       packageName = "jsdom";
-      version = "16.5.3";
+      version = "16.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsdom/-/jsdom-16.5.3.tgz";
-        sha512 = "Qj1H+PEvUsOtdPJ056ewXM4UJPCi4hhLA8wpiz9F2YvsRBhuFsXxtrIFAgGBDynQA9isAMGE91PfUYbdMPXuTA==";
+        url = "https://registry.npmjs.org/jsdom/-/jsdom-16.6.0.tgz";
+        sha512 = "Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg==";
       };
     };
     "jsdom-7.2.2" = {
@@ -32706,49 +32832,49 @@ let
         sha512 = "xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==";
       };
     };
-    "jsii-1.28.0" = {
+    "jsii-1.30.0" = {
       name = "jsii";
       packageName = "jsii";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii/-/jsii-1.28.0.tgz";
-        sha512 = "B6CbHi60fabeQZJYNea8wSUsrILJzN7ng+yx69GmMJ4C6NtCVt7Oc/CITfhY/cYTwdhN3FAJf01e5/v8qj6bUA==";
+        url = "https://registry.npmjs.org/jsii/-/jsii-1.30.0.tgz";
+        sha512 = "TfVHhGjP0QiTEkyfnxrDIE8Da+itxnNUK2YoD69qIPAzmZ58goKVqK4sbXrXz2urHSToGLDmWI8+H69cLeVjJw==";
       };
     };
-    "jsii-pacmak-1.28.0" = {
+    "jsii-pacmak-1.30.0" = {
       name = "jsii-pacmak";
       packageName = "jsii-pacmak";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.28.0.tgz";
-        sha512 = "QAW8rq7M9rA/QSXwaJKMVpttkNW/BJgE9GT6i9UahobQMkmp+zsXCJUENeRg2mndLqX0DDyxO1in/fuIeCeR3A==";
+        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.30.0.tgz";
+        sha512 = "hYvISYBXZ5WL/+LtG3HpVrimguqAoWa3D8jaqsnoiIGrdmaxKCZ0VnioJYxEX7wVamYuCwXu5NFx/b31BspU6A==";
       };
     };
-    "jsii-reflect-1.28.0" = {
+    "jsii-reflect-1.30.0" = {
       name = "jsii-reflect";
       packageName = "jsii-reflect";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.28.0.tgz";
-        sha512 = "jFu9dUy5D0PrxVnaDilb50agbSr0wZRya6StwHyw8Wly3ruzS8uuSB1aWmEwN371m5ewDD4m9nPEQ9zMmKFvMQ==";
+        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.30.0.tgz";
+        sha512 = "t/1Zr1gGqQSYt94Lfq860VLnCr8y8MLvlLorWYqmBeWKCaSPhtYSC1blGhZhDrAW+CBXiT0Oy64j4Q++AntRmw==";
       };
     };
-    "jsii-rosetta-1.28.0" = {
+    "jsii-rosetta-1.30.0" = {
       name = "jsii-rosetta";
       packageName = "jsii-rosetta";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.28.0.tgz";
-        sha512 = "lttDhXiBuWaN0DwsWakD5o7GxyVP8yMCRvpmpXOqz1eK+MMlZp654R6o39M7RksXhhxipCNwfbIY3T7Y7N85qQ==";
+        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.30.0.tgz";
+        sha512 = "ChFg5qhvxCaM2bspCqizs48yMtsm5YLHjBoNZLCkbXyc3yMM5l8pnn787B5ww5TI3+tKxKYWkbiKf356kQ1OgQ==";
       };
     };
-    "jsii-srcmak-0.1.255" = {
+    "jsii-srcmak-0.1.273" = {
       name = "jsii-srcmak";
       packageName = "jsii-srcmak";
-      version = "0.1.255";
+      version = "0.1.273";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.255.tgz";
-        sha512 = "vWIcR+z9HmqHX4lwJI9TFkGhBsZK2tPlgnvANJ09+SwrrLdBFOBFOJB298U5vMyQ/2mf0VFGlFFoJO9mA/6B4A==";
+        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.273.tgz";
+        sha512 = "koWwHIq+LdKPoclPjRvZp2cNwk8Tck/wW1iUqgRDpjIO6+Puq26ovr/XF7etf9sXZEpCRHOT7/qTOVMJo0F+vg==";
       };
     };
     "json-bigint-0.2.3" = {
@@ -32868,6 +32994,15 @@ let
         sha512 = "tFH40YQ+lG7mgYYM1kGZOhQngO4SbOEHZJlA4W+NtetWZ20EUU3BPU+30uWRKumuAJoSo5eqrsXD2h72ioS8ew==";
       };
     };
+    "json-ptr-2.2.0" = {
+      name = "json-ptr";
+      packageName = "json-ptr";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-ptr/-/json-ptr-2.2.0.tgz";
+        sha512 = "w9f6/zhz4kykltXMG7MLJWMajxiPj0q+uzQPR1cggNAE/sXoq/C5vjUb/7QNcC3rJsVIIKy37ALTXy1O+3c8QQ==";
+      };
+    };
     "json-refs-2.1.7" = {
       name = "json-refs";
       packageName = "json-refs";
@@ -32904,13 +33039,13 @@ let
         sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
       };
     };
-    "json-schema-0.2.5" = {
+    "json-schema-0.3.0" = {
       name = "json-schema";
       packageName = "json-schema";
-      version = "0.2.5";
+      version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.5.tgz";
-        sha512 = "gWJOWYFrhQ8j7pVm0EM8Slr+EPVq1Phf6lvzvD/WCeqkrx/f2xBI0xOsRRS9xCn3I4vKtP519dvs3TP09r24wQ==";
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.3.0.tgz";
+        sha512 = "TYfxx36xfl52Rf1LU9HyWSLGPdYLL+SQ8/E/0yVyKG8wCCDaSrhPap0vEdlsZWRaS6tnKKLPGiEJGiREVC8kxQ==";
       };
     };
     "json-schema-deref-sync-0.13.0" = {
@@ -33003,6 +33138,15 @@ let
         sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
       };
     };
+    "json-stringify-nice-1.1.4" = {
+      name = "json-stringify-nice";
+      packageName = "json-stringify-nice";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz";
+        sha512 = "5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==";
+      };
+    };
     "json-stringify-pretty-compact-3.0.0" = {
       name = "json-stringify-pretty-compact";
       packageName = "json-stringify-pretty-compact";
@@ -33039,13 +33183,13 @@ let
         sha512 = "0/4Lv6IenJV0qj2oBdgPIAmFiKKnh8qh7bmLFJ+/ZZHLjSeiL3fKKGX3UryvKPbxFbhV+JcYo9KUC19GJ/Z/4A==";
       };
     };
-    "json2jsii-0.1.188" = {
+    "json2jsii-0.1.236" = {
       name = "json2jsii";
       packageName = "json2jsii";
-      version = "0.1.188";
+      version = "0.1.236";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.1.188.tgz";
-        sha512 = "XeUcBQl0rngTFmiSIx0XNW+g0QgAJcqwsUYzvGcDPPSvPngIGmJ/X6d0UH/nDmSVyEilYyKnVP7iYh3y9by9fA==";
+        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.1.236.tgz";
+        sha512 = "f2UN6Fum7vNQmeonz3HvP7GJxlathMSFYNzYCHdLjFKDpX3KDD9+xi7Qrk0JOMqrGMG6Ev1ye4rXlnUBlWKLvA==";
       };
     };
     "json3-3.2.6" = {
@@ -33336,15 +33480,6 @@ let
         sha1 = "69ec30ce4518bed5997b38f027648e8c285e92f7";
       };
     };
-    "jsx-ast-utils-3.2.0" = {
-      name = "jsx-ast-utils";
-      packageName = "jsx-ast-utils";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz";
-        sha512 = "EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==";
-      };
-    };
     "jszip-2.6.1" = {
       name = "jszip";
       packageName = "jszip";
@@ -33399,6 +33534,24 @@ let
         sha512 = "xtgnwBBZaLtKspGo6jDX/H0FDsHrn41mQVWhNHge7pZe6Nj2gU2izfC09O0rPU/i97iMcJFVjbecFiTAvmNhLQ==";
       };
     };
+    "just-diff-3.1.1" = {
+      name = "just-diff";
+      packageName = "just-diff";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/just-diff/-/just-diff-3.1.1.tgz";
+        sha512 = "sdMWKjRq8qWZEjDcVA6llnUT8RDEBIfOiGpYFPYa9u+2c39JCsejktSP7mj5eRid5EIvTzIpQ2kDOCw1Nq9BjQ==";
+      };
+    };
+    "just-diff-apply-3.0.0" = {
+      name = "just-diff-apply";
+      packageName = "just-diff-apply";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-3.0.0.tgz";
+        sha512 = "K2MLc+ZC2DVxX4V61bIKPeMUUfj1YYZ3h0myhchDXOW1cKoPZMnjIoNCqv9bF2n5Oob1PFxuR2gVJxkxz4e58w==";
+      };
+    };
     "jwa-1.4.1" = {
       name = "jwa";
       packageName = "jwa";
@@ -33543,14 +33696,14 @@ let
         sha1 = "02ea5aa5cf22225725579627ccfd6d266372289a";
       };
     };
-    "kad-git+https://github.com/wikimedia/kad.git#master" = {
+    "kad-git://github.com/wikimedia/kad#master" = {
       name = "kad";
       packageName = "kad";
       version = "1.3.6";
       src = fetchgit {
-        url = "https://github.com/wikimedia/kad.git";
-        rev = "96f8f5c8e5a88f5dffed47abc20756e93e16387e";
-        sha256 = "12e5b6430f57389c974e7a393f2c7ac9a26df06a58cfe1afbcb5a5f3f00249ea";
+        url = "git://github.com/wikimedia/kad";
+        rev = "634a3fc7f60898ec541406d60ccf0d48556070e2";
+        sha256 = "285413585c8cc029d7204b5babc30cde39715fea8c8a875b8ae3c0dff2643d68";
       };
     };
     "kad-localstorage-0.0.7" = {
@@ -33580,13 +33733,13 @@ let
         sha512 = "dD2ga5gLcQhsq1yNoQdy1MU4x4z7YnXM5bcG9SdQuiNr5KKuAmXixH1Mggwdah5o7EfholFbcNDPSVA6BIfaug==";
       };
     };
-    "katex-0.12.0" = {
+    "katex-0.13.11" = {
       name = "katex";
       packageName = "katex";
-      version = "0.12.0";
+      version = "0.13.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/katex/-/katex-0.12.0.tgz";
-        sha512 = "y+8btoc/CK70XqcHqjxiGWBOeIL8upbS0peTPXTvgrh21n1RiWWcIpSWM+4uXq+IAgNh9YYQWdc7LVDPDAEEAg==";
+        url = "https://registry.npmjs.org/katex/-/katex-0.13.11.tgz";
+        sha512 = "yJBHVIgwlAaapzlbvTpVF/ZOs8UkTj/sd46Fl8+qAf2/UiituPYVeapVD8ADZtqyRg/qNWUKt7gJoyYVWLrcXw==";
       };
     };
     "keep-alive-agent-0.0.1" = {
@@ -33661,13 +33814,13 @@ let
         sha1 = "1e80454250018dbad4c3fe94497d6e67b6269c77";
       };
     };
-    "keytar-7.6.0" = {
+    "keytar-7.7.0" = {
       name = "keytar";
       packageName = "keytar";
-      version = "7.6.0";
+      version = "7.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/keytar/-/keytar-7.6.0.tgz";
-        sha512 = "H3cvrTzWb11+iv0NOAnoNAPgEapVZnYLVHZQyxmh7jdmVfR/c0jNNFEZ6AI38W/4DeTGTaY66ZX4Z1SbfKPvCQ==";
+        url = "https://registry.npmjs.org/keytar/-/keytar-7.7.0.tgz";
+        sha512 = "YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==";
       };
     };
     "keyv-3.0.0" = {
@@ -33877,24 +34030,6 @@ let
         sha512 = "uLrFPGj2//glOgJGLZn8hNTNlhU+eGx0WFRLZxIoC39nfjLRZ1fncHcPK2t5gA2GcvgtGUT2dnw60M8vJAOIkQ==";
       };
     };
-    "language-subtag-registry-0.3.21" = {
-      name = "language-subtag-registry";
-      packageName = "language-subtag-registry";
-      version = "0.3.21";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz";
-        sha512 = "L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==";
-      };
-    };
-    "language-tags-1.0.5" = {
-      name = "language-tags";
-      packageName = "language-tags";
-      version = "1.0.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz";
-        sha1 = "d321dbc4da30ba8bf3024e040fa5c14661f9193a";
-      };
-    };
     "last-call-webpack-plugin-3.0.0" = {
       name = "last-call-webpack-plugin";
       packageName = "last-call-webpack-plugin";
@@ -33994,15 +34129,6 @@ let
         sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e";
       };
     };
-    "lazy-cache-2.0.2" = {
-      name = "lazy-cache";
-      packageName = "lazy-cache";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz";
-        sha1 = "b9190a4f913354694840859f8a8f7084d8822264";
-      };
-    };
     "lazyness-1.2.0" = {
       name = "lazyness";
       packageName = "lazyness";
@@ -34309,13 +34435,13 @@ let
         sha512 = "IR5ASkAU4NHTN1JFeP9bYvhARhaBg8VD8yUcmvNIvFWg6L3dsM2yK1A9EM6MpPvWYKH9SEiljB59ZUa5s2pYnA==";
       };
     };
-    "libnpmaccess-4.0.1" = {
+    "libnpmaccess-4.0.2" = {
       name = "libnpmaccess";
       packageName = "libnpmaccess";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.1.tgz";
-        sha512 = "ZiAgvfUbvmkHoMTzdwmNWCrQRsDkOC+aM5BDfO0C9aOSwF3R1LdFDBD+Rer1KWtsoQYO35nXgmMR7OUHpDRxyA==";
+        url = "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.2.tgz";
+        sha512 = "avXtJibZuGap0/qADDYqb9zdpgzVu/yG5+tl2sTRa7MCkDNv2ZlGwCYI0r6/+tmqXPj0iB9fKexHz426vB326w==";
       };
     };
     "libnpmconfig-1.2.1" = {
@@ -34327,13 +34453,13 @@ let
         sha512 = "9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==";
       };
     };
-    "libnpmpublish-4.0.0" = {
+    "libnpmpublish-4.0.1" = {
       name = "libnpmpublish";
       packageName = "libnpmpublish";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.0.tgz";
-        sha512 = "2RwYXRfZAB1x/9udKpZmqEzSqNd7ouBRU52jyG14/xG8EF+O9A62d7/XVR3iABEQHf1iYhkm0Oq9iXjrL3tsXA==";
+        url = "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.1.tgz";
+        sha512 = "hZCrZ8v4G9YH3DxpIyBdob25ijD5v5LNzRbwsej4pPDopjdcLLj1Widl+BUeFa7D0ble1JYL4F3owjLJqiA8yA==";
       };
     };
     "libsodium-0.7.9" = {
@@ -34417,6 +34543,15 @@ let
         sha512 = "VpkNbaWlsmTgaWWJPGyYb2dm2v5b+wPQWmfZBJ7V5znL17Q+ef7Csj8PTTgnIccAWE429QL9/OyOzn/JVnZ/PA==";
       };
     };
+    "lightning-3.3.7" = {
+      name = "lightning";
+      packageName = "lightning";
+      version = "3.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.7.tgz";
+        sha512 = "fjzFCwXafGUeCwUSiEKToS/A8GO4oxDiDG+XNuL984mgYyJdXLHoTEMdaYZD48yowtfjYCdLks0iypIdg6kn1Q==";
+      };
+    };
     "limit-spawn-0.0.3" = {
       name = "limit-spawn";
       packageName = "limit-spawn";
@@ -34426,13 +34561,13 @@ let
         sha1 = "cc09c24467a0f0a1ed10a5196dba597cad3f65dc";
       };
     };
-    "limitation-0.2.1" = {
+    "limitation-0.2.2" = {
       name = "limitation";
       packageName = "limitation";
-      version = "0.2.1";
+      version = "0.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/limitation/-/limitation-0.2.1.tgz";
-        sha512 = "5lMmsPc9ZtMjBk8rJ8ADKIj6AOgYvRtAuNfboO2TVPZsmcn6gSRyijUsA8KG6DUcJ89/hyQ3cnVRyzO1hbDavw==";
+        url = "https://registry.npmjs.org/limitation/-/limitation-0.2.2.tgz";
+        sha512 = "kUfYO29baIJzY3S4/j7qaWl0GdjxT88SEaIcUN98YGdhYh+m7Zkt1N4jGubVF05A7dzjfjgtQD/NI5APKl38RQ==";
       };
     };
     "line-reader-0.4.0" = {
@@ -34570,6 +34705,15 @@ let
         sha512 = "n0Ib9fjVL8x3ymdOax6gjmR0Nq59vIhQ89en1XpgxIWbowWhiJUXPolTEgiA8vpeoG72CZN3nYaPXgil9uNVLg==";
       };
     };
+    "ln-service-51.8.1" = {
+      name = "ln-service";
+      packageName = "ln-service";
+      version = "51.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.8.1.tgz";
+        sha512 = "YjRsNwAez1RfA63YDoLf5Ojg3Ma+aLmvfMqasqU3r+/pDR+mgGFyjVODsw6qujerIEM2FaxegddJeOz7R7/Ijw==";
+      };
+    };
     "ln-sync-0.4.5" = {
       name = "ln-sync";
       packageName = "ln-sync";
@@ -34579,13 +34723,13 @@ let
         sha512 = "ETaASkbv5v2gcrob/xonsjy0deKSxIHfKOTfOXQicxhZed02plQ2oAUx/K3yxIhRnm7YS45Z/gYQLxUqHkI4ow==";
       };
     };
-    "ln-telegram-3.2.2" = {
+    "ln-telegram-3.2.3" = {
       name = "ln-telegram";
       packageName = "ln-telegram";
-      version = "3.2.2";
+      version = "3.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.2.2.tgz";
-        sha512 = "6gJmRkOpcsyARrCL0+O66xgVlZVRd1erLSw1/dsiGXgUsaSuZ4mFpxE40j6eXZZZxwcFcYNE06Q79BMtsIvoqA==";
+        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.2.3.tgz";
+        sha512 = "pNYz/xz/VCn8EApERCR+2nB0hmBM25dAmKUs0FZnMlQGozNaSqb26ttN0XLA/Q/JVOeovacjlAOJ0tl6zqcS8w==";
       };
     };
     "load-bmfont-1.4.1" = {
@@ -34669,6 +34813,15 @@ let
         sha512 = "od7eKCCZ62ITvFf8nHHrIiYmgOHb4xVNDRDqxBWSaao5FZyyZVX8OmRCbwjDGPrSrgIulwPNyBsWCGnhiDC0oQ==";
       };
     };
+    "load-yaml-file-0.2.0" = {
+      name = "load-yaml-file";
+      packageName = "load-yaml-file";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz";
+        sha512 = "OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==";
+      };
+    };
     "loader-runner-2.4.0" = {
       name = "loader-runner";
       packageName = "loader-runner";
@@ -34795,13 +34948,13 @@ let
         sha1 = "259933d1327cbaf0fd3662f8fffde36809d84ced";
       };
     };
-    "locutus-2.0.14" = {
+    "locutus-2.0.15" = {
       name = "locutus";
       packageName = "locutus";
-      version = "2.0.14";
+      version = "2.0.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/locutus/-/locutus-2.0.14.tgz";
-        sha512 = "0H1o1iHNEp3kJ5rW57bT/CAP5g6Qm0Zd817Wcx2+rOMTYyIJoc482Ja1v9dB6IUjwvWKcBNdYi7x2lRXtlJ3bA==";
+        url = "https://registry.npmjs.org/locutus/-/locutus-2.0.15.tgz";
+        sha512 = "2xWC4RkoAoCVXEb/stzEgG1TNgd+mrkLBj6TuEDNyUoKeQ2XzDTyJUC23sMiqbL6zJmJSP3w59OZo+zc4IBOmA==";
       };
     };
     "lodash-2.4.2" = {
@@ -35362,13 +35515,13 @@ let
         sha1 = "9ccb4e505d486b91651345772885a2df27fd017c";
       };
     };
-    "lodash.endswith-4.2.1" = {
-      name = "lodash.endswith";
-      packageName = "lodash.endswith";
-      version = "4.2.1";
+    "lodash.differencewith-4.5.0" = {
+      name = "lodash.differencewith";
+      packageName = "lodash.differencewith";
+      version = "4.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.endswith/-/lodash.endswith-4.2.1.tgz";
-        sha1 = "fed59ac1738ed3e236edd7064ec456448b37bc09";
+        url = "https://registry.npmjs.org/lodash.differencewith/-/lodash.differencewith-4.5.0.tgz";
+        sha1 = "bafafbc918b55154e179176a00bb0aefaac854b7";
       };
     };
     "lodash.escape-3.2.0" = {
@@ -35650,15 +35803,6 @@ let
         sha1 = "619c0af3d03f8b04c31f5882840b77b11cd68343";
       };
     };
-    "lodash.islength-4.0.1" = {
-      name = "lodash.islength";
-      packageName = "lodash.islength";
-      version = "4.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz";
-        sha1 = "4e9868d452575d750affd358c979543dc20ed577";
-      };
-    };
     "lodash.ismatch-4.4.0" = {
       name = "lodash.ismatch";
       packageName = "lodash.ismatch";
@@ -36262,6 +36406,15 @@ let
         sha512 = "N0qPlqfypFx7UHNn4B3lzS/b0uLqt2hmuoa+PpuXNYgozdJYAyauF5Ky0BWVjrxDlMWiT3qN4zPq3vVAfZy7Yg==";
       };
     };
+    "logidrom-0.3.1" = {
+      name = "logidrom";
+      packageName = "logidrom";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/logidrom/-/logidrom-0.3.1.tgz";
+        sha512 = "B1Rjay3Ye/JcythUjMt+KLiLIwOjnMJN1M5BRbDgNMsJhmn7yApbx6n1rw7cT3Fi/NA77HDM+y3y1nXvKQVB9Q==";
+      };
+    };
     "loglevel-1.7.1" = {
       name = "loglevel";
       packageName = "loglevel";
@@ -36622,15 +36775,6 @@ let
         sha512 = "oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg==";
       };
     };
-    "lynx-0.2.0" = {
-      name = "lynx";
-      packageName = "lynx";
-      version = "0.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lynx/-/lynx-0.2.0.tgz";
-        sha1 = "79e6674530da4183e87953bd686171e070da50b9";
-      };
-    };
     "lzma-native-6.0.1" = {
       name = "lzma-native";
       packageName = "lzma-native";
@@ -36757,13 +36901,13 @@ let
         sha512 = "ZpqciThlbvE6KkyT5oxAup/6CwjePw1hdtR8NU5+vq2hn9Sp5b7w3bRiJRvo9fMHUj2dWSuVCdkqt9p4ed1V9Q==";
       };
     };
-    "magnet-uri-6.1.1" = {
+    "magnet-uri-6.2.0" = {
       name = "magnet-uri";
       packageName = "magnet-uri";
-      version = "6.1.1";
+      version = "6.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-6.1.1.tgz";
-        sha512 = "TUyzaLB36TqqIHzgvkMrlZUPN6mfoLX/+2do5YJH3gjBQL2auEtivT+99npIiA77YepJ6pYA/AzWhboXTAAm0w==";
+        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-6.2.0.tgz";
+        sha512 = "O9AgdDwT771fnUj0giPYu/rACpz8173y8UXCSOdLITjOVfBenZ9H9q3FqQmveK+ORUMuD+BkKNSZP8C3+IMAKQ==";
       };
     };
     "make-dir-1.3.0" = {
@@ -36973,6 +37117,15 @@ let
         sha512 = "aU1TzmBKcWNNYvH9pjq6u92BML+Hz3h5S/QpfTFwiQF852pLT+9qHsrhM9JYipkOXZxGn+sGH8oyJE9FD9WezQ==";
       };
     };
+    "markdown-it-12.0.4" = {
+      name = "markdown-it";
+      packageName = "markdown-it";
+      version = "12.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-it/-/markdown-it-12.0.4.tgz";
+        sha512 = "34RwOXZT8kyuOJy25oJNJoulO8L0bTHYWXcdZBYZqFnjIy3NgjeoM3FmPXIOFQ26/lSHYMr8oc62B6adxXcb3Q==";
+      };
+    };
     "markdown-it-12.0.6" = {
       name = "markdown-it";
       packageName = "markdown-it";
@@ -37036,13 +37189,13 @@ let
         sha512 = "ODpk98FWkGIq2vkwm2NOLt4G6TRgy3M9eTa9SFm06pUyOd0zjjYAwkhsjiCDU42pzKuz0ChiwBO0utuOj3LNOA==";
       };
     };
-    "markdown-it-footnote-3.0.2" = {
+    "markdown-it-footnote-3.0.3" = {
       name = "markdown-it-footnote";
       packageName = "markdown-it-footnote";
-      version = "3.0.2";
+      version = "3.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/markdown-it-footnote/-/markdown-it-footnote-3.0.2.tgz";
-        sha512 = "JVW6fCmZWjvMdDQSbOT3nnOQtd9iAXmw7hTSh26+v42BnvXeVyGMDBm5b/EZocMed2MbCAHiTX632vY0FyGB8A==";
+        url = "https://registry.npmjs.org/markdown-it-footnote/-/markdown-it-footnote-3.0.3.tgz";
+        sha512 = "YZMSuCGVZAjzKMn+xqIco9d1cLGxbELHZ9do/TSYVzraooV8ypsppKNmUJ0fVH5ljkCInQAtFpm8Rb3eXSrt5w==";
       };
     };
     "markdown-it-github-headings-1.1.2" = {
@@ -37117,13 +37270,13 @@ let
         sha512 = "UB/IbzjWazwTlNAX0pvWNlJS8NKsOQ4syrXZQ/C72j+jirrsjVRT627lCaylrKJFBQWfRsPmIVQie8x38DEhAQ==";
       };
     };
-    "markdown-link-extractor-1.2.7" = {
+    "markdown-link-extractor-1.3.0" = {
       name = "markdown-link-extractor";
       packageName = "markdown-link-extractor";
-      version = "1.2.7";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.2.7.tgz";
-        sha512 = "gFwyqKEMPAwXiW2n7ZeM26bJL9WfkYnzP1O2lxFvqenefzPQE4A5XjidqbotOyDA5qUzjOHeqYoaGa2qb4B4Og==";
+        url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.0.tgz";
+        sha512 = "1qXoYqhsU5qgWtUF9HQlBF82jRrakENh+7nmPUxoMJw13kf92jzb72EchrSsw5vdqbDLJurkpNL50xLFRhjmbw==";
       };
     };
     "markdown-serve-0.3.3" = {
@@ -37162,6 +37315,24 @@ let
         sha512 = "Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==";
       };
     };
+    "markdownlint-0.23.1" = {
+      name = "markdownlint";
+      packageName = "markdownlint";
+      version = "0.23.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdownlint/-/markdownlint-0.23.1.tgz";
+        sha512 = "iOEwhDfNmq2IJlaA8mzEkHYUi/Hwoa6Ss+HO5jkwUR6wQ4quFr0WzSx+Z9rsWZKUaPbyirIdL1zGmJRkWawr4Q==";
+      };
+    };
+    "markdownlint-rule-helpers-0.14.0" = {
+      name = "markdownlint-rule-helpers";
+      packageName = "markdownlint-rule-helpers";
+      version = "0.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdownlint-rule-helpers/-/markdownlint-rule-helpers-0.14.0.tgz";
+        sha512 = "vRTPqSU4JK8vVXmjICHSBhwXUvbfh/VJo+j7hvxqe15tLJyomv3FLgFdFgb8kpj0Fe8SsJa/TZUAXv7/sN+N7A==";
+      };
+    };
     "marked-0.3.19" = {
       name = "marked";
       packageName = "marked";
@@ -37180,22 +37351,13 @@ let
         sha512 = "c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==";
       };
     };
-    "marked-0.8.2" = {
+    "marked-2.0.6" = {
       name = "marked";
       packageName = "marked";
-      version = "0.8.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/marked/-/marked-0.8.2.tgz";
-        sha512 = "EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==";
-      };
-    };
-    "marked-2.0.3" = {
-      name = "marked";
-      packageName = "marked";
-      version = "2.0.3";
+      version = "2.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/marked/-/marked-2.0.3.tgz";
-        sha512 = "5otztIIcJfPc2qGTN8cVtOJEjNJZ0jwa46INMagrYfk0EvqtRuEHLsEe0LrFS0/q+ZRKT0+kXK7P2T1AN5lWRA==";
+        url = "https://registry.npmjs.org/marked/-/marked-2.0.6.tgz";
+        sha512 = "S2mYj0FzTQa0dLddssqwRVW4EOJOVJ355Xm2Vcbm+LU7GQRGWvwbO5K87OaPSOux2AwTSgtPPaXmc8sDPrhn2A==";
       };
     };
     "marked-terminal-3.3.0" = {
@@ -37216,13 +37378,13 @@ let
         sha512 = "t7Mdf6T3PvOEyN01c3tYxDzhyKZ8xnkp8Rs6Fohno63L/0pFTJ5Qtwto2AQVuDtbQiWzD+4E5AAu1Z2iLc8miQ==";
       };
     };
-    "marky-1.2.1" = {
+    "marky-1.2.2" = {
       name = "marky";
       packageName = "marky";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/marky/-/marky-1.2.1.tgz";
-        sha512 = "md9k+Gxa3qLH6sUKpeC2CNkJK/Ld+bEz5X96nYwloqphQE0CKCVEKco/6jxEZixinqNdz5RFi/KaCyfbMDMAXQ==";
+        url = "https://registry.npmjs.org/marky/-/marky-1.2.2.tgz";
+        sha512 = "k1dB2HNeaNyORco8ulVEhctyEGkKHb2YWAhDsxeFlW2nROIirsctBYzKwwS3Vza+sKTS1zO4Z+n9/+9WbGLIxQ==";
       };
     };
     "mastodon-api-1.3.0" = {
@@ -37387,22 +37549,13 @@ let
         sha512 = "xbEFXCYVWrSx/gEKS1VPlg84h/4L20znVIulKw6kMfmBUAZNAnF00eczz9ICMl+/hjQGo5KSXRxbL/47X3rmMw==";
       };
     };
-    "md5-hex-2.0.0" = {
+    "md5-hex-3.0.1" = {
       name = "md5-hex";
       packageName = "md5-hex";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz";
-        sha1 = "d0588e9f1c74954492ecd24ac0ac6ce997d92e33";
-      };
-    };
-    "md5-o-matic-0.1.1" = {
-      name = "md5-o-matic";
-      packageName = "md5-o-matic";
-      version = "0.1.1";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz";
-        sha1 = "822bccd65e117c514fab176b25945d54100a03c3";
+        url = "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz";
+        sha512 = "BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==";
       };
     };
     "md5.js-1.3.5" = {
@@ -37450,6 +37603,24 @@ let
         sha512 = "7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==";
       };
     };
+    "mdast-util-find-and-replace-1.1.1" = {
+      name = "mdast-util-find-and-replace";
+      packageName = "mdast-util-find-and-replace";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz";
+        sha512 = "9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==";
+      };
+    };
+    "mdast-util-footnote-0.1.7" = {
+      name = "mdast-util-footnote";
+      packageName = "mdast-util-footnote";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz";
+        sha512 = "QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w==";
+      };
+    };
     "mdast-util-from-markdown-0.8.5" = {
       name = "mdast-util-from-markdown";
       packageName = "mdast-util-from-markdown";
@@ -37459,6 +37630,60 @@ let
         sha512 = "2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==";
       };
     };
+    "mdast-util-frontmatter-0.2.0" = {
+      name = "mdast-util-frontmatter";
+      packageName = "mdast-util-frontmatter";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz";
+        sha512 = "FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==";
+      };
+    };
+    "mdast-util-gfm-0.1.2" = {
+      name = "mdast-util-gfm";
+      packageName = "mdast-util-gfm";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz";
+        sha512 = "NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==";
+      };
+    };
+    "mdast-util-gfm-autolink-literal-0.1.3" = {
+      name = "mdast-util-gfm-autolink-literal";
+      packageName = "mdast-util-gfm-autolink-literal";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz";
+        sha512 = "GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==";
+      };
+    };
+    "mdast-util-gfm-strikethrough-0.2.3" = {
+      name = "mdast-util-gfm-strikethrough";
+      packageName = "mdast-util-gfm-strikethrough";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz";
+        sha512 = "5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==";
+      };
+    };
+    "mdast-util-gfm-table-0.1.6" = {
+      name = "mdast-util-gfm-table";
+      packageName = "mdast-util-gfm-table";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz";
+        sha512 = "j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==";
+      };
+    };
+    "mdast-util-gfm-task-list-item-0.1.6" = {
+      name = "mdast-util-gfm-task-list-item";
+      packageName = "mdast-util-gfm-task-list-item";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz";
+        sha512 = "/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==";
+      };
+    };
     "mdast-util-mdx-0.1.1" = {
       name = "mdast-util-mdx";
       packageName = "mdast-util-mdx";
@@ -37657,40 +37882,31 @@ let
         sha512 = "Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==";
       };
     };
-    "mem-8.1.0" = {
+    "mem-8.1.1" = {
       name = "mem";
       packageName = "mem";
-      version = "8.1.0";
+      version = "8.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mem/-/mem-8.1.0.tgz";
-        sha512 = "FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA==";
+        url = "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz";
+        sha512 = "qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==";
       };
     };
-    "mem-fs-1.2.0" = {
+    "mem-fs-2.2.1" = {
       name = "mem-fs";
       packageName = "mem-fs";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mem-fs/-/mem-fs-1.2.0.tgz";
-        sha512 = "b8g0jWKdl8pM0LqAPdK9i8ERL7nYrzmJfRhxMiWH2uYdfYnb7uXnmwVb0ZGe7xyEl4lj+nLIU3yf4zPUT+XsVQ==";
-      };
-    };
-    "mem-fs-editor-6.0.0" = {
-      name = "mem-fs-editor";
-      packageName = "mem-fs-editor";
-      version = "6.0.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-6.0.0.tgz";
-        sha512 = "e0WfJAMm8Gv1mP5fEq/Blzy6Lt1VbLg7gNnZmZak7nhrBTibs+c6nQ4SKs/ZyJYHS1mFgDJeopsLAv7Ow0FMFg==";
+        url = "https://registry.npmjs.org/mem-fs/-/mem-fs-2.2.1.tgz";
+        sha512 = "yiAivd4xFOH/WXlUi6v/nKopBh1QLzwjFi36NK88cGt/PRXI8WeBASqY+YSjIVWvQTx3hR8zHKDBMV6hWmglNA==";
       };
     };
-    "mem-fs-editor-7.1.0" = {
+    "mem-fs-editor-9.0.1" = {
       name = "mem-fs-editor";
       packageName = "mem-fs-editor";
-      version = "7.1.0";
+      version = "9.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-7.1.0.tgz";
-        sha512 = "BH6QEqCXSqGeX48V7zu+e3cMwHU7x640NB8Zk8VNvVZniz+p4FK60pMx/3yfkzo6miI6G3a8pH6z7FeuIzqrzA==";
+        url = "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-9.0.1.tgz";
+        sha512 = "SqW+DkPbxZVzVldNHexoo5MiUR3YpIqiCVcZ/SZ6f7KToaSV7pMd4/URrkD5mnj35bd6NAK7SlftHSyW+Kgk4w==";
       };
     };
     "memfs-3.2.2" = {
@@ -37711,6 +37927,15 @@ let
         sha512 = "HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA==";
       };
     };
+    "memoize-one-5.2.1" = {
+      name = "memoize-one";
+      packageName = "memoize-one";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz";
+        sha512 = "zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==";
+      };
+    };
     "memoizeasync-1.1.0" = {
       name = "memoizeasync";
       packageName = "memoizeasync";
@@ -37738,13 +37963,13 @@ let
         sha1 = "7890b01d52c00c8ebc9d533e1f8eb17e3034871a";
       };
     };
-    "memory-chunk-store-1.3.2" = {
+    "memory-chunk-store-1.3.5" = {
       name = "memory-chunk-store";
       packageName = "memory-chunk-store";
-      version = "1.3.2";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/memory-chunk-store/-/memory-chunk-store-1.3.2.tgz";
-        sha512 = "EBcbwpdQlzT5aNV0FTT+RAfh1cGEssjiCcRGcTk57mKsnZlRMOtH4Cfk/AqQnkz8xP2dUF+/lgpmErSGwwE1FA==";
+        url = "https://registry.npmjs.org/memory-chunk-store/-/memory-chunk-store-1.3.5.tgz";
+        sha512 = "E1Xc1U4ifk/FkC2ZsWhCaW1xg9HbE/OBmQTLe2Tr9c27YPSLbW7kw1cnb3kQWD1rDtErFJHa7mB9EVrs7aTx9g==";
       };
     };
     "memory-fs-0.3.0" = {
@@ -37954,22 +38179,22 @@ let
         sha1 = "f8a064760d37e7978ad5f9f6d3c119a494f57081";
       };
     };
-    "mermaid-8.9.2" = {
+    "mermaid-8.10.1" = {
       name = "mermaid";
       packageName = "mermaid";
-      version = "8.9.2";
+      version = "8.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mermaid/-/mermaid-8.9.2.tgz";
-        sha512 = "XWEaraDRDlHZexdeHSSr/MH4VJAOksRSPudchi69ecZJ7IUjjlzHsg32n4ZwJUh6lFO+NMYLHwHNNYUyxIjGPg==";
+        url = "https://registry.npmjs.org/mermaid/-/mermaid-8.10.1.tgz";
+        sha512 = "KxwKEJDKy303TQdz5TQMFb/4u+gUL21CefUMGOfuigDh9powcYaNmuJ5BkHmO0jB3Y1z2zlsuKvHZ2CusWH5+A==";
       };
     };
-    "mersenne-0.0.4" = {
-      name = "mersenne";
-      packageName = "mersenne";
-      version = "0.0.4";
+    "meros-1.1.4" = {
+      name = "meros";
+      packageName = "meros";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mersenne/-/mersenne-0.0.4.tgz";
-        sha1 = "401fdec7ec21cdb9e03cd3d3021398da21b27085";
+        url = "https://registry.npmjs.org/meros/-/meros-1.1.4.tgz";
+        sha512 = "E9ZXfK9iQfG9s73ars9qvvvbSIkJZF5yOo9j4tcwM5tN8mUKfj/EKN5PzOr3ZH0y5wL7dLAHw3RVEfpQV9Q7VQ==";
       };
     };
     "metals-languageclient-0.4.2" = {
@@ -38143,6 +38368,78 @@ let
         sha512 = "+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==";
       };
     };
+    "micromark-extension-footnote-0.3.2" = {
+      name = "micromark-extension-footnote";
+      packageName = "micromark-extension-footnote";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz";
+        sha512 = "gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ==";
+      };
+    };
+    "micromark-extension-frontmatter-0.2.2" = {
+      name = "micromark-extension-frontmatter";
+      packageName = "micromark-extension-frontmatter";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz";
+        sha512 = "q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==";
+      };
+    };
+    "micromark-extension-gfm-0.3.3" = {
+      name = "micromark-extension-gfm";
+      packageName = "micromark-extension-gfm";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz";
+        sha512 = "oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==";
+      };
+    };
+    "micromark-extension-gfm-autolink-literal-0.5.7" = {
+      name = "micromark-extension-gfm-autolink-literal";
+      packageName = "micromark-extension-gfm-autolink-literal";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz";
+        sha512 = "ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==";
+      };
+    };
+    "micromark-extension-gfm-strikethrough-0.6.5" = {
+      name = "micromark-extension-gfm-strikethrough";
+      packageName = "micromark-extension-gfm-strikethrough";
+      version = "0.6.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz";
+        sha512 = "PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==";
+      };
+    };
+    "micromark-extension-gfm-table-0.4.3" = {
+      name = "micromark-extension-gfm-table";
+      packageName = "micromark-extension-gfm-table";
+      version = "0.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz";
+        sha512 = "hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==";
+      };
+    };
+    "micromark-extension-gfm-tagfilter-0.3.0" = {
+      name = "micromark-extension-gfm-tagfilter";
+      packageName = "micromark-extension-gfm-tagfilter";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz";
+        sha512 = "9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==";
+      };
+    };
+    "micromark-extension-gfm-task-list-item-0.3.3" = {
+      name = "micromark-extension-gfm-task-list-item";
+      packageName = "micromark-extension-gfm-task-list-item";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz";
+        sha512 = "0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==";
+      };
+    };
     "micromark-extension-mdx-0.2.1" = {
       name = "micromark-extension-mdx";
       packageName = "micromark-extension-mdx";
@@ -38359,6 +38656,15 @@ let
         sha512 = "QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==";
       };
     };
+    "mime-db-1.48.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.48.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz";
+        sha512 = "FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==";
+      };
+    };
     "mime-types-2.1.18" = {
       name = "mime-types";
       packageName = "mime-types";
@@ -38863,22 +39169,22 @@ let
         sha1 = "ebb3a977e7af1c683ae6fda12b545a6ba6c5853d";
       };
     };
-    "mobx-6.2.0" = {
+    "mobx-6.3.2" = {
       name = "mobx";
       packageName = "mobx";
-      version = "6.2.0";
+      version = "6.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mobx/-/mobx-6.2.0.tgz";
-        sha512 = "j5f16JIq2v4flvYCqaAB9tMtJt/y5efR2OO5Xy+w4/MBMeQ1WeGR0T8BtiNgmxM/OQzPFUKb5DTex9Y8a/yk+g==";
+        url = "https://registry.npmjs.org/mobx/-/mobx-6.3.2.tgz";
+        sha512 = "xGPM9dIE1qkK9Nrhevp0gzpsmELKU4MFUJRORW/jqxVFIHHWIoQrjDjL8vkwoJYY3C2CeVJqgvl38hgKTalTWg==";
       };
     };
-    "mobx-react-7.1.0" = {
+    "mobx-react-7.2.0" = {
       name = "mobx-react";
       packageName = "mobx-react";
-      version = "7.1.0";
+      version = "7.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mobx-react/-/mobx-react-7.1.0.tgz";
-        sha512 = "DxvA6VXmnZ+N9f/UTtolWtdRnAAQY2iHWTSPLktfpj8NKlXUe4dabBAjuXrBcZUM8GjLWnxD1ZEjssXq1M0RAw==";
+        url = "https://registry.npmjs.org/mobx-react/-/mobx-react-7.2.0.tgz";
+        sha512 = "KHUjZ3HBmZlNnPd1M82jcdVsQRDlfym38zJhZEs33VxyVQTvL77hODCArq6+C1P1k/6erEeo2R7rpE7ZeOL7dg==";
       };
     };
     "mobx-react-lite-3.2.0" = {
@@ -38908,13 +39214,13 @@ let
         sha512 = "O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==";
       };
     };
-    "mocha-8.3.2" = {
+    "mocha-8.4.0" = {
       name = "mocha";
       packageName = "mocha";
-      version = "8.3.2";
+      version = "8.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-8.3.2.tgz";
-        sha512 = "UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg==";
+        url = "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz";
+        sha512 = "hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==";
       };
     };
     "mock-require-3.0.3" = {
@@ -38980,13 +39286,13 @@ let
         sha512 = "7PZH8QFJ51cIVtDv7wfUREBd3gL59JB0v/ARA3RI9zkSRa9LyGjS1Bdldii2J1/NQXRQ/3OOVOSdnZrCcVaZlw==";
       };
     };
-    "moize-6.0.1" = {
+    "moize-6.0.3" = {
       name = "moize";
       packageName = "moize";
-      version = "6.0.1";
+      version = "6.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moize/-/moize-6.0.1.tgz";
-        sha512 = "Bl91P98A6Xba35mn9XoAW9DuGoQb3HyoY888TxrvQbMr9+1v3dzBzi9n4Guh5Lne8ENdqbXjQ0a8mf7UUvZ9wg==";
+        url = "https://registry.npmjs.org/moize/-/moize-6.0.3.tgz";
+        sha512 = "7Jz9TSiqW9G2u8HwUWnaBQMFMPLblrWKEiWN4BA/GPOfQlsnfQqq0yRnTGHckGPlKApA9Eu1HPb/eTqvK9EtKg==";
       };
     };
     "mold-source-map-0.4.0" = {
@@ -39160,13 +39466,13 @@ let
         sha512 = "GpxVObyOzL0CGPBqo6B04GinN8JLk12NRYAIkYvARd9ZCoJKevvOyCaWK6bdK/kFSDj3LPDnCsJbezzNlsi87Q==";
       };
     };
-    "mqtt-packet-6.9.1" = {
+    "mqtt-packet-6.10.0" = {
       name = "mqtt-packet";
       packageName = "mqtt-packet";
-      version = "6.9.1";
+      version = "6.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-6.9.1.tgz";
-        sha512 = "0+u0ZoRj6H6AuzNY5d8qzXzyXmFI19gkdPRA14kGfKvbqYcpOL+HWUGHjtCxHqjm8CscwsH+dX0+Rxx4se5HSA==";
+        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-6.10.0.tgz";
+        sha512 = "ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA==";
       };
     };
     "mri-1.1.6" = {
@@ -39322,13 +39628,13 @@ let
         sha512 = "ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==";
       };
     };
-    "multicast-dns-7.2.2" = {
+    "multicast-dns-7.2.3" = {
       name = "multicast-dns";
       packageName = "multicast-dns";
-      version = "7.2.2";
+      version = "7.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.2.tgz";
-        sha512 = "XqSMeO8EWV/nOXOpPV8ztIpNweVfE1dSpz6SQvDPp71HD74lMXjt4m/mWB1YBMG0kHtOodxRWc5WOb/UNN1A5g==";
+        url = "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.3.tgz";
+        sha512 = "TzxgGSLRLB7tqAlzjgd2x2ZE0cDsGFq4rs9W4yE5xp+7hlRXeUQGtXZsTGfGw2FwWB45rfe8DtXMYBpZGMLUng==";
       };
     };
     "multicast-dns-service-types-1.1.0" = {
@@ -39403,13 +39709,13 @@ let
         sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
       };
     };
-    "multiserver-3.7.0" = {
+    "multiserver-3.7.2" = {
       name = "multiserver";
       packageName = "multiserver";
-      version = "3.7.0";
+      version = "3.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/multiserver/-/multiserver-3.7.0.tgz";
-        sha512 = "70SSDMNT+e3VsDG4x7OKFW8+UqyZsBWfKD9rAvsRWCbMe9ySODheJCZ91Xyha5FrA32UtWIHGSY3m5jATfEmVQ==";
+        url = "https://registry.npmjs.org/multiserver/-/multiserver-3.7.2.tgz";
+        sha512 = "RaRSN/g1QOujNkFtmLU52PCjjqUdhad7FO/aZRRTzWkpJuclk0jfWtvew9jKp0mNqC6RhriEm0U1L1qYiymF8Q==";
       };
     };
     "multiserver-address-1.0.1" = {
@@ -39556,13 +39862,13 @@ let
         sha512 = "nU7mOEuaXiQIB/EgTIjYZJ7g8KqMm2D8l4qp+DqA4jxWOb/tnb1KEoqp+tlbdQIDIAiC1i7j7X/3yHDFXLxr9g==";
       };
     };
-    "muxrpc-6.5.2" = {
+    "muxrpc-6.5.3" = {
       name = "muxrpc";
       packageName = "muxrpc";
-      version = "6.5.2";
+      version = "6.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/muxrpc/-/muxrpc-6.5.2.tgz";
-        sha512 = "fgYhBfzevyUbwsB8YBlrnmzZOGxWv6OiAUNKQYwPLqbophsZ+GT8STKrCVHCYNjUx6btxFA5+BJPUCFMecyaSA==";
+        url = "https://registry.npmjs.org/muxrpc/-/muxrpc-6.5.3.tgz";
+        sha512 = "Q8NfvPB27T6KlAtEsy0g5Sz+HlfrMZMLcrhlb5nTfY4FMMsQAIM63FZvgInKqV6ENkSWuTOdqH4aUZosUXJCLA==";
       };
     };
     "muxrpc-usage-2.1.0" = {
@@ -39700,6 +40006,15 @@ let
         sha1 = "4f3152e09540fde28c76f44b19bbcd1d5a42478d";
       };
     };
+    "nanoassert-2.0.0" = {
+      name = "nanoassert";
+      packageName = "nanoassert";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoassert/-/nanoassert-2.0.0.tgz";
+        sha512 = "7vO7n28+aYO4J+8w96AzhmU8G+Y/xpPDJz/se19ICsqj/momRbb9mh9ZUtkoJ5X3nTnPdhEJyc0qnM6yAsHBaA==";
+      };
+    };
     "nanobus-4.5.0" = {
       name = "nanobus";
       packageName = "nanobus";
@@ -39736,13 +40051,13 @@ let
         sha512 = "a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==";
       };
     };
-    "nanoid-3.1.22" = {
+    "nanoid-3.1.23" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "3.1.22";
+      version = "3.1.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz";
-        sha512 = "/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz";
+        sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
       };
     };
     "nanolru-1.0.0" = {
@@ -39862,13 +40177,13 @@ let
         sha512 = "p7KTHxU0CUrcOXe62Zfrb5Z13nLvPhSWR/so3kFulUQU0sgUll2Z0LwpsLN351eOOD+hRGu/F1g+6xDfPeD++Q==";
       };
     };
-    "ncjsm-4.1.0" = {
+    "ncjsm-4.2.0" = {
       name = "ncjsm";
       packageName = "ncjsm";
-      version = "4.1.0";
+      version = "4.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ncjsm/-/ncjsm-4.1.0.tgz";
-        sha512 = "YElRGtbz5iIartetOI3we+XAkcGE29F0SdNC0qRy500/u4WceQd2z9Nhlx24OHmIDIKz9MHdJwf/fkSG0hdWcQ==";
+        url = "https://registry.npmjs.org/ncjsm/-/ncjsm-4.2.0.tgz";
+        sha512 = "L2Qij4PTy7Bs4TB24zs7FLIAYJTaR5JPvSig5hIcO059LnMCNgy6MfHHNyg8s/aekPKrTqKX90gBGt3NNGvhdw==";
       };
     };
     "nconf-0.10.0" = {
@@ -40124,22 +40439,22 @@ let
         sha512 = "AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==";
       };
     };
-    "netlify-6.1.18" = {
+    "netlify-7.0.0" = {
       name = "netlify";
       packageName = "netlify";
-      version = "6.1.18";
+      version = "7.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/netlify/-/netlify-6.1.18.tgz";
-        sha512 = "hVOf6l67ldiVfJPsMp4Ztunvv81hbGr5RGw2WUlR6b7Hp1bM1oaydEx/MrsLtVVDwy2KEYxkwcMY3m7CiHnh5g==";
+        url = "https://registry.npmjs.org/netlify/-/netlify-7.0.0.tgz";
+        sha512 = "s454O7JRqrIo90c6rX+um1Xp7B0dGZBAYaIXYtA3em8DXJ0uWoglDeQSul8qGT1goAAF/9oMPo0T9KTM/XrjqA==";
       };
     };
-    "netlify-redirect-parser-3.0.15" = {
+    "netlify-redirect-parser-3.0.29" = {
       name = "netlify-redirect-parser";
       packageName = "netlify-redirect-parser";
-      version = "3.0.15";
+      version = "3.0.29";
       src = fetchurl {
-        url = "https://registry.npmjs.org/netlify-redirect-parser/-/netlify-redirect-parser-3.0.15.tgz";
-        sha512 = "AWciaJpE83idl6VRPkZBW0TIOUZIPL30poFfruo/xMUJJuvgHw+wfExBnEpgXQ1sAdIWcZajhfKeLEXl1jWDLw==";
+        url = "https://registry.npmjs.org/netlify-redirect-parser/-/netlify-redirect-parser-3.0.29.tgz";
+        sha512 = "+lP4IG30CEpjlUaJM7hs/AW84gxkP0svvE80WJOcgB20lilPDkS6K3qeLlybjH/YznzomHZ0EF5Ydr/9d5I99A==";
       };
     };
     "netlify-redirector-0.2.1" = {
@@ -40250,13 +40565,13 @@ let
         sha512 = "CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==";
       };
     };
-    "nextgen-events-1.3.4" = {
+    "nextgen-events-1.4.0" = {
       name = "nextgen-events";
       packageName = "nextgen-events";
-      version = "1.3.4";
+      version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nextgen-events/-/nextgen-events-1.3.4.tgz";
-        sha512 = "umMRD9VOvQ7+AeCvMETA7tekqrzG0xOX2HLrpyZRuW+4NlXR5baZwY/CP7Sq3x1BkKCIa1KnI1m2+Fs+fJpOiQ==";
+        url = "https://registry.npmjs.org/nextgen-events/-/nextgen-events-1.4.0.tgz";
+        sha512 = "bwSpShfuLg/lcRFokZvtUcrn5kumy6uRI6Jc+QWzH+bW6ZRdog7LfwAwhqeTzVfsprZgDGrctr6rO5aJhcdAfg==";
       };
     };
     "nice-try-1.0.5" = {
@@ -40340,22 +40655,22 @@ let
         sha512 = "mYihjs47X5+N71CN3P+QBrEIBuclIfMMpgWEpkmLqFPvrOXdzokvDlhbLfjdBNZOqYgniaeZC6J1ZCgxFdyvXw==";
       };
     };
-    "no-cliches-0.3.2" = {
+    "no-cliches-0.3.4" = {
       name = "no-cliches";
       packageName = "no-cliches";
-      version = "0.3.2";
+      version = "0.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/no-cliches/-/no-cliches-0.3.2.tgz";
-        sha512 = "zPpIr24OdcdM6lbg9QbFUGaLx9RueAkg1I4ZueuuB5452ZrxYfdwaBkhLGFCgpy3AaQ1w8HaY/8k2HmeyD9FXw==";
+        url = "https://registry.npmjs.org/no-cliches/-/no-cliches-0.3.4.tgz";
+        sha512 = "oUqnng1vhKLaA4GR+OzVbLuZZ7OOguKCtMHxHMiyP8+9mXidKfoCyc030LbAyNI3xcgCHHyitK3Q8wP+w6DwVQ==";
       };
     };
-    "node-abi-2.21.0" = {
+    "node-abi-2.30.0" = {
       name = "node-abi";
       packageName = "node-abi";
-      version = "2.21.0";
+      version = "2.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-2.21.0.tgz";
-        sha512 = "smhrivuPqEM3H5LmnY3KU6HfYv0u4QklgAxfFyRNujKUzbUcYZ+Jc2EhukB9SRcD2VpqhxM7n/MIcp1Ua1/JMg==";
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz";
+        sha512 = "g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==";
       };
     };
     "node-addon-api-1.7.2" = {
@@ -40394,13 +40709,13 @@ let
         sha512 = "+D4s2HCnxPd5PjjI0STKwncjXTUKKqm74MDMz9OPXavjsGmjkvwgLtA5yoxJUdmpj52+2u+RrXgPipahKczMKg==";
       };
     };
-    "node-addon-api-3.1.0" = {
+    "node-addon-api-3.2.1" = {
       name = "node-addon-api";
       packageName = "node-addon-api";
-      version = "3.1.0";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.1.0.tgz";
-        sha512 = "flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==";
+        url = "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz";
+        sha512 = "mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==";
       };
     };
     "node-appc-1.1.2" = {
@@ -40512,15 +40827,6 @@ let
         sha512 = "NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==";
       };
     };
-    "node-fetch-2.2.0" = {
-      name = "node-fetch";
-      packageName = "node-fetch";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.2.0.tgz";
-        sha512 = "OayFWziIxiHY8bCUyLX6sTpDH8Jsbp4FfYd1j1f7vZyfgkcOnAyM4oQR16f8a0s7Gl/viMGRey8eScYk4V4EZA==";
-      };
-    };
     "node-fetch-2.6.1" = {
       name = "node-fetch";
       packageName = "node-fetch";
@@ -40602,6 +40908,15 @@ let
         sha512 = "CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==";
       };
     };
+    "node-gyp-8.1.0" = {
+      name = "node-gyp";
+      packageName = "node-gyp";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-8.1.0.tgz";
+        sha512 = "o2elh1qt7YUp3lkMwY3/l4KF3j/A3fI/Qt4NH+CQQgPJdqGE9y7qnP84cjIWN27Q0jJkrSAhCVDg+wBVNBYdBg==";
+      };
+    };
     "node-gyp-build-3.9.0" = {
       name = "node-gyp-build";
       packageName = "node-gyp-build";
@@ -40701,13 +41016,13 @@ let
         sha512 = "fPNFIp2hF/Dq7qLDzSg4vZ0J4e9v60gJR+Qx7RbjbWqzPDdEqeVpEx5CFeDAELIl+A/woaaNn1fQ5nEVerMxJg==";
       };
     };
-    "node-object-hash-2.3.1" = {
+    "node-object-hash-2.3.3" = {
       name = "node-object-hash";
       packageName = "node-object-hash";
-      version = "2.3.1";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.1.tgz";
-        sha512 = "ab7pm34jqISawXpJ+fHjj2E9CmzDtm2fTTdurgzbWXIrdTEk2q2cSZRzoeGrwa0cvq6Sqezq6S9bhOBYPHRzuQ==";
+        url = "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.3.tgz";
+        sha512 = "KdQsVgu0QoU3ycGidQLcULQdJudW2dizlxJvb2ntV4zxn1oBe7FYBcOO//qIza6oPM1xNwj7Y+rsWxiGPWekOw==";
       };
     };
     "node-persist-2.1.0" = {
@@ -40764,15 +41079,6 @@ let
         sha512 = "+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==";
       };
     };
-    "node-pre-gyp-0.15.0" = {
-      name = "node-pre-gyp";
-      packageName = "node-pre-gyp";
-      version = "0.15.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz";
-        sha512 = "7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA==";
-      };
-    };
     "node-pre-gyp-0.6.39" = {
       name = "node-pre-gyp";
       packageName = "node-pre-gyp";
@@ -40818,13 +41124,13 @@ let
         sha512 = "d/CbPGJMSNekJHOQu4WMNwjXRFnZ4c2+D3nlSdRH6wdUVVc++4nat8TuhcXKUe9W9+nqMrmVhReGnf8UwKsfBw==";
       };
     };
-    "node-releases-1.1.71" = {
+    "node-releases-1.1.72" = {
       name = "node-releases";
       packageName = "node-releases";
-      version = "1.1.71";
+      version = "1.1.72";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz";
-        sha512 = "zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==";
+        url = "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz";
+        sha512 = "LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==";
       };
     };
     "node-source-walk-4.2.0" = {
@@ -41142,13 +41448,13 @@ let
         sha512 = "U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==";
       };
     };
-    "normalize-url-4.5.0" = {
+    "normalize-url-4.5.1" = {
       name = "normalize-url";
       packageName = "normalize-url";
-      version = "4.5.0";
+      version = "4.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz";
-        sha512 = "2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==";
+        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz";
+        sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==";
       };
     };
     "now-and-later-2.0.1" = {
@@ -41169,22 +41475,13 @@ let
         sha1 = "df7c3ed5a277c3f9d4b5d819b05311d10a200ae6";
       };
     };
-    "npm-api-1.0.1" = {
-      name = "npm-api";
-      packageName = "npm-api";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/npm-api/-/npm-api-1.0.1.tgz";
-        sha512 = "4sITrrzEbPcr0aNV28QyOmgn6C9yKiF8k92jn4buYAK8wmA5xo1qL3II5/gT1r7wxbXBflSduZ2K3FbtOrtGkA==";
-      };
-    };
-    "npm-bundled-1.1.1" = {
+    "npm-bundled-1.1.2" = {
       name = "npm-bundled";
       packageName = "npm-bundled";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz";
-        sha512 = "gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==";
+        url = "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz";
+        sha512 = "x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==";
       };
     };
     "npm-conf-1.1.3" = {
@@ -41268,15 +41565,6 @@ let
         sha512 = "xXxr8y5U0kl8dVkz2oK7yZjPBvqM2fwaO5l3Yg13p03v8+E3qQcD0JNhHzjL1vyGgxcKkD0cco+NLR72iuPk3g==";
       };
     };
-    "npm-package-arg-8.1.0" = {
-      name = "npm-package-arg";
-      packageName = "npm-package-arg";
-      version = "8.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.0.tgz";
-        sha512 = "/ep6QDxBkm9HvOhOg0heitSd7JHA1U7y1qhhlRlteYYAi9Pdb/ZV7FW5aHpkrpM8+P+4p/jjR8zCyKPBMBjSig==";
-      };
-    };
     "npm-package-arg-8.1.2" = {
       name = "npm-package-arg";
       packageName = "npm-package-arg";
@@ -41295,22 +41583,13 @@ let
         sha512 = "5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==";
       };
     };
-    "npm-packlist-2.1.5" = {
+    "npm-packlist-2.2.2" = {
       name = "npm-packlist";
       packageName = "npm-packlist";
-      version = "2.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.5.tgz";
-        sha512 = "KCfK3Vi2F+PH1klYauoQzg81GQ8/GGjQRKYY6tRnpQUPKTs/1gBZSRWtTEd7jGdSn1LZL7gpAmJT+BcS55k2XQ==";
-      };
-    };
-    "npm-pick-manifest-6.1.0" = {
-      name = "npm-pick-manifest";
-      packageName = "npm-pick-manifest";
-      version = "6.1.0";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.0.tgz";
-        sha512 = "ygs4k6f54ZxJXrzT0x34NybRlLeZ4+6nECAIbr2i0foTnijtS1TJiyzpqtuUAJOps/hO0tNDr8fRV5g+BtRlTw==";
+        url = "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz";
+        sha512 = "Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg==";
       };
     };
     "npm-pick-manifest-6.1.1" = {
@@ -41349,6 +41628,15 @@ let
         sha512 = "Qs6P6nnopig+Y8gbzpeN/dkt+n7IyVd8f45NTMotGk6Qo7GfBmzwYx6jRLoOOgKiMnaQfYxsuyQlD8Mc3guBhg==";
       };
     };
+    "npm-registry-fetch-10.1.2" = {
+      name = "npm-registry-fetch";
+      packageName = "npm-registry-fetch";
+      version = "10.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-10.1.2.tgz";
+        sha512 = "KsM/TdPmntqgBFlfsbkOLkkE9ovZo7VpVcd+/eTdYszCrgy5zFl5JzWm+OxavFaEWlbkirpkou+ZYI00RmOBFA==";
+      };
+    };
     "npm-registry-fetch-9.0.0" = {
       name = "npm-registry-fetch";
       packageName = "npm-registry-fetch";
@@ -41466,6 +41754,15 @@ let
         sha1 = "201095a487e1ad36081b3432fa3cada4f8d071b0";
       };
     };
+    "nullthrows-1.1.1" = {
+      name = "nullthrows";
+      packageName = "nullthrows";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz";
+        sha512 = "2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==";
+      };
+    };
     "num-sort-2.1.0" = {
       name = "num-sort";
       packageName = "num-sort";
@@ -41556,22 +41853,22 @@ let
         sha512 = "pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==";
       };
     };
-    "oas-linter-3.2.1" = {
+    "oas-linter-3.2.2" = {
       name = "oas-linter";
       packageName = "oas-linter";
-      version = "3.2.1";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.1.tgz";
-        sha512 = "e5G6bbq3Nrfxm+SDPR5AiZ6n2smVUmhLA1OgI2/Bl8e2ywfWsKw/yuqrwiXXiNHb1wdM/GyPMX6QjCGJODlaaA==";
+        url = "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz";
+        sha512 = "KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==";
       };
     };
-    "oas-resolver-2.5.4" = {
+    "oas-resolver-2.5.5" = {
       name = "oas-resolver";
       packageName = "oas-resolver";
-      version = "2.5.4";
+      version = "2.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.4.tgz";
-        sha512 = "1vIj5Wkjmi+kZj5sFamt95LkuXoalmoKUohtaUQoCQZjLfPFaY8uZ7nw6IZaWuE6eLON2b6xrXhxD4hiTdYl0g==";
+        url = "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.5.tgz";
+        sha512 = "1po1gzIlTXQqyVNtLFWJuzDm4xxhMCJ8QcP3OarKDO8aJ8AmCtQ67XZ1X+nBbHH4CjTcEsIab1qX5+GIU4f2Gg==";
       };
     };
     "oas-schema-walker-1.1.5" = {
@@ -41592,13 +41889,13 @@ let
         sha512 = "bIt8erTyclF7bkaySTtQ9sppqyVc+mAlPi7vPzCLVHJsL9nrivQjc/jHLX/o+eGbxHd6a6YBwuY/Vxa6wGsiuw==";
       };
     };
-    "oas-validator-5.0.5" = {
+    "oas-validator-5.0.6" = {
       name = "oas-validator";
       packageName = "oas-validator";
-      version = "5.0.5";
+      version = "5.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.5.tgz";
-        sha512 = "d10yy6xlhRTh6np44k2U0gm5M66pioYTllH8J1ZTj+WSY3cpTvU+Dt51iWOT85HJqyGHo0RZKXF3u/NGQWDFgg==";
+        url = "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.6.tgz";
+        sha512 = "bI+gyr3MiG/4Q5Ibvg0R77skVWS882gFMkxwB1p6qY7Rc4p7EoDezFVfondjYhJDPDnB1ZD7Aqj7AWROAsMBZg==";
       };
     };
     "oauth-0.9.15" = {
@@ -41719,22 +42016,22 @@ let
         sha512 = "OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==";
       };
     };
-    "object-hash-2.1.1" = {
+    "object-hash-2.2.0" = {
       name = "object-hash";
       packageName = "object-hash";
-      version = "2.1.1";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-hash/-/object-hash-2.1.1.tgz";
-        sha512 = "VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ==";
+        url = "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz";
+        sha512 = "gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==";
       };
     };
-    "object-inspect-1.10.2" = {
+    "object-inspect-1.10.3" = {
       name = "object-inspect";
       packageName = "object-inspect";
-      version = "1.10.2";
+      version = "1.10.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz";
-        sha512 = "gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==";
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz";
+        sha512 = "e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==";
       };
     };
     "object-inspect-1.4.1" = {
@@ -41845,22 +42142,13 @@ let
         sha1 = "3a7f868334b407dea06da16d88d5cd29e435fecf";
       };
     };
-    "object.entries-1.1.3" = {
+    "object.entries-1.1.4" = {
       name = "object.entries";
       packageName = "object.entries";
-      version = "1.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz";
-        sha512 = "ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==";
-      };
-    };
-    "object.fromentries-2.0.4" = {
-      name = "object.fromentries";
-      packageName = "object.fromentries";
-      version = "2.0.4";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz";
-        sha512 = "EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==";
+        url = "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz";
+        sha512 = "h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==";
       };
     };
     "object.getownpropertydescriptors-2.1.2" = {
@@ -41908,13 +42196,13 @@ let
         sha1 = "6fe348f2ac7fa0f95ca621226599096825bb03ad";
       };
     };
-    "object.values-1.1.3" = {
+    "object.values-1.1.4" = {
       name = "object.values";
       packageName = "object.values";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz";
-        sha512 = "nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==";
+        url = "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz";
+        sha512 = "TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==";
       };
     };
     "object_values-0.1.2" = {
@@ -41989,22 +42277,13 @@ let
         sha512 = "0HGaSR/E/seIhSzFxLkh0QqckuNSre4iGqSElZRUv1hVHH2YgrZ7xtQL9McwL8o1fh6HqkzykjUx0Iy2haVIUg==";
       };
     };
-    "octokit-pagination-methods-1.1.0" = {
-      name = "octokit-pagination-methods";
-      packageName = "octokit-pagination-methods";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz";
-        sha512 = "fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ==";
-      };
-    };
-    "office-ui-fabric-react-7.168.0" = {
+    "office-ui-fabric-react-7.170.1" = {
       name = "office-ui-fabric-react";
       packageName = "office-ui-fabric-react";
-      version = "7.168.0";
+      version = "7.170.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/office-ui-fabric-react/-/office-ui-fabric-react-7.168.0.tgz";
-        sha512 = "hxH6HuNEIPVwO1ahzkVTkrARbN1vGP0W0qgbNPNcQDjnux9moyLgGcp0BzWXG6mNlTKFti/6WceCwXFjLEyPkw==";
+        url = "https://registry.npmjs.org/office-ui-fabric-react/-/office-ui-fabric-react-7.170.1.tgz";
+        sha512 = "NZULXfe9I9W1THYUOFOPr7vLStRbdYNJi3+sJSRrNQHSeeGlUaFbAIOiT8g8h+3Seypk4Ybtm7vZXc6mUHx+Gw==";
       };
     };
     "omggif-1.0.10" = {
@@ -42169,13 +42448,31 @@ let
         sha512 = "kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==";
       };
     };
-    "oo-ascii-tree-1.28.0" = {
+    "onml-1.3.0" = {
+      name = "onml";
+      packageName = "onml";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onml/-/onml-1.3.0.tgz";
+        sha512 = "RhGUsC6Im2A5vAdIvxE3auRKTqrqUZQl/AYLn8+9lM3SO4da5bwhcI5TcM+hfQxNCSLLOVErsl9p0ZPjKKmz+g==";
+      };
+    };
+    "onml-2.1.0" = {
+      name = "onml";
+      packageName = "onml";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onml/-/onml-2.1.0.tgz";
+        sha512 = "fvaSZRzprpwLFge/mcwE0CItfniNisVNamDdMK1FQUjh4ArQZ8ZWSkDaJbZc3XaANKZHq0xIa8NJpZ2HSe3oXA==";
+      };
+    };
+    "oo-ascii-tree-1.30.0" = {
       name = "oo-ascii-tree";
       packageName = "oo-ascii-tree";
-      version = "1.28.0";
+      version = "1.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.28.0.tgz";
-        sha512 = "lCeBgtQutG2+K7BOJDurYNfCepvckj7jWtq2VVP1kseLry/VbLzE/oLiXEeK6iWUXJbBE2IzmxwGuUwee293yw==";
+        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.30.0.tgz";
+        sha512 = "TzXuoCnha2QHFcAR+8+tBgD7Wnn6Uh+P3aZMoXKDJ3CVLXFnTnzHy4WMmmz01pTfv+f5haQMjhL9OIFJLEZ5kA==";
       };
     };
     "opal-runtime-1.0.11" = {
@@ -42232,31 +42529,40 @@ let
         sha512 = "mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==";
       };
     };
-    "open-7.4.0" = {
+    "open-7.4.2" = {
       name = "open";
       packageName = "open";
-      version = "7.4.0";
+      version = "7.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/open/-/open-7.4.0.tgz";
-        sha512 = "PGoBCX/lclIWlpS/R2PQuIR4NJoXh6X5AwVzE7WXnWRGvHg7+4TBCgsujUgiPpm0K1y4qvQeWnCWVTpTKZBtvA==";
+        url = "https://registry.npmjs.org/open/-/open-7.4.2.tgz";
+        sha512 = "MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==";
       };
     };
-    "open-7.4.2" = {
+    "open-8.0.2" = {
       name = "open";
       packageName = "open";
-      version = "7.4.2";
+      version = "8.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/open/-/open-7.4.2.tgz";
-        sha512 = "MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==";
+        url = "https://registry.npmjs.org/open/-/open-8.0.2.tgz";
+        sha512 = "NV5QmWJrTaNBLHABJyrb+nd5dXI5zfea/suWawBhkHzAbVhLLiJdrqMgxMypGK9Eznp2Ltoh7SAVkQ3XAucX7Q==";
       };
     };
-    "open-8.0.6" = {
+    "open-8.1.0" = {
       name = "open";
       packageName = "open";
-      version = "8.0.6";
+      version = "8.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/open/-/open-8.0.6.tgz";
-        sha512 = "vDOC0KwGabMPFtIpCO2QOnQeOz0N2rEkbuCuxICwLMUCrpv+A7NHrrzJ2dQReJmVluHhO4pYRh/Pn6s8t7Op6Q==";
+        url = "https://registry.npmjs.org/open/-/open-8.1.0.tgz";
+        sha512 = "jB5hAtsDOhCy/FNQJwQJOrGlxLUat482Yr14rbA5l2Zb1eOeoS+ccQPO036C1+z9VDBTmOZqzh1tBbI4myzIYw==";
+      };
+    };
+    "open-8.2.0" = {
+      name = "open";
+      packageName = "open";
+      version = "8.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/open/-/open-8.2.0.tgz";
+        sha512 = "O8uInONB4asyY3qUcEytpgwxQG3O0fJ/hlssoUHsBboOIRVZzT6Wq+Rwj5nffbeUhOdMjpXeISpDDzHCMRDuOQ==";
       };
     };
     "openapi-default-setter-2.1.0" = {
@@ -42367,13 +42673,13 @@ let
         sha512 = "Su8jA45PhegUgJnEAT15DYt2spPJgvjyTtXqg+Lw5AtGePfcQskV6ACEzsL0XPoAXIFf09Vx6sBor9pek+tl+Q==";
       };
     };
-    "openapi-sampler-1.0.0-beta.18" = {
+    "openapi-sampler-1.0.1" = {
       name = "openapi-sampler";
       packageName = "openapi-sampler";
-      version = "1.0.0-beta.18";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.0.0-beta.18.tgz";
-        sha512 = "nG/0kvvSY5FbrU5A+Dbp1xTQN++7pKIh87/atryZlxrzDuok5Y6TCbpxO1jYqpUKLycE4ReKGHCywezngG6xtQ==";
+        url = "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.0.1.tgz";
+        sha512 = "qBjxkSLJV183zTTs4fgxtU/iWSLUUu2aH2+5ddWkNhV7p8CSe/mnAgoLkEbMfHtel6yr9NF+vjUWqfM+iiwORQ==";
       };
     };
     "openapi-schema-validator-3.0.3" = {
@@ -42457,13 +42763,13 @@ let
         sha512 = "olbaNxz12R27+mTyJ/ZAFEfUruauHH27AkeQHDHRq5AF0LdNkK1SSV7EourXQDK+4aX7dv2HtyirAGK06WMAsA==";
       };
     };
-    "openapi3-ts-1.4.0" = {
+    "openapi3-ts-2.0.1" = {
       name = "openapi3-ts";
       packageName = "openapi3-ts";
-      version = "1.4.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-1.4.0.tgz";
-        sha512 = "8DmE2oKayvSkIR3XSZ4+pRliBsx19bSNeIzkTPswY8r4wvjX86bMxsORdqwAwMxE8PefOcSAT2auvi/0TZe9yA==";
+        url = "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.1.tgz";
+        sha512 = "v6X3iwddhi276siej96jHGIqTx3wzVfMTmpGJEQDt7GPI7pI6sywItURLzpEci21SBRpPN/aOWSF5mVfFVNmcg==";
       };
     };
     "opencollective-1.0.3" = {
@@ -42583,13 +42889,13 @@ let
         sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
       };
     };
-    "optimize-css-assets-webpack-plugin-5.0.4" = {
+    "optimize-css-assets-webpack-plugin-5.0.6" = {
       name = "optimize-css-assets-webpack-plugin";
       packageName = "optimize-css-assets-webpack-plugin";
-      version = "5.0.4";
+      version = "5.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz";
-        sha512 = "wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A==";
+        url = "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.6.tgz";
+        sha512 = "JAYw7WrIAIuHWoKeSBB3lJ6ZG9PSDK3JJduv/FMpIY060wvbA8Lqn/TCtxNGICNlg0X5AGshLzIhpYrkltdq+A==";
       };
     };
     "optional-0.1.4" = {
@@ -42691,15 +42997,6 @@ let
         sha512 = "eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==";
       };
     };
-    "ora-4.1.1" = {
-      name = "ora";
-      packageName = "ora";
-      version = "4.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz";
-        sha512 = "sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==";
-      };
-    };
     "ora-5.1.0" = {
       name = "ora";
       packageName = "ora";
@@ -42754,15 +43051,6 @@ let
         sha512 = "hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==";
       };
     };
-    "os-0.1.1" = {
-      name = "os";
-      packageName = "os";
-      version = "0.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/os/-/os-0.1.1.tgz";
-        sha1 = "208845e89e193ad4d971474b93947736a56d13f3";
-      };
-    };
     "os-browserify-0.3.0" = {
       name = "os-browserify";
       packageName = "os-browserify";
@@ -42862,22 +43150,22 @@ let
         sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==";
       };
     };
-    "ot-builder-1.0.4" = {
+    "ot-builder-1.0.8" = {
       name = "ot-builder";
       packageName = "ot-builder";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.0.4.tgz";
-        sha512 = "M8FhdQrpsHAQo+qYcAmnrl14HvXcew4M5tZCsQk4GZfeYVPr8TJZPwiHXScYbqH9+uNrU5U8tRjgHi44inVxxw==";
+        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.0.8.tgz";
+        sha512 = "e9PkE4wr4mskFMNuV5IvCujBVp9Nc+yl5ltu7qad/BNcHIFh4nn9iWFE+Klva6h8prDefgE2FOuG+sYLU0IOrQ==";
       };
     };
-    "otb-ttc-bundle-1.0.4" = {
+    "otb-ttc-bundle-1.0.8" = {
       name = "otb-ttc-bundle";
       packageName = "otb-ttc-bundle";
-      version = "1.0.4";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.0.4.tgz";
-        sha512 = "EnGZoAtvzLKM+kO3VZSavt11FzVIDQQq5o3s66LMvJZ2LdHbZg1L9WdAvnZjY2+SXdtLEo6VNlL1gP4l9ovRjw==";
+        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.0.8.tgz";
+        sha512 = "VqlzOefegjHk0OTM7XIay7M+v0PSKYznKTmBPCds6X+NfaumDInoBrF7OTrhq5IN1LXlu4TwW29u0wzDCgc2+A==";
       };
     };
     "ow-0.21.0" = {
@@ -42934,13 +43222,13 @@ let
         sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==";
       };
     };
-    "p-cancelable-2.1.0" = {
+    "p-cancelable-2.1.1" = {
       name = "p-cancelable";
       packageName = "p-cancelable";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.0.tgz";
-        sha512 = "HAZyB3ZodPo+BDpb4/Iu7Jv4P6cSazBz9ZM0ChhEXp70scx834aWCEjQRwgt41UzzejUAPdbqqONfRWTPYrPAQ==";
+        url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz";
+        sha512 = "BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==";
       };
     };
     "p-debounce-1.0.0" = {
@@ -43375,13 +43663,13 @@ let
         sha512 = "HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==";
       };
     };
-    "packet-stream-2.0.5" = {
+    "packet-stream-2.0.6" = {
       name = "packet-stream";
       packageName = "packet-stream";
-      version = "2.0.5";
+      version = "2.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/packet-stream/-/packet-stream-2.0.5.tgz";
-        sha512 = "+4S+qBUdqD57ka5MDd6nAYGBPril5eyLpbga2y0kPyYhrKvjb8CYTP9r40WLbSxgT/qEGmvgWOrvQe+FYtCI7w==";
+        url = "https://registry.npmjs.org/packet-stream/-/packet-stream-2.0.6.tgz";
+        sha512 = "kSxHpoTqlgNEetMp77snCTVILwLw4dJX6pB/z1g1PRG5xylH8cf9upIPygt+epBC3l14XrcZH4/kQYSrzp2Ijg==";
       };
     };
     "packet-stream-codec-1.1.3" = {
@@ -43393,22 +43681,22 @@ let
         sha512 = "LUL4NK7sz01jdSUdCu3z1LyphCiFdQaFouaEDsAWmJpzS0lbeNfvZoX4bi1Tm1ilzheK5VAoD96QskDCZQr+jA==";
       };
     };
-    "pacote-11.2.4" = {
+    "pacote-11.3.2" = {
       name = "pacote";
       packageName = "pacote";
-      version = "11.2.4";
+      version = "11.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pacote/-/pacote-11.2.4.tgz";
-        sha512 = "GfTeVQGJ6WyBQbQD4t3ocHbyOmTQLmWjkCKSZPmKiGFKYKNUaM5U2gbLzUW8WG1XmS9yQFnsTFA0k3o1+q4klQ==";
+        url = "https://registry.npmjs.org/pacote/-/pacote-11.3.2.tgz";
+        sha512 = "lMO7V9aMhyE5gfaSFxKfW3OTdXuFBNQJfuNuet3NPzWWhOYIW90t85vHcHLDjdhgmfAdAHyh9q1HAap96ea0XA==";
       };
     };
-    "pacote-11.3.1" = {
+    "pacote-11.3.3" = {
       name = "pacote";
       packageName = "pacote";
-      version = "11.3.1";
+      version = "11.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pacote/-/pacote-11.3.1.tgz";
-        sha512 = "TymtwoAG12cczsJIrwI/euOQKtjrQHlD0k0oyt9QSmZGpqa+KdlxKdWR/YUjYizkixaVyztxt/Wsfo8bL3A6Fg==";
+        url = "https://registry.npmjs.org/pacote/-/pacote-11.3.3.tgz";
+        sha512 = "GQxBX+UcVZrrJRYMK2HoG+gPeSUX/rQhnbPkkGrCYa4n2F/bgClFPaMm0nsdnYrxnmUy85uMHoFXZ0jTD0drew==";
       };
     };
     "pad-0.0.5" = {
@@ -43429,15 +43717,6 @@ let
         sha1 = "ad1f22ce1bf0fdc0d6ddd908af17f351a404b8ac";
       };
     };
-    "paged-request-2.0.2" = {
-      name = "paged-request";
-      packageName = "paged-request";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/paged-request/-/paged-request-2.0.2.tgz";
-        sha512 = "NWrGqneZImDdcMU/7vMcAOo1bIi5h/pmpJqe7/jdsy85BA/s5MSaU/KlpxwW/IVPmIwBcq2uKPrBWWhEWhtxag==";
-      };
-    };
     "pako-0.2.9" = {
       name = "pako";
       packageName = "pako";
@@ -43456,13 +43735,13 @@ let
         sha512 = "4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==";
       };
     };
-    "papaparse-4.6.0" = {
+    "papaparse-5.2.0" = {
       name = "papaparse";
       packageName = "papaparse";
-      version = "4.6.0";
+      version = "5.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/papaparse/-/papaparse-4.6.0.tgz";
-        sha512 = "ylm8pmgyz9rkS3Ng/ru5tHUF3JxWwKYP0aZZWZ8eCGdSxoqgYiDUXLNQei73mUJOjHw8QNu5ZNCsLoDpkMA6sg==";
+        url = "https://registry.npmjs.org/papaparse/-/papaparse-5.2.0.tgz";
+        sha512 = "ylq1wgUSnagU+MKQtNeVqrPhZuMYBvOSL00DHycFTCxownF95gpLAk1HiHdUW77N8yxRq1qHXLdlIPyBSG9NSA==";
       };
     };
     "parallel-transform-1.2.0" = {
@@ -43564,6 +43843,15 @@ let
         sha512 = "bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==";
       };
     };
+    "parse-conflict-json-1.1.1" = {
+      name = "parse-conflict-json";
+      packageName = "parse-conflict-json";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-1.1.1.tgz";
+        sha512 = "4gySviBiW5TRl7XHvp1agcS7SOe0KZOjC//71dzZVWJrY9hCrgtvl5v3SyIxCZ4fZF47TxD9nfzmxcx76xmbUw==";
+      };
+    };
     "parse-english-4.2.0" = {
       name = "parse-english";
       packageName = "parse-english";
@@ -43798,15 +44086,6 @@ let
         sha512 = "yy7UTSmliOT/7Yl+P4hwwW2W7PbCTAMcD0lasaVG+k4/2laj42YWzLm468bLFGDoFPIb29g3BuwBcA3gLopKww==";
       };
     };
-    "parse-torrent-7.1.3" = {
-      name = "parse-torrent";
-      packageName = "parse-torrent";
-      version = "7.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-7.1.3.tgz";
-        sha512 = "to8zT7+o6bVTyP35r2QgG1svuFGMFO1mE6ri1oWHgL9tlgnOtfjmfHmA3mOuP9HTIU/8OiZw0NG5zbyqVLxhvA==";
-      };
-    };
     "parse-torrent-9.1.3" = {
       name = "parse-torrent";
       packageName = "parse-torrent";
@@ -43870,6 +44149,15 @@ let
         sha512 = "fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==";
       };
     };
+    "parse5-5.1.1" = {
+      name = "parse5";
+      packageName = "parse5";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz";
+        sha512 = "ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==";
+      };
+    };
     "parse5-6.0.1" = {
       name = "parse5";
       packageName = "parse5";
@@ -44212,13 +44500,13 @@ let
         sha512 = "CMP0v6S6z8PHeJ6NFVyVJm6WyJjIwFvyz2b0n2/4bKdS/0uZa/9sKUlYZzubrn3zuDRU0zIuEDX9DZYQ2ZI8TA==";
       };
     };
-    "path-parse-1.0.6" = {
+    "path-parse-1.0.7" = {
       name = "path-parse";
       packageName = "path-parse";
-      version = "1.0.6";
+      version = "1.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz";
-        sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==";
+        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz";
+        sha512 = "LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==";
       };
     };
     "path-platform-0.11.15" = {
@@ -44320,6 +44608,15 @@ let
         sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
       };
     };
+    "path2-0.1.0" = {
+      name = "path2";
+      packageName = "path2";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path2/-/path2-0.1.0.tgz";
+        sha1 = "639828942cdbda44a41a45b074ae8873483b4efa";
+      };
+    };
     "pathval-1.1.1" = {
       name = "pathval";
       packageName = "pathval";
@@ -44437,13 +44734,13 @@ let
         sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
       };
     };
-    "perfect-scrollbar-1.5.0" = {
+    "perfect-scrollbar-1.5.1" = {
       name = "perfect-scrollbar";
       packageName = "perfect-scrollbar";
-      version = "1.5.0";
+      version = "1.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.0.tgz";
-        sha512 = "NrNHJn5mUGupSiheBTy6x+6SXCFbLlm8fVZh9moIzw/LgqElN5q4ncR4pbCBCYuCJ8Kcl9mYM0NgDxvW+b4LxA==";
+        url = "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.1.tgz";
+        sha512 = "MrSImINnIh3Tm1hdPT6bji6fmIeRorVEegQvyUnhqko2hDGTHhmjPefHXfxG/Jb8xVbfCwgmUIlIajERGXjVXQ==";
       };
     };
     "performance-now-0.2.0" = {
@@ -44563,6 +44860,15 @@ let
         sha512 = "KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==";
       };
     };
+    "picomatch-2.3.0" = {
+      name = "picomatch";
+      packageName = "picomatch";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz";
+        sha512 = "lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==";
+      };
+    };
     "picture-tuber-1.0.2" = {
       name = "picture-tuber";
       packageName = "picture-tuber";
@@ -44680,31 +44986,13 @@ let
         sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
       };
     };
-    "pino-6.11.1" = {
+    "pino-6.11.2" = {
       name = "pino";
       packageName = "pino";
-      version = "6.11.1";
+      version = "6.11.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pino/-/pino-6.11.1.tgz";
-        sha512 = "PoDR/4jCyaP1k2zhuQ4N0NuhaMtei+C9mUHBRRJQujexl/bq3JkeL2OC23ada6Np3zeUMHbO4TGzY2D/rwZX3w==";
-      };
-    };
-    "pino-6.9.0" = {
-      name = "pino";
-      packageName = "pino";
-      version = "6.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pino/-/pino-6.9.0.tgz";
-        sha512 = "9RrRJsKOsgj50oGoR/y4EEVyUjMb/eRu8y4hjwPqM6q214xsxSxY/IKB+aEEv0slqNd4U0RVRfivKfy83UxgUQ==";
-      };
-    };
-    "pino-std-serializers-2.5.0" = {
-      name = "pino-std-serializers";
-      packageName = "pino-std-serializers";
-      version = "2.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.5.0.tgz";
-        sha512 = "wXqbqSrIhE58TdrxxlfLwU9eDhrzppQDvGhBEr1gYbzzM4KKo3Y63gSjiDXRKLVS2UOXdPNR2v+KnQgNrs+xUg==";
+        url = "https://registry.npmjs.org/pino/-/pino-6.11.2.tgz";
+        sha512 = "bmzxwbrIPxQUlAuMkF4PWVErUGERU4z37HazlhflKFg08crsNE3fACGN6gPwg5xtKOK47Ux5cZm8YCuLV4wWJg==";
       };
     };
     "pino-std-serializers-3.2.0" = {
@@ -45049,13 +45337,13 @@ let
         sha512 = "7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==";
       };
     };
-    "polished-3.7.1" = {
+    "polished-3.7.2" = {
       name = "polished";
       packageName = "polished";
-      version = "3.7.1";
+      version = "3.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/polished/-/polished-3.7.1.tgz";
-        sha512 = "/QgHrNGYwIA4mwxJ/7FSvalUJsm7KNfnXiScVSEG2Xa5qxDeBn4nmdjN2pW00mkM2Tts64ktc47U8F7Ed1BRAA==";
+        url = "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz";
+        sha512 = "pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==";
       };
     };
     "polyraf-1.1.0" = {
@@ -45149,13 +45437,22 @@ let
         sha512 = "3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==";
       };
     };
-    "postcss-8.2.7" = {
+    "postcss-8.2.10" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "8.2.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.2.10.tgz";
+        sha512 = "b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw==";
+      };
+    };
+    "postcss-8.3.0" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.2.7";
+      version = "8.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.2.7.tgz";
-        sha512 = "DsVLH3xJzut+VT+rYr0mtvOtpTjSyqDwPf5EZWXcb0uAKfitGpTY9Ec+afi2+TgdN8rWS9Cs88UDYehKo/RvOw==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz";
+        sha512 = "+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==";
       };
     };
     "postcss-calc-7.0.5" = {
@@ -45653,13 +45950,13 @@ let
         sha512 = "36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==";
       };
     };
-    "postcss-selector-parser-6.0.4" = {
+    "postcss-selector-parser-6.0.6" = {
       name = "postcss-selector-parser";
       packageName = "postcss-selector-parser";
-      version = "6.0.4";
+      version = "6.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz";
-        sha512 = "gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==";
+        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz";
+        sha512 = "9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==";
       };
     };
     "postcss-svgo-4.0.3" = {
@@ -45707,13 +46004,13 @@ let
         sha512 = "97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==";
       };
     };
-    "postcss-values-parser-1.5.0" = {
+    "postcss-values-parser-2.0.1" = {
       name = "postcss-values-parser";
       packageName = "postcss-values-parser";
-      version = "1.5.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-1.5.0.tgz";
-        sha512 = "3M3p+2gMp0AH3da530TlX8kiO1nxdTnc3C6vr8dMxRLIlh8UYkz0/wcwptSXjhtx2Fr0TySI7a+BHDQ8NL7LaQ==";
+        url = "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz";
+        sha512 = "2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==";
       };
     };
     "postgres-array-2.0.0" = {
@@ -45815,22 +46112,22 @@ let
         sha512 = "s8Aai8++QQGi4sSbs/M1Qku62PFK49Jm1CbgXklGz4nmHveDq0wzJkg7Na5QbnO1uNH8K7iqx2EQ/mV0MZEmOg==";
       };
     };
-    "prebuild-install-6.1.1" = {
+    "prebuild-install-6.1.2" = {
       name = "prebuild-install";
       packageName = "prebuild-install";
-      version = "6.1.1";
+      version = "6.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.1.tgz";
-        sha512 = "M+cKwofFlHa5VpTWub7GLg5RLcunYIcLqtY5pKcls/u7xaAb8FrXZ520qY8rkpYy5xw90tYCyMO0MP5ggzR3Sw==";
+        url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.2.tgz";
+        sha512 = "PzYWIKZeP+967WuKYXlTOhYBgGOvTRSfaKI89XnfJ0ansRAH7hDU45X+K+FZeI1Wb/7p/NnuctPH3g0IqKUuSQ==";
       };
     };
-    "precinct-6.3.1" = {
+    "precinct-8.1.0" = {
       name = "precinct";
       packageName = "precinct";
-      version = "6.3.1";
+      version = "8.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/precinct/-/precinct-6.3.1.tgz";
-        sha512 = "JAwyLCgTylWminoD7V0VJwMElWmwrVSR6r9HaPWCoswkB4iFzX7aNtO7VBfAVPy+NhmjKb8IF8UmlWJXzUkOIQ==";
+        url = "https://registry.npmjs.org/precinct/-/precinct-8.1.0.tgz";
+        sha512 = "oeZBR9IdER42Ef6Rz11z1oOUqicsI5J1Qffj6tYghKLhxN2UnHy7uE1axxNr0VZRevPK2HWkROk36uXrbJwHFA==";
       };
     };
     "precond-0.2.3" = {
@@ -45842,6 +46139,15 @@ let
         sha1 = "aa9591bcaa24923f1e0f4849d240f47efc1075ac";
       };
     };
+    "preferred-pm-3.0.3" = {
+      name = "preferred-pm";
+      packageName = "preferred-pm";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.0.3.tgz";
+        sha512 = "+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==";
+      };
+    };
     "prelude-ls-1.1.2" = {
       name = "prelude-ls";
       packageName = "prelude-ls";
@@ -45914,13 +46220,13 @@ let
         sha512 = "7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==";
       };
     };
-    "prettier-2.2.1" = {
+    "prettier-2.3.0" = {
       name = "prettier";
       packageName = "prettier";
-      version = "2.2.1";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz";
-        sha512 = "PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==";
+        url = "https://registry.npmjs.org/prettier/-/prettier-2.3.0.tgz";
+        sha512 = "kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==";
       };
     };
     "prettier-bytes-1.0.4" = {
@@ -45950,13 +46256,22 @@ let
         sha512 = "2UzApPuxi2yRoyMlXMazgR6UcH9DKJhNgCviIwY3ixZ9THWSSrUww5vkiZ3C48WvpFl1M1y/oU63deSy1puWEA==";
       };
     };
-    "prettier-plugin-svelte-2.2.0" = {
+    "prettier-linter-helpers-1.0.0" = {
+      name = "prettier-linter-helpers";
+      packageName = "prettier-linter-helpers";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz";
+        sha512 = "GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==";
+      };
+    };
+    "prettier-plugin-svelte-2.3.0" = {
       name = "prettier-plugin-svelte";
       packageName = "prettier-plugin-svelte";
-      version = "2.2.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.2.0.tgz";
-        sha512 = "Xdmqgr71tAuMqqzNCK52/v94g/Yv7V7lz+nmbO9NEA+9ol15VV3uUHOfydMNOo3SWvFaVlBcp947ebEaMWqVfQ==";
+        url = "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.3.0.tgz";
+        sha512 = "HTzXvSq7lWFuLsSaxYOUkGkVNCl3RrSjDCOgQjkBX5FQGmWjL8o3IFACSGhjPMMfWKADpapAr0zdbBWkND9mqw==";
       };
     };
     "prettier-stylelint-0.4.2" = {
@@ -46301,6 +46616,15 @@ let
         sha512 = "iz22FmTbtkyL2vt0MdDFY+kWof+S9UB/NACxSn2aJcewtw+EERsen0urSkZ2WrHseNdydsvcxCTAnPcSMZZv4Q==";
       };
     };
+    "prom-client-13.1.0" = {
+      name = "prom-client";
+      packageName = "prom-client";
+      version = "13.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz";
+        sha512 = "jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng==";
+      };
+    };
     "promiscuous-0.6.0" = {
       name = "promiscuous";
       packageName = "promiscuous";
@@ -46328,6 +46652,15 @@ let
         sha512 = "W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==";
       };
     };
+    "promise-all-reject-late-1.0.1" = {
+      name = "promise-all-reject-late";
+      packageName = "promise-all-reject-late";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz";
+        sha512 = "vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==";
+      };
+    };
     "promise-breaker-5.0.0" = {
       name = "promise-breaker";
       packageName = "promise-breaker";
@@ -46337,6 +46670,15 @@ let
         sha512 = "mgsWQuG4kJ1dtO6e/QlNDLFtMkMzzecsC69aI5hlLEjGHFNpHrvGhFi4LiK5jg2SMQj74/diH+wZliL9LpGsyA==";
       };
     };
+    "promise-call-limit-1.0.1" = {
+      name = "promise-call-limit";
+      packageName = "promise-call-limit";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-1.0.1.tgz";
+        sha512 = "3+hgaa19jzCGLuSCbieeRsu5C2joKfYn8pY6JAuXFRVfF4IO+L7UPpFWNTeWT9pM7uhskvbPPd/oEOktCn317Q==";
+      };
+    };
     "promise-deferred-2.0.3" = {
       name = "promise-deferred";
       packageName = "promise-deferred";
@@ -46382,15 +46724,6 @@ let
         sha1 = "2f6f5f7c0f6d08109e967659c79b88a9ed5e93b4";
       };
     };
-    "promise-retry-1.1.1" = {
-      name = "promise-retry";
-      packageName = "promise-retry";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz";
-        sha1 = "6739e968e3051da20ce6497fb2b50f6911df3d6d";
-      };
-    };
     "promise-retry-2.0.1" = {
       name = "promise-retry";
       packageName = "promise-retry";
@@ -46571,13 +46904,13 @@ let
         sha1 = "bc826e34c3af4697e8d0af7a669e4d612aedcd17";
       };
     };
-    "protobufjs-6.10.2" = {
+    "protobufjs-6.11.2" = {
       name = "protobufjs";
       packageName = "protobufjs";
-      version = "6.10.2";
+      version = "6.11.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/protobufjs/-/protobufjs-6.10.2.tgz";
-        sha512 = "27yj+04uF6ya9l+qfpH187aqEzfCF4+Uit0I9ZBQVqK09hk/SQzKa2MUqUpXaVa7LOFRg1TSSr3lVxGOk6c0SQ==";
+        url = "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz";
+        sha512 = "4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==";
       };
     };
     "protocol-buffers-encodings-1.1.1" = {
@@ -46607,13 +46940,13 @@ let
         sha1 = "71c0ee3b102de3f202f3b64f608d173fcba1a918";
       };
     };
-    "proxy-addr-2.0.6" = {
+    "proxy-addr-2.0.7" = {
       name = "proxy-addr";
       packageName = "proxy-addr";
-      version = "2.0.6";
+      version = "2.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz";
-        sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==";
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz";
+        sha512 = "llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==";
       };
     };
     "proxy-agent-4.0.1" = {
@@ -47471,6 +47804,15 @@ let
         sha1 = "a7afa2384d1e6415a5d602054126cc8de3bcbce7";
       };
     };
+    "pull-websocket-3.4.2" = {
+      name = "pull-websocket";
+      packageName = "pull-websocket";
+      version = "3.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-websocket/-/pull-websocket-3.4.2.tgz";
+        sha512 = "hGFWC4/fzRdO2FEsyR9woVzgv/yG4PIk3RXPN4azBpomGzGQFRUORwKQDS3j7RAIy8tjvN2W+qjU8jNn2NWeNQ==";
+      };
+    };
     "pull-window-2.1.4" = {
       name = "pull-window";
       packageName = "pull-window";
@@ -47498,15 +47840,6 @@ let
         sha1 = "437344aeb2189f65e678ed1af37f0f760a5453ef";
       };
     };
-    "pull-ws-3.3.2" = {
-      name = "pull-ws";
-      packageName = "pull-ws";
-      version = "3.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pull-ws/-/pull-ws-3.3.2.tgz";
-        sha512 = "Bn4bcJsSzJGOQl4RBulDhG1FkcbDHSCXteI8Jg5k4X6X5TxVzZzKilWJ1WV2v4OnRXl2eYbtHFGsPl8Cr1xJzw==";
-      };
-    };
     "pump-0.3.5" = {
       name = "pump";
       packageName = "pump";
@@ -47606,6 +47939,15 @@ let
         sha512 = "D0RzSWlepeWkxPPdK3xhTcefj8rjah1791GE82Pdjsri49sy11ci/JQsAO8K2NRukqvwEtcI+ImP5F4ZiMvtIQ==";
       };
     };
+    "puppeteer-9.1.1" = {
+      name = "puppeteer";
+      packageName = "puppeteer";
+      version = "9.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-9.1.1.tgz";
+        sha512 = "W+nOulP2tYd/ZG99WuZC/I5ljjQQ7EUw/jQGcIb9eu8mDlZxNY2SgcJXTLG9h5gRvqA3uJOe4hZXYsd3EqioMw==";
+      };
+    };
     "purgecss-2.3.0" = {
       name = "purgecss";
       packageName = "purgecss";
@@ -47624,22 +47966,22 @@ let
         sha512 = "wCDN1KkAWOMXsiV0XxH/CggHqOYeXvyn00t9Zjp5RKsLZ2rzg/lLJIMAVxYLyh79T168W3fBYcG5TRRJAlQr6g==";
       };
     };
-    "push-stream-11.0.0" = {
+    "push-stream-11.0.1" = {
       name = "push-stream";
       packageName = "push-stream";
-      version = "11.0.0";
+      version = "11.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/push-stream/-/push-stream-11.0.0.tgz";
-        sha512 = "rDVD2f3wOztI/59/fukGLwZkUOC55674hncsSwgKF/yLlkkL594AoWTlkF6SGF0x8O5o1j92ObXk8Cxc1llhYg==";
+        url = "https://registry.npmjs.org/push-stream/-/push-stream-11.0.1.tgz";
+        sha512 = "Cb5aOY6Z6JxjAKBmpmmzoJ+8I6pJlRjJ5WYoM2Vw3kSlClojmIXzA+FP0yglJ4ELokrqLX223frxJTnxUx0dpw==";
       };
     };
-    "push-stream-to-pull-stream-1.0.3" = {
+    "push-stream-to-pull-stream-1.0.4" = {
       name = "push-stream-to-pull-stream";
       packageName = "push-stream-to-pull-stream";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/push-stream-to-pull-stream/-/push-stream-to-pull-stream-1.0.3.tgz";
-        sha512 = "pdE/OKi/jnp9DqGgNRzLY0oVHffn/8TXJmBPzv+ikdvpkeA0J//l5d7TZk1yWwZj9P0JcOIEVDOuHzhXaeBlmw==";
+        url = "https://registry.npmjs.org/push-stream-to-pull-stream/-/push-stream-to-pull-stream-1.0.4.tgz";
+        sha512 = "W1ysxl25uU6410OGipJM0/FvlNoXvuZqIgSLGELkZ6+MaXPAp/wr2EvAYKrs1o4blzhYssv/cFXiiRJkMnnhrA==";
       };
     };
     "pushdata-bitcoin-1.0.1" = {
@@ -47651,13 +47993,13 @@ let
         sha1 = "15931d3cd967ade52206f523aa7331aef7d43af7";
       };
     };
-    "pyright-1.1.132" = {
+    "pyright-1.1.145" = {
       name = "pyright";
       packageName = "pyright";
-      version = "1.1.132";
+      version = "1.1.145";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.132.tgz";
-        sha512 = "quvG9Ip2NwKEShsLJ7eLlkQ/ST5SX84QCgO/k7gGqlCHwuifn9/v7LrzdpdFbkVnQR51egUNWwwLQRoIBT6vUA==";
+        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.145.tgz";
+        sha512 = "eyrK9Ilut2shvqi/TFmpfUrm7U6DrkskMa8UPofkGJZCO1PJzVwzKaGWrR57zlbcAxs5PVvK9JGSIO9DJUVNyA==";
       };
     };
     "q-0.9.7" = {
@@ -47939,13 +48281,13 @@ let
         sha512 = "NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==";
       };
     };
-    "quick-format-unescaped-4.0.3" = {
+    "quick-format-unescaped-4.0.1" = {
       name = "quick-format-unescaped";
       packageName = "quick-format-unescaped";
-      version = "4.0.3";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.3.tgz";
-        sha512 = "MaL/oqh02mhEo5m5J2rwsVL23Iw2PEaGVHgT2vFt8AAsr0lfvQA5dpXo9TPu0rz7tSBdUPgkbam0j/fj5ZM8yg==";
+        url = "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.1.tgz";
+        sha512 = "RyYpQ6Q5/drsJyOhrWHYMWTedvjTIat+FTwv0K4yoUxzvekw2aRHMQJLlnvt8UantkZg2++bEzD9EdxXqkWf4A==";
       };
     };
     "quick-lru-1.1.0" = {
@@ -48380,13 +48722,13 @@ let
         sha512 = "wuygyq8TXUlSdVXv2kigXxQNOgdb9m7LbIjwfTNGSpaY1riLd5e+VeQjlQMyUtrk0oiyhi1AqIVynworl3qxHA==";
       };
     };
-    "re2-1.15.9" = {
+    "re2-1.16.0" = {
       name = "re2";
       packageName = "re2";
-      version = "1.15.9";
+      version = "1.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/re2/-/re2-1.15.9.tgz";
-        sha512 = "AXWEhpMTBdC+3oqbjdU07dk0pBCvxh5vbOMLERL6Y8FYBSGn4vXlLe8cYszn64Yy7H8keVMrgPzoSvOd4mePpg==";
+        url = "https://registry.npmjs.org/re2/-/re2-1.16.0.tgz";
+        sha512 = "eizTZL2ZO0ZseLqfD4t3Qd0M3b3Nr0MBWpX81EbPMIud/1d/CSfUIx2GQK8fWiAeHoSekO5EOeFib2udTZLwYw==";
       };
     };
     "react-16.14.0" = {
@@ -48407,13 +48749,13 @@ let
         sha512 = "dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==";
       };
     };
-    "react-devtools-core-4.12.2" = {
+    "react-devtools-core-4.13.5" = {
       name = "react-devtools-core";
       packageName = "react-devtools-core";
-      version = "4.12.2";
+      version = "4.13.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.12.2.tgz";
-        sha512 = "cvAiJCSIIan2A22o4j4Twc7PdDrwqiAQVBeZ+osS2T/wv2Ua3a0J8Sgx4pTH5Y7VoWn5WiGCHkAW4S1lYl3kcA==";
+        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.13.5.tgz";
+        sha512 = "k+P5VSKM6P22Go9IQ8dJmjj9fbztvKt1iRDI/4wS5oTvd1EnytIJMYB59wZt+D3kgp64jklNX/MRmY42xAQ08g==";
       };
     };
     "react-dom-16.14.0" = {
@@ -48623,15 +48965,6 @@ let
         sha512 = "aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng==";
       };
     };
-    "read-package-json-fast-1.2.2" = {
-      name = "read-package-json-fast";
-      packageName = "read-package-json-fast";
-      version = "1.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-1.2.2.tgz";
-        sha512 = "39DbPJjkltEzfXJXB6D8/Ir3GFOU2YbSKa2HaB/Y3nKrc/zY+0XrALpID6/13ezWyzqvOHrBbR4t4cjQuTdBVQ==";
-      };
-    };
     "read-package-json-fast-2.0.2" = {
       name = "read-package-json-fast";
       packageName = "read-package-json-fast";
@@ -48722,15 +49055,6 @@ let
         sha512 = "6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==";
       };
     };
-    "read-pkg-up-5.0.0" = {
-      name = "read-pkg-up";
-      packageName = "read-pkg-up";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-5.0.0.tgz";
-        sha512 = "XBQjqOBtTzyol2CpsQOw8LHV0XbDZVG7xMMjmXAJomlVY03WOBRmYgDJETlvcg0H63AJvPRwT7GFi5rvOzUOKg==";
-      };
-    };
     "read-pkg-up-7.0.1" = {
       name = "read-pkg-up";
       packageName = "read-pkg-up";
@@ -48992,13 +49316,13 @@ let
         sha512 = "ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==";
       };
     };
-    "record-cache-1.1.0" = {
+    "record-cache-1.1.1" = {
       name = "record-cache";
       packageName = "record-cache";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/record-cache/-/record-cache-1.1.0.tgz";
-        sha512 = "u8rbtLEJV7HRacl/ZYwSBFD8NFyB3PfTTfGLP37IW3hftQCwu6z4Q2RLyxo1YJUNRTEzJfpLpGwVuEYdaIkG9Q==";
+        url = "https://registry.npmjs.org/record-cache/-/record-cache-1.1.1.tgz";
+        sha512 = "L5hZlgWc7CmGbztnemQoKE1bLu9rtI2skOB0ttE4C5+TVszLE8Rd0YLTROSgvXKLAqPumS/soyN5tJW5wJLmJQ==";
       };
     };
     "recursive-readdir-2.2.2" = {
@@ -49055,13 +49379,13 @@ let
         sha1 = "8984b5815d99cb220469c99eeeffe38913e6cc0b";
       };
     };
-    "redis-3.1.1" = {
+    "redis-3.1.2" = {
       name = "redis";
       packageName = "redis";
-      version = "3.1.1";
+      version = "3.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/redis/-/redis-3.1.1.tgz";
-        sha512 = "QhkKhOuzhogR1NDJfBD34TQJz2ZJwDhhIC6ZmvpftlmfYShHHQXjjNspAJ+Z2HH5NwSBVYBVganbiZ8bgFMHjg==";
+        url = "https://registry.npmjs.org/redis/-/redis-3.1.2.tgz";
+        sha512 = "grn5KoZLr/qrRQVwoSkmzdbw6pwF+/rwODtrOr6vuBRiR/f3rjSTGupbF90Zpqm2oenix8Do6RV7pYEkGwlKkw==";
       };
     };
     "redis-commands-1.7.0" = {
@@ -49127,13 +49451,13 @@ let
         sha512 = "pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==";
       };
     };
-    "redux-4.0.5" = {
+    "redux-4.1.0" = {
       name = "redux";
       packageName = "redux";
-      version = "4.0.5";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/redux/-/redux-4.0.5.tgz";
-        sha512 = "VSz1uMAH24DM6MF72vcojpYPtrTUu3ByVWfPL1nPfVRb5mZVTve5GnNCUV53QM/BZ66xfWrm0CTWoM+Xlz8V1w==";
+        url = "https://registry.npmjs.org/redux/-/redux-4.1.0.tgz";
+        sha512 = "uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==";
       };
     };
     "reflect-metadata-0.1.13" = {
@@ -49334,6 +49658,15 @@ let
         sha512 = "ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==";
       };
     };
+    "rehype-parse-6.0.2" = {
+      name = "rehype-parse";
+      packageName = "rehype-parse";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rehype-parse/-/rehype-parse-6.0.2.tgz";
+        sha512 = "0S3CpvpTAgGmnz8kiCyFLGuW5yA4OQhyNTm/nwPopZ7+PI11WnGl1TTWTGv/2hPEe/g2jRLlhVVSsoDH8waRug==";
+      };
+    };
     "rehype-parse-7.0.1" = {
       name = "rehype-parse";
       packageName = "rehype-parse";
@@ -49433,13 +49766,13 @@ let
         sha512 = "K0PTsaZvJlXTl9DN6qYlvjTkqSZBFELhROZMrblm2rB+085flN84nz4g/BscKRMqDvhzlK1oQ/xnWQumdeNZYw==";
       };
     };
-    "remark-frontmatter-1.3.3" = {
-      name = "remark-frontmatter";
-      packageName = "remark-frontmatter";
-      version = "1.3.3";
+    "remark-footnotes-3.0.0" = {
+      name = "remark-footnotes";
+      packageName = "remark-footnotes";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-1.3.3.tgz";
-        sha512 = "fM5eZPBvu2pVNoq3ZPW22q+5Ativ1oLozq2qYt9I2oNyxiUd/tDl0iLLntEVAegpZIslPWg1brhcP1VsaSVUag==";
+        url = "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-3.0.0.tgz";
+        sha512 = "ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg==";
       };
     };
     "remark-frontmatter-2.0.0" = {
@@ -49451,6 +49784,24 @@ let
         sha512 = "uNOQt4tO14qBFWXenF0MLC4cqo3dv8qiHPGyjCl1rwOT0LomSHpcElbjjVh5CwzElInB38HD8aSRVugKQjeyHA==";
       };
     };
+    "remark-frontmatter-3.0.0" = {
+      name = "remark-frontmatter";
+      packageName = "remark-frontmatter";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz";
+        sha512 = "mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==";
+      };
+    };
+    "remark-gfm-1.0.0" = {
+      name = "remark-gfm";
+      packageName = "remark-gfm";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz";
+        sha512 = "KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==";
+      };
+    };
     "remark-html-2.0.2" = {
       name = "remark-html";
       packageName = "remark-html";
@@ -49496,15 +49847,6 @@ let
         sha512 = "XZgICP2gJ1MHU7+vQaRM+VA9HEL3X253uwUM/BGgx3iv6TH2B3bF3B8q00DKcyP9YrJV+/7WOWEWBFF/u8cIsw==";
       };
     };
-    "remark-parse-5.0.0" = {
-      name = "remark-parse";
-      packageName = "remark-parse";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz";
-        sha512 = "b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==";
-      };
-    };
     "remark-parse-6.0.3" = {
       name = "remark-parse";
       packageName = "remark-parse";
@@ -49964,15 +50306,6 @@ let
         sha512 = "ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==";
       };
     };
-    "resolve-1.19.0" = {
-      name = "resolve";
-      packageName = "resolve";
-      version = "1.19.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz";
-        sha512 = "rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==";
-      };
-    };
     "resolve-1.20.0" = {
       name = "resolve";
       packageName = "resolve";
@@ -50369,6 +50702,15 @@ let
         sha1 = "43374e2e2ca0968b0ef1523460b7d730ff22eeb3";
       };
     };
+    "rgbcolor-1.0.1" = {
+      name = "rgbcolor";
+      packageName = "rgbcolor";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz";
+        sha1 = "d6505ecdb304a6595da26fa4b43307306775945d";
+      };
+    };
     "right-align-0.1.3" = {
       name = "right-align";
       packageName = "right-align";
@@ -50495,13 +50837,13 @@ let
         sha512 = "/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==";
       };
     };
-    "rollup-2.45.2" = {
+    "rollup-2.50.5" = {
       name = "rollup";
       packageName = "rollup";
-      version = "2.45.2";
+      version = "2.50.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rollup/-/rollup-2.45.2.tgz";
-        sha512 = "kRRU7wXzFHUzBIv0GfoFFIN3m9oteY4uAsKllIpQDId5cfnkWF2J130l+27dzDju0E6MScKiV0ZM5Bw8m4blYQ==";
+        url = "https://registry.npmjs.org/rollup/-/rollup-2.50.5.tgz";
+        sha512 = "Ztz4NurU2LbS3Jn5rlhnYv35z6pkjBUmYKr94fOBIKINKRO6kug9NTFHArT7jqwMP2kqEZ39jJuEtkk91NBltQ==";
       };
     };
     "rollup-plugin-babel-4.4.0" = {
@@ -50990,13 +51332,13 @@ let
         sha512 = "y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==";
       };
     };
-    "sass-1.32.10" = {
+    "sass-1.34.0" = {
       name = "sass";
       packageName = "sass";
-      version = "1.32.10";
+      version = "1.34.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sass/-/sass-1.32.10.tgz";
-        sha512 = "Nx0pcWoonAkn7CRp0aE/hket1UP97GiR1IFw3kcjV3pnenhWgZEWUf0ZcfPOV2fK52fnOcK3JdC/YYZ9E47DTQ==";
+        url = "https://registry.npmjs.org/sass/-/sass-1.34.0.tgz";
+        sha512 = "rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==";
       };
     };
     "sax-0.5.8" = {
@@ -51116,15 +51458,6 @@ let
         sha512 = "6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==";
       };
     };
-    "scoped-regex-1.0.0" = {
-      name = "scoped-regex";
-      packageName = "scoped-regex";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/scoped-regex/-/scoped-regex-1.0.0.tgz";
-        sha1 = "a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8";
-      };
-    };
     "scoped-regex-2.1.0" = {
       name = "scoped-regex";
       packageName = "scoped-regex";
@@ -51215,13 +51548,13 @@ let
         sha1 = "625d8658f865af43ec962bfc376a37359a4994ca";
       };
     };
-    "selfsigned-1.10.8" = {
+    "selfsigned-1.10.11" = {
       name = "selfsigned";
       packageName = "selfsigned";
-      version = "1.10.8";
+      version = "1.10.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.8.tgz";
-        sha512 = "2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w==";
+        url = "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz";
+        sha512 = "aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==";
       };
     };
     "semaphore-async-await-1.5.1" = {
@@ -51368,15 +51701,6 @@ let
         sha512 = "OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==";
       };
     };
-    "semver-7.3.4" = {
-      name = "semver";
-      packageName = "semver";
-      version = "7.3.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz";
-        sha512 = "tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==";
-      };
-    };
     "semver-7.3.5" = {
       name = "semver";
       packageName = "semver";
@@ -51503,13 +51827,13 @@ let
         sha512 = "QnpHNykm4nI4T6mT+NoVayh9Ixl5DohYCSVqMgPJsO2WejOcqaYTh4HQOkmzaDzXH3NO5pif4z/hpo2NGtgNlg==";
       };
     };
-    "sentence-splitter-3.2.1" = {
+    "sentence-splitter-3.2.2" = {
       name = "sentence-splitter";
       packageName = "sentence-splitter";
-      version = "3.2.1";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sentence-splitter/-/sentence-splitter-3.2.1.tgz";
-        sha512 = "aG+Tf8M1wVUd2uPSUtdMXdJlKZLcdh+oVE8iEn8KwfxYZ87qDpe7+o0nGZdr+96g2H76Qz/8TrG9dIxyp7c70w==";
+        url = "https://registry.npmjs.org/sentence-splitter/-/sentence-splitter-3.2.2.tgz";
+        sha512 = "hMvaodgK9Fay928uiQoTMEWjXpCERdKD2uKo7BbSyP+uWTo+wHiRjN+ZShyI99rW0VuoV4Cuw8FUmaRcnpN7Ug==";
       };
     };
     "separator-escape-0.0.1" = {
@@ -51638,13 +51962,13 @@ let
         sha1 = "f13bf928e42b9c3e79383e61cc3998b5d14e6cdd";
       };
     };
-    "service-runner-2.8.2" = {
+    "service-runner-2.8.3" = {
       name = "service-runner";
       packageName = "service-runner";
-      version = "2.8.2";
+      version = "2.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/service-runner/-/service-runner-2.8.2.tgz";
-        sha512 = "SspUqYN+hp8fB5qhG9PbTzIPL3ze5wKXThdyUny2BIA6wdT5MljVkYUCUMQgo5xjM4e95+qU+XrsvfM2ytt6ng==";
+        url = "https://registry.npmjs.org/service-runner/-/service-runner-2.8.3.tgz";
+        sha512 = "oOP54jRgWE9IBeStnYI9lIdJ333HHe+8pjAvBpDmRyOXNcsvVMN22hbuX93YVlTUE87I8J80ORZ3u01DgNKMYg==";
       };
     };
     "set-blocking-1.0.0" = {
@@ -51665,15 +51989,6 @@ let
         sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
       };
     };
-    "set-getter-0.1.0" = {
-      name = "set-getter";
-      packageName = "set-getter";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz";
-        sha1 = "d769c182c9d5a51f409145f2fba82e5e86e80376";
-      };
-    };
     "set-immediate-shim-1.0.1" = {
       name = "set-immediate-shim";
       packageName = "set-immediate-shim";
@@ -52115,13 +52430,13 @@ let
         sha512 = "rohCHmEjD/ESXFLxF4bVeqgdb4Awc65ZyyuCKl3f7BvgMbZOBa/Ye3HN/GFnvruiUOAWWNupxhz3Rz5/3vJLTg==";
       };
     };
-    "simple-git-2.38.0" = {
+    "simple-git-2.39.0" = {
       name = "simple-git";
       packageName = "simple-git";
-      version = "2.38.0";
+      version = "2.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-git/-/simple-git-2.38.0.tgz";
-        sha512 = "CORjrfirWMEGbJAxaXDH/PjZVOeATeG2bkafM9DsLVcFkbF9sXQGIIpEI6FeyXpvUsFK69T/pa4+4FKY9TUJMQ==";
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-2.39.0.tgz";
+        sha512 = "VOsrmc3fpp1lGVIpo+1SKNqJzrdVJeSGZCeenPKnJPNo5UouAlSkWFc037pfm9wRYtfxBdwp2deVJGCG8J6C8A==";
       };
     };
     "simple-markdown-0.4.4" = {
@@ -52241,13 +52556,13 @@ let
         sha1 = "81f0ad2ad645181945c80952a5c1414992ee9664";
       };
     };
-    "siphash24-1.1.1" = {
+    "siphash24-1.2.0" = {
       name = "siphash24";
       packageName = "siphash24";
-      version = "1.1.1";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/siphash24/-/siphash24-1.1.1.tgz";
-        sha512 = "dKKwjIoTOa587TARYLlBRXq2lkbu5Iz35XrEVWpelhBP1m8r2BGOy1QlaZe84GTFHG/BTucEUd2btnNc8QzIVA==";
+        url = "https://registry.npmjs.org/siphash24/-/siphash24-1.2.0.tgz";
+        sha512 = "51yTA4ZqBY0tHTsBVGy3KAmMI7ArtwSOSmfFwJnZHFL+K76RMzZLx4m59HY5HSByjGHF3q+Fmcl8e5bMF160iQ==";
       };
     };
     "sisteransi-1.0.5" = {
@@ -52403,13 +52718,13 @@ let
         sha1 = "e09f00899c09f5a7058edc36dd49f046fd50a82a";
       };
     };
-    "slugify-1.5.0" = {
+    "slugify-1.5.3" = {
       name = "slugify";
       packageName = "slugify";
-      version = "1.5.0";
+      version = "1.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/slugify/-/slugify-1.5.0.tgz";
-        sha512 = "Q2UPZ2udzquy1ElHfOLILMBMqBEXkiD3wE75qtBvV+FsDdZZjUqPZ44vqLTejAVq+wLLHacOMcENnP8+ZbzmIA==";
+        url = "https://registry.npmjs.org/slugify/-/slugify-1.5.3.tgz";
+        sha512 = "/HkjRdwPY3yHJReXu38NiusZw2+LLE2SrhkWJtmlPDB1fqFSvioYj62NkPcrKiNCgRLeGcGK7QBvr1iQwybeXw==";
       };
     };
     "smart-buffer-4.1.0" = {
@@ -52547,13 +52862,13 @@ let
         sha512 = "NFwVLMCqKTocY66gcim0ukF6e31VRDJqDapg5sy3vCHqlD1OCNUXSK/aI4VQEEndDrsnFmQepsL5KpEU0dDRIQ==";
       };
     };
-    "snyk-docker-plugin-4.19.3" = {
+    "snyk-docker-plugin-4.20.8" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
-      version = "4.19.3";
+      version = "4.20.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.19.3.tgz";
-        sha512 = "5WkXyT7uY5NrTOvEqxeMqb6dDcskT3c/gbHUTOyPuvE6tMut+OOYK8RRXbwZFeLzpS8asq4e1R7U7syYG3VXwg==";
+        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.20.8.tgz";
+        sha512 = "uZ0vp2D+AYzPWzoo0jAqdK6gbUwKNPBYPKzyn6A9hBVO8guL/Y3JCq5H+7hCs6FFd0FEuD70Tsy3SNAEJyu4Fg==";
       };
     };
     "snyk-go-parser-1.4.1" = {
@@ -52574,13 +52889,13 @@ let
         sha512 = "1jAYPRgMapO2BYL+HWsUq5gsAiDGmI0Pn7omc0lk24tcUOMhUB+1hb0u9WBMNzHvXBjevBkjOctjpnt2hMKN6Q==";
       };
     };
-    "snyk-gradle-plugin-3.14.0" = {
+    "snyk-gradle-plugin-3.16.0" = {
       name = "snyk-gradle-plugin";
       packageName = "snyk-gradle-plugin";
-      version = "3.14.0";
+      version = "3.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-3.14.0.tgz";
-        sha512 = "2A8ifM91TyzSx/U2fYvHXbaCRVsEx60hGFQjbSH9Hl9AokxEzMi2qti7wsObs1jUX2m198D1mdXu4k/Y1jWxXg==";
+        url = "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-3.16.0.tgz";
+        sha512 = "PQegG8GOweJvUDSroysO1E0RK3MxphSUvNG5siRqGHJQ8s+dw9DddYN8kMn5+pTrfzo6zddgDPJxjqsfNR+NIw==";
       };
     };
     "snyk-module-3.1.0" = {
@@ -52592,40 +52907,40 @@ let
         sha512 = "HHuOYEAACpUpkFgU8HT57mmxmonaJ4O3YADoSkVhnhkmJ+AowqZyJOau703dYHNrq2DvQ7qYw81H7yyxS1Nfjw==";
       };
     };
-    "snyk-mvn-plugin-2.25.3" = {
+    "snyk-mvn-plugin-2.26.0" = {
       name = "snyk-mvn-plugin";
       packageName = "snyk-mvn-plugin";
-      version = "2.25.3";
+      version = "2.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.25.3.tgz";
-        sha512 = "JAxOThX51JDbgMMjp3gQDVi07G9VgTYSF06QC7f5LNA0zoXNr743e2rm78RGw5bqE3JRjZxEghiLHPPuvS5DDg==";
+        url = "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.26.0.tgz";
+        sha512 = "LxYNWXPJxcwbkCK+vE7t437RttEDcbsS2KJJYzFtrr6u7g26c51u9aMHYPCDAEmwjI1A28zSrh7Wp45JW4YOqg==";
       };
     };
-    "snyk-nodejs-lockfile-parser-1.30.2" = {
+    "snyk-nodejs-lockfile-parser-1.34.0" = {
       name = "snyk-nodejs-lockfile-parser";
       packageName = "snyk-nodejs-lockfile-parser";
-      version = "1.30.2";
+      version = "1.34.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.30.2.tgz";
-        sha512 = "wI3VXVYO/ok0uaQm5i+Koo4rKBNilYC/QRIQFlyGbZXf+WBdRcTBKVDfTy8uNfUhMRSGzd84lNclMnetU9Y+vw==";
+        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.34.0.tgz";
+        sha512 = "F5QjIBBu6DWHwvTYlnETJxWabTQSoKGYxyoqzurPyL60lWNQmFVid0x67tQdq0sTQOOr0p6358JI+5w634vuew==";
       };
     };
-    "snyk-nodejs-lockfile-parser-1.32.0" = {
+    "snyk-nodejs-lockfile-parser-1.35.0" = {
       name = "snyk-nodejs-lockfile-parser";
       packageName = "snyk-nodejs-lockfile-parser";
-      version = "1.32.0";
+      version = "1.35.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.32.0.tgz";
-        sha512 = "FdYa/7NibnJPqBfobyw5jgI1/rd0LpMZf2W4WYYLRc2Hz7LZjKAByPjIX6qoA+lB9SC7yk5HYwWj2n4Fbg/DDw==";
+        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.0.tgz";
+        sha512 = "fSjer9Ic8cdA2HvInUmhwbAhoLFXIokAzGB1PeGKwr0zzyfo3dSX3ReTMEbkhrEg+h0eES13px/KiiJ0EKRKMg==";
       };
     };
-    "snyk-nuget-plugin-1.21.0" = {
+    "snyk-nuget-plugin-1.21.1" = {
       name = "snyk-nuget-plugin";
       packageName = "snyk-nuget-plugin";
-      version = "1.21.0";
+      version = "1.21.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.21.0.tgz";
-        sha512 = "c/JYF3sZzMN/lYz171zrEkVcPqDVcUTVgKIKHiL8nhhuFKxZQ1gzqOgk+lnfN31TLoTNQsZ3DhW/WY+4zEALvw==";
+        url = "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.21.1.tgz";
+        sha512 = "nRtedIvrow5ODqOKkQWolKrxn8ZoNL3iNJGuW0jNhwv+/9K0XE1UORM5F1ENAsd+nzCSO/kiYAXCc5CNK8HWEw==";
       };
     };
     "snyk-paket-parser-1.6.0" = {
@@ -52664,13 +52979,13 @@ let
         sha512 = "XYjhOTRPFA7NfDUsH6uH1fbML2OgSFsqdUPbud7x01urNP9CHXgUgAD4NhKMi3dVQK+7IdYadWt0wrFWw4y+qg==";
       };
     };
-    "snyk-python-plugin-1.19.8" = {
+    "snyk-python-plugin-1.19.9" = {
       name = "snyk-python-plugin";
       packageName = "snyk-python-plugin";
-      version = "1.19.8";
+      version = "1.19.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.19.8.tgz";
-        sha512 = "LMKVnv0J4X/qHMoKB17hMND0abWtm9wdgI4xVzrOcf2Vtzs3J87trRhwLxQA2lMoBW3gcjtTeBUvNKaxikSVeQ==";
+        url = "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.19.9.tgz";
+        sha512 = "vkqBJP+wOtrBKpqrFRP5EfAs5wZ/fGNI14Mb+EMnmu+ebP1ze9AnHxfiqMl/+ITzeYElZ2H5DX9sXXiqpJRhRg==";
       };
     };
     "snyk-resolve-1.1.0" = {
@@ -52763,13 +53078,13 @@ let
         sha512 = "JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==";
       };
     };
-    "socket.io-4.0.1" = {
+    "socket.io-4.1.2" = {
       name = "socket.io";
       packageName = "socket.io";
-      version = "4.0.1";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io/-/socket.io-4.0.1.tgz";
-        sha512 = "g8eZB9lV0f4X4gndG0k7YZAywOg1VxYgCUspS4V+sDqsgI/duqd0AW84pKkbGj/wQwxrqrEq+VZrspRfTbHTAQ==";
+        url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.2.tgz";
+        sha512 = "xK0SD1C7hFrh9+bYoYCdVt+ncixkSLKtNLCax5aEy1o3r5PaO5yQhVb97exIe67cE7lAK+EpyMytXWTWmyZY8w==";
       };
     };
     "socket.io-adapter-0.2.0" = {
@@ -52799,13 +53114,13 @@ let
         sha512 = "+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==";
       };
     };
-    "socket.io-adapter-2.2.0" = {
+    "socket.io-adapter-2.3.1" = {
       name = "socket.io-adapter";
       packageName = "socket.io-adapter";
-      version = "2.2.0";
+      version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.2.0.tgz";
-        sha512 = "rG49L+FwaVEwuAdeBRq49M97YI3ElVabJPzvHT9S6a2CWhDKnjSFasvwAwSYPRhQzfn4NtDIbCaGYgOCOU/rlg==";
+        url = "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.1.tgz";
+        sha512 = "8cVkRxI8Nt2wadkY6u60Y4rpW3ejA1rxgcK2JuyIhmF+RMNpTy1QRtkHIDUOf3B4HlQwakMsWbKftMv/71VMmw==";
       };
     };
     "socket.io-client-1.0.6" = {
@@ -53204,6 +53519,15 @@ let
         sha512 = "CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==";
       };
     };
+    "source-map-js-0.6.2" = {
+      name = "source-map-js";
+      packageName = "source-map-js";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz";
+        sha512 = "/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==";
+      };
+    };
     "source-map-resolve-0.5.3" = {
       name = "source-map-resolve";
       packageName = "source-map-resolve";
@@ -53213,6 +53537,15 @@ let
         sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==";
       };
     };
+    "source-map-resolve-0.6.0" = {
+      name = "source-map-resolve";
+      packageName = "source-map-resolve";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz";
+        sha512 = "KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==";
+      };
+    };
     "source-map-support-0.4.18" = {
       name = "source-map-support";
       packageName = "source-map-support";
@@ -53348,13 +53681,13 @@ let
         sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
       };
     };
-    "spdx-license-ids-3.0.7" = {
+    "spdx-license-ids-3.0.9" = {
       name = "spdx-license-ids";
       packageName = "spdx-license-ids";
-      version = "3.0.7";
+      version = "3.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz";
-        sha512 = "U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==";
+        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz";
+        sha512 = "Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==";
       };
     };
     "spdx-license-list-6.4.0" = {
@@ -53636,13 +53969,13 @@ let
         sha1 = "475393ff9e91479aea62dcaf0ca3d14983a7fb40";
       };
     };
-    "srcset-3.0.0" = {
+    "srcset-3.0.1" = {
       name = "srcset";
       packageName = "srcset";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/srcset/-/srcset-3.0.0.tgz";
-        sha512 = "D59vF08Qzu/C4GAOXVgMTLfgryt5fyWo93FZyhEWANo0PokFz/iWdDe13mX3O5TRf6l8vMTqckAfR4zPiaH0yQ==";
+        url = "https://registry.npmjs.org/srcset/-/srcset-3.0.1.tgz";
+        sha512 = "MM8wDGg5BQJEj94tDrZDrX9wrC439/Eoeg3sgmVLPMjHgrAFeXAKk3tmFlCbKw5k+yOEhPXRpPlRcisQmqWVSQ==";
       };
     };
     "srt2vtt-1.3.1" = {
@@ -53717,13 +54050,13 @@ let
         sha512 = "pJAFizB6OcuJLX4RJJuU9HWyPwM2CqLi/vs08lhVIR3TGxacxpavvK5LzbxT+Y3iWkBchOTKS5hHCigA5aaung==";
       };
     };
-    "ssb-db2-2.0.2" = {
+    "ssb-db2-2.1.2" = {
       name = "ssb-db2";
       packageName = "ssb-db2";
-      version = "2.0.2";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.0.2.tgz";
-        sha512 = "ylN4uqh18gJjDrkaYWsuEEMV4rCLcKuYIkL26hgtAVJm9AfuOTBIdhZZHdfeAMd2ZkcqAmIR62XUeQL3czvOsA==";
+        url = "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.1.2.tgz";
+        sha512 = "FrH++v1qyoCVq9ykuyjvzvsjNEX8mpqY8DRt0bOvIENOeWTWHCA6AXlP8d6LU39CGlwjw6ftlZr4ObizYH4zSQ==";
       };
     };
     "ssb-ebt-5.6.7" = {
@@ -53951,13 +54284,13 @@ let
         sha512 = "XhzVmezsUJLlKxTfWlicxhiPRTEYHfJLskYQNRSnw4USqgo9LVx53+MJAhdZOYpZTW2jINR0TeetWs9M27gcbA==";
       };
     };
-    "ssb-replicate-1.3.2" = {
+    "ssb-replicate-1.3.3" = {
       name = "ssb-replicate";
       packageName = "ssb-replicate";
-      version = "1.3.2";
+      version = "1.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-replicate/-/ssb-replicate-1.3.2.tgz";
-        sha512 = "r/34OHn5wDkVUu0UNdKdPjmd3cPDmgknA5nK+gXBZj9ugSDwmdDsfEUavGtA7hlO+He1pC4EXtBa14dqgTqJCg==";
+        url = "https://registry.npmjs.org/ssb-replicate/-/ssb-replicate-1.3.3.tgz";
+        sha512 = "RcXRBLqQMwew+aKkaTZ2K0qq2kwe7he8ZUz8cX4bZ6Sr4+yszhRpxqnN6XeK1hA6TTvUltR0RNgOO/fqT3djRg==";
       };
     };
     "ssb-sort-1.1.3" = {
@@ -54005,15 +54338,6 @@ let
         sha512 = "Xyf2tWLnO0Z297FKag0e8IXFIpnYRWZ3FBn4dN2qlMRsOcpf0P54FPhvdcb1Es0Fm4hbhYYXa23jR+VPGPQhSg==";
       };
     };
-    "sse-z-0.3.0" = {
-      name = "sse-z";
-      packageName = "sse-z";
-      version = "0.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/sse-z/-/sse-z-0.3.0.tgz";
-        sha512 = "jfcXynl9oAOS9YJ7iqS2JMUEHOlvrRAD+54CENiWnc4xsuVLQVSgmwf7cwOTcBd/uq3XkQKBGojgvEtVXcJ/8w==";
-      };
-    };
     "ssh-config-1.1.6" = {
       name = "ssh-config";
       packageName = "ssh-config";
@@ -54158,6 +54482,15 @@ let
         sha512 = "gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==";
       };
     };
+    "stackblur-canvas-2.5.0" = {
+      name = "stackblur-canvas";
+      packageName = "stackblur-canvas";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz";
+        sha512 = "EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==";
+      };
+    };
     "stackframe-1.2.0" = {
       name = "stackframe";
       packageName = "stackframe";
@@ -54257,22 +54590,13 @@ let
         sha512 = "/Kz55rgUIv2KP2MKphwYT/NCuSfAlbbMRv2ZWw7wyXayu230zdtzhxxuXXcvsc6EmmhS8bSJl3uS1wmMHFumbA==";
       };
     };
-    "statsd-client-0.4.5" = {
+    "statsd-client-0.4.6" = {
       name = "statsd-client";
       packageName = "statsd-client";
-      version = "0.4.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/statsd-client/-/statsd-client-0.4.5.tgz";
-        sha512 = "tmTpFMxpBcq92CTMq81d1W47GEazy76Hi+aNKvKJloMplQZe+L1jekSg95YG8ieq6j2Q9MboCaLIMdsF20+eGg==";
-      };
-    };
-    "statsd-parser-0.0.4" = {
-      name = "statsd-parser";
-      packageName = "statsd-parser";
-      version = "0.0.4";
+      version = "0.4.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/statsd-parser/-/statsd-parser-0.0.4.tgz";
-        sha1 = "cbd243953cc42effd548b5d22388ed689ec639bd";
+        url = "https://registry.npmjs.org/statsd-client/-/statsd-client-0.4.6.tgz";
+        sha512 = "OL3PAf0LhlFP8ZpxFm3Ue7dL3cV5o7PAsWDsQnx/iKXGVr8huYF/ui+OZEORerEDVRps7BCPAq5bWppMj1oMoA==";
       };
     };
     "statuses-1.4.0" = {
@@ -54815,15 +55139,6 @@ let
         sha512 = "XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==";
       };
     };
-    "string.prototype.matchall-4.0.4" = {
-      name = "string.prototype.matchall";
-      packageName = "string.prototype.matchall";
-      version = "4.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.4.tgz";
-        sha512 = "pknFIWVachNcyqRfaQSeu/FUfpvJTe4uskUSZ9Wc1RijsPuzbZ8TyYT8WCNnntCjUEqQ3vUHMAfVj2+wLAisPQ==";
-      };
-    };
     "string.prototype.repeat-0.2.0" = {
       name = "string.prototype.repeat";
       packageName = "string.prototype.repeat";
@@ -55319,13 +55634,13 @@ let
         sha512 = "CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==";
       };
     };
-    "styled-components-5.2.3" = {
+    "styled-components-5.3.0" = {
       name = "styled-components";
       packageName = "styled-components";
-      version = "5.2.3";
+      version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/styled-components/-/styled-components-5.2.3.tgz";
-        sha512 = "BlR+KrLW3NL1yhvEB+9Nu9Dt51CuOnHoxd+Hj+rYPdtyR8X11uIW9rvhpy3Dk4dXXBsiW1u5U78f00Lf/afGoA==";
+        url = "https://registry.npmjs.org/styled-components/-/styled-components-5.3.0.tgz";
+        sha512 = "bPJKwZCHjJPf/hwTJl6TbkSZg/3evha+XPEizrZUGb535jLImwDUdjTNxXqjjaASt2M4qO4AVfoHJNe3XB/tpQ==";
       };
     };
     "stylehacks-4.0.3" = {
@@ -55337,13 +55652,13 @@ let
         sha512 = "7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==";
       };
     };
-    "stylelint-13.12.0" = {
+    "stylelint-13.13.1" = {
       name = "stylelint";
       packageName = "stylelint";
-      version = "13.12.0";
+      version = "13.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stylelint/-/stylelint-13.12.0.tgz";
-        sha512 = "P8O1xDy41B7O7iXaSlW+UuFbE5+ZWQDb61ndGDxKIt36fMH50DtlQTbwLpFLf8DikceTAb3r6nPrRv30wBlzXw==";
+        url = "https://registry.npmjs.org/stylelint/-/stylelint-13.13.1.tgz";
+        sha512 = "Mv+BQr5XTUrKqAXmpqm6Ddli6Ief+AiPZkRsIrAoUKFuq/ElkUh9ZMYxXD0iQNZ5ADghZKLOWz1h7hTClB7zgQ==";
       };
     };
     "stylelint-8.4.0" = {
@@ -55643,31 +55958,31 @@ let
         sha512 = "6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==";
       };
     };
-    "svelte-3.35.0" = {
+    "svelte-3.38.2" = {
       name = "svelte";
       packageName = "svelte";
-      version = "3.35.0";
+      version = "3.38.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte/-/svelte-3.35.0.tgz";
-        sha512 = "gknlZkR2sXheu/X+B7dDImwANVvK1R0QGQLd8CNIfxxGPeXBmePnxfzb6fWwTQRsYQG7lYkZXvpXJvxvpsoB7g==";
+        url = "https://registry.npmjs.org/svelte/-/svelte-3.38.2.tgz";
+        sha512 = "q5Dq0/QHh4BLJyEVWGe7Cej5NWs040LWjMbicBGZ+3qpFWJ1YObRmUDZKbbovddLC9WW7THTj3kYbTOFmU9fbg==";
       };
     };
-    "svelte-preprocess-4.6.9" = {
+    "svelte-preprocess-4.7.3" = {
       name = "svelte-preprocess";
       packageName = "svelte-preprocess";
-      version = "4.6.9";
+      version = "4.7.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.6.9.tgz";
-        sha512 = "SROWH0rB0DJ+0Ii264cprmNu/NJyZacs5wFD71ya93Cg/oA2lKHgQm4F6j0EWA4ktFMzeuJJm/eX6fka39hEHA==";
+        url = "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.7.3.tgz";
+        sha512 = "Zx1/xLeGOIBlZMGPRCaXtlMe4ZA0faato5Dc3CosEqwu75MIEPuOstdkH6cy+RYTUYynoxzNaDxkPX4DbrPwRA==";
       };
     };
-    "svelte2tsx-0.1.186" = {
+    "svelte2tsx-0.2.0" = {
       name = "svelte2tsx";
       packageName = "svelte2tsx";
-      version = "0.1.186";
+      version = "0.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.1.186.tgz";
-        sha512 = "E4BmTNmIg6yHEqazhcQ8S60GI7AaV2JKf2y5deOyr3o2zpow4gGyz7yE0uSnFDdqp2iafCD7PImWZ/v1R6uQVw==";
+        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.2.0.tgz";
+        sha512 = "gag/5eqXOMfeHkPWbioEz2kk01KJpG2ZVxYMV35EWMGpxR4m6jzgNPkl7bYp5fEOuHQ99muyVQFIedu4wjgmZw==";
       };
     };
     "sver-compat-1.5.0" = {
@@ -55679,6 +55994,15 @@ let
         sha1 = "3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8";
       };
     };
+    "svg-pathdata-5.0.5" = {
+      name = "svg-pathdata";
+      packageName = "svg-pathdata";
+      version = "5.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-5.0.5.tgz";
+        sha512 = "TAAvLNSE3fEhyl/Da19JWfMAdhSXTYeviXsLSoDT1UM76ADj5ndwAPX1FKQEgB/gFMPavOy6tOqfalXKUiXrow==";
+      };
+    };
     "svg-tags-1.0.0" = {
       name = "svg-tags";
       packageName = "svg-tags";
@@ -55688,6 +56012,15 @@ let
         sha1 = "58f71cee3bd519b59d4b2a843b6c7de64ac04764";
       };
     };
+    "svg2img-0.9.2" = {
+      name = "svg2img";
+      packageName = "svg2img";
+      version = "0.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svg2img/-/svg2img-0.9.2.tgz";
+        sha512 = "sjyUgQhfEPJpBRTGxqI9bRzE+3k41Nzc7OtcHSSko96i/EQJZAisdxyhk12Ho/mDVCsb1QsVHLbevbxrFC6onQ==";
+      };
+    };
     "svgo-0.6.6" = {
       name = "svgo";
       packageName = "svgo";
@@ -55796,13 +56129,13 @@ let
         sha512 = "xk5CMbwoQVI53rTq9o/iMojAqXP5NT4/+TMeTP4uXWDIH18pB9AXgO5Olqt0RXuf3jH032DA4DS4qzem6XdXAw==";
       };
     };
-    "swagger-ui-dist-3.47.1" = {
+    "swagger-ui-dist-3.49.0" = {
       name = "swagger-ui-dist";
       packageName = "swagger-ui-dist";
-      version = "3.47.1";
+      version = "3.49.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-3.47.1.tgz";
-        sha512 = "7b9iHDC/GGC9SJLd3HiV/3EnsJ3wu7xN8Q4MpOPfQO8UG7TQFG2TMTDkvvy0SNeqxQY0tGQY0ppZC9a95tW3kg==";
+        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-3.49.0.tgz";
+        sha512 = "R1+eT16XNP1bBLfacISifZAkFJlpwvWsS2vVurF5pbIFZnmCasD/hj+9r/q7urYdQyb0B6v11mDnuYU7rUpfQg==";
       };
     };
     "swagger2openapi-6.2.3" = {
@@ -55814,13 +56147,13 @@ let
         sha512 = "cUUktzLpK69UwpMbcTzjMw2ns9RZChfxh56AHv6+hTx3StPOX2foZjPgds3HlJcINbxosYYBn/D3cG8nwcCWwQ==";
       };
     };
-    "swagger2openapi-7.0.5" = {
+    "swagger2openapi-7.0.6" = {
       name = "swagger2openapi";
       packageName = "swagger2openapi";
-      version = "7.0.5";
+      version = "7.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.5.tgz";
-        sha512 = "Hzxse+VTX0u8xBgYJ665EjO6BfvW2PN9Yv+yIjBDm6ga9jl83+4CEdCCpznH+ILr5MS8bIIXB+XcQUM3u25w4g==";
+        url = "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.6.tgz";
+        sha512 = "VIT414koe0eJqre0KrhNMUB7QEUfPjGAKesPZZosIKr2rxZ6vpUoersHUFNOsN/OZ5u2zsniCslBOwVcmQZwlg==";
       };
     };
     "sway-1.0.0" = {
@@ -55904,6 +56237,15 @@ let
         sha512 = "6tDOXSHiVjuCaasQSWTmHUWn4PuG7qa3+1WT031yTc/swT7+rLiw3GOrFxaH1E3lLP09dH3bVuVDf2gK5rxG3Q==";
       };
     };
+    "symbol-observable-4.0.0" = {
+      name = "symbol-observable";
+      packageName = "symbol-observable";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz";
+        sha512 = "b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==";
+      };
+    };
     "symbol-tree-3.2.4" = {
       name = "symbol-tree";
       packageName = "symbol-tree";
@@ -55931,13 +56273,13 @@ let
         sha512 = "YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==";
       };
     };
-    "systeminformation-4.34.20" = {
+    "systeminformation-4.34.23" = {
       name = "systeminformation";
       packageName = "systeminformation";
-      version = "4.34.20";
+      version = "4.34.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-4.34.20.tgz";
-        sha512 = "KyT3TFxs14x9CvSbNukbBq2DIjhuLHXkBjZ6Pqllnzqt3ERxDdC6SwIBiKnXeMq6NAOfx1Dp9PjPtXtnIFuAow==";
+        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-4.34.23.tgz";
+        sha512 = "33+lQwlLxXoxy0o9WLOgw8OjbXeS3Jv+pSl+nxKc2AOClBI28HsdRPpH0u9Xa9OVjHLT9vonnOMw1ug7YXI0dA==";
       };
     };
     "table-3.8.3" = {
@@ -55976,22 +56318,22 @@ let
         sha512 = "wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==";
       };
     };
-    "table-6.0.9" = {
+    "table-6.7.0" = {
       name = "table";
       packageName = "table";
-      version = "6.0.9";
+      version = "6.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/table/-/table-6.0.9.tgz";
-        sha512 = "F3cLs9a3hL1Z7N4+EkSscsel3z55XT950AvB05bwayrNg5T1/gykXtigioTAjbltvbMSJvvhFCbnf6mX+ntnJQ==";
+        url = "https://registry.npmjs.org/table/-/table-6.7.0.tgz";
+        sha512 = "SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==";
       };
     };
-    "table-6.1.0" = {
+    "table-6.7.1" = {
       name = "table";
       packageName = "table";
-      version = "6.1.0";
+      version = "6.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/table/-/table-6.1.0.tgz";
-        sha512 = "T4G5KMmqIk6X87gLKWyU5exPpTjLjY5KyrFWaIjv3SvgaIUGXV7UEzGEnZJdTA38/yUS6f9PlKezQ0bYXG3iIQ==";
+        url = "https://registry.npmjs.org/table/-/table-6.7.1.tgz";
+        sha512 = "ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==";
       };
     };
     "table-layout-0.4.5" = {
@@ -56076,24 +56418,6 @@ let
         sha1 = "b4d4f0deed206ae7df775b129ea2ca6de52f26dd";
       };
     };
-    "tap-bail-1.0.0" = {
-      name = "tap-bail";
-      packageName = "tap-bail";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tap-bail/-/tap-bail-1.0.0.tgz";
-        sha1 = "c5a8cc71191f037938cd567f97bda3ca9700199a";
-      };
-    };
-    "tap-parser-5.4.0" = {
-      name = "tap-parser";
-      packageName = "tap-parser";
-      version = "5.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tap-parser/-/tap-parser-5.4.0.tgz";
-        sha512 = "BIsIaGqv7uTQgTW1KLTMNPSEQf4zDDPgYOBRdgOfuB+JFOLRBfEu6cLa/KvMvmqggu1FKXDfitjLwsq4827RvA==";
-      };
-    };
     "tapable-0.2.9" = {
       name = "tapable";
       packageName = "tapable";
@@ -56337,15 +56661,6 @@ let
         sha512 = "s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==";
       };
     };
-    "temp-0.9.1" = {
-      name = "temp";
-      packageName = "temp";
-      version = "0.9.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/temp/-/temp-0.9.1.tgz";
-        sha512 = "WMuOgiua1xb5R56lE0eH6ivpVmg/lq2OHm4+LtT/xtEtPQ+sz6N3bBM6WZ5FvO1lO4IKIOb43qnhoc4qxP5OeA==";
-      };
-    };
     "temp-0.9.4" = {
       name = "temp";
       packageName = "temp";
@@ -56427,6 +56742,24 @@ let
         sha512 = "vXPxwOyaNVi9nyczO16mxmHGpl6ASC5/TVhRRHpqeYHvKQm58EaWNvZXxAhR0lYYnBOQFjXjhzeLsaXdjxLjRg==";
       };
     };
+    "tempy-1.0.1" = {
+      name = "tempy";
+      packageName = "tempy";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tempy/-/tempy-1.0.1.tgz";
+        sha512 = "biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w==";
+      };
+    };
+    "tencent-serverless-http-1.3.2" = {
+      name = "tencent-serverless-http";
+      packageName = "tencent-serverless-http";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tencent-serverless-http/-/tencent-serverless-http-1.3.2.tgz";
+        sha512 = "HgIu9HuBdY0lx3jLKuicOSOrjmieklPh55x8ZmtuTnrZ5v1buAPUfLKBhTeBSz6e90ggyW+dPr5PWdz179kUkw==";
+      };
+    };
     "term-canvas-0.0.5" = {
       name = "term-canvas";
       packageName = "term-canvas";
@@ -56490,13 +56823,13 @@ let
         sha512 = "EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==";
       };
     };
-    "terser-5.6.1" = {
+    "terser-5.7.0" = {
       name = "terser";
       packageName = "terser";
-      version = "5.6.1";
+      version = "5.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-5.6.1.tgz";
-        sha512 = "yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw==";
+        url = "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz";
+        sha512 = "HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==";
       };
     };
     "terser-webpack-plugin-1.4.5" = {
@@ -56526,13 +56859,13 @@ let
         sha512 = "3qAQpykRTD5DReLu5/cwpsg7EZFzP3Q0Hp2XUWJUw2mpq2jfgOKTZr8IZKKnNieRVVo1UauROTdhbQJZveGKtQ==";
       };
     };
-    "terser-webpack-plugin-5.1.1" = {
+    "terser-webpack-plugin-5.1.3" = {
       name = "terser-webpack-plugin";
       packageName = "terser-webpack-plugin";
-      version = "5.1.1";
+      version = "5.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz";
-        sha512 = "5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q==";
+        url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz";
+        sha512 = "cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==";
       };
     };
     "test-exclude-6.0.0" = {
@@ -56580,13 +56913,13 @@ let
         sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
       };
     };
-    "textextensions-2.6.0" = {
+    "textextensions-5.12.0" = {
       name = "textextensions";
       packageName = "textextensions";
-      version = "2.6.0";
+      version = "5.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz";
-        sha512 = "49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==";
+        url = "https://registry.npmjs.org/textextensions/-/textextensions-5.12.0.tgz";
+        sha512 = "IYogUDaP65IXboCiPPC0jTLLBzYlhhw2Y4b0a2trPgbHNGGGEfuHE6tds+yDcCf4mpNDaGISFzwSSezcXt+d6w==";
       };
     };
     "textlint-rule-helper-1.2.0" = {
@@ -56598,13 +56931,13 @@ let
         sha1 = "be68d47a5146b16dd116278c9aeb7bd35631ccda";
       };
     };
-    "textlint-rule-helper-2.1.1" = {
+    "textlint-rule-helper-2.2.0" = {
       name = "textlint-rule-helper";
       packageName = "textlint-rule-helper";
-      version = "2.1.1";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/textlint-rule-helper/-/textlint-rule-helper-2.1.1.tgz";
-        sha512 = "6fxgHzoJVkjl3LaC1b2Egi+5wbhG4i0pU0knJmQujVhxIJ3D3AcQQZPs457xKAi5xKz1WayYeTeJ5jrD/hnO7g==";
+        url = "https://registry.npmjs.org/textlint-rule-helper/-/textlint-rule-helper-2.2.0.tgz";
+        sha512 = "9S5CsgQuQwPjM2wvr4JGdpkLf+pR9gOjedSQFa/Dkrbh+D9MXt1LIR4Jvx1RujKtt2nq42prmEX2q3xOxyUcIQ==";
       };
     };
     "textlint-util-to-string-2.1.1" = {
@@ -56616,6 +56949,15 @@ let
         sha512 = "PW6rXqLNGL3xZ6d5/INrX+pt8qbffmeDPLcvkBOlfNpDRFhVvNNjFmZXH86ZQjrOz9t/nNZDBXqnzqJuioJbSQ==";
       };
     };
+    "textlint-util-to-string-3.1.1" = {
+      name = "textlint-util-to-string";
+      packageName = "textlint-util-to-string";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/textlint-util-to-string/-/textlint-util-to-string-3.1.1.tgz";
+        sha512 = "mHE7/pDw/Hk+Q6YdSMNRrZPl5bCuWnFLbF+bxW+MsWQ64dw+Ia9irkammYbH5I0hVMMcfwb0MQc5nbsjqgWeyQ==";
+      };
+    };
     "then-fs-2.0.0" = {
       name = "then-fs";
       packageName = "then-fs";
@@ -57399,13 +57741,13 @@ let
         sha512 = "MV5F74YF9+UYsvwXGXTh+5YP3EqH/ivwWfyFE2/YHWQQxm9jDPmkIC23nkN133Ye4nO3HTXmiMcfGqJ5xRPfOA==";
       };
     };
-    "too-wordy-0.3.1" = {
+    "too-wordy-0.3.4" = {
       name = "too-wordy";
       packageName = "too-wordy";
-      version = "0.3.1";
+      version = "0.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/too-wordy/-/too-wordy-0.3.1.tgz";
-        sha512 = "qfKDd/kxLEmbOqdtWnp/Gw1EEvW5ONZB3HehzkHNKFIx3bUrfda6qdOzxJ74vkaIaJbZyRFkBHkbY078fjAd5A==";
+        url = "https://registry.npmjs.org/too-wordy/-/too-wordy-0.3.4.tgz";
+        sha512 = "EU+UA4zHc06TkVQaravNNVdqX763/ENTIOKiKlqSJ6WKCPwLxHjvY3d0uEJYaq92iojyHPwD2iaYbZKjdw3icA==";
       };
     };
     "topo-2.0.2" = {
@@ -57588,13 +57930,13 @@ let
         sha1 = "a8b13fd6bfd2489519674ccde55ba3693b706d09";
       };
     };
-    "tr46-2.0.2" = {
+    "tr46-2.1.0" = {
       name = "tr46";
       packageName = "tr46";
-      version = "2.0.2";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz";
-        sha512 = "3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==";
+        url = "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz";
+        sha512 = "15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==";
       };
     };
     "transliteration-1.6.6" = {
@@ -57660,6 +58002,15 @@ let
         sha512 = "1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==";
       };
     };
+    "treeverse-1.0.4" = {
+      name = "treeverse";
+      packageName = "treeverse";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/treeverse/-/treeverse-1.0.4.tgz";
+        sha512 = "whw60l7r+8ZU8Tu/Uc2yxtc4ZTZbR/PF3u1IPNKGQ6p8EICLb3Z2lAgoqw9bqYd8IkgnsaOcLzYHFckjqNsf0g==";
+      };
+    };
     "trim-0.0.1" = {
       name = "trim";
       packageName = "trim";
@@ -57696,13 +58047,13 @@ let
         sha1 = "b403d0b91be50c331dfc4b82eeceb22c3de16d20";
       };
     };
-    "trim-newlines-3.0.0" = {
+    "trim-newlines-3.0.1" = {
       name = "trim-newlines";
       packageName = "trim-newlines";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz";
-        sha512 = "C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==";
+        url = "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz";
+        sha512 = "c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==";
       };
     };
     "trim-off-newlines-1.0.1" = {
@@ -57948,6 +58299,15 @@ let
         sha512 = "IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==";
       };
     };
+    "tspan-0.4.0" = {
+      name = "tspan";
+      packageName = "tspan";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tspan/-/tspan-0.4.0.tgz";
+        sha512 = "0ELL9tpLpTqLliFyQySaxgCO43buCML+j3TI4E1LuSI8wkzITGEVhZCyMvv/A+3ek9KpgALhhgnZESRLTbN+iw==";
+      };
+    };
     "tsscmp-1.0.6" = {
       name = "tsscmp";
       packageName = "tsscmp";
@@ -58011,15 +58371,6 @@ let
         sha1 = "ac9f4ba7bd04525d6bd8b087f85553c8ef19dc9e";
       };
     };
-    "tunnel-0.0.4" = {
-      name = "tunnel";
-      packageName = "tunnel";
-      version = "0.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tunnel/-/tunnel-0.0.4.tgz";
-        sha1 = "2d3785a158c174c9a16dc2c046ec5fc5f1742213";
-      };
-    };
     "tunnel-0.0.6" = {
       name = "tunnel";
       packageName = "tunnel";
@@ -58308,6 +58659,15 @@ let
         sha512 = "4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==";
       };
     };
+    "type-fest-1.2.0" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-1.2.0.tgz";
+        sha512 = "++0N6KyAj0t2webXst0PE0xuXb4Dv3z1Z+4SGzK+j/epeWBZCfkQbkW/ezscZwpinmBQ5wu/l4TqagKSVcAGCA==";
+      };
+    };
     "type-is-1.6.18" = {
       name = "type-is";
       packageName = "type-is";
@@ -58317,13 +58677,13 @@ let
         sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
       };
     };
-    "typed-rest-client-1.2.0" = {
+    "typed-rest-client-1.8.4" = {
       name = "typed-rest-client";
       packageName = "typed-rest-client";
-      version = "1.2.0";
+      version = "1.8.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.2.0.tgz";
-        sha512 = "FrUshzZ1yxH8YwGR29PWWnfksLEILbWJydU7zfIRkyH7kAEzB62uMAl2WY6EyolWpLpVHeJGgQm45/MaruaHpw==";
+        url = "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.4.tgz";
+        sha512 = "MyfKKYzk3I6/QQp6e1T50py4qg+c+9BzOEl2rBmQIpStwNUoqQ73An+Tkfy9YuV7O+o2mpVVJpe+fH//POZkbg==";
       };
     };
     "typedarray-0.0.6" = {
@@ -58371,13 +58731,13 @@ let
         sha512 = "7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==";
       };
     };
-    "typegram-3.2.3" = {
+    "typegram-3.3.1" = {
       name = "typegram";
       packageName = "typegram";
-      version = "3.2.3";
+      version = "3.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typegram/-/typegram-3.2.3.tgz";
-        sha512 = "zlkY7vNTLcwQhLUyYXAUzRelzH752LBFl8m4u04d5g5P7lM9bGegeIRwzd3mVCHJH6R3s48pKeFTVSdVlN+omg==";
+        url = "https://registry.npmjs.org/typegram/-/typegram-3.3.1.tgz";
+        sha512 = "Y1bR17IZ9Shj1Ih8wTLtrmOOMHJ20ve0Bd5SPymmw53uO4WLp/JjNM55s2b6PEziBvMISRdCQSZ+m6JiUKEobA==";
       };
     };
     "typescript-2.9.2" = {
@@ -58443,13 +58803,13 @@ let
         sha512 = "qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw==";
       };
     };
-    "typescript-4.2.4" = {
+    "typescript-4.3.2" = {
       name = "typescript";
       packageName = "typescript";
-      version = "4.2.4";
+      version = "4.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz";
-        sha512 = "V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==";
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz";
+        sha512 = "zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw==";
       };
     };
     "typescript-eslint-parser-16.0.1" = {
@@ -58551,13 +58911,13 @@ let
         sha512 = "otIc7O9LyxpUcQoXzj2hL4LPWKklO6LJWoJUzNa8A17Xgi4fOeDC8FBDOLHnC/Slo1CQgsZMcM6as0M76BZaig==";
       };
     };
-    "uglify-js-3.13.4" = {
+    "uglify-js-3.13.8" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "3.13.4";
+      version = "3.13.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.4.tgz";
-        sha512 = "kv7fCkIXyQIilD5/yQy8O+uagsYIOt5cZvs890W40/e/rvjMSzJw81o9Bg0tkURxzZBROtDQhW2LFjOGoK3RZw==";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.8.tgz";
+        sha512 = "PvFLMFIQHfIjFFlvAch69U2IvIxK9TNzNWt1SxZGp9JZ/v70yvqIQuiJeVPPtUMOzoNt+aNRDk4wgxb34wvEqA==";
       };
     };
     "uglify-js-3.4.10" = {
@@ -58749,13 +59109,13 @@ let
         sha512 = "nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==";
       };
     };
-    "underscore-1.10.2" = {
+    "underscore-1.12.1" = {
       name = "underscore";
       packageName = "underscore";
-      version = "1.10.2";
+      version = "1.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz";
-        sha512 = "N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==";
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz";
+        sha512 = "hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==";
       };
     };
     "underscore-1.13.1" = {
@@ -58794,15 +59154,6 @@ let
         sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
       };
     };
-    "underscore-1.8.3" = {
-      name = "underscore";
-      packageName = "underscore";
-      version = "1.8.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz";
-        sha1 = "4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022";
-      };
-    };
     "underscore-1.9.1" = {
       name = "underscore";
       packageName = "underscore";
@@ -59082,13 +59433,13 @@ let
         sha512 = "uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==";
       };
     };
-    "unist-util-filter-0.2.1" = {
+    "unist-util-filter-2.0.3" = {
       name = "unist-util-filter";
       packageName = "unist-util-filter";
-      version = "0.2.1";
+      version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-filter/-/unist-util-filter-0.2.1.tgz";
-        sha1 = "e2f7876828903a6a9308e362051f86b14f35b545";
+        url = "https://registry.npmjs.org/unist-util-filter/-/unist-util-filter-2.0.3.tgz";
+        sha512 = "8k6Jl/KLFqIRTHydJlHh6+uFgqYHq66pV75pZgr1JwfyFSjbWb12yfb0yitW/0TbHXjr9U4G9BQpOvMANB+ExA==";
       };
     };
     "unist-util-find-1.0.2" = {
@@ -59136,15 +59487,6 @@ let
         sha512 = "fPNWewS593JSmg49HbnE86BJKuBi1/nMWhDSccBvbARfxezEuJV85EaARR9/VplveiwCoLm2kWq+DhP8TBaDpw==";
       };
     };
-    "unist-util-is-1.0.0" = {
-      name = "unist-util-is";
-      packageName = "unist-util-is";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-is/-/unist-util-is-1.0.0.tgz";
-        sha1 = "4c7b3c5c0f6aa963640056fe4af7b5fcfdbb8ef0";
-      };
-    };
     "unist-util-is-2.1.3" = {
       name = "unist-util-is";
       packageName = "unist-util-is";
@@ -59262,6 +59604,15 @@ let
         sha512 = "3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==";
       };
     };
+    "unist-util-stringify-position-3.0.0" = {
+      name = "unist-util-stringify-position";
+      packageName = "unist-util-stringify-position";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.0.tgz";
+        sha512 = "SdfAl8fsDclywZpfMDTVDxA2V7LjtRDTOFd44wUJamgl6OlVngsqWjxvermMYf60elWHbxhuRCZml7AnuXCaSA==";
+      };
+    };
     "unist-util-visit-1.4.1" = {
       name = "unist-util-visit";
       packageName = "unist-util-visit";
@@ -59325,15 +59676,6 @@ let
         sha512 = "3DLtXdm/G1LQMCnPj+Aw7uDoleQttNHp2g5FnNQKR6cP6taNWS1b/Ehjjx4PVyvejKi3TJyu8iBraKM4q3JQPg==";
       };
     };
-    "universal-user-agent-4.0.1" = {
-      name = "universal-user-agent";
-      packageName = "universal-user-agent";
-      version = "4.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.1.tgz";
-        sha512 = "LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg==";
-      };
-    };
     "universal-user-agent-6.0.0" = {
       name = "universal-user-agent";
       packageName = "universal-user-agent";
@@ -59811,13 +60153,13 @@ let
         sha1 = "1505a03a289a48cbd7a434efbaeec5055f5633a9";
       };
     };
-    "url-toolkit-2.2.1" = {
+    "url-toolkit-2.2.2" = {
       name = "url-toolkit";
       packageName = "url-toolkit";
-      version = "2.2.1";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.2.1.tgz";
-        sha512 = "8+DzgrtDZYZGhHaAop5WGVghMdCfOLGbhcArsJD0qDll71FXa7EeKxi2hilPIscn2nwMz4PRjML32Sz4JTN0Xw==";
+        url = "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.2.2.tgz";
+        sha512 = "l25w6Sy+Iy3/IbogunxhWwljPaDnqpiKvrQRoLBm6DfISco7NyRIS7Zf6+Oxhy1T8kHxWdwLND7ZZba6NjXMug==";
       };
     };
     "urlencode-1.1.0" = {
@@ -59838,13 +60180,13 @@ let
         sha1 = "23f89069a6c62f46cf3a1d3b00169cefb90be0c6";
       };
     };
-    "usb-1.7.0" = {
+    "usb-1.7.1" = {
       name = "usb";
       packageName = "usb";
-      version = "1.7.0";
+      version = "1.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/usb/-/usb-1.7.0.tgz";
-        sha512 = "LHm9d389NCzZSMd0DnilxT5Lord4P2E3ETwP1LeuJcEBmI5uLJv8Sd18z/9bairUMbDnnNqX+Hi5Xkl93Kvdmw==";
+        url = "https://registry.npmjs.org/usb/-/usb-1.7.1.tgz";
+        sha512 = "HTCfx6NnNRhv5y98t04Y8j2+A8dmQnEGxCMY2/zN/0gkiioLYfTZ5w/PEKlWRVUY+3qLe9xwRv9pHLkjQYNw/g==";
       };
     };
     "use-3.1.1" = {
@@ -59893,13 +60235,13 @@ let
         sha512 = "3XZZuJSeoIUyMYSuDbTbVtP4KAVGHPfU8nmHFkr8LJc+THCaUXwnu/2AV+LCSLarET/hL9IlbNfYTGrt6fOVuQ==";
       };
     };
-    "ut_pex-2.0.1" = {
+    "ut_pex-3.0.0" = {
       name = "ut_pex";
       packageName = "ut_pex";
-      version = "2.0.1";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ut_pex/-/ut_pex-2.0.1.tgz";
-        sha512 = "kI1/y1IhbuTqjyVqekSZCd3afPQTpdIRCrON1WXc9jGdcIAaze3FAoZ1ssYJmGBuJbdg7LQO42daJGCaoRXl+A==";
+        url = "https://registry.npmjs.org/ut_pex/-/ut_pex-3.0.0.tgz";
+        sha512 = "huPZAVpXzqUmCSGdeALwnoH29V+bK0O9ISH4jNfvlGFhY8qMJF0I+RKfVMiiT0TlgeB6thiitz/0G9BORVRb6Q==";
       };
     };
     "utf-8-validate-1.2.2" = {
@@ -59911,13 +60253,13 @@ let
         sha1 = "8bb871a4741e085c70487ca7acdbd7d6d36029eb";
       };
     };
-    "utf-8-validate-5.0.4" = {
+    "utf-8-validate-5.0.5" = {
       name = "utf-8-validate";
       packageName = "utf-8-validate";
-      version = "5.0.4";
+      version = "5.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.4.tgz";
-        sha512 = "MEF05cPSq3AwJ2C7B7sHAA6i53vONoZbMGX8My5auEVm6W+dJ2Jd/TZPyGJ5CH42V2XtbI5FD28HeHeqlPzZ3Q==";
+        url = "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.5.tgz";
+        sha512 = "+pnxRYsS/axEpkrrEpzYfNZGXp0IjC/9RIxwM5gntY4Koi8SHmUGSfxfWqxZdRxrtaoVstuOzUp/rbs3JSPELQ==";
       };
     };
     "utf7-1.0.2" = {
@@ -60001,13 +60343,13 @@ let
         sha512 = "HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==";
       };
     };
-    "util-0.12.3" = {
+    "util-0.12.4" = {
       name = "util";
       packageName = "util";
-      version = "0.12.3";
+      version = "0.12.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/util/-/util-0.12.3.tgz";
-        sha512 = "I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==";
+        url = "https://registry.npmjs.org/util/-/util-0.12.4.tgz";
+        sha512 = "bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==";
       };
     };
     "util-0.4.9" = {
@@ -60118,13 +60460,13 @@ let
         sha512 = "vRAKaS8WcYNgzbxyH2LdheqgL4sQLis8LXl7r/mN+O4mpWlUpoCsTtietxepLrft2q0TFA2gaIvSWN1iRkzW/w==";
       };
     };
-    "utp-native-2.4.0" = {
+    "utp-native-2.5.0" = {
       name = "utp-native";
       packageName = "utp-native";
-      version = "2.4.0";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/utp-native/-/utp-native-2.4.0.tgz";
-        sha512 = "jKwpFiEaDUuNH5S4vVk/+waAX+yA6f3Lw4flqOROH1ZE/jcT4mh0/hjIGSuPP9j9RbQcsBG6Fu6LaFk4ojXFxw==";
+        url = "https://registry.npmjs.org/utp-native/-/utp-native-2.5.0.tgz";
+        sha512 = "HoHPE6gwLxC0xlpYJUl+Xw2sh809lhXx3TexHsb2/xY8vEd6NwuvAxOI/X27dBTc/TOT5diWUpCJWDaunkcVvA==";
       };
     };
     "uuid-2.0.3" = {
@@ -60298,6 +60640,15 @@ let
         sha1 = "1c243a50b595c1be54a754bfece8563b9ff8d813";
       };
     };
+    "value-or-promise-1.0.6" = {
+      name = "value-or-promise";
+      packageName = "value-or-promise";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.6.tgz";
+        sha512 = "9r0wQsWD8z/BxPOvnwbPf05ZvFngXyouE9EKB+5GbYix+BYnAwrIChCUyFIinfbf2FL/U71z+CPpbnmTdxrwBg==";
+      };
+    };
     "variable-diff-1.1.0" = {
       name = "variable-diff";
       packageName = "variable-diff";
@@ -60847,6 +61198,15 @@ let
         sha512 = "DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==";
       };
     };
+    "vfile-message-3.0.1" = {
+      name = "vfile-message";
+      packageName = "vfile-message";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-message/-/vfile-message-3.0.1.tgz";
+        sha512 = "gYmSHcZZUEtYpTmaWaFJwsuUD70/rTY4v09COp8TGtOkix6gGxb/a8iTQByIY9ciTk9GwAwIXd/J9OPfM4Bvaw==";
+      };
+    };
     "vfile-reporter-1.5.0" = {
       name = "vfile-reporter";
       packageName = "vfile-reporter";
@@ -61045,13 +61405,13 @@ let
         sha1 = "614f7fbf8d801f0bb5f0661f5b2f5785750e4f09";
       };
     };
-    "vsce-1.87.1" = {
+    "vsce-1.91.0" = {
       name = "vsce";
       packageName = "vsce";
-      version = "1.87.1";
+      version = "1.91.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vsce/-/vsce-1.87.1.tgz";
-        sha512 = "3tSUWZl9AmhZrqy/UVUpdPODSzBiCGjIr/AMSSgF2PuFLSdrh+6kiOr2Ath7bpQEXOxf55hNgz3qdO5MuEJmww==";
+        url = "https://registry.npmjs.org/vsce/-/vsce-1.91.0.tgz";
+        sha512 = "y75QryWKzAw5KIR4NFEXc6XAy/Er1BHXdNwAESgKKFw8Yc8cA/+dP4Gj7VYhNPOJlV0v5j1in/cPkLFZAqC7cQ==";
       };
     };
     "vscode-css-languageservice-3.0.13" = {
@@ -61081,22 +61441,22 @@ let
         sha512 = "DTMa8QbVmujFPvD3NxoC5jjIXCyCG+cvn3hNzwQRhvhsk8LblNymBZBwzfcDdgEtqsi4O/2AB5HnMIRzxhzEzg==";
       };
     };
-    "vscode-debugadapter-testsupport-1.46.0" = {
+    "vscode-debugadapter-testsupport-1.47.0" = {
       name = "vscode-debugadapter-testsupport";
       packageName = "vscode-debugadapter-testsupport";
-      version = "1.46.0";
+      version = "1.47.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-debugadapter-testsupport/-/vscode-debugadapter-testsupport-1.46.0.tgz";
-        sha512 = "6n+uu4+Q5sZvN2FgFLNJkyaE6AECYzFh+Hfv+IeJoVKA7KNiQ1SNd3yTsvSFxkS00LmVU6V00XGaqZRlwM15Jg==";
+        url = "https://registry.npmjs.org/vscode-debugadapter-testsupport/-/vscode-debugadapter-testsupport-1.47.0.tgz";
+        sha512 = "zhEuaMt2RCOcJoTZ5p35k2WhCzk51UN1PlrtwfWJ8fiFhjDvXIG+682Wkq1VyL12EhTf4qOLMLn0X4JlX7eJ6g==";
       };
     };
-    "vscode-debugprotocol-1.46.0" = {
+    "vscode-debugprotocol-1.47.0" = {
       name = "vscode-debugprotocol";
       packageName = "vscode-debugprotocol";
-      version = "1.46.0";
+      version = "1.47.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-debugprotocol/-/vscode-debugprotocol-1.46.0.tgz";
-        sha512 = "V10u1L679DJZfOtQXhKylJPMqNbhazav4mRxPrBE8/Jpznow1b1j1EGDDvJ4prQ623CLAnvpFfVkVQ+CX3xdtg==";
+        url = "https://registry.npmjs.org/vscode-debugprotocol/-/vscode-debugprotocol-1.47.0.tgz";
+        sha512 = "ii7oCz3Wfr/SGtFr5AYop5dJm0dUmpg0hq2lTzTBdaht8nSheYMMjPntxULBR+2TUxXLcCKFZkF2UEJQduYsIQ==";
       };
     };
     "vscode-emmet-helper-1.2.17" = {
@@ -61144,13 +61504,13 @@ let
         sha512 = "QxI+qV97uD7HHOCjh3MrM1TfbdwmTXrMckri5Tus1/FQiG3baDZb2C9Y0y8QThs7PwHYBIQXcAc59ZveCRZKPA==";
       };
     };
-    "vscode-json-languageservice-4.0.2" = {
+    "vscode-json-languageservice-4.1.4" = {
       name = "vscode-json-languageservice";
       packageName = "vscode-json-languageservice";
-      version = "4.0.2";
+      version = "4.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.0.2.tgz";
-        sha512 = "d8Ahw990Cq/G60CzN26rehXcbhbMgMGMmXeN6C/V/RYZUhfs16EELRK+EL7b/3Y8ZGshtKqboePSeDVa94qqFg==";
+        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.1.4.tgz";
+        sha512 = "/UqaE58BVFdePM9l971L6xPRLlCLNk01aovf1Pp9hB/8pytmd2s9ZNEnS1JqYyQEJ1k5/fEBsWOdhQlNo4H7VA==";
       };
     };
     "vscode-jsonrpc-3.5.0" = {
@@ -61306,6 +61666,15 @@ let
         sha512 = "60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==";
       };
     };
+    "vscode-languageserver-7.1.0-next.4" = {
+      name = "vscode-languageserver";
+      packageName = "vscode-languageserver";
+      version = "7.1.0-next.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.1.0-next.4.tgz";
+        sha512 = "/65lxR/CuLJoOdzTjOTYUPWS7k5qzaWese4PObnWc6jwLryUrSa7DslYfaRXigh5/xr1nlaUZCcJwkpgM0wFvw==";
+      };
+    };
     "vscode-languageserver-protocol-3.14.1" = {
       name = "vscode-languageserver-protocol";
       packageName = "vscode-languageserver-protocol";
@@ -61666,6 +62035,15 @@ let
         sha512 = "ttGcuHA/OBnN2pcM6johpYlEms7XpO5/fyKIr48541xXedan4roO8cS1Q2S/zbbjGH/BarYDAMeS2Mi9HE5Tig==";
       };
     };
+    "walk-up-path-1.0.0" = {
+      name = "walk-up-path";
+      packageName = "walk-up-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz";
+        sha512 = "hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==";
+      };
+    };
     "walker-1.0.7" = {
       name = "walker";
       packageName = "walker";
@@ -61720,6 +62098,15 @@ let
         sha512 = "Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==";
       };
     };
+    "watchpack-2.2.0" = {
+      name = "watchpack";
+      packageName = "watchpack";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz";
+        sha512 = "up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==";
+      };
+    };
     "watchpack-chokidar2-2.0.1" = {
       name = "watchpack-chokidar2";
       packageName = "watchpack-chokidar2";
@@ -61738,6 +62125,15 @@ let
         sha1 = "79331f666366b3b1c6ab02ceb04bad8dd2eebb0c";
       };
     };
+    "wavedrom-2.6.9" = {
+      name = "wavedrom";
+      packageName = "wavedrom";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wavedrom/-/wavedrom-2.6.9.tgz";
+        sha512 = "EXBubejy7GrzibGLJ6OXH5HAP7KbA62gXMm8FvqJH0W5S05D6pgqdnRG20KP1w/WSY+zqdVIkiHNxwgquPbs2w==";
+      };
+    };
     "wawoff2-1.0.2" = {
       name = "wawoff2";
       packageName = "wawoff2";
@@ -61801,13 +62197,13 @@ let
         sha512 = "n1CfuJcJ+dynIx/fmavB6haPx37N3GZvY5HIGIselymDiSwNRC+8pAxOzoB4eVwUBJnbP3+aA8vWttrAZbgs7A==";
       };
     };
-    "web3-utils-1.3.5" = {
+    "web3-utils-1.3.6" = {
       name = "web3-utils";
       packageName = "web3-utils";
-      version = "1.3.5";
+      version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.5.tgz";
-        sha512 = "5apMRm8ElYjI/92GHqijmaLC+s+d5lgjpjHft+rJSs/dsnX8I8tQreqev0dmU+wzU+2EEe4Sx9a/OwGWHhQv3A==";
+        url = "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.6.tgz";
+        sha512 = "hHatFaQpkQgjGVER17gNx8u1qMyaXFZtM0y0XLGH1bzsjMPlkMPLRcYOrZ00rOPfTEuYFOdrpGOqZXVmGrMZRg==";
       };
     };
     "webassemblyjs-1.11.0" = {
@@ -62017,13 +62413,13 @@ let
         sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
       };
     };
-    "webpack-sources-2.2.0" = {
+    "webpack-sources-2.3.0" = {
       name = "webpack-sources";
       packageName = "webpack-sources";
-      version = "2.2.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz";
-        sha512 = "bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==";
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz";
+        sha512 = "WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==";
       };
     };
     "webpack-stream-6.1.0" = {
@@ -62071,13 +62467,13 @@ let
         sha512 = "OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==";
       };
     };
-    "webtorrent-0.117.0" = {
+    "webtorrent-1.0.0" = {
       name = "webtorrent";
       packageName = "webtorrent";
-      version = "0.117.0";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-0.117.0.tgz";
-        sha512 = "CeBZP6rr1n0qAq747YjXZcDwMmUIi0d3x38qtEb8zrjjURSDd81vmtT1Y9LPJoYsY55jaYtUHGp4Ht6agQ3vWg==";
+        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-1.0.0.tgz";
+        sha512 = "htwcY5OBOWL/OMwaw3xi1Mp2gE9k5UmGTKeO3n1ixQDH9QgeqqRlBJz2ZLEyOL8yN1FdS/D9z+ijm06bZ3oW5w==";
       };
     };
     "well-known-symbols-2.0.0" = {
@@ -62242,6 +62638,15 @@ let
         sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
       };
     };
+    "which-pm-2.0.0" = {
+      name = "which-pm";
+      packageName = "which-pm";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz";
+        sha512 = "Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==";
+      };
+    };
     "which-pm-runs-1.0.0" = {
       name = "which-pm-runs";
       packageName = "which-pm-runs";
@@ -63007,6 +63412,15 @@ let
         sha512 = "xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==";
       };
     };
+    "ws-7.4.6" = {
+      name = "ws";
+      packageName = "ws";
+      version = "7.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz";
+        sha512 = "YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==";
+      };
+    };
     "x-default-browser-0.3.1" = {
       name = "x-default-browser";
       packageName = "x-default-browser";
@@ -63088,13 +63502,13 @@ let
         sha512 = "N1XQngeqMBoj9wM4ZFadVV2MymImeiFfYD+fJrNlcVcOHsJFFQe7n3b+aBoTPwARuq2HQxukfzVpQmAk1gN4sQ==";
       };
     };
-    "xdl-59.0.32" = {
+    "xdl-59.0.42" = {
       name = "xdl";
       packageName = "xdl";
-      version = "59.0.32";
+      version = "59.0.42";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xdl/-/xdl-59.0.32.tgz";
-        sha512 = "BY6tKRFueOlyua1btLEhdO5O7HdR/JfbCkMnRN9/slqHSPt7riL2maCKYYeT/HtvEXiww8Wrj0g6sJ97gqG/7g==";
+        url = "https://registry.npmjs.org/xdl/-/xdl-59.0.42.tgz";
+        sha512 = "/Er1hvi8AB5YbAL/JulvFkNHKd1B+9Sl8PttHZmu8kaqApkDZWPNvWhN3hBEnJIIzEODTejYII3IoAQmf7PveA==";
       };
     };
     "xenvar-0.5.1" = {
@@ -63385,6 +63799,15 @@ let
         sha512 = "Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==";
       };
     };
+    "xmldom-0.6.0" = {
+      name = "xmldom";
+      packageName = "xmldom";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmldom/-/xmldom-0.6.0.tgz";
+        sha512 = "iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==";
+      };
+    };
     "xmlhttprequest-1.8.0" = {
       name = "xmlhttprequest";
       packageName = "xmlhttprequest";
@@ -63413,6 +63836,15 @@ let
         sha1 = "c2876b06168aadc40e57d97e81191ac8f4398b3e";
       };
     };
+    "xmlhttprequest-ssl-1.6.3" = {
+      name = "xmlhttprequest-ssl";
+      packageName = "xmlhttprequest-ssl";
+      version = "1.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz";
+        sha512 = "3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==";
+      };
+    };
     "xorshift-0.2.1" = {
       name = "xorshift";
       packageName = "xorshift";
@@ -63476,22 +63908,22 @@ let
         sha1 = "f164263325ae671f53836fb210c7ddbcfda46598";
       };
     };
-    "xss-1.0.8" = {
+    "xss-1.0.9" = {
       name = "xss";
       packageName = "xss";
-      version = "1.0.8";
+      version = "1.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xss/-/xss-1.0.8.tgz";
-        sha512 = "3MgPdaXV8rfQ/pNn16Eio6VXYPTkqwa0vc7GkiymmY/DqR1SE/7VPAAVZz1GJsJFrllMYO3RHfEaiUGjab6TNw==";
+        url = "https://registry.npmjs.org/xss/-/xss-1.0.9.tgz";
+        sha512 = "2t7FahYnGJys6DpHLhajusId7R0Pm2yTmuL0GV9+mV0ZlaLSnb2toBmppATfg5sWIhZQGlsTLoecSzya+l4EAQ==";
       };
     };
-    "xstate-4.18.0" = {
+    "xstate-4.20.0" = {
       name = "xstate";
       packageName = "xstate";
-      version = "4.18.0";
+      version = "4.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xstate/-/xstate-4.18.0.tgz";
-        sha512 = "cjj22XXxTWIkMrghyoUWjUlDFcd7MQGeKYy8bkdtcIeogZjF98mep9CHv8xLO3j4PZQF5qgcAGGT8FUn99mF1Q==";
+        url = "https://registry.npmjs.org/xstate/-/xstate-4.20.0.tgz";
+        sha512 = "u5Ou1CMo/oWApasmv1TYTHgj38k69DJdTqQdBBwt+/ooNhPJQiSIKTB3Y3HvX0h5tulwfSo6xAwZgBgjRsK3LA==";
       };
     };
     "xstream-11.14.0" = {
@@ -63737,13 +64169,13 @@ let
         sha512 = "D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==";
       };
     };
-    "yargs-17.0.0-candidate.12" = {
+    "yargs-17.0.1" = {
       name = "yargs";
       packageName = "yargs";
-      version = "17.0.0-candidate.12";
+      version = "17.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-17.0.0-candidate.12.tgz";
-        sha512 = "K/Q98zCuqg1CTgqmURpqytY3Iz+P7HQ42/FglRRQWEEi2DNxzIJqA50J1LJjm58FPJDzBnqLQ1BHUFnabzj4CA==";
+        url = "https://registry.npmjs.org/yargs/-/yargs-17.0.1.tgz";
+        sha512 = "xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==";
       };
     };
     "yargs-3.10.0" = {
@@ -63782,13 +64214,13 @@ let
         sha1 = "782ec21ef403345f830a808ca3d513af56065208";
       };
     };
-    "yargs-7.1.1" = {
+    "yargs-7.1.2" = {
       name = "yargs";
       packageName = "yargs";
-      version = "7.1.1";
+      version = "7.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz";
-        sha512 = "huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==";
+        url = "https://registry.npmjs.org/yargs/-/yargs-7.1.2.tgz";
+        sha512 = "ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA==";
       };
     };
     "yargs-parser-10.1.0" = {
@@ -63872,13 +64304,13 @@ let
         sha1 = "29cceac0dc4f03c6c87b4a9f217dd18c9f74871c";
       };
     };
-    "yargs-parser-5.0.0-security.0" = {
+    "yargs-parser-5.0.1" = {
       name = "yargs-parser";
       packageName = "yargs-parser";
-      version = "5.0.0-security.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz";
-        sha512 = "T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==";
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz";
+        sha512 = "wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==";
       };
     };
     "yargs-parser-7.0.0" = {
@@ -63989,22 +64421,13 @@ let
         sha512 = "CP0fwGk5Y+jel+A0AQbyqnIFZRRpkKOeYUibiTSmlgV9PcgNFFVwn86VcUIpDLOqVjF+9v+O9FWQMo+IUcV2mA==";
       };
     };
-    "yeoman-environment-2.10.3" = {
+    "yeoman-environment-3.4.1" = {
       name = "yeoman-environment";
       packageName = "yeoman-environment";
-      version = "2.10.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.10.3.tgz";
-        sha512 = "pLIhhU9z/G+kjOXmJ2bPFm3nejfbH+f1fjYRSOteEXDBrv1EoJE/e+kuHixSXfCYfTkxjYsvRaDX+1QykLCnpQ==";
-      };
-    };
-    "yeoman-generator-4.13.0" = {
-      name = "yeoman-generator";
-      packageName = "yeoman-generator";
-      version = "4.13.0";
+      version = "3.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-4.13.0.tgz";
-        sha512 = "f2/5N5IR3M2Ozm+QocvZQudlQITv2DwI6Mcxfy7R7gTTzaKgvUpgo/pQMJ+WQKm0KN0YMWCFOZpj0xFGxevc1w==";
+        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-3.4.1.tgz";
+        sha512 = "Bu3kN5sTOyAcbO/cKEQf6KOxsLta9oRF59saLOKnt3OQM+hXapnWaAHcrat3dygd6l34KjxwM5AMJp09TDa8yw==";
       };
     };
     "yn-3.1.1" = {
@@ -64088,13 +64511,13 @@ let
         sha512 = "Yj3yXweRc8LdRMrCC8nIc4kkjWecPAUVh0TI0OUrWXx6aX790vLcDlWca6I4vsyCGH3LpWxq0dJRcMOFoVqmeg==";
       };
     };
-    "zeromq-5.2.7" = {
+    "zeromq-5.2.8" = {
       name = "zeromq";
       packageName = "zeromq";
-      version = "5.2.7";
+      version = "5.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/zeromq/-/zeromq-5.2.7.tgz";
-        sha512 = "z0R3qtmy4SFgYa/oDjxWFAAGjQb0IU1sJ0XVLflp3W72f2ALXHJzKPgcyCdgMQZTnvSULpZP2HbIYdemLtbBiQ==";
+        url = "https://registry.npmjs.org/zeromq/-/zeromq-5.2.8.tgz";
+        sha512 = "bXzsk7KOmgLSv1tC0Ms1VXBy90+Rz27ZYf27cLuldRYbpqYpuWJfxxHFhO710t22zgWBnmdUP0m3SKFpLI0u5g==";
       };
     };
     "zerr-1.0.4" = {
@@ -64124,15 +64547,6 @@ let
         sha512 = "EkXc2JGcKhO5N5aZ7TmuNo45budRaFGHOmz24wtJR7znbNqDPmdZtUauKX6et8KAVseAMBOyWJqEpXcHTBsh7Q==";
       };
     };
-    "zip-stream-3.0.1" = {
-      name = "zip-stream";
-      packageName = "zip-stream";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/zip-stream/-/zip-stream-3.0.1.tgz";
-        sha512 = "r+JdDipt93ttDjsOVPU5zaq5bAyY+3H19bDrThkvuVxC0xMQzU1PJcS6D+KrP3u96gH9XLomcHPb+2skoDjulQ==";
-      };
-    };
     "zip-stream-4.1.0" = {
       name = "zip-stream";
       packageName = "zip-stream";
@@ -64175,43 +64589,30 @@ in
   "@angular/cli" = nodeEnv.buildNodePackage {
     name = "_at_angular_slash_cli";
     packageName = "@angular/cli";
-    version = "11.2.9";
+    version = "12.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@angular/cli/-/cli-11.2.9.tgz";
-      sha512 = "jSX8HFRYSbbamKLhzgPZ2zEsXDtJzspwnzFROJfOpe9fQkMFo8wiOkmY2amyaNzAMyooHXerRcRDWkRTyQj3Jg==";
+      url = "https://registry.npmjs.org/@angular/cli/-/cli-12.0.2.tgz";
+      sha512 = "hXxnOxPl6+v/O+OnkJxPPupCeQJNmI08EdtnER5z/UCSpmlJibbTAqLF9rFaOi/7dPLS0RCNWmCRA6grgTlP9g==";
     };
     dependencies = [
-      sources."@angular-devkit/architect-0.1102.9"
-      sources."@angular-devkit/core-11.2.9"
-      sources."@angular-devkit/schematics-11.2.9"
-      sources."@npmcli/ci-detect-1.3.0"
-      (sources."@npmcli/git-2.0.8" // {
-        dependencies = [
-          sources."hosted-git-info-4.0.2"
-          sources."npm-package-arg-8.1.2"
-          sources."npm-pick-manifest-6.1.1"
-          sources."promise-retry-2.0.1"
-          sources."semver-7.3.5"
-        ];
-      })
+      sources."@angular-devkit/architect-0.1200.2"
+      sources."@angular-devkit/core-12.0.2"
+      sources."@angular-devkit/schematics-12.0.2"
+      sources."@npmcli/git-2.0.9"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
-      (sources."@npmcli/run-script-1.8.4" // {
-        dependencies = [
-          sources."read-package-json-fast-2.0.2"
-        ];
-      })
-      sources."@schematics/angular-11.2.9"
-      sources."@schematics/update-0.1102.9"
+      sources."@npmcli/run-script-1.8.5"
+      sources."@schematics/angular-12.0.2"
       sources."@tootallnate/once-1.1.2"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
       sources."agent-base-6.0.2"
       sources."agentkeepalive-4.1.4"
       sources."aggregate-error-3.1.0"
-      sources."ajv-6.12.6"
+      sources."ajv-8.2.0"
+      sources."ajv-formats-2.0.2"
       sources."ansi-colors-4.1.1"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.0"
@@ -64236,9 +64637,9 @@ in
       sources."brace-expansion-1.1.11"
       sources."buffer-5.7.1"
       sources."builtins-1.0.3"
-      sources."cacache-15.0.6"
+      sources."cacache-15.2.0"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."chownr-2.0.0"
       sources."clean-stack-2.2.0"
@@ -64256,6 +64657,7 @@ in
       sources."dashdash-1.14.1"
       sources."debug-4.3.1"
       sources."defaults-1.0.3"
+      sources."define-lazy-prop-2.0.0"
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."depd-1.1.2"
@@ -64263,7 +64665,7 @@ in
       sources."emoji-regex-8.0.0"
       (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."env-paths-2.2.1"
@@ -64289,14 +64691,19 @@ in
         ];
       })
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
+      (sources."har-validator-5.1.5" // {
+        dependencies = [
+          sources."ajv-6.12.6"
+          sources."json-schema-traverse-0.4.1"
+        ];
+      })
       sources."has-1.0.3"
       sources."has-flag-4.0.0"
       sources."has-unicode-2.0.1"
-      sources."hosted-git-info-3.0.8"
+      sources."hosted-git-info-4.0.2"
       sources."http-cache-semantics-4.1.0"
       sources."http-proxy-agent-4.0.1"
       sources."http-signature-1.2.0"
@@ -64304,16 +64711,16 @@ in
       sources."humanize-ms-1.2.1"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
       sources."infer-owner-1.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      sources."inquirer-7.3.3"
+      sources."inquirer-8.0.0"
       sources."ip-1.1.5"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-interactive-1.0.0"
@@ -64327,7 +64734,7 @@ in
       sources."jsbn-0.1.1"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
+      sources."json-schema-traverse-1.0.0"
       sources."json-stringify-safe-5.0.1"
       sources."jsonc-parser-3.0.0"
       sources."jsonparse-1.3.1"
@@ -64336,11 +64743,7 @@ in
       sources."log-symbols-4.1.0"
       sources."lru-cache-6.0.0"
       sources."magic-string-0.25.7"
-      (sources."make-fetch-happen-8.0.14" // {
-        dependencies = [
-          sources."promise-retry-2.0.1"
-        ];
-      })
+      sources."make-fetch-happen-8.0.14"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."mimic-fn-2.1.0"
@@ -64358,59 +64761,50 @@ in
       sources."mute-stream-0.0.8"
       sources."node-gyp-7.1.2"
       sources."nopt-5.0.0"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       sources."npm-normalize-package-bin-1.0.1"
-      sources."npm-package-arg-8.1.0"
-      sources."npm-packlist-2.1.5"
-      sources."npm-pick-manifest-6.1.0"
-      sources."npm-registry-fetch-9.0.0"
+      sources."npm-package-arg-8.1.2"
+      sources."npm-packlist-2.2.2"
+      sources."npm-pick-manifest-6.1.1"
+      sources."npm-registry-fetch-10.1.2"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."open-7.4.0"
-      sources."ora-5.3.0"
+      sources."open-8.0.2"
+      sources."ora-5.4.0"
       sources."os-tmpdir-1.0.2"
       sources."p-map-4.0.0"
-      sources."pacote-11.2.4"
+      sources."pacote-11.3.2"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
       sources."promise-inflight-1.0.1"
-      (sources."promise-retry-1.1.1" // {
-        dependencies = [
-          sources."err-code-1.1.2"
-          sources."retry-0.10.1"
-        ];
-      })
+      sources."promise-retry-2.0.1"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      sources."read-package-json-fast-1.2.2"
+      sources."read-package-json-fast-2.0.2"
       sources."readable-stream-3.6.0"
       (sources."request-2.88.2" // {
         dependencies = [
           sources."uuid-3.4.0"
         ];
       })
-      sources."resolve-1.19.0"
+      sources."require-from-string-2.0.2"
+      sources."resolve-1.20.0"
       sources."restore-cursor-3.1.0"
       sources."retry-0.12.0"
       sources."rimraf-3.0.2"
       sources."run-async-2.4.1"
-      sources."rxjs-6.6.3"
+      sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.4"
-      (sources."semver-intersect-1.4.0" // {
-        dependencies = [
-          sources."semver-5.7.1"
-        ];
-      })
+      sources."semver-7.3.5"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.3"
       sources."smart-buffer-4.1.0"
@@ -64424,7 +64818,7 @@ in
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.0"
       sources."supports-color-7.2.0"
-      sources."symbol-observable-3.0.0"
+      sources."symbol-observable-4.0.0"
       sources."tar-6.1.0"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
@@ -64435,11 +64829,6 @@ in
       sources."type-fest-0.21.3"
       sources."unique-filename-1.1.1"
       sources."unique-slug-2.0.2"
-      (sources."universal-analytics-0.4.23" // {
-        dependencies = [
-          sources."uuid-3.4.0"
-        ];
-      })
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."uuid-8.3.2"
@@ -64532,7 +64921,7 @@ in
       sources."append-buffer-1.0.2"
       sources."argparse-1.0.10"
       sources."asciidoctor.js-1.5.9"
-      sources."async-lock-1.2.8"
+      sources."async-lock-1.3.0"
       sources."balanced-match-1.0.2"
       sources."base64-js-0.0.2"
       sources."bl-4.0.4"
@@ -64631,7 +65020,7 @@ in
       sources."glob-parent-3.1.0"
       (sources."glob-stream-6.1.0" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."readable-stream-2.3.7"
           sources."safe-buffer-5.1.2"
           sources."string_decoder-1.1.1"
@@ -64692,7 +65081,7 @@ in
       sources."lodash.clonedeep-4.5.0"
       sources."lowercase-keys-1.0.1"
       sources."map-obj-4.2.1"
-      sources."marky-1.2.1"
+      sources."marky-1.2.2"
       sources."matcher-2.1.0"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
@@ -64704,7 +65093,7 @@ in
       sources."multi-progress-2.0.0"
       sources."neo-async-2.6.2"
       sources."normalize-path-2.1.1"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."now-and-later-2.0.1"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
@@ -64784,7 +65173,7 @@ in
         ];
       })
       sources."to-utf8-0.0.1"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."unc-path-regex-0.1.2"
       sources."unique-stream-2.3.1"
       sources."universalify-0.1.2"
@@ -64824,10 +65213,10 @@ in
   "@bitwarden/cli" = nodeEnv.buildNodePackage {
     name = "_at_bitwarden_slash_cli";
     packageName = "@bitwarden/cli";
-    version = "1.15.1";
+    version = "1.16.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.15.1.tgz";
-      sha512 = "kD+EkbSqFRtkwV/PXbgaCvrSOqVRTRaFhfT4XNoYbggWhMVwB6ebvdHvHe5I7pRKE8/xgP7WiIM/b0HP81bbHg==";
+      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.16.0.tgz";
+      sha512 = "HWQnOa3TzRJcF/TVKGWqzFP9PVaG6IhCBzFVY2tZ5mITNAf1nb2aC+gzH2EMa1m41IV6knPuXpqnsVGJGqQuxg==";
     };
     dependencies = [
       sources."abab-2.0.5"
@@ -64847,7 +65236,7 @@ in
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."big-integer-1.6.36"
+      sources."big-integer-1.6.48"
       sources."browser-hrtime-1.1.8"
       sources."browser-process-hrtime-1.0.0"
       sources."caseless-0.12.0"
@@ -64915,15 +65304,15 @@ in
       sources."mimic-fn-1.2.0"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.7"
-      sources."node-fetch-2.2.0"
-      sources."node-forge-0.7.6"
+      sources."node-fetch-2.6.1"
+      sources."node-forge-0.10.0"
       sources."nwsapi-2.2.0"
       sources."oauth-sign-0.9.0"
       sources."onetime-2.0.1"
       sources."open-7.1.0"
       sources."optionator-0.8.3"
       sources."os-tmpdir-1.0.2"
-      sources."papaparse-4.6.0"
+      sources."papaparse-5.2.0"
       sources."parse5-5.1.0"
       sources."performance-now-2.1.0"
       sources."pify-3.0.0"
@@ -64982,7 +65371,7 @@ in
     meta = {
       description = "A secure and free password manager for all of your devices.";
       homepage = "https://bitwarden.com";
-      license = "GPL-3.0";
+      license = "GPL-3.0-only";
     };
     production = true;
     bypassCache = true;
@@ -65000,14 +65389,14 @@ in
       sources."@angular-devkit/core-11.2.6"
       (sources."@angular-devkit/schematics-11.2.6" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."ora-5.3.0"
         ];
       })
       sources."@angular-devkit/schematics-cli-0.1102.6"
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -65021,17 +65410,17 @@ in
         dependencies = [
           sources."@angular-devkit/core-11.2.4"
           sources."@angular-devkit/schematics-11.2.4"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."ora-5.3.0"
         ];
       })
       sources."@schematics/schematics-0.1102.6"
-      sources."@types/eslint-7.2.10"
+      sources."@types/eslint-7.2.12"
       sources."@types/eslint-scope-3.7.0"
       sources."@types/estree-0.0.46"
       sources."@types/json-schema-7.0.7"
       sources."@types/json5-0.0.29"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/parse-json-4.0.0"
       sources."@webassemblyjs/ast-1.11.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
@@ -65050,7 +65439,7 @@ in
       sources."@webassemblyjs/wast-printer-1.11.0"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
-      sources."acorn-8.1.1"
+      sources."acorn-8.3.0"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
       sources."ansi-colors-4.1.1"
@@ -65065,11 +65454,11 @@ in
       sources."bl-4.1.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.1"
       sources."callsites-3.1.0"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."chalk-3.0.0"
       sources."chardet-0.7.0"
       sources."chokidar-3.5.1"
@@ -65089,10 +65478,10 @@ in
       sources."cross-spawn-7.0.3"
       sources."deepmerge-4.2.2"
       sources."defaults-1.0.3"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
-      (sources."enhanced-resolve-5.7.0" // {
+      (sources."enhanced-resolve-5.8.2" // {
         dependencies = [
           sources."tapable-2.2.0"
         ];
@@ -65117,7 +65506,7 @@ in
       sources."fill-range-7.0.1"
       (sources."fork-ts-checker-webpack-plugin-6.2.0" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
         ];
       })
       sources."fs-extra-9.1.0"
@@ -65126,7 +65515,7 @@ in
       sources."fsevents-2.3.2"
       sources."function-bind-1.1.1"
       sources."get-stream-5.2.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.4.1"
       sources."graceful-fs-4.2.6"
@@ -65140,7 +65529,7 @@ in
       sources."inherits-2.0.4"
       (sources."inquirer-7.3.3" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."is-fullwidth-code-point-3.0.0"
           sources."string-width-4.2.2"
         ];
@@ -65148,7 +65537,7 @@ in
       sources."interpret-1.4.0"
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-glob-4.0.1"
@@ -65157,7 +65546,11 @@ in
       sources."is-stream-2.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."isexe-2.0.0"
-      sources."jest-worker-26.6.2"
+      (sources."jest-worker-27.0.2" // {
+        dependencies = [
+          sources."supports-color-8.1.1"
+        ];
+      })
       sources."js-tokens-4.0.0"
       sources."json-parse-better-errors-1.0.2"
       sources."json-parse-even-better-errors-2.3.1"
@@ -65171,7 +65564,7 @@ in
       sources."lodash.toarray-4.4.0"
       (sources."log-symbols-4.1.0" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
         ];
       })
       sources."lru-cache-6.0.0"
@@ -65187,7 +65580,7 @@ in
       sources."mute-stream-0.0.8"
       sources."neo-async-2.6.2"
       sources."node-emoji-1.10.0"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."normalize-path-3.0.0"
       sources."npm-run-path-4.0.1"
       sources."object-assign-4.1.1"
@@ -65195,7 +65588,7 @@ in
       sources."onetime-5.1.2"
       (sources."ora-5.4.0" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
         ];
       })
       sources."os-name-4.0.0"
@@ -65205,9 +65598,9 @@ in
       sources."parse-json-5.2.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pluralize-8.0.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -65251,12 +65644,12 @@ in
       sources."supports-color-7.2.0"
       sources."symbol-observable-3.0.0"
       sources."tapable-1.1.3"
-      (sources."terser-5.6.1" // {
+      (sources."terser-5.7.0" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
       })
-      (sources."terser-webpack-plugin-5.1.1" // {
+      (sources."terser-webpack-plugin-5.1.3" // {
         dependencies = [
           sources."schema-utils-3.0.0"
           sources."source-map-0.6.1"
@@ -65269,7 +65662,7 @@ in
       sources."tsconfig-paths-3.9.0"
       (sources."tsconfig-paths-webpack-plugin-3.5.1" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
         ];
       })
       sources."tslib-1.14.1"
@@ -65278,7 +65671,7 @@ in
       sources."universalify-2.0.0"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
-      sources."watchpack-2.1.1"
+      sources."watchpack-2.2.0"
       sources."wcwidth-1.0.1"
       (sources."webpack-5.28.0" // {
         dependencies = [
@@ -65287,7 +65680,7 @@ in
         ];
       })
       sources."webpack-node-externals-2.5.2"
-      (sources."webpack-sources-2.2.0" // {
+      (sources."webpack-sources-2.3.0" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -65312,67 +65705,70 @@ in
   "@vue/cli" = nodeEnv.buildNodePackage {
     name = "_at_vue_slash_cli";
     packageName = "@vue/cli";
-    version = "4.5.12";
+    version = "4.5.13";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@vue/cli/-/cli-4.5.12.tgz";
-      sha512 = "ZP0bxmM+VpmH8xT/5DbH8UD5nnlXLxJNYLiMcndx0pmuujabUORZdhIO3B9pq1w1Y204p2CJq3srrEUwhKKY5g==";
+      url = "https://registry.npmjs.org/@vue/cli/-/cli-4.5.13.tgz";
+      sha512 = "KAU300YbT0/7zG472KzJgHKdFex4nr5Xoo80gQJwT+y7pkepMhTxjrmxrJ/XR8QirUvPnBiX5n6BX5FrlMuUGQ==";
     };
     dependencies = [
       sources."@akryum/winattr-3.0.0"
-      (sources."@apollo/protobufjs-1.0.5" // {
+      (sources."@apollo/protobufjs-1.2.2" // {
         dependencies = [
-          sources."@types/node-10.17.58"
+          sources."@types/node-10.17.60"
         ];
       })
-      sources."@apollographql/apollo-tools-0.4.9"
+      sources."@apollographql/apollo-tools-0.5.1"
       sources."@apollographql/graphql-playground-html-1.6.27"
       sources."@apollographql/graphql-upload-8-fork-8.1.3"
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      sources."@babel/core-7.13.15"
-      sources."@babel/generator-7.13.9"
+      sources."@babel/compat-data-7.14.4"
+      sources."@babel/core-7.14.3"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      sources."@babel/helper-compilation-targets-7.13.13"
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      sources."@babel/helper-define-polyfill-provider-0.2.0"
+      sources."@babel/helper-compilation-targets-7.14.4"
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      sources."@babel/helper-define-polyfill-provider-0.2.3"
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/helpers-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.13.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-class-static-block-7.14.3"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
       sources."@babel/plugin-syntax-flow-7.12.13"
@@ -65383,15 +65779,16 @@ in
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.0"
       sources."@babel/plugin-syntax-top-level-await-7.12.13"
       sources."@babel/plugin-syntax-typescript-7.12.13"
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -65400,14 +65797,14 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
@@ -65416,30 +65813,30 @@ in
       sources."@babel/plugin-transform-sticky-regex-7.12.13"
       sources."@babel/plugin-transform-template-literals-7.13.0"
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
-      sources."@babel/plugin-transform-typescript-7.13.0"
+      sources."@babel/plugin-transform-typescript-7.14.4"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
-      sources."@babel/preset-env-7.13.15"
+      sources."@babel/preset-env-7.14.4"
       sources."@babel/preset-flow-7.13.13"
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-typescript-7.13.0"
-      (sources."@babel/register-7.13.14" // {
+      (sources."@babel/register-7.13.16" // {
         dependencies = [
           sources."make-dir-2.1.0"
           sources."pify-4.0.1"
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@hapi/address-2.1.4"
       sources."@hapi/bourne-1.3.2"
       sources."@hapi/hoek-8.5.1"
       sources."@hapi/joi-15.1.1"
       sources."@hapi/topo-3.1.6"
-      sources."@josephg/resolvable-1.0.0"
+      sources."@josephg/resolvable-1.0.1"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       (sources."@nodelib/fs.scandir-2.1.4" // {
         dependencies = [
@@ -65481,31 +65878,26 @@ in
         ];
       })
       sources."@types/keygrip-1.0.2"
-      sources."@types/koa-2.13.1"
+      sources."@types/koa-2.13.3"
       sources."@types/koa-compose-3.2.5"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
-      (sources."@types/node-fetch-2.5.7" // {
-        dependencies = [
-          sources."form-data-3.0.1"
-        ];
-      })
+      sources."@types/node-15.6.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/qs-6.9.6"
       sources."@types/range-parser-1.2.3"
       sources."@types/serve-static-1.13.9"
       sources."@types/through-0.0.30"
-      sources."@types/ws-7.4.1"
-      sources."@vue/cli-shared-utils-4.5.12"
-      (sources."@vue/cli-ui-4.5.12" // {
+      sources."@types/ws-7.4.4"
+      sources."@vue/cli-shared-utils-4.5.13"
+      (sources."@vue/cli-ui-4.5.13" // {
         dependencies = [
           sources."clone-2.1.2"
         ];
       })
-      sources."@vue/cli-ui-addon-webpack-4.5.12"
-      sources."@vue/cli-ui-addon-widgets-4.5.12"
+      sources."@vue/cli-ui-addon-webpack-4.5.13"
+      sources."@vue/cli-ui-addon-widgets-4.5.13"
       (sources."@vue/compiler-core-3.0.11" // {
         dependencies = [
           sources."source-map-0.6.1"
@@ -65530,29 +65922,28 @@ in
       })
       sources."ansi-regex-4.1.0"
       sources."ansi-styles-3.2.1"
-      sources."apollo-cache-control-0.12.0"
-      sources."apollo-datasource-0.8.0"
-      sources."apollo-env-0.6.6"
-      sources."apollo-graphql-0.6.1"
+      sources."apollo-cache-control-0.14.0"
+      sources."apollo-datasource-0.9.0"
+      sources."apollo-graphql-0.9.3"
       sources."apollo-link-1.2.14"
-      sources."apollo-reporting-protobuf-0.6.2"
-      (sources."apollo-server-caching-0.6.0" // {
+      sources."apollo-reporting-protobuf-0.8.0"
+      (sources."apollo-server-caching-0.7.0" // {
         dependencies = [
           sources."lru-cache-6.0.0"
         ];
       })
-      (sources."apollo-server-core-2.23.0" // {
+      (sources."apollo-server-core-2.25.0" // {
         dependencies = [
           sources."lru-cache-6.0.0"
           sources."uuid-8.3.2"
         ];
       })
-      sources."apollo-server-env-3.0.0"
+      sources."apollo-server-env-3.1.0"
       sources."apollo-server-errors-2.5.0"
-      sources."apollo-server-express-2.23.0"
-      sources."apollo-server-plugin-base-0.11.0"
-      sources."apollo-server-types-0.7.0"
-      sources."apollo-tracing-0.13.0"
+      sources."apollo-server-express-2.25.0"
+      sources."apollo-server-plugin-base-0.13.0"
+      sources."apollo-server-types-0.9.0"
+      sources."apollo-tracing-0.15.0"
       sources."apollo-utilities-1.3.4"
       (sources."archive-type-4.0.0" // {
         dependencies = [
@@ -65581,9 +65972,9 @@ in
       sources."aws4-1.11.0"
       sources."babel-core-7.0.0-bridge.0"
       sources."babel-plugin-dynamic-import-node-2.3.3"
-      sources."babel-plugin-polyfill-corejs2-0.2.0"
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs2-0.2.2"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       sources."backo2-1.0.2"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
@@ -65616,7 +66007,7 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."braces-2.3.2"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -65636,7 +66027,7 @@ in
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."caseless-0.12.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
@@ -65666,6 +66057,7 @@ in
       sources."clipboard-2.0.8"
       sources."cliui-7.0.4"
       sources."clone-1.0.4"
+      sources."clone-deep-4.0.1"
       sources."clone-response-1.0.2"
       sources."cmd-shim-3.0.3"
       sources."collection-visit-1.0.0"
@@ -65693,12 +66085,12 @@ in
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-3.10.1"
-      (sources."core-js-compat-3.10.1" // {
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
       })
+      sources."core-js-pure-3.13.1"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
       (sources."cross-spawn-6.0.5" // {
@@ -65765,14 +66157,14 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
       sources."entities-2.2.0"
       sources."envinfo-7.8.1"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
@@ -65848,12 +66240,12 @@ in
       })
       sources."find-up-3.0.0"
       sources."fkill-6.2.0"
-      sources."flow-parser-0.149.0"
+      sources."flow-parser-0.152.0"
       sources."for-each-0.3.3"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."from2-2.3.0"
@@ -65875,7 +66267,7 @@ in
       sources."getpass-0.1.7"
       sources."git-clone-0.1.0"
       sources."git-config-path-1.0.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -65899,9 +66291,9 @@ in
       })
       sources."graceful-fs-4.2.6"
       sources."graphql-14.7.0"
-      sources."graphql-extensions-0.13.0"
+      sources."graphql-extensions-0.15.0"
       sources."graphql-subscriptions-1.2.1"
-      (sources."graphql-tag-2.12.3" // {
+      (sources."graphql-tag-2.12.4" // {
         dependencies = [
           sources."tslib-2.2.0"
         ];
@@ -65941,7 +66333,7 @@ in
       (sources."inquirer-7.3.3" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."cli-cursor-3.1.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
@@ -65956,13 +66348,13 @@ in
       sources."ipaddr.js-1.9.1"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
       sources."is-docker-2.2.1"
       sources."is-extendable-0.1.1"
@@ -65976,22 +66368,22 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-object-1.0.2"
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
       sources."is-promise-2.2.2"
       sources."is-property-1.0.2"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typedarray-1.0.0"
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
       sources."isarray-1.0.0"
-      sources."isbinaryfile-4.0.6"
+      sources."isbinaryfile-4.0.8"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
@@ -66100,7 +66492,7 @@ in
           sources."which-2.0.2"
         ];
       })
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       (sources."normalize-package-data-2.5.0" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -66128,7 +66520,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object-path-0.11.5"
       sources."object-visit-1.0.1"
@@ -66162,12 +66554,12 @@ in
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-3.0.0"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       (sources."pid-from-port-1.1.3" // {
         dependencies = [
           sources."cross-spawn-5.1.0"
@@ -66195,7 +66587,7 @@ in
       sources."process-exists-3.1.0"
       sources."process-nextick-args-2.0.1"
       sources."proto-list-1.2.4"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."ps-list-4.1.0"
       sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
@@ -66280,6 +66672,7 @@ in
       sources."set-value-2.0.1"
       sources."setprototypeof-1.2.0"
       sources."sha.js-2.4.11"
+      sources."shallow-clone-3.0.1"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."shell-quote-1.7.2"
@@ -66328,7 +66721,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       (sources."split-string-3.1.0" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
@@ -66514,7 +66907,7 @@ in
       sources."ws-6.2.1"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
-      sources."xss-1.0.8"
+      sources."xss-1.0.9"
       sources."xtend-4.0.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
@@ -66664,12 +67057,12 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/generator-7.13.9"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/generator-7.14.3"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
       sources."@babel/template-7.12.13"
-      sources."@babel/types-7.13.14"
+      sources."@babel/types-7.14.4"
       sources."@webassemblyjs/ast-1.11.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
       sources."@webassemblyjs/helper-api-error-1.11.0"
@@ -66690,7 +67083,6 @@ in
       sources."has-flag-3.0.0"
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
-      sources."lodash-4.17.21"
       sources."source-map-0.5.7"
       sources."supports-color-5.5.0"
       sources."to-fast-properties-2.0.0"
@@ -66745,43 +67137,43 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.13.9" // {
+      (sources."@babel/generator-7.14.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      sources."@babel/helper-compilation-targets-7.13.13"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-compilation-targets-7.14.4"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/helpers-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."JSV-4.0.2"
       sources."ansi-styles-3.2.1"
       sources."array-unique-0.3.2"
       sources."async-3.2.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.16.4"
-      sources."caniuse-lite-1.0.30001209"
+      sources."browserslist-4.16.6"
+      sources."caniuse-lite-1.0.30001232"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -66792,7 +67184,7 @@ in
       sources."convert-source-map-1.7.0"
       sources."debug-4.3.2"
       sources."ejs-3.1.6"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."ensure-posix-path-1.1.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
@@ -66819,7 +67211,7 @@ in
       sources."homedir-polyfill-1.0.3"
       sources."ini-1.3.8"
       sources."is-3.3.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-windows-1.0.2"
       sources."isexe-2.0.0"
       (sources."jake-10.8.2" // {
@@ -66838,7 +67230,7 @@ in
       sources."minimist-1.2.5"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."node.extend-2.0.2"
       (sources."nomnom-1.8.1" // {
         dependencies = [
@@ -66847,7 +67239,7 @@ in
         ];
       })
       sources."parse-passwd-1.0.0"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pkginfo-0.4.1"
       sources."resolve-1.20.0"
       sources."safe-buffer-5.1.2"
@@ -66886,14 +67278,14 @@ in
     dependencies = [
       sources."@types/glob-7.1.3"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."chromium-pickle-js-0.2.0"
       sources."commander-5.1.0"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."minimatch-3.0.4"
@@ -66921,7 +67313,7 @@ in
     };
     dependencies = [
       sources."@tootallnate/once-1.1.2"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/yauzl-2.9.1"
       sources."agent-base-6.0.2"
       sources."ansi-escapes-4.3.2"
@@ -66932,7 +67324,7 @@ in
           sources."tslib-2.2.0"
         ];
       })
-      (sources."aws-sdk-2.888.0" // {
+      (sources."aws-sdk-2.918.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -66952,7 +67344,7 @@ in
       sources."buffer-4.9.2"
       sources."buffer-crc32-0.2.13"
       sources."bytes-3.1.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."cheerio-1.0.0-rc.5"
       sources."cheerio-select-tmp-0.1.1"
@@ -66998,7 +67390,7 @@ in
       sources."ftp-0.3.10"
       sources."get-stream-5.2.0"
       sources."get-uri-3.0.2"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-flag-4.0.0"
       sources."htmlparser2-6.1.0"
@@ -67101,7 +67493,7 @@ in
       sources."uuid-8.3.2"
       sources."word-wrap-1.2.3"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
       sources."xregexp-2.0.0"
@@ -67121,10 +67513,10 @@ in
   balanceofsatoshis = nodeEnv.buildNodePackage {
     name = "balanceofsatoshis";
     packageName = "balanceofsatoshis";
-    version = "8.0.6";
+    version = "8.0.14";
     src = fetchurl {
-      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-8.0.6.tgz";
-      sha512 = "sl/gbf3fqpdnbzeBxlxN8epCQfYbTTMAj0Pix721LC0OGmLq0ePeXJIPvLrObYTU2AB57p0jV6NEWWf9eVKkcQ==";
+      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-8.0.14.tgz";
+      sha512 = "z9/oACcuCHyWSg2c5J1G/HNcTAknUc4YS2SIqsbjw27YmAL2x6T9Uo1OSSemWnOqGtlHfS6xf7X3DJNsfIYPfQ==";
     };
     dependencies = [
       sources."@alexbosworth/html2unicode-1.1.5"
@@ -67137,10 +67529,10 @@ in
       sources."@cto.af/textdecoder-0.0.0"
       (sources."@grpc/grpc-js-1.2.12" // {
         dependencies = [
-          sources."@types/node-14.14.41"
+          sources."@types/node-15.6.1"
         ];
       })
-      sources."@grpc/proto-loader-0.5.6"
+      sources."@grpc/proto-loader-0.6.1"
       sources."@handsontable/formulajs-2.0.2"
       sources."@mitmaro/errors-1.0.0"
       sources."@mitmaro/http-authorization-header-1.0.0"
@@ -67160,7 +67552,7 @@ in
       sources."@types/caseless-0.12.2"
       sources."@types/connect-3.4.34"
       sources."@types/express-4.17.11"
-      sources."@types/express-serve-static-core-4.17.19"
+      sources."@types/express-serve-static-core-4.17.20"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
       sources."@types/node-10.12.18"
@@ -67173,7 +67565,7 @@ in
       })
       sources."@types/serve-static-1.13.9"
       sources."@types/tough-cookie-4.0.0"
-      sources."@types/ws-7.4.0"
+      sources."@types/ws-7.4.1"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.7"
       (sources."agent-base-6.0.2" // {
@@ -67250,12 +67642,12 @@ in
           sources."bn.js-5.2.0"
         ];
       })
-      sources."bolt09-0.1.3"
+      sources."bolt09-0.1.4"
       (sources."boxen-5.0.1" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."is-fullwidth-code-point-3.0.0"
           sources."string-width-4.2.2"
           sources."strip-ansi-6.0.0"
@@ -67278,7 +67670,6 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."call-bind-1.0.2"
       sources."camelcase-6.2.0"
       sources."caporal-1.4.0"
       sources."caseless-0.12.0"
@@ -67335,7 +67726,7 @@ in
       sources."create-hmac-1.1.7"
       sources."crypto-js-4.0.0"
       sources."crypto-random-string-2.0.0"
-      sources."csv-parse-4.15.3"
+      sources."csv-parse-4.15.4"
       sources."cycle-1.0.3"
       sources."dashdash-1.14.1"
       sources."debug-2.6.9"
@@ -67382,25 +67773,21 @@ in
       sources."finalhandler-1.1.2"
       sources."forever-agent-0.6.1"
       sources."form-data-3.0.0"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
-      sources."function-bind-1.1.1"
       sources."gauge-1.2.7"
-      sources."gaxios-4.2.0"
+      sources."gaxios-4.3.0"
       sources."gcp-metadata-4.2.1"
       sources."get-caller-file-2.0.5"
-      sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
       sources."global-dirs-3.0.0"
-      (sources."goldengate-10.0.3" // {
+      (sources."goldengate-10.0.4" // {
         dependencies = [
-          sources."asyncjs-util-1.2.4"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
-          sources."bolt07-1.7.1"
-          sources."invoices-1.1.6"
-          sources."ln-service-51.5.0"
+          sources."invoices-1.1.7"
+          sources."ln-service-51.7.0"
         ];
       })
       sources."google-auth-library-6.1.6"
@@ -67410,14 +67797,12 @@ in
       sources."gtoken-5.2.1"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
-      sources."has-1.0.3"
       (sources."has-ansi-2.0.0" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
         ];
       })
       sources."has-flag-4.0.0"
-      sources."has-symbols-1.0.2"
       sources."has-unicode-2.0.1"
       sources."has-yarn-2.1.0"
       sources."hash-base-3.1.0"
@@ -67447,7 +67832,7 @@ in
           sources."ansi-escapes-4.3.2"
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."cli-cursor-3.1.0"
           sources."cli-width-3.0.0"
           sources."external-editor-3.1.0"
@@ -67462,17 +67847,15 @@ in
           sources."tmp-0.0.33"
         ];
       })
-      (sources."invoices-1.1.7" // {
+      (sources."invoices-1.2.0" // {
         dependencies = [
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
-          sources."bolt09-0.1.4"
         ];
       })
       sources."ip-regex-2.1.0"
       sources."ipaddr.js-1.9.1"
       sources."is-accessor-descriptor-1.0.0"
-      sources."is-boolean-object-1.1.0"
       sources."is-buffer-1.1.6"
       sources."is-ci-2.0.0"
       sources."is-data-descriptor-1.0.0"
@@ -67485,11 +67868,9 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."is-number-object-1.0.4"
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
       sources."is-stream-2.0.0"
-      sources."is-string-1.0.5"
       sources."is-typedarray-1.0.0"
       sources."is-yarn-global-0.3.0"
       sources."isarray-1.0.0"
@@ -67510,62 +67891,92 @@ in
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
       sources."latest-version-5.1.0"
-      (sources."lightning-3.3.1" // {
+      (sources."lightning-3.3.4" // {
         dependencies = [
-          sources."@grpc/grpc-js-1.2.11"
-          sources."@types/node-14.14.35"
-          sources."asyncjs-util-1.2.3"
+          sources."@grpc/proto-loader-0.6.0"
+          sources."@types/node-14.14.37"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
-          sources."bolt07-1.7.1"
-          sources."cbor-7.0.4"
-          sources."invoices-1.1.6"
-          sources."psbt-1.1.8"
+          sources."invoices-1.1.7"
         ];
       })
       (sources."ln-accounting-4.2.7" // {
         dependencies = [
+          sources."@grpc/grpc-js-1.2.11"
+          sources."@grpc/proto-loader-0.5.6"
+          sources."@types/node-14.14.35"
+          sources."@types/ws-7.4.0"
           sources."asyncjs-util-1.2.4"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
           sources."bolt07-1.7.1"
+          sources."bolt09-0.1.3"
+          sources."cbor-7.0.4"
+          sources."goldengate-10.0.3"
           sources."invoices-1.1.6"
+          (sources."lightning-3.3.1" // {
+            dependencies = [
+              sources."asyncjs-util-1.2.3"
+            ];
+          })
           sources."ln-service-51.5.0"
+          sources."psbt-1.1.8"
         ];
       })
-      (sources."ln-service-51.7.0" // {
+      (sources."ln-service-51.8.1" // {
         dependencies = [
-          sources."@grpc/proto-loader-0.6.0"
-          sources."@types/node-14.14.37"
-          sources."@types/ws-7.4.1"
+          sources."@grpc/grpc-js-1.3.1"
+          sources."@grpc/proto-loader-0.6.2"
+          sources."@types/node-15.0.3"
+          sources."@types/ws-7.4.4"
           sources."bn.js-5.2.0"
-          sources."bolt09-0.1.4"
-          sources."lightning-3.3.4"
+          sources."lightning-3.3.7"
+          sources."ws-7.4.5"
         ];
       })
       (sources."ln-sync-0.4.5" // {
         dependencies = [
+          sources."@grpc/grpc-js-1.2.11"
+          sources."@grpc/proto-loader-0.5.6"
+          sources."@types/node-14.14.35"
+          sources."@types/ws-7.4.0"
           sources."asyncjs-util-1.2.4"
+          sources."bech32-2.0.0"
+          sources."bn.js-5.2.0"
+          sources."bolt07-1.7.1"
+          sources."bolt09-0.1.3"
+          sources."invoices-1.1.6"
+          (sources."lightning-3.3.1" // {
+            dependencies = [
+              sources."asyncjs-util-1.2.3"
+              sources."cbor-7.0.4"
+            ];
+          })
+          sources."psbt-1.1.8"
         ];
       })
-      (sources."ln-telegram-3.2.2" // {
+      (sources."ln-telegram-3.2.3" // {
         dependencies = [
-          sources."asyncjs-util-1.2.4"
+          sources."ajv-8.5.0"
+          sources."ansi-regex-5.0.0"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
-          sources."bolt07-1.7.1"
-          (sources."ln-service-51.5.0" // {
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."json-schema-traverse-1.0.0"
+          (sources."ln-service-51.7.0" // {
             dependencies = [
-              sources."invoices-1.1.6"
+              sources."invoices-1.1.7"
             ];
           })
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+          sources."table-6.7.0"
         ];
       })
       sources."lodash-4.17.21"
       sources."lodash.camelcase-4.3.0"
       sources."lodash.clonedeep-4.5.0"
       sources."lodash.difference-4.5.0"
-      sources."lodash.flatten-4.4.0"
       sources."lodash.get-4.4.2"
       sources."lodash.pad-4.5.1"
       sources."lodash.padend-4.6.1"
@@ -67612,7 +68023,7 @@ in
       sources."node-forge-0.10.0"
       sources."node-gyp-build-4.2.3"
       sources."nofilter-2.0.3"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npmlog-2.0.4"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
@@ -67635,24 +68046,39 @@ in
       sources."prettyjson-1.2.1"
       (sources."probing-1.3.5" // {
         dependencies = [
+          sources."@grpc/grpc-js-1.2.11"
+          sources."@grpc/proto-loader-0.5.6"
+          sources."@types/node-14.14.35"
+          sources."@types/ws-7.4.0"
           sources."asyncjs-util-1.2.4"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
+          sources."bolt09-0.1.3"
+          sources."cbor-7.0.4"
+          sources."invoices-1.1.7"
+          (sources."lightning-3.3.1" // {
+            dependencies = [
+              sources."asyncjs-util-1.2.3"
+              sources."bolt07-1.7.1"
+              sources."invoices-1.1.6"
+            ];
+          })
           (sources."ln-service-51.5.0" // {
             dependencies = [
               sources."bolt07-1.7.1"
               sources."invoices-1.1.6"
             ];
           })
+          sources."psbt-1.1.8"
         ];
       })
       sources."process-nextick-args-2.0.1"
-      (sources."protobufjs-6.10.2" // {
+      (sources."protobufjs-6.11.2" // {
         dependencies = [
-          sources."@types/node-13.13.50"
+          sources."@types/node-15.6.1"
         ];
       })
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       (sources."psbt-1.1.9" // {
         dependencies = [
           sources."bn.js-5.2.0"
@@ -67718,9 +68144,9 @@ in
       sources."strip-ansi-4.0.0"
       sources."strip-json-comments-2.0.1"
       sources."supports-color-2.0.0"
-      (sources."table-6.0.9" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."ansi-regex-5.0.0"
           sources."is-fullwidth-code-point-3.0.0"
           sources."json-schema-traverse-1.0.0"
@@ -67760,13 +68186,13 @@ in
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
       sources."typeforce-1.18.0"
-      sources."typegram-3.2.3"
+      sources."typegram-3.3.1"
       sources."unique-string-2.0.0"
       sources."unpipe-1.0.0"
       (sources."update-notifier-5.1.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."import-lazy-2.1.0"
           sources."semver-7.3.5"
           sources."supports-color-7.2.0"
@@ -67891,7 +68317,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fuzzy-search-3.2.1"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."html-encoding-sniffer-1.0.2"
@@ -68036,7 +68462,7 @@ in
       sources."inherits-2.0.4"
       sources."intersect-1.0.1"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-finite-1.1.0"
       sources."is-plain-obj-1.1.0"
       sources."is-utf8-0.2.1"
@@ -68059,7 +68485,7 @@ in
       sources."loud-rejection-1.6.0"
       sources."map-obj-1.0.1"
       sources."meow-3.7.0"
-      sources."mime-db-1.47.0"
+      sources."mime-db-1.48.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
@@ -68072,7 +68498,7 @@ in
       sources."parse-json-2.2.0"
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       (sources."path-type-1.1.0" // {
         dependencies = [
           sources."graceful-fs-4.2.6"
@@ -68090,7 +68516,7 @@ in
       sources."resolve-1.20.0"
       (sources."rimraf-2.7.1" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
         ];
       })
       sources."semver-5.7.1"
@@ -68100,7 +68526,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sprintf-js-1.0.3"
       sources."strip-bom-2.0.0"
       sources."strip-indent-1.0.1"
@@ -68136,7 +68562,6 @@ in
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
-      sources."array-filter-1.0.0"
       (sources."asn1.js-5.4.1" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -68148,7 +68573,7 @@ in
           sources."util-0.10.3"
         ];
       })
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
       sources."bn.js-5.2.0"
@@ -68206,7 +68631,7 @@ in
           sources."bn.js-4.12.0"
         ];
       })
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."events-3.3.0"
       sources."evp_bytestokey-1.0.3"
@@ -68216,7 +68641,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-assigned-identifiers-1.2.0"
       sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
       sources."has-symbols-1.0.2"
@@ -68235,18 +68660,18 @@ in
       sources."inline-source-map-0.6.2"
       sources."insert-module-globals-7.2.1"
       sources."is-arguments-1.1.0"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
-      sources."is-core-module-2.2.0"
-      sources."is-date-object-1.0.2"
-      sources."is-generator-function-1.0.8"
+      sources."is-core-module-2.4.0"
+      sources."is-date-object-1.0.4"
+      sources."is-generator-function-1.0.9"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."isarray-1.0.0"
       sources."jsonparse-1.3.1"
@@ -68265,7 +68690,7 @@ in
       sources."mkdirp-classic-0.5.3"
       sources."module-deps-6.2.3"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
@@ -68275,7 +68700,7 @@ in
       sources."parse-asn1-5.1.6"
       sources."path-browserify-1.0.1"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-platform-0.11.15"
       sources."pbkdf2-3.1.2"
       sources."process-0.11.10"
@@ -68336,7 +68761,7 @@ in
           sources."punycode-1.3.2"
         ];
       })
-      sources."util-0.12.3"
+      sources."util-0.12.4"
       sources."util-deprecate-1.0.2"
       sources."vm-browserify-1.1.2"
       sources."which-boxed-primitive-1.0.2"
@@ -68357,17 +68782,17 @@ in
   btc-rpc-explorer = nodeEnv.buildNodePackage {
     name = "btc-rpc-explorer";
     packageName = "btc-rpc-explorer";
-    version = "3.1.0";
+    version = "3.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/btc-rpc-explorer/-/btc-rpc-explorer-3.1.0.tgz";
-      sha512 = "LKY3+CWOAe6A7SaXRYHZSu27TNeBrUl3LkYTOvRZAIatNNwaM1dTCxUjNRBsnsHCp0Tp9/UGLncLaf2wJ1BLcg==";
+      url = "https://registry.npmjs.org/btc-rpc-explorer/-/btc-rpc-explorer-3.1.1.tgz";
+      sha512 = "QHoiW1H2P6Sx7L5IEvbZnnQsfy7eaibY/KS2UAX9VINXNdGS9RxqEdLOe9yTdcy5pzIFpQKIBspOnHcBOjVa8A==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
+      sources."@babel/types-7.14.4"
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
       sources."@types/minimist-1.2.1"
@@ -68488,9 +68913,9 @@ in
       sources."denque-1.5.0"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
-      sources."dijkstrajs-1.0.1"
+      sources."dijkstrajs-1.0.2"
       sources."doctypes-1.1.0"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."dtrace-provider-0.8.8"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
@@ -68510,11 +68935,12 @@ in
         ];
       })
       sources."express-async-handler-1.1.4"
-      (sources."express-session-1.17.1" // {
+      (sources."express-session-1.17.2" // {
         dependencies = [
+          sources."cookie-0.4.1"
           sources."debug-2.6.9"
           sources."depd-2.0.0"
-          sources."safe-buffer-5.2.0"
+          sources."safe-buffer-5.2.1"
         ];
       })
       sources."extend-3.0.2"
@@ -68528,10 +68954,10 @@ in
         ];
       })
       sources."find-up-4.1.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."function-bind-1.1.1"
       sources."get-caller-file-2.0.5"
@@ -68566,12 +68992,12 @@ in
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-expression-4.0.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-plain-obj-1.1.0"
       sources."is-promise-2.2.2"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-typedarray-1.0.0"
       sources."isarray-2.0.5"
       sources."isstream-0.1.2"
@@ -68648,7 +69074,7 @@ in
       sources."parseurl-1.3.3"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."performance-now-2.1.0"
       (sources."pidusage-2.0.21" // {
@@ -68658,7 +69084,7 @@ in
       })
       sources."pngjs-3.4.0"
       sources."promise-7.3.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."pug-3.0.2"
       sources."pug-attrs-3.0.0"
@@ -68696,7 +69122,7 @@ in
       })
       sources."readable-stream-3.6.0"
       sources."redent-3.0.0"
-      sources."redis-3.1.1"
+      sources."redis-3.1.2"
       sources."redis-commands-1.7.0"
       sources."redis-errors-1.2.0"
       sources."redis-parser-3.0.0"
@@ -68735,11 +69161,11 @@ in
       sources."set-blocking-2.0.0"
       sources."setprototypeof-1.1.1"
       sources."sha.js-2.4.11"
-      sources."simple-git-2.38.0"
+      sources."simple-git-2.39.0"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.16.1"
       sources."standard-error-1.1.0"
@@ -68758,7 +69184,7 @@ in
       sources."toidentifier-1.0.0"
       sources."token-stream-1.0.0"
       sources."tough-cookie-2.5.0"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."tsscmp-1.0.6"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
@@ -68825,7 +69251,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-13.13.50"
+      sources."@types/node-15.6.1"
       sources."addr-to-ip-port-1.5.1"
       sources."airplay-js-0.2.16"
       sources."ajv-6.12.6"
@@ -68946,7 +69372,7 @@ in
       sources."get-browser-rtc-1.1.0"
       sources."get-stdin-4.0.1"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."got-1.2.2"
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
@@ -68967,7 +69393,7 @@ in
       sources."ip-set-1.0.2"
       sources."ipaddr.js-2.0.0"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-finite-1.1.0"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
@@ -69044,7 +69470,7 @@ in
       })
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-1.1.0"
       (sources."peer-wire-protocol-0.7.1" // {
         dependencies = [
@@ -69070,7 +69496,7 @@ in
       sources."plist-3.0.2"
       sources."process-nextick-args-2.0.1"
       sources."promiscuous-0.6.0"
-      sources."protobufjs-6.10.2"
+      sources."protobufjs-6.11.2"
       sources."psl-1.8.0"
       (sources."pump-0.3.5" // {
         dependencies = [
@@ -69151,7 +69577,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."speedometer-0.1.4"
       sources."srt2vtt-1.3.1"
       sources."sshpk-1.16.1"
@@ -69231,26 +69657,25 @@ in
   cdk8s-cli = nodeEnv.buildNodePackage {
     name = "cdk8s-cli";
     packageName = "cdk8s-cli";
-    version = "1.0.0-beta.11";
+    version = "1.0.0-beta.18";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.0-beta.11.tgz";
-      sha512 = "Oo/tO5aqmjsBORN93dSnidF7+2u77Q9zwUn9VbCQkZqCNfeZZcwIV9AG108hMYwtcXqtKQC7wevX6rmi9l8lng==";
+      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.0-beta.18.tgz";
+      sha512 = "eT0Z2u8yB8gMAIOMJ76TjeCQZ8nzxSbN/Y87cbzhT9I6vyLjgCw/w+48XXudOfW63kY2/TugWtZE+mwQlu3QXw==";
     };
     dependencies = [
-      sources."@jsii/spec-1.28.0"
-      sources."@types/node-10.17.58"
+      sources."@jsii/spec-1.30.0"
+      sources."@types/node-10.17.60"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
-      sources."array-filter-1.0.0"
       sources."at-least-node-1.0.0"
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."call-bind-1.0.2"
       sources."camelcase-6.2.0"
       sources."case-1.6.3"
-      sources."cdk8s-1.0.0-beta.11"
+      sources."cdk8s-1.0.0-beta.14"
       sources."cliui-7.0.4"
       sources."clone-2.1.2"
-      (sources."codemaker-1.28.0" // {
+      (sources."codemaker-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
@@ -69259,7 +69684,7 @@ in
       sources."color-name-1.1.4"
       sources."colors-1.4.0"
       sources."commonmark-0.29.3"
-      sources."constructs-3.3.71"
+      sources."constructs-3.3.75"
       sources."date-format-3.0.0"
       sources."debug-4.3.2"
       sources."decamelize-5.0.0"
@@ -69270,7 +69695,7 @@ in
       sources."dot-case-3.0.4"
       sources."emoji-regex-8.0.0"
       sources."entities-2.0.3"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
@@ -69292,53 +69717,53 @@ in
       sources."has-bigints-1.0.1"
       sources."has-symbols-1.0.2"
       sources."is-arguments-1.1.0"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
       sources."is-set-2.0.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."is-weakmap-2.0.1"
       sources."is-weakset-2.0.1"
       sources."isarray-2.0.5"
-      (sources."jsii-1.28.0" // {
+      (sources."jsii-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.28.0" // {
+      (sources."jsii-pacmak-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.28.0" // {
+      (sources."jsii-reflect-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.28.0" // {
+      (sources."jsii-rosetta-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.255" // {
+      (sources."jsii-srcmak-0.1.273" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
-      sources."json-schema-0.2.5"
-      sources."json2jsii-0.1.188"
+      sources."json-schema-0.3.0"
+      sources."json2jsii-0.1.236"
       sources."jsonfile-6.1.0"
       sources."jsonschema-1.4.0"
       sources."locate-path-5.0.0"
@@ -69350,11 +69775,11 @@ in
       sources."ms-2.1.2"
       sources."ncp-2.0.0"
       sources."no-case-3.0.4"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
-      sources."oo-ascii-tree-1.28.0"
+      sources."oo-ascii-tree-1.30.0"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
@@ -69395,7 +69820,7 @@ in
       sources."which-typed-array-1.1.4"
       sources."wrap-ansi-7.0.0"
       sources."xmlbuilder-15.1.1"
-      sources."xmldom-0.5.0"
+      sources."xmldom-0.6.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
       sources."yaml-1.10.2"
@@ -69414,7 +69839,6 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "CDK for Kubernetes CLI";
-      homepage = "https://github.com/awslabs/cdk8s#readme";
       license = "Apache-2.0";
     };
     production = true;
@@ -69424,18 +69848,19 @@ in
   cdktf-cli = nodeEnv.buildNodePackage {
     name = "cdktf-cli";
     packageName = "cdktf-cli";
-    version = "0.2.2";
+    version = "0.4.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdktf-cli/-/cdktf-cli-0.2.2.tgz";
-      sha512 = "tkUGs4+739C+3lklwQQM/wLgp41maVlJUK/2cCzuNxVBgobLXBxn55lHxbmEuh2Ddc8PtNV31uzHzn1f2ZzdfQ==";
+      url = "https://registry.npmjs.org/cdktf-cli/-/cdktf-cli-0.4.0.tgz";
+      sha512 = "2mJA2Kq8mCcTzfHbNnogPWj/OVtPFEtzgL00hxPyLIKaQz7gX0Sagej18qp7kPh0pVA5Qenm5jVST3GdkjoX6A==";
     };
     dependencies = [
-      sources."@cdktf/hcl2json-0.2.2"
-      sources."@jsii/spec-1.28.0"
+      sources."@cdktf/hcl2json-0.4.0"
+      sources."@jsii/spec-1.30.0"
       sources."@skorfmann/ink-confirm-input-3.0.0"
-      sources."@skorfmann/terraform-cloud-1.9.1"
-      sources."@types/node-14.14.41"
+      sources."@skorfmann/terraform-cloud-1.10.1"
+      sources."@types/node-14.17.1"
       sources."@types/node-fetch-2.5.10"
+      sources."@types/yauzl-2.9.1"
       sources."@types/yoga-layout-1.9.2"
       (sources."ansi-escapes-4.3.2" // {
         dependencies = [
@@ -69450,13 +69875,12 @@ in
           sources."readable-stream-2.3.7"
         ];
       })
-      sources."array-filter-1.0.0"
       sources."astral-regex-2.0.0"
       sources."async-3.2.0"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
       sources."auto-bind-4.0.0"
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."axios-0.21.1"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
@@ -69468,8 +69892,8 @@ in
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
       sources."case-1.6.3"
-      sources."cdktf-0.2.2"
-      sources."chalk-4.1.0"
+      sources."cdktf-0.4.0"
+      sources."chalk-4.1.1"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
       sources."cli-cursor-3.1.0"
@@ -69488,9 +69912,9 @@ in
       sources."colors-1.4.0"
       sources."combined-stream-1.0.8"
       sources."commonmark-0.29.3"
-      sources."compress-commons-4.1.0"
+      sources."compress-commons-4.1.1"
       sources."concat-map-0.0.1"
-      sources."constructs-3.3.71"
+      sources."constructs-3.3.75"
       sources."convert-to-spaces-1.0.2"
       sources."core-util-is-1.0.2"
       sources."crc-32-1.2.0"
@@ -69511,7 +69935,7 @@ in
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."entities-2.0.3"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       (sources."es-get-iterator-1.1.2" // {
         dependencies = [
           sources."isarray-2.0.5"
@@ -69521,9 +69945,11 @@ in
       sources."escalade-3.1.1"
       sources."escape-string-regexp-2.0.0"
       sources."exit-on-epipe-1.0.1"
+      sources."extract-zip-2.0.1"
+      sources."fd-slicer-1.1.0"
       sources."find-up-4.1.0"
       sources."flatted-2.0.2"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."foreach-2.0.5"
       sources."form-data-3.0.1"
       sources."fs-constants-1.0.0"
@@ -69532,7 +69958,8 @@ in
       sources."function-bind-1.1.1"
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."get-stream-5.2.0"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
@@ -69547,30 +69974,30 @@ in
           sources."type-fest-0.12.0"
         ];
       })
-      sources."ink-spinner-4.0.1"
+      sources."ink-spinner-4.0.2"
       sources."ink-text-input-4.0.1"
       sources."is-arguments-1.1.0"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
       sources."is-ci-2.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
       sources."is-set-2.0.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."is-weakmap-2.0.1"
       sources."is-weakset-2.0.1"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
       sources."js-tokens-4.0.0"
-      (sources."jsii-1.28.0" // {
+      (sources."jsii-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -69578,10 +70005,10 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.28.0" // {
+      (sources."jsii-pacmak-1.30.0" // {
         dependencies = [
           sources."camelcase-6.2.0"
-          sources."codemaker-1.28.0"
+          sources."codemaker-1.30.0"
           sources."decamelize-5.0.0"
           sources."escape-string-regexp-4.0.0"
           sources."fs-extra-9.1.0"
@@ -69590,7 +70017,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.28.0" // {
+      (sources."jsii-reflect-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -69598,7 +70025,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.28.0" // {
+      (sources."jsii-rosetta-1.30.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -69606,7 +70033,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.255" // {
+      (sources."jsii-srcmak-0.1.273" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -69642,13 +70069,13 @@ in
       sources."node-fetch-2.6.1"
       sources."normalize-path-3.0.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."oo-ascii-tree-1.28.0"
+      sources."oo-ascii-tree-1.30.0"
       sources."open-7.4.2"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
@@ -69656,12 +70083,14 @@ in
       sources."patch-console-1.0.0"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
+      sources."pend-1.2.0"
       sources."printj-1.1.2"
       sources."process-nextick-args-2.0.1"
       sources."prop-types-15.7.2"
+      sources."pump-3.0.0"
       sources."quick-lru-4.0.1"
       sources."react-16.14.0"
-      sources."react-devtools-core-4.12.2"
+      sources."react-devtools-core-4.13.5"
       sources."react-is-16.13.1"
       sources."react-reconciler-0.24.0"
       sources."readable-stream-3.6.0"
@@ -69726,9 +70155,9 @@ in
       sources."widest-line-3.1.0"
       sources."wrap-ansi-6.2.0"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xmlbuilder-15.1.1"
-      sources."xmldom-0.5.0"
+      sources."xmldom-0.6.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
       (sources."yargs-15.4.1" // {
@@ -69739,6 +70168,7 @@ in
         ];
       })
       sources."yargs-parser-20.2.7"
+      sources."yauzl-2.10.0"
       sources."yn-3.1.1"
       sources."yoga-layout-prebuilt-1.10.0"
       sources."zip-stream-4.1.0"
@@ -69756,10 +70186,10 @@ in
   clean-css-cli = nodeEnv.buildNodePackage {
     name = "clean-css-cli";
     packageName = "clean-css-cli";
-    version = "5.2.2";
+    version = "5.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/clean-css-cli/-/clean-css-cli-5.2.2.tgz";
-      sha512 = "XlgBVTpEAsU/aT7gxAZ/g5Q8P9glHZeg6yfNvE7hYuvoozMdw5Wd46b12QtzuDVs8/7UZ/GCulS0VR9TI5NWRg==";
+      url = "https://registry.npmjs.org/clean-css-cli/-/clean-css-cli-5.3.0.tgz";
+      sha512 = "Jri2KVAcan/Y1JuEDo1rUlm3vUoGvMKSOpIL2YEPgalksvoGur/yL2KbtMF2dPs2VlMVj1afzp76Vu0KjxKfvA==";
     };
     dependencies = [
       sources."balanced-match-1.0.2"
@@ -69768,7 +70198,7 @@ in
       sources."commander-7.2.0"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."minimatch-3.0.4"
@@ -69818,11 +70248,11 @@ in
       sources."fetch-everywhere-1.0.5"
       sources."filter-obj-1.1.0"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-flag-3.0.0"
       sources."hasurl-1.0.0"
       sources."i-0.3.6"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-stream-1.1.0"
@@ -69928,10 +70358,10 @@ in
   coc-diagnostic = nodeEnv.buildNodePackage {
     name = "coc-diagnostic";
     packageName = "coc-diagnostic";
-    version = "0.18.2";
+    version = "0.20.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-diagnostic/-/coc-diagnostic-0.18.2.tgz";
-      sha512 = "uiWZlGLle3EXfC+1AmYmPrQfYeL2gY1BKpROBr5BWgT2+1W21gAlY1mziopAk0AmCNA8M4wgvfgc+CC3KVYkjQ==";
+      url = "https://registry.npmjs.org/coc-diagnostic/-/coc-diagnostic-0.20.0.tgz";
+      sha512 = "iKMyYYkebv31l1LB0EbZtwQ4DeVW0dUh9nXwE0tG3LDahcUNzNi1eXGWeNVxcy+YhWmaLEkLgKTu9DE4zxpACQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -69987,10 +70417,10 @@ in
   coc-explorer = nodeEnv.buildNodePackage {
     name = "coc-explorer";
     packageName = "coc-explorer";
-    version = "0.17.2";
+    version = "0.17.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.17.2.tgz";
-      sha512 = "XXMjJMweK5qAmOFd569HpdSgcFTziumnNWjPYO1Fze3aJ75KtemSWjrKKy6waFTzQH0sWHmq8g/cRs1pjhQckQ==";
+      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.17.5.tgz";
+      sha512 = "a5GHhsPEFcby7CkhnpkWyLei/SCcon3Z/Li1Jvxr/h6bewDHFNXA5DZSDJWvhLnktGcwZNBOWGBBZhPWFGYAaA==";
     };
     dependencies = [
       sources."@sindresorhus/df-3.1.1"
@@ -70009,7 +70439,7 @@ in
       sources."execa-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."get-stream-5.2.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."globby-7.1.1"
       sources."ignore-3.3.10"
       sources."indent-string-4.0.0"
@@ -70034,7 +70464,7 @@ in
       sources."npm-run-path-3.1.0"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."open-8.0.6"
+      sources."open-8.2.0"
       sources."os-homedir-1.0.2"
       sources."p-finally-2.0.1"
       sources."p-map-4.0.0"
@@ -70073,11 +70503,16 @@ in
   coc-git = nodeEnv.buildNodePackage {
     name = "coc-git";
     packageName = "coc-git";
-    version = "2.3.1";
+    version = "2.3.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-git/-/coc-git-2.3.1.tgz";
-      sha512 = "119J+uanlMO9xZA4yeyvjwbWKDckLUKUtJu6mreHuyQbd7x4Ea3qwjpWMlGl2+QLJQ78OPZjpbzzlc8FzDZY2A==";
+      url = "https://registry.npmjs.org/coc-git/-/coc-git-2.3.3.tgz";
+      sha512 = "xBdnbesjfMVHYjoCCpLReurLFVIVyvN/Xd+T0/oETLs0lotn1p5F3cZPRiZD0jxtCLMV72dqN/Kuro98HoNplg==";
     };
+    dependencies = [
+      sources."lru-cache-6.0.0"
+      sources."semver-7.3.5"
+      sources."yallist-4.0.0"
+    ];
     buildInputs = globalBuildInputs;
     meta = {
       description = "Git extension for coc.nvim";
@@ -70116,10 +70551,10 @@ in
   coc-highlight = nodeEnv.buildNodePackage {
     name = "coc-highlight";
     packageName = "coc-highlight";
-    version = "1.2.7";
+    version = "1.2.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-highlight/-/coc-highlight-1.2.7.tgz";
-      sha512 = "crUMz4W5IGSoLX9Lif1Z9XT2e3Eq7oVnkaN1+F0ncGiAh8sI4vPW+hm641tVcXVC/u4wzdvvbj6ngj8Fykxn2g==";
+      url = "https://registry.npmjs.org/coc-highlight/-/coc-highlight-1.2.8.tgz";
+      sha512 = "buElMyk/0st73HVkgcic9UJECACHsoTbyCwHiOo20P1sCk8tgQ6+iEY9KW7L4xZorRt1RthfxLqZwayog1SALQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -70139,7 +70574,7 @@ in
       sha512 = "7SHQYzpRKPrpaLcTm1UUk1zu9VvFEJKFqxwDIuqv/CL0cBTtEvlsfpVh9DOaMHlZPu8U8Lgyf04bHV/sFS1zJw==";
     };
     dependencies = [
-      sources."typescript-4.2.4"
+      sources."typescript-4.3.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -70224,10 +70659,10 @@ in
   coc-lists = nodeEnv.buildNodePackage {
     name = "coc-lists";
     packageName = "coc-lists";
-    version = "1.4.0";
+    version = "1.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-lists/-/coc-lists-1.4.0.tgz";
-      sha512 = "AKmM8/+BjncinB4MrS/e8hJ7MzvXL5GtAvusGZb3zsAj4tNO77oWiVzE8V09QEWAsorgHVgNv/OXr4EPJMZvpg==";
+      url = "https://registry.npmjs.org/coc-lists/-/coc-lists-1.4.1.tgz";
+      sha512 = "A87irHxQ97+VkgM8SgTLZDyOT/t7V0uMqg/Jk1hx+TQVsAZljBNZq88yaUZIo6SBfmeHroGUUzFs597GJf7N5Q==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -70260,10 +70695,10 @@ in
   coc-metals = nodeEnv.buildNodePackage {
     name = "coc-metals";
     packageName = "coc-metals";
-    version = "1.0.3";
+    version = "1.0.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-1.0.3.tgz";
-      sha512 = "7mIC/YiAYNS9kzv0tPi6IcKTWRDRAwjKbot4g/RwBxpyGAzTBvsfmpqnWvHiZbk4kd8mKG2qmWR9OEy7CNzNEQ==";
+      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-1.0.6.tgz";
+      sha512 = "MQuXdCblmy5Qnrlqmb7ntDjpgxtdXsbdAgxf23Ai2QFpf14bdc+gz4U/+9pOEpSswODtMvMqnjfTA1lY7p2AfQ==";
     };
     dependencies = [
       sources."@chemzqm/neovim-5.2.13"
@@ -70302,15 +70737,15 @@ in
       sources."define-properties-1.1.3"
       sources."duplexer2-0.1.4"
       sources."end-of-stream-1.4.4"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."event-lite-0.1.2"
       sources."execa-1.0.0"
       sources."fast-diff-1.2.0"
       sources."fb-watchman-2.0.1"
       sources."flatted-2.0.2"
-      sources."follow-redirects-1.13.3"
-      sources."fp-ts-2.10.2"
+      sources."follow-redirects-1.14.1"
+      sources."fp-ts-2.10.5"
       sources."fs-extra-8.1.0"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
@@ -70323,7 +70758,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
@@ -70335,17 +70770,17 @@ in
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."int64-buffer-0.1.10"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
@@ -70381,7 +70816,7 @@ in
       sources."node-fetch-2.6.1"
       sources."node-int64-0.4.0"
       sources."npm-run-path-2.0.2"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
@@ -70473,13 +70908,14 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."globals-12.4.0"
         ];
@@ -70534,6 +70970,7 @@ in
           sources."ansi-regex-3.0.0"
           sources."camelcase-4.1.0"
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-2.1.1"
           sources."strip-ansi-4.0.0"
@@ -70548,15 +70985,14 @@ in
           sources."isobject-3.0.1"
         ];
       })
-      sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."callsites-3.1.0"
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."capture-stack-trace-1.0.1"
       sources."ccount-1.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -70615,7 +71051,7 @@ in
         ];
       })
       sources."copy-descriptor-0.1.1"
-      sources."core-js-3.10.1"
+      sources."core-js-3.13.1"
       sources."cosmiconfig-3.1.0"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-7.0.3"
@@ -70651,16 +71087,16 @@ in
       sources."domutils-1.7.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
-      sources."escape-string-regexp-1.0.5"
-      (sources."eslint-7.24.0" // {
+      sources."escape-string-regexp-4.0.0"
+      (sources."eslint-7.27.0" // {
         dependencies = [
-          sources."eslint-visitor-keys-2.0.0"
+          sources."eslint-visitor-keys-2.1.0"
         ];
       })
       sources."eslint-scope-5.1.1"
@@ -70778,11 +71214,10 @@ in
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
       sources."get-caller-file-1.0.3"
-      sources."get-intrinsic-1.1.1"
       sources."get-stdin-5.0.1"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-base-0.3.0" // {
         dependencies = [
           sources."glob-parent-2.0.0"
@@ -70793,7 +71228,7 @@ in
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.3.0"
       sources."global-dirs-0.1.1"
-      (sources."globals-13.8.0" // {
+      (sources."globals-13.9.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
@@ -70814,7 +71249,6 @@ in
         ];
       })
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.2"
       (sources."has-value-1.0.0" // {
         dependencies = [
           sources."isobject-3.0.1"
@@ -70853,10 +71287,9 @@ in
       sources."is-alphanumeric-1.0.0"
       sources."is-alphanumerical-1.0.4"
       sources."is-arrayish-0.2.1"
-      sources."is-boolean-object-1.1.0"
       sources."is-buffer-1.1.6"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -70880,7 +71313,6 @@ in
       sources."is-installed-globally-0.1.0"
       sources."is-npm-1.0.0"
       sources."is-number-2.1.0"
-      sources."is-number-object-1.0.4"
       sources."is-obj-2.0.0"
       sources."is-path-inside-1.0.1"
       sources."is-plain-obj-1.1.0"
@@ -70895,7 +71327,6 @@ in
       sources."is-regexp-1.0.0"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
       sources."is-supported-regexp-flag-1.0.1"
       sources."is-utf8-0.2.1"
       sources."is-whitespace-character-1.0.4"
@@ -70924,12 +71355,12 @@ in
       sources."locate-path-2.0.0"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
       sources."lodash.merge-4.6.2"
       sources."lodash.truncate-4.4.2"
       (sources."log-symbols-2.2.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
       sources."loglevel-1.7.1"
@@ -70938,6 +71369,7 @@ in
           sources."ansi-regex-2.1.1"
           sources."ansi-styles-2.2.1"
           sources."chalk-1.1.3"
+          sources."escape-string-regexp-1.0.5"
           sources."strip-ansi-3.0.1"
           sources."supports-color-2.0.0"
         ];
@@ -71064,7 +71496,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       (sources."path-type-1.1.0" // {
         dependencies = [
           sources."pify-2.3.0"
@@ -71078,6 +71510,7 @@ in
       (sources."postcss-6.0.23" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
       sources."postcss-html-0.12.0"
@@ -71090,6 +71523,7 @@ in
               sources."supports-color-2.0.0"
             ];
           })
+          sources."escape-string-regexp-1.0.5"
           sources."has-flag-1.0.0"
           sources."postcss-5.2.18"
           sources."source-map-0.5.7"
@@ -71101,6 +71535,7 @@ in
       (sources."postcss-reporter-5.0.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
       sources."postcss-resolve-nested-selector-0.1.1"
@@ -71112,7 +71547,7 @@ in
       sources."prelude-ls-1.2.1"
       sources."prepend-http-1.0.4"
       sources."preserve-0.2.0"
-      sources."prettier-2.2.1"
+      sources."prettier-2.3.0"
       sources."prettier-eslint-12.0.0"
       (sources."prettier-stylelint-0.4.2" // {
         dependencies = [
@@ -71125,6 +71560,7 @@ in
         dependencies = [
           sources."chalk-2.4.2"
           sources."dir-glob-2.0.0"
+          sources."escape-string-regexp-1.0.5"
           sources."globby-8.0.2"
           sources."ignore-3.3.10"
           sources."path-type-3.0.0"
@@ -71250,7 +71686,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."specificity-0.3.2"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
@@ -71292,6 +71728,7 @@ in
           sources."camelcase-keys-4.2.0"
           sources."chalk-2.4.2"
           sources."debug-3.2.7"
+          sources."escape-string-regexp-1.0.5"
           sources."file-entry-cache-2.0.0"
           sources."flat-cache-1.3.4"
           sources."globby-7.1.1"
@@ -71319,9 +71756,9 @@ in
       sources."sugarss-1.0.1"
       sources."supports-color-5.5.0"
       sources."svg-tags-1.0.0"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -71346,6 +71783,7 @@ in
       (sources."tslint-5.20.1" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
           sources."semver-5.7.1"
           sources."tsutils-2.29.0"
         ];
@@ -71380,6 +71818,7 @@ in
       (sources."update-notifier-2.5.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
       sources."uri-js-4.4.1"
@@ -71451,17 +71890,17 @@ in
   coc-pyright = nodeEnv.buildNodePackage {
     name = "coc-pyright";
     packageName = "coc-pyright";
-    version = "1.1.129";
+    version = "1.1.144";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.129.tgz";
-      sha512 = "XlybP7uY9BgkeGKCFhIxnmpos3rYJ8wIB+MW4w0Fyu51Ap2fxamU7FDmOcOIbjmp1tglldSZm2+A+KloHDuUgw==";
+      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.144.tgz";
+      sha512 = "bUb/GuY0QjlDAws60UNDL8ZiRzp6sLmSqRkMyAAUEb9arsSphvok80P3i/NEsJhG2lgx2LaEz1mKUCnR+UjTlA==";
     };
     dependencies = [
-      sources."pyright-1.1.132"
+      sources."pyright-1.1.145"
     ];
     buildInputs = globalBuildInputs;
     meta = {
-      description = "Pyright extension for coc.nvim";
+      description = "Pyright extension for coc.nvim, static type checker for Python";
       homepage = "https://github.com/fannheyward/coc-pyright#readme";
       license = "MIT";
     };
@@ -71531,10 +71970,10 @@ in
   coc-rust-analyzer = nodeEnv.buildNodePackage {
     name = "coc-rust-analyzer";
     packageName = "coc-rust-analyzer";
-    version = "0.42.0";
+    version = "0.46.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.42.0.tgz";
-      sha512 = "H6/r68GvhIMWDZWWFtOUsyRNxaVlMRLrS+uMqcipxfkx+Pl1pWfnfsmymjd9okbtrWiKWgG6G63v7T2rVl4+YA==";
+      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.46.0.tgz";
+      sha512 = "KwkFaDNBwZtqdahUPKYKoCb0nvLZ1wu5L2/8kpK94IMDgNPy3TUTxujtwDjLwjYo/z+W5reRfwIYNJZ3FZ2Onw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -71567,10 +72006,10 @@ in
   coc-snippets = nodeEnv.buildNodePackage {
     name = "coc-snippets";
     packageName = "coc-snippets";
-    version = "2.4.1";
+    version = "2.4.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-snippets/-/coc-snippets-2.4.1.tgz";
-      sha512 = "+81jc8T250Ipl50MMypedTqHvAAGPu/COg9wEUsBzEOHmA0r4ouvRhzjAOWt7G6L2dHdB4KJl8AWfiVZhc5dRA==";
+      url = "https://registry.npmjs.org/coc-snippets/-/coc-snippets-2.4.2.tgz";
+      sha512 = "e+gsnzl//ilZNhfdVNkzI3lvJoMdB/aLVrMbaecimJG+gabVI/MvjmpsvrOLu9KFkBmECFjpM3T2Hxd6DuvY2Q==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -71608,31 +72047,31 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      sources."@babel/core-7.13.15"
-      sources."@babel/generator-7.13.9"
-      sources."@babel/helper-compilation-targets-7.13.13"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/compat-data-7.14.4"
+      sources."@babel/core-7.14.3"
+      sources."@babel/generator-7.14.3"
+      sources."@babel/helper-compilation-targets-7.14.4"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
-      sources."@babel/helpers-7.13.10"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.13.15"
+      sources."@babel/parser-7.14.4"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
@@ -71643,7 +72082,7 @@ in
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/parse-json-4.0.0"
       sources."@types/unist-2.0.3"
-      sources."ajv-8.1.0"
+      sources."ajv-8.5.0"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -71651,16 +72090,19 @@ in
       sources."astral-regex-2.0.0"
       sources."autoprefixer-9.8.6"
       sources."bail-1.0.5"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
+      sources."balanced-match-2.0.0"
+      (sources."brace-expansion-1.1.11" // {
+        dependencies = [
+          sources."balanced-match-1.0.2"
+        ];
+      })
       sources."braces-3.0.2"
-      sources."browserslist-4.16.4"
-      sources."call-bind-1.0.2"
+      sources."browserslist-4.16.6"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001209"
-      (sources."chalk-4.1.0" // {
+      sources."caniuse-lite-1.0.30001232"
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -71697,7 +72139,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -71718,9 +72160,8 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.2"
-      sources."get-intrinsic-1.1.1"
       sources."get-stdin-8.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-modules-2.0.0"
       sources."global-prefix-3.0.0"
@@ -71731,7 +72172,6 @@ in
       sources."hard-rejection-2.1.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.2"
       sources."hosted-git-info-4.0.2"
       sources."html-tags-3.1.0"
       sources."htmlparser2-3.10.1"
@@ -71744,26 +72184,22 @@ in
       sources."import-lazy-4.0.0"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
-      sources."indexes-of-1.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."is-alphabetical-1.0.4"
       sources."is-alphanumerical-1.0.4"
       sources."is-arrayish-0.2.1"
-      sources."is-boolean-object-1.1.0"
       sources."is-buffer-2.0.5"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-decimal-1.0.4"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-hexadecimal-1.0.4"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
       sources."is-plain-obj-2.1.0"
       sources."is-regexp-2.1.0"
-      sources."is-string-1.0.5"
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."isexe-2.0.0"
@@ -71778,7 +72214,6 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
       sources."lodash.truncate-4.4.2"
       sources."log-symbols-4.1.0"
       sources."longest-streak-2.0.4"
@@ -71801,7 +72236,7 @@ in
         ];
       })
       sources."ms-2.1.2"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       (sources."normalize-package-data-3.0.2" // {
         dependencies = [
           sources."semver-7.3.5"
@@ -71820,9 +72255,9 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       (sources."postcss-7.0.35" // {
         dependencies = [
           (sources."chalk-2.4.2" // {
@@ -71841,7 +72276,7 @@ in
       sources."postcss-safe-parser-4.0.2"
       sources."postcss-sass-0.4.4"
       sources."postcss-scss-2.1.1"
-      sources."postcss-selector-parser-6.0.4"
+      sources."postcss-selector-parser-6.0.6"
       sources."postcss-syntax-0.36.2"
       sources."postcss-value-parser-4.1.0"
       sources."punycode-2.1.1"
@@ -71887,7 +72322,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."specificity-0.4.1"
       sources."string-width-4.2.2"
       (sources."string_decoder-1.3.0" // {
@@ -71898,19 +72333,18 @@ in
       sources."strip-ansi-6.0.0"
       sources."strip-indent-3.0.0"
       sources."style-search-0.1.0"
-      sources."stylelint-13.12.0"
+      sources."stylelint-13.13.1"
       sources."sugarss-2.0.0"
       sources."supports-color-5.5.0"
       sources."svg-tags-1.0.0"
-      sources."table-6.1.0"
+      sources."table-6.7.1"
       sources."to-fast-properties-2.0.0"
       sources."to-regex-range-5.0.1"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."trough-1.0.5"
       sources."type-fest-0.18.1"
       sources."typedarray-to-buffer-3.1.5"
       sources."unified-9.2.1"
-      sources."uniq-1.0.1"
       sources."unist-util-find-all-after-3.0.2"
       sources."unist-util-is-4.1.0"
       sources."unist-util-stringify-position-2.0.3"
@@ -71950,10 +72384,10 @@ in
   coc-tabnine = nodeEnv.buildNodePackage {
     name = "coc-tabnine";
     packageName = "coc-tabnine";
-    version = "1.3.3";
+    version = "1.3.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-tabnine/-/coc-tabnine-1.3.3.tgz";
-      sha512 = "6CYtXKaEduGHLjiBdYRcWvl7gzvW92iGTxW7M3KVfn/tRFO+VF+3FuSX7Fg53ol4/USyNOTgXz3uyBjfsZOBXA==";
+      url = "https://registry.npmjs.org/coc-tabnine/-/coc-tabnine-1.3.4.tgz";
+      sha512 = "ICnIh+XR8egHeJCfuVpiXQHvHfcRJcHWRHIxTHLAOYG000tK/qZGzyVF7gz55sxgwyFOpo3EBgimdrAn9e/gvg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -71967,10 +72401,10 @@ in
   coc-texlab = nodeEnv.buildNodePackage {
     name = "coc-texlab";
     packageName = "coc-texlab";
-    version = "2.3.0";
+    version = "3.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-texlab/-/coc-texlab-2.3.0.tgz";
-      sha512 = "1Nph3BgqAbANW1LWa49kscQdt8i55fB304YohKvA2y78DlvxIfG0J7UnbIz+R1HQX0TpvwWdD/wzFP6ll68l8w==";
+      url = "https://registry.npmjs.org/coc-texlab/-/coc-texlab-3.0.2.tgz";
+      sha512 = "YiPB0gasof89HqAGz55BICHtt9gDyTjsNY1mwdKkJP0ZmgSxub5q+hOYYbay56X4+348Raxx0fp75JI8ax1nAw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -71992,8 +72426,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."balanced-match-1.0.2"
@@ -72009,12 +72443,12 @@ in
       sources."esprima-4.0.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."minimatch-3.0.4"
@@ -72022,7 +72456,7 @@ in
       sources."mkdirp-0.5.5"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."resolve-1.20.0"
       sources."semver-5.7.1"
       sources."sprintf-js-1.0.3"
@@ -72085,7 +72519,7 @@ in
       sha512 = "Kye0Bn4ifhNhKFcenXg0z8iNzkBGOCXCb552sY/L55+4+08WU02impRnuYkEwFo2QAjDrRQNYjUfUabRR4LC+A==";
     };
     dependencies = [
-      sources."typescript-4.2.4"
+      sources."typescript-4.3.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -72107,13 +72541,14 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."globals-12.4.0"
         ];
@@ -72129,9 +72564,8 @@ in
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."builtin-modules-1.1.1"
-      sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -72151,16 +72585,16 @@ in
       sources."doctrine-3.0.0"
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
-      sources."escape-string-regexp-1.0.5"
-      sources."eslint-7.24.0"
-      sources."eslint-plugin-vue-7.9.0"
+      sources."escape-string-regexp-4.0.0"
+      sources."eslint-7.27.0"
+      sources."eslint-plugin-vue-7.10.0"
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
         ];
       })
-      sources."eslint-visitor-keys-2.0.0"
+      sources."eslint-visitor-keys-2.1.0"
       (sources."espree-7.3.1" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
@@ -72188,29 +72622,24 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
-      sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      (sources."globals-13.8.0" // {
+      (sources."globals-13.9.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
       })
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.2"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-boolean-object-1.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-string-1.0.5"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
@@ -72219,7 +72648,7 @@ in
       sources."levn-0.4.1"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
+      sources."lodash.merge-4.6.2"
       sources."lodash.truncate-4.4.2"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.0.4"
@@ -72232,9 +72661,9 @@ in
       sources."parent-module-1.0.1"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."prelude-ls-1.2.1"
-      sources."prettier-2.2.1"
+      sources."prettier-2.3.0"
       sources."progress-2.0.3"
       sources."punycode-2.1.1"
       sources."regexpp-3.1.0"
@@ -72257,9 +72686,9 @@ in
       sources."strip-ansi-6.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-5.5.0"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -72268,13 +72697,14 @@ in
       (sources."tslint-6.1.3" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
           sources."semver-5.7.1"
         ];
       })
       sources."tsutils-2.29.0"
       sources."type-check-0.4.0"
       sources."type-fest-0.8.1"
-      sources."typescript-4.2.4"
+      sources."typescript-4.3.2"
       sources."uri-js-4.4.1"
       sources."v8-compile-cache-2.3.0"
       sources."vls-0.7.2"
@@ -72465,7 +72895,7 @@ in
       sources."colors-1.4.0"
       sources."commander-2.20.3"
       sources."escape-string-regexp-1.0.5"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."has-flag-3.0.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."log-symbols-2.2.0"
@@ -72492,14 +72922,15 @@ in
   configurable-http-proxy = nodeEnv.buildNodePackage {
     name = "configurable-http-proxy";
     packageName = "configurable-http-proxy";
-    version = "4.3.2";
+    version = "4.4.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/configurable-http-proxy/-/configurable-http-proxy-4.3.2.tgz";
-      sha512 = "wVYydYWJyPAUj8pNQ4+4mNxwj6EY8JNETRAOA3UjpiLrGr+Np/2lfQW+W3Fjubs9nUDn0JTQ/aaPsjdEs1/6dA==";
+      url = "https://registry.npmjs.org/configurable-http-proxy/-/configurable-http-proxy-4.4.0.tgz";
+      sha512 = "8tSSnS8pjuw6Wtu/3Ufd2elV/3DnE3AUu3L+IYyukLoQNrRY9iS+Qfg3e1APokk7OzSghDkxW7yRZFiAoHF6FQ==";
     };
     dependencies = [
       sources."@dabh/diagnostics-2.0.2"
       sources."async-3.2.0"
+      sources."bintrees-1.0.1"
       sources."color-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -72513,7 +72944,7 @@ in
       sources."fast-safe-stringify-2.0.7"
       sources."fecha-4.2.1"
       sources."fn.name-1.1.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."http-proxy-1.18.1"
       sources."inherits-2.0.4"
       sources."is-arrayish-0.3.2"
@@ -72521,19 +72952,18 @@ in
       sources."isarray-1.0.0"
       sources."kuler-2.0.0"
       sources."logform-2.2.0"
-      sources."lynx-0.2.0"
-      sources."mersenne-0.0.4"
       sources."ms-2.1.3"
       sources."one-time-1.0.0"
       sources."process-nextick-args-2.0.1"
+      sources."prom-client-13.1.0"
       sources."readable-stream-3.6.0"
       sources."requires-port-1.0.0"
       sources."safe-buffer-5.2.1"
       sources."simple-swizzle-0.2.2"
       sources."stack-trace-0.0.10"
-      sources."statsd-parser-0.0.4"
       sources."strftime-0.10.0"
       sources."string_decoder-1.3.0"
+      sources."tdigest-0.1.1"
       sources."text-hex-1.0.0"
       sources."triple-beam-1.3.0"
       sources."util-deprecate-1.0.2"
@@ -72569,13 +72999,12 @@ in
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
-      sources."@npmcli/ci-detect-1.3.0"
-      sources."@npmcli/git-2.0.8"
+      sources."@npmcli/git-2.0.9"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
-      sources."@npmcli/run-script-1.8.4"
+      sources."@npmcli/run-script-1.8.5"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tootallnate/once-1.1.2"
@@ -72636,7 +73065,7 @@ in
       sources."braces-3.0.2"
       sources."builtins-1.0.3"
       sources."bytes-3.0.0"
-      sources."cacache-15.0.6"
+      sources."cacache-15.2.0"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."lowercase-keys-2.0.0"
@@ -72715,7 +73144,7 @@ in
       })
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
-      sources."detect-indent-6.0.0"
+      sources."detect-indent-6.1.0"
       sources."detect-newline-3.1.0"
       sources."dir-glob-3.0.1"
       sources."dot-prop-5.3.0"
@@ -72767,7 +73196,7 @@ in
       sources."find-up-2.1.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-extra-9.1.0"
       sources."fs-minipass-2.1.0"
@@ -72776,7 +73205,7 @@ in
       sources."gauge-2.7.4"
       sources."get-stream-5.2.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-dirs-2.1.0"
       sources."globby-11.0.3"
@@ -72804,9 +73233,9 @@ in
       sources."https-proxy-agent-5.0.0"
       sources."human-signals-1.1.1"
       sources."humanize-ms-1.2.1"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."import-fresh-3.3.0"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
@@ -72860,7 +73289,7 @@ in
       sources."ip-regex-2.1.0"
       sources."ipaddr.js-1.9.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-1.0.0"
@@ -72946,14 +73375,14 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."normalize-url-4.5.0"
-      sources."npm-bundled-1.1.1"
+      sources."normalize-url-4.5.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-package-arg-8.1.2"
-      sources."npm-packlist-2.1.5"
+      sources."npm-packlist-2.2.2"
       sources."npm-pick-manifest-6.1.1"
-      sources."npm-registry-fetch-9.0.0"
+      sources."npm-registry-fetch-10.1.2"
       sources."npm-run-path-4.0.1"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
@@ -72984,18 +73413,18 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."pacote-11.3.1"
+      sources."pacote-11.3.3"
       sources."parent-module-1.0.1"
       sources."parseurl-1.3.3"
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pkg-up-2.0.0"
       sources."plist-3.0.2"
@@ -73004,7 +73433,7 @@ in
       sources."promise-inflight-1.0.1"
       sources."promise-retry-2.0.1"
       sources."promzard-0.3.0"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -73075,7 +73504,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sshpk-1.16.1"
       sources."ssri-8.0.1"
       sources."statuses-1.5.0"
@@ -73088,7 +73517,7 @@ in
       sources."strip-final-newline-2.0.0"
       sources."strip-json-comments-2.0.1"
       sources."supports-color-7.2.0"
-      sources."systeminformation-4.34.20"
+      sources."systeminformation-4.34.23"
       sources."tar-6.1.0"
       sources."term-size-2.2.1"
       sources."through-2.3.8"
@@ -73173,14 +73602,14 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@types/glob-7.1.3"
       sources."@types/minimatch-3.0.4"
       sources."@types/minimist-1.2.1"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."aggregate-error-3.1.0"
       sources."ansi-styles-3.2.1"
@@ -73289,7 +73718,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -73320,7 +73749,7 @@ in
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-0.1.1"
@@ -73407,7 +73836,7 @@ in
       sources."path-dirname-1.0.2"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       (sources."path-type-3.0.0" // {
         dependencies = [
           sources."pify-3.0.0"
@@ -73475,7 +73904,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       (sources."static-extend-0.1.2" // {
         dependencies = [
@@ -73503,7 +73932,7 @@ in
       })
       sources."to-regex-3.0.2"
       sources."to-regex-range-2.1.1"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."type-fest-0.13.1"
       sources."union-value-1.0.1"
       (sources."unset-value-1.0.0" // {
@@ -73551,7 +73980,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.2"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -73640,7 +74069,7 @@ in
       sources."mute-stream-0.0.7"
       sources."next-tick-1.0.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."onetime-2.0.1"
       sources."os-tmpdir-1.0.2"
@@ -73729,7 +74158,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.12"
       sources."fstream-ignore-1.0.5"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-flag-4.0.0"
       sources."hyperquest-2.1.3"
@@ -74080,7 +74509,7 @@ in
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."global-4.4.0"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
@@ -74145,7 +74574,7 @@ in
       sources."is-redirect-1.0.0"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
+      sources."is-string-1.0.6"
       sources."is-typedarray-1.0.0"
       sources."is-windows-1.0.2"
       sources."isarray-1.0.0"
@@ -74202,7 +74631,11 @@ in
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.3"
       sources."multi-random-access-2.1.1"
-      sources."multicast-dns-7.2.2"
+      (sources."multicast-dns-7.2.3" // {
+        dependencies = [
+          sources."dns-packet-5.2.4"
+        ];
+      })
       sources."multistream-2.1.1"
       sources."mute-stream-0.0.8"
       sources."mutexify-1.3.1"
@@ -74317,7 +74750,11 @@ in
       sources."simple-concat-1.0.1"
       sources."simple-get-3.1.0"
       sources."simple-sha1-2.1.2"
-      sources."siphash24-1.1.1"
+      (sources."siphash24-1.2.0" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
       sources."slice-ansi-1.0.0"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
@@ -74458,7 +74895,7 @@ in
       sources."use-3.1.1"
       sources."util-deprecate-1.0.2"
       sources."utile-0.3.0"
-      (sources."utp-native-2.4.0" // {
+      (sources."utp-native-2.5.0" // {
         dependencies = [
           sources."node-gyp-build-4.2.3"
           sources."readable-stream-3.6.0"
@@ -74518,10 +74955,10 @@ in
   diagnostic-languageserver = nodeEnv.buildNodePackage {
     name = "diagnostic-languageserver";
     packageName = "diagnostic-languageserver";
-    version = "1.8.1";
+    version = "1.11.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/diagnostic-languageserver/-/diagnostic-languageserver-1.8.1.tgz";
-      sha512 = "W8lFslQXZ6HEjy9Ba7jLYDzqJZFkWVINWZjNDUZslozm2ZLMH7QWNIa74DKZXLA972ZgY8iJ0WIMxn0Y4+1POw==";
+      url = "https://registry.npmjs.org/diagnostic-languageserver/-/diagnostic-languageserver-1.11.0.tgz";
+      sha512 = "4kjsgc/rV+qtH3dTqEnR/ug36yKNjyo5z674ySkD6k08DwlLs10fsP/I+d8BAsbtjpL36bqZxLa9iNgTDqioXQ==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.4"
@@ -74543,7 +74980,7 @@ in
       sources."fill-range-7.0.1"
       sources."find-up-4.1.0"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."globby-11.0.3"
       sources."graceful-fs-4.2.6"
@@ -74570,7 +75007,7 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."queue-microtask-1.2.3"
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
@@ -74653,15 +75090,15 @@ in
   elasticdump = nodeEnv.buildNodePackage {
     name = "elasticdump";
     packageName = "elasticdump";
-    version = "6.68.1";
+    version = "6.71.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.68.1.tgz";
-      sha512 = "OGsAZGrhHIJw4koiMJ1U80eVJIcpKsN6u7Iq+d1Tu3TJvBSvYHShM3SllYbsbFzIdt8kBNj3XWsogajUpeX0+w==";
+      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.71.0.tgz";
+      sha512 = "bx902tD9qzZFnM7YbL9KOqdcE8iW1KKEyxdvE5rEJVdzny7FMHpLRF/YpP+bjKdXvnCcZMNsePqNum+i2qp8Ng==";
     };
     dependencies = [
       sources."@fast-csv/format-4.3.5"
       sources."@fast-csv/parse-4.3.6"
-      sources."@types/node-14.14.41"
+      sources."@types/node-14.17.1"
       sources."JSONStream-1.3.5"
       sources."ajv-6.12.6"
       sources."asn1-0.2.4"
@@ -74799,30 +75236,30 @@ in
   "@electron-forge/cli" = nodeEnv.buildNodePackage {
     name = "_at_electron-forge_slash_cli";
     packageName = "@electron-forge/cli";
-    version = "6.0.0-beta.54";
+    version = "6.0.0-beta.57";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.54.tgz";
-      sha512 = "+Ui1BI8c5CnBawH2OEySa5QR8DzrFd/I9FHlClvrTsIDfsBAeMSv9NTbSNcmo9Af5kI+aNsLQa8tp1vD8DNrng==";
+      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.57.tgz";
+      sha512 = "ouIL3FI6C0W3iLwwwQzKufjoP/OZagUDMCDjGLN/dqeg+lZ+cR40bdfaNTFha9ajz+zSe2SmhCOMVUVNNkJ5Sg==";
     };
     dependencies = [
-      sources."@electron-forge/async-ora-6.0.0-beta.54"
-      sources."@electron-forge/core-6.0.0-beta.54"
-      sources."@electron-forge/installer-base-6.0.0-beta.54"
-      sources."@electron-forge/installer-darwin-6.0.0-beta.54"
-      sources."@electron-forge/installer-deb-6.0.0-beta.54"
-      sources."@electron-forge/installer-dmg-6.0.0-beta.54"
-      sources."@electron-forge/installer-exe-6.0.0-beta.54"
-      sources."@electron-forge/installer-linux-6.0.0-beta.54"
-      sources."@electron-forge/installer-rpm-6.0.0-beta.54"
-      sources."@electron-forge/installer-zip-6.0.0-beta.54"
-      sources."@electron-forge/maker-base-6.0.0-beta.54"
-      sources."@electron-forge/plugin-base-6.0.0-beta.54"
-      sources."@electron-forge/publisher-base-6.0.0-beta.54"
-      sources."@electron-forge/shared-types-6.0.0-beta.54"
-      sources."@electron-forge/template-base-6.0.0-beta.54"
-      sources."@electron-forge/template-typescript-6.0.0-beta.54"
-      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.54"
-      sources."@electron-forge/template-webpack-6.0.0-beta.54"
+      sources."@electron-forge/async-ora-6.0.0-beta.57"
+      sources."@electron-forge/core-6.0.0-beta.57"
+      sources."@electron-forge/installer-base-6.0.0-beta.57"
+      sources."@electron-forge/installer-darwin-6.0.0-beta.57"
+      sources."@electron-forge/installer-deb-6.0.0-beta.57"
+      sources."@electron-forge/installer-dmg-6.0.0-beta.57"
+      sources."@electron-forge/installer-exe-6.0.0-beta.57"
+      sources."@electron-forge/installer-linux-6.0.0-beta.57"
+      sources."@electron-forge/installer-rpm-6.0.0-beta.57"
+      sources."@electron-forge/installer-zip-6.0.0-beta.57"
+      sources."@electron-forge/maker-base-6.0.0-beta.57"
+      sources."@electron-forge/plugin-base-6.0.0-beta.57"
+      sources."@electron-forge/publisher-base-6.0.0-beta.57"
+      sources."@electron-forge/shared-types-6.0.0-beta.57"
+      sources."@electron-forge/template-base-6.0.0-beta.57"
+      sources."@electron-forge/template-typescript-6.0.0-beta.57"
+      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.57"
+      sources."@electron-forge/template-webpack-6.0.0-beta.57"
       (sources."@electron/get-1.12.4" // {
         dependencies = [
           sources."@sindresorhus/is-0.14.0"
@@ -74839,22 +75276,24 @@ in
           sources."get-stream-4.1.0"
           sources."got-9.6.0"
           sources."json-buffer-3.0.0"
+          sources."jsonfile-4.0.0"
           sources."keyv-3.1.0"
           sources."lowercase-keys-1.0.1"
           sources."p-cancelable-1.1.0"
           sources."responselike-1.0.2"
           sources."semver-6.3.0"
+          sources."universalify-0.1.2"
         ];
       })
       sources."@malept/cross-spawn-promise-1.1.1"
-      sources."@sindresorhus/is-4.0.0"
+      sources."@sindresorhus/is-4.0.1"
       sources."@szmarczak/http-timer-4.0.5"
       sources."@types/cacheable-request-6.0.1"
       sources."@types/glob-7.1.3"
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/responselike-1.0.0"
       sources."@types/yauzl-2.9.1"
       sources."abbrev-1.1.1"
@@ -74892,7 +75331,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."bl-4.1.0"
       sources."bluebird-3.7.2"
-      sources."boolean-3.0.3"
+      sources."boolean-3.1.0"
       sources."brace-expansion-1.1.11"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
@@ -74905,7 +75344,7 @@ in
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."chownr-1.1.4"
       sources."chromium-pickle-js-0.2.0"
@@ -74930,7 +75369,7 @@ in
       sources."concat-map-0.0.1"
       sources."config-chain-1.1.12"
       sources."console-control-strings-1.1.0"
-      sources."core-js-3.10.1"
+      sources."core-js-3.13.1"
       sources."core-util-is-1.0.2"
       sources."cross-spawn-7.0.3"
       sources."currently-unhandled-0.4.1"
@@ -74949,6 +75388,7 @@ in
       sources."deep-extend-0.6.0"
       sources."defaults-1.0.3"
       sources."defer-to-connect-2.0.1"
+      sources."define-lazy-prop-2.0.0"
       (sources."define-properties-1.1.3" // {
         dependencies = [
           sources."object-keys-1.1.1"
@@ -74957,17 +75397,29 @@ in
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."detect-libc-1.0.3"
-      sources."detect-node-2.0.5"
+      sources."detect-node-2.1.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-notarize-1.0.0"
+      (sources."electron-notarize-1.0.0" // {
+        dependencies = [
+          sources."fs-extra-9.1.0"
+        ];
+      })
       (sources."electron-osx-sign-0.5.0" // {
         dependencies = [
           sources."debug-2.6.9"
         ];
       })
-      sources."electron-packager-15.2.0"
-      sources."electron-rebuild-2.3.5"
+      (sources."electron-packager-15.2.0" // {
+        dependencies = [
+          sources."fs-extra-9.1.0"
+        ];
+      })
+      (sources."electron-rebuild-2.3.5" // {
+        dependencies = [
+          sources."fs-extra-9.1.0"
+        ];
+      })
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -74997,7 +75449,7 @@ in
       sources."fd-slicer-1.1.0"
       sources."figures-3.2.0"
       sources."filename-reserved-regex-2.0.0"
-      sources."filenamify-4.2.0"
+      sources."filenamify-4.3.0"
       (sources."find-up-5.0.0" // {
         dependencies = [
           sources."locate-path-6.0.0"
@@ -75009,16 +75461,13 @@ in
       (sources."flora-colossus-1.0.1" // {
         dependencies = [
           sources."fs-extra-7.0.1"
+          sources."jsonfile-4.0.0"
+          sources."universalify-0.1.2"
         ];
       })
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      (sources."fs-extra-9.1.0" // {
-        dependencies = [
-          sources."jsonfile-6.1.0"
-          sources."universalify-2.0.0"
-        ];
-      })
+      sources."fs-extra-10.0.0"
       sources."fs-minipass-1.2.7"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
@@ -75026,7 +75475,9 @@ in
         dependencies = [
           sources."debug-3.2.7"
           sources."fs-extra-4.0.3"
+          sources."jsonfile-4.0.0"
           sources."ms-2.1.3"
+          sources."universalify-0.1.2"
         ];
       })
       (sources."gauge-2.7.4" // {
@@ -75045,7 +75496,7 @@ in
       sources."get-stdin-4.0.1"
       sources."get-stream-5.2.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."global-agent-2.2.0"
       sources."global-modules-1.0.0"
       (sources."global-prefix-1.0.2" // {
@@ -75069,19 +75520,19 @@ in
       sources."http2-wrapper-1.0.3"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."indent-string-2.1.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      (sources."inquirer-7.3.3" // {
+      (sources."inquirer-8.1.0" // {
         dependencies = [
           sources."is-fullwidth-code-point-3.0.0"
           sources."string-width-4.2.2"
         ];
       })
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-docker-2.2.1"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
@@ -75101,7 +75552,7 @@ in
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
-      sources."jsonfile-4.0.0"
+      sources."jsonfile-6.1.0"
       sources."jsprim-1.4.1"
       sources."junk-3.1.0"
       sources."keyv-4.0.3"
@@ -75161,7 +75612,7 @@ in
         ];
       })
       sources."nice-try-1.0.5"
-      (sources."node-abi-2.21.0" // {
+      (sources."node-abi-2.30.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
@@ -75186,8 +75637,8 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."normalize-url-4.5.0"
-      sources."npm-bundled-1.1.1"
+      sources."normalize-url-4.5.1"
+      sources."npm-bundled-1.1.2"
       (sources."npm-conf-1.1.3" // {
         dependencies = [
           sources."pify-3.0.0"
@@ -75212,12 +75663,12 @@ in
       sources."object-keys-0.4.0"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."open-7.4.2"
+      sources."open-8.2.0"
       sources."ora-5.4.0"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
@@ -75231,7 +75682,7 @@ in
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-2.0.0"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
@@ -75300,7 +75751,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."speedometer-0.1.4"
       sources."sprintf-js-1.1.2"
       sources."sshpk-1.16.1"
@@ -75349,7 +75800,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."type-fest-0.13.1"
-      sources."universalify-0.1.2"
+      sources."universalify-2.0.0"
       sources."uri-js-4.4.1"
       sources."url-parse-lax-3.0.0"
       sources."username-5.1.0"
@@ -75430,50 +75881,50 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.13.9"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
+      sources."@babel/helpers-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
       sources."@babel/plugin-syntax-jsx-7.12.13"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
-      sources."@babel/plugin-transform-parameters-7.13.0"
-      sources."@babel/plugin-transform-react-jsx-7.13.12"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
+      sources."@babel/plugin-transform-parameters-7.14.2"
+      sources."@babel/plugin-transform-react-jsx-7.14.3"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
-      sources."@sindresorhus/is-4.0.0"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
+      sources."@sindresorhus/is-4.0.1"
       sources."@szmarczak/http-timer-4.0.5"
       sources."@types/cacheable-request-6.0.1"
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
       sources."@types/minimist-1.2.1"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/responselike-1.0.0"
       sources."@types/yoga-layout-1.9.2"
@@ -75492,7 +75943,7 @@ in
       sources."auto-bind-4.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."cacheable-lookup-5.0.4"
       (sources."cacheable-request-7.0.1" // {
         dependencies = [
@@ -75508,7 +75959,7 @@ in
           sources."quick-lru-4.0.1"
         ];
       })
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."chalk-2.4.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -75545,7 +75996,7 @@ in
       })
       sources."defer-to-connect-2.0.1"
       sources."dot-prop-5.3.0"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-8.0.0"
       sources."emojilib-2.4.0"
       sources."end-of-stream-1.4.4"
@@ -75562,7 +76013,7 @@ in
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.2"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."globals-11.12.0"
       sources."got-11.8.2"
       sources."hard-rejection-2.1.0"
@@ -75578,7 +76029,7 @@ in
       (sources."ink-3.0.8" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
@@ -75588,7 +76039,7 @@ in
       (sources."ink-text-input-4.0.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
@@ -75598,7 +76049,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-obj-2.0.0"
@@ -75642,9 +76093,9 @@ in
       sources."minimist-options-4.1.0"
       sources."ms-2.1.2"
       sources."nice-try-1.0.5"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."normalize-package-data-2.5.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-run-path-2.0.2"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
@@ -75653,7 +76104,7 @@ in
           sources."mimic-fn-2.1.0"
         ];
       })
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-limit-2.3.0"
@@ -75664,7 +76115,7 @@ in
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       (sources."pkg-dir-4.2.0" // {
         dependencies = [
           sources."find-up-4.1.0"
@@ -75679,7 +76130,7 @@ in
       sources."punycode-2.1.1"
       sources."quick-lru-5.1.1"
       sources."react-16.14.0"
-      sources."react-devtools-core-4.12.2"
+      sources."react-devtools-core-4.13.5"
       sources."react-is-16.13.1"
       sources."react-reconciler-0.24.0"
       (sources."read-pkg-5.2.0" // {
@@ -75722,7 +76173,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       (sources."stack-utils-2.0.3" // {
         dependencies = [
           sources."escape-string-regexp-2.0.0"
@@ -75741,7 +76192,7 @@ in
       sources."strip-indent-3.0.0"
       sources."supports-color-5.5.0"
       sources."to-fast-properties-2.0.0"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."type-fest-0.12.0"
       sources."unicode-emoji-modifier-base-1.0.0"
       sources."uri-js-4.4.1"
@@ -75756,7 +76207,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."yallist-4.0.0"
       sources."yargs-parser-18.1.3"
       sources."yoga-layout-prebuilt-1.10.0"
@@ -75795,8 +76246,8 @@ in
     src = ../../applications/video/epgstation;
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -75805,8 +76256,8 @@ in
       })
       sources."@fluentui/date-time-utilities-7.9.1"
       sources."@fluentui/dom-utilities-1.1.2"
-      sources."@fluentui/keyboard-key-0.2.16"
-      sources."@fluentui/react-7.168.0"
+      sources."@fluentui/keyboard-key-0.2.17"
+      sources."@fluentui/react-7.170.1"
       sources."@fluentui/react-focus-7.17.6"
       sources."@fluentui/react-window-provider-1.0.2"
       sources."@fluentui/theme-1.7.4"
@@ -75820,7 +76271,7 @@ in
           sources."normalize-path-2.1.1"
         ];
       })
-      sources."@microsoft/load-themed-styles-1.10.161"
+      sources."@microsoft/load-themed-styles-1.10.174"
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
@@ -75838,7 +76289,7 @@ in
       sources."@types/connect-3.4.34"
       sources."@types/engine.io-3.1.5"
       sources."@types/express-4.17.8"
-      sources."@types/express-serve-static-core-4.17.19"
+      sources."@types/express-serve-static-core-4.17.20"
       sources."@types/fancy-log-1.3.0"
       sources."@types/glob-7.1.3"
       sources."@types/hls.js-0.13.1"
@@ -76054,7 +76505,7 @@ in
         ];
       })
       sources."bytes-3.1.0"
-      (sources."cacache-15.0.6" // {
+      (sources."cacache-15.2.0" // {
         dependencies = [
           sources."chownr-2.0.0"
           sources."fs-minipass-2.1.0"
@@ -76244,7 +76695,7 @@ in
       sources."dir-glob-3.0.1"
       sources."diskusage-1.1.3"
       sources."domain-browser-1.2.0"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       (sources."duplexify-3.7.1" // {
         dependencies = [
@@ -76266,7 +76717,7 @@ in
       sources."encodeurl-1.0.2"
       (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."end-of-stream-1.4.4"
@@ -76389,7 +76840,7 @@ in
       sources."for-own-1.0.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       (sources."from2-2.3.0" // {
@@ -76429,7 +76880,7 @@ in
       sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       (sources."glob-stream-6.1.0" // {
         dependencies = [
@@ -76532,7 +76983,7 @@ in
       sources."ieee754-1.2.1"
       sources."iferr-0.1.5"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
       sources."indexof-0.0.1"
@@ -76550,7 +77001,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-dir-1.0.0"
@@ -76817,9 +77268,9 @@ in
         ];
       })
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."now-and-later-2.0.1"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-packlist-1.4.8"
       sources."npmlog-4.1.2"
@@ -76847,7 +77298,7 @@ in
       sources."object.map-1.0.1"
       sources."object.pick-1.3.0"
       sources."object.reduce-1.0.1"
-      sources."office-ui-fabric-react-7.168.0"
+      sources."office-ui-fabric-react-7.170.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
@@ -76948,7 +77399,7 @@ in
       sources."path-dirname-1.0.2"
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-root-0.1.1"
       sources."path-root-regex-0.1.2"
       sources."path-to-regexp-0.1.7"
@@ -76966,7 +77417,7 @@ in
       sources."pg-protocol-1.5.0"
       sources."pg-types-2.2.0"
       sources."pgpass-1.0.4"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -76989,7 +77440,7 @@ in
       sources."promise-inflight-1.0.1"
       sources."promise-queue-2.2.5"
       sources."prop-types-15.7.2"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."prr-1.0.1"
       sources."psl-1.8.0"
       (sources."public-encrypt-4.0.3" // {
@@ -77074,7 +77525,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
-      (sources."sass-1.32.10" // {
+      (sources."sass-1.34.0" // {
         dependencies = [
           sources."anymatch-3.1.2"
           sources."binary-extensions-2.2.0"
@@ -77175,7 +77626,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."split2-3.2.2"
       sources."sprintf-js-1.0.3"
@@ -77259,7 +77710,7 @@ in
           sources."yallist-3.1.1"
         ];
       })
-      (sources."terser-5.6.1" // {
+      (sources."terser-5.7.0" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
@@ -77349,7 +77800,7 @@ in
       })
       sources."url-join-4.0.1"
       sources."url-parse-lax-3.0.0"
-      sources."url-toolkit-2.2.1"
+      sources."url-toolkit-2.2.2"
       sources."use-3.1.1"
       sources."util-0.11.1"
       sources."util-deprecate-1.0.2"
@@ -77444,18 +77895,18 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."xtend-4.0.2"
       sources."y18n-3.2.2"
       sources."yallist-4.0.0"
-      (sources."yargs-7.1.1" // {
+      (sources."yargs-7.1.2" // {
         dependencies = [
           sources."is-fullwidth-code-point-1.0.0"
           sources."string-width-1.0.2"
         ];
       })
-      sources."yargs-parser-5.0.0-security.0"
+      sources."yargs-parser-5.0.1"
       sources."yeast-0.1.2"
       sources."yocto-queue-0.1.0"
     ];
@@ -77490,20 +77941,21 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "7.24.0";
+    version = "7.27.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-7.24.0.tgz";
-      sha512 = "k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz";
+      sha512 = "JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."globals-12.4.0"
         ];
@@ -77518,9 +77970,8 @@ in
       sources."astral-regex-2.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -77538,14 +77989,14 @@ in
       sources."doctrine-3.0.0"
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
-      sources."escape-string-regexp-1.0.5"
+      sources."escape-string-regexp-4.0.0"
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
         ];
       })
-      sources."eslint-visitor-keys-2.0.0"
+      sources."eslint-visitor-keys-2.1.0"
       (sources."espree-7.3.1" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
@@ -77571,39 +78022,31 @@ in
       sources."flat-cache-3.0.4"
       sources."flatted-3.1.1"
       sources."fs.realpath-1.0.0"
-      sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
-      sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      (sources."globals-13.8.0" // {
+      (sources."globals-13.9.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
       })
-      sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.2"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-boolean-object-1.1.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-string-1.0.5"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
       sources."levn-0.4.1"
-      sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
+      sources."lodash.merge-4.6.2"
       sources."lodash.truncate-4.4.2"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.0.4"
@@ -77636,9 +78079,9 @@ in
       sources."strip-ansi-6.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-5.5.0"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -77665,22 +78108,23 @@ in
   eslint_d = nodeEnv.buildNodePackage {
     name = "eslint_d";
     packageName = "eslint_d";
-    version = "10.0.4";
+    version = "10.1.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-10.0.4.tgz";
-      sha512 = "DEJaGxP6VDs3byYKQYw6Py8l2b1KH9S5vUo4IjvhWIEcdo5gjNkJjjzUCoExTIb0Bo7/GbKyNRI/dctUQ5f+7w==";
+      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-10.1.3.tgz";
+      sha512 = "B8ESWH1KrLNgV0CR9r/Mc4lbgArnbWIuHnHrJlmuWx+02UriPXNnk4+nNFakzXHRh/sTHeCA4LiArkSfIqsfsw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
           sources."has-flag-3.0.0"
           sources."supports-color-5.5.0"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."globals-12.4.0"
         ];
@@ -77695,9 +78139,8 @@ in
       sources."astral-regex-2.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -77708,22 +78151,22 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."concat-map-0.0.1"
-      sources."core_d-3.0.0"
+      sources."core_d-3.2.0"
       sources."cross-spawn-7.0.3"
       sources."debug-4.3.2"
       sources."deep-is-0.1.3"
       sources."doctrine-3.0.0"
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
-      sources."escape-string-regexp-1.0.5"
-      sources."eslint-7.24.0"
+      sources."escape-string-regexp-4.0.0"
+      sources."eslint-7.27.0"
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
         ];
       })
-      sources."eslint-visitor-keys-2.0.0"
+      sources."eslint-visitor-keys-2.1.0"
       (sources."espree-7.3.1" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
@@ -77749,39 +78192,31 @@ in
       sources."flat-cache-3.0.4"
       sources."flatted-3.1.1"
       sources."fs.realpath-1.0.0"
-      sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
-      sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      (sources."globals-13.8.0" // {
+      (sources."globals-13.9.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
       })
-      sources."has-1.0.3"
       sources."has-flag-4.0.0"
-      sources."has-symbols-1.0.2"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-boolean-object-1.1.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-string-1.0.5"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
       sources."levn-0.4.1"
-      sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
+      sources."lodash.merge-4.6.2"
       sources."lodash.truncate-4.4.2"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.0.4"
@@ -77815,9 +78250,9 @@ in
       sources."strip-ansi-6.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-8.1.1"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -77861,70 +78296,70 @@ in
   expo-cli = nodeEnv.buildNodePackage {
     name = "expo-cli";
     packageName = "expo-cli";
-    version = "4.4.1";
+    version = "4.5.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/expo-cli/-/expo-cli-4.4.1.tgz";
-      sha512 = "yJS0aHxzkaKmd55hppBxn+s7KCxRXFbqlZF5r2v2eE3vmLlDEnPWI8WQ//algAZO52nYCJtZBOa2EswESdK66g==";
+      url = "https://registry.npmjs.org/expo-cli/-/expo-cli-4.5.2.tgz";
+      sha512 = "r6SeIMk2ZP1/rSKGcXquiQp/A7MGAmJvG0otmJhlO5ypdYXfAJ1fhEJIqt7ufSngc5RRJ0cjnKZ1WBSyJlJTNA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
+      sources."@babel/compat-data-7.14.4"
       (sources."@babel/core-7.9.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/generator-7.13.9"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      (sources."@babel/helper-define-polyfill-provider-0.2.0" // {
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.13.15"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/parser-7.14.4"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.12.13"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
       sources."@babel/plugin-proposal-export-default-from-7.12.13"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
@@ -77946,10 +78381,10 @@ in
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -77958,23 +78393,23 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-assign-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
-      sources."@babel/plugin-transform-react-display-name-7.12.13"
-      sources."@babel/plugin-transform-react-jsx-7.13.12"
+      sources."@babel/plugin-transform-react-display-name-7.14.2"
+      sources."@babel/plugin-transform-react-jsx-7.14.3"
       sources."@babel/plugin-transform-react-jsx-self-7.12.13"
-      sources."@babel/plugin-transform-react-jsx-source-7.12.13"
+      sources."@babel/plugin-transform-react-jsx-source-7.14.2"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
-      (sources."@babel/plugin-transform-runtime-7.13.15" // {
+      (sources."@babel/plugin-transform-runtime-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -77984,7 +78419,7 @@ in
       sources."@babel/plugin-transform-sticky-regex-7.12.13"
       sources."@babel/plugin-transform-template-literals-7.13.0"
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
-      sources."@babel/plugin-transform-typescript-7.13.0"
+      sources."@babel/plugin-transform-typescript-7.14.4"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
       (sources."@babel/preset-env-7.12.17" // {
@@ -77994,22 +78429,22 @@ in
       })
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-typescript-7.12.17"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
-      sources."@expo/apple-utils-0.0.0-alpha.17"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
+      sources."@expo/apple-utils-0.0.0-alpha.20"
       sources."@expo/bunyan-4.0.0"
-      sources."@expo/config-3.3.36"
-      sources."@expo/config-plugins-1.0.26"
-      sources."@expo/config-types-40.0.0-beta.2"
-      (sources."@expo/configure-splash-screen-0.3.4" // {
+      sources."@expo/config-4.0.2"
+      sources."@expo/config-plugins-2.0.2"
+      sources."@expo/config-types-41.0.0"
+      (sources."@expo/configure-splash-screen-0.4.0" // {
         dependencies = [
           sources."commander-5.1.0"
           sources."pngjs-5.0.0"
         ];
       })
-      (sources."@expo/dev-server-0.1.62" // {
+      (sources."@expo/dev-server-0.1.72" // {
         dependencies = [
           sources."body-parser-1.19.0"
           sources."bytes-3.1.0"
@@ -78018,13 +78453,15 @@ in
           sources."iconv-lite-0.4.24"
           sources."inherits-2.0.3"
           sources."ms-2.0.0"
+          sources."open-8.2.0"
           sources."qs-6.7.0"
           sources."raw-body-2.4.0"
           sources."setprototypeof-1.1.1"
           sources."statuses-1.5.0"
+          sources."temp-dir-2.0.0"
         ];
       })
-      sources."@expo/dev-tools-0.13.92"
+      sources."@expo/dev-tools-0.13.102"
       (sources."@expo/devcert-1.0.0" // {
         dependencies = [
           sources."debug-3.2.7"
@@ -78032,33 +78469,35 @@ in
           sources."sudo-prompt-8.2.5"
         ];
       })
-      (sources."@expo/image-utils-0.3.12" // {
+      (sources."@expo/image-utils-0.3.14" // {
         dependencies = [
+          sources."mime-2.5.2"
           sources."tempy-0.3.0"
         ];
       })
-      (sources."@expo/json-file-8.2.28" // {
+      (sources."@expo/json-file-8.2.30" // {
         dependencies = [
           sources."@babel/code-frame-7.10.4"
           sources."json5-1.0.1"
         ];
       })
-      sources."@expo/metro-config-0.1.62"
-      sources."@expo/osascript-2.0.25"
-      (sources."@expo/package-manager-0.0.40" // {
+      sources."@expo/metro-config-0.1.72"
+      sources."@expo/osascript-2.0.28"
+      (sources."@expo/package-manager-0.0.43" // {
         dependencies = [
           sources."npm-package-arg-7.0.0"
           sources."rimraf-3.0.2"
           sources."semver-5.7.1"
         ];
       })
-      (sources."@expo/plist-0.0.12" // {
+      (sources."@expo/plist-0.0.13" // {
         dependencies = [
           sources."xmlbuilder-14.0.0"
         ];
       })
+      sources."@expo/prebuild-config-1.0.3"
       sources."@expo/results-1.0.0"
-      (sources."@expo/schemer-1.3.27" // {
+      (sources."@expo/schemer-1.3.29" // {
         dependencies = [
           sources."ajv-5.5.2"
           sources."fast-deep-equal-1.1.0"
@@ -78067,13 +78506,13 @@ in
       })
       sources."@expo/simple-spinner-1.0.2"
       sources."@expo/spawn-async-1.5.0"
-      (sources."@expo/webpack-config-0.12.66" // {
+      (sources."@expo/webpack-config-0.12.76" // {
         dependencies = [
           sources."@babel/runtime-7.9.0"
           sources."react-refresh-0.8.3"
         ];
       })
-      (sources."@expo/xcpretty-2.0.0" // {
+      (sources."@expo/xcpretty-2.0.1" // {
         dependencies = [
           sources."@babel/code-frame-7.10.4"
         ];
@@ -78128,8 +78567,7 @@ in
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
-      sources."@npmcli/ci-detect-1.3.0"
-      (sources."@npmcli/git-2.0.8" // {
+      (sources."@npmcli/git-2.0.9" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."semver-7.3.5"
@@ -78145,7 +78583,7 @@ in
       })
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
-      sources."@npmcli/run-script-1.8.4"
+      sources."@npmcli/run-script-1.8.5"
       sources."@pmmmwh/react-refresh-webpack-plugin-0.3.3"
       sources."@react-native-community/cli-debugger-ui-4.13.1"
       (sources."@react-native-community/cli-server-api-4.9.0" // {
@@ -78157,22 +78595,21 @@ in
       (sources."@react-native-community/cli-tools-4.13.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."array-filter-0.0.1"
           sources."chalk-3.0.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
           sources."is-wsl-1.1.0"
+          sources."mime-2.5.2"
           sources."open-6.4.0"
           sources."shell-quote-1.6.1"
           sources."supports-color-7.2.0"
         ];
       })
       sources."@segment/loosely-validate-event-2.0.0"
-      sources."@sindresorhus/is-4.0.0"
+      sources."@sindresorhus/is-4.0.1"
       sources."@szmarczak/http-timer-4.0.5"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/anymatch-1.3.1"
       sources."@types/cacheable-request-6.0.1"
       sources."@types/glob-7.1.3"
       sources."@types/html-minifier-terser-5.1.1"
@@ -78194,7 +78631,7 @@ in
           sources."source-map-0.6.1"
         ];
       })
-      (sources."@types/webpack-4.41.27" // {
+      (sources."@types/webpack-4.41.29" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -78271,7 +78708,7 @@ in
       sources."arr-diff-4.0.0"
       sources."arr-flatten-1.1.0"
       sources."arr-union-3.1.0"
-      sources."array-filter-1.0.0"
+      sources."array-filter-0.0.1"
       sources."array-flatten-1.1.1"
       sources."array-map-0.0.0"
       sources."array-reduce-0.0.0"
@@ -78299,7 +78736,6 @@ in
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
       sources."atob-2.1.2"
-      sources."available-typed-arrays-1.0.2"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."axios-0.21.1"
@@ -78312,20 +78748,19 @@ in
         ];
       })
       sources."babel-plugin-dynamic-import-node-2.3.3"
-      (sources."babel-plugin-polyfill-corejs2-0.2.0" // {
+      (sources."babel-plugin-polyfill-corejs2-0.2.2" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       sources."babel-plugin-syntax-object-rest-spread-6.13.0"
       sources."babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0"
       sources."babel-plugin-transform-object-rest-spread-6.26.0"
-      sources."babel-preset-fbjs-3.3.0"
+      sources."babel-preset-fbjs-3.4.0"
       (sources."babel-runtime-6.26.0" // {
         dependencies = [
-          sources."core-js-2.6.12"
           sources."regenerator-runtime-0.11.1"
         ];
       })
@@ -78358,7 +78793,6 @@ in
       (sources."bonjour-3.5.0" // {
         dependencies = [
           sources."array-flatten-2.1.2"
-          sources."deep-equal-1.1.1"
         ];
       })
       sources."boolbase-1.0.0"
@@ -78384,7 +78818,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."buffer-5.7.1"
       sources."buffer-equal-0.0.1"
       sources."buffer-from-1.1.1"
@@ -78393,7 +78827,7 @@ in
       sources."builtin-status-codes-3.0.0"
       sources."builtins-1.0.3"
       sources."bytes-3.0.0"
-      (sources."cacache-15.0.6" // {
+      (sources."cacache-15.2.0" // {
         dependencies = [
           sources."minipass-3.1.3"
           sources."mkdirp-1.0.4"
@@ -78415,9 +78849,9 @@ in
       })
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."caseless-0.12.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -78430,7 +78864,7 @@ in
       sources."chokidar-3.5.1"
       sources."chownr-2.0.0"
       sources."chrome-trace-event-1.0.3"
-      sources."ci-info-3.1.1"
+      sources."ci-info-3.2.0"
       sources."cipher-base-1.0.4"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -78548,8 +78982,8 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."core-js-3.10.1"
-      (sources."core-js-compat-3.10.1" // {
+      sources."core-js-2.6.12"
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -78625,13 +79059,14 @@ in
           sources."mimic-response-3.1.0"
         ];
       })
-      sources."deep-equal-2.0.5"
+      sources."deep-equal-1.1.1"
       sources."deep-extend-0.6.0"
       sources."deep-scope-analyser-1.7.0"
       sources."deepmerge-4.2.2"
       sources."default-gateway-4.2.0"
       sources."defaults-1.0.3"
       sources."defer-to-connect-2.0.1"
+      sources."define-lazy-prop-2.0.0"
       sources."define-properties-1.1.3"
       sources."define-property-2.0.2"
       (sources."del-6.0.0" // {
@@ -78645,7 +79080,7 @@ in
       sources."deprecated-decorator-0.1.6"
       sources."des.js-1.0.1"
       sources."destroy-1.0.4"
-      sources."detect-node-2.0.5"
+      sources."detect-node-2.1.0"
       (sources."detect-port-alt-1.1.6" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -78659,10 +79094,10 @@ in
       })
       sources."dir-glob-3.0.1"
       sources."dns-equal-1.0.0"
-      sources."dns-packet-1.3.1"
+      sources."dns-packet-1.3.4"
       sources."dns-txt-2.0.2"
       sources."dom-converter-0.2.0"
-      (sources."dom-serializer-1.3.1" // {
+      (sources."dom-serializer-1.3.2" // {
         dependencies = [
           sources."domhandler-4.2.0"
         ];
@@ -78688,7 +79123,7 @@ in
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -78699,7 +79134,7 @@ in
       sources."encodeurl-1.0.2"
       (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."end-of-stream-1.4.4"
@@ -78722,8 +79157,7 @@ in
       })
       sources."error-stack-parser-2.0.6"
       sources."errorhandler-1.5.1"
-      sources."es-abstract-1.18.0"
-      sources."es-get-iterator-1.1.2"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
@@ -78770,7 +79204,7 @@ in
           sources."ms-2.0.0"
         ];
       })
-      (sources."expo-pwa-0.0.72" // {
+      (sources."expo-pwa-0.0.82" // {
         dependencies = [
           sources."commander-2.20.0"
         ];
@@ -78816,9 +79250,8 @@ in
       sources."find-up-5.0.0"
       sources."find-yarn-workspace-root-2.0.0"
       sources."flush-write-stream-1.1.1"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."for-in-1.0.2"
-      sources."foreach-2.0.5"
       sources."forever-agent-0.6.1"
       (sources."fork-ts-checker-webpack-plugin-4.1.6" // {
         dependencies = [
@@ -78844,7 +79277,7 @@ in
         ];
       })
       sources."form-data-2.5.1"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."freeport-async-2.0.0"
       sources."fresh-0.5.2"
@@ -78976,7 +79409,7 @@ in
       sources."ieee754-1.2.1"
       sources."iferr-0.1.5"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."immer-8.0.1"
       (sources."import-fresh-2.0.0" // {
         dependencies = [
@@ -79000,15 +79433,15 @@ in
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.3.2"
-      sources."is-bigint-1.0.1"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-2.1.0"
-      sources."is-boolean-object-1.1.0"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
       sources."is-directory-0.3.1"
       sources."is-docker-2.2.1"
@@ -79024,10 +79457,9 @@ in
         ];
       })
       sources."is-lambda-1.0.1"
-      sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-obj-2.0.0"
       sources."is-path-cwd-2.2.0"
       (sources."is-path-in-cwd-2.1.0" // {
@@ -79060,23 +79492,19 @@ in
           sources."responselike-1.0.2"
         ];
       })
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-regexp-1.0.0"
       sources."is-resolvable-1.1.0"
       sources."is-retry-allowed-1.2.0"
       sources."is-root-2.1.0"
-      sources."is-set-2.0.2"
       sources."is-stream-2.0.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
-      sources."is-typed-array-1.1.5"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typedarray-1.0.0"
       sources."is-valid-path-0.1.1"
-      sources."is-weakmap-2.0.1"
-      sources."is-weakset-2.0.1"
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
-      sources."isarray-2.0.5"
+      sources."isarray-1.0.0"
       sources."isemail-3.2.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
@@ -79127,11 +79555,7 @@ in
       sources."last-call-webpack-plugin-3.0.0"
       sources."latest-version-5.1.0"
       sources."leven-3.1.0"
-      (sources."load-bmfont-1.4.1" // {
-        dependencies = [
-          sources."mime-1.6.0"
-        ];
-      })
+      sources."load-bmfont-1.4.1"
       sources."loader-runner-2.4.0"
       sources."loader-utils-2.0.0"
       sources."locate-path-6.0.0"
@@ -79195,7 +79619,7 @@ in
           sources."bn.js-4.12.0"
         ];
       })
-      sources."mime-2.5.2"
+      sources."mime-1.4.1"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."mimic-fn-1.2.0"
@@ -79299,15 +79723,14 @@ in
       (sources."node-libs-browser-2.2.1" // {
         dependencies = [
           sources."buffer-4.9.2"
-          sources."isarray-1.0.0"
           sources."punycode-1.4.1"
         ];
       })
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."nopt-5.0.0"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
-      sources."npm-bundled-1.1.1"
+      sources."normalize-url-4.5.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       sources."npm-normalize-package-bin-1.0.1"
       (sources."npm-package-arg-6.1.0" // {
@@ -79316,7 +79739,7 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."npm-packlist-2.1.5"
+      sources."npm-packlist-2.2.2"
       (sources."npm-pick-manifest-6.1.1" // {
         dependencies = [
           sources."hosted-git-info-4.0.2"
@@ -79324,7 +79747,7 @@ in
           sources."semver-7.3.5"
         ];
       })
-      (sources."npm-registry-fetch-9.0.0" // {
+      (sources."npm-registry-fetch-10.1.2" // {
         dependencies = [
           sources."hosted-git-info-4.0.2"
           sources."minipass-3.1.3"
@@ -79335,6 +79758,7 @@ in
       sources."npm-run-path-2.0.2"
       sources."npmlog-4.1.2"
       sources."nth-check-1.0.2"
+      sources."nullthrows-1.1.1"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."ob1-0.59.0"
@@ -79352,15 +79776,15 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
       sources."object.assign-4.1.2"
-      sources."object.entries-1.1.3"
+      sources."object.entries-1.1.4"
       sources."object.getownpropertydescriptors-2.1.2"
       sources."object.pick-1.3.0"
-      sources."object.values-1.1.3"
+      sources."object.values-1.1.4"
       sources."obuf-1.1.2"
       sources."omggif-1.0.10"
       sources."on-finished-2.3.0"
@@ -79373,7 +79797,7 @@ in
           sources."is-wsl-1.1.0"
         ];
       })
-      sources."optimize-css-assets-webpack-plugin-5.0.4"
+      sources."optimize-css-assets-webpack-plugin-5.0.6"
       sources."options-0.0.6"
       (sources."ora-3.4.0" // {
         dependencies = [
@@ -79388,7 +79812,7 @@ in
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
       sources."p-any-2.1.0"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-finally-1.0.0"
       sources."p-limit-3.1.0"
       sources."p-locate-5.0.0"
@@ -79421,7 +79845,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      (sources."pacote-11.3.1" // {
+      (sources."pacote-11.3.3" // {
         dependencies = [
           sources."hosted-git-info-4.0.2"
           sources."minipass-3.1.3"
@@ -79464,13 +79888,13 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-4.0.0"
       sources."pbkdf2-3.1.2"
       sources."performance-now-2.1.0"
       sources."phin-2.9.3"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -79617,7 +80041,7 @@ in
         ];
       })
       sources."postcss-safe-parser-4.0.2"
-      sources."postcss-selector-parser-6.0.4"
+      sources."postcss-selector-parser-6.0.6"
       (sources."postcss-svgo-4.0.3" // {
         dependencies = [
           sources."postcss-value-parser-3.3.1"
@@ -79643,7 +80067,7 @@ in
       sources."promise-inflight-1.0.1"
       sources."promise-retry-2.0.1"
       sources."prompts-2.4.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."prr-1.0.1"
       sources."psl-1.8.0"
       (sources."public-encrypt-4.0.3" // {
@@ -79704,11 +80128,7 @@ in
       sources."read-chunk-3.2.0"
       sources."read-last-lines-1.6.0"
       sources."read-package-json-fast-2.0.2"
-      (sources."readable-stream-2.3.7" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-        ];
-      })
+      sources."readable-stream-2.3.7"
       sources."readdirp-3.5.0"
       sources."recursive-readdir-2.2.2"
       sources."regenerate-1.4.2"
@@ -79796,12 +80216,11 @@ in
       sources."sax-1.2.4"
       sources."schema-utils-2.7.1"
       sources."select-hose-2.0.0"
-      sources."selfsigned-1.10.8"
+      sources."selfsigned-1.10.11"
       sources."semver-7.3.2"
       (sources."send-0.16.2" // {
         dependencies = [
           sources."debug-2.6.9"
-          sources."mime-1.4.1"
           sources."ms-2.0.0"
         ];
       })
@@ -79830,7 +80249,6 @@ in
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."shell-quote-1.7.2"
-      sources."side-channel-1.0.4"
       sources."signal-exit-3.0.3"
       sources."simple-plist-1.1.1"
       sources."simple-swizzle-0.2.2"
@@ -79841,7 +80259,7 @@ in
           sources."uuid-2.0.3"
         ];
       })
-      sources."slugify-1.5.0"
+      sources."slugify-1.5.3"
       sources."smart-buffer-4.1.0"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
@@ -79881,7 +80299,7 @@ in
       (sources."sockjs-client-1.4.0" // {
         dependencies = [
           sources."debug-3.2.7"
-          sources."faye-websocket-0.11.3"
+          sources."faye-websocket-0.11.4"
         ];
       })
       sources."socks-2.6.1"
@@ -80079,7 +80497,6 @@ in
             ];
           })
           sources."has-values-0.1.4"
-          sources."isarray-1.0.0"
         ];
       })
       sources."untildify-3.0.3"
@@ -80171,7 +80588,11 @@ in
         ];
       })
       sources."webpack-deep-scope-plugin-1.6.0"
-      sources."webpack-dev-middleware-3.7.3"
+      (sources."webpack-dev-middleware-3.7.3" // {
+        dependencies = [
+          sources."mime-2.5.2"
+        ];
+      })
       (sources."webpack-dev-server-3.11.0" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
@@ -80274,9 +80695,7 @@ in
       sources."websocket-extensions-0.1.4"
       sources."which-1.3.1"
       sources."which-boxed-primitive-1.0.2"
-      sources."which-collection-1.0.1"
       sources."which-module-2.0.0"
-      sources."which-typed-array-1.1.4"
       (sources."wide-align-1.1.3" // {
         dependencies = [
           sources."ansi-regex-3.0.0"
@@ -80332,7 +80751,7 @@ in
           sources."uuid-7.0.3"
         ];
       })
-      (sources."xdl-59.0.32" // {
+      (sources."xdl-59.0.42" // {
         dependencies = [
           sources."chownr-1.1.4"
           sources."fs-minipass-1.2.7"
@@ -80453,7 +80872,7 @@ in
       sources."indent-string-2.1.0"
       sources."inherits-2.0.4"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-finite-1.1.0"
       sources."is-stream-1.1.0"
       sources."is-typedarray-1.0.0"
@@ -80506,7 +80925,7 @@ in
       sources."os-tmpdir-1.0.2"
       sources."parse-json-2.2.0"
       sources."path-exists-2.1.0"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-1.1.0"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
@@ -80536,7 +80955,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sshpk-1.16.1"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
@@ -80572,12 +80991,23 @@ in
   fauna-shell = nodeEnv.buildNodePackage {
     name = "fauna-shell";
     packageName = "fauna-shell";
-    version = "0.12.3";
+    version = "0.12.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/fauna-shell/-/fauna-shell-0.12.3.tgz";
-      sha512 = "2K8kh4MAteqj7kOnUq8Goux4Zw0oIZEGN1xoW14cGxrOTDRXvBm3eBndI9gt24rSC8h7T8qdIeLY7O9hn6LSUg==";
+      url = "https://registry.npmjs.org/fauna-shell/-/fauna-shell-0.12.4.tgz";
+      sha512 = "KqaoGSmcIBLY6Vr1wWRMu0acuLUpxpKEtjekdwYs+JxMk74vRa8Mwxd96SmEoBat28cPCoLAPfvDyEtzUzkjEg==";
     };
     dependencies = [
+      sources."@babel/code-frame-7.12.13"
+      sources."@babel/generator-7.14.3"
+      sources."@babel/helper-function-name-7.14.2"
+      sources."@babel/helper-get-function-arity-7.12.13"
+      sources."@babel/helper-split-export-declaration-7.12.13"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
+      sources."@babel/template-7.12.13"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       (sources."@heroku-cli/color-1.1.14" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
@@ -80596,7 +81026,7 @@ in
           sources."@oclif/plugin-help-3.2.2"
           sources."ansi-regex-3.0.0"
           sources."ansi-styles-3.2.1"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-1.9.3"
           sources."color-name-1.1.3"
           sources."has-flag-4.0.0"
@@ -80635,8 +81065,17 @@ in
       })
       sources."@oclif/screen-1.0.4"
       sources."@sindresorhus/is-0.7.0"
-      sources."abortcontroller-polyfill-1.7.1"
+      sources."abort-controller-3.0.0"
       sources."ajv-6.12.6"
+      (sources."ansi-align-3.0.0" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."emoji-regex-7.0.3"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -80655,6 +81094,7 @@ in
       sources."atob-2.1.2"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
+      sources."babel-eslint-10.1.0"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
         dependencies = [
@@ -80664,6 +81104,13 @@ in
       sources."base64-js-1.5.1"
       sources."bcrypt-pbkdf-1.0.2"
       sources."bluebird-3.7.2"
+      (sources."boxen-5.0.1" // {
+        dependencies = [
+          sources."chalk-4.1.1"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."btoa-lite-1.0.0"
@@ -80674,6 +81121,7 @@ in
         ];
       })
       sources."call-me-maybe-1.0.1"
+      sources."camelcase-6.2.0"
       sources."cardinal-2.1.1"
       sources."caseless-0.12.0"
       (sources."chalk-2.4.2" // {
@@ -80702,6 +81150,7 @@ in
         ];
       })
       sources."clean-stack-3.0.1"
+      sources."cli-boxes-2.2.1"
       sources."cli-table-0.3.6"
       (sources."cli-ux-4.9.3" // {
         dependencies = [
@@ -80742,15 +81191,23 @@ in
       sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
       sources."dir-glob-3.0.1"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."emoji-regex-8.0.0"
       sources."escape-string-regexp-4.0.0"
-      sources."escodegen-1.14.3"
+      (sources."escodegen-1.14.3" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."eslint-config-prettier-8.3.0"
+      sources."eslint-plugin-prettier-3.4.0"
+      sources."eslint-visitor-keys-1.3.0"
       sources."esprima-4.0.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
+      sources."event-target-shim-5.0.1"
       sources."execa-0.10.0"
       (sources."expand-brackets-2.1.4" // {
         dependencies = [
@@ -80787,11 +81244,18 @@ in
       sources."extract-stack-1.0.0"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
+      sources."fast-diff-1.2.0"
       sources."fast-glob-3.2.5"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
       sources."fastq-1.11.0"
-      sources."faunadb-4.0.3"
+      (sources."faunadb-4.3.0" // {
+        dependencies = [
+          sources."chalk-4.1.1"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
       sources."fill-range-7.0.1"
       sources."fn-annotate-1.2.0"
       sources."for-in-1.0.2"
@@ -80801,12 +81265,14 @@ in
       sources."from2-2.3.0"
       sources."fs-extra-8.1.0"
       sources."fs.realpath-1.0.0"
+      sources."function-bind-1.1.1"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.3.0"
+      sources."globals-11.12.0"
       (sources."globby-8.0.2" // {
         dependencies = [
           sources."@nodelib/fs.stat-1.1.3"
@@ -80841,6 +81307,7 @@ in
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
+      sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."has-symbol-support-x-1.4.2"
       sources."has-to-string-tag-x-1.4.1"
@@ -80876,6 +81343,7 @@ in
       sources."into-stream-3.1.0"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-buffer-1.1.6"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-docker-2.2.1"
@@ -80897,7 +81365,9 @@ in
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
       sources."isurl-1.0.0"
+      sources."js-tokens-4.0.0"
       sources."jsbn-0.1.1"
+      sources."jsesc-2.5.2"
       sources."json-buffer-3.0.0"
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
@@ -80967,13 +81437,16 @@ in
       sources."path-dirname-1.0.2"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-3.0.0"
       sources."posix-character-classes-0.1.1"
       sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
+      sources."prettier-2.3.0"
+      sources."prettier-linter-helpers-1.0.0"
       sources."process-nextick-args-2.0.1"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
@@ -80992,6 +81465,7 @@ in
       sources."request-2.88.2"
       sources."request-promise-4.2.6"
       sources."request-promise-core-1.1.4"
+      sources."resolve-1.20.0"
       sources."resolve-url-0.2.1"
       sources."responselike-1.0.2"
       sources."ret-0.1.15"
@@ -81028,7 +81502,6 @@ in
           sources."is-descriptor-0.1.6"
           sources."kind-of-5.1.0"
           sources."ms-2.0.0"
-          sources."source-map-0.5.7"
         ];
       })
       (sources."snapdragon-node-2.1.1" // {
@@ -81042,7 +81515,7 @@ in
         ];
       })
       sources."sort-keys-2.0.0"
-      sources."source-map-0.6.1"
+      sources."source-map-0.5.7"
       sources."source-map-resolve-0.5.3"
       sources."source-map-url-0.4.1"
       sources."split-string-3.1.0"
@@ -81081,6 +81554,7 @@ in
         ];
       })
       sources."timed-out-4.0.1"
+      sources."to-fast-properties-2.0.0"
       (sources."to-object-path-0.3.0" // {
         dependencies = [
           sources."kind-of-3.2.2"
@@ -81094,6 +81568,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."type-check-0.3.2"
+      sources."type-fest-0.20.2"
       sources."union-value-1.0.1"
       sources."universalify-0.1.2"
       (sources."unset-value-1.0.0" // {
@@ -81134,10 +81609,10 @@ in
   firebase-tools = nodeEnv.buildNodePackage {
     name = "firebase-tools";
     packageName = "firebase-tools";
-    version = "9.10.0";
+    version = "9.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-9.10.0.tgz";
-      sha512 = "0HoQEB6K5WiD/p/ca7KxzGZHCxtuVdck888N924TPkjkZ6YxYT8xJtuoKXCLRjJgw4yovJ/LnxZoU66w8JD1cQ==";
+      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-9.12.0.tgz";
+      sha512 = "rPk4JyzPaSHyHQDGCh0/U63MW2nXgnZ4h0IRE2EjFHRz+KyNl/hakGX7EQKVej5HpMKFhWRjGOvDHn1PXooQgw==";
     };
     dependencies = [
       sources."@apidevtools/json-schema-ref-parser-9.0.7"
@@ -81146,18 +81621,19 @@ in
       sources."@google-cloud/precise-date-2.0.3"
       sources."@google-cloud/projectify-2.0.1"
       sources."@google-cloud/promisify-2.0.3"
-      (sources."@google-cloud/pubsub-2.11.0" // {
+      (sources."@google-cloud/pubsub-2.12.0" // {
         dependencies = [
-          sources."google-auth-library-7.0.4"
+          sources."google-auth-library-7.1.0"
         ];
       })
-      (sources."@grpc/grpc-js-1.2.12" // {
+      sources."@grpc/grpc-js-1.3.2"
+      sources."@grpc/proto-loader-0.6.2"
+      sources."@jsdevtools/ono-7.1.3"
+      (sources."@npmcli/move-file-1.1.2" // {
         dependencies = [
-          sources."semver-6.3.0"
+          sources."mkdirp-1.0.4"
         ];
       })
-      sources."@grpc/proto-loader-0.5.6"
-      sources."@jsdevtools/ono-7.1.3"
       sources."@opentelemetry/api-0.18.1"
       sources."@opentelemetry/semantic-conventions-0.18.2"
       sources."@protobufjs/aspromise-1.1.2"
@@ -81178,21 +81654,31 @@ in
       sources."@types/glob-7.1.3"
       sources."@types/long-4.0.1"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.7"
       sources."agent-base-6.0.2"
-      sources."ajv-6.12.6"
+      sources."agentkeepalive-4.1.4"
+      sources."aggregate-error-3.1.0"
+      (sources."ajv-6.12.6" // {
+        dependencies = [
+          sources."json-schema-traverse-0.4.1"
+        ];
+      })
       (sources."ansi-align-3.0.0" // {
         dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."emoji-regex-7.0.3"
+          sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
         ];
       })
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-2.1.1"
-      sources."ansi-styles-3.2.1"
+      sources."ansi-regex-5.0.0"
+      sources."ansi-styles-4.3.0"
       sources."ansicolors-0.3.2"
       sources."anymatch-3.1.2"
       sources."aproba-1.2.0"
@@ -81246,16 +81732,8 @@ in
       })
       (sources."boxen-4.2.0" // {
         dependencies = [
-          sources."ansi-regex-5.0.0"
-          sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
-          sources."color-convert-2.0.1"
-          sources."color-name-1.1.4"
-          sources."emoji-regex-8.0.0"
           sources."has-flag-4.0.0"
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
-          sources."strip-ansi-6.0.0"
           sources."supports-color-7.2.0"
         ];
       })
@@ -81267,6 +81745,12 @@ in
       sources."buffer-indexof-polyfill-1.0.2"
       sources."buffers-0.1.1"
       sources."bytes-3.1.0"
+      (sources."cacache-15.2.0" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+          sources."tar-6.1.0"
+        ];
+      })
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -81278,31 +81762,48 @@ in
       sources."cardinal-2.1.1"
       sources."caseless-0.12.0"
       sources."chainsaw-0.1.0"
-      sources."chalk-2.4.2"
+      (sources."chalk-2.4.2" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+        ];
+      })
       sources."chardet-0.7.0"
       sources."chokidar-3.5.1"
       sources."chownr-2.0.0"
       sources."ci-info-2.0.0"
       sources."cjson-0.3.3"
+      sources."clean-stack-2.2.0"
       sources."cli-boxes-2.2.1"
-      sources."cli-color-1.4.0"
+      (sources."cli-color-1.4.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+        ];
+      })
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-2.6.0"
       sources."cli-table-0.3.6"
       sources."cli-width-2.2.1"
+      sources."cliui-7.0.4"
       sources."clone-1.0.4"
       sources."clone-response-1.0.2"
       sources."code-point-at-1.1.0"
-      sources."color-3.0.0"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
+      (sources."color-3.0.0" // {
+        dependencies = [
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+        ];
+      })
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
       sources."color-string-1.5.5"
       sources."colors-1.0.3"
       sources."colorspace-1.1.2"
       sources."combined-stream-1.0.8"
       sources."commander-4.1.1"
       sources."compare-semver-1.1.0"
-      sources."compress-commons-4.1.0"
+      sources."compress-commons-4.1.1"
       sources."compressible-2.0.18"
       (sources."compression-1.7.4" // {
         dependencies = [
@@ -81377,15 +81878,22 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ecdsa-sig-formatter-1.0.11"
       sources."ee-first-1.1.1"
-      sources."emoji-regex-7.0.3"
+      sources."emoji-regex-8.0.0"
       sources."enabled-2.0.0"
       sources."encodeurl-1.0.2"
+      (sources."encoding-0.1.13" // {
+        dependencies = [
+          sources."iconv-lite-0.6.3"
+        ];
+      })
       sources."end-of-stream-1.4.4"
       sources."env-paths-2.2.1"
+      sources."err-code-2.0.3"
       sources."es5-ext-0.10.53"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
+      sources."escalade-3.1.1"
       sources."escape-goat-2.1.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -81397,12 +81905,12 @@ in
       sources."event-emitter-0.3.5"
       sources."event-target-shim-5.0.1"
       sources."events-listener-1.1.0"
-      (sources."exegesis-2.5.6" // {
+      (sources."exegesis-2.5.7" // {
         dependencies = [
           sources."semver-7.3.5"
         ];
       })
-      sources."exegesis-express-2.0.0"
+      sources."exegesis-express-2.0.1"
       sources."exit-code-1.0.2"
       sources."exit-on-epipe-1.0.1"
       (sources."express-4.17.1" // {
@@ -81433,7 +81941,7 @@ in
       sources."fecha-4.2.1"
       sources."figures-2.0.0"
       sources."file-uri-to-path-2.0.0"
-      sources."filesize-6.2.5"
+      sources."filesize-6.3.0"
       sources."fill-range-7.0.1"
       (sources."finalhandler-1.1.2" // {
         dependencies = [
@@ -81455,14 +81963,10 @@ in
       sources."fn.name-1.1.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-constants-1.0.0"
-      (sources."fs-extra-0.23.1" // {
-        dependencies = [
-          sources."rimraf-2.7.1"
-        ];
-      })
+      sources."fs-extra-5.0.0"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
@@ -81480,30 +81984,31 @@ in
       })
       (sources."gauge-2.7.4" // {
         dependencies = [
+          sources."ansi-regex-2.1.1"
           sources."is-fullwidth-code-point-1.0.0"
           sources."string-width-1.0.2"
           sources."strip-ansi-3.0.1"
         ];
       })
-      sources."gaxios-4.2.0"
+      sources."gaxios-4.3.0"
       sources."gcp-metadata-4.2.1"
+      sources."get-caller-file-2.0.5"
       sources."get-stream-4.1.0"
       (sources."get-uri-3.0.2" // {
         dependencies = [
           sources."fs-extra-8.1.0"
-          sources."jsonfile-4.0.0"
         ];
       })
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."glob-slash-1.0.0"
       sources."glob-slasher-1.0.1"
       sources."global-dirs-2.1.0"
       sources."google-auth-library-6.1.6"
-      (sources."google-gax-2.11.2" // {
+      (sources."google-gax-2.14.1" // {
         dependencies = [
-          sources."google-auth-library-7.0.4"
+          sources."google-auth-library-7.1.0"
         ];
       })
       sources."google-p12-pem-3.0.3"
@@ -81512,7 +82017,11 @@ in
       sources."gtoken-5.2.1"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
-      sources."has-ansi-2.0.0"
+      (sources."has-ansi-2.0.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+        ];
+      })
       sources."has-flag-3.0.0"
       sources."has-unicode-2.0.1"
       sources."has-yarn-2.1.0"
@@ -81526,14 +82035,32 @@ in
       sources."http-proxy-agent-4.0.1"
       sources."http-signature-1.2.0"
       sources."https-proxy-agent-5.0.0"
+      sources."humanize-ms-1.2.1"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
+      sources."indent-string-4.0.0"
+      sources."infer-owner-1.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.7"
-      sources."inquirer-6.3.1"
+      (sources."inquirer-6.3.1" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          (sources."string-width-2.1.1" // {
+            dependencies = [
+              sources."strip-ansi-4.0.0"
+            ];
+          })
+          (sources."strip-ansi-5.2.0" // {
+            dependencies = [
+              sources."ansi-regex-4.1.0"
+            ];
+          })
+        ];
+      })
       sources."install-artifact-from-github-1.2.0"
       sources."ip-1.1.5"
       sources."ip-regex-4.3.0"
@@ -81542,9 +82069,10 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-ci-2.0.0"
       sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-installed-globally-0.3.2"
+      sources."is-lambda-1.0.1"
       sources."is-npm-4.0.0"
       sources."is-number-7.0.0"
       sources."is-obj-2.0.0"
@@ -81556,7 +82084,7 @@ in
       sources."is-url-1.2.4"
       sources."is-wsl-1.1.0"
       sources."is-yarn-global-0.3.0"
-      sources."is2-2.0.6"
+      sources."is2-2.0.7"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isstream-0.1.2"
@@ -81567,11 +82095,11 @@ in
       sources."json-bigint-1.0.0"
       sources."json-buffer-3.0.0"
       sources."json-parse-helpfulerror-1.0.3"
-      sources."json-ptr-1.3.2"
+      sources."json-ptr-2.2.0"
       sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
+      sources."json-schema-traverse-1.0.0"
       sources."json-stringify-safe-5.0.1"
-      sources."jsonfile-2.4.0"
+      sources."jsonfile-4.0.0"
       sources."jsonparse-1.3.1"
       (sources."jsonwebtoken-8.5.1" // {
         dependencies = [
@@ -81632,6 +82160,7 @@ in
           sources."semver-6.3.0"
         ];
       })
+      sources."make-fetch-happen-8.0.14"
       sources."marked-0.7.0"
       sources."marked-terminal-3.3.0"
       sources."media-typer-0.3.0"
@@ -81650,6 +82179,11 @@ in
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."minipass-3.1.3"
+      sources."minipass-collect-1.0.2"
+      sources."minipass-fetch-1.3.3"
+      sources."minipass-flush-1.0.5"
+      sources."minipass-pipeline-1.2.4"
+      sources."minipass-sized-1.0.3"
       sources."minizlib-2.1.2"
       sources."mkdirp-0.5.5"
       (sources."morgan-1.10.0" // {
@@ -81674,7 +82208,7 @@ in
       sources."node-emoji-1.10.0"
       sources."node-fetch-2.6.1"
       sources."node-forge-0.10.0"
-      (sources."node-gyp-7.1.2" // {
+      (sources."node-gyp-8.1.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."semver-7.3.5"
@@ -81684,23 +82218,30 @@ in
       })
       sources."nopt-5.0.0"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
+      sources."object-hash-2.2.0"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
       sources."one-time-1.0.0"
       sources."onetime-2.0.1"
       sources."open-6.4.0"
-      sources."openapi3-ts-1.4.0"
+      sources."openapi3-ts-2.0.1"
       sources."optionator-0.8.3"
-      sources."ora-3.4.0"
+      (sources."ora-3.4.0" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
       sources."p-defer-3.0.0"
+      sources."p-map-4.0.0"
       sources."pac-proxy-agent-4.1.0"
       sources."pac-resolver-4.2.0"
       (sources."package-json-6.5.0" // {
@@ -81713,7 +82254,7 @@ in
       sources."path-key-2.0.1"
       sources."path-to-regexp-0.1.7"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       (sources."portfinder-1.0.28" // {
         dependencies = [
           sources."async-2.6.3"
@@ -81726,12 +82267,10 @@ in
       sources."process-nextick-args-2.0.1"
       sources."progress-2.0.3"
       sources."promise-breaker-5.0.0"
-      (sources."protobufjs-6.10.2" // {
-        dependencies = [
-          sources."@types/node-13.13.50"
-        ];
-      })
-      sources."proxy-addr-2.0.6"
+      sources."promise-inflight-1.0.1"
+      sources."promise-retry-2.0.1"
+      sources."protobufjs-6.11.2"
+      sources."proxy-addr-2.0.7"
       (sources."proxy-agent-4.0.1" // {
         dependencies = [
           sources."lru-cache-5.1.1"
@@ -81747,7 +82286,7 @@ in
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.0"
       sources."rc-1.2.8"
-      sources."re2-1.15.9"
+      sources."re2-1.16.0"
       sources."readable-stream-3.6.0"
       sources."readdir-glob-1.1.1"
       sources."readdirp-3.5.0"
@@ -81759,8 +82298,10 @@ in
           sources."qs-6.5.2"
         ];
       })
+      sources."require-directory-2.1.1"
       sources."responselike-1.0.2"
       sources."restore-cursor-2.0.0"
+      sources."retry-0.12.0"
       sources."retry-request-4.1.3"
       sources."rimraf-3.0.2"
       (sources."router-1.3.5" // {
@@ -81811,37 +82352,38 @@ in
       sources."source-map-0.6.1"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.16.1"
+      sources."ssri-8.0.1"
       sources."stack-trace-0.0.10"
       sources."statuses-1.5.0"
       sources."stream-shift-1.0.1"
       (sources."string-length-1.0.1" // {
         dependencies = [
+          sources."ansi-regex-2.1.1"
           sources."strip-ansi-3.0.1"
         ];
       })
-      (sources."string-width-2.1.1" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-          sources."strip-ansi-4.0.0"
-        ];
-      })
+      sources."string-width-4.2.2"
       sources."string_decoder-1.3.0"
-      (sources."strip-ansi-5.2.0" // {
-        dependencies = [
-          sources."ansi-regex-4.1.0"
-        ];
-      })
+      sources."strip-ansi-6.0.0"
       sources."strip-json-comments-2.0.1"
       (sources."superstatic-7.1.0" // {
         dependencies = [
+          sources."ansi-regex-2.1.1"
           sources."ansi-styles-2.2.1"
           sources."chalk-1.1.3"
           sources."fs-extra-8.1.0"
+          sources."has-flag-4.0.0"
           sources."isarray-0.0.1"
-          sources."jsonfile-4.0.0"
           sources."path-to-regexp-1.8.0"
           sources."strip-ansi-3.0.1"
           sources."supports-color-2.0.0"
+          (sources."update-notifier-4.1.3" // {
+            dependencies = [
+              sources."ansi-styles-4.3.0"
+              sources."chalk-3.0.0"
+              sources."supports-color-7.2.0"
+            ];
+          })
         ];
       })
       sources."supports-color-5.5.0"
@@ -81897,6 +82439,8 @@ in
       sources."type-fest-0.8.1"
       sources."type-is-1.6.18"
       sources."typedarray-to-buffer-3.1.5"
+      sources."unique-filename-1.1.1"
+      sources."unique-slug-2.0.2"
       sources."unique-string-2.0.0"
       sources."universal-analytics-0.4.23"
       sources."universalify-0.1.2"
@@ -81908,14 +82452,19 @@ in
           sources."string_decoder-1.1.1"
         ];
       })
-      (sources."update-notifier-4.1.3" // {
+      (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-3.0.0"
-          sources."color-convert-2.0.1"
-          sources."color-name-1.1.4"
+          sources."boxen-5.0.1"
+          sources."camelcase-6.2.0"
+          sources."chalk-4.1.1"
+          sources."global-dirs-3.0.0"
           sources."has-flag-4.0.0"
+          sources."ini-2.0.0"
+          sources."is-installed-globally-0.4.0"
+          sources."is-npm-5.0.0"
+          sources."semver-7.3.5"
           sources."supports-color-7.2.0"
+          sources."type-fest-0.20.2"
         ];
       })
       sources."uri-js-4.4.1"
@@ -81929,16 +82478,15 @@ in
       sources."verror-1.10.0"
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
-      sources."wide-align-1.1.3"
-      (sources."widest-line-3.1.0" // {
+      (sources."wide-align-1.1.3" // {
         dependencies = [
-          sources."ansi-regex-5.0.0"
-          sources."emoji-regex-8.0.0"
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
-          sources."strip-ansi-6.0.0"
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."string-width-2.1.1"
+          sources."strip-ansi-4.0.0"
         ];
       })
+      sources."widest-line-3.1.0"
       sources."winston-3.3.3"
       (sources."winston-transport-4.4.0" // {
         dependencies = [
@@ -81948,13 +82496,18 @@ in
         ];
       })
       sources."word-wrap-1.2.3"
+      sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xdg-basedir-4.0.0"
       sources."xregexp-2.0.0"
       sources."xtend-4.0.2"
+      sources."y18n-5.0.8"
       sources."yallist-4.0.0"
+      sources."yaml-1.10.2"
+      sources."yargs-16.2.0"
+      sources."yargs-parser-20.2.7"
       sources."zip-stream-4.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -81984,12 +82537,12 @@ in
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
-      sources."detect-indent-6.0.0"
+      sources."detect-indent-6.1.0"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-2.0.5"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-fullwidth-code-point-3.0.0"
@@ -82026,8 +82579,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -82047,7 +82600,7 @@ in
       sources."astral-regex-2.0.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."clean-stack-2.2.0"
       sources."cli-cursor-3.1.0"
@@ -82067,7 +82620,7 @@ in
       sources."error-ex-1.3.2"
       sources."esc-exit-2.0.2"
       sources."escape-string-regexp-1.0.5"
-      sources."execa-5.0.0"
+      sources."execa-5.0.1"
       sources."external-editor-3.1.0"
       sources."figures-3.2.0"
       sources."find-up-4.1.0"
@@ -82084,7 +82637,7 @@ in
       sources."inquirer-7.3.3"
       sources."inquirer-autocomplete-prompt-1.3.0"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-plain-obj-1.1.0"
       sources."is-stream-2.0.0"
@@ -82124,7 +82677,7 @@ in
       sources."parse-json-5.2.0"
       sources."path-exists-4.0.0"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pid-port-0.1.1"
       (sources."process-exists-4.0.0" // {
         dependencies = [
@@ -82161,7 +82714,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."string-width-4.2.2"
       sources."strip-ansi-6.0.0"
       sources."strip-final-newline-2.0.0"
@@ -82176,7 +82729,7 @@ in
       })
       sources."through-2.3.8"
       sources."tmp-0.0.33"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."tslib-1.14.1"
       sources."type-fest-0.21.3"
       sources."validate-npm-package-license-3.0.4"
@@ -82206,7 +82759,7 @@ in
     dependencies = [
       sources."@types/atob-2.1.2"
       sources."@types/inquirer-6.5.0"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/through-0.0.30"
       sources."ajv-6.12.6"
       sources."ansi-escapes-4.3.2"
@@ -82229,7 +82782,7 @@ in
       sources."buffer-to-arraybuffer-0.0.5"
       sources."camelcase-5.3.1"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."cli-cursor-3.1.0"
       sources."cli-width-3.0.0"
@@ -82246,7 +82799,7 @@ in
       sources."decompress-response-3.3.0"
       sources."delayed-stream-1.0.0"
       sources."dom-walk-0.1.2"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."ecc-jsbn-0.1.2"
       sources."elliptic-6.5.4"
       sources."emoji-regex-8.0.0"
@@ -82283,7 +82836,7 @@ in
       sources."immediate-3.0.6"
       sources."inherits-2.0.4"
       sources."inquirer-7.3.3"
-      sources."inversify-5.0.5"
+      sources."inversify-5.1.1"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-function-1.0.2"
@@ -82379,9 +82932,9 @@ in
       sources."utf8-3.0.0"
       sources."uuid-3.4.0"
       sources."verror-1.10.0"
-      (sources."web3-utils-1.3.5" // {
+      (sources."web3-utils-1.3.6" // {
         dependencies = [
-          sources."underscore-1.9.1"
+          sources."underscore-1.12.1"
         ];
       })
       sources."which-module-2.0.0"
@@ -82408,10 +82961,10 @@ in
   flood = nodeEnv.buildNodePackage {
     name = "flood";
     packageName = "flood";
-    version = "4.5.3";
+    version = "4.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/flood/-/flood-4.5.3.tgz";
-      sha512 = "V/hB+D7kjqtSZTnFR05ZMP59x6vpVh75LDT2nAfwfVL9zVpyjynyK6abFzkMYydtGcKGPwvSqG0gYL8Tqh19sQ==";
+      url = "https://registry.npmjs.org/flood/-/flood-4.6.0.tgz";
+      sha512 = "uio2KGAC9wNNM9wa6BrmIwRunE/AWJNDz9SnP06zHIpIHX9FC0UEHbj2kairn9CmhzhEwprBNYeFh79eyfqxvw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -82426,13 +82979,12 @@ in
   forever = nodeEnv.buildNodePackage {
     name = "forever";
     packageName = "forever";
-    version = "3.0.4";
+    version = "4.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/forever/-/forever-3.0.4.tgz";
-      sha512 = "MZDQu9nxVavSOez+k0MGdoe9/0tGN/QfAj3Xn8OjJbRYlLghq/3isf5c2xt280x04EVKguU9/tmLE74259Xazw==";
+      url = "https://registry.npmjs.org/forever/-/forever-4.0.0.tgz";
+      sha512 = "8cFfO0lvIs4c0P5LvKbdvZvtOK/z79AF/vC9DQLH+niyOCPxqq1+12CyYrzHC+5hBILjPU9ClWLVrXvrK+2ZVw==";
     };
     dependencies = [
-      sources."ansi-regex-2.1.1"
       (sources."anymatch-2.0.0" // {
         dependencies = [
           sources."normalize-path-2.1.1"
@@ -82446,6 +82998,7 @@ in
       sources."async-1.5.2"
       sources."async-each-1.0.3"
       sources."atob-2.1.2"
+      sources."available-typed-arrays-1.0.4"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
         dependencies = [
@@ -82463,17 +83016,15 @@ in
       })
       (sources."broadway-0.3.6" // {
         dependencies = [
-          sources."async-0.2.9"
+          sources."async-0.2.10"
           sources."cliff-0.1.9"
           sources."eventemitter2-0.4.14"
-          sources."nconf-0.6.9"
           sources."winston-0.8.0"
         ];
       })
       sources."cache-base-1.0.1"
       sources."call-bind-1.0.2"
       sources."caller-0.0.1"
-      sources."camelcase-2.1.1"
       sources."chokidar-2.1.8"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -82497,25 +83048,28 @@ in
           sources."colors-1.0.3"
         ];
       })
-      sources."cliui-3.2.0"
       sources."clone-2.1.2"
-      sources."code-point-at-1.1.0"
       sources."collection-visit-1.0.0"
       sources."colors-0.6.2"
       sources."component-emitter-1.3.0"
       sources."concat-map-0.0.1"
+      sources."configstore-4.0.0"
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
+      sources."crypto-random-string-1.0.0"
       sources."cycle-1.0.3"
       sources."debug-2.6.9"
-      sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
-      sources."deep-equal-1.1.1"
+      sources."deep-equal-2.0.5"
       sources."define-properties-1.1.3"
       sources."define-property-2.0.2"
       sources."defined-0.0.0"
       sources."director-1.2.7"
+      sources."dot-prop-4.2.1"
       sources."duplexer-0.1.2"
+      sources."es-abstract-1.18.3"
+      sources."es-get-iterator-1.1.2"
+      sources."es-to-primitive-1.2.1"
       sources."event-stream-3.3.4"
       sources."eventemitter2-6.4.3"
       (sources."expand-brackets-2.1.4" // {
@@ -82555,6 +83109,7 @@ in
       })
       sources."flatiron-0.4.3"
       sources."for-in-1.0.2"
+      sources."foreach-2.0.5"
       sources."forever-monitor-3.0.3"
       sources."fragment-cache-0.2.1"
       sources."from-0.1.7"
@@ -82563,7 +83118,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -82571,6 +83126,7 @@ in
       })
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
+      sources."has-bigints-1.0.1"
       sources."has-symbols-1.0.2"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
@@ -82579,36 +83135,48 @@ in
         ];
       })
       sources."i-0.3.6"
+      sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      sources."invert-kv-1.0.0"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arguments-1.1.0"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-1.0.1"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
+      sources."is-callable-1.2.3"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-1.0.1"
       sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-1.0.0"
       sources."is-glob-4.0.1"
+      sources."is-map-2.0.2"
+      sources."is-negative-zero-2.0.1"
       (sources."is-number-3.0.0" // {
         dependencies = [
           sources."kind-of-3.2.2"
         ];
       })
+      sources."is-number-object-1.0.5"
+      sources."is-obj-1.0.1"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
+      sources."is-set-2.0.2"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
+      sources."is-typed-array-1.1.5"
+      sources."is-weakmap-2.0.1"
+      sources."is-weakset-2.0.1"
       sources."is-windows-1.0.2"
-      sources."isarray-1.0.0"
+      sources."isarray-2.0.5"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
       sources."jsonify-0.0.0"
       sources."kind-of-6.0.3"
       sources."lazy-1.0.11"
-      sources."lcid-1.0.0"
+      sources."make-dir-1.3.0"
       sources."map-cache-0.2.2"
       sources."map-stream-0.1.0"
       sources."map-visit-1.0.0"
@@ -82625,7 +83193,11 @@ in
       sources."mute-stream-0.0.8"
       sources."nan-2.14.2"
       sources."nanomatch-1.2.13"
-      sources."nconf-0.10.0"
+      (sources."nconf-0.6.9" // {
+        dependencies = [
+          sources."async-0.2.9"
+        ];
+      })
       sources."ncp-0.4.2"
       sources."normalize-path-3.0.0"
       (sources."nssocket-0.6.0" // {
@@ -82633,7 +83205,6 @@ in
           sources."eventemitter2-0.4.14"
         ];
       })
-      sources."number-is-nan-1.0.1"
       sources."object-assign-4.1.1"
       (sources."object-copy-0.1.0" // {
         dependencies = [
@@ -82648,17 +83219,19 @@ in
           sources."kind-of-3.2.2"
         ];
       })
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
+      sources."object.assign-4.1.2"
       sources."object.pick-1.3.0"
       sources."once-1.4.0"
       sources."optimist-0.6.0"
-      sources."os-locale-1.4.0"
       sources."pascalcase-0.1.1"
       sources."path-dirname-1.0.2"
       sources."path-is-absolute-1.0.1"
       sources."pause-stream-0.0.11"
+      sources."pify-3.0.0"
       sources."pkginfo-0.3.1"
       sources."posix-character-classes-0.1.1"
       (sources."prettyjson-1.2.1" // {
@@ -82671,7 +83244,11 @@ in
       sources."prompt-0.2.14"
       sources."ps-tree-1.2.0"
       sources."read-1.0.7"
-      sources."readable-stream-2.3.7"
+      (sources."readable-stream-2.3.7" // {
+        dependencies = [
+          sources."isarray-1.0.0"
+        ];
+      })
       sources."readdirp-2.2.1"
       sources."regex-not-1.0.2"
       sources."regexp.prototype.flags-1.3.1"
@@ -82685,7 +83262,6 @@ in
       sources."rimraf-2.7.1"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
-      sources."secure-keys-1.0.0"
       (sources."set-value-2.0.1" // {
         dependencies = [
           sources."extend-shallow-2.0.1"
@@ -82693,6 +83269,8 @@ in
         ];
       })
       sources."shush-1.0.0"
+      sources."side-channel-1.0.4"
+      sources."signal-exit-3.0.3"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -82746,9 +83324,9 @@ in
         ];
       })
       sources."stream-combiner-0.0.4"
-      sources."string-width-1.0.2"
+      sources."string.prototype.trimend-1.0.4"
+      sources."string.prototype.trimstart-1.0.4"
       sources."string_decoder-1.1.1"
-      sources."strip-ansi-3.0.1"
       sources."strip-json-comments-0.1.3"
       (sources."tape-2.3.3" // {
         dependencies = [
@@ -82763,11 +83341,13 @@ in
       })
       sources."to-regex-3.0.2"
       sources."to-regex-range-2.1.1"
+      sources."unbox-primitive-1.0.1"
       (sources."union-value-1.0.1" // {
         dependencies = [
           sources."is-extendable-0.1.1"
         ];
       })
+      sources."unique-string-1.0.0"
       (sources."unset-value-1.0.0" // {
         dependencies = [
           (sources."has-value-0.3.1" // {
@@ -82776,6 +83356,7 @@ in
             ];
           })
           sources."has-values-0.1.4"
+          sources."isarray-1.0.0"
         ];
       })
       sources."upath-1.2.0"
@@ -82787,17 +83368,18 @@ in
           sources."async-0.2.10"
         ];
       })
-      sources."window-size-0.1.4"
+      sources."which-boxed-primitive-1.0.2"
+      sources."which-collection-1.0.1"
+      sources."which-typed-array-1.1.4"
       (sources."winston-0.8.3" // {
         dependencies = [
           sources."async-0.2.10"
         ];
       })
       sources."wordwrap-0.0.3"
-      sources."wrap-ansi-2.1.0"
       sources."wrappy-1.0.2"
-      sources."y18n-3.2.2"
-      sources."yargs-3.32.0"
+      sources."write-file-atomic-2.4.3"
+      sources."xdg-basedir-3.0.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -82821,7 +83403,7 @@ in
       sources."@medv/blessed-2.0.1"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."emoji-regex-8.0.0"
@@ -82864,10 +83446,10 @@ in
   gatsby-cli = nodeEnv.buildNodePackage {
     name = "gatsby-cli";
     packageName = "gatsby-cli";
-    version = "3.3.0";
+    version = "3.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.3.0.tgz";
-      sha512 = "zqVRm6QzMNGFPv3iSjSiysNuSBYJmvPoWWR/BdXyFU8mWP3Fou3d7HdxxIQak25GVRYlMGU5ryuM9mfN/k/Jdg==";
+      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.6.0.tgz";
+      sha512 = "GJ0BviJw3qnONdoNpCvqgRA8jxYk7rpqi+7MrvT0U+YMcT2HGhZbhY0RxlZqYRL8qOCJTtLB/N4Z7cCUwi8g1w==";
     };
     dependencies = [
       (sources."@ardatan/aggregate-error-0.0.6" // {
@@ -82876,62 +83458,58 @@ in
         ];
       })
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.13.9" // {
+      (sources."@babel/generator-7.14.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
-      sources."@babel/helpers-7.13.10"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.13.15"
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-proposal-object-rest-spread-7.10.4"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-syntax-jsx-7.12.13"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
-      sources."@babel/plugin-transform-parameters-7.13.0"
-      sources."@babel/plugin-transform-react-jsx-7.13.12"
-      sources."@babel/runtime-7.13.10"
-      sources."@babel/standalone-7.13.15"
+      sources."@babel/plugin-transform-parameters-7.14.2"
+      sources."@babel/plugin-transform-react-jsx-7.14.3"
+      sources."@babel/runtime-7.14.0"
+      sources."@babel/standalone-7.14.4"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
-      sources."@graphql-tools/schema-7.1.3"
-      (sources."@graphql-tools/utils-7.7.3" // {
-        dependencies = [
-          sources."tslib-2.2.0"
-        ];
-      })
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
+      sources."@graphql-tools/schema-7.1.5"
+      sources."@graphql-tools/utils-7.10.0"
       sources."@hapi/address-2.1.4"
       sources."@hapi/bourne-1.3.2"
       sources."@hapi/hoek-8.5.1"
@@ -82948,7 +83526,7 @@ in
         ];
       })
       sources."@mdx-js/util-2.0.0-next.8"
-      (sources."@sideway/address-4.1.1" // {
+      (sources."@sideway/address-4.1.2" // {
         dependencies = [
           sources."@hapi/hoek-9.2.0"
         ];
@@ -82966,15 +83544,15 @@ in
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
       sources."@types/json-patch-0.0.30"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/node-fetch-2.5.10"
-      sources."@types/readable-stream-2.3.9"
+      sources."@types/readable-stream-2.3.10"
       sources."@types/unist-2.0.3"
       sources."@types/yargs-15.0.13"
       sources."@types/yargs-parser-20.2.0"
       sources."@types/yoga-layout-1.9.2"
       sources."accepts-1.3.7"
-      sources."acorn-8.1.1"
+      sources."acorn-8.3.0"
       sources."acorn-jsx-5.3.1"
       sources."address-1.1.2"
       (sources."ansi-align-3.0.0" // {
@@ -83022,21 +83600,21 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."bytes-3.1.0"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
           sources."lowercase-keys-2.0.0"
-          sources."normalize-url-4.5.0"
+          sources."normalize-url-4.5.1"
         ];
       })
       sources."call-bind-1.0.2"
       sources."camel-case-4.1.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."ccount-1.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -83084,8 +83662,8 @@ in
         ];
       })
       sources."content-type-1.0.4"
-      sources."contentful-management-7.15.1"
-      sources."contentful-sdk-core-6.7.0"
+      sources."contentful-management-7.22.4"
+      sources."contentful-sdk-core-6.8.0"
       sources."convert-hrtime-3.0.0"
       (sources."convert-source-map-1.7.0" // {
         dependencies = [
@@ -83095,7 +83673,7 @@ in
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."cors-2.8.5"
-      sources."create-gatsby-1.3.0"
+      sources."create-gatsby-1.6.0"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -83131,10 +83709,10 @@ in
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
       sources."dot-prop-5.3.0"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -83187,7 +83765,7 @@ in
       })
       sources."fast-copy-2.1.1"
       sources."figures-3.2.0"
-      sources."file-type-16.3.0"
+      sources."file-type-16.5.0"
       sources."fill-range-7.0.1"
       sources."filter-obj-1.1.0"
       (sources."finalhandler-1.1.2" // {
@@ -83197,17 +83775,17 @@ in
         ];
       })
       sources."find-up-4.1.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."form-data-3.0.1"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-exists-cached-1.0.0"
       sources."fs-extra-8.1.0"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
       sources."function-bind-1.1.1"
-      sources."gatsby-core-utils-2.3.0"
-      (sources."gatsby-recipes-0.14.0" // {
+      sources."gatsby-core-utils-2.6.0"
+      (sources."gatsby-recipes-0.17.0" // {
         dependencies = [
           sources."cross-spawn-7.0.3"
           sources."execa-4.1.0"
@@ -83221,14 +83799,14 @@ in
           sources."which-2.0.2"
         ];
       })
-      sources."gatsby-telemetry-2.3.0"
+      sources."gatsby-telemetry-2.6.0"
       sources."gensync-1.0.0-beta.2"
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
       sources."get-stdin-4.0.1"
       sources."get-stream-4.1.0"
       sources."git-up-4.0.2"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-dirs-3.0.0"
       sources."globals-11.12.0"
@@ -83277,7 +83855,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-decimal-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
@@ -83296,7 +83874,7 @@ in
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
       sources."is-plain-obj-2.1.0"
-      sources."is-ssh-1.3.2"
+      sources."is-ssh-1.3.3"
       sources."is-stream-1.1.0"
       sources."is-typedarray-1.0.0"
       sources."is-url-1.2.4"
@@ -83384,14 +83962,14 @@ in
       sources."no-case-3.0.4"
       sources."node-eta-0.9.0"
       sources."node-fetch-2.6.1"
-      sources."node-object-hash-2.3.1"
-      sources."node-releases-1.1.71"
+      sources."node-object-hash-2.3.3"
+      sources."node-releases-1.1.72"
       sources."normalize-path-3.0.0"
       sources."normalize-url-3.3.0"
       sources."npm-run-path-2.0.2"
       sources."nth-check-1.0.2"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-path-0.11.5"
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
@@ -83417,13 +83995,13 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."peek-readable-3.1.3"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pkg-dir-4.2.0"
       sources."prepend-http-2.0.0"
-      sources."prettier-2.2.1"
+      sources."prettier-2.3.0"
       sources."pretty-error-2.1.2"
       (sources."pretty-format-25.5.0" // {
         dependencies = [
@@ -83437,7 +84015,7 @@ in
       sources."prop-types-15.7.2"
       sources."proper-lockfile-4.1.2"
       sources."protocols-1.4.8"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."pump-3.0.0"
       sources."pupa-2.1.1"
       sources."qs-6.10.1"
@@ -83454,7 +84032,7 @@ in
       sources."readable-stream-3.6.0"
       sources."readable-web-to-node-stream-3.0.1"
       sources."readdirp-3.5.0"
-      sources."redux-4.0.5"
+      sources."redux-4.1.0"
       sources."regenerator-runtime-0.13.8"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
@@ -83552,7 +84130,6 @@ in
       sources."strtok3-6.0.8"
       sources."style-to-object-0.3.0"
       sources."supports-color-5.5.0"
-      sources."symbol-observable-1.2.0"
       sources."term-size-2.2.1"
       sources."through-2.3.8"
       sources."tmp-0.2.1"
@@ -83564,7 +84141,7 @@ in
       sources."trim-0.0.1"
       sources."trim-trailing-lines-1.1.4"
       sources."trough-1.0.5"
-      sources."tslib-2.1.0"
+      sources."tslib-2.2.0"
       sources."type-fest-0.20.2"
       sources."type-is-1.6.18"
       sources."typedarray-to-buffer-3.1.5"
@@ -83599,6 +84176,7 @@ in
       sources."utila-0.4.0"
       sources."utils-merge-1.0.1"
       sources."uuid-3.4.0"
+      sources."value-or-promise-1.0.6"
       sources."vary-1.1.2"
       sources."vfile-4.2.1"
       sources."vfile-location-2.0.6"
@@ -83616,9 +84194,9 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xdg-basedir-4.0.0"
-      sources."xstate-4.18.0"
+      sources."xstate-4.20.0"
       sources."xtend-4.0.2"
       sources."y18n-4.0.3"
       sources."yallist-4.0.0"
@@ -83755,17 +84333,16 @@ in
       sources."moo-0.5.1"
       sources."ms-2.1.2"
       sources."multicb-1.2.2"
-      sources."multiserver-3.7.0"
+      sources."multiserver-3.7.2"
       sources."multiserver-address-1.0.1"
       sources."multiserver-scopes-1.0.0"
-      sources."muxrpc-6.5.2"
+      sources."muxrpc-6.5.3"
       sources."nearley-2.20.1"
       sources."node-gyp-build-4.2.3"
       sources."node-polyglot-1.0.0"
       sources."non-private-ip-1.4.4"
-      sources."options-0.0.6"
       sources."os-homedir-1.0.2"
-      sources."packet-stream-2.0.5"
+      sources."packet-stream-2.0.6"
       sources."packet-stream-codec-1.1.3"
       sources."pako-1.0.11"
       sources."private-box-0.3.1"
@@ -83813,7 +84390,7 @@ in
           sources."looper-3.0.0"
         ];
       })
-      sources."pull-ws-3.3.2"
+      sources."pull-websocket-3.4.2"
       sources."punycode-1.4.1"
       sources."railroad-diagrams-1.0.0"
       sources."randexp-0.4.6"
@@ -83873,8 +84450,8 @@ in
       sources."through-2.2.7"
       sources."tweetnacl-0.14.5"
       sources."tweetnacl-auth-0.3.1"
-      sources."ultron-1.0.2"
-      sources."ws-1.1.5"
+      sources."typedarray-to-buffer-4.0.0"
+      sources."ws-7.4.6"
       sources."xtend-4.0.2"
     ];
     buildInputs = globalBuildInputs;
@@ -83908,15 +84485,15 @@ in
   gitmoji-cli = nodeEnv.buildNodePackage {
     name = "gitmoji-cli";
     packageName = "gitmoji-cli";
-    version = "3.3.1";
+    version = "4.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-3.3.1.tgz";
-      sha512 = "wsCS8L8QTb9ghnJJpn1qKj+LokhGQ7OlKSM/n6/LhB8E4w/Pn4hiSgqcBthaL5J6CwJiWjpbNSA4t3sE0yqEPw==";
+      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-4.1.0.tgz";
+      sha512 = "xf6lKP7Ptas6bIdn/KvOn7UqkPS9/BBKcGCDVrsak/e0dWYeDZIOCMNwWxLp/zEjwBMSiPZtJdOdsIdmWap3bQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -83928,10 +84505,12 @@ in
       })
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
+      sources."@tootallnate/once-1.1.2"
       sources."@types/minimist-1.2.1"
       sources."@types/normalize-package-data-2.4.0"
-      sources."ajv-7.2.4"
-      sources."ajv-formats-1.6.1"
+      sources."agent-base-6.0.2"
+      sources."ajv-8.5.0"
+      sources."ajv-formats-2.1.0"
       (sources."ansi-align-3.0.0" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
@@ -83945,6 +84524,11 @@ in
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
       sources."arrify-1.0.1"
+      (sources."ast-types-0.13.4" // {
+        dependencies = [
+          sources."tslib-2.2.0"
+        ];
+      })
       sources."atomically-1.7.0"
       sources."base64-js-1.5.1"
       sources."bl-4.1.0"
@@ -83955,6 +84539,7 @@ in
         ];
       })
       sources."buffer-5.7.1"
+      sources."bytes-3.1.0"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -83963,7 +84548,7 @@ in
       })
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -83974,15 +84559,18 @@ in
       sources."clone-response-1.0.2"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."conf-9.0.2"
+      sources."conf-10.0.1"
       (sources."configstore-5.0.1" // {
         dependencies = [
           sources."dot-prop-5.3.0"
         ];
       })
+      sources."core-util-is-1.0.2"
       sources."cross-spawn-7.0.3"
       sources."crypto-random-string-2.0.0"
+      sources."data-uri-to-buffer-3.0.1"
       sources."debounce-fn-4.0.0"
+      sources."debug-4.3.2"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -83991,8 +84579,11 @@ in
       })
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
+      sources."deep-is-0.1.3"
       sources."defaults-1.0.3"
       sources."defer-to-connect-1.1.3"
+      sources."degenerator-2.2.0"
+      sources."depd-1.1.2"
       sources."dot-prop-6.0.1"
       sources."duplexer3-0.1.4"
       sources."emoji-regex-8.0.0"
@@ -84001,14 +84592,28 @@ in
       sources."error-ex-1.3.2"
       sources."escape-goat-2.1.1"
       sources."escape-string-regexp-1.0.5"
-      sources."execa-5.0.0"
+      sources."escodegen-1.14.3"
+      sources."esprima-4.0.1"
+      sources."estraverse-4.3.0"
+      sources."esutils-2.0.3"
+      sources."execa-5.0.1"
       sources."external-editor-3.1.0"
       sources."fast-deep-equal-3.1.3"
+      sources."fast-levenshtein-2.0.6"
       sources."figures-3.2.0"
+      sources."file-uri-to-path-2.0.0"
       sources."find-up-3.0.0"
+      sources."fs-extra-8.1.0"
+      (sources."ftp-0.3.10" // {
+        dependencies = [
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."function-bind-1.1.1"
       sources."fuse.js-6.4.6"
       sources."get-stream-6.0.1"
+      sources."get-uri-3.0.2"
       sources."global-dirs-3.0.0"
       (sources."got-9.6.0" // {
         dependencies = [
@@ -84022,6 +84627,9 @@ in
       sources."has-yarn-2.1.0"
       sources."hosted-git-info-4.0.2"
       sources."http-cache-semantics-4.1.0"
+      sources."http-errors-1.7.3"
+      sources."http-proxy-agent-4.0.1"
+      sources."https-proxy-agent-5.0.0"
       sources."human-signals-2.1.0"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
@@ -84032,9 +84640,10 @@ in
       sources."ini-2.0.0"
       sources."inquirer-7.3.3"
       sources."inquirer-autocomplete-prompt-1.3.0"
+      sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-installed-globally-0.4.0"
       sources."is-interactive-1.0.0"
@@ -84046,15 +84655,18 @@ in
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."is-yarn-global-0.3.0"
+      sources."isarray-0.0.1"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
       sources."json-buffer-3.0.0"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-traverse-1.0.0"
       sources."json-schema-typed-7.0.3"
+      sources."jsonfile-4.0.0"
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
       sources."latest-version-5.1.0"
+      sources."levn-0.3.0"
       sources."lines-and-columns-1.1.6"
       (sources."locate-path-3.0.0" // {
         dependencies = [
@@ -84082,10 +84694,12 @@ in
       sources."min-indent-1.0.1"
       sources."minimist-1.2.5"
       sources."minimist-options-4.1.0"
+      sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
+      sources."netmask-2.0.2"
       sources."node-fetch-2.6.1"
       sources."normalize-package-data-3.0.2"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-run-path-4.0.1"
       sources."once-1.4.0"
       (sources."onetime-5.1.2" // {
@@ -84093,12 +84707,15 @@ in
           sources."mimic-fn-2.1.0"
         ];
       })
+      sources."optionator-0.8.3"
       sources."ora-5.4.0"
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
       sources."p-limit-2.3.0"
       sources."p-locate-3.0.0"
       sources."p-try-2.2.0"
+      sources."pac-proxy-agent-4.1.0"
+      sources."pac-resolver-4.2.0"
       (sources."package-json-6.5.0" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -84107,13 +84724,22 @@ in
       sources."parse-json-5.2.0"
       sources."path-exists-4.0.0"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pkg-up-3.1.0"
+      sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
+      (sources."proxy-agent-4.0.1" // {
+        dependencies = [
+          sources."lru-cache-5.1.1"
+          sources."yallist-3.1.1"
+        ];
+      })
+      sources."proxy-from-env-1.1.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."pupa-2.1.1"
       sources."quick-lru-4.0.1"
+      sources."raw-body-2.4.1"
       (sources."rc-1.2.8" // {
         dependencies = [
           sources."ini-1.3.8"
@@ -84153,13 +84779,19 @@ in
           sources."semver-6.3.0"
         ];
       })
+      sources."setprototypeof-1.1.1"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."signal-exit-3.0.3"
+      sources."smart-buffer-4.1.0"
+      sources."socks-2.6.1"
+      sources."socks-proxy-agent-5.0.0"
+      sources."source-map-0.6.1"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
+      sources."statuses-1.5.0"
       sources."string-width-4.2.2"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.0"
@@ -84170,11 +84802,15 @@ in
       sources."through-2.3.8"
       sources."tmp-0.0.33"
       sources."to-readable-stream-1.0.0"
-      sources."trim-newlines-3.0.0"
+      sources."toidentifier-1.0.0"
+      sources."trim-newlines-3.0.1"
       sources."tslib-1.14.1"
+      sources."type-check-0.3.2"
       sources."type-fest-0.21.3"
       sources."typedarray-to-buffer-3.1.5"
       sources."unique-string-2.0.0"
+      sources."universalify-0.1.2"
+      sources."unpipe-1.0.0"
       sources."update-notifier-5.1.0"
       sources."uri-js-4.4.1"
       sources."url-parse-lax-3.0.0"
@@ -84183,10 +84819,12 @@ in
       sources."wcwidth-1.0.1"
       sources."which-2.0.2"
       sources."widest-line-3.1.0"
+      sources."word-wrap-1.2.3"
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
       sources."xdg-basedir-4.0.0"
+      sources."xregexp-2.0.0"
       sources."yallist-4.0.0"
       sources."yargs-parser-20.2.7"
     ];
@@ -84211,8 +84849,8 @@ in
     dependencies = [
       sources."@ardatan/aggregate-error-0.0.6"
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -84225,25 +84863,21 @@ in
       sources."@exodus/schemasafe-1.0.0-rc.3"
       sources."@graphql-cli/common-4.1.0"
       sources."@graphql-cli/init-4.1.0"
-      (sources."@graphql-tools/batch-execute-7.1.0" // {
+      (sources."@graphql-tools/batch-execute-7.1.2" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
-            dependencies = [
-              sources."tslib-2.2.0"
-            ];
-          })
-          sources."tslib-2.1.0"
+          sources."@graphql-tools/utils-7.10.0"
+          sources."tslib-2.2.0"
         ];
       })
-      (sources."@graphql-tools/delegate-7.1.2" // {
+      (sources."@graphql-tools/delegate-7.1.5" // {
         dependencies = [
-          sources."@graphql-tools/utils-7.7.3"
+          sources."@graphql-tools/utils-7.10.0"
           sources."tslib-2.2.0"
         ];
       })
       (sources."@graphql-tools/graphql-file-loader-6.2.7" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
+          (sources."@graphql-tools/utils-7.10.0" // {
             dependencies = [
               sources."tslib-2.2.0"
             ];
@@ -84251,14 +84885,14 @@ in
           sources."tslib-2.1.0"
         ];
       })
-      (sources."@graphql-tools/import-6.3.0" // {
+      (sources."@graphql-tools/import-6.3.1" // {
         dependencies = [
-          sources."tslib-2.1.0"
+          sources."tslib-2.2.0"
         ];
       })
       (sources."@graphql-tools/json-file-loader-6.2.6" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
+          (sources."@graphql-tools/utils-7.10.0" // {
             dependencies = [
               sources."tslib-2.2.0"
             ];
@@ -84266,32 +84900,24 @@ in
         ];
       })
       sources."@graphql-tools/load-6.2.4"
-      (sources."@graphql-tools/merge-6.2.13" // {
+      (sources."@graphql-tools/merge-6.2.14" // {
         dependencies = [
-          sources."@graphql-tools/utils-7.7.3"
+          sources."@graphql-tools/utils-7.10.0"
           sources."tslib-2.2.0"
         ];
       })
-      (sources."@graphql-tools/schema-7.1.3" // {
+      (sources."@graphql-tools/schema-7.1.5" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
-            dependencies = [
-              sources."tslib-2.2.0"
-            ];
-          })
-          sources."tslib-2.1.0"
+          sources."@graphql-tools/utils-7.10.0"
+          sources."tslib-2.2.0"
         ];
       })
-      (sources."@graphql-tools/url-loader-6.8.2" // {
+      (sources."@graphql-tools/url-loader-6.10.1" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
-            dependencies = [
-              sources."tslib-2.2.0"
-            ];
-          })
-          sources."cross-fetch-3.1.1"
+          sources."@graphql-tools/utils-7.10.0"
+          sources."cross-fetch-3.1.4"
           sources."form-data-4.0.0"
-          sources."tslib-2.1.0"
+          sources."tslib-2.2.0"
         ];
       })
       (sources."@graphql-tools/utils-6.2.4" // {
@@ -84303,25 +84929,24 @@ in
           })
         ];
       })
-      (sources."@graphql-tools/wrap-7.0.5" // {
+      (sources."@graphql-tools/wrap-7.0.8" // {
         dependencies = [
-          (sources."@graphql-tools/utils-7.7.3" // {
-            dependencies = [
-              sources."tslib-2.2.0"
-            ];
-          })
+          sources."@graphql-tools/utils-7.10.0"
+          sources."tslib-2.2.0"
         ];
       })
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
+      sources."@microsoft/fetch-event-source-2.0.1"
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/websocket-1.0.2"
+      sources."abort-controller-3.0.0"
       sources."aggregate-error-3.1.0"
       sources."ajv-6.12.6"
       (sources."ansi-escapes-4.3.2" // {
@@ -84332,22 +84957,22 @@ in
       sources."ansi-regex-4.1.0"
       sources."ansi-styles-4.3.0"
       sources."argparse-1.0.10"
-      sources."array-filter-1.0.0"
       sources."array-union-2.1.0"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
+      sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
+      sources."backo2-1.0.2"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
       sources."bcrypt-pbkdf-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."buffer-5.7.1"
-      sources."busboy-0.3.1"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -84407,22 +85032,21 @@ in
       sources."defer-to-connect-1.1.3"
       sources."define-properties-1.1.3"
       sources."delayed-stream-1.0.0"
-      sources."depd-1.1.2"
-      sources."dicer-0.3.0"
       sources."dir-glob-3.0.1"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-3.3.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
-      sources."eventsource-1.1.0"
+      sources."event-target-shim-5.0.1"
+      sources."eventemitter3-3.1.2"
       sources."execa-1.0.0"
       sources."extend-3.0.2"
       (sources."external-editor-3.1.0" // {
@@ -84445,7 +85069,6 @@ in
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
       sources."form-urlencoded-4.5.1"
-      sources."fs-capacitor-6.2.0"
       sources."fs-extra-9.0.1"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
@@ -84455,7 +85078,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."globby-11.0.1"
       (sources."got-9.6.0" // {
@@ -84472,8 +85095,7 @@ in
       })
       sources."graphql-subscriptions-1.2.1"
       sources."graphql-type-json-0.3.2"
-      sources."graphql-upload-11.0.0"
-      sources."graphql-ws-4.2.2"
+      sources."graphql-ws-4.7.0"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."has-1.0.3"
@@ -84481,7 +85103,6 @@ in
       sources."has-flag-4.0.0"
       sources."has-symbols-1.0.2"
       sources."http-cache-semantics-4.1.0"
-      sources."http-errors-1.8.0"
       sources."http-signature-1.2.0"
       sources."http2-client-1.3.3"
       sources."iconv-lite-0.4.24"
@@ -84509,10 +85130,10 @@ in
       })
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -84521,13 +85142,13 @@ in
       sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-promise-4.0.0"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-set-2.0.2"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
@@ -84536,7 +85157,6 @@ in
       sources."is-wsl-2.2.0"
       sources."isarray-2.0.5"
       sources."isexe-2.0.0"
-      sources."isobject-4.0.0"
       sources."isomorphic-ws-4.0.1"
       sources."isstream-0.1.2"
       sources."iterall-1.3.0"
@@ -84584,6 +85204,7 @@ in
         ];
       })
       sources."merge2-1.4.1"
+      sources."meros-1.1.4"
       sources."micromatch-4.0.4"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
@@ -84607,22 +85228,21 @@ in
       sources."node-fetch-h2-2.3.0"
       sources."node-readfiles-0.2.0"
       sources."normalize-path-2.1.1"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-run-path-2.0.2"
       sources."oas-kit-common-1.0.8"
-      sources."oas-linter-3.2.1"
-      (sources."oas-resolver-2.5.4" // {
+      sources."oas-linter-3.2.2"
+      (sources."oas-resolver-2.5.5" // {
         dependencies = [
-          sources."yargs-16.2.0"
+          sources."yargs-17.0.1"
         ];
       })
       sources."oas-schema-walker-1.1.5"
-      sources."oas-validator-5.0.5"
+      sources."oas-validator-5.0.6"
       sources."oauth-sign-0.9.0"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
-      sources."object-path-0.11.5"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
@@ -84639,10 +85259,9 @@ in
           sources."strip-ansi-6.0.0"
         ];
       })
-      sources."original-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."p-any-2.1.0"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
@@ -84667,14 +85286,13 @@ in
       sources."path-key-2.0.1"
       sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pluralize-8.0.0"
       sources."prepend-http-2.0.0"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      sources."querystringify-2.2.0"
       sources."queue-microtask-1.2.3"
       sources."rc-1.2.8"
       sources."reftools-1.1.8"
@@ -84684,7 +85302,6 @@ in
       sources."remove-trailing-separator-1.1.0"
       sources."request-2.88.2"
       sources."require-directory-2.1.1"
-      sources."requires-port-1.0.0"
       sources."resolve-from-5.0.0"
       sources."responselike-1.0.2"
       sources."restore-cursor-2.0.0"
@@ -84700,7 +85317,6 @@ in
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."semver-5.7.1"
-      sources."setprototypeof-1.2.0"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."should-13.2.3"
@@ -84714,10 +85330,7 @@ in
       sources."simple-git-2.21.0"
       sources."slash-3.0.0"
       sources."sprintf-js-1.0.3"
-      sources."sse-z-0.3.0"
       sources."sshpk-1.16.1"
-      sources."statuses-1.5.0"
-      sources."streamsearch-0.1.2"
       sources."string-env-interpolation-1.0.1"
       (sources."string-width-4.2.2" // {
         dependencies = [
@@ -84730,19 +85343,24 @@ in
       sources."strip-ansi-5.2.0"
       sources."strip-eof-1.0.0"
       sources."strip-json-comments-2.0.1"
+      (sources."subscriptions-transport-ws-0.9.18" // {
+        dependencies = [
+          sources."ws-5.2.2"
+        ];
+      })
       sources."supports-color-7.2.0"
-      (sources."swagger2openapi-7.0.5" // {
+      (sources."swagger2openapi-7.0.6" // {
         dependencies = [
-          sources."yargs-16.2.0"
+          sources."yargs-17.0.1"
         ];
       })
+      sources."symbol-observable-1.2.0"
       sources."sync-fetch-0.3.0"
       sources."tar-6.0.5"
       sources."through-2.3.8"
       sources."tmp-0.2.1"
       sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
-      sources."toidentifier-1.0.0"
       sources."tough-cookie-2.5.0"
       sources."tslib-2.0.2"
       sources."tunnel-agent-0.6.0"
@@ -84752,10 +85370,10 @@ in
       sources."universalify-1.0.0"
       sources."unixify-1.0.0"
       sources."uri-js-4.4.1"
-      sources."url-parse-1.5.1"
       sources."url-parse-lax-3.0.0"
       sources."uuid-3.4.0"
       sources."valid-url-1.0.9"
+      sources."value-or-promise-1.0.6"
       sources."verror-1.10.0"
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
@@ -84769,7 +85387,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.4.4"
+      sources."ws-7.4.5"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
       sources."yaml-1.10.2"
@@ -84789,10 +85407,10 @@ in
   grunt-cli = nodeEnv.buildNodePackage {
     name = "grunt-cli";
     packageName = "grunt-cli";
-    version = "1.4.2";
+    version = "1.4.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.2.tgz";
-      sha512 = "wsu6BZh7KCnfeaSkDrKIAvOlqGKxNRTZjc8xfZlvxCByQIqUfZ31kh5uHpPnhQ4NdVgvaWaVxa1LUbVU80nACw==";
+      url = "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz";
+      sha512 = "9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -84811,13 +85429,13 @@ in
       sources."function-bind-1.1.1"
       sources."global-modules-1.0.0"
       sources."global-prefix-1.0.2"
-      sources."grunt-known-options-1.1.1"
+      sources."grunt-known-options-2.0.0"
       sources."has-1.0.3"
       sources."homedir-polyfill-1.0.3"
       sources."ini-1.3.8"
       sources."interpret-1.1.0"
       sources."is-absolute-1.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-extglob-2.1.1"
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
@@ -84841,10 +85459,10 @@ in
       sources."osenv-0.1.5"
       sources."parse-filepath-1.0.2"
       sources."parse-passwd-1.0.0"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-root-0.1.1"
       sources."path-root-regex-0.1.2"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."rechoir-0.7.0"
       sources."resolve-1.20.0"
       sources."resolve-dir-1.0.1"
@@ -84908,7 +85526,7 @@ in
       sources."express-4.17.1"
       sources."express-ws-2.0.0"
       sources."finalhandler-1.1.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."http-errors-1.7.2"
       sources."iconv-lite-0.4.24"
@@ -84927,7 +85545,7 @@ in
       sources."options-0.0.6"
       sources."parseurl-1.3.3"
       sources."path-to-regexp-0.1.7"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."qs-6.7.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.0"
@@ -84978,7 +85596,7 @@ in
       sources."esutils-2.0.3"
       sources."graphql-14.7.0"
       sources."has-ansi-2.0.0"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."is-stream-1.1.0"
       sources."iterall-1.3.0"
       sources."js-tokens-3.0.2"
@@ -85052,7 +85670,7 @@ in
       (sources."marked-terminal-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."supports-color-7.2.0"
         ];
       })
@@ -85075,7 +85693,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."systeminformation-4.34.20"
+      sources."systeminformation-4.34.23"
       sources."term-canvas-0.0.5"
       sources."type-fest-0.21.3"
       sources."wordwrap-0.0.3"
@@ -85279,7 +85897,7 @@ in
       sources."get-caller-file-1.0.3"
       sources."get-intrinsic-1.1.1"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -85313,7 +85931,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-0.1.1"
@@ -85400,7 +86018,7 @@ in
       sources."path-dirname-1.0.2"
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-root-0.1.1"
       sources."path-root-regex-0.1.2"
       sources."path-type-1.1.0"
@@ -85477,7 +86095,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."stack-trace-0.0.10"
       (sources."static-extend-0.1.2" // {
@@ -85553,8 +86171,8 @@ in
       sources."wrappy-1.0.2"
       sources."xtend-4.0.2"
       sources."y18n-3.2.2"
-      sources."yargs-7.1.1"
-      sources."yargs-parser-5.0.0-security.0"
+      sources."yargs-7.1.2"
+      sources."yargs-parser-5.0.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -85715,7 +86333,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -85811,7 +86429,7 @@ in
       sources."parse-passwd-1.0.0"
       sources."pascalcase-0.1.1"
       sources."path-exists-2.1.0"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-root-0.1.1"
       sources."path-root-regex-0.1.2"
       sources."path-type-1.1.0"
@@ -85874,7 +86492,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."stack-trace-0.0.10"
       (sources."static-extend-0.1.2" // {
@@ -85922,8 +86540,8 @@ in
       sources."which-module-1.0.0"
       sources."wrap-ansi-2.1.0"
       sources."y18n-3.2.2"
-      sources."yargs-7.1.1"
-      sources."yargs-parser-5.0.0-security.0"
+      sources."yargs-7.1.2"
+      sources."yargs-parser-5.0.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -85971,7 +86589,7 @@ in
       sources."param-case-2.1.1"
       sources."relateurl-0.2.7"
       sources."source-map-0.6.1"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."upper-case-1.1.3"
     ];
     buildInputs = globalBuildInputs;
@@ -86095,7 +86713,7 @@ in
       sources."debug-3.2.7"
       sources."ecstatic-3.3.2"
       sources."eventemitter3-4.0.7"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."has-1.0.3"
@@ -86107,7 +86725,7 @@ in
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
       sources."ms-2.1.3"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."opener-1.5.2"
       sources."portfinder-1.0.28"
       sources."qs-6.10.1"
@@ -86258,7 +86876,7 @@ in
       sources."extsprintf-1.4.0"
       sources."fs.realpath-1.0.0"
       sources."fuzzyset.js-0.0.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."hue-sdk-0.1.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -86304,7 +86922,7 @@ in
       sources."nel-1.2.0"
       sources."node-gyp-build-4.2.3"
       sources."uuid-3.4.0"
-      sources."zeromq-5.2.7"
+      sources."zeromq-5.2.8"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -86632,7 +87250,7 @@ in
     };
     dependencies = [
       sources."@types/jquery-3.5.5"
-      sources."@types/sizzle-2.3.2"
+      sources."@types/sizzle-2.3.3"
       sources."arch-2.2.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
@@ -86649,7 +87267,7 @@ in
       sources."fs-extra-0.24.0"
       sources."fs.realpath-1.0.0"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."good-listener-1.2.2"
       sources."graceful-fs-4.2.6"
       sources."historic-readline-1.0.8"
@@ -86660,7 +87278,7 @@ in
       sources."is-wsl-2.2.0"
       sources."isexe-2.0.0"
       sources."jquery-3.6.0"
-      sources."jquery.terminal-2.22.0"
+      sources."jquery.terminal-2.25.1"
       sources."jsonfile-2.4.0"
       sources."keyboardevent-key-polyfill-1.1.0"
       sources."line-reader-0.4.0"
@@ -86804,7 +87422,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
       sources."get-uri-3.0.2"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
       sources."has-flag-4.0.0"
@@ -86820,7 +87438,7 @@ in
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."cli-cursor-3.1.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
@@ -86885,7 +87503,7 @@ in
           sources."path-key-2.0.1"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."open-7.4.2"
@@ -86992,7 +87610,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xregexp-2.0.0"
       sources."yallist-3.1.1"
     ];
@@ -87017,68 +87635,69 @@ in
     };
     dependencies = [
       sources."@iarna/toml-2.2.5"
-      sources."@ot-builder/bin-composite-types-1.0.4"
-      sources."@ot-builder/bin-util-1.0.4"
-      (sources."@ot-builder/cli-help-shower-1.0.4" // {
+      sources."@ot-builder/bin-composite-types-1.0.8"
+      sources."@ot-builder/bin-util-1.0.8"
+      (sources."@ot-builder/cli-help-shower-1.0.8" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
           sources."supports-color-7.2.0"
         ];
       })
-      (sources."@ot-builder/cli-proc-1.0.4" // {
+      (sources."@ot-builder/cli-proc-1.0.8" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
           sources."supports-color-7.2.0"
         ];
       })
-      (sources."@ot-builder/cli-shared-1.0.4" // {
+      (sources."@ot-builder/cli-shared-1.0.8" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
           sources."supports-color-7.2.0"
         ];
       })
-      sources."@ot-builder/common-impl-1.0.4"
-      sources."@ot-builder/errors-1.0.4"
-      sources."@ot-builder/io-bin-cff-1.0.4"
-      sources."@ot-builder/io-bin-encoding-1.0.4"
-      sources."@ot-builder/io-bin-ext-private-1.0.4"
-      sources."@ot-builder/io-bin-font-1.0.4"
-      sources."@ot-builder/io-bin-glyph-store-1.0.4"
-      sources."@ot-builder/io-bin-layout-1.0.4"
-      sources."@ot-builder/io-bin-metadata-1.0.4"
-      sources."@ot-builder/io-bin-metric-1.0.4"
-      sources."@ot-builder/io-bin-name-1.0.4"
-      sources."@ot-builder/io-bin-sfnt-1.0.4"
-      sources."@ot-builder/io-bin-ttf-1.0.4"
-      sources."@ot-builder/ot-1.0.4"
-      sources."@ot-builder/ot-encoding-1.0.4"
-      sources."@ot-builder/ot-ext-private-1.0.4"
-      sources."@ot-builder/ot-glyphs-1.0.4"
-      sources."@ot-builder/ot-layout-1.0.4"
-      sources."@ot-builder/ot-metadata-1.0.4"
-      sources."@ot-builder/ot-name-1.0.4"
-      sources."@ot-builder/ot-sfnt-1.0.4"
-      sources."@ot-builder/ot-standard-glyph-namer-1.0.4"
-      sources."@ot-builder/prelude-1.0.4"
-      sources."@ot-builder/primitive-1.0.4"
-      sources."@ot-builder/rectify-1.0.4"
-      sources."@ot-builder/stat-glyphs-1.0.4"
-      sources."@ot-builder/trace-1.0.4"
-      sources."@ot-builder/var-store-1.0.4"
-      sources."@ot-builder/variance-1.0.4"
+      sources."@ot-builder/common-impl-1.0.8"
+      sources."@ot-builder/errors-1.0.8"
+      sources."@ot-builder/io-bin-cff-1.0.8"
+      sources."@ot-builder/io-bin-encoding-1.0.8"
+      sources."@ot-builder/io-bin-ext-private-1.0.8"
+      sources."@ot-builder/io-bin-font-1.0.8"
+      sources."@ot-builder/io-bin-glyph-store-1.0.8"
+      sources."@ot-builder/io-bin-layout-1.0.8"
+      sources."@ot-builder/io-bin-metadata-1.0.8"
+      sources."@ot-builder/io-bin-metric-1.0.8"
+      sources."@ot-builder/io-bin-name-1.0.8"
+      sources."@ot-builder/io-bin-sfnt-1.0.8"
+      sources."@ot-builder/io-bin-ttf-1.0.8"
+      sources."@ot-builder/ot-1.0.8"
+      sources."@ot-builder/ot-encoding-1.0.8"
+      sources."@ot-builder/ot-ext-private-1.0.8"
+      sources."@ot-builder/ot-glyphs-1.0.8"
+      sources."@ot-builder/ot-layout-1.0.8"
+      sources."@ot-builder/ot-metadata-1.0.8"
+      sources."@ot-builder/ot-name-1.0.8"
+      sources."@ot-builder/ot-sfnt-1.0.8"
+      sources."@ot-builder/ot-standard-glyph-namer-1.0.8"
+      sources."@ot-builder/prelude-1.0.8"
+      sources."@ot-builder/primitive-1.0.8"
+      sources."@ot-builder/rectify-1.0.8"
+      sources."@ot-builder/stat-glyphs-1.0.8"
+      sources."@ot-builder/trace-1.0.8"
+      sources."@ot-builder/var-store-1.0.8"
+      sources."@ot-builder/variance-1.0.8"
       sources."@unicode/unicode-13.0.0-1.0.6"
+      sources."aglfn-1.0.2"
       sources."amdefine-1.0.1"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
@@ -87141,11 +87760,11 @@ in
       sources."fs-extra-9.1.0"
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-2.0.5"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-flag-3.0.0"
       sources."hashish-0.0.4"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-fullwidth-code-point-3.0.0"
@@ -87163,11 +87782,11 @@ in
       sources."once-1.4.0"
       sources."onetime-5.1.2"
       sources."optionator-0.8.3"
-      sources."ot-builder-1.0.4"
-      (sources."otb-ttc-bundle-1.0.4" // {
+      sources."ot-builder-1.0.8"
+      (sources."otb-ttc-bundle-1.0.8" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
@@ -87231,7 +87850,7 @@ in
       (sources."verda-1.2.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."cliui-6.0.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
@@ -87334,7 +87953,7 @@ in
       sources."fast-json-patch-2.2.1"
       sources."fs.realpath-1.0.0"
       sources."get-func-name-2.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-flag-3.0.0"
       sources."hexer-1.5.0"
       sources."inflight-1.0.6"
@@ -87392,26 +88011,30 @@ in
   joplin = nodeEnv.buildNodePackage {
     name = "joplin";
     packageName = "joplin";
-    version = "1.6.4";
+    version = "1.8.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/joplin/-/joplin-1.6.4.tgz";
-      sha512 = "jfiqk9aqN3mAZ+TIGqubTKGTBB5Q8KRmeXS2qr/2N80KFJHCqdCFhsyI/E2hfdd3CA4Gu5Ls9WTxXA3MW/XjwA==";
+      url = "https://registry.npmjs.org/joplin/-/joplin-1.8.1.tgz";
+      sha512 = "ukyHTdD3LgHl5A9No350YkAlxMRoWVhP9FR8MVhyXS1I8p6kSW27FZF3r8FBLxfwHnGvRQM7gwBRHJDKprEG8A==";
     };
     dependencies = [
       sources."@braintree/sanitize-url-3.1.0"
       sources."@cronvel/get-pixels-3.4.0"
-      sources."@joplin/fork-htmlparser2-4.1.23"
-      sources."@joplin/fork-sax-1.2.27"
-      sources."@joplin/lib-1.0.18"
-      (sources."@joplin/renderer-1.0.26" // {
+      sources."@joplin/fork-htmlparser2-4.1.26"
+      sources."@joplin/fork-sax-1.2.30"
+      sources."@joplin/lib-1.8.2"
+      (sources."@joplin/renderer-1.8.2" // {
         dependencies = [
           sources."fs-extra-8.1.0"
           sources."jsonfile-4.0.0"
           sources."uslug-git+https://github.com/laurent22/uslug.git#emoji-support"
         ];
       })
-      sources."@joplin/turndown-4.0.45"
-      sources."@joplin/turndown-plugin-gfm-1.0.27"
+      (sources."@joplin/turndown-4.0.48" // {
+        dependencies = [
+          sources."css-2.2.4"
+        ];
+      })
+      sources."@joplin/turndown-plugin-gfm-1.0.30"
       sources."abab-2.0.5"
       sources."abbrev-1.1.1"
       sources."acorn-7.4.1"
@@ -87451,7 +88074,7 @@ in
       sources."async-mutex-0.1.4"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.888.0" // {
+      (sources."aws-sdk-2.918.0" // {
         dependencies = [
           sources."sax-1.2.1"
           sources."uuid-3.3.2"
@@ -87483,11 +88106,11 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-4.1.0"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."charenc-0.0.2"
       sources."chokidar-3.5.1"
       sources."chownr-1.1.4"
-      sources."chroma-js-2.1.1"
+      sources."chroma-js-2.1.2"
       sources."clean-css-4.2.3"
       sources."clean-html-1.5.0"
       sources."cliss-0.0.2"
@@ -87507,7 +88130,11 @@ in
       sources."cross-env-6.0.3"
       sources."cross-spawn-7.0.3"
       sources."crypt-0.0.2"
-      sources."css-2.2.4"
+      (sources."css-3.0.0" // {
+        dependencies = [
+          sources."source-map-resolve-0.6.0"
+        ];
+      })
       sources."css-b64-images-0.2.5"
       sources."cssom-0.4.4"
       (sources."cssstyle-2.3.0" // {
@@ -87563,7 +88190,7 @@ in
       sources."depd-1.1.2"
       sources."detect-libc-1.0.3"
       sources."diff-match-patch-1.0.5"
-      (sources."dom-serializer-1.3.1" // {
+      (sources."dom-serializer-1.3.2" // {
         dependencies = [
           sources."domhandler-4.2.0"
         ];
@@ -87588,7 +88215,7 @@ in
       })
       (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."end-of-stream-1.4.4"
@@ -87612,7 +88239,7 @@ in
       sources."file-uri-to-path-1.0.0"
       sources."fill-range-7.0.1"
       sources."find-up-2.1.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."font-awesome-filetypes-2.1.0"
       sources."for-each-property-0.0.4"
       sources."for-each-property-deep-0.0.3"
@@ -87638,7 +88265,7 @@ in
       sources."get-stdin-5.0.1"
       sources."getpass-0.1.7"
       sources."github-from-package-0.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."graceful-fs-4.2.6"
       sources."graphlib-2.1.8"
@@ -87672,7 +88299,7 @@ in
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.1.13"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       (sources."image-data-uri-2.0.1" // {
         dependencies = [
           sources."fs-extra-0.26.7"
@@ -87745,12 +88372,12 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-2.4.0"
       sources."jsprim-1.4.1"
-      (sources."katex-0.12.0" // {
+      (sources."katex-0.13.11" // {
         dependencies = [
-          sources."commander-2.20.3"
+          sources."commander-6.2.1"
         ];
       })
-      sources."keytar-7.6.0"
+      sources."keytar-7.7.0"
       sources."khroma-1.4.1"
       sources."klaw-1.3.1"
       sources."lazyness-1.2.0"
@@ -87783,7 +88410,7 @@ in
       sources."markdown-it-deflist-2.1.0"
       sources."markdown-it-emoji-1.4.0"
       sources."markdown-it-expand-tabs-1.0.13"
-      sources."markdown-it-footnote-3.0.2"
+      sources."markdown-it-footnote-3.0.3"
       sources."markdown-it-ins-3.0.1"
       sources."markdown-it-mark-3.0.1"
       (sources."markdown-it-multimd-table-4.1.0" // {
@@ -87799,7 +88426,7 @@ in
       sources."md5-2.3.0"
       sources."md5-file-4.0.0"
       sources."mdurl-1.0.1"
-      sources."mermaid-8.9.2"
+      sources."mermaid-8.10.1"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."mimic-response-2.1.0"
@@ -87809,7 +88436,7 @@ in
           sources."debug-4.3.2"
           sources."html-minifier-4.0.0"
           sources."ms-2.1.2"
-          sources."uglify-js-3.13.4"
+          sources."uglify-js-3.13.8"
         ];
       })
       sources."minimatch-3.0.4"
@@ -87827,19 +88454,19 @@ in
       sources."ms-2.1.3"
       sources."multiparty-4.2.2"
       sources."mustache-4.2.0"
-      sources."nanoid-3.1.22"
+      sources."nanoid-3.1.23"
       sources."napi-build-utils-1.0.2"
       sources."ndarray-1.0.19"
       sources."ndarray-pack-1.2.1"
       sources."needle-2.6.0"
-      sources."nextgen-events-1.3.4"
+      sources."nextgen-events-1.4.0"
       sources."no-case-2.3.2"
-      (sources."node-abi-2.21.0" // {
+      (sources."node-abi-2.30.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."node-addon-api-3.1.0"
+      sources."node-addon-api-3.2.1"
       sources."node-bitmap-0.0.1"
       sources."node-emoji-1.10.0"
       sources."node-fetch-1.7.3"
@@ -87865,7 +88492,7 @@ in
       sources."noop-logger-0.1.1"
       sources."nopt-4.0.3"
       sources."normalize-path-3.0.0"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-packlist-1.4.8"
       sources."npmlog-4.1.2"
@@ -87895,12 +88522,12 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-3.0.0"
       sources."pipe-functions-1.3.0"
       sources."pn-1.1.0"
       sources."pngjs-5.0.0"
-      sources."prebuild-install-6.1.1"
+      sources."prebuild-install-6.1.2"
       sources."prelude-ls-1.1.2"
       sources."process-nextick-args-2.0.1"
       sources."promise-7.3.1"
@@ -88104,7 +88731,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xml-name-validator-3.0.0"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
@@ -88139,7 +88766,7 @@ in
       sources."config-chain-1.1.12"
       sources."editorconfig-0.15.3"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
@@ -88190,16 +88817,16 @@ in
   jsdoc = nodeEnv.buildNodePackage {
     name = "jsdoc";
     packageName = "jsdoc";
-    version = "3.6.6";
+    version = "3.6.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.6.tgz";
-      sha512 = "znR99e1BHeyEkSvgDDpX0sTiTu+8aQyDl9DawrkOGZTTW8hv0deIFXx87114zJ7gRaDZKVQD/4tr1ifmJp9xhQ==";
+      url = "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.7.tgz";
+      sha512 = "sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==";
     };
     dependencies = [
-      sources."@babel/parser-7.13.15"
+      sources."@babel/parser-7.14.4"
       sources."argparse-1.0.10"
       sources."bluebird-3.7.2"
-      sources."catharsis-0.8.11"
+      sources."catharsis-0.9.0"
       sources."entities-2.0.3"
       sources."escape-string-regexp-2.0.0"
       sources."graceful-fs-4.2.6"
@@ -88209,7 +88836,7 @@ in
       sources."lodash-4.17.21"
       sources."markdown-it-10.0.0"
       sources."markdown-it-anchor-5.3.0"
-      sources."marked-0.8.2"
+      sources."marked-2.0.6"
       sources."mdurl-1.0.1"
       sources."mkdirp-1.0.4"
       sources."requizzle-0.2.3"
@@ -88217,7 +88844,7 @@ in
       sources."strip-json-comments-3.1.1"
       sources."taffydb-2.6.2"
       sources."uc.micro-1.0.6"
-      sources."underscore-1.10.2"
+      sources."underscore-1.13.1"
       sources."xmlcreate-2.0.3"
     ];
     buildInputs = globalBuildInputs;
@@ -88233,10 +88860,10 @@ in
   jshint = nodeEnv.buildNodePackage {
     name = "jshint";
     packageName = "jshint";
-    version = "2.12.0";
+    version = "2.13.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/jshint/-/jshint-2.12.0.tgz";
-      sha512 = "TwuuaUDmra0JMkuqvqy+WGo2xGHSNjv1BA1nTIgtH2K5z1jHuAEeAgp7laaR+hLRmajRjcrM71+vByBDanCyYA==";
+      url = "https://registry.npmjs.org/jshint/-/jshint-2.13.0.tgz";
+      sha512 = "Nd+md9wIeyfDK+RGrbOBzwLONSTdihGMtyGYU/t7zYcN2EgUa4iuY3VK2oxtPYrW5ycTj18iC+UbhNTxe4C66g==";
     };
     dependencies = [
       sources."balanced-match-1.0.2"
@@ -88258,7 +88885,7 @@ in
       sources."entities-1.0.0"
       sources."exit-0.1.2"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."htmlparser2-3.8.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -88286,10 +88913,10 @@ in
   json = nodeEnv.buildNodePackage {
     name = "json";
     packageName = "json";
-    version = "10.0.0";
+    version = "11.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/json/-/json-10.0.0.tgz";
-      sha512 = "iK7tAZtpoghibjdB1ncCWykeBMmke3JThUe+rnkD4qkZaglOIQ70Pw7r5UJ4lyUT+7gnw7ehmmLUHDuhqzQD+g==";
+      url = "https://registry.npmjs.org/json/-/json-11.0.0.tgz";
+      sha512 = "N/ITv3Yw9Za8cGxuQqSqrq6RHnlaHWZkAFavcfpH/R52522c26EbihMxnY7A1chxfXJ4d+cEFIsyTgfi9GihrA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -88363,7 +88990,7 @@ in
       sources."mime-types-2.1.30"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
@@ -88419,7 +89046,7 @@ in
         ];
       })
       sources."camelcase-6.2.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
       (sources."cliui-7.0.4" // {
@@ -88469,7 +89096,7 @@ in
         ];
       })
       sources."finalhandler-1.1.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."get-caller-file-2.0.5"
       sources."get-stream-4.1.0"
@@ -88530,9 +89157,9 @@ in
         ];
       })
       sources."ms-2.0.0"
-      sources."nanoid-3.1.22"
+      sources."nanoid-3.1.23"
       sources."negotiator-0.6.2"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."object-assign-4.1.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
@@ -88549,7 +89176,7 @@ in
       sources."please-upgrade-node-3.2.0"
       sources."pluralize-8.0.0"
       sources."prepend-http-2.0.0"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."pump-3.0.0"
       sources."pupa-2.1.1"
       sources."qs-6.7.0"
@@ -88702,7 +89329,7 @@ in
         ];
       })
       sources."@oclif/screen-1.0.4"
-      sources."@putdotio/api-client-8.15.3"
+      sources."@putdotio/api-client-8.16.0"
       sources."ajv-6.12.6"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.0"
@@ -88715,7 +89342,7 @@ in
       sources."braces-3.0.2"
       sources."call-bind-1.0.2"
       sources."cardinal-2.1.1"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."has-flag-4.0.0"
           sources."supports-color-7.2.0"
@@ -88757,7 +89384,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."dir-glob-3.0.1"
       sources."dot-prop-5.3.0"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."emoji-regex-8.0.0"
       sources."env-paths-2.2.1"
       sources."es5-ext-0.10.53"
@@ -88839,7 +89466,7 @@ in
       sources."next-tick-1.0.0"
       sources."nice-try-1.0.5"
       sources."node-downloader-helper-1.0.18"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-treeify-1.1.33"
       sources."onetime-5.1.2"
       sources."os-tmpdir-1.0.2"
@@ -88854,7 +89481,7 @@ in
       sources."path-exists-3.0.0"
       sources."path-key-2.0.1"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pkg-up-3.1.0"
       sources."punycode-2.1.1"
       sources."qs-6.10.1"
@@ -88911,10 +89538,10 @@ in
   katex = nodeEnv.buildNodePackage {
     name = "katex";
     packageName = "katex";
-    version = "0.13.2";
+    version = "0.13.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/katex/-/katex-0.13.2.tgz";
-      sha512 = "u/KhjFDhyPr+70aiBn9SL/9w/QlLagIXBi2NZSbNnBUp2tR8dCjQplyEMkEzniem5gOeSCBjlBUg4VaiWs1JJg==";
+      url = "https://registry.npmjs.org/katex/-/katex-0.13.11.tgz";
+      sha512 = "yJBHVIgwlAaapzlbvTpVF/ZOs8UkTj/sd46Fl8+qAf2/UiituPYVeapVD8ADZtqyRg/qNWUKt7gJoyYVWLrcXw==";
     };
     dependencies = [
       sources."commander-6.2.1"
@@ -88941,7 +89568,7 @@ in
       sources."@types/component-emitter-1.2.10"
       sources."@types/cookie-0.4.0"
       sources."@types/cors-2.8.10"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."accepts-1.3.7"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -88989,12 +89616,12 @@ in
       sources."fill-range-7.0.1"
       sources."finalhandler-1.1.2"
       sources."flatted-2.0.2"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."fs-extra-8.1.0"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
       sources."get-caller-file-2.0.5"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."graceful-fs-4.2.6"
       sources."http-errors-1.7.2"
@@ -89007,7 +89634,7 @@ in
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
-      sources."isbinaryfile-4.0.6"
+      sources."isbinaryfile-4.0.8"
       sources."jsonfile-4.0.0"
       sources."lodash-4.17.21"
       (sources."log4js-6.3.0" // {
@@ -89029,7 +89656,7 @@ in
       sources."once-1.4.0"
       sources."parseurl-1.3.3"
       sources."path-is-absolute-1.0.1"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."qjobs-1.2.0"
       sources."qs-6.7.0"
       sources."range-parser-1.2.1"
@@ -89077,7 +89704,7 @@ in
       sources."void-elements-2.0.1"
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."y18n-5.0.8"
       sources."yargs-16.2.0"
       sources."yargs-parser-20.2.7"
@@ -89122,7 +89749,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-3.1.0"
       sources."glob-stream-6.1.0"
       sources."graceful-fs-4.2.6"
@@ -89267,7 +89894,7 @@ in
       sources."get-caller-file-1.0.3"
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."has-flag-3.0.0"
@@ -89521,7 +90148,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-2.0.5"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."has-flag-3.0.0"
@@ -89693,8 +90320,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -89749,7 +90376,11 @@ in
           sources."pify-5.0.0"
         ];
       })
-      sources."@lerna/npm-dist-tag-4.0.0"
+      (sources."@lerna/npm-dist-tag-4.0.0" // {
+        dependencies = [
+          sources."npm-registry-fetch-9.0.0"
+        ];
+      })
       sources."@lerna/npm-install-4.0.0"
       (sources."@lerna/npm-publish-4.0.0" // {
         dependencies = [
@@ -89768,7 +90399,11 @@ in
       sources."@lerna/profiler-4.0.0"
       sources."@lerna/project-4.0.0"
       sources."@lerna/prompt-4.0.0"
-      sources."@lerna/publish-4.0.0"
+      (sources."@lerna/publish-4.0.0" // {
+        dependencies = [
+          sources."npm-registry-fetch-9.0.0"
+        ];
+      })
       sources."@lerna/pulse-till-done-4.0.0"
       sources."@lerna/query-graph-4.0.0"
       sources."@lerna/resolve-symlink-4.0.0"
@@ -89790,12 +90425,12 @@ in
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
       sources."@npmcli/ci-detect-1.3.0"
-      sources."@npmcli/git-2.0.8"
+      sources."@npmcli/git-2.0.9"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
-      sources."@npmcli/run-script-1.8.4"
+      sources."@npmcli/run-script-1.8.5"
       sources."@octokit/auth-token-2.4.5"
       sources."@octokit/core-3.4.0"
       (sources."@octokit/endpoint-6.0.11" // {
@@ -89803,20 +90438,20 @@ in
           sources."is-plain-object-5.0.0"
         ];
       })
-      sources."@octokit/graphql-4.6.1"
-      sources."@octokit/openapi-types-6.0.0"
+      sources."@octokit/graphql-4.6.2"
+      sources."@octokit/openapi-types-7.2.3"
       sources."@octokit/plugin-enterprise-rest-6.0.1"
       sources."@octokit/plugin-paginate-rest-2.13.3"
       sources."@octokit/plugin-request-log-1.0.3"
-      sources."@octokit/plugin-rest-endpoint-methods-5.0.0"
+      sources."@octokit/plugin-rest-endpoint-methods-5.3.1"
       (sources."@octokit/request-5.4.15" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
         ];
       })
       sources."@octokit/request-error-2.0.5"
-      sources."@octokit/rest-18.5.2"
-      sources."@octokit/types-6.13.0"
+      sources."@octokit/rest-18.5.5"
+      sources."@octokit/types-6.16.2"
       sources."@tootallnate/once-1.1.2"
       sources."@types/minimatch-3.0.4"
       sources."@types/minimist-1.2.1"
@@ -89865,13 +90500,13 @@ in
       sources."builtins-1.0.3"
       sources."byline-5.0.0"
       sources."byte-size-7.0.1"
-      sources."cacache-15.0.6"
+      sources."cacache-15.2.0"
       sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."chownr-2.0.0"
       sources."ci-info-2.0.0"
@@ -89951,12 +90586,12 @@ in
       sources."envinfo-7.8.1"
       sources."err-code-2.0.3"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."eventemitter3-4.0.7"
-      sources."execa-5.0.0"
+      sources."execa-5.0.1"
       sources."extend-3.0.2"
       (sources."external-editor-3.1.0" // {
         dependencies = [
@@ -90031,7 +90666,7 @@ in
       sources."git-up-4.0.2"
       sources."git-url-parse-11.4.4"
       sources."gitconfiglocal-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."globby-11.0.3"
       sources."graceful-fs-4.2.6"
@@ -90051,9 +90686,9 @@ in
       sources."https-proxy-agent-5.0.0"
       sources."human-signals-2.1.0"
       sources."humanize-ms-1.2.1"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       (sources."import-fresh-3.3.0" // {
         dependencies = [
           sources."resolve-from-4.0.0"
@@ -90081,12 +90716,12 @@ in
       sources."interpret-1.4.0"
       sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
-      sources."is-date-object-1.0.2"
+      sources."is-core-module-2.4.0"
+      sources."is-date-object-1.0.4"
       sources."is-extglob-2.1.1"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-3.0.0"
@@ -90094,15 +90729,15 @@ in
       sources."is-lambda-1.0.1"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-obj-2.0.0"
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-ssh-1.3.2"
+      sources."is-regex-1.1.3"
+      sources."is-ssh-1.3.3"
       sources."is-stream-2.0.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-text-path-1.0.1"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
@@ -90121,8 +90756,8 @@ in
       sources."jsonparse-1.3.1"
       sources."jsprim-1.4.1"
       sources."kind-of-6.0.3"
-      sources."libnpmaccess-4.0.1"
-      (sources."libnpmpublish-4.0.0" // {
+      sources."libnpmaccess-4.0.2"
+      (sources."libnpmpublish-4.0.1" // {
         dependencies = [
           sources."normalize-package-data-3.0.2"
         ];
@@ -90206,7 +90841,7 @@ in
         ];
       })
       sources."normalize-url-3.3.0"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       (sources."npm-lifecycle-3.1.5" // {
         dependencies = [
@@ -90227,15 +90862,15 @@ in
       })
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-package-arg-8.1.2"
-      sources."npm-packlist-2.1.5"
+      sources."npm-packlist-2.2.2"
       sources."npm-pick-manifest-6.1.1"
-      sources."npm-registry-fetch-9.0.0"
+      sources."npm-registry-fetch-10.1.2"
       sources."npm-run-path-4.0.1"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."object.getownpropertydescriptors-2.1.2"
@@ -90255,7 +90890,7 @@ in
       sources."p-timeout-3.2.0"
       sources."p-try-2.2.0"
       sources."p-waterfall-2.1.1"
-      sources."pacote-11.3.1"
+      sources."pacote-11.3.3"
       sources."parent-module-1.0.1"
       sources."parse-github-repo-url-1.4.1"
       sources."parse-json-5.2.0"
@@ -90268,10 +90903,10 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -90350,7 +90985,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-1.0.1"
       sources."split-on-first-1.1.0"
       sources."split2-3.2.2"
@@ -90386,8 +91021,8 @@ in
       sources."tmp-0.0.33"
       sources."to-regex-range-5.0.1"
       sources."tough-cookie-2.5.0"
-      sources."tr46-2.0.2"
-      sources."trim-newlines-3.0.0"
+      sources."tr46-2.1.0"
+      sources."trim-newlines-3.0.1"
       sources."trim-off-newlines-1.0.1"
       sources."tslib-1.14.1"
       sources."tunnel-agent-0.6.0"
@@ -90395,7 +91030,7 @@ in
       sources."type-fest-0.4.1"
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."uid-number-0.0.6"
       sources."umask-1.1.0"
       sources."unbox-primitive-1.0.1"
@@ -90435,7 +91070,7 @@ in
       sources."write-file-atomic-2.4.3"
       (sources."write-json-file-4.3.0" // {
         dependencies = [
-          sources."detect-indent-6.0.0"
+          sources."detect-indent-6.1.0"
           sources."is-plain-obj-2.1.0"
           sources."make-dir-3.1.0"
           sources."semver-6.3.0"
@@ -90632,7 +91267,7 @@ in
           sources."is-extendable-0.1.1"
         ];
       })
-      sources."faye-websocket-0.11.3"
+      sources."faye-websocket-0.11.4"
       sources."file-uri-to-path-1.0.0"
       (sources."fill-range-4.0.0" // {
         dependencies = [
@@ -90961,7 +91596,7 @@ in
           sources."ms-2.1.3"
         ];
       })
-      (sources."engine.io-client-3.5.1" // {
+      (sources."engine.io-client-3.5.2" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -90991,7 +91626,7 @@ in
       sources."for-own-0.1.5"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."fsevents-1.2.13"
@@ -91144,7 +91779,7 @@ in
       sources."posix-character-classes-0.1.1"
       sources."preserve-0.2.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
       sources."qs-6.7.0"
@@ -91342,8 +91977,8 @@ in
       sources."uuid-3.4.0"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
-      sources."ws-7.4.5"
-      sources."xmlhttprequest-ssl-1.5.5"
+      sources."ws-7.4.6"
+      sources."xmlhttprequest-ssl-1.6.3"
       sources."yeast-0.1.2"
     ];
     buildInputs = globalBuildInputs;
@@ -91363,57 +91998,60 @@ in
     src = ../interpreters/clojurescript/lumo;
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      sources."@babel/core-7.13.15"
-      sources."@babel/generator-7.13.9"
+      sources."@babel/compat-data-7.14.4"
+      sources."@babel/core-7.14.3"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      sources."@babel/helper-compilation-targets-7.13.13"
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      sources."@babel/helper-define-polyfill-provider-0.2.0"
+      sources."@babel/helper-compilation-targets-7.14.4"
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      sources."@babel/helper-define-polyfill-provider-0.2.3"
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.13.15"
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12"
       sources."@babel/plugin-external-helpers-7.8.3"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.13.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-class-static-block-7.14.3"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-bigint-7.8.3"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
       sources."@babel/plugin-syntax-import-meta-7.10.4"
@@ -91424,14 +92062,15 @@ in
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.0"
       sources."@babel/plugin-syntax-top-level-await-7.12.13"
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -91439,18 +92078,18 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
-      sources."@babel/plugin-transform-runtime-7.13.15"
+      sources."@babel/plugin-transform-runtime-7.14.3"
       sources."@babel/plugin-transform-shorthand-properties-7.12.13"
       sources."@babel/plugin-transform-spread-7.13.0"
       sources."@babel/plugin-transform-sticky-regex-7.12.13"
@@ -91458,13 +92097,13 @@ in
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
-      sources."@babel/preset-env-7.13.15"
+      sources."@babel/preset-env-7.14.4"
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-stage-2-7.8.3"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@cnakazawa/watch-1.0.4"
       sources."@comandeer/babel-plugin-banner-5.0.0"
       sources."@istanbuljs/load-nyc-config-1.1.0"
@@ -91485,7 +92124,7 @@ in
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
       sources."@types/json-schema-7.0.7"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/resolve-0.0.8"
       sources."@types/yargs-15.0.13"
@@ -91574,9 +92213,9 @@ in
       sources."babel-plugin-minify-replace-0.5.0"
       sources."babel-plugin-minify-simplify-0.5.1"
       sources."babel-plugin-minify-type-constructors-0.4.3"
-      sources."babel-plugin-polyfill-corejs2-0.2.0"
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs2-0.2.2"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       sources."babel-plugin-syntax-flow-6.18.0"
       sources."babel-plugin-transform-flow-strip-types-6.22.0"
       sources."babel-plugin-transform-inline-consecutive-adds-0.4.3"
@@ -91642,7 +92281,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."bser-2.1.1"
       sources."buffer-5.2.1"
       sources."buffer-from-1.1.1"
@@ -91658,7 +92297,7 @@ in
       sources."cached-path-relative-1.0.2"
       sources."call-bind-1.0.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."capture-exit-2.0.0"
       sources."caseless-0.12.0"
       (sources."chalk-3.0.0" // {
@@ -91730,7 +92369,7 @@ in
       })
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.10.1" // {
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -91782,7 +92421,7 @@ in
       sources."duplexer2-0.1.4"
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -91887,7 +92526,7 @@ in
       sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       (sources."global-modules-2.0.0" // {
         dependencies = [
@@ -91957,7 +92596,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-1.1.6"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-deflate-1.0.0"
       sources."is-descriptor-1.0.2"
@@ -92085,7 +92724,7 @@ in
         ];
       })
       sources."node-modules-regexp-1.0.0"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       (sources."normalize-package-data-2.5.0" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -92131,12 +92770,12 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-platform-0.11.15"
       sources."pbkdf2-3.1.2"
       sources."peek-stream-1.1.3"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pinkie-1.0.0"
       sources."pinkie-promise-1.0.0"
@@ -92294,7 +92933,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.16.1"
@@ -92514,7 +93153,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."minimatch-3.0.4"
@@ -92534,6 +93173,57 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  markdownlint-cli = nodeEnv.buildNodePackage {
+    name = "markdownlint-cli";
+    packageName = "markdownlint-cli";
+    version = "0.27.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.27.1.tgz";
+      sha512 = "p1VV6aSbGrDlpUWzHizAnSNEQAweVR3qUI/AIUubxW7BGPXziSXkIED+uRtSohUlRS/jmqp3Wi4es5j6fIrdeQ==";
+    };
+    dependencies = [
+      sources."argparse-2.0.1"
+      sources."balanced-match-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."commander-7.1.0"
+      sources."concat-map-0.0.1"
+      sources."deep-extend-0.6.0"
+      sources."entities-2.1.0"
+      sources."fs.realpath-1.0.0"
+      sources."get-stdin-8.0.0"
+      sources."glob-7.1.7"
+      sources."ignore-5.1.8"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.8"
+      sources."js-yaml-4.1.0"
+      sources."jsonc-parser-3.0.0"
+      sources."linkify-it-3.0.2"
+      sources."lodash.differencewith-4.5.0"
+      sources."lodash.flatten-4.4.0"
+      sources."markdown-it-12.0.4"
+      sources."markdownlint-0.23.1"
+      sources."markdownlint-rule-helpers-0.14.0"
+      sources."mdurl-1.0.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."once-1.4.0"
+      sources."path-is-absolute-1.0.1"
+      sources."rc-1.2.8"
+      sources."strip-json-comments-2.0.1"
+      sources."uc.micro-1.0.6"
+      sources."wrappy-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "MarkdownLint Command Line Interface";
+      homepage = "https://github.com/igorshubovych/markdownlint-cli#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   markdown-link-check = nodeEnv.buildNodePackage {
     name = "markdown-link-check";
     packageName = "markdown-link-check";
@@ -92553,7 +93243,7 @@ in
       sources."aws4-1.11.0"
       sources."bcrypt-pbkdf-1.0.2"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."combined-stream-1.0.8"
@@ -92585,8 +93275,8 @@ in
       sources."jsprim-1.4.1"
       sources."link-check-4.5.4"
       sources."lodash-4.17.21"
-      sources."markdown-link-extractor-1.2.7"
-      sources."marked-2.0.3"
+      sources."markdown-link-extractor-1.3.0"
+      sources."marked-2.0.6"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."ms-2.1.3"
@@ -92741,7 +93431,7 @@ in
       sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."globals-9.18.0"
       sources."glogg-1.0.2"
       sources."graceful-fs-4.2.6"
@@ -92768,7 +93458,7 @@ in
       sources."inherits-2.0.4"
       sources."inquirer-0.12.0"
       sources."interpret-1.4.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-my-ip-valid-1.0.0"
       sources."is-my-json-valid-2.20.5"
@@ -92829,7 +93519,7 @@ in
       sources."parse-node-version-1.0.1"
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."performance-now-2.1.0"
       sources."pluralize-1.2.1"
       sources."prelude-ls-1.1.2"
@@ -92916,10 +93606,10 @@ in
   mathjax = nodeEnv.buildNodePackage {
     name = "mathjax";
     packageName = "mathjax";
-    version = "3.1.2";
+    version = "3.1.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mathjax/-/mathjax-3.1.2.tgz";
-      sha512 = "BojKspBv4nNWzO1wC6VEI+g9gHDOhkaGHGgLxXkasdU4pwjdO5AXD5M/wcLPkXYPjZ/N+6sU8rjQTlyvN2cWiQ==";
+      url = "https://registry.npmjs.org/mathjax/-/mathjax-3.1.4.tgz";
+      sha512 = "Okmc+F3l7vRWNMALbH0HMMoTJWVn1cbeDbybHppCeophIGdFS+xxD/OffYpZirUOHzesZostpzEwsLSst+4W8w==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -92971,14 +93661,14 @@ in
   "@mermaid-js/mermaid-cli" = nodeEnv.buildNodePackage {
     name = "_at_mermaid-js_slash_mermaid-cli";
     packageName = "@mermaid-js/mermaid-cli";
-    version = "8.9.2";
+    version = "8.10.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@mermaid-js/mermaid-cli/-/mermaid-cli-8.9.2.tgz";
-      sha512 = "Hw44+V/n4s6ViCnh5RR/uiza5QxaeUv/A4Q62ho+U1W1yoCLHle6kbx1ZXRSF3Jvl3BfQHuaoE3t+dyx2L4hnA==";
+      url = "https://registry.npmjs.org/@mermaid-js/mermaid-cli/-/mermaid-cli-8.10.1.tgz";
+      sha512 = "X2wIJwN22Hwh5zkpGteKg31K+wYCO8W5NUsQYlnSWyv8RpHoZfK7+kDVRzvHvVqnizTM3D+KgSnONvh+Z0EB6g==";
     };
     dependencies = [
       sources."@braintree/sanitize-url-3.1.0"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/yauzl-2.9.1"
       sources."agent-base-6.0.2"
       sources."ansi-styles-4.3.0"
@@ -92990,7 +93680,7 @@ in
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.1"
       sources."camel-case-3.0.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chownr-1.1.4"
       sources."clean-css-4.2.3"
       sources."color-convert-2.0.1"
@@ -93037,7 +93727,7 @@ in
       sources."dagre-0.8.5"
       sources."dagre-d3-0.6.4"
       sources."debug-4.3.2"
-      sources."devtools-protocol-0.0.854822"
+      sources."devtools-protocol-0.0.869402"
       sources."end-of-stream-1.4.4"
       sources."entity-decode-2.0.2"
       sources."extract-zip-2.0.1"
@@ -93046,7 +93736,7 @@ in
       sources."fs-constants-1.0.0"
       sources."fs.realpath-1.0.0"
       sources."get-stream-5.2.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graphlib-2.1.8"
       sources."has-flag-4.0.0"
       sources."he-1.2.0"
@@ -93064,7 +93754,7 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lower-case-1.1.4"
-      sources."mermaid-8.9.2"
+      sources."mermaid-8.10.1"
       sources."minify-4.1.3"
       sources."minimatch-3.0.4"
       sources."mkdirp-classic-0.5.3"
@@ -93084,7 +93774,7 @@ in
       sources."progress-2.0.3"
       sources."proxy-from-env-1.1.0"
       sources."pump-3.0.0"
-      sources."puppeteer-8.0.0"
+      sources."puppeteer-9.1.1"
       sources."readable-stream-3.6.0"
       sources."relateurl-0.2.7"
       sources."rimraf-3.0.2"
@@ -93106,12 +93796,12 @@ in
       sources."through-2.3.8"
       sources."try-catch-2.0.1"
       sources."try-to-catch-1.1.1"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."unbzip2-stream-1.4.3"
       sources."upper-case-1.1.3"
       sources."util-deprecate-1.0.2"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."yauzl-2.10.0"
     ];
     buildInputs = globalBuildInputs;
@@ -93135,12 +93825,12 @@ in
     dependencies = [
       sources."@fluentui/date-time-utilities-7.9.1"
       sources."@fluentui/dom-utilities-1.1.2"
-      sources."@fluentui/keyboard-key-0.2.16"
-      sources."@fluentui/react-7.168.0"
+      sources."@fluentui/keyboard-key-0.2.17"
+      sources."@fluentui/react-7.170.1"
       sources."@fluentui/react-focus-7.17.6"
       sources."@fluentui/react-window-provider-1.0.2"
       sources."@fluentui/theme-1.7.4"
-      sources."@microsoft/load-themed-styles-1.10.161"
+      sources."@microsoft/load-themed-styles-1.10.174"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@uifabric/foundation-7.9.26"
@@ -93199,13 +93889,13 @@ in
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
       sources."difunc-0.0.4"
-      sources."dotenv-8.2.0"
+      sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
       (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."end-of-stream-1.4.4"
@@ -93222,12 +93912,12 @@ in
       sources."fast-json-stable-stringify-2.1.0"
       sources."figures-2.0.0"
       sources."finalhandler-1.1.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-routes-7.0.1"
       sources."fs.realpath-1.0.0"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."got-9.6.0"
       sources."has-ansi-2.0.0"
       sources."http-cache-semantics-4.1.0"
@@ -93274,9 +93964,9 @@ in
       sources."mute-stream-0.0.7"
       sources."negotiator-0.6.2"
       sources."node-fetch-1.6.3"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."object-assign-4.1.1"
-      sources."office-ui-fabric-react-7.168.0"
+      sources."office-ui-fabric-react-7.170.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
@@ -93312,7 +94002,7 @@ in
       sources."prepend-http-2.0.0"
       sources."promise-queue-2.2.5"
       sources."prop-types-15.7.2"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.7.0"
@@ -93367,7 +94057,7 @@ in
       sources."strip-json-comments-2.0.1"
       sources."supports-color-2.0.0"
       sources."swagger-schema-official-2.0.0-bab6bed"
-      sources."swagger-ui-dist-3.47.1"
+      sources."swagger-ui-dist-3.49.0"
       sources."tail-2.2.2"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
@@ -93399,10 +94089,10 @@ in
   mocha = nodeEnv.buildNodePackage {
     name = "mocha";
     packageName = "mocha";
-    version = "8.3.2";
+    version = "8.4.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mocha/-/mocha-8.3.2.tgz";
-      sha512 = "UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg==";
+      url = "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz";
+      sha512 = "hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==";
     };
     dependencies = [
       sources."@ungap/promise-all-settled-1.1.2"
@@ -93417,7 +94107,7 @@ in
       sources."braces-3.0.2"
       sources."browser-stdout-1.3.1"
       sources."camelcase-6.2.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."supports-color-7.2.0"
         ];
@@ -93476,7 +94166,7 @@ in
       sources."p-locate-5.0.0"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."randombytes-2.1.0"
       sources."readdirp-3.5.0"
       sources."require-directory-2.1.1"
@@ -93565,7 +94255,7 @@ in
       sources."mime-types-2.1.30"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
@@ -93652,70 +94342,81 @@ in
   netlify-cli = nodeEnv.buildNodePackage {
     name = "netlify-cli";
     packageName = "netlify-cli";
-    version = "3.18.3";
+    version = "3.32.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/netlify-cli/-/netlify-cli-3.18.3.tgz";
-      sha512 = "VonzQOBohu/+G++NiVIwoyrwDaGo7VV4kzqrJr9pc7KWm95iBT+4FBvlzAk4VYg6vU5/3WYcOIwQTNSOZKcJiA==";
+      url = "https://registry.npmjs.org/netlify-cli/-/netlify-cli-3.32.6.tgz";
+      sha512 = "VG2b3SJHbAIVErZvaeD0cU496GnuHpBqUYJiMrtEJ3eaPSQGc6HHZz9/P0Zbl7S67jaOk/wANOfcSxtbmPEORQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.13.9"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      (sources."@babel/helper-define-polyfill-provider-0.2.0" // {
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+          sources."supports-color-5.5.0"
+        ];
+      })
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.13.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-class-static-block-7.14.3"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
       sources."@babel/plugin-syntax-json-strings-7.8.3"
@@ -93725,14 +94426,15 @@ in
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.0"
       sources."@babel/plugin-syntax-top-level-await-7.12.13"
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -93740,14 +94442,14 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
@@ -93758,33 +94460,35 @@ in
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
-      (sources."@babel/preset-env-7.13.15" // {
+      (sources."@babel/preset-env-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/preset-modules-0.1.4"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
-      sources."@bugsnag/browser-7.9.2"
-      sources."@bugsnag/core-7.9.2"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
+      sources."@bugsnag/browser-7.10.1"
+      sources."@bugsnag/core-7.10.0"
       sources."@bugsnag/cuid-3.0.0"
-      sources."@bugsnag/js-7.9.2"
-      sources."@bugsnag/node-7.9.2"
+      sources."@bugsnag/js-7.10.1"
+      sources."@bugsnag/node-7.10.1"
       sources."@bugsnag/safe-json-stringify-6.0.0"
       sources."@dabh/diagnostics-2.0.2"
       sources."@jest/types-24.9.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
-      (sources."@netlify/build-11.1.0" // {
+      (sources."@netlify/build-11.29.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
           sources."execa-3.4.0"
+          sources."is-plain-obj-2.1.0"
           sources."locate-path-5.0.0"
           sources."resolve-2.0.0-next.3"
           sources."semver-6.3.0"
+          sources."update-notifier-4.1.3"
         ];
       })
       (sources."@netlify/cache-utils-1.0.7" // {
@@ -93792,20 +94496,24 @@ in
           sources."locate-path-5.0.0"
         ];
       })
-      (sources."@netlify/config-6.0.1" // {
+      (sources."@netlify/config-6.7.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
           sources."execa-3.4.0"
+          sources."find-up-4.1.0"
+          sources."is-plain-obj-2.1.0"
+          sources."locate-path-5.0.0"
         ];
       })
-      (sources."@netlify/framework-info-3.3.0" // {
+      (sources."@netlify/framework-info-5.1.2" // {
         dependencies = [
-          sources."locate-path-5.0.0"
+          sources."p-limit-3.1.0"
+          sources."p-locate-5.0.0"
         ];
       })
-      sources."@netlify/functions-utils-1.3.25"
-      (sources."@netlify/git-utils-1.0.8" // {
+      sources."@netlify/functions-utils-1.3.37"
+      (sources."@netlify/git-utils-1.0.11" // {
         dependencies = [
           sources."braces-3.0.2"
           sources."execa-3.4.0"
@@ -93815,10 +94523,11 @@ in
           sources."to-regex-range-5.0.1"
         ];
       })
-      sources."@netlify/open-api-1.3.0"
-      (sources."@netlify/plugin-edge-handlers-1.11.6" // {
+      sources."@netlify/open-api-2.4.0"
+      (sources."@netlify/plugin-edge-handlers-1.11.13" // {
         dependencies = [
           sources."@nodelib/fs.stat-2.0.4"
+          sources."@types/node-14.17.1"
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."del-6.0.0"
@@ -93830,12 +94539,11 @@ in
           sources."ignore-5.1.8"
           sources."is-number-7.0.0"
           sources."micromatch-4.0.4"
-          sources."p-map-4.0.0"
           sources."slash-3.0.0"
           sources."to-regex-range-5.0.1"
         ];
       })
-      sources."@netlify/plugins-list-2.6.0"
+      sources."@netlify/plugins-list-2.14.2"
       (sources."@netlify/run-utils-1.0.7" // {
         dependencies = [
           sources."execa-3.4.0"
@@ -93845,11 +94553,29 @@ in
       sources."@netlify/traffic-mesh-agent-darwin-x64-0.27.10"
       sources."@netlify/traffic-mesh-agent-linux-x64-0.27.10"
       sources."@netlify/traffic-mesh-agent-win32-x64-0.27.10"
-      (sources."@netlify/zip-it-and-ship-it-3.4.0" // {
+      (sources."@netlify/zip-it-and-ship-it-4.2.5" // {
         dependencies = [
-          sources."locate-path-5.0.0"
+          sources."@nodelib/fs.stat-2.0.4"
+          sources."array-union-2.1.0"
+          sources."braces-3.0.2"
+          sources."cliui-7.0.4"
+          sources."cp-file-9.0.0"
+          sources."del-6.0.0"
+          sources."dir-glob-3.0.1"
+          sources."fast-glob-3.2.5"
+          sources."fill-range-7.0.1"
+          sources."glob-parent-5.1.2"
+          sources."globby-11.0.3"
+          sources."ignore-5.1.8"
+          sources."is-number-7.0.0"
+          sources."micromatch-4.0.4"
+          sources."pkg-dir-5.0.0"
           sources."resolve-2.0.0-next.3"
-          sources."semver-6.3.0"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+          sources."y18n-5.0.8"
+          sources."yargs-16.2.0"
+          sources."yargs-parser-20.2.7"
         ];
       })
       (sources."@nodelib/fs.scandir-2.1.4" // {
@@ -93872,29 +94598,16 @@ in
           })
           sources."color-convert-1.9.3"
           sources."color-name-1.1.3"
-          sources."has-flag-3.0.0"
+          sources."has-flag-4.0.0"
           sources."strip-ansi-5.2.0"
-          sources."supports-color-5.5.0"
-        ];
-      })
-      (sources."@oclif/command-1.8.0" // {
-        dependencies = [
-          sources."@oclif/plugin-help-3.2.2"
-          sources."ansi-regex-3.0.0"
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
-          sources."color-convert-1.9.3"
-          sources."color-name-1.1.3"
-          sources."is-fullwidth-code-point-2.0.0"
-          sources."string-width-2.1.1"
-          sources."strip-ansi-4.0.0"
-          (sources."wrap-ansi-4.0.0" // {
+          (sources."supports-color-5.5.0" // {
             dependencies = [
-              sources."ansi-styles-3.2.1"
+              sources."has-flag-3.0.0"
             ];
           })
         ];
       })
+      sources."@oclif/command-1.8.0"
       (sources."@oclif/config-1.17.0" // {
         dependencies = [
           sources."@nodelib/fs.stat-2.0.4"
@@ -93915,30 +94628,27 @@ in
       })
       (sources."@oclif/errors-1.3.4" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
           sources."clean-stack-3.0.1"
           sources."escape-string-regexp-4.0.0"
-          sources."wrap-ansi-7.0.0"
         ];
       })
       sources."@oclif/linewrap-1.0.0"
-      sources."@oclif/parser-3.8.5"
-      (sources."@oclif/plugin-help-2.2.3" // {
+      (sources."@oclif/parser-3.8.5" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+          sources."supports-color-5.5.0"
+        ];
+      })
+      (sources."@oclif/plugin-help-3.2.2" // {
         dependencies = [
           sources."ansi-regex-3.0.0"
           sources."ansi-styles-3.2.1"
           sources."color-convert-1.9.3"
           sources."color-name-1.1.3"
-          sources."emoji-regex-7.0.3"
           sources."is-fullwidth-code-point-2.0.0"
-          sources."string-width-3.1.0"
-          sources."strip-ansi-5.2.0"
-          (sources."widest-line-2.0.1" // {
-            dependencies = [
-              sources."string-width-2.1.1"
-              sources."strip-ansi-4.0.0"
-            ];
-          })
           (sources."wrap-ansi-4.0.0" // {
             dependencies = [
               sources."string-width-2.1.1"
@@ -93951,11 +94661,11 @@ in
         dependencies = [
           sources."ansi-escapes-3.2.0"
           sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
           sources."cli-ux-4.9.3"
           sources."color-convert-1.9.3"
           sources."color-name-1.1.3"
           sources."fs-extra-7.0.1"
-          sources."has-flag-3.0.0"
           sources."indent-string-3.2.0"
           sources."is-wsl-1.1.0"
           sources."semver-5.7.1"
@@ -93965,8 +94675,6 @@ in
       })
       (sources."@oclif/plugin-plugins-1.10.0" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
           sources."tslib-2.2.0"
@@ -93975,40 +94683,27 @@ in
       })
       sources."@oclif/screen-1.0.4"
       sources."@octokit/auth-token-2.4.5"
+      sources."@octokit/core-3.4.0"
       (sources."@octokit/endpoint-6.0.11" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
-          sources."universal-user-agent-6.0.0"
-        ];
-      })
-      sources."@octokit/openapi-types-6.0.0"
-      (sources."@octokit/plugin-paginate-rest-1.1.2" // {
-        dependencies = [
-          sources."@octokit/types-2.16.2"
         ];
       })
+      sources."@octokit/graphql-4.6.2"
+      sources."@octokit/openapi-types-7.2.3"
+      sources."@octokit/plugin-paginate-rest-2.13.3"
       sources."@octokit/plugin-request-log-1.0.3"
-      (sources."@octokit/plugin-rest-endpoint-methods-2.4.0" // {
-        dependencies = [
-          sources."@octokit/types-2.16.2"
-        ];
-      })
+      sources."@octokit/plugin-rest-endpoint-methods-5.3.1"
       (sources."@octokit/request-5.4.15" // {
         dependencies = [
-          sources."@octokit/request-error-2.0.5"
           sources."is-plain-object-5.0.0"
-          sources."universal-user-agent-6.0.0"
         ];
       })
-      (sources."@octokit/request-error-1.2.1" // {
-        dependencies = [
-          sources."@octokit/types-2.16.2"
-        ];
-      })
-      sources."@octokit/rest-16.43.2"
-      sources."@octokit/types-6.13.0"
+      sources."@octokit/request-error-2.0.5"
+      sources."@octokit/rest-18.5.5"
+      sources."@octokit/types-6.16.2"
       sources."@rollup/plugin-babel-5.3.0"
-      (sources."@rollup/plugin-commonjs-17.1.0" // {
+      (sources."@rollup/plugin-commonjs-18.1.0" // {
         dependencies = [
           sources."estree-walker-2.0.2"
         ];
@@ -94037,14 +94732,14 @@ in
       sources."@types/glob-7.1.3"
       sources."@types/got-8.3.5"
       sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/http-proxy-1.17.5"
+      sources."@types/http-proxy-1.17.6"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
       sources."@types/keyv-3.1.1"
       sources."@types/minimatch-3.0.4"
       sources."@types/mkdirp-0.5.2"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/node-fetch-2.5.10"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/resolve-1.17.1"
@@ -94052,12 +94747,30 @@ in
       sources."@types/semver-5.5.0"
       sources."@types/yargs-13.0.11"
       sources."@types/yargs-parser-20.2.0"
-      sources."@typescript-eslint/typescript-estree-2.34.0"
+      sources."@typescript-eslint/types-4.26.0"
+      (sources."@typescript-eslint/typescript-estree-4.26.0" // {
+        dependencies = [
+          sources."@nodelib/fs.stat-2.0.4"
+          sources."array-union-2.1.0"
+          sources."braces-3.0.2"
+          sources."dir-glob-3.0.1"
+          sources."fast-glob-3.2.5"
+          sources."fill-range-7.0.1"
+          sources."glob-parent-5.1.2"
+          sources."globby-11.0.3"
+          sources."ignore-5.1.8"
+          sources."is-number-7.0.0"
+          sources."micromatch-4.0.4"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+        ];
+      })
+      sources."@typescript-eslint/visitor-keys-4.26.0"
       sources."@ungap/from-entries-0.2.1"
       sources."accepts-1.3.7"
       sources."agent-base-6.0.2"
       sources."aggregate-error-3.1.0"
-      sources."ajv-8.1.0"
+      sources."ajv-8.5.0"
       (sources."all-node-versions-8.0.0" // {
         dependencies = [
           sources."@jest/types-25.5.0"
@@ -94090,7 +94803,7 @@ in
           sources."file-type-4.4.0"
         ];
       })
-      sources."archiver-4.0.2"
+      sources."archiver-5.3.0"
       (sources."archiver-utils-2.1.0" // {
         dependencies = [
           sources."readable-stream-2.3.7"
@@ -94114,8 +94827,7 @@ in
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
       sources."atob-2.1.2"
-      sources."atob-lite-2.0.0"
-      (sources."aws-sdk-2.888.0" // {
+      (sources."aws-sdk-2.918.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -94123,13 +94835,13 @@ in
         ];
       })
       sources."babel-plugin-dynamic-import-node-2.3.3"
-      (sources."babel-plugin-polyfill-corejs2-0.2.0" // {
+      (sources."babel-plugin-polyfill-corejs2-0.2.2" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       sources."backoff-2.5.0"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
@@ -94139,8 +94851,10 @@ in
       })
       sources."base64-js-1.5.1"
       sources."before-after-hook-2.2.1"
+      sources."better-opn-2.1.1"
       sources."binary-extensions-2.2.0"
       sources."bl-4.1.0"
+      sources."blueimp-md5-2.18.0"
       (sources."body-parser-1.19.0" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -94160,8 +94874,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."browserslist-4.16.4"
-      sources."btoa-lite-1.0.0"
+      sources."browserslist-4.16.6"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -94189,16 +94902,12 @@ in
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."cardinal-2.1.1"
       sources."caw-2.0.1"
-      (sources."chalk-2.4.2" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
-          sources."ansi-styles-3.2.1"
-          sources."color-convert-1.9.3"
-          sources."color-name-1.1.3"
-          sources."has-flag-3.0.0"
-          sources."supports-color-5.5.0"
+          sources."ansi-styles-4.3.0"
         ];
       })
       sources."chardet-0.7.0"
@@ -94212,7 +94921,7 @@ in
           sources."to-regex-range-5.0.1"
         ];
       })
-      sources."ci-info-3.1.1"
+      sources."ci-info-3.2.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -94248,17 +94957,22 @@ in
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."argparse-1.0.10"
-          sources."chalk-4.1.0"
           sources."clean-stack-3.0.1"
           sources."escape-string-regexp-4.0.0"
           sources."extract-stack-2.0.0"
+          sources."has-flag-4.0.0"
           sources."js-yaml-3.14.1"
           sources."supports-hyperlinks-2.2.0"
           sources."tslib-2.2.0"
         ];
       })
       sources."cli-width-2.2.1"
-      sources."cliui-6.0.0"
+      (sources."cliui-6.0.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."wrap-ansi-6.2.0"
+        ];
+      })
       sources."clone-1.0.4"
       sources."clone-response-1.0.2"
       sources."code-point-at-1.1.0"
@@ -94280,18 +94994,9 @@ in
       sources."common-path-prefix-2.0.0"
       sources."commondir-1.0.1"
       sources."component-emitter-1.3.0"
-      (sources."compress-commons-3.0.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-        ];
-      })
+      sources."compress-commons-4.1.1"
       sources."concat-map-0.0.1"
-      (sources."concordance-4.0.0" // {
-        dependencies = [
-          sources."semver-5.7.1"
-        ];
-      })
+      sources."concordance-5.0.4"
       sources."config-chain-1.1.12"
       sources."configstore-5.0.1"
       (sources."content-disposition-0.5.3" // {
@@ -94316,7 +95021,7 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      (sources."core-js-compat-3.10.1" // {
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -94326,15 +95031,16 @@ in
       (sources."cpy-8.1.2" // {
         dependencies = [
           sources."globby-9.2.0"
+          sources."p-map-3.0.0"
         ];
       })
-      sources."crc-3.8.0"
-      sources."crc32-stream-3.0.1"
+      sources."crc-32-1.2.0"
+      sources."crc32-stream-4.0.2"
       sources."cross-spawn-7.0.3"
       sources."crypto-random-string-2.0.0"
       sources."cyclist-1.0.1"
       sources."date-fns-1.30.1"
-      sources."date-time-2.1.0"
+      sources."date-time-3.1.0"
       (sources."debug-4.3.2" // {
         dependencies = [
           sources."ms-2.1.2"
@@ -94391,6 +95097,7 @@ in
       sources."define-property-2.0.2"
       (sources."del-5.1.0" // {
         dependencies = [
+          sources."p-map-3.0.0"
           sources."slash-3.0.0"
         ];
       })
@@ -94402,11 +95109,11 @@ in
       sources."detective-cjs-3.1.1"
       sources."detective-es6-2.2.0"
       sources."detective-less-1.0.2"
-      sources."detective-postcss-3.0.1"
+      sources."detective-postcss-4.0.0"
       sources."detective-sass-3.0.1"
       sources."detective-scss-2.0.1"
       sources."detective-stylus-1.0.0"
-      (sources."detective-typescript-5.8.0" // {
+      (sources."detective-typescript-7.0.0" // {
         dependencies = [
           sources."typescript-3.9.9"
         ];
@@ -94418,7 +95125,7 @@ in
         ];
       })
       sources."dot-prop-5.3.0"
-      sources."dotenv-8.2.0"
+      sources."dotenv-10.0.0"
       (sources."download-7.1.0" // {
         dependencies = [
           sources."@sindresorhus/is-0.7.0"
@@ -94439,7 +95146,7 @@ in
       })
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."elegant-spinner-1.0.1"
       sources."elf-cam-0.1.1"
       sources."emoji-regex-8.0.0"
@@ -94450,7 +95157,7 @@ in
       sources."envinfo-7.8.1"
       sources."error-ex-1.3.2"
       sources."error-stack-parser-2.0.6"
-      sources."esbuild-0.11.12"
+      sources."esbuild-0.11.10"
       sources."escalade-3.1.1"
       sources."escape-goat-2.1.1"
       sources."escape-html-1.0.3"
@@ -94460,7 +95167,7 @@ in
           sources."source-map-0.6.1"
         ];
       })
-      sources."eslint-visitor-keys-1.3.0"
+      sources."eslint-visitor-keys-2.1.0"
       sources."esprima-4.0.1"
       sources."estraverse-5.2.0"
       sources."estree-walker-1.0.1"
@@ -94468,12 +95175,13 @@ in
       sources."etag-1.8.1"
       sources."eventemitter3-4.0.7"
       sources."events-1.1.1"
-      (sources."execa-5.0.0" // {
+      (sources."execa-5.0.1" // {
         dependencies = [
           sources."get-stream-6.0.1"
           sources."human-signals-2.1.0"
         ];
       })
+      sources."exit-on-epipe-1.0.1"
       (sources."expand-brackets-2.1.4" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -94522,7 +95230,7 @@ in
       sources."extract-stack-1.0.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-diff-1.2.0"
-      sources."fast-equals-2.0.0"
+      sources."fast-equals-2.0.3"
       sources."fast-glob-2.2.7"
       sources."fast-levenshtein-2.0.6"
       sources."fast-safe-stringify-2.0.7"
@@ -94543,7 +95251,6 @@ in
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
           sources."cacheable-request-7.0.1"
-          sources."chalk-4.1.0"
           sources."decompress-response-5.0.0"
           sources."defer-to-connect-2.0.1"
           sources."got-10.7.0"
@@ -94557,7 +95264,7 @@ in
           sources."keyv-4.0.3"
           sources."lowercase-keys-2.0.0"
           sources."mimic-response-2.1.0"
-          sources."p-cancelable-2.1.0"
+          sources."p-cancelable-2.1.1"
           sources."pretty-format-25.5.0"
           sources."responselike-2.0.0"
           sources."type-fest-0.10.0"
@@ -94579,19 +95286,15 @@ in
           sources."debug-2.6.9"
         ];
       })
-      (sources."find-up-4.1.0" // {
-        dependencies = [
-          sources."locate-path-5.0.0"
-        ];
-      })
+      sources."find-up-5.0.0"
       sources."flatten-1.0.3"
       sources."flush-write-stream-2.0.0"
       sources."fn.name-1.1.0"
       sources."folder-walker-3.2.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."for-in-1.0.2"
       sources."form-data-3.0.1"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       (sources."from2-2.3.0" // {
@@ -94622,7 +95325,7 @@ in
       })
       sources."git-repo-info-2.1.1"
       sources."gitconfiglocal-2.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -94630,11 +95333,7 @@ in
       })
       sources."glob-to-regexp-0.3.0"
       sources."global-cache-dir-1.0.1"
-      (sources."global-dirs-2.1.0" // {
-        dependencies = [
-          sources."ini-1.3.7"
-        ];
-      })
+      sources."global-dirs-2.1.0"
       sources."globals-11.12.0"
       (sources."globby-10.0.2" // {
         dependencies = [
@@ -94666,7 +95365,7 @@ in
           sources."ansi-regex-2.1.1"
         ];
       })
-      sources."has-flag-4.0.0"
+      sources."has-flag-3.0.0"
       (sources."has-glob-1.0.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -94705,12 +95404,11 @@ in
         ];
       })
       sources."http-proxy-1.18.1"
-      (sources."http-proxy-middleware-1.1.2" // {
+      (sources."http-proxy-middleware-1.3.1" // {
         dependencies = [
           sources."braces-3.0.2"
           sources."fill-range-7.0.1"
           sources."is-number-7.0.0"
-          sources."is-plain-obj-3.0.0"
           sources."micromatch-4.0.4"
           sources."to-regex-range-5.0.1"
         ];
@@ -94727,11 +95425,15 @@ in
       sources."indexes-of-1.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."ini-1.3.8"
+      sources."ini-1.3.7"
       (sources."inquirer-6.5.2" // {
         dependencies = [
           sources."ansi-escapes-3.2.0"
           sources."ansi-regex-3.0.0"
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
           sources."figures-2.0.0"
           sources."is-fullwidth-code-point-2.0.0"
           (sources."string-width-2.1.1" // {
@@ -94744,14 +95446,10 @@ in
               sources."ansi-regex-4.1.0"
             ];
           })
+          sources."supports-color-5.5.0"
         ];
       })
-      (sources."inquirer-autocomplete-prompt-1.3.0" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
-        ];
-      })
+      sources."inquirer-autocomplete-prompt-1.3.0"
       sources."into-stream-3.1.0"
       sources."ipaddr.js-1.9.1"
       sources."is-accessor-descriptor-1.0.0"
@@ -94763,7 +95461,7 @@ in
           sources."ci-info-2.0.0"
         ];
       })
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-docker-2.2.1"
@@ -94786,13 +95484,14 @@ in
       sources."is-observable-1.1.0"
       sources."is-path-cwd-2.2.0"
       sources."is-path-inside-3.0.3"
-      sources."is-plain-obj-2.1.0"
+      sources."is-plain-obj-3.0.0"
       sources."is-plain-object-2.0.4"
       sources."is-promise-2.2.2"
       sources."is-reference-1.2.1"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-2.0.0"
       sources."is-typedarray-1.0.0"
+      sources."is-unicode-supported-0.1.0"
       sources."is-url-1.2.4"
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
@@ -94803,7 +95502,15 @@ in
       sources."isobject-3.0.1"
       sources."isurl-1.0.0"
       sources."jest-get-type-24.9.0"
-      sources."jest-validate-24.9.0"
+      (sources."jest-validate-24.9.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+          sources."supports-color-5.5.0"
+        ];
+      })
       sources."jest-worker-26.6.2"
       sources."jmespath-0.15.0"
       sources."js-string-escape-1.0.1"
@@ -94829,6 +95536,7 @@ in
       (sources."lambda-local-1.7.4" // {
         dependencies = [
           sources."commander-6.2.1"
+          sources."dotenv-8.6.0"
         ];
       })
       sources."latest-version-5.1.0"
@@ -94862,7 +95570,12 @@ in
       })
       (sources."listr-verbose-renderer-0.5.0" // {
         dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
           sources."figures-2.0.0"
+          sources."supports-color-5.5.0"
         ];
       })
       (sources."load-json-file-5.3.0" // {
@@ -94880,24 +95593,17 @@ in
       sources."lodash-4.17.21"
       sources."lodash._reinterpolate-3.0.0"
       sources."lodash.camelcase-4.3.0"
-      sources."lodash.clonedeep-4.5.0"
       sources."lodash.debounce-4.0.8"
       sources."lodash.deburr-4.1.0"
       sources."lodash.defaults-4.2.0"
       sources."lodash.difference-4.5.0"
       sources."lodash.flatten-4.4.0"
-      sources."lodash.flattendeep-4.4.0"
-      sources."lodash.get-4.4.2"
       sources."lodash.isempty-4.4.0"
-      sources."lodash.islength-4.0.1"
       sources."lodash.isplainobject-4.0.6"
-      sources."lodash.merge-4.6.2"
-      sources."lodash.set-4.3.2"
       sources."lodash.template-4.5.0"
       sources."lodash.templatesettings-4.2.0"
       sources."lodash.transform-4.6.0"
       sources."lodash.union-4.6.0"
-      sources."lodash.uniq-4.5.0"
       (sources."log-process-errors-5.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -94907,7 +95613,7 @@ in
           sources."moize-5.4.7"
         ];
       })
-      sources."log-symbols-3.0.0"
+      sources."log-symbols-4.1.0"
       (sources."log-update-2.3.0" // {
         dependencies = [
           sources."ansi-escapes-3.2.0"
@@ -94941,12 +95647,15 @@ in
           sources."pump-1.0.3"
         ];
       })
-      sources."md5-hex-2.0.0"
-      sources."md5-o-matic-0.1.1"
+      sources."md5-hex-3.0.1"
       sources."media-typer-0.3.0"
-      sources."memoize-one-5.1.1"
+      sources."memoize-one-5.2.1"
       sources."merge-descriptors-1.0.1"
-      sources."merge-options-3.0.4"
+      (sources."merge-options-3.0.4" // {
+        dependencies = [
+          sources."is-plain-obj-2.1.0"
+        ];
+      })
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
@@ -94967,7 +95676,7 @@ in
       })
       sources."mkdirp-0.5.5"
       sources."module-definition-3.3.1"
-      sources."moize-6.0.1"
+      sources."moize-6.0.3"
       (sources."move-file-1.2.0" // {
         dependencies = [
           (sources."cp-file-6.2.0" // {
@@ -94987,20 +95696,21 @@ in
         ];
       })
       sources."mute-stream-0.0.7"
+      sources."nanoid-3.1.23"
       sources."nanomatch-1.2.13"
       sources."natural-orderby-2.0.3"
       sources."negotiator-0.6.2"
       sources."nested-error-stacks-2.1.0"
-      (sources."netlify-6.1.18" // {
+      (sources."netlify-7.0.0" // {
         dependencies = [
           sources."qs-6.10.1"
         ];
       })
-      sources."netlify-redirect-parser-3.0.15"
+      sources."netlify-redirect-parser-3.0.29"
       sources."netlify-redirector-0.2.1"
       sources."nice-try-1.0.5"
       sources."node-fetch-2.6.1"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."node-source-walk-4.2.0"
       (sources."node-version-alias-1.0.1" // {
         dependencies = [
@@ -95033,7 +95743,7 @@ in
         ];
       })
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       (sources."npm-conf-1.1.3" // {
         dependencies = [
           sources."pify-3.0.0"
@@ -95056,7 +95766,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object-treeify-1.1.33"
       sources."object-visit-1.0.1"
@@ -95067,7 +95777,6 @@ in
           sources."tslib-2.2.0"
         ];
       })
-      sources."octokit-pagination-methods-1.1.0"
       sources."omit.js-2.0.2"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
@@ -95081,12 +95790,9 @@ in
         ];
       })
       sources."optionator-0.8.3"
-      (sources."ora-4.1.1" // {
+      (sources."ora-5.4.0" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-3.0.0"
           sources."cli-cursor-3.1.0"
-          sources."mute-stream-0.0.8"
           sources."restore-cursor-3.1.0"
         ];
       })
@@ -95118,7 +95824,7 @@ in
       sources."p-is-promise-1.1.0"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
-      sources."p-map-3.0.0"
+      sources."p-map-4.0.0"
       sources."p-reduce-2.1.0"
       (sources."p-timeout-2.0.1" // {
         dependencies = [
@@ -95164,25 +95870,24 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-4.0.0"
       sources."pend-1.2.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      sources."pkg-dir-4.2.0"
-      sources."posix-character-classes-0.1.1"
-      (sources."postcss-7.0.35" // {
+      (sources."pkg-dir-4.2.0" // {
         dependencies = [
-          sources."has-flag-3.0.0"
-          sources."source-map-0.6.1"
-          sources."supports-color-6.1.0"
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
         ];
       })
-      sources."postcss-values-parser-1.5.0"
-      sources."precinct-6.3.1"
+      sources."posix-character-classes-0.1.1"
+      sources."postcss-8.3.0"
+      sources."postcss-values-parser-2.0.1"
+      sources."precinct-8.1.0"
       sources."precond-0.2.3"
       sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
@@ -95195,10 +95900,11 @@ in
       })
       sources."pretty-ms-5.1.0"
       sources."prettyjson-1.2.1"
+      sources."printj-1.1.2"
       sources."process-es6-0.11.6"
       sources."process-nextick-args-2.0.1"
       sources."proto-list-1.2.4"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."ps-list-6.3.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -95226,10 +95932,13 @@ in
       })
       (sources."read-pkg-up-7.0.1" // {
         dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
           sources."type-fest-0.8.1"
         ];
       })
       sources."readable-stream-3.6.0"
+      sources."readdir-glob-1.1.1"
       sources."readdirp-3.6.0"
       sources."redeyed-2.1.1"
       sources."regenerate-1.4.2"
@@ -95266,7 +95975,7 @@ in
       sources."ret-0.1.15"
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
-      sources."rollup-2.45.2"
+      sources."rollup-2.50.5"
       (sources."rollup-plugin-inject-3.0.2" // {
         dependencies = [
           sources."estree-walker-0.6.1"
@@ -95361,6 +96070,7 @@ in
       })
       sources."sort-keys-length-1.0.1"
       sources."source-map-0.5.7"
+      sources."source-map-js-0.6.2"
       sources."source-map-resolve-0.5.3"
       (sources."source-map-support-0.5.19" // {
         dependencies = [
@@ -95372,7 +96082,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."split2-1.1.1"
       sources."sprintf-js-1.0.3"
@@ -95406,7 +96116,7 @@ in
           sources."supports-color-0.2.0"
         ];
       })
-      sources."statsd-client-0.4.5"
+      sources."statsd-client-0.4.6"
       sources."statuses-1.5.0"
       sources."strict-uri-encode-1.1.0"
       sources."string-width-4.2.2"
@@ -95427,7 +96137,11 @@ in
       sources."strip-final-newline-2.0.0"
       sources."strip-json-comments-2.0.1"
       sources."strip-outer-1.0.1"
-      sources."supports-color-7.2.0"
+      (sources."supports-color-7.2.0" // {
+        dependencies = [
+          sources."has-flag-4.0.0"
+        ];
+      })
       (sources."supports-hyperlinks-1.0.1" // {
         dependencies = [
           sources."has-flag-2.0.0"
@@ -95440,16 +96154,28 @@ in
       })
       sources."symbol-observable-1.2.0"
       sources."tar-stream-2.2.0"
-      sources."temp-dir-1.0.0"
-      (sources."tempy-0.3.0" // {
+      sources."temp-dir-2.0.0"
+      (sources."tempy-1.0.1" // {
         dependencies = [
-          sources."crypto-random-string-1.0.0"
-          sources."type-fest-0.3.1"
-          sources."unique-string-1.0.0"
+          sources."@nodelib/fs.stat-2.0.4"
+          sources."array-union-2.1.0"
+          sources."braces-3.0.2"
+          sources."del-6.0.0"
+          sources."dir-glob-3.0.1"
+          sources."fast-glob-3.2.5"
+          sources."fill-range-7.0.1"
+          sources."glob-parent-5.1.2"
+          sources."globby-11.0.3"
+          sources."ignore-5.1.8"
+          sources."is-number-7.0.0"
+          sources."micromatch-4.0.4"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+          sources."type-fest-0.16.0"
         ];
       })
       sources."term-size-2.2.1"
-      (sources."terser-5.6.1" // {
+      (sources."terser-5.7.0" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
@@ -95491,7 +96217,7 @@ in
       sources."type-fest-0.21.3"
       sources."type-is-1.6.18"
       sources."typedarray-to-buffer-3.1.5"
-      sources."typescript-4.2.4"
+      sources."typescript-4.3.2"
       sources."uid-safe-2.1.5"
       sources."unbzip2-stream-1.4.3"
       sources."unicode-canonical-property-names-ecmascript-1.0.4"
@@ -95501,7 +96227,7 @@ in
       sources."union-value-1.0.1"
       sources."uniq-1.0.1"
       sources."unique-string-2.0.0"
-      sources."universal-user-agent-4.0.1"
+      sources."universal-user-agent-6.0.0"
       sources."universalify-0.1.2"
       (sources."unixify-1.0.0" // {
         dependencies = [
@@ -95519,10 +96245,15 @@ in
           sources."has-values-0.1.4"
         ];
       })
-      (sources."update-notifier-4.1.3" // {
+      (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-3.0.0"
+          sources."boxen-5.0.1"
+          sources."camelcase-6.2.0"
+          sources."global-dirs-3.0.0"
+          sources."ini-2.0.0"
+          sources."is-installed-globally-0.4.0"
+          sources."is-npm-5.0.0"
+          sources."type-fest-0.20.2"
         ];
       })
       sources."uri-js-4.4.1"
@@ -95543,7 +96274,12 @@ in
       sources."vary-1.1.2"
       (sources."wait-port-0.2.9" // {
         dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
           sources."commander-3.0.2"
+          sources."supports-color-5.5.0"
         ];
       })
       sources."wcwidth-1.0.1"
@@ -95574,7 +96310,7 @@ in
         ];
       })
       sources."word-wrap-1.2.3"
-      (sources."wrap-ansi-6.2.0" // {
+      (sources."wrap-ansi-7.0.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
         ];
@@ -95587,12 +96323,17 @@ in
       sources."xtend-4.0.2"
       sources."y18n-4.0.3"
       sources."yallist-4.0.0"
-      sources."yargs-15.4.1"
+      (sources."yargs-15.4.1" // {
+        dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+        ];
+      })
       sources."yargs-parser-18.1.3"
       sources."yarn-1.22.10"
       sources."yauzl-2.10.0"
       sources."yocto-queue-0.1.0"
-      sources."zip-stream-3.0.1"
+      sources."zip-stream-4.1.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -95629,10 +96370,10 @@ in
   node-gyp = nodeEnv.buildNodePackage {
     name = "node-gyp";
     packageName = "node-gyp";
-    version = "8.0.0";
+    version = "8.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-gyp/-/node-gyp-8.0.0.tgz";
-      sha512 = "Jod6NxyWtcwrpAQe0O/aXOpC5QfncotgtG73dg65z6VW/C6g/G4jiajXQUBIJ8pk/VfM6mBYE9BN/HvudTunUQ==";
+      url = "https://registry.npmjs.org/node-gyp/-/node-gyp-8.1.0.tgz";
+      sha512 = "o2elh1qt7YUp3lkMwY3/l4KF3j/A3fI/Qt4NH+CQQgPJdqGE9y7qnP84cjIWN27Q0jJkrSAhCVDg+wBVNBYdBg==";
     };
     dependencies = [
       sources."@npmcli/move-file-1.1.2"
@@ -95646,7 +96387,7 @@ in
       sources."are-we-there-yet-1.1.5"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."cacache-15.0.6"
+      sources."cacache-15.2.0"
       sources."chownr-2.0.0"
       sources."clean-stack-2.2.0"
       sources."code-point-at-1.1.0"
@@ -95662,14 +96403,14 @@ in
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."gauge-2.7.4"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-unicode-2.0.1"
       sources."http-cache-semantics-4.1.0"
       sources."http-proxy-agent-4.0.1"
       sources."https-proxy-agent-5.0.0"
       sources."humanize-ms-1.2.1"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
       sources."infer-owner-1.0.4"
@@ -95833,7 +96574,7 @@ in
       sources."find-up-1.1.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.1.4"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.12"
@@ -95866,7 +96607,7 @@ in
       sources."invert-kv-1.0.0"
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-typedarray-1.0.0"
@@ -95904,7 +96645,7 @@ in
       sources."negotiator-0.6.2"
       (sources."node-pre-gyp-0.6.39" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."rimraf-2.7.1"
           sources."semver-5.7.1"
         ];
@@ -95926,7 +96667,7 @@ in
       sources."parseurl-1.3.3"
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-1.1.0"
       sources."performance-now-0.2.0"
@@ -95935,7 +96676,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."plist-1.2.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."punycode-1.4.1"
       sources."qs-6.7.0"
       sources."range-parser-1.2.1"
@@ -95975,7 +96716,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       (sources."sshpk-1.16.1" // {
         dependencies = [
           sources."assert-plus-1.0.0"
@@ -95993,7 +96734,7 @@ in
       sources."tar-2.2.2"
       (sources."tar-pack-3.4.1" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."rimraf-2.7.1"
         ];
       })
@@ -96079,10 +96820,10 @@ in
       sources."fs-minipass-1.2.7"
       sources."fs.realpath-1.0.0"
       sources."gauge-2.7.4"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-unicode-2.0.1"
       sources."iconv-lite-0.4.24"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
@@ -96096,7 +96837,7 @@ in
       sources."ms-2.1.3"
       sources."needle-2.6.0"
       sources."nopt-4.0.3"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-packlist-1.4.8"
       sources."npmlog-4.1.2"
@@ -96140,16 +96881,16 @@ in
   node-red = nodeEnv.buildNodePackage {
     name = "node-red";
     packageName = "node-red";
-    version = "1.3.2";
+    version = "1.3.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-red/-/node-red-1.3.2.tgz";
-      sha512 = "tOtD5Z8l4WNuGNfUp/LFSC/ou74LfKhIWSgT4i9WTTUxUvSlWCBu8TsPNbjl9yM17Ox2ebe57mEnOHvTjQlEyA==";
+      url = "https://registry.npmjs.org/node-red/-/node-red-1.3.5.tgz";
+      sha512 = "P/EmWwzuY/0mQFlrklSUrVANdv9xQsbrpKrpfA8tuhhxu1OEiSgzYdo87Zj13Hi38K4f1rNPQj4rw2vEBcYS/g==";
     };
     dependencies = [
-      sources."@babel/runtime-7.13.10"
-      sources."@node-red/editor-api-1.3.2"
-      sources."@node-red/editor-client-1.3.2"
-      (sources."@node-red/nodes-1.3.2" // {
+      sources."@babel/runtime-7.14.0"
+      sources."@node-red/editor-api-1.3.5"
+      sources."@node-red/editor-client-1.3.5"
+      (sources."@node-red/nodes-1.3.5" // {
         dependencies = [
           sources."cookie-0.4.1"
           sources."http-errors-1.7.3"
@@ -96163,9 +96904,9 @@ in
           })
         ];
       })
-      sources."@node-red/registry-1.3.2"
-      sources."@node-red/runtime-1.3.2"
-      sources."@node-red/util-1.3.2"
+      sources."@node-red/registry-1.3.5"
+      sources."@node-red/runtime-1.3.5"
+      sources."@node-red/util-1.3.5"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       (sources."agent-base-6.0.2" // {
@@ -96313,10 +97054,10 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
       sources."finalhandler-1.1.2"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-extra-8.1.0"
       sources."fs-minipass-2.1.0"
@@ -96324,7 +97065,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-3.1.0"
       (sources."glob-stream-6.1.0" // {
         dependencies = [
@@ -96357,7 +97098,7 @@ in
       sources."i18next-15.1.2"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ini-1.3.8"
@@ -96432,10 +97173,10 @@ in
           sources."ms-2.1.2"
           sources."readable-stream-3.6.0"
           sources."string_decoder-1.3.0"
-          sources."ws-7.4.5"
+          sources."ws-7.4.6"
         ];
       })
-      (sources."mqtt-packet-6.9.1" // {
+      (sources."mqtt-packet-6.10.0" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -96473,7 +97214,7 @@ in
       sources."node-red-node-rbe-0.5.0"
       sources."node-red-node-tail-0.3.1"
       sources."nopt-5.0.0"
-      sources."npm-bundled-1.1.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-packlist-1.4.8"
       sources."npmlog-4.1.2"
@@ -96507,7 +97248,7 @@ in
       sources."pause-0.0.1"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
@@ -96684,7 +97425,7 @@ in
       sources."function-bind-1.1.1"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
@@ -96695,7 +97436,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-typedarray-1.0.0"
       sources."isarray-1.0.0"
@@ -96748,7 +97489,7 @@ in
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
       sources."proto-list-1.2.4"
@@ -96774,7 +97515,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sshpk-1.16.1"
       sources."ssri-5.3.0"
       sources."string-width-1.0.2"
@@ -96913,7 +97654,7 @@ in
       sources."ms-2.1.3"
       sources."nopt-1.0.10"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."once-1.4.0"
       sources."p-cancelable-1.1.0"
       (sources."package-json-6.5.0" // {
@@ -96921,7 +97662,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."prepend-http-2.0.0"
       sources."pstree.remy-1.1.8"
       sources."pump-3.0.0"
@@ -96982,15 +97723,15 @@ in
   np = nodeEnv.buildNodePackage {
     name = "np";
     packageName = "np";
-    version = "7.4.0";
+    version = "7.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/np/-/np-7.4.0.tgz";
-      sha512 = "woJn5Bodg0/VDyUWx5EHIsi+8QlKSows0AVRBt47PG++cJAVE6jQFXcXDFDBMqY5PueFc4w0SA3gxqPklk6oGg==";
+      url = "https://registry.npmjs.org/np/-/np-7.5.0.tgz";
+      sha512 = "CdpgqtO6JpDKJjQ2gueY0jnbz6APWA9wFXSwPv5bXg4seSBibHqQ8JyWxYlS8YRfVbpeDtj582wcAWTlfy5qNA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -97015,7 +97756,7 @@ in
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
       sources."@types/minimist-1.2.1"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/parse-json-4.0.0"
       sources."@types/responselike-1.0.0"
@@ -97056,7 +97797,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
       sources."ci-info-2.0.0"
       sources."clean-stack-2.2.0"
@@ -97108,7 +97849,7 @@ in
       sources."error-ex-1.3.2"
       sources."escape-goat-3.0.0"
       sources."escape-string-regexp-4.0.0"
-      sources."execa-5.0.0"
+      sources."execa-5.0.1"
       sources."external-editor-3.1.0"
       sources."fast-glob-3.2.5"
       sources."fastq-1.11.0"
@@ -97123,7 +97864,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-stream-6.0.1"
       sources."github-url-from-git-1.5.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-dirs-2.1.0"
       sources."globby-11.0.3"
@@ -97148,7 +97889,7 @@ in
       sources."human-signals-2.1.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."import-fresh-3.3.0"
       sources."import-lazy-2.1.0"
       (sources."import-local-3.0.2" // {
@@ -97195,7 +97936,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -97318,7 +98059,7 @@ in
           sources."hosted-git-info-4.0.2"
         ];
       })
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       (sources."npm-name-6.0.1" // {
         dependencies = [
           sources."p-map-3.0.0"
@@ -97338,11 +98079,11 @@ in
       sources."os-tmpdir-1.0.2"
       (sources."ow-0.21.0" // {
         dependencies = [
-          sources."@sindresorhus/is-4.0.0"
+          sources."@sindresorhus/is-4.0.1"
           sources."type-fest-0.20.2"
         ];
       })
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       (sources."p-event-4.2.0" // {
         dependencies = [
@@ -97389,9 +98130,9 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       (sources."pkg-dir-5.0.0" // {
         dependencies = [
           sources."find-up-5.0.0"
@@ -97456,7 +98197,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-1.0.1"
       sources."string-width-4.2.2"
       sources."strip-ansi-6.0.0"
@@ -97471,7 +98212,7 @@ in
       sources."tmp-0.0.33"
       sources."to-readable-stream-2.1.0"
       sources."to-regex-range-5.0.1"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."tslib-1.14.1"
       sources."type-fest-0.21.3"
       sources."typedarray-to-buffer-3.1.5"
@@ -97518,10 +98259,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "7.10.0";
+    version = "7.15.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-7.10.0.tgz";
-      sha512 = "DD4eEB71HGVt6pS6n4LmFD4eHsrglJ+QtLhv/kP2UWNKkJalL8TPfsiw9p8LmWKa6ed61LHPw5FE6krS3aGv0A==";
+      url = "https://registry.npmjs.org/npm/-/npm-7.15.1.tgz";
+      sha512 = "sPk+GrqawshbG3T81r2QvvSxSQXBFWyn5NGLacf87l+/odi2ZRHkWdLrg304Lw0DrwwIIaGxUjp0FJXaMtIErQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -97536,22 +98277,21 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "11.4.1";
+    version = "11.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-11.4.1.tgz";
-      sha512 = "bWElM5CeJ9gA/wvtqB4ljcKzAZ3BlPM2g/7mVi8mPdCR2N6dhgS4q5GCzQn4ZvpeKSFll3bUGkiR/lgSQOlN8Q==";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-11.6.0.tgz";
+      sha512 = "/l4S7Gh+8+Rg5itWsqFya5RRSHtPzw5neyAlbWNJfBfEeRX6lYVxKgs85QFBOKrZj3eL5MGBaUW8228TmjMhrw==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
-      sources."@npmcli/ci-detect-1.3.0"
-      sources."@npmcli/git-2.0.8"
+      sources."@npmcli/git-2.0.9"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
-      sources."@npmcli/run-script-1.8.4"
+      sources."@npmcli/run-script-1.8.5"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tootallnate/once-1.1.2"
@@ -97593,7 +98333,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."builtins-1.0.3"
-      sources."cacache-15.0.6"
+      sources."cacache-15.2.0"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -97602,7 +98342,7 @@ in
       })
       sources."camelcase-6.2.0"
       sources."caseless-0.12.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chownr-2.0.0"
       sources."ci-info-2.0.0"
       sources."cint-8.2.1"
@@ -97657,7 +98397,7 @@ in
       sources."get-stdin-8.0.0"
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       (sources."global-dirs-3.0.0" // {
         dependencies = [
@@ -97678,9 +98418,9 @@ in
       sources."http-signature-1.2.0"
       sources."https-proxy-agent-5.0.0"
       sources."humanize-ms-1.2.1"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."ignore-5.1.8"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
@@ -97740,7 +98480,7 @@ in
       })
       sources."make-fetch-happen-8.0.14"
       sources."map-age-cleaner-0.1.3"
-      sources."mem-8.1.0"
+      sources."mem-8.1.1"
       sources."merge2-1.4.1"
       sources."micromatch-4.0.4"
       sources."mime-db-1.47.0"
@@ -97761,14 +98501,14 @@ in
       sources."ms-2.1.2"
       sources."node-gyp-7.1.2"
       sources."nopt-5.0.0"
-      sources."normalize-url-4.5.0"
-      sources."npm-bundled-1.1.1"
+      sources."normalize-url-4.5.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-package-arg-8.1.2"
-      sources."npm-packlist-2.1.5"
+      sources."npm-packlist-2.2.2"
       sources."npm-pick-manifest-6.1.1"
-      sources."npm-registry-fetch-9.0.0"
+      sources."npm-registry-fetch-10.1.2"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
@@ -97785,13 +98525,13 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."pacote-11.3.1"
+      sources."pacote-11.3.3"
       sources."parse-github-url-1.0.2"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."prepend-http-2.0.0"
       sources."process-nextick-args-2.0.1"
       sources."progress-2.0.3"
@@ -97962,7 +98702,7 @@ in
       })
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-2.0.3"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
@@ -98121,69 +98861,72 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."json5-2.2.0"
           sources."semver-6.3.0"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.13.9" // {
+      (sources."@babel/generator-7.14.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      (sources."@babel/helper-define-polyfill-provider-0.2.0" // {
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/helpers-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.13.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-class-static-block-7.14.3"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
       sources."@babel/plugin-syntax-flow-7.12.13"
@@ -98195,14 +98938,15 @@ in
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.0"
       sources."@babel/plugin-syntax-top-level-await-7.12.13"
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -98211,16 +98955,16 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
-      sources."@babel/plugin-transform-react-jsx-7.13.12"
+      sources."@babel/plugin-transform-react-jsx-7.14.3"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
       sources."@babel/plugin-transform-shorthand-properties-7.12.13"
@@ -98230,16 +98974,16 @@ in
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
-      (sources."@babel/preset-env-7.13.15" // {
+      (sources."@babel/preset-env-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/preset-modules-0.1.4"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@iarna/toml-2.2.5"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
@@ -98261,7 +99005,7 @@ in
       sources."alphanum-sort-1.0.2"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
-      sources."ansi-to-html-0.6.14"
+      sources."ansi-to-html-0.6.15"
       (sources."anymatch-2.0.0" // {
         dependencies = [
           sources."normalize-path-2.1.1"
@@ -98294,13 +99038,13 @@ in
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."babel-plugin-dynamic-import-node-2.3.3"
-      (sources."babel-plugin-polyfill-corejs2-0.2.0" // {
+      (sources."babel-plugin-polyfill-corejs2-0.2.2" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       (sources."babel-runtime-6.26.0" // {
         dependencies = [
           sources."regenerator-runtime-0.11.1"
@@ -98344,7 +99088,7 @@ in
           sources."pako-1.0.11"
         ];
       })
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       (sources."buffer-4.9.2" // {
         dependencies = [
           sources."isarray-1.0.0"
@@ -98361,7 +99105,7 @@ in
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
@@ -98388,7 +99132,7 @@ in
       sources."convert-source-map-1.7.0"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.10.1" // {
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -98482,7 +99226,6 @@ in
       (sources."dom-serializer-0.2.2" // {
         dependencies = [
           sources."domelementtype-2.2.0"
-          sources."entities-2.2.0"
         ];
       })
       sources."domain-browser-1.2.0"
@@ -98500,19 +99243,19 @@ in
       sources."duplexer2-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
         ];
       })
       sources."encodeurl-1.0.2"
-      sources."entities-1.1.2"
+      sources."entities-2.2.0"
       sources."envinfo-7.8.1"
       sources."error-ex-1.3.2"
-      (sources."es-abstract-1.18.0" // {
+      (sources."es-abstract-1.18.3" // {
         dependencies = [
-          sources."object-inspect-1.10.2"
+          sources."object-inspect-1.10.3"
         ];
       })
       sources."es-to-primitive-1.2.1"
@@ -98563,7 +99306,7 @@ in
       sources."get-port-3.2.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -98608,15 +99351,14 @@ in
           sources."posthtml-0.15.2"
           sources."posthtml-parser-0.7.2"
           sources."source-map-0.7.3"
-          sources."terser-5.6.1"
+          sources."terser-5.7.0"
         ];
       })
       (sources."htmlparser2-6.1.0" // {
         dependencies = [
-          sources."dom-serializer-1.3.1"
+          sources."dom-serializer-1.3.2"
           sources."domelementtype-2.2.0"
           sources."domutils-2.6.0"
-          sources."entities-2.2.0"
         ];
       })
       sources."http-errors-1.7.3"
@@ -98636,19 +99378,19 @@ in
         ];
       })
       sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
         ];
       })
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       (sources."is-descriptor-1.0.2" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -98661,13 +99403,13 @@ in
       sources."is-html-1.1.0"
       sources."is-negative-zero-2.0.1"
       sources."is-number-3.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-obj-2.0.0"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-resolvable-1.1.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typedarray-1.0.0"
       sources."is-url-1.2.4"
       sources."is-windows-1.0.2"
@@ -98763,7 +99505,7 @@ in
           sources."punycode-1.4.1"
         ];
       })
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."normalize-path-3.0.0"
       sources."normalize-url-3.3.0"
       sources."nth-check-1.0.2"
@@ -98777,7 +99519,7 @@ in
       sources."object.assign-4.1.2"
       sources."object.getownpropertydescriptors-2.1.2"
       sources."object.pick-1.3.0"
-      sources."object.values-1.1.3"
+      sources."object.values-1.1.4"
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
@@ -98795,7 +99537,7 @@ in
       sources."path-dirname-1.0.2"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pbkdf2-3.1.2"
       sources."performance-now-2.1.0"
       sources."physical-cpu-count-2.0.0"
@@ -98863,7 +99605,7 @@ in
       sources."postcss-ordered-values-4.1.2"
       sources."postcss-reduce-initial-4.0.3"
       sources."postcss-reduce-transforms-4.0.2"
-      sources."postcss-selector-parser-6.0.4"
+      sources."postcss-selector-parser-6.0.6"
       sources."postcss-svgo-4.0.3"
       sources."postcss-unique-selectors-4.0.1"
       sources."postcss-value-parser-3.3.1"
@@ -98871,6 +99613,7 @@ in
       (sources."posthtml-parser-0.4.2" // {
         dependencies = [
           sources."domhandler-2.4.2"
+          sources."entities-1.1.2"
           sources."htmlparser2-3.10.1"
           sources."readable-stream-3.6.0"
         ];
@@ -98995,7 +99738,7 @@ in
         ];
       })
       sources."sprintf-js-1.0.3"
-      sources."srcset-3.0.0"
+      sources."srcset-3.0.1"
       sources."sshpk-1.16.1"
       sources."stable-0.1.8"
       (sources."static-eval-2.1.0" // {
@@ -99220,7 +99963,7 @@ in
       sources."find-up-3.0.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
@@ -99230,7 +99973,7 @@ in
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."handlebars-4.7.7"
       sources."har-schema-2.0.0"
@@ -99257,7 +100000,7 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      (sources."kad-git+https://github.com/wikimedia/kad.git#master" // {
+      (sources."kad-git://github.com/wikimedia/kad#master" // {
         dependencies = [
           sources."ms-0.7.3"
         ];
@@ -99265,7 +100008,7 @@ in
       sources."kad-fs-0.0.4"
       sources."kad-localstorage-0.0.7"
       sources."kad-memstore-0.0.1"
-      sources."limitation-0.2.1"
+      sources."limitation-0.2.2"
       sources."locate-path-3.0.0"
       sources."lodash-4.17.21"
       sources."lodash.clone-4.5.0"
@@ -99273,7 +100016,6 @@ in
       sources."lru-cache-6.0.0"
       sources."media-typer-0.3.0"
       sources."mediawiki-title-0.6.5"
-      sources."merge-1.2.1"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
@@ -99309,7 +100051,7 @@ in
       sources."process-nextick-args-2.0.1"
       sources."prom-client-11.5.3"
       sources."promise-8.1.0"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."prr-1.0.1"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
@@ -99349,7 +100091,7 @@ in
         ];
       })
       sources."serve-static-1.14.1"
-      (sources."service-runner-2.8.2" // {
+      (sources."service-runner-2.8.3" // {
         dependencies = [
           sources."semver-7.3.5"
           sources."yargs-14.2.3"
@@ -99372,7 +100114,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."type-is-1.6.18"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."unix-dgram-2.0.4"
       sources."unpipe-1.0.0"
       sources."uri-js-4.4.1"
@@ -99432,7 +100174,7 @@ in
       sources."find-yarn-workspace-root-2.0.0"
       sources."fs-extra-7.0.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-flag-3.0.0"
       sources."inflight-1.0.6"
@@ -99453,7 +100195,7 @@ in
       sources."os-tmpdir-1.0.2"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."rimraf-2.7.1"
       sources."semver-5.7.1"
       sources."shebang-command-1.2.0"
@@ -99556,7 +100298,7 @@ in
       sources."deep-extend-0.6.0"
       sources."define-properties-1.1.3"
       sources."dns-equal-1.0.0"
-      sources."dns-packet-1.3.1"
+      sources."dns-packet-1.3.4"
       sources."dns-txt-2.0.2"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
@@ -99576,7 +100318,7 @@ in
       sources."get-browser-rtc-1.1.0"
       sources."get-intrinsic-1.1.1"
       sources."get-stdin-4.0.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
       sources."has-ansi-2.0.0"
@@ -99609,11 +100351,11 @@ in
       sources."ipaddr.js-2.0.0"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.2.0"
-      sources."is-date-object-1.0.2"
+      sources."is-core-module-2.4.0"
+      sources."is-date-object-1.0.4"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-utf8-0.2.1"
       sources."isarray-1.0.0"
       sources."k-bucket-0.6.0"
@@ -99673,7 +100415,7 @@ in
       })
       sources."path-exists-2.1.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-1.1.0"
       (sources."peer-wire-protocol-0.7.1" // {
         dependencies = [
@@ -99732,7 +100474,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."speedometer-0.1.4"
       sources."stream-buffers-2.2.0"
       sources."string-width-1.0.2"
@@ -99896,7 +100638,7 @@ in
           sources."ms-2.1.3"
         ];
       })
-      (sources."engine.io-client-3.5.1" // {
+      (sources."engine.io-client-3.5.2" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -99915,14 +100657,14 @@ in
       sources."fluent-ffmpeg-2.1.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-chunk-store-1.7.0"
       sources."fs-constants-1.0.0"
       sources."fs.realpath-1.0.0"
       sources."get-browser-rtc-1.1.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
@@ -100034,7 +100776,7 @@ in
       sources."peer-wire-swarm-0.12.2"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -100141,8 +100883,8 @@ in
       sources."verror-1.10.0"
       sources."which-1.3.1"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
-      sources."xmlhttprequest-ssl-1.5.5"
+      sources."ws-7.4.6"
+      sources."xmlhttprequest-ssl-1.6.3"
       sources."xtend-4.0.2"
       sources."yeast-0.1.2"
       sources."zip-stream-2.1.3"
@@ -100255,7 +100997,7 @@ in
       sources."fclone-1.0.11"
       sources."file-uri-to-path-2.0.0"
       sources."fill-range-7.0.1"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."fs-extra-8.1.0"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
@@ -100264,7 +101006,7 @@ in
       sources."get-uri-3.0.2"
       sources."git-node-fs-1.0.0"
       sources."git-sha1-0.1.2"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
@@ -100278,7 +101020,7 @@ in
       sources."ini-1.3.8"
       sources."ip-1.1.5"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-extglob-2.1.1"
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
@@ -100315,8 +101057,8 @@ in
       sources."pac-resolver-4.2.0"
       sources."pako-0.2.9"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
-      sources."picomatch-2.2.3"
+      sources."path-parse-1.0.7"
+      sources."picomatch-2.3.0"
       sources."pidusage-2.0.21"
       sources."pm2-axon-4.0.1"
       sources."pm2-axon-rpc-0.7.1"
@@ -100388,10 +101130,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "6.0.2";
+    version = "6.6.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.0.2.tgz";
-      sha512 = "Zg1wbTjGu2dcQKzKq4IZSshK6zIEedEvlmE/EpujnFcbzJHXCAuyHZR2GuhR1887qc41dHs/bxnXEOol2/sapQ==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.6.2.tgz";
+      sha512 = "w1YEyx+xiTbrxVt5OP6JG0LqwkK/hq2OkCYj7RZhK9oyv7cCEkgkX5Z5MPVC1wTCv2kQDJRoXzBeedPiIhzN8Q==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -100441,8 +101183,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -100464,7 +101206,7 @@ in
       sources."binary-extensions-2.2.0"
       sources."braces-3.0.2"
       sources."callsites-3.1.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."chokidar-3.5.1"
       sources."cliui-7.0.4"
       sources."color-convert-2.0.1"
@@ -100517,7 +101259,7 @@ in
       sources."parent-module-1.0.1"
       sources."parse-json-5.2.0"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-2.3.0"
       sources."postcss-load-config-3.0.1"
       sources."postcss-reporter-7.0.2"
@@ -100554,10 +101296,10 @@ in
   prettier = nodeEnv.buildNodePackage {
     name = "prettier";
     packageName = "prettier";
-    version = "2.2.1";
+    version = "2.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz";
-      sha512 = "PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==";
+      url = "https://registry.npmjs.org/prettier/-/prettier-2.3.0.tgz";
+      sha512 = "kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -100583,7 +101325,7 @@ in
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
       sources."gaze-1.1.3"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."globule-1.3.2"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -100712,7 +101454,7 @@ in
       sources."function-bind-1.1.1"
       sources."gaze-1.1.3"
       sources."get-assigned-identifiers-1.2.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."globule-1.3.2"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
@@ -100735,7 +101477,7 @@ in
         ];
       })
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."json-stable-stringify-0.0.1"
@@ -100783,7 +101525,7 @@ in
       sources."parse-asn1-5.1.6"
       sources."path-browserify-0.0.1"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-platform-0.11.15"
       sources."pbkdf2-3.1.2"
       sources."process-0.11.10"
@@ -100940,10 +101682,10 @@ in
   pyright = nodeEnv.buildNodePackage {
     name = "pyright";
     packageName = "pyright";
-    version = "1.1.132";
+    version = "1.1.145";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.132.tgz";
-      sha512 = "quvG9Ip2NwKEShsLJ7eLlkQ/ST5SX84QCgO/k7gGqlCHwuifn9/v7LrzdpdFbkVnQR51egUNWwwLQRoIBT6vUA==";
+      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.145.tgz";
+      sha512 = "eyrK9Ilut2shvqi/TFmpfUrm7U6DrkskMa8UPofkGJZCO1PJzVwzKaGWrR57zlbcAxs5PVvK9JGSIO9DJUVNyA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -101015,15 +101757,15 @@ in
       sources."function-bind-1.1.1"
       sources."get-caller-file-1.0.3"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graphql-0.11.7"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."iconv-lite-0.6.2"
+      sources."iconv-lite-0.6.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."invert-kv-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-stream-1.1.0"
       sources."is-url-1.2.4"
@@ -101074,7 +101816,7 @@ in
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pluralize-7.0.0"
       sources."prelude-ls-1.1.2"
       sources."process-nextick-args-2.0.1"
@@ -101191,9 +101933,8 @@ in
     dependencies = [
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
-      sources."array-filter-1.0.0"
       sources."async-0.2.10"
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."call-bind-1.0.2"
@@ -101203,7 +101944,7 @@ in
       sources."cycle-1.0.3"
       sources."deep-equal-2.0.5"
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
@@ -101212,7 +101953,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-1.0.3"
       sources."has-ansi-2.0.0"
       sources."has-bigints-1.0.1"
@@ -101221,17 +101962,17 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-arguments-1.1.0"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
       sources."is-set-2.0.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."is-weakmap-2.0.1"
       sources."is-weakset-2.0.1"
@@ -101242,7 +101983,7 @@ in
       sources."mkdirp-0.5.5"
       sources."mute-stream-0.0.8"
       sources."ncp-0.4.2"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
@@ -101292,66 +102033,69 @@ in
       sha512 = "coA9MuNPfN+8TyFj7aOycw2e5W9t+sSgFOUyK30oDrh2MWWWHLjY0I4V1puyCconC2arggfDE2GYXvqOTCGv9Q==";
     };
     dependencies = [
-      sources."@babel/cli-7.13.14"
+      sources."@babel/cli-7.14.3"
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      (sources."@babel/core-7.13.15" // {
+      sources."@babel/compat-data-7.14.4"
+      (sources."@babel/core-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.13.9"
+      sources."@babel/generator-7.14.3"
       sources."@babel/helper-annotate-as-pure-7.12.13"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13"
-      (sources."@babel/helper-compilation-targets-7.13.13" // {
+      (sources."@babel/helper-compilation-targets-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.13.11"
-      sources."@babel/helper-create-regexp-features-plugin-7.12.17"
-      (sources."@babel/helper-define-polyfill-provider-0.2.0" // {
+      sources."@babel/helper-create-class-features-plugin-7.14.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.3"
+      (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/helper-explode-assignable-expression-7.13.0"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
-      sources."@babel/helper-hoist-variables-7.13.0"
+      sources."@babel/helper-hoist-variables-7.13.16"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
       sources."@babel/helper-plugin-utils-7.13.0"
       sources."@babel/helper-remap-async-to-generator-7.13.0"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
       sources."@babel/helper-wrap-function-7.13.0"
-      sources."@babel/helpers-7.13.10"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
+      sources."@babel/helpers-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12"
-      sources."@babel/plugin-proposal-async-generator-functions-7.13.15"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.2"
       sources."@babel/plugin-proposal-class-properties-7.13.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.13.8"
+      sources."@babel/plugin-proposal-class-static-block-7.14.3"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.2"
       sources."@babel/plugin-proposal-export-default-from-7.12.13"
-      sources."@babel/plugin-proposal-export-namespace-from-7.12.13"
-      sources."@babel/plugin-proposal-json-strings-7.13.8"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8"
-      sources."@babel/plugin-proposal-numeric-separator-7.12.13"
-      sources."@babel/plugin-proposal-object-rest-spread-7.13.8"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.13.8"
-      sources."@babel/plugin-proposal-optional-chaining-7.13.12"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.2"
+      sources."@babel/plugin-proposal-json-strings-7.14.2"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.2"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.2"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.2"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.4"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.2"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.2"
       sources."@babel/plugin-proposal-private-methods-7.13.0"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.12.13"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-default-from-7.12.13"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
@@ -101363,14 +102107,15 @@ in
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.0"
       sources."@babel/plugin-syntax-top-level-await-7.12.13"
       sources."@babel/plugin-transform-arrow-functions-7.13.0"
       sources."@babel/plugin-transform-async-to-generator-7.13.0"
       sources."@babel/plugin-transform-block-scoped-functions-7.12.13"
-      sources."@babel/plugin-transform-block-scoping-7.12.13"
-      sources."@babel/plugin-transform-classes-7.13.0"
+      sources."@babel/plugin-transform-block-scoping-7.14.4"
+      sources."@babel/plugin-transform-classes-7.14.4"
       sources."@babel/plugin-transform-computed-properties-7.13.0"
-      sources."@babel/plugin-transform-destructuring-7.13.0"
+      sources."@babel/plugin-transform-destructuring-7.14.4"
       sources."@babel/plugin-transform-dotall-regex-7.12.13"
       sources."@babel/plugin-transform-duplicate-keys-7.12.13"
       sources."@babel/plugin-transform-exponentiation-operator-7.12.13"
@@ -101378,22 +102123,22 @@ in
       sources."@babel/plugin-transform-function-name-7.12.13"
       sources."@babel/plugin-transform-literals-7.12.13"
       sources."@babel/plugin-transform-member-expression-literals-7.12.13"
-      sources."@babel/plugin-transform-modules-amd-7.13.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.13.8"
+      sources."@babel/plugin-transform-modules-amd-7.14.2"
+      sources."@babel/plugin-transform-modules-commonjs-7.14.0"
       sources."@babel/plugin-transform-modules-systemjs-7.13.8"
-      sources."@babel/plugin-transform-modules-umd-7.13.0"
+      sources."@babel/plugin-transform-modules-umd-7.14.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13"
       sources."@babel/plugin-transform-new-target-7.12.13"
       sources."@babel/plugin-transform-object-super-7.12.13"
-      sources."@babel/plugin-transform-parameters-7.13.0"
+      sources."@babel/plugin-transform-parameters-7.14.2"
       sources."@babel/plugin-transform-property-literals-7.12.13"
-      sources."@babel/plugin-transform-react-display-name-7.12.13"
-      sources."@babel/plugin-transform-react-jsx-7.13.12"
+      sources."@babel/plugin-transform-react-display-name-7.14.2"
+      sources."@babel/plugin-transform-react-jsx-7.14.3"
       sources."@babel/plugin-transform-react-jsx-development-7.12.17"
       sources."@babel/plugin-transform-react-pure-annotations-7.12.1"
       sources."@babel/plugin-transform-regenerator-7.13.15"
       sources."@babel/plugin-transform-reserved-words-7.12.13"
-      (sources."@babel/plugin-transform-runtime-7.13.15" // {
+      (sources."@babel/plugin-transform-runtime-7.14.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -101405,7 +102150,7 @@ in
       sources."@babel/plugin-transform-typeof-symbol-7.12.13"
       sources."@babel/plugin-transform-unicode-escapes-7.12.13"
       sources."@babel/plugin-transform-unicode-regex-7.12.13"
-      (sources."@babel/preset-env-7.13.15" // {
+      (sources."@babel/preset-env-7.14.4" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -101413,17 +102158,17 @@ in
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-react-7.13.13"
       sources."@babel/preset-stage-0-7.8.3"
-      sources."@babel/register-7.13.14"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/register-7.13.16"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@reach/router-1.3.4"
       sources."@sindresorhus/is-0.7.0"
       sources."@types/glob-7.1.3"
       sources."@types/json-schema-7.0.7"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/q-1.5.4"
       sources."@webassemblyjs/ast-1.9.0"
@@ -101512,13 +102257,13 @@ in
       })
       sources."babel-plugin-dynamic-import-node-2.3.3"
       sources."babel-plugin-macros-2.8.0"
-      (sources."babel-plugin-polyfill-corejs2-0.2.0" // {
+      (sources."babel-plugin-polyfill-corejs2-0.2.2" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."babel-plugin-polyfill-corejs3-0.2.0"
-      sources."babel-plugin-polyfill-regenerator-0.2.0"
+      sources."babel-plugin-polyfill-corejs3-0.2.2"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
       sources."babel-plugin-transform-react-remove-prop-types-0.4.24"
       sources."babel-plugin-universal-import-4.0.2"
       (sources."babel-runtime-6.26.0" // {
@@ -101577,7 +102322,7 @@ in
         ];
       })
       sources."browserify-zlib-0.1.4"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -101611,7 +102356,7 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caw-2.0.1"
       (sources."chalk-2.4.2" // {
@@ -101661,6 +102406,7 @@ in
           sources."string-width-3.1.0"
         ];
       })
+      sources."clone-deep-4.0.1"
       sources."clone-response-1.0.2"
       sources."coa-2.0.2"
       sources."collection-visit-1.0.0"
@@ -101695,7 +102441,7 @@ in
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.10.1" // {
+      (sources."core-js-compat-3.13.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -101803,14 +102549,14 @@ in
       sources."depd-1.1.2"
       sources."des.js-1.0.1"
       sources."destroy-1.0.4"
-      sources."detect-node-2.0.5"
+      sources."detect-node-2.1.0"
       (sources."diffie-hellman-5.0.3" // {
         dependencies = [
           sources."bn.js-4.12.0"
         ];
       })
       sources."dns-equal-1.0.0"
-      sources."dns-packet-1.3.1"
+      sources."dns-packet-1.3.4"
       sources."dns-txt-2.0.2"
       sources."dom-converter-0.2.0"
       (sources."dom-serializer-0.2.2" // {
@@ -101835,7 +102581,7 @@ in
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -101850,7 +102596,7 @@ in
           sources."debug-4.1.1"
         ];
       })
-      (sources."engine.io-client-3.5.1" // {
+      (sources."engine.io-client-3.5.2" // {
         dependencies = [
           sources."component-emitter-1.3.0"
           sources."debug-3.1.0"
@@ -101866,7 +102612,7 @@ in
       sources."entities-2.2.0"
       sources."errno-0.1.8"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
@@ -101945,7 +102691,7 @@ in
           sources."punycode-1.4.1"
         ];
       })
-      sources."faye-websocket-0.11.3"
+      sources."faye-websocket-0.11.4"
       sources."fd-slicer-1.1.0"
       sources."figgy-pudding-3.5.2"
       sources."figures-2.0.0"
@@ -101969,9 +102715,9 @@ in
       sources."find-cache-dir-2.1.0"
       sources."find-up-3.0.0"
       sources."flush-write-stream-1.1.1"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."for-in-1.0.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."from2-2.3.0"
@@ -101990,7 +102736,7 @@ in
       sources."get-value-2.0.6"
       sources."git-clone-0.1.0"
       sources."git-promise-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."globals-11.12.0"
       (sources."globby-6.1.0" // {
@@ -102106,7 +102852,7 @@ in
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."figures-3.2.0"
@@ -102125,15 +102871,15 @@ in
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-2.1.0"
-      sources."is-boolean-object-1.1.0"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-deflate-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-directory-0.3.1"
@@ -102145,7 +102891,7 @@ in
       sources."is-natural-number-4.0.1"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-obj-2.0.0"
       sources."is-object-1.0.2"
       sources."is-path-cwd-2.2.0"
@@ -102153,12 +102899,12 @@ in
       sources."is-path-inside-2.1.0"
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-resolvable-1.1.0"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
       sources."isarray-1.0.0"
@@ -102232,8 +102978,12 @@ in
         ];
       })
       sources."mime-2.5.2"
-      sources."mime-db-1.47.0"
-      sources."mime-types-2.1.30"
+      sources."mime-db-1.48.0"
+      (sources."mime-types-2.1.30" // {
+        dependencies = [
+          sources."mime-db-1.47.0"
+        ];
+      })
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
@@ -102274,7 +103024,7 @@ in
         ];
       })
       sources."node-modules-regexp-1.0.0"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."normalize-path-3.0.0"
       sources."normalize-range-0.1.2"
       (sources."normalize-url-2.0.1" // {
@@ -102304,14 +103054,14 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
       sources."object.assign-4.1.2"
       sources."object.getownpropertydescriptors-2.1.2"
       sources."object.pick-1.3.0"
-      sources."object.values-1.1.3"
+      sources."object.values-1.1.4"
       sources."obuf-1.1.2"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
@@ -102319,7 +103069,7 @@ in
       sources."onetime-2.0.1"
       sources."opener-1.5.2"
       sources."opn-5.5.0"
-      sources."optimize-css-assets-webpack-plugin-5.0.4"
+      sources."optimize-css-assets-webpack-plugin-5.0.6"
       sources."original-1.0.2"
       sources."os-browserify-0.3.0"
       sources."os-tmpdir-1.0.2"
@@ -102349,14 +103099,14 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-2.2.1"
       sources."path-type-4.0.0"
       sources."pbkdf2-3.1.2"
       sources."peek-stream-1.1.3"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -102493,7 +103243,7 @@ in
           sources."postcss-value-parser-3.3.1"
         ];
       })
-      sources."postcss-selector-parser-6.0.4"
+      sources."postcss-selector-parser-6.0.6"
       (sources."postcss-svgo-4.0.3" // {
         dependencies = [
           sources."postcss-value-parser-3.3.1"
@@ -102509,7 +103259,7 @@ in
       sources."promise-inflight-1.0.1"
       sources."prop-types-15.7.2"
       sources."proto-list-1.2.4"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."prr-1.0.1"
       sources."pseudomap-1.0.2"
       (sources."public-encrypt-4.0.3" // {
@@ -102603,7 +103353,7 @@ in
         ];
       })
       sources."select-hose-2.0.0"
-      sources."selfsigned-1.10.8"
+      sources."selfsigned-1.10.11"
       sources."semver-5.7.1"
       (sources."send-0.17.1" // {
         dependencies = [
@@ -102652,6 +103402,7 @@ in
       sources."setimmediate-1.0.5"
       sources."setprototypeof-1.1.1"
       sources."sha.js-2.4.11"
+      sources."shallow-clone-3.0.1"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."shorthash-0.0.2"
@@ -102993,8 +103744,8 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
-      sources."xmlhttprequest-ssl-1.5.5"
+      sources."ws-7.4.6"
+      sources."xmlhttprequest-ssl-1.6.3"
       sources."xtend-4.0.2"
       sources."y18n-4.0.3"
       sources."yallist-2.1.2"
@@ -103075,45 +103826,39 @@ in
   readability-cli = nodeEnv.buildNodePackage {
     name = "readability-cli";
     packageName = "readability-cli";
-    version = "2.2.4-pre";
+    version = "2.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/readability-cli/-/readability-cli-2.2.4-pre.tgz";
-      sha512 = "KKCB4KGnrbCnA7KAGlArlGccwqP6UXxxbNkXVEoTGM8GHULUa5xkeIp5QMDwagRvmVR0vBIwLewz+QW1WZORAQ==";
+      url = "https://registry.npmjs.org/readability-cli/-/readability-cli-2.3.0.tgz";
+      sha512 = "9hiYYcNshOLt4kLXcuE1nIO5nAFyOcnau3nn+rw/WNQC52Vpa77GqeJZCSBIWAUNsALmtsCby76oOiSJlX5dbQ==";
     };
     dependencies = [
       sources."@mozilla/readability-0.4.1"
+      sources."@tootallnate/once-1.1.2"
       sources."abab-2.0.5"
-      sources."acorn-8.1.1"
+      sources."acorn-8.3.0"
       (sources."acorn-globals-6.0.0" // {
         dependencies = [
           sources."acorn-7.4.1"
         ];
       })
       sources."acorn-walk-7.2.0"
-      sources."ajv-6.12.6"
+      sources."agent-base-6.0.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
-      sources."asn1-0.2.4"
-      sources."assert-plus-1.0.0"
       sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.11.0"
-      sources."bcrypt-pbkdf-1.0.2"
       sources."browser-process-hrtime-1.0.0"
-      sources."caseless-0.12.0"
       sources."cliui-7.0.4"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."combined-stream-1.0.8"
-      sources."core-util-is-1.0.2"
       sources."cssom-0.4.4"
       (sources."cssstyle-2.3.0" // {
         dependencies = [
           sources."cssom-0.3.8"
         ];
       })
-      sources."dashdash-1.14.1"
       sources."data-urls-2.0.0"
+      sources."debug-4.3.2"
       sources."decimal.js-10.2.1"
       sources."deep-is-0.1.3"
       sources."delayed-stream-1.0.0"
@@ -103122,81 +103867,45 @@ in
           sources."webidl-conversions-5.0.0"
         ];
       })
-      sources."dompurify-2.2.7"
-      sources."ecc-jsbn-0.1.2"
+      sources."dompurify-2.2.9"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
       sources."escodegen-2.0.0"
       sources."esprima-4.0.1"
       sources."estraverse-5.2.0"
       sources."esutils-2.0.3"
-      sources."extend-3.0.2"
-      sources."extsprintf-1.3.0"
-      sources."fast-deep-equal-3.1.3"
-      sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.3.3"
+      sources."form-data-3.0.1"
       sources."get-caller-file-2.0.5"
-      sources."getpass-0.1.7"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
       sources."html-encoding-sniffer-2.0.1"
-      sources."http-signature-1.2.0"
+      sources."http-proxy-agent-4.0.1"
+      sources."https-proxy-agent-5.0.0"
       sources."iconv-lite-0.4.24"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-potential-custom-element-name-1.0.1"
-      sources."is-typedarray-1.0.0"
-      sources."isstream-0.1.2"
-      sources."jsbn-0.1.1"
-      sources."jsdom-16.5.3"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsprim-1.4.1"
+      sources."jsdom-16.6.0"
       sources."levn-0.3.0"
       sources."lodash-4.17.21"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
+      sources."ms-2.1.2"
       sources."nwsapi-2.2.0"
-      sources."oauth-sign-0.9.0"
       sources."optionator-0.8.3"
       sources."parse5-6.0.1"
-      sources."performance-now-2.1.0"
       sources."prelude-ls-1.1.2"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
-      sources."qs-6.5.2"
-      (sources."request-2.88.2" // {
-        dependencies = [
-          sources."tough-cookie-2.5.0"
-        ];
-      })
-      sources."request-promise-core-1.1.4"
-      (sources."request-promise-native-1.0.9" // {
-        dependencies = [
-          sources."tough-cookie-2.5.0"
-        ];
-      })
       sources."require-directory-2.1.1"
-      sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."saxes-5.0.1"
       sources."source-map-0.6.1"
-      sources."sshpk-1.16.1"
-      sources."stealthy-require-1.1.1"
       sources."string-width-4.2.2"
       sources."strip-ansi-6.0.0"
       sources."symbol-tree-3.2.4"
       sources."tough-cookie-4.0.0"
-      sources."tr46-2.0.2"
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
+      sources."tr46-2.1.0"
       sources."type-check-0.3.2"
       sources."universalify-0.1.2"
-      sources."uri-js-4.4.1"
-      sources."uuid-3.4.0"
-      sources."verror-1.10.0"
       sources."w3c-hr-time-1.0.2"
       sources."w3c-xmlserializer-2.0.0"
       sources."webidl-conversions-6.1.0"
@@ -103205,11 +103914,11 @@ in
       sources."whatwg-url-8.5.0"
       sources."word-wrap-1.2.3"
       sources."wrap-ansi-7.0.0"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
-      sources."yargs-17.0.0-candidate.12"
+      sources."yargs-17.0.1"
       sources."yargs-parser-20.2.7"
     ];
     buildInputs = globalBuildInputs;
@@ -103232,36 +103941,37 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      (sources."@babel/generator-7.13.9" // {
+      (sources."@babel/generator-7.14.3" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.12.13"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-module-imports-7.13.12"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/parser-7.13.15"
-      sources."@babel/runtime-7.13.10"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
+      sources."@babel/parser-7.14.4"
+      sources."@babel/runtime-7.14.0"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@emotion/is-prop-valid-0.8.8"
       sources."@emotion/memoize-0.7.4"
       sources."@emotion/stylis-0.8.5"
       sources."@emotion/unitless-0.7.5"
       sources."@exodus/schemasafe-1.0.0-rc.3"
       sources."@redocly/ajv-6.12.4"
-      (sources."@redocly/openapi-core-1.0.0-beta.44" // {
+      (sources."@redocly/openapi-core-1.0.0-beta.49" // {
         dependencies = [
-          sources."@types/node-14.14.41"
+          sources."@types/node-14.17.1"
         ];
       })
       sources."@redocly/react-dropdown-aria-2.0.11"
-      sources."@types/node-13.13.50"
+      sources."@types/json-schema-7.0.7"
+      sources."@types/node-13.13.52"
       (sources."ajv-5.5.2" // {
         dependencies = [
           sources."fast-deep-equal-1.1.0"
@@ -103328,7 +104038,7 @@ in
       sources."concat-map-0.0.1"
       sources."console-browserify-1.2.0"
       sources."constants-browserify-1.0.0"
-      sources."core-js-3.10.1"
+      sources."core-js-3.13.1"
       sources."core-util-is-1.0.2"
       (sources."create-ecdh-4.0.4" // {
         dependencies = [
@@ -103351,7 +104061,7 @@ in
         ];
       })
       sources."domain-browser-1.2.0"
-      sources."dompurify-2.2.7"
+      sources."dompurify-2.2.9"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -103431,8 +104141,8 @@ in
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mkdirp-1.0.4"
-      sources."mobx-6.2.0"
-      sources."mobx-react-7.1.0"
+      sources."mobx-6.3.2"
+      sources."mobx-react-7.2.0"
       sources."mobx-react-lite-3.2.0"
       sources."ms-2.1.2"
       sources."neo-async-2.6.2"
@@ -103442,16 +104152,16 @@ in
       sources."node-readfiles-0.2.0"
       sources."normalize-path-3.0.0"
       sources."oas-kit-common-1.0.8"
-      sources."oas-linter-3.2.1"
-      (sources."oas-resolver-2.5.4" // {
+      sources."oas-linter-3.2.2"
+      (sources."oas-resolver-2.5.5" // {
         dependencies = [
-          sources."yargs-16.2.0"
+          sources."yargs-17.0.1"
         ];
       })
       sources."oas-schema-walker-1.1.5"
       sources."oas-validator-4.0.8"
       sources."object-assign-4.1.1"
-      sources."openapi-sampler-1.0.0-beta.18"
+      sources."openapi-sampler-1.0.1"
       sources."os-browserify-0.3.0"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
@@ -103461,9 +104171,9 @@ in
       sources."path-browserify-0.0.1"
       sources."path-exists-4.0.0"
       sources."pbkdf2-3.1.2"
-      sources."perfect-scrollbar-1.5.0"
-      sources."picomatch-2.2.3"
-      sources."polished-3.7.1"
+      sources."perfect-scrollbar-1.5.1"
+      sources."picomatch-2.3.0"
+      sources."polished-3.7.2"
       sources."postcss-value-parser-4.1.0"
       sources."prismjs-1.23.0"
       sources."process-0.11.10"
@@ -103512,7 +104222,7 @@ in
       sources."should-type-1.4.0"
       sources."should-type-adaptors-1.1.0"
       sources."should-util-1.0.1"
-      sources."slugify-1.5.0"
+      sources."slugify-1.5.3"
       sources."source-map-0.6.1"
       sources."sprintf-js-1.0.3"
       sources."stickyfill-1.1.1"
@@ -103521,7 +104231,7 @@ in
       sources."string-width-4.2.2"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.0"
-      sources."styled-components-5.2.3"
+      sources."styled-components-5.3.0"
       sources."supports-color-5.5.0"
       sources."swagger2openapi-6.2.3"
       sources."timers-browserify-2.0.12"
@@ -103531,7 +104241,7 @@ in
       sources."to-regex-range-5.0.1"
       sources."tslib-2.2.0"
       sources."tty-browserify-0.0.0"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       (sources."uri-js-4.4.1" // {
         dependencies = [
           sources."punycode-2.1.1"
@@ -103632,7 +104342,7 @@ in
       sources."ink-2.7.1"
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-plain-obj-1.1.0"
       sources."js-tokens-4.0.0"
@@ -103676,7 +104386,7 @@ in
       sources."p-try-1.0.0"
       sources."parse-json-4.0.0"
       sources."path-exists-3.0.0"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-3.0.0"
       sources."pify-3.0.0"
       sources."prop-types-15.7.2"
@@ -103696,7 +104406,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       (sources."string-length-3.1.0" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
@@ -103729,10 +104439,10 @@ in
   "reveal.js" = nodeEnv.buildNodePackage {
     name = "reveal.js";
     packageName = "reveal.js";
-    version = "4.1.0";
+    version = "4.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/reveal.js/-/reveal.js-4.1.0.tgz";
-      sha512 = "lYOMhxSWgq5jtgspF7eRL0d2rBnHO/VGZ4/qp46yu+eGoWqJkYHEuepEXzx71M8MI6Rf8HBYWaTnKi5uHWcU1Q==";
+      url = "https://registry.npmjs.org/reveal.js/-/reveal.js-4.1.1.tgz";
+      sha512 = "Ol+/3LF4sZKQQOaG7/Jsa7t5Kix1I+dx9UEYL8mOOn2sWROtLcbI3AGHZbNQPWeuvnQ/y1R3MJ0vN9ZI5nBPUg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -103757,7 +104467,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."minimatch-3.0.4"
@@ -103778,10 +104488,10 @@ in
   rollup = nodeEnv.buildNodePackage {
     name = "rollup";
     packageName = "rollup";
-    version = "2.45.2";
+    version = "2.50.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/rollup/-/rollup-2.45.2.tgz";
-      sha512 = "kRRU7wXzFHUzBIv0GfoFFIN3m9oteY4uAsKllIpQDId5cfnkWF2J130l+27dzDju0E6MScKiV0ZM5Bw8m4blYQ==";
+      url = "https://registry.npmjs.org/rollup/-/rollup-2.50.5.tgz";
+      sha512 = "Ztz4NurU2LbS3Jn5rlhnYv35z6pkjBUmYKr94fOBIKINKRO6kug9NTFHArT7jqwMP2kqEZ39jJuEtkk91NBltQ==";
     };
     dependencies = [
       sources."fsevents-2.3.2"
@@ -103803,13 +104513,14 @@ in
     src = ../../misc/vscode-extensions/rust-analyzer/build-deps;
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."globals-12.4.0"
           sources."ignore-4.0.6"
@@ -103834,14 +104545,14 @@ in
       sources."@types/node-12.12.70"
       sources."@types/node-fetch-2.5.10"
       sources."@types/resolve-1.17.1"
-      sources."@types/vscode-1.55.0"
-      sources."@typescript-eslint/eslint-plugin-4.22.0"
-      sources."@typescript-eslint/experimental-utils-4.22.0"
-      sources."@typescript-eslint/parser-4.22.0"
-      sources."@typescript-eslint/scope-manager-4.22.0"
-      sources."@typescript-eslint/types-4.22.0"
-      sources."@typescript-eslint/typescript-estree-4.22.0"
-      sources."@typescript-eslint/visitor-keys-4.22.0"
+      sources."@types/vscode-1.56.0"
+      sources."@typescript-eslint/eslint-plugin-4.26.0"
+      sources."@typescript-eslint/experimental-utils-4.26.0"
+      sources."@typescript-eslint/parser-4.26.0"
+      sources."@typescript-eslint/scope-manager-4.26.0"
+      sources."@typescript-eslint/types-4.26.0"
+      sources."@typescript-eslint/typescript-estree-4.26.0"
+      sources."@typescript-eslint/visitor-keys-4.26.0"
       sources."@ungap/promise-all-settled-1.1.2"
       sources."acorn-7.4.1"
       sources."acorn-jsx-5.3.1"
@@ -103855,7 +104566,7 @@ in
       sources."array-union-2.1.0"
       sources."astral-regex-2.0.0"
       sources."asynckit-0.4.0"
-      sources."azure-devops-node-api-7.2.0"
+      sources."azure-devops-node-api-10.2.2"
       sources."balanced-match-1.0.2"
       sources."big-integer-1.6.48"
       sources."binary-0.3.0"
@@ -103873,7 +104584,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-6.2.0"
       sources."chainsaw-0.1.0"
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -103882,7 +104593,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."cheerio-1.0.0-rc.6"
+      sources."cheerio-1.0.0-rc.9"
       sources."cheerio-select-1.4.0"
       sources."chokidar-3.5.1"
       sources."cliui-7.0.4"
@@ -103896,7 +104607,7 @@ in
       sources."core-util-is-1.0.2"
       sources."cross-spawn-7.0.3"
       sources."css-select-4.1.2"
-      sources."css-what-5.0.0"
+      sources."css-what-5.0.1"
       sources."debug-4.3.2"
       sources."decamelize-4.0.0"
       sources."deep-is-0.1.3"
@@ -103906,7 +104617,7 @@ in
       sources."diff-5.0.0"
       sources."dir-glob-3.0.1"
       sources."doctrine-3.0.0"
-      sources."dom-serializer-1.3.1"
+      sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.0"
       sources."domutils-2.6.0"
@@ -103922,19 +104633,20 @@ in
       sources."enquirer-2.3.6"
       sources."entities-2.2.0"
       sources."escalade-3.1.1"
-      sources."escape-string-regexp-1.0.5"
-      (sources."eslint-7.24.0" // {
+      sources."escape-string-regexp-4.0.0"
+      (sources."eslint-7.27.0" // {
         dependencies = [
+          (sources."eslint-utils-2.1.0" // {
+            dependencies = [
+              sources."eslint-visitor-keys-1.3.0"
+            ];
+          })
           sources."ignore-4.0.6"
         ];
       })
       sources."eslint-scope-5.1.1"
-      (sources."eslint-utils-2.1.0" // {
-        dependencies = [
-          sources."eslint-visitor-keys-1.3.0"
-        ];
-      })
-      sources."eslint-visitor-keys-2.0.0"
+      sources."eslint-utils-3.0.0"
+      sources."eslint-visitor-keys-2.1.0"
       (sources."espree-7.3.1" // {
         dependencies = [
           sources."eslint-visitor-keys-1.3.0"
@@ -103978,9 +104690,9 @@ in
       sources."functional-red-black-tree-1.0.1"
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      (sources."globals-13.8.0" // {
+      (sources."globals-13.9.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
@@ -104001,17 +104713,14 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-binary-path-2.1.0"
-      sources."is-boolean-object-1.1.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-module-1.0.0"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
       sources."is-plain-obj-2.1.0"
       sources."is-reference-1.2.1"
-      sources."is-string-1.0.5"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
@@ -104025,7 +104734,7 @@ in
       sources."locate-path-6.0.0"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
+      sources."lodash.merge-4.6.2"
       sources."lodash.truncate-4.4.2"
       sources."log-symbols-4.0.0"
       sources."lru-cache-6.0.0"
@@ -104044,7 +104753,7 @@ in
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
-      (sources."mocha-8.3.2" // {
+      (sources."mocha-8.4.0" // {
         dependencies = [
           sources."argparse-2.0.1"
           (sources."debug-4.3.1" // {
@@ -104052,7 +104761,7 @@ in
               sources."ms-2.1.2"
             ];
           })
-          sources."escape-string-regexp-4.0.0"
+          sources."glob-7.1.6"
           sources."has-flag-4.0.0"
           sources."js-yaml-4.0.0"
           sources."ms-2.1.3"
@@ -104066,9 +104775,9 @@ in
       sources."node-fetch-2.6.1"
       sources."normalize-path-3.0.0"
       sources."nth-check-2.0.0"
+      sources."object-inspect-1.10.3"
       sources."once-1.4.0"
       sources."optionator-0.9.1"
-      sources."os-0.1.1"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
@@ -104085,15 +104794,16 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
       sources."pend-1.2.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."prelude-ls-1.2.1"
       sources."process-nextick-args-2.0.1"
       sources."progress-2.0.3"
       sources."pseudomap-1.0.2"
       sources."punycode-2.1.1"
+      sources."qs-6.10.1"
       sources."queue-microtask-1.2.3"
       sources."randombytes-2.1.0"
       sources."read-1.0.7"
@@ -104110,7 +104820,7 @@ in
       sources."resolve-from-4.0.0"
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
-      sources."rollup-2.45.2"
+      sources."rollup-2.50.5"
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.2.1"
       sources."semver-7.3.5"
@@ -104118,6 +104828,7 @@ in
       sources."setimmediate-1.0.5"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
+      sources."side-channel-1.0.4"
       sources."sigmund-1.0.1"
       sources."slash-3.0.0"
       (sources."slice-ansi-4.0.0" // {
@@ -104138,9 +104849,9 @@ in
       sources."strip-ansi-6.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-5.5.0"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -104154,23 +104865,24 @@ in
           sources."tslib-1.14.1"
         ];
       })
-      sources."tunnel-0.0.4"
+      sources."tunnel-0.0.6"
       sources."type-check-0.4.0"
       sources."type-fest-0.8.1"
-      sources."typed-rest-client-1.2.0"
-      sources."typescript-4.2.4"
+      sources."typed-rest-client-1.8.4"
+      sources."typescript-4.3.2"
       sources."typescript-formatter-7.2.2"
       sources."uc.micro-1.0.6"
-      sources."underscore-1.8.3"
+      sources."underscore-1.13.1"
       sources."unzipper-0.10.11"
       sources."uri-js-4.4.1"
       sources."url-join-1.1.0"
       sources."util-deprecate-1.0.2"
       sources."v8-compile-cache-2.3.0"
-      (sources."vsce-1.87.1" // {
+      (sources."vsce-1.91.0" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."commander-6.2.1"
+          sources."escape-string-regexp-1.0.5"
           sources."semver-5.7.1"
         ];
       })
@@ -104349,10 +105061,10 @@ in
   sass = nodeEnv.buildNodePackage {
     name = "sass";
     packageName = "sass";
-    version = "1.32.10";
+    version = "1.34.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/sass/-/sass-1.32.10.tgz";
-      sha512 = "Nx0pcWoonAkn7CRp0aE/hket1UP97GiR1IFw3kcjV3pnenhWgZEWUf0ZcfPOV2fK52fnOcK3JdC/YYZ9E47DTQ==";
+      url = "https://registry.npmjs.org/sass/-/sass-1.34.0.tgz";
+      sha512 = "rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==";
     };
     dependencies = [
       sources."anymatch-3.1.2"
@@ -104367,7 +105079,7 @@ in
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
       sources."normalize-path-3.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."readdirp-3.5.0"
       sources."to-regex-range-5.0.1"
     ];
@@ -104512,10 +105224,10 @@ in
   serverless = nodeEnv.buildNodePackage {
     name = "serverless";
     packageName = "serverless";
-    version = "2.35.0";
+    version = "2.43.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/serverless/-/serverless-2.35.0.tgz";
-      sha512 = "qtPKwZ3bSO/PB9sshKlTO0lgSvk8m0B21XQ3myxr27vVgyF5AL/NKnKDYkEOutFMAWXp5eJS/3OUqaO5uXlq+A==";
+      url = "https://registry.npmjs.org/serverless/-/serverless-2.43.1.tgz";
+      sha512 = "KasMG0u78+QBMecuT1Cit3PdHA1Wl6xyjrWgFEdtJnI5mBcMA9FZVMvdqRk1VjaQtnvNJfpbzfJa6Aj2rrqXWQ==";
     };
     dependencies = [
       sources."2-thenable-1.0.0"
@@ -104543,16 +105255,30 @@ in
         dependencies = [
           sources."@serverless/utils-1.2.0"
           sources."chalk-2.4.2"
+          sources."dotenv-8.6.0"
           sources."uuid-3.4.0"
         ];
       })
       sources."@serverless/component-metrics-1.0.8"
-      (sources."@serverless/components-3.8.3" // {
+      (sources."@serverless/components-3.10.1" // {
         dependencies = [
+          (sources."@serverless/utils-4.1.0" // {
+            dependencies = [
+              sources."js-yaml-4.1.0"
+            ];
+          })
           sources."ansi-regex-5.0.0"
-          sources."js-yaml-3.14.1"
+          sources."argparse-2.0.1"
+          sources."dotenv-8.6.0"
+          (sources."js-yaml-3.14.1" // {
+            dependencies = [
+              sources."argparse-1.0.10"
+            ];
+          })
+          sources."jwt-decode-3.1.2"
           sources."ramda-0.27.1"
           sources."strip-ansi-6.0.0"
+          sources."write-file-atomic-3.0.3"
         ];
       })
       (sources."@serverless/core-1.1.2" // {
@@ -104562,7 +105288,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."@serverless/enterprise-plugin-4.5.3"
+      sources."@serverless/dashboard-plugin-5.1.4"
       sources."@serverless/event-mocks-1.1.1"
       (sources."@serverless/platform-client-4.2.2" // {
         dependencies = [
@@ -104570,29 +105296,41 @@ in
           sources."js-yaml-3.14.1"
         ];
       })
-      (sources."@serverless/platform-client-china-2.1.10" // {
+      (sources."@serverless/platform-client-china-2.1.13" // {
         dependencies = [
+          sources."dotenv-8.6.0"
           sources."js-yaml-3.14.1"
         ];
       })
       sources."@serverless/template-1.1.4"
-      (sources."@serverless/utils-4.0.1" // {
+      (sources."@serverless/utils-5.2.0" // {
         dependencies = [
+          sources."get-stream-6.0.1"
           sources."jwt-decode-3.1.2"
           sources."write-file-atomic-3.0.3"
         ];
       })
-      sources."@serverless/utils-china-1.0.14"
+      sources."@serverless/utils-china-1.1.0"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tencent-sdk/capi-1.1.8"
+      sources."@tencent-sdk/cls-0.2.1"
+      (sources."@tencent-sdk/common-0.1.0" // {
+        dependencies = [
+          sources."type-fest-1.2.0"
+        ];
+      })
+      sources."@tencent-sdk/faas-0.1.5"
+      sources."@tokenizer/token-0.1.1"
       sources."@types/cacheable-request-6.0.1"
       sources."@types/caseless-0.12.2"
+      sources."@types/debug-4.1.5"
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
-      sources."@types/lodash-4.14.168"
+      sources."@types/lodash-4.14.170"
       sources."@types/long-4.0.1"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
+      sources."@types/readable-stream-2.3.10"
       sources."@types/request-2.48.5"
       sources."@types/request-promise-native-1.0.17"
       sources."@types/responselike-1.0.0"
@@ -104653,7 +105391,7 @@ in
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
-      (sources."aws-sdk-2.888.0" // {
+      (sources."aws-sdk-2.918.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -104722,7 +105460,7 @@ in
           sources."traverse-0.3.9"
         ];
       })
-      (sources."chalk-4.1.0" // {
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -104735,7 +105473,7 @@ in
       sources."child-process-ext-2.1.1"
       sources."chokidar-3.5.1"
       sources."chownr-1.1.4"
-      sources."ci-info-3.1.1"
+      sources."ci-info-3.2.0"
       sources."cli-boxes-2.2.1"
       (sources."cli-color-2.0.0" // {
         dependencies = [
@@ -104758,7 +105496,7 @@ in
       sources."component-bind-1.0.0"
       sources."component-emitter-1.3.0"
       sources."component-inherit-0.0.3"
-      sources."compress-commons-4.1.0"
+      sources."compress-commons-4.1.1"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
       (sources."content-disposition-0.5.3" // {
@@ -104781,18 +105519,33 @@ in
         ];
       })
       sources."dashdash-1.14.1"
-      sources."dayjs-1.10.4"
+      sources."dayjs-1.10.5"
       sources."debug-2.6.9"
-      sources."decode-uri-component-0.2.0"
-      sources."decompress-4.2.1"
+      (sources."decompress-4.2.1" // {
+        dependencies = [
+          (sources."make-dir-1.3.0" // {
+            dependencies = [
+              sources."pify-3.0.0"
+            ];
+          })
+        ];
+      })
       sources."decompress-response-3.3.0"
-      sources."decompress-tar-4.1.1"
+      (sources."decompress-tar-4.1.1" // {
+        dependencies = [
+          sources."file-type-5.2.0"
+        ];
+      })
       (sources."decompress-tarbz2-4.1.1" // {
         dependencies = [
           sources."file-type-6.2.0"
         ];
       })
-      sources."decompress-targz-4.1.1"
+      (sources."decompress-targz-4.1.1" // {
+        dependencies = [
+          sources."file-type-5.2.0"
+        ];
+      })
       (sources."decompress-unzip-4.0.1" // {
         dependencies = [
           sources."file-type-3.9.0"
@@ -104807,36 +105560,10 @@ in
       sources."denque-1.5.0"
       sources."detect-libc-1.0.3"
       sources."diagnostics-1.1.1"
-      sources."dijkstrajs-1.0.1"
+      sources."dijkstrajs-1.0.2"
       sources."dir-glob-3.0.1"
       sources."dot-qs-0.2.0"
-      sources."dotenv-8.2.0"
-      (sources."download-8.0.0" // {
-        dependencies = [
-          sources."@sindresorhus/is-0.7.0"
-          (sources."cacheable-request-2.1.4" // {
-            dependencies = [
-              sources."get-stream-3.0.0"
-            ];
-          })
-          sources."file-type-11.1.0"
-          (sources."got-8.3.2" // {
-            dependencies = [
-              sources."get-stream-3.0.0"
-              sources."pify-3.0.0"
-            ];
-          })
-          sources."http-cache-semantics-3.8.1"
-          sources."keyv-3.0.0"
-          sources."lowercase-keys-1.0.0"
-          sources."make-dir-2.1.0"
-          sources."normalize-url-2.0.1"
-          sources."p-cancelable-0.4.1"
-          sources."pify-4.0.1"
-          sources."semver-5.7.1"
-          sources."sort-keys-2.0.0"
-        ];
-      })
+      sources."dotenv-9.0.2"
       sources."duplexer3-0.1.4"
       sources."duplexify-4.1.1"
       sources."duration-0.2.2"
@@ -104844,7 +105571,7 @@ in
       sources."emoji-regex-8.0.0"
       sources."enabled-1.0.2"
       sources."end-of-stream-1.4.4"
-      (sources."engine.io-client-3.5.1" // {
+      (sources."engine.io-client-3.5.2" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -104884,25 +105611,18 @@ in
       sources."fd-slicer-1.1.0"
       sources."fecha-4.2.1"
       sources."figures-3.2.0"
-      sources."file-type-5.2.0"
+      sources."file-type-16.5.0"
       sources."file-uri-to-path-1.0.0"
       sources."filename-reserved-regex-2.0.0"
-      sources."filenamify-3.0.0"
-      sources."filesize-6.2.5"
+      sources."filenamify-4.3.0"
+      sources."filesize-6.3.0"
       sources."fill-range-7.0.1"
       sources."find-requires-1.0.0"
       sources."flat-5.0.2"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."forever-agent-0.6.1"
       sources."form-data-2.5.1"
       sources."formidable-1.2.2"
-      (sources."from2-2.3.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
-        ];
-      })
       sources."fs-constants-1.0.0"
       (sources."fs-extra-9.1.0" // {
         dependencies = [
@@ -104924,12 +105644,12 @@ in
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
       sources."github-from-package-0.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."globby-11.0.3"
       (sources."got-11.8.2" // {
         dependencies = [
-          sources."@sindresorhus/is-4.0.0"
+          sources."@sindresorhus/is-4.0.1"
           sources."@szmarczak/http-timer-4.0.5"
           sources."cacheable-request-7.0.1"
           sources."decompress-response-6.0.0"
@@ -104939,7 +105659,7 @@ in
           sources."keyv-4.0.3"
           sources."lowercase-keys-2.0.0"
           sources."mimic-response-3.1.0"
-          sources."p-cancelable-2.1.0"
+          sources."p-cancelable-2.1.1"
           sources."responselike-2.0.0"
         ];
       })
@@ -104954,8 +105674,6 @@ in
       })
       sources."has-cors-1.1.0"
       sources."has-flag-3.0.0"
-      sources."has-symbol-support-x-1.4.2"
-      sources."has-to-string-tag-x-1.4.1"
       sources."has-unicode-2.0.1"
       sources."http-cache-semantics-4.1.0"
       sources."http-signature-1.2.0"
@@ -104984,7 +105702,6 @@ in
         ];
       })
       sources."inquirer-autocomplete-prompt-1.3.0"
-      sources."into-stream-3.1.0"
       sources."is-arrayish-0.3.2"
       sources."is-binary-path-2.1.0"
       sources."is-docker-2.2.1"
@@ -104993,10 +105710,8 @@ in
       sources."is-glob-4.0.1"
       sources."is-natural-number-4.0.1"
       sources."is-number-7.0.0"
-      sources."is-object-1.0.2"
       sources."is-plain-obj-1.1.0"
       sources."is-promise-2.2.2"
-      sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
       sources."is-typedarray-1.0.0"
       sources."is-wsl-2.2.0"
@@ -105004,7 +105719,6 @@ in
       sources."isexe-2.0.0"
       sources."isomorphic-ws-4.0.1"
       sources."isstream-0.1.2"
-      sources."isurl-1.0.0"
       sources."jmespath-0.15.0"
       (sources."js-yaml-4.1.0" // {
         dependencies = [
@@ -105068,11 +105782,12 @@ in
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-6.0.0"
       sources."lru-queue-0.1.0"
-      (sources."make-dir-1.3.0" // {
+      (sources."make-dir-3.1.0" // {
         dependencies = [
-          sources."pify-3.0.0"
+          sources."semver-6.3.0"
         ];
       })
+      sources."media-typer-0.3.0"
       (sources."memoizee-0.4.15" // {
         dependencies = [
           sources."next-tick-1.1.0"
@@ -105091,18 +105806,17 @@ in
       sources."minipass-3.1.3"
       sources."minizlib-2.1.2"
       sources."mkdirp-0.5.5"
-      sources."moment-2.29.1"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."nan-2.14.2"
       sources."nanoid-2.1.11"
       sources."napi-build-utils-1.0.2"
       sources."native-promise-only-0.8.1"
-      sources."ncjsm-4.1.0"
+      sources."ncjsm-4.2.0"
       sources."nested-error-stacks-2.1.0"
       sources."next-tick-1.0.0"
       sources."nice-try-1.0.5"
-      (sources."node-abi-2.21.0" // {
+      (sources."node-abi-2.30.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
@@ -105111,12 +105825,12 @@ in
       sources."node-fetch-2.6.1"
       sources."noop-logger-0.1.1"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
-      sources."object-hash-2.1.1"
+      sources."object-hash-2.2.0"
       sources."once-1.4.0"
       sources."one-time-0.0.4"
       sources."onetime-5.1.2"
@@ -105125,11 +105839,9 @@ in
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
-      sources."p-event-2.3.1"
+      sources."p-event-4.2.0"
       sources."p-finally-1.0.0"
-      sources."p-is-promise-1.1.0"
-      sources."p-limit-3.1.0"
-      sources."p-timeout-2.0.1"
+      sources."p-timeout-3.2.0"
       (sources."package-json-6.5.0" // {
         dependencies = [
           sources."got-9.6.0"
@@ -105143,9 +105855,11 @@ in
       sources."path-key-2.0.1"
       sources."path-loader-1.0.10"
       sources."path-type-4.0.0"
+      sources."path2-0.1.0"
+      sources."peek-readable-3.1.3"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -105159,9 +105873,8 @@ in
       sources."printj-1.1.2"
       sources."process-nextick-args-2.0.1"
       sources."promise-queue-2.2.5"
-      (sources."protobufjs-6.10.2" // {
+      (sources."protobufjs-6.11.2" // {
         dependencies = [
-          sources."@types/node-13.13.50"
           sources."long-4.0.0"
         ];
       })
@@ -105170,13 +105883,13 @@ in
       sources."punycode-2.1.1"
       sources."qrcode-terminal-0.12.0"
       sources."qs-6.5.2"
-      sources."query-string-5.1.1"
       sources."querystring-0.2.1"
       sources."queue-microtask-1.2.3"
       sources."quick-lru-5.1.1"
       sources."ramda-0.26.1"
       sources."rc-1.2.8"
       sources."readable-stream-3.6.0"
+      sources."readable-web-to-node-stream-3.0.1"
       sources."readdir-glob-1.1.1"
       sources."readdirp-3.5.0"
       sources."registry-auth-token-4.2.1"
@@ -105212,7 +105925,7 @@ in
       sources."signal-exit-3.0.3"
       sources."simple-concat-1.0.1"
       sources."simple-get-2.8.1"
-      (sources."simple-git-2.38.0" // {
+      (sources."simple-git-2.39.0" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -105242,7 +105955,6 @@ in
       sources."stealthy-require-1.1.1"
       sources."stream-promise-3.2.0"
       sources."stream-shift-1.0.1"
-      sources."strict-uri-encode-1.1.0"
       (sources."string-width-1.0.2" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
@@ -105254,6 +105966,7 @@ in
       sources."strip-dirs-2.1.0"
       sources."strip-json-comments-2.0.1"
       sources."strip-outer-1.0.1"
+      sources."strtok3-6.0.8"
       (sources."superagent-3.8.3" // {
         dependencies = [
           sources."debug-3.2.7"
@@ -105304,16 +106017,17 @@ in
           sources."string_decoder-1.1.1"
         ];
       })
+      sources."tencent-serverless-http-1.3.2"
       sources."text-hex-1.0.0"
       sources."throat-5.0.0"
       sources."through-2.3.8"
-      sources."timed-out-4.0.1"
       sources."timers-ext-0.1.7"
       sources."tmp-0.0.33"
       sources."to-array-0.1.4"
       sources."to-buffer-1.1.1"
       sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
+      sources."token-types-2.1.1"
       sources."tough-cookie-2.5.0"
       sources."traverse-0.6.6"
       sources."trim-repeated-1.0.0"
@@ -105323,6 +106037,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."type-2.5.0"
       sources."type-fest-0.21.3"
+      sources."type-is-1.6.18"
       sources."typedarray-to-buffer-3.1.5"
       sources."unbzip2-stream-1.4.3"
       sources."universalify-0.1.2"
@@ -105335,7 +106050,6 @@ in
         ];
       })
       sources."url-parse-lax-3.0.0"
-      sources."url-to-options-1.0.1"
       sources."urlencode-1.1.0"
       sources."util-deprecate-1.0.2"
       sources."uuid-8.3.2"
@@ -105372,17 +106086,16 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.3"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
-      sources."xmlhttprequest-ssl-1.5.5"
+      sources."xmlhttprequest-ssl-1.6.3"
       sources."xtend-4.0.2"
       sources."yallist-4.0.0"
       sources."yaml-ast-parser-0.0.43"
       sources."yamljs-0.3.0"
       sources."yauzl-2.10.0"
       sources."yeast-0.1.2"
-      sources."yocto-queue-0.1.0"
       sources."zip-stream-4.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -105478,7 +106191,7 @@ in
       sources."finalhandler-1.1.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."from-0.1.7"
       sources."getpass-0.1.7"
@@ -105540,7 +106253,7 @@ in
       sources."path-to-regexp-0.1.7"
       sources."pause-stream-0.0.11"
       sources."performance-now-2.1.0"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
       sources."qs-6.7.0"
@@ -106022,10 +106735,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.551.0";
+    version = "1.619.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.551.0.tgz";
-      sha512 = "Z2fh6n/EGO/2ILLOeFvJpWAHSZjOtKDACtfK+Xm/ob+SoAOjEPGdGlFt0RmCUV/VGxfP1aRZ8zkxnj573OmPPA==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.619.0.tgz";
+      sha512 = "ZQFDU+WniTjD6Z1vqKQcBq50jJ9DWSBBCg0PNW54MZbK5oO+L2rHtbpaD3NI3lQI+AFCe64kdzkWMgsEemkFHQ==";
     };
     dependencies = [
       sources."@arcanis/slice-ansi-1.0.2"
@@ -106035,11 +106748,11 @@ in
       sources."@nodelib/fs.walk-1.2.6"
       sources."@octetstream/promisify-2.0.2"
       sources."@open-policy-agent/opa-wasm-1.2.0"
-      sources."@sindresorhus/is-2.1.1"
+      sources."@sindresorhus/is-4.0.1"
       sources."@snyk/cli-interface-2.11.0"
       sources."@snyk/cloud-config-parser-1.9.2"
       sources."@snyk/cocoapods-lockfile-parser-3.6.2"
-      (sources."@snyk/code-client-3.4.1" // {
+      (sources."@snyk/code-client-3.7.0" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
@@ -106050,31 +106763,36 @@ in
           sources."semver-7.3.5"
         ];
       })
-      sources."@snyk/docker-registry-v2-client-1.13.9"
+      sources."@snyk/docker-registry-v2-client-2.1.3"
       sources."@snyk/fast-glob-3.2.6-patch"
-      (sources."@snyk/fix-1.547.0" // {
+      (sources."@snyk/fix-1.601.0" // {
         dependencies = [
           sources."chalk-4.1.0"
           sources."strip-ansi-6.0.0"
         ];
       })
+      (sources."@snyk/fix-pipenv-pipfile-0.3.5" // {
+        dependencies = [
+          sources."debug-4.3.1"
+        ];
+      })
       sources."@snyk/gemfile-1.2.0"
       sources."@snyk/glob-parent-5.1.2-patch.1"
       sources."@snyk/graphlib-2.1.9-patch.3"
       (sources."@snyk/inquirer-7.3.3-patch" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."strip-ansi-6.0.0"
         ];
       })
-      (sources."@snyk/java-call-graph-builder-1.20.0" // {
+      (sources."@snyk/java-call-graph-builder-1.23.0" // {
         dependencies = [
           sources."rimraf-3.0.2"
           sources."tmp-0.2.1"
         ];
       })
-      (sources."@snyk/mix-parser-1.3.1" // {
+      (sources."@snyk/mix-parser-1.3.2" // {
         dependencies = [
           sources."tslib-2.2.0"
         ];
@@ -106085,18 +106803,17 @@ in
           sources."tslib-2.2.0"
         ];
       })
-      (sources."@snyk/snyk-docker-pull-3.2.3" // {
+      (sources."@snyk/snyk-docker-pull-3.2.5" // {
         dependencies = [
           sources."tmp-0.1.0"
         ];
       })
-      (sources."@snyk/snyk-hex-plugin-1.1.2" // {
+      (sources."@snyk/snyk-hex-plugin-1.1.4" // {
         dependencies = [
           sources."tslib-2.2.0"
         ];
       })
       sources."@szmarczak/http-timer-4.0.5"
-      sources."@types/braces-3.0.0"
       sources."@types/cacheable-request-6.0.1"
       sources."@types/debug-4.1.5"
       sources."@types/emscripten-1.39.4"
@@ -106105,23 +106822,22 @@ in
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/js-yaml-3.12.6"
       sources."@types/keyv-3.1.1"
-      sources."@types/lodash-4.14.168"
+      sources."@types/lodash-4.14.170"
       sources."@types/lodash.chunk-4.2.6"
       sources."@types/lodash.omit-4.5.6"
       sources."@types/lodash.union-4.6.6"
-      sources."@types/micromatch-4.0.1"
-      sources."@types/node-14.14.41"
+      sources."@types/minimatch-3.0.4"
+      sources."@types/multimatch-4.0.0"
+      sources."@types/node-13.13.52"
       sources."@types/responselike-1.0.0"
       sources."@types/sarif-2.1.3"
-      sources."@types/semver-7.3.4"
+      sources."@types/semver-7.3.6"
       sources."@types/treeify-1.0.0"
       sources."@types/uuid-8.3.0"
       (sources."@yarnpkg/core-2.4.0" // {
         dependencies = [
-          sources."@sindresorhus/is-4.0.0"
           sources."chalk-3.0.0"
           sources."cross-spawn-7.0.3"
-          sources."got-11.8.2"
           sources."mkdirp-0.5.5"
           sources."path-key-3.1.1"
           sources."semver-7.3.5"
@@ -106135,11 +106851,7 @@ in
       sources."@yarnpkg/libzip-2.2.1"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."@yarnpkg/parsers-2.3.0"
-      (sources."@yarnpkg/pnp-2.3.2" // {
-        dependencies = [
-          sources."@types/node-13.13.50"
-        ];
-      })
+      sources."@yarnpkg/pnp-2.3.2"
       (sources."@yarnpkg/shell-2.4.1" // {
         dependencies = [
           sources."cross-spawn-7.0.3"
@@ -106169,7 +106881,9 @@ in
           sources."sprintf-js-1.0.3"
         ];
       })
+      sources."array-differ-3.0.0"
       sources."array-union-2.1.0"
+      sources."arrify-2.0.1"
       sources."asap-2.0.6"
       sources."asn1-0.2.4"
       sources."async-3.2.0"
@@ -106179,11 +106893,15 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."binjumper-0.1.4"
       sources."bl-4.1.0"
-      sources."boolean-3.0.3"
-      (sources."boxen-4.2.0" // {
+      sources."boolean-3.1.0"
+      sources."bottleneck-2.19.5"
+      (sources."boxen-5.0.1" // {
         dependencies = [
-          sources."chalk-3.0.0"
-          sources."type-fest-0.8.1"
+          sources."camelcase-6.2.0"
+          sources."chalk-4.1.1"
+          sources."strip-ansi-6.0.0"
+          sources."type-fest-0.20.2"
+          sources."wrap-ansi-7.0.0"
         ];
       })
       sources."brace-expansion-1.1.11"
@@ -106210,6 +106928,7 @@ in
       })
       sources."chardet-0.7.0"
       sources."child-process-1.0.2"
+      sources."child_process-1.0.2"
       sources."chownr-2.0.0"
       sources."ci-info-2.0.0"
       sources."clean-stack-2.2.0"
@@ -106225,7 +106944,7 @@ in
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
-      sources."core-js-3.10.1"
+      sources."core-js-3.13.1"
       sources."core-util-is-1.0.2"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
@@ -106243,11 +106962,11 @@ in
       sources."defaults-1.0.3"
       sources."defer-to-connect-2.0.1"
       sources."define-properties-1.1.3"
-      sources."detect-node-2.0.5"
+      sources."detect-node-2.1.0"
       sources."diff-4.0.2"
       sources."dir-glob-3.0.1"
       sources."docker-modem-2.1.3"
-      sources."dockerfile-ast-0.2.0"
+      sources."dockerfile-ast-0.2.1"
       sources."dot-prop-5.3.0"
       sources."dotnet-deps-parser-5.0.0"
       sources."duplexer3-0.1.4"
@@ -106278,24 +106997,24 @@ in
       sources."fastq-1.11.0"
       sources."figures-3.2.0"
       sources."fill-range-7.0.1"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."fs-constants-1.0.0"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       (sources."global-agent-2.2.0" // {
         dependencies = [
           sources."semver-7.3.5"
         ];
       })
-      sources."global-dirs-2.1.0"
+      sources."global-dirs-3.0.0"
       sources."globalthis-1.0.2"
       sources."globby-11.0.3"
-      sources."got-11.4.0"
+      sources."got-11.8.2"
       sources."graceful-fs-4.2.6"
       sources."grapheme-splitter-1.0.4"
       sources."gunzip-maybe-1.4.2"
@@ -106303,11 +107022,6 @@ in
       sources."has-flag-4.0.0"
       sources."has-symbols-1.0.2"
       sources."has-yarn-2.1.0"
-      (sources."hcl-to-json-0.1.1" // {
-        dependencies = [
-          sources."debug-3.2.7"
-        ];
-      })
       sources."hosted-git-info-3.0.8"
       sources."http-cache-semantics-4.1.0"
       sources."http2-wrapper-1.0.3"
@@ -106320,7 +107034,7 @@ in
       sources."indent-string-4.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."ini-1.3.7"
+      sources."ini-2.0.0"
       sources."is-3.3.0"
       sources."is-callable-1.2.3"
       sources."is-ci-2.0.0"
@@ -106330,9 +107044,9 @@ in
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-gzip-1.0.0"
-      sources."is-installed-globally-0.3.2"
+      sources."is-installed-globally-0.4.0"
       sources."is-interactive-1.0.0"
-      sources."is-npm-4.0.0"
+      sources."is-npm-5.0.0"
       sources."is-number-7.0.0"
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
@@ -106367,7 +107081,6 @@ in
       sources."lodash.clonedeep-4.5.0"
       sources."lodash.constant-3.0.0"
       sources."lodash.defaults-4.2.0"
-      sources."lodash.endswith-4.2.1"
       sources."lodash.filter-4.6.0"
       sources."lodash.find-4.6.0"
       sources."lodash.findindex-4.6.0"
@@ -106408,7 +107121,7 @@ in
       sources."lodash.values-4.3.0"
       (sources."log-symbols-4.1.0" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
         ];
       })
       sources."lowercase-keys-2.0.0"
@@ -106430,6 +107143,7 @@ in
       sources."minizlib-2.1.2"
       sources."mkdirp-1.0.4"
       sources."ms-2.1.2"
+      sources."multimatch-5.0.0"
       sources."mute-stream-0.0.8"
       (sources."needle-2.6.0" // {
         dependencies = [
@@ -106438,23 +107152,23 @@ in
       })
       sources."nice-try-1.0.5"
       sources."node.extend-2.0.2"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-run-path-2.0.2"
-      sources."object-hash-2.1.1"
+      sources."object-hash-2.2.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
       sources."open-7.4.2"
-      (sources."ora-5.3.0" // {
+      (sources."ora-5.4.0" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."strip-ansi-6.0.0"
         ];
       })
       sources."os-name-3.1.0"
       sources."os-tmpdir-1.0.2"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-finally-1.0.0"
       sources."p-limit-2.3.0"
       sources."p-map-4.0.0"
@@ -106485,7 +107199,7 @@ in
       sources."path-key-2.0.1"
       sources."path-type-4.0.0"
       sources."peek-stream-1.1.3"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pluralize-7.0.0"
       sources."prepend-http-2.0.0"
       sources."pretty-bytes-5.6.0"
@@ -106508,7 +107222,11 @@ in
       sources."queue-6.0.2"
       sources."queue-microtask-1.2.3"
       sources."quick-lru-5.1.1"
-      sources."rc-1.2.8"
+      (sources."rc-1.2.8" // {
+        dependencies = [
+          sources."ini-1.3.8"
+        ];
+      })
       sources."readable-stream-3.6.0"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
@@ -106540,16 +107258,16 @@ in
       sources."snyk-config-4.0.0"
       (sources."snyk-cpp-plugin-2.2.1" // {
         dependencies = [
-          sources."chalk-4.1.0"
+          sources."chalk-4.1.1"
           sources."tslib-2.2.0"
         ];
       })
-      (sources."snyk-docker-plugin-4.19.3" // {
+      (sources."snyk-docker-plugin-4.20.8" // {
         dependencies = [
           sources."p-map-2.1.0"
           sources."rimraf-3.0.2"
           sources."semver-7.3.5"
-          sources."snyk-nodejs-lockfile-parser-1.30.2"
+          sources."snyk-nodejs-lockfile-parser-1.34.0"
           sources."tmp-0.2.1"
           sources."uuid-8.3.2"
         ];
@@ -106561,7 +107279,7 @@ in
           sources."tmp-0.2.1"
         ];
       })
-      (sources."snyk-gradle-plugin-3.14.0" // {
+      (sources."snyk-gradle-plugin-3.16.0" // {
         dependencies = [
           sources."chalk-3.0.0"
           sources."rimraf-3.0.2"
@@ -106570,9 +107288,9 @@ in
         ];
       })
       sources."snyk-module-3.1.0"
-      (sources."snyk-mvn-plugin-2.25.3" // {
+      (sources."snyk-mvn-plugin-2.26.0" // {
         dependencies = [
-          (sources."@snyk/java-call-graph-builder-1.19.1" // {
+          (sources."@snyk/java-call-graph-builder-1.21.0" // {
             dependencies = [
               sources."tmp-0.2.1"
             ];
@@ -106586,13 +107304,15 @@ in
           sources."tslib-1.11.1"
         ];
       })
-      (sources."snyk-nodejs-lockfile-parser-1.32.0" // {
+      (sources."snyk-nodejs-lockfile-parser-1.35.0" // {
         dependencies = [
+          sources."argparse-2.0.1"
+          sources."js-yaml-4.1.0"
           sources."p-map-2.1.0"
           sources."uuid-8.3.2"
         ];
       })
-      (sources."snyk-nuget-plugin-1.21.0" // {
+      (sources."snyk-nuget-plugin-1.21.1" // {
         dependencies = [
           sources."jszip-3.4.0"
           sources."pako-1.0.11"
@@ -106619,7 +107339,7 @@ in
           sources."yallist-3.1.1"
         ];
       })
-      sources."snyk-python-plugin-1.19.8"
+      sources."snyk-python-plugin-1.19.9"
       sources."snyk-resolve-1.1.0"
       (sources."snyk-resolve-deps-4.7.2" // {
         dependencies = [
@@ -106679,7 +107399,6 @@ in
           sources."temp-dir-1.0.0"
         ];
       })
-      sources."term-size-2.2.1"
       sources."then-fs-2.0.0"
       sources."through-2.3.8"
       (sources."through2-2.0.5" // {
@@ -106702,9 +107421,10 @@ in
       sources."typedarray-to-buffer-3.1.5"
       sources."unique-string-2.0.0"
       sources."upath-2.0.1"
-      (sources."update-notifier-4.1.3" // {
+      (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."chalk-3.0.0"
+          sources."chalk-4.1.1"
+          sources."semver-7.3.5"
         ];
       })
       sources."url-parse-lax-3.0.0"
@@ -106750,16 +107470,16 @@ in
   "socket.io" = nodeEnv.buildNodePackage {
     name = "socket.io";
     packageName = "socket.io";
-    version = "4.0.1";
+    version = "4.1.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/socket.io/-/socket.io-4.0.1.tgz";
-      sha512 = "g8eZB9lV0f4X4gndG0k7YZAywOg1VxYgCUspS4V+sDqsgI/duqd0AW84pKkbGj/wQwxrqrEq+VZrspRfTbHTAQ==";
+      url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.2.tgz";
+      sha512 = "xK0SD1C7hFrh9+bYoYCdVt+ncixkSLKtNLCax5aEy1o3r5PaO5yQhVb97exIe67cE7lAK+EpyMytXWTWmyZY8w==";
     };
     dependencies = [
       sources."@types/component-emitter-1.2.10"
       sources."@types/cookie-0.4.0"
       sources."@types/cors-2.8.10"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."accepts-1.3.7"
       sources."base64-arraybuffer-0.1.4"
       sources."base64id-2.0.0"
@@ -106767,17 +107487,17 @@ in
       sources."cookie-0.4.1"
       sources."cors-2.8.5"
       sources."debug-4.3.2"
-      sources."engine.io-5.0.0"
+      sources."engine.io-5.1.1"
       sources."engine.io-parser-4.0.2"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."ms-2.1.2"
       sources."negotiator-0.6.2"
       sources."object-assign-4.1.1"
-      sources."socket.io-adapter-2.2.0"
+      sources."socket.io-adapter-2.3.1"
       sources."socket.io-parser-4.0.4"
       sources."vary-1.1.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -106856,7 +107576,7 @@ in
       sources."ini-1.3.8"
       sources."is-arrayish-0.2.1"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-installed-globally-0.1.0"
       sources."is-npm-1.0.0"
@@ -106901,7 +107621,7 @@ in
       sources."path-exists-3.0.0"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-3.0.0"
       sources."pify-3.0.0"
       sources."prepend-http-1.0.4"
@@ -106926,7 +107646,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."speedtest-net-1.6.2"
       sources."string-width-2.1.1"
       sources."strip-ansi-4.0.0"
@@ -106987,12 +107707,10 @@ in
       sources."ansi-styles-2.2.1"
       sources."anymatch-1.3.2"
       sources."append-batch-0.0.2"
-      sources."argparse-1.0.10"
       sources."arr-diff-2.0.0"
       sources."arr-flatten-1.1.0"
       sources."arr-union-3.1.0"
       sources."array-differ-3.0.0"
-      sources."array-filter-1.0.0"
       sources."array-union-1.0.2"
       sources."array-uniq-1.0.3"
       sources."array-unique-0.2.1"
@@ -107000,7 +107718,7 @@ in
       sources."assign-symbols-1.0.0"
       (sources."async-append-only-log-3.0.8" // {
         dependencies = [
-          sources."push-stream-11.0.0"
+          sources."push-stream-11.0.1"
         ];
       })
       sources."async-each-1.0.3"
@@ -107008,10 +107726,9 @@ in
       sources."async-write-2.1.0"
       sources."atob-2.1.2"
       sources."atomic-file-1.1.5"
-      sources."atomically-1.7.0"
-      sources."atomically-universal-0.1.1"
+      sources."atomic-file-rw-0.2.2"
       sources."attach-ware-1.1.1"
-      sources."available-typed-arrays-1.0.2"
+      sources."available-typed-arrays-1.0.4"
       sources."bail-1.0.5"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
@@ -107027,7 +107744,7 @@ in
       sources."binary-search-1.3.6"
       sources."binary-search-bounds-2.0.5"
       sources."bindings-1.5.0"
-      sources."bipf-1.5.0"
+      sources."bipf-1.5.1"
       sources."blake2s-1.1.0"
       sources."brace-expansion-1.1.11"
       sources."braces-1.8.5"
@@ -107101,6 +107818,7 @@ in
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
       sources."cpu-percentage-1.0.3"
+      sources."crc-3.6.0"
       sources."cross-spawn-6.0.5"
       sources."debug-4.3.2"
       sources."decode-uri-component-0.2.0"
@@ -107134,9 +107852,9 @@ in
       sources."end-of-stream-1.4.4"
       sources."epidemic-broadcast-trees-7.0.0"
       sources."errno-0.1.8"
-      (sources."es-abstract-1.18.0" // {
+      (sources."es-abstract-1.18.3" // {
         dependencies = [
-          sources."object-inspect-1.10.2"
+          sources."object-inspect-1.10.3"
         ];
       })
       (sources."es-get-iterator-1.1.2" // {
@@ -107146,8 +107864,6 @@ in
       })
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
-      sources."esprima-4.0.1"
-      sources."events-to-array-1.1.2"
       (sources."execa-4.1.0" // {
         dependencies = [
           sources."cross-spawn-7.0.3"
@@ -107274,9 +107990,9 @@ in
       sources."is-alphabetical-1.0.4"
       sources."is-alphanumerical-1.0.4"
       sources."is-arguments-1.1.0"
-      sources."is-bigint-1.0.1"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-canonical-base64-1.1.1"
@@ -107285,7 +108001,7 @@ in
           sources."kind-of-6.0.3"
         ];
       })
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-decimal-1.0.4"
       (sources."is-descriptor-1.0.2" // {
         dependencies = [
@@ -107302,7 +108018,7 @@ in
       sources."is-map-2.0.2"
       sources."is-negative-zero-2.0.1"
       sources."is-number-2.1.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-options-1.0.1"
       (sources."is-plain-object-2.0.4" // {
         dependencies = [
@@ -107311,11 +108027,11 @@ in
       })
       sources."is-posix-bracket-0.1.1"
       sources."is-primitive-2.0.0"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-set-2.0.2"
       sources."is-stream-2.0.0"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-typed-array-1.1.5"
       sources."is-typedarray-1.0.0"
       sources."is-valid-domain-0.0.19"
@@ -107325,14 +108041,12 @@ in
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-2.1.0"
-      (sources."jitdb-3.0.3" // {
+      (sources."jitdb-3.1.4" // {
         dependencies = [
           sources."mkdirp-1.0.4"
-          sources."push-stream-11.0.0"
-          sources."typedarray-to-buffer-4.0.0"
+          sources."push-stream-11.0.1"
         ];
       })
-      sources."js-yaml-3.14.1"
       sources."jsesc-3.0.2"
       sources."json-buffer-2.0.11"
       sources."kind-of-3.2.2"
@@ -107346,7 +108060,11 @@ in
           sources."readable-stream-3.6.0"
         ];
       })
-      sources."level-js-4.0.2"
+      (sources."level-js-4.0.2" // {
+        dependencies = [
+          sources."typedarray-to-buffer-3.1.5"
+        ];
+      })
       sources."level-packager-5.1.1"
       sources."level-post-1.0.7"
       sources."level-supports-1.0.1"
@@ -107401,11 +108119,11 @@ in
           sources."arrify-2.0.1"
         ];
       })
-      sources."multiserver-3.7.0"
+      sources."multiserver-3.7.2"
       sources."multiserver-address-1.0.1"
       sources."multiserver-scopes-1.0.0"
       sources."mutexify-1.3.1"
-      sources."muxrpc-6.5.2"
+      sources."muxrpc-6.5.3"
       sources."muxrpc-usage-2.1.0"
       sources."muxrpc-validation-3.0.2"
       sources."muxrpcli-3.1.2"
@@ -107475,7 +108193,6 @@ in
       sources."once-1.4.0"
       sources."onetime-1.1.0"
       sources."opencollective-postinstall-2.0.3"
-      sources."options-0.0.6"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
@@ -107483,7 +108200,7 @@ in
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
-      sources."packet-stream-2.0.5"
+      sources."packet-stream-2.0.6"
       sources."packet-stream-codec-1.1.3"
       sources."parse-entities-1.2.2"
       sources."parse-glob-3.0.4"
@@ -107491,7 +108208,7 @@ in
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -107499,7 +108216,7 @@ in
       sources."polyraf-1.1.0"
       sources."posix-character-classes-0.1.1"
       sources."preserve-0.2.0"
-      sources."prettier-2.2.1"
+      sources."prettier-2.3.0"
       (sources."pretty-quick-3.1.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -107568,6 +108285,7 @@ in
       })
       sources."pull-traverse-1.0.3"
       sources."pull-utf8-decoder-1.0.2"
+      sources."pull-websocket-3.4.2"
       (sources."pull-window-2.1.4" // {
         dependencies = [
           sources."looper-2.0.0"
@@ -107575,11 +108293,14 @@ in
       })
       sources."pull-write-1.1.4"
       sources."pull-write-file-0.2.4"
-      sources."pull-ws-3.3.2"
       sources."pump-3.0.0"
       sources."punycode-1.4.1"
       sources."push-stream-10.1.2"
-      sources."push-stream-to-pull-stream-1.0.3"
+      (sources."push-stream-to-pull-stream-1.0.4" // {
+        dependencies = [
+          sources."push-stream-11.0.1"
+        ];
+      })
       sources."quicktask-1.0.1"
       sources."railroad-diagrams-1.0.0"
       sources."randexp-0.4.6"
@@ -107683,7 +108404,7 @@ in
       sources."right-pad-1.0.1"
       (sources."rimraf-2.7.1" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
         ];
       })
       sources."rng-0.2.2"
@@ -107706,7 +108427,7 @@ in
       sources."shellsubstitute-1.2.0"
       (sources."side-channel-1.0.4" // {
         dependencies = [
-          sources."object-inspect-1.10.2"
+          sources."object-inspect-1.10.3"
         ];
       })
       sources."signal-exit-3.0.3"
@@ -107753,13 +108474,12 @@ in
       sources."source-map-url-0.4.1"
       sources."split-buffer-1.0.0"
       sources."split-string-3.1.0"
-      sources."sprintf-js-1.0.3"
       sources."ssb-blobs-1.2.2"
       sources."ssb-caps-1.1.0"
       sources."ssb-client-4.9.0"
       sources."ssb-config-3.4.5"
       sources."ssb-db-19.2.0"
-      (sources."ssb-db2-2.0.2" // {
+      (sources."ssb-db2-2.1.2" // {
         dependencies = [
           sources."abstract-leveldown-6.2.3"
           (sources."flumecodec-0.0.1" // {
@@ -107767,18 +108487,17 @@ in
               sources."level-codec-6.2.0"
             ];
           })
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."level-6.0.1"
           sources."level-js-5.0.2"
           sources."mkdirp-1.0.4"
-          sources."push-stream-11.0.0"
+          sources."push-stream-11.0.1"
           sources."rimraf-3.0.2"
           (sources."ssb-keys-8.1.0" // {
             dependencies = [
               sources."mkdirp-0.5.5"
             ];
           })
-          sources."typedarray-to-buffer-4.0.0"
         ];
       })
       sources."ssb-ebt-5.6.7"
@@ -107813,7 +108532,7 @@ in
       sources."ssb-plugins-1.0.0"
       sources."ssb-query-2.4.5"
       sources."ssb-ref-2.14.3"
-      sources."ssb-replicate-1.3.2"
+      sources."ssb-replicate-1.3.3"
       sources."ssb-sort-1.1.3"
       sources."ssb-unix-socket-1.0.0"
       (sources."ssb-validate-4.1.4" // {
@@ -107856,11 +108575,9 @@ in
       sources."strip-final-newline-2.0.0"
       sources."strip-json-comments-2.0.1"
       sources."supports-color-2.0.0"
-      sources."tap-bail-1.0.0"
-      sources."tap-parser-5.4.0"
       (sources."tape-4.13.3" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."is-regex-1.0.5"
         ];
       })
@@ -107886,11 +108603,10 @@ in
       sources."tweetnacl-0.14.5"
       sources."tweetnacl-auth-0.3.1"
       sources."typedarray-0.0.6"
-      sources."typedarray-to-buffer-3.1.5"
+      sources."typedarray-to-buffer-4.0.0"
       sources."typedfastbitset-0.2.1"
       sources."typewiselite-1.0.0"
       sources."uint48be-2.0.1"
-      sources."ultron-1.0.2"
       sources."unbox-primitive-1.0.1"
       sources."unherit-1.1.3"
       sources."unified-2.1.4"
@@ -107929,7 +108645,7 @@ in
       sources."word-wrap-1.2.3"
       sources."wrap-fn-0.1.5"
       sources."wrappy-1.0.2"
-      sources."ws-1.1.5"
+      sources."ws-7.4.6"
       sources."xtend-4.0.2"
       sources."zerr-1.0.4"
     ];
@@ -108029,7 +108745,7 @@ in
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
-      (sources."aws-sdk-2.888.0" // {
+      (sources."aws-sdk-2.918.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -108168,14 +108884,14 @@ in
         dependencies = [
           sources."cookie-0.4.1"
           sources."debug-4.1.1"
-          sources."ws-7.4.5"
+          sources."ws-7.4.6"
         ];
       })
-      (sources."engine.io-client-3.5.1" // {
+      (sources."engine.io-client-3.5.2" // {
         dependencies = [
           sources."debug-3.1.0"
           sources."ms-2.0.0"
-          sources."ws-7.4.5"
+          sources."ws-7.4.6"
         ];
       })
       sources."engine.io-parser-2.2.1"
@@ -108194,7 +108910,7 @@ in
       })
       (sources."express-4.17.1" // {
         dependencies = [
-          sources."proxy-addr-2.0.6"
+          sources."proxy-addr-2.0.7"
           sources."qs-6.7.0"
         ];
       })
@@ -108213,11 +108929,11 @@ in
       sources."fd-slicer-1.1.0"
       sources."finalhandler-1.1.2"
       sources."find-up-3.0.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."forever-agent-0.6.1"
       sources."form-data-2.1.4"
       sources."formidable-1.2.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
@@ -108281,7 +108997,7 @@ in
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       (sources."is-expression-3.0.0" // {
         dependencies = [
           sources."acorn-4.0.13"
@@ -108292,7 +109008,7 @@ in
       sources."is-my-json-valid-2.20.5"
       sources."is-promise-2.2.2"
       sources."is-property-1.0.2"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-stream-1.1.0"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
@@ -108414,7 +109130,7 @@ in
       sources."oauth-sign-0.8.2"
       sources."object-assign-4.1.1"
       sources."object-hash-0.3.0"
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
@@ -108445,7 +109161,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
       sources."path-loader-1.0.10"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."path-type-1.1.0"
       sources."pause-0.0.1"
@@ -108463,6 +109179,7 @@ in
       sources."protobufjs-3.8.2"
       (sources."proxy-addr-1.1.5" // {
         dependencies = [
+          sources."forwarded-0.1.2"
           sources."ipaddr.js-1.4.0"
         ];
       })
@@ -108584,7 +109301,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-1.0.1"
       sources."sprintf-js-1.0.3"
       (sources."sshpk-1.16.1" // {
@@ -108649,7 +109366,7 @@ in
       sources."switchback-2.0.5"
       (sources."temp-0.8.4" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
           sources."rimraf-2.6.3"
         ];
       })
@@ -108749,7 +109466,7 @@ in
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
       sources."xmldom-0.1.31"
-      sources."xmlhttprequest-ssl-1.5.5"
+      sources."xmlhttprequest-ssl-1.6.3"
       sources."xpath-0.0.5"
       sources."xpath.js-1.1.0"
       sources."xtend-4.0.2"
@@ -108799,38 +109516,38 @@ in
   stylelint = nodeEnv.buildNodePackage {
     name = "stylelint";
     packageName = "stylelint";
-    version = "13.12.0";
+    version = "13.13.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/stylelint/-/stylelint-13.12.0.tgz";
-      sha512 = "P8O1xDy41B7O7iXaSlW+UuFbE5+ZWQDb61ndGDxKIt36fMH50DtlQTbwLpFLf8DikceTAb3r6nPrRv30wBlzXw==";
+      url = "https://registry.npmjs.org/stylelint/-/stylelint-13.13.1.tgz";
+      sha512 = "Mv+BQr5XTUrKqAXmpqm6Ddli6Ief+AiPZkRsIrAoUKFuq/ElkUh9ZMYxXD0iQNZ5ADghZKLOWz1h7hTClB7zgQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/compat-data-7.13.15"
-      sources."@babel/core-7.13.15"
-      sources."@babel/generator-7.13.9"
-      sources."@babel/helper-compilation-targets-7.13.13"
-      sources."@babel/helper-function-name-7.12.13"
+      sources."@babel/compat-data-7.14.4"
+      sources."@babel/core-7.14.3"
+      sources."@babel/generator-7.14.3"
+      sources."@babel/helper-compilation-targets-7.14.4"
+      sources."@babel/helper-function-name-7.14.2"
       sources."@babel/helper-get-function-arity-7.12.13"
       sources."@babel/helper-member-expression-to-functions-7.13.12"
       sources."@babel/helper-module-imports-7.13.12"
-      sources."@babel/helper-module-transforms-7.13.14"
+      sources."@babel/helper-module-transforms-7.14.2"
       sources."@babel/helper-optimise-call-expression-7.12.13"
-      sources."@babel/helper-replace-supers-7.13.12"
+      sources."@babel/helper-replace-supers-7.14.4"
       sources."@babel/helper-simple-access-7.13.12"
       sources."@babel/helper-split-export-declaration-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
       sources."@babel/helper-validator-option-7.12.17"
-      sources."@babel/helpers-7.13.10"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helpers-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.13.15"
+      sources."@babel/parser-7.14.4"
       sources."@babel/template-7.12.13"
-      sources."@babel/traverse-7.13.15"
-      sources."@babel/types-7.13.14"
+      sources."@babel/traverse-7.14.2"
+      sources."@babel/types-7.14.4"
       sources."@nodelib/fs.scandir-2.1.4"
       sources."@nodelib/fs.stat-2.0.4"
       sources."@nodelib/fs.walk-1.2.6"
@@ -108841,7 +109558,7 @@ in
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/parse-json-4.0.0"
       sources."@types/unist-2.0.3"
-      sources."ajv-8.1.0"
+      sources."ajv-8.5.0"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -108849,16 +109566,19 @@ in
       sources."astral-regex-2.0.0"
       sources."autoprefixer-9.8.6"
       sources."bail-1.0.5"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
+      sources."balanced-match-2.0.0"
+      (sources."brace-expansion-1.1.11" // {
+        dependencies = [
+          sources."balanced-match-1.0.2"
+        ];
+      })
       sources."braces-3.0.2"
-      sources."browserslist-4.16.4"
-      sources."call-bind-1.0.2"
+      sources."browserslist-4.16.6"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001209"
-      (sources."chalk-4.1.0" // {
+      sources."caniuse-lite-1.0.30001232"
+      (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -108895,7 +109615,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.3.717"
+      sources."electron-to-chromium-1.3.743"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -108915,9 +109635,8 @@ in
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.2"
-      sources."get-intrinsic-1.1.1"
       sources."get-stdin-8.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-modules-2.0.0"
       sources."global-prefix-3.0.0"
@@ -108928,7 +109647,6 @@ in
       sources."hard-rejection-2.1.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.2"
       sources."hosted-git-info-4.0.2"
       sources."html-tags-3.1.0"
       sources."htmlparser2-3.10.1"
@@ -108941,26 +109659,22 @@ in
       sources."import-lazy-4.0.0"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
-      sources."indexes-of-1.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."is-alphabetical-1.0.4"
       sources."is-alphanumerical-1.0.4"
       sources."is-arrayish-0.2.1"
-      sources."is-boolean-object-1.1.0"
       sources."is-buffer-2.0.5"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-decimal-1.0.4"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-hexadecimal-1.0.4"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
       sources."is-plain-obj-2.1.0"
       sources."is-regexp-2.1.0"
-      sources."is-string-1.0.5"
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."isexe-2.0.0"
@@ -108975,7 +109689,6 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.flatten-4.4.0"
       sources."lodash.truncate-4.4.2"
       sources."log-symbols-4.1.0"
       sources."longest-streak-2.0.4"
@@ -108998,7 +109711,7 @@ in
         ];
       })
       sources."ms-2.1.2"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       (sources."normalize-package-data-3.0.2" // {
         dependencies = [
           sources."semver-7.3.5"
@@ -109016,9 +109729,9 @@ in
       sources."parse-json-5.2.0"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       (sources."postcss-7.0.35" // {
         dependencies = [
           (sources."chalk-2.4.2" // {
@@ -109037,7 +109750,7 @@ in
       sources."postcss-safe-parser-4.0.2"
       sources."postcss-sass-0.4.4"
       sources."postcss-scss-2.1.1"
-      sources."postcss-selector-parser-6.0.4"
+      sources."postcss-selector-parser-6.0.6"
       sources."postcss-syntax-0.36.2"
       sources."postcss-value-parser-4.1.0"
       sources."punycode-2.1.1"
@@ -109083,7 +109796,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."specificity-0.4.1"
       sources."string-width-4.2.2"
       (sources."string_decoder-1.3.0" // {
@@ -109097,15 +109810,14 @@ in
       sources."sugarss-2.0.0"
       sources."supports-color-5.5.0"
       sources."svg-tags-1.0.0"
-      sources."table-6.1.0"
+      sources."table-6.7.1"
       sources."to-fast-properties-2.0.0"
       sources."to-regex-range-5.0.1"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."trough-1.0.5"
       sources."type-fest-0.18.1"
       sources."typedarray-to-buffer-3.1.5"
       sources."unified-9.2.1"
-      sources."uniq-1.0.1"
       sources."unist-util-find-all-after-3.0.2"
       sources."unist-util-is-4.1.0"
       sources."unist-util-stringify-position-2.0.3"
@@ -109136,16 +109848,16 @@ in
   svelte-language-server = nodeEnv.buildNodePackage {
     name = "svelte-language-server";
     packageName = "svelte-language-server";
-    version = "0.13.0";
+    version = "0.14.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.13.0.tgz";
-      sha512 = "ov9SZmsCdfy3GcyvrlulEkYnkCc1EK/Qoety+xLsIZtVLMBitudp0OmHx5AWHk+FF2+78A0PYL2z8PEBX6UPjA==";
+      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.0.tgz";
+      sha512 = "P9QsonwMBUvwQxJbnNKggvJf1K24xaUhRrzoqkJabHtUT37JyYrt9anMIZ7WmjuKUEI/Ejf+Gu/8A0VvyUBaUQ==";
     };
     dependencies = [
       sources."@emmetio/abbreviation-2.2.2"
       sources."@emmetio/css-abbreviation-2.1.4"
       sources."@emmetio/scanner-1.0.0"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/pug-2.0.4"
       sources."@types/sass-1.16.0"
       sources."anymatch-3.1.2"
@@ -109156,13 +109868,13 @@ in
       sources."chokidar-3.5.1"
       sources."concat-map-0.0.1"
       sources."dedent-js-1.0.1"
-      sources."detect-indent-6.0.0"
+      sources."detect-indent-6.1.0"
       sources."emmet-2.3.4"
       sources."estree-walker-2.0.2"
       sources."fill-range-7.0.1"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -109180,24 +109892,28 @@ in
       sources."once-1.4.0"
       sources."pascal-case-3.1.2"
       sources."path-is-absolute-1.0.1"
-      sources."picomatch-2.2.3"
-      sources."prettier-2.2.1"
-      sources."prettier-plugin-svelte-2.2.0"
+      sources."picomatch-2.3.0"
+      sources."prettier-2.3.0"
+      sources."prettier-plugin-svelte-2.3.0"
       sources."readdirp-3.5.0"
       sources."source-map-0.7.3"
       sources."strip-indent-3.0.0"
-      sources."svelte-3.35.0"
-      sources."svelte-preprocess-4.6.9"
-      sources."svelte2tsx-0.1.186"
+      sources."svelte-3.38.2"
+      sources."svelte-preprocess-4.7.3"
+      sources."svelte2tsx-0.2.0"
       sources."to-regex-range-5.0.1"
       sources."tslib-2.2.0"
-      sources."typescript-4.2.4"
+      sources."typescript-4.3.2"
       sources."vscode-css-languageservice-5.0.0"
       sources."vscode-emmet-helper-2.1.2"
       sources."vscode-html-languageservice-4.0.0"
-      sources."vscode-jsonrpc-6.0.0"
-      sources."vscode-languageserver-7.0.0"
-      sources."vscode-languageserver-protocol-3.16.0"
+      sources."vscode-jsonrpc-6.1.0-next.2"
+      sources."vscode-languageserver-7.1.0-next.4"
+      (sources."vscode-languageserver-protocol-3.17.0-next.5" // {
+        dependencies = [
+          sources."vscode-languageserver-types-3.17.0-next.1"
+        ];
+      })
       sources."vscode-languageserver-textdocument-1.0.1"
       sources."vscode-languageserver-types-3.16.0"
       sources."vscode-nls-5.0.0"
@@ -109226,7 +109942,7 @@ in
       sources."@trysound/sax-0.1.1"
       sources."ansi-styles-4.3.0"
       sources."boolbase-1.0.0"
-      sources."chalk-4.1.0"
+      sources."chalk-4.1.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."commander-7.2.0"
@@ -109234,7 +109950,7 @@ in
       sources."css-tree-1.1.3"
       sources."css-what-4.0.0"
       sources."csso-4.2.0"
-      sources."dom-serializer-1.3.1"
+      sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.0"
       sources."domutils-2.6.0"
@@ -109456,7 +110172,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -109639,7 +110355,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-visit-1.0.1"
       sources."object.pick-1.3.0"
       sources."on-finished-2.3.0"
@@ -109835,7 +110551,7 @@ in
       sources."truncate-utf8-bytes-1.0.2"
       sources."type-is-1.6.18"
       sources."typedarray-0.0.6"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."undefsafe-2.0.3"
       (sources."union-value-1.0.1" // {
         dependencies = [
@@ -110059,7 +110775,7 @@ in
       sources."minimist-1.2.5"
       sources."mkdirp-classic-0.5.3"
       sources."napi-build-utils-1.0.2"
-      sources."node-abi-2.21.0"
+      sources."node-abi-2.30.0"
       sources."node-addon-api-3.0.2"
       sources."noop-logger-0.1.1"
       sources."npmlog-4.1.2"
@@ -110089,7 +110805,7 @@ in
         ];
       })
       sources."tunnel-agent-0.6.0"
-      sources."usb-1.7.0"
+      sources."usb-1.7.1"
       sources."util-deprecate-1.0.2"
       sources."which-pm-runs-1.0.0"
       sources."wide-align-1.1.3"
@@ -110124,7 +110840,7 @@ in
       sources."enhanced-resolve-2.3.0"
       sources."errno-0.1.8"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -110157,29 +110873,31 @@ in
   textlint = nodeEnv.buildNodePackage {
     name = "textlint";
     packageName = "textlint";
-    version = "11.9.0";
+    version = "12.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/textlint/-/textlint-11.9.0.tgz";
-      sha512 = "a9ZCfCOcOTNxEQsRbYBDFNu8m5cjJC+znnXCBommGSdP0W+9QmwZnkralwpxrVhRgWvLz+QyuDXtLBZcqfDmHg==";
+      url = "https://registry.npmjs.org/textlint/-/textlint-12.0.0.tgz";
+      sha512 = "hpXezTFR/BxNzc0iJqwspAuHYrCWF/nF7mBS9OGzgBJx5FfS1xfsAIityV65Ffcr+nxCExzTQqRHR6qSWOZmbg==";
     };
     dependencies = [
       sources."@azu/format-text-1.0.1"
       sources."@azu/style-format-1.0.0"
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/ast-tester-2.3.4"
-      sources."@textlint/ast-traverse-2.3.4"
-      sources."@textlint/feature-flag-3.3.4"
-      sources."@textlint/fixer-formatter-3.3.4"
-      sources."@textlint/kernel-3.4.4"
-      sources."@textlint/linter-formatter-3.3.4"
-      sources."@textlint/markdown-to-ast-6.3.4"
-      sources."@textlint/module-interop-1.2.4"
-      sources."@textlint/source-code-fixer-3.4.4"
-      sources."@textlint/text-to-ast-3.3.4"
-      sources."@textlint/textlint-plugin-markdown-5.3.4"
-      sources."@textlint/textlint-plugin-text-4.3.4"
-      sources."@textlint/types-1.5.4"
-      sources."@textlint/utils-1.2.4"
+      sources."@textlint/ast-node-types-12.0.0"
+      sources."@textlint/ast-tester-12.0.0"
+      sources."@textlint/ast-traverse-12.0.0"
+      sources."@textlint/feature-flag-12.0.0"
+      sources."@textlint/fixer-formatter-12.0.0"
+      sources."@textlint/kernel-12.0.0"
+      sources."@textlint/linter-formatter-12.0.0"
+      sources."@textlint/markdown-to-ast-12.0.0"
+      sources."@textlint/module-interop-12.0.0"
+      sources."@textlint/source-code-fixer-12.0.0"
+      sources."@textlint/text-to-ast-12.0.0"
+      sources."@textlint/textlint-plugin-markdown-12.0.0"
+      sources."@textlint/textlint-plugin-text-12.0.0"
+      sources."@textlint/types-12.0.0"
+      sources."@textlint/utils-12.0.0"
+      sources."@types/mdast-3.0.3"
+      sources."@types/unist-2.0.3"
       sources."ajv-4.11.8"
       sources."ajv-keywords-1.5.1"
       sources."ansi-regex-2.1.1"
@@ -110189,8 +110907,8 @@ in
       sources."balanced-match-1.0.2"
       sources."boundary-1.0.1"
       sources."brace-expansion-1.1.11"
-      sources."buffer-from-1.1.1"
       sources."call-bind-1.0.2"
+      sources."ccount-1.1.0"
       (sources."chalk-1.1.3" // {
         dependencies = [
           sources."strip-ansi-3.0.1"
@@ -110202,10 +110920,7 @@ in
       sources."charenc-0.0.2"
       sources."co-4.6.0"
       sources."code-point-at-1.1.0"
-      sources."collapse-white-space-1.0.6"
       sources."concat-map-0.0.1"
-      sources."concat-stream-1.6.2"
-      sources."core-util-is-1.0.2"
       sources."crypt-0.0.2"
       sources."debug-4.3.2"
       sources."deep-equal-1.1.1"
@@ -110227,7 +110942,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."get-stdin-5.0.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."has-1.0.3"
       sources."has-ansi-2.0.0"
@@ -110239,19 +110954,16 @@ in
       sources."is-alphanumerical-1.0.4"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-buffer-1.1.6"
-      sources."is-core-module-2.2.0"
-      sources."is-date-object-1.0.2"
+      sources."is-buffer-2.0.5"
+      sources."is-core-module-2.4.0"
+      sources."is-date-object-1.0.4"
       sources."is-decimal-1.0.4"
       sources."is-file-1.0.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-hexadecimal-1.0.4"
-      sources."is-plain-obj-1.1.0"
-      sources."is-regex-1.1.2"
+      sources."is-plain-obj-2.1.0"
+      sources."is-regex-1.1.3"
       sources."is-utf8-0.2.1"
-      sources."is-whitespace-character-1.0.4"
-      sources."is-word-character-1.0.4"
-      sources."isarray-1.0.0"
       sources."js-yaml-3.14.1"
       sources."json-parse-better-errors-1.0.2"
       sources."json-stable-stringify-1.0.1"
@@ -110262,9 +110974,38 @@ in
       sources."locate-path-2.0.0"
       sources."lodash-4.17.21"
       sources."log-symbols-1.0.2"
+      sources."longest-streak-2.0.4"
       sources."map-like-2.0.0"
-      sources."markdown-escapes-1.0.4"
-      sources."md5-2.3.0"
+      sources."markdown-table-2.0.0"
+      (sources."md5-2.3.0" // {
+        dependencies = [
+          sources."is-buffer-1.1.6"
+        ];
+      })
+      (sources."mdast-util-find-and-replace-1.1.1" // {
+        dependencies = [
+          sources."escape-string-regexp-4.0.0"
+        ];
+      })
+      sources."mdast-util-footnote-0.1.7"
+      sources."mdast-util-from-markdown-0.8.5"
+      sources."mdast-util-frontmatter-0.2.0"
+      sources."mdast-util-gfm-0.1.2"
+      sources."mdast-util-gfm-autolink-literal-0.1.3"
+      sources."mdast-util-gfm-strikethrough-0.2.3"
+      sources."mdast-util-gfm-table-0.1.6"
+      sources."mdast-util-gfm-task-list-item-0.1.6"
+      sources."mdast-util-to-markdown-0.6.5"
+      sources."mdast-util-to-string-2.0.0"
+      sources."micromark-2.11.4"
+      sources."micromark-extension-footnote-0.3.2"
+      sources."micromark-extension-frontmatter-0.2.2"
+      sources."micromark-extension-gfm-0.3.3"
+      sources."micromark-extension-gfm-autolink-literal-0.5.7"
+      sources."micromark-extension-gfm-strikethrough-0.6.5"
+      sources."micromark-extension-gfm-table-0.4.3"
+      sources."micromark-extension-gfm-tagfilter-0.3.0"
+      sources."micromark-extension-gfm-task-list-item-0.3.3"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
@@ -110278,11 +111019,11 @@ in
       sources."p-limit-1.3.0"
       sources."p-locate-2.0.0"
       sources."p-try-1.0.0"
-      sources."parse-entities-1.2.2"
+      sources."parse-entities-2.0.0"
       sources."parse-json-2.2.0"
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-to-glob-pattern-1.0.2"
       sources."path-type-1.1.0"
       sources."pify-2.3.0"
@@ -110290,7 +111031,6 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pluralize-2.0.0"
       sources."prelude-ls-1.2.1"
-      sources."process-nextick-args-2.0.1"
       sources."rc-config-loader-3.0.0"
       sources."read-pkg-1.1.0"
       (sources."read-pkg-up-3.0.0" // {
@@ -110303,30 +111043,27 @@ in
           sources."strip-bom-3.0.0"
         ];
       })
-      sources."readable-stream-2.3.7"
       sources."regexp.prototype.flags-1.3.1"
-      sources."remark-frontmatter-1.3.3"
-      sources."remark-parse-5.0.0"
+      sources."remark-footnotes-3.0.0"
+      sources."remark-frontmatter-3.0.0"
+      sources."remark-gfm-1.0.0"
+      sources."remark-parse-9.0.0"
       sources."repeat-string-1.6.1"
-      sources."replace-ext-1.0.0"
       sources."require-from-string-2.0.2"
       sources."resolve-1.20.0"
       sources."rimraf-2.6.3"
-      sources."safe-buffer-5.1.2"
       sources."semver-5.7.1"
       sources."slice-ansi-0.0.4"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."sprintf-js-1.0.3"
-      sources."state-toggle-1.0.3"
       (sources."string-width-1.0.2" // {
         dependencies = [
           sources."strip-ansi-3.0.1"
         ];
       })
-      sources."string_decoder-1.1.1"
       (sources."strip-ansi-6.0.0" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -110345,31 +111082,22 @@ in
       })
       sources."text-table-0.2.0"
       sources."traverse-0.6.6"
-      sources."trim-0.0.1"
-      sources."trim-trailing-lines-1.1.4"
       sources."trough-1.0.5"
       sources."try-resolve-1.0.1"
       sources."type-check-0.4.0"
-      sources."typedarray-0.0.6"
-      sources."unherit-1.1.3"
-      sources."unified-6.2.0"
+      sources."unified-9.2.1"
       sources."unique-concat-0.2.2"
-      sources."unist-util-is-3.0.0"
-      sources."unist-util-remove-position-1.1.4"
-      sources."unist-util-stringify-position-1.1.2"
-      sources."unist-util-visit-1.4.1"
-      sources."unist-util-visit-parents-2.1.2"
-      sources."util-deprecate-1.0.2"
+      sources."unist-util-is-4.1.0"
+      sources."unist-util-stringify-position-2.0.3"
+      sources."unist-util-visit-parents-3.1.1"
       sources."validate-npm-package-license-3.0.4"
-      sources."vfile-2.3.0"
-      sources."vfile-location-2.0.6"
-      sources."vfile-message-1.1.1"
+      sources."vfile-4.2.1"
+      sources."vfile-message-2.0.4"
       sources."word-wrap-1.2.3"
       sources."wrappy-1.0.2"
       sources."write-1.0.3"
-      sources."x-is-string-0.1.0"
       sources."xml-escape-1.1.0"
-      sources."xtend-4.0.2"
+      sources."zwitch-1.0.5"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -110390,7 +111118,7 @@ in
       sha1 = "9139c65b8da891c983b368a50a286338cd76777a";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.4.2"
+      sources."@textlint/ast-node-types-4.4.3"
       sources."txt-to-ast-3.0.3"
     ];
     buildInputs = globalBuildInputs;
@@ -110442,18 +111170,18 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/types-1.5.4"
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@textlint/types-1.5.5"
       sources."@types/hast-2.3.1"
       sources."@types/minimist-1.2.1"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/parse5-5.0.3"
       sources."@types/unist-2.0.3"
-      sources."acorn-8.1.1"
+      sources."acorn-8.3.0"
       sources."acorn-jsx-5.3.1"
       sources."alex-9.1.0"
       (sources."ansi-align-3.0.0" // {
@@ -110553,7 +111281,7 @@ in
       })
       sources."git-diff-tree-1.1.0"
       sources."git-spawned-stream-1.0.1"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."global-dirs-2.1.0" // {
         dependencies = [
           sources."ini-1.3.7"
@@ -110590,7 +111318,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-decimal-1.0.4"
       sources."is-empty-1.2.0"
       sources."is-fullwidth-code-point-2.0.0"
@@ -110663,7 +111391,7 @@ in
       sources."nlcst-search-2.0.0"
       sources."nlcst-to-string-2.0.4"
       sources."normalize-package-data-2.5.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."object-keys-1.1.1"
       sources."once-1.4.0"
       sources."p-cancelable-1.1.0"
@@ -110682,7 +111410,7 @@ in
       sources."parse5-6.0.1"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pause-stream-0.0.11"
       sources."pluralize-8.0.0"
       sources."prepend-http-2.0.0"
@@ -110746,7 +111474,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-0.2.10"
       (sources."split-transform-stream-0.1.1" // {
         dependencies = [
@@ -110775,7 +111503,7 @@ in
       sources."structured-source-3.0.2"
       sources."supports-color-5.5.0"
       sources."term-size-2.2.1"
-      (sources."textlint-rule-helper-2.1.1" // {
+      (sources."textlint-rule-helper-2.2.0" // {
         dependencies = [
           sources."unist-util-is-3.0.0"
           sources."unist-util-visit-1.4.1"
@@ -110792,7 +111520,7 @@ in
       sources."to-readable-stream-1.0.0"
       sources."to-vfile-6.1.0"
       sources."trim-0.0.1"
-      sources."trim-newlines-3.0.0"
+      sources."trim-newlines-3.0.1"
       sources."trim-trailing-lines-1.1.4"
       sources."trough-1.0.5"
       sources."type-fest-0.13.1"
@@ -110951,29 +111679,50 @@ in
   textlint-rule-max-comma = nodeEnv.buildNodePackage {
     name = "textlint-rule-max-comma";
     packageName = "textlint-rule-max-comma";
-    version = "1.0.4";
+    version = "2.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/textlint-rule-max-comma/-/textlint-rule-max-comma-1.0.4.tgz";
-      sha1 = "f555c97e0d3039ca7da06cfd1afad0e5f5899a37";
+      url = "https://registry.npmjs.org/textlint-rule-max-comma/-/textlint-rule-max-comma-2.0.2.tgz";
+      sha512 = "t4twAgEZWWMhIYH3xURZr/A1EcAUKiC10/N0EU6RG+ZBa9+FB5HDhMdQMS5wHqEI1FopWHTYYv/sC2PGEtvyLg==";
     };
     dependencies = [
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@types/structured-source-3.0.0"
+      sources."@types/unist-2.0.3"
+      sources."bail-1.0.5"
       sources."boundary-1.0.1"
       sources."buffer-from-1.1.1"
-      sources."concat-stream-1.6.2"
-      sources."core-util-is-1.0.2"
-      sources."flatmap-0.0.3"
+      sources."ccount-1.1.0"
+      sources."comma-separated-tokens-1.0.8"
+      sources."concat-stream-2.0.0"
+      sources."extend-3.0.2"
+      sources."hast-util-from-parse5-5.0.3"
+      sources."hast-util-parse-selector-2.2.5"
+      sources."hastscript-5.1.2"
       sources."inherits-2.0.4"
-      sources."isarray-1.0.0"
-      sources."process-nextick-args-2.0.1"
-      sources."readable-stream-2.3.7"
-      sources."safe-buffer-5.1.2"
-      sources."sentence-splitter-2.3.2"
-      sources."string_decoder-1.1.1"
+      sources."is-buffer-2.0.5"
+      sources."is-plain-obj-2.1.0"
+      sources."object_values-0.1.2"
+      sources."parse5-5.1.1"
+      sources."property-information-5.6.0"
+      sources."readable-stream-3.6.0"
+      sources."rehype-parse-6.0.2"
+      sources."safe-buffer-5.2.1"
+      sources."sentence-splitter-3.2.2"
+      sources."space-separated-tokens-1.1.5"
+      sources."string_decoder-1.3.0"
       sources."structured-source-3.0.2"
+      sources."textlint-util-to-string-3.1.1"
+      sources."trough-1.0.5"
       sources."typedarray-0.0.6"
-      sources."unist-util-filter-0.2.1"
-      sources."unist-util-is-1.0.0"
+      sources."unified-8.4.2"
+      sources."unist-util-filter-2.0.3"
+      sources."unist-util-is-4.1.0"
+      sources."unist-util-stringify-position-2.0.3"
       sources."util-deprecate-1.0.2"
+      sources."vfile-4.2.1"
+      sources."vfile-message-2.0.4"
+      sources."web-namespaces-1.1.4"
+      sources."xtend-4.0.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -110994,8 +111743,8 @@ in
       sha512 = "HydBbkWjnMn4KrnlpnusY1BGjIG+64UySxRCvRphUAIiuJL2nbkdrIIiOjwfQhllKUa7Sf33bs6RAcbEWjZVfg==";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/types-1.5.4"
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@textlint/types-1.5.5"
       sources."boundary-1.0.1"
       sources."buffer-from-1.1.1"
       sources."concat-stream-2.0.0"
@@ -111004,10 +111753,10 @@ in
       sources."object_values-0.1.2"
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
-      sources."sentence-splitter-3.2.1"
+      sources."sentence-splitter-3.2.2"
       sources."string_decoder-1.3.0"
       sources."structured-source-3.0.2"
-      sources."textlint-rule-helper-2.1.1"
+      sources."textlint-rule-helper-2.2.0"
       sources."typedarray-0.0.6"
       sources."unist-util-is-3.0.0"
       sources."unist-util-visit-1.4.1"
@@ -111039,23 +111788,23 @@ in
       sources."define-properties-1.1.3"
       sources."emoji-regex-6.5.1"
       sources."end-with-1.0.2"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
       sources."has-symbols-1.0.2"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
-      sources."object-inspect-1.10.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."string.prototype.trimend-1.0.4"
@@ -111082,13 +111831,13 @@ in
       sha512 = "UW7nWrqBUHfz/sRLTFo40BNjwXOiXSHg00TJuYY4GVDQtsWRLyAsOnXSBqClP4i6wl7ejMBeYmB5mfllYAYMgA==";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/types-1.5.4"
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@textlint/types-1.5.5"
       sources."boundary-1.0.1"
       sources."lodash-4.17.21"
       sources."split-lines-2.1.0"
       sources."structured-source-3.0.2"
-      sources."textlint-rule-helper-2.1.1"
+      sources."textlint-rule-helper-2.2.0"
       sources."unist-util-is-3.0.0"
       sources."unist-util-visit-1.4.1"
       sources."unist-util-visit-parents-2.1.2"
@@ -111112,13 +111861,13 @@ in
       sha512 = "VW+ea4ByLPddSUqoFkVVJF8zWnO8kqKwvC681wGFAjI4CYz9WhjEQH1ikhoEHXnd5AFXNArcjyoa8hoihrXy0w==";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/types-1.5.4"
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@textlint/types-1.5.5"
       sources."boundary-1.0.1"
       sources."lodash-4.17.21"
       sources."strip-json-comments-3.1.1"
       sources."structured-source-3.0.2"
-      sources."textlint-rule-helper-2.1.1"
+      sources."textlint-rule-helper-2.2.0"
       sources."unist-util-is-3.0.0"
       sources."unist-util-visit-1.4.1"
       sources."unist-util-visit-parents-2.1.2"
@@ -111145,24 +111894,24 @@ in
       sources."array-includes-3.1.3"
       sources."call-bind-1.0.2"
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.18.0"
+      sources."es-abstract-1.18.3"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."get-intrinsic-1.1.1"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
       sources."has-symbols-1.0.2"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
+      sources."is-bigint-1.0.2"
+      sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
       sources."is-capitalized-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
-      sources."object-inspect-1.10.2"
+      sources."is-number-object-1.0.5"
+      sources."is-regex-1.1.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."string.prototype.trimend-1.0.4"
@@ -111189,8 +111938,8 @@ in
       sha1 = "3c79b04091319d4e8be5fb442c596bf500e8493e";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.4.2"
-      sources."@textlint/types-1.5.4"
+      sources."@textlint/ast-node-types-4.4.3"
+      sources."@textlint/types-1.5.5"
       sources."adverb-where-0.0.9"
       sources."boundary-1.0.1"
       sources."call-bind-1.0.2"
@@ -111205,7 +111954,7 @@ in
       sources."object.assign-4.1.2"
       sources."passive-voice-0.1.0"
       sources."structured-source-3.0.2"
-      sources."textlint-rule-helper-2.1.1"
+      sources."textlint-rule-helper-2.2.0"
       sources."too-wordy-0.1.6"
       sources."unist-util-is-3.0.0"
       sources."unist-util-visit-1.4.1"
@@ -111239,7 +111988,7 @@ in
       sources."@types/debug-4.1.5"
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -111315,7 +112064,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.10.1"
+      sources."core-js-3.13.1"
       sources."core-util-is-1.0.2"
       sources."css-select-1.2.0"
       sources."css-what-2.1.3"
@@ -111382,7 +112131,7 @@ in
       sources."finalhandler-1.1.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs-minipass-1.2.7"
       sources."fs.realpath-1.0.0"
@@ -111390,7 +112139,7 @@ in
       sources."gauge-2.7.4"
       sources."get-stream-5.2.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."got-11.5.2"
       sources."graceful-fs-4.2.6"
       sources."grapheme-splitter-1.0.4"
@@ -111418,7 +112167,7 @@ in
       })
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."ignore-walk-3.0.3"
+      sources."ignore-walk-3.0.4"
       sources."indexof-0.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -111426,7 +112175,7 @@ in
       sources."ipaddr.js-1.9.1"
       (sources."irc-framework-4.9.0" // {
         dependencies = [
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
         ];
       })
       sources."is-fullwidth-code-point-1.0.0"
@@ -111492,8 +112241,8 @@ in
         ];
       })
       sources."nopt-4.0.3"
-      sources."normalize-url-4.5.0"
-      sources."npm-bundled-1.1.1"
+      sources."normalize-url-4.5.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
       sources."npm-packlist-1.4.8"
       sources."npmlog-4.1.2"
@@ -111507,7 +112256,7 @@ in
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-finally-1.0.0"
       sources."p-try-2.2.0"
       (sources."package-json-6.5.0" // {
@@ -111544,7 +112293,7 @@ in
       sources."precond-0.2.3"
       sources."prepend-http-2.0.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -111654,7 +112403,7 @@ in
       sources."wide-align-1.1.3"
       sources."with-open-file-0.1.7"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."yallist-3.1.1"
       sources."yarn-1.22.4"
@@ -111673,10 +112422,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.127.0";
+    version = "0.129.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.127.0.tgz";
-      sha512 = "wtgrn+mhYUbobxT7QN3GPdu3SRpSBQvwY6uOzLChWS7QE//f7paDU/+wlzbg+ngeIvBBqjBHSRuywTh8A99Jng==";
+      url = "https://registry.npmjs.org/three/-/three-0.129.0.tgz";
+      sha512 = "wiWio1yVRg2Oj6WEWsTHQo5eSzYpEwSBtPSi3OofNpvFbf26HFfb9kw4FZJNjII4qxzp0b1xLB11+tKkBGB1ZA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -111709,16 +112458,16 @@ in
   titanium = nodeEnv.buildNodePackage {
     name = "titanium";
     packageName = "titanium";
-    version = "5.3.0";
+    version = "5.3.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/titanium/-/titanium-5.3.0.tgz";
-      sha512 = "j+Bk1jWH4Ki/7hfizhG6MvaZMEeHNdaJnzjC50CUJThfDkxr8nN1rn7smaX9Wg5W1iiBeBQyJreTExZloTRCJw==";
+      url = "https://registry.npmjs.org/titanium/-/titanium-5.3.2.tgz";
+      sha512 = "fVpcAtANFCRTadfJ87uMKb41FpWeCikJkoFkFdRzCOQ/cA/9OgSbi2P08otCCyY2oAjLmRO5eOHZAeud+eKwzA==";
     };
     dependencies = [
       sources."ajv-6.12.6"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
-      sources."async-2.6.3"
+      sources."async-3.2.0"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
       sources."aws-sign2-0.7.0"
@@ -111752,7 +112501,7 @@ in
       sources."fs-extra-9.0.1"
       sources."fs.realpath-1.0.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
@@ -111773,16 +112522,13 @@ in
       })
       sources."jsprim-1.4.1"
       sources."keypress-0.2.1"
-      sources."lodash-4.17.21"
       sources."lru-cache-6.0.0"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."minimatch-3.0.4"
-      (sources."node-appc-1.1.2" // {
-        dependencies = [
-          sources."async-3.2.0"
-        ];
-      })
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.5"
+      sources."node-appc-1.1.2"
       sources."oauth-sign-0.9.0"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
@@ -111803,7 +112549,7 @@ in
       sources."sprintf-0.1.5"
       sources."sshpk-1.16.1"
       sources."stack-trace-0.0.10"
-      sources."temp-0.9.1"
+      sources."temp-0.9.4"
       sources."tough-cookie-2.5.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
@@ -111835,10 +112581,10 @@ in
   triton = nodeEnv.buildNodePackage {
     name = "triton";
     packageName = "triton";
-    version = "7.14.0";
+    version = "7.15.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/triton/-/triton-7.14.0.tgz";
-      sha512 = "2oIu0p1QjDYdNp3fI0gTxJvwOmzcP76hMwCn4KlqfFxDihBghwDmvWhGU3PPn4zNf3yBDJ1xlsxY14WHqgcV7g==";
+      url = "https://registry.npmjs.org/triton/-/triton-7.15.0.tgz";
+      sha512 = "P0toU5OT3VdKKkJSrjLrFZFgo+0UlPliZ2TDLzF/brfOaPwfousrwJrVfmxtMPO3gk0Dpokz/gfJc7CO9ENeTg==";
     };
     dependencies = [
       sources."asn1-0.2.4"
@@ -112051,7 +112797,7 @@ in
       sources."diff-2.2.3"
       sources."escape-string-regexp-1.0.5"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-ansi-2.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -112105,10 +112851,10 @@ in
   typescript = nodeEnv.buildNodePackage {
     name = "typescript";
     packageName = "typescript";
-    version = "4.2.4";
+    version = "4.3.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz";
-      sha512 = "V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==";
+      url = "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz";
+      sha512 = "zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -112160,10 +112906,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "3.13.4";
+    version = "3.13.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.4.tgz";
-      sha512 = "kv7fCkIXyQIilD5/yQy8O+uagsYIOt5cZvs890W40/e/rvjMSzJw81o9Bg0tkURxzZBROtDQhW2LFjOGoK3RZw==";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.8.tgz";
+      sha512 = "PvFLMFIQHfIjFFlvAch69U2IvIxK9TNzNWt1SxZGp9JZ/v70yvqIQuiJeVPPtUMOzoNt+aNRDk4wgxb34wvEqA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -112196,20 +112942,20 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.5.16";
+    version = "1.5.18";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.5.16.tgz";
-      sha512 = "Hv5QiC0qMJChmDf6s3qwwclL38XQUKVInJaJZiNuIHh6vvO9hjkeoUb7djmGb2F2xxVuU7aOtpbdizfwunzU4A==";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.5.18.tgz";
+      sha512 = "E8fuVzs7KhfqWyk+MQ+LqP2A0IXFW643Xu2BJCw4iLpmFBoKHl+7AUZ5q4o2qefe1DFoAMijmbFsxbIcmDuvWg==";
     };
     dependencies = [
       sources."@dabh/diagnostics-2.0.2"
-      sources."@primer/octicons-12.1.0"
+      sources."@primer/octicons-14.1.0"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/component-emitter-1.2.10"
       sources."@types/cookie-0.4.0"
       sources."@types/cors-2.8.10"
-      sources."@types/node-14.14.41"
+      sources."@types/node-14.17.1"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       sources."ansi-regex-5.0.0"
@@ -112262,7 +113008,7 @@ in
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
       sources."diff-5.0.0"
-      sources."diff2html-3.4.3"
+      sources."diff2html-3.4.4"
       sources."dnd-page-scroll-0.0.4"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
@@ -112270,7 +113016,7 @@ in
       sources."enabled-2.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
-      (sources."engine.io-5.0.0" // {
+      (sources."engine.io-5.1.1" // {
         dependencies = [
           sources."cookie-0.4.1"
           sources."debug-4.3.2"
@@ -112283,23 +113029,24 @@ in
       sources."etag-1.8.1"
       sources."eve-0.5.4"
       sources."express-4.17.1"
-      (sources."express-session-1.17.1" // {
+      (sources."express-session-1.17.2" // {
         dependencies = [
+          sources."cookie-0.4.1"
           sources."depd-2.0.0"
-          sources."safe-buffer-5.2.0"
+          sources."safe-buffer-5.2.1"
         ];
       })
       sources."fast-safe-stringify-2.0.7"
       sources."fecha-4.2.1"
       sources."finalhandler-1.1.2"
       sources."fn.name-1.1.0"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-2.0.5"
       sources."get-stream-4.1.0"
       sources."getmac-5.17.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."got-9.6.0"
       sources."hasher-1.2.0"
       (sources."hogan.js-3.0.2" // {
@@ -112359,14 +113106,14 @@ in
       sources."negotiator-0.6.2"
       sources."node-cache-5.1.2"
       sources."nopt-1.0.10"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."nprogress-0.2.0"
       sources."object-assign-4.1.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
       sources."one-time-1.0.0"
-      sources."open-8.0.6"
+      sources."open-8.1.0"
       sources."p-cancelable-1.1.0"
       (sources."package-json-6.5.0" // {
         dependencies = [
@@ -112382,7 +113129,7 @@ in
       sources."pause-0.0.1"
       sources."prepend-http-2.0.0"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."pseudomap-1.0.2"
       sources."pump-3.0.0"
       sources."qs-6.7.0"
@@ -112415,13 +113162,13 @@ in
       sources."signals-1.0.0"
       sources."simple-swizzle-0.2.2"
       sources."snapsvg-0.5.1"
-      (sources."socket.io-4.0.1" // {
+      (sources."socket.io-4.1.2" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
-      sources."socket.io-adapter-2.2.0"
+      sources."socket.io-adapter-2.3.1"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
           sources."debug-4.3.2"
@@ -112464,10 +113211,10 @@ in
       })
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."y18n-5.0.8"
       sources."yallist-2.1.2"
-      sources."yargs-16.2.0"
+      sources."yargs-17.0.1"
       sources."yargs-parser-20.2.7"
     ];
     buildInputs = globalBuildInputs;
@@ -112489,15 +113236,17 @@ in
       sha512 = "dp7CncooBn6zSacyoSRdlm+fS1mQ6PsCT2pFILUgsDzn3e/e56iQA2mjmob8DOqM1n/0xbVziVelH31M8fcYXw==";
     };
     dependencies = [
+      sources."@mapbox/node-pre-gyp-1.0.5"
       sources."abbrev-1.1.1"
+      sources."agent-base-6.0.2"
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-4.3.0"
       sources."aproba-1.2.0"
       sources."are-we-there-yet-1.1.5"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."canvas-2.7.0"
-      sources."chownr-1.1.4"
+      sources."canvas-2.8.0"
+      sources."chownr-2.0.0"
       (sources."cliui-7.0.4" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -112531,66 +113280,59 @@ in
       sources."d3-time-2.1.1"
       sources."d3-time-format-3.0.0"
       sources."d3-timer-2.0.0"
-      sources."debug-3.2.7"
+      sources."debug-4.3.2"
       sources."decompress-response-4.2.1"
-      sources."deep-extend-0.6.0"
       sources."delaunator-4.0.1"
       sources."delegates-1.0.0"
       sources."detect-libc-1.0.3"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
-      sources."fs-minipass-1.2.7"
+      sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gauge-2.7.4"
       sources."get-caller-file-2.0.5"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."has-1.0.3"
       sources."has-unicode-2.0.1"
+      sources."https-proxy-agent-5.0.0"
       sources."iconv-lite-0.4.24"
-      sources."ignore-walk-3.0.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."ini-1.3.8"
       sources."internmap-1.0.1"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."isarray-1.0.0"
+      sources."lru-cache-6.0.0"
+      (sources."make-dir-3.1.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."mimic-response-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-1.2.5"
-      sources."minipass-2.9.0"
-      sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
-      sources."ms-2.1.3"
+      sources."minipass-3.1.3"
+      sources."minizlib-2.1.2"
+      sources."mkdirp-1.0.4"
+      sources."ms-2.1.2"
       sources."nan-2.14.2"
-      sources."needle-2.6.0"
       sources."node-fetch-2.6.1"
-      sources."node-pre-gyp-0.15.0"
-      sources."nopt-4.0.3"
-      sources."npm-bundled-1.1.1"
-      sources."npm-normalize-package-bin-1.0.1"
-      sources."npm-packlist-1.4.8"
+      sources."nopt-5.0.0"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
-      sources."os-homedir-1.0.2"
-      sources."os-tmpdir-1.0.2"
-      sources."osenv-0.1.5"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."process-nextick-args-2.0.1"
-      sources."rc-1.2.8"
       sources."readable-stream-2.3.7"
       sources."require-directory-2.1.1"
       sources."resolve-1.20.0"
-      sources."rimraf-2.7.1"
+      sources."rimraf-3.0.2"
       sources."rw-1.3.3"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."sax-1.2.4"
-      sources."semver-5.7.1"
+      sources."semver-7.3.5"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.3"
       sources."simple-concat-1.0.1"
@@ -112598,8 +113340,7 @@ in
       sources."string-width-1.0.2"
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
-      sources."strip-json-comments-2.0.1"
-      sources."tar-4.4.13"
+      sources."tar-6.1.0"
       sources."topojson-client-3.1.0"
       sources."util-deprecate-1.0.2"
       sources."vega-5.20.2"
@@ -112643,7 +113384,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."y18n-5.0.8"
-      sources."yallist-3.1.1"
+      sources."yallist-4.0.0"
       (sources."yargs-16.2.0" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -112674,7 +113415,7 @@ in
     };
     dependencies = [
       sources."@types/clone-2.1.0"
-      sources."@types/fast-json-stable-stringify-2.0.0"
+      sources."@types/fast-json-stable-stringify-2.1.0"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
       sources."array-flat-polyfill-1.0.1"
@@ -112714,10 +113455,10 @@ in
   vim-language-server = nodeEnv.buildNodePackage {
     name = "vim-language-server";
     packageName = "vim-language-server";
-    version = "2.2.2";
+    version = "2.2.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/vim-language-server/-/vim-language-server-2.2.2.tgz";
-      sha512 = "kM1XAb7NE+jwZ4ClyHMUWvd/0eDBSW8fBGaVinuRDgqMvavTrlo7SUlsgHzZhlTjTk+ZaDMfyVQBZUVNytprkg==";
+      url = "https://registry.npmjs.org/vim-language-server/-/vim-language-server-2.2.3.tgz";
+      sha512 = "dUaWfvqNM0IVwinwYHv6prKYEw4o/ayZtvceFBKdMCf91uYzKt64MLqD8ZA597JLheul/oEV1XKgpzLLPcfVVw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -112729,6 +113470,203 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  vls = nodeEnv.buildNodePackage {
+    name = "vls";
+    packageName = "vls";
+    version = "0.7.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/vls/-/vls-0.7.2.tgz";
+      sha512 = "9nKgSPtNxQlc32K5GgZV++MdsCpNuac/SfxnEmVI0DCF4E0Uekj+RUo7Zk6NnA4veiNMN+AEjAIlbXYWPHgX6Q==";
+    };
+    dependencies = [
+      sources."@babel/code-frame-7.12.11"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
+        dependencies = [
+          sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
+        ];
+      })
+      (sources."@eslint/eslintrc-0.4.1" // {
+        dependencies = [
+          sources."globals-12.4.0"
+        ];
+      })
+      sources."acorn-7.4.1"
+      sources."acorn-jsx-5.3.1"
+      sources."ajv-6.12.6"
+      sources."ansi-colors-4.1.1"
+      sources."ansi-regex-5.0.0"
+      sources."ansi-styles-3.2.1"
+      sources."argparse-1.0.10"
+      sources."astral-regex-2.0.0"
+      sources."balanced-match-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."builtin-modules-1.1.1"
+      sources."callsites-3.1.0"
+      (sources."chalk-4.1.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."commander-2.20.3"
+      sources."concat-map-0.0.1"
+      sources."cross-spawn-7.0.3"
+      sources."debug-4.3.2"
+      sources."deep-is-0.1.3"
+      sources."diff-4.0.2"
+      sources."doctrine-3.0.0"
+      sources."emoji-regex-8.0.0"
+      sources."enquirer-2.3.6"
+      sources."escape-string-regexp-4.0.0"
+      sources."eslint-7.27.0"
+      sources."eslint-plugin-vue-7.10.0"
+      sources."eslint-scope-5.1.1"
+      (sources."eslint-utils-2.1.0" // {
+        dependencies = [
+          sources."eslint-visitor-keys-1.3.0"
+        ];
+      })
+      sources."eslint-visitor-keys-2.1.0"
+      (sources."espree-7.3.1" // {
+        dependencies = [
+          sources."eslint-visitor-keys-1.3.0"
+        ];
+      })
+      sources."esprima-4.0.1"
+      (sources."esquery-1.4.0" // {
+        dependencies = [
+          sources."estraverse-5.2.0"
+        ];
+      })
+      (sources."esrecurse-4.3.0" // {
+        dependencies = [
+          sources."estraverse-5.2.0"
+        ];
+      })
+      sources."estraverse-4.3.0"
+      sources."esutils-2.0.3"
+      sources."fast-deep-equal-3.1.3"
+      sources."fast-json-stable-stringify-2.1.0"
+      sources."fast-levenshtein-2.0.6"
+      sources."file-entry-cache-6.0.1"
+      sources."flat-cache-3.0.4"
+      sources."flatted-3.1.1"
+      sources."fs.realpath-1.0.0"
+      sources."function-bind-1.1.1"
+      sources."functional-red-black-tree-1.0.1"
+      sources."glob-7.1.7"
+      sources."glob-parent-5.1.2"
+      (sources."globals-13.9.0" // {
+        dependencies = [
+          sources."type-fest-0.20.2"
+        ];
+      })
+      sources."has-1.0.3"
+      sources."has-flag-3.0.0"
+      sources."ignore-4.0.6"
+      sources."import-fresh-3.3.0"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."is-core-module-2.4.0"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-3.0.0"
+      sources."is-glob-4.0.1"
+      sources."isexe-2.0.0"
+      sources."js-tokens-4.0.0"
+      sources."js-yaml-3.14.1"
+      sources."json-schema-traverse-0.4.1"
+      sources."json-stable-stringify-without-jsonify-1.0.1"
+      sources."levn-0.4.1"
+      sources."lodash-4.17.21"
+      sources."lodash.clonedeep-4.5.0"
+      sources."lodash.merge-4.6.2"
+      sources."lodash.truncate-4.4.2"
+      sources."lru-cache-6.0.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.5"
+      sources."ms-2.1.2"
+      sources."natural-compare-1.4.0"
+      sources."once-1.4.0"
+      sources."optionator-0.9.1"
+      sources."parent-module-1.0.1"
+      sources."path-is-absolute-1.0.1"
+      sources."path-key-3.1.1"
+      sources."path-parse-1.0.7"
+      sources."prelude-ls-1.2.1"
+      sources."prettier-2.3.0"
+      sources."progress-2.0.3"
+      sources."punycode-2.1.1"
+      sources."regexpp-3.1.0"
+      sources."require-from-string-2.0.2"
+      sources."resolve-1.20.0"
+      sources."resolve-from-4.0.0"
+      sources."rimraf-3.0.2"
+      sources."semver-7.3.5"
+      sources."shebang-command-2.0.0"
+      sources."shebang-regex-3.0.0"
+      (sources."slice-ansi-4.0.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+        ];
+      })
+      sources."sprintf-js-1.0.3"
+      sources."string-width-4.2.2"
+      sources."strip-ansi-6.0.0"
+      sources."strip-json-comments-3.1.1"
+      sources."supports-color-5.5.0"
+      (sources."table-6.7.1" // {
+        dependencies = [
+          sources."ajv-8.5.0"
+          sources."json-schema-traverse-1.0.0"
+        ];
+      })
+      sources."text-table-0.2.0"
+      sources."tslib-1.14.1"
+      (sources."tslint-6.1.3" // {
+        dependencies = [
+          sources."chalk-2.4.2"
+          sources."escape-string-regexp-1.0.5"
+          sources."semver-5.7.1"
+        ];
+      })
+      sources."tsutils-2.29.0"
+      sources."type-check-0.4.0"
+      sources."type-fest-0.8.1"
+      sources."typescript-4.3.2"
+      sources."uri-js-4.4.1"
+      sources."v8-compile-cache-2.3.0"
+      (sources."vue-eslint-parser-7.6.0" // {
+        dependencies = [
+          sources."eslint-visitor-keys-1.3.0"
+          sources."espree-6.2.1"
+        ];
+      })
+      sources."which-2.0.2"
+      sources."word-wrap-1.2.3"
+      sources."wrappy-1.0.2"
+      sources."yallist-4.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Vue Language Server";
+      homepage = "https://github.com/vuejs/vetur/tree/master/server";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   vscode-css-languageserver-bin = nodeEnv.buildNodePackage {
     name = "vscode-css-languageserver-bin";
     packageName = "vscode-css-languageserver-bin";
@@ -112805,15 +113743,19 @@ in
     };
     dependencies = [
       sources."agent-base-4.3.0"
+      sources."balanced-match-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
       sources."jsonc-parser-3.0.0"
+      sources."minimatch-3.0.4"
       sources."ms-2.0.0"
       sources."request-light-0.4.0"
-      (sources."vscode-json-languageservice-4.0.2" // {
+      (sources."vscode-json-languageservice-4.1.4" // {
         dependencies = [
           sources."vscode-nls-5.0.0"
         ];
@@ -112895,7 +113837,7 @@ in
       sources."@types/json5-0.0.30"
       sources."@types/mocha-7.0.2"
       sources."@types/node-8.10.66"
-      sources."@types/vscode-1.55.0"
+      sources."@types/vscode-1.56.0"
       sources."@types/yauzl-2.9.1"
       sources."@webassemblyjs/ast-1.9.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
@@ -112945,7 +113887,7 @@ in
       sources."assign-symbols-1.0.0"
       sources."async-each-1.0.3"
       sources."atob-2.1.2"
-      sources."azure-devops-node-api-7.2.0"
+      sources."azure-devops-node-api-10.2.2"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
         dependencies = [
@@ -112986,7 +113928,7 @@ in
       sources."builtin-status-codes-3.0.0"
       (sources."cacache-12.0.4" // {
         dependencies = [
-          sources."glob-7.1.6"
+          sources."glob-7.1.7"
         ];
       })
       sources."cache-base-1.0.1"
@@ -112997,7 +113939,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."cheerio-1.0.0-rc.6"
+      sources."cheerio-1.0.0-rc.9"
       sources."cheerio-select-1.4.0"
       sources."chokidar-3.3.0"
       sources."chownr-1.1.4"
@@ -113057,7 +113999,7 @@ in
       sources."cross-spawn-6.0.5"
       sources."crypto-browserify-3.12.0"
       sources."css-select-4.1.2"
-      sources."css-what-5.0.0"
+      sources."css-what-5.0.1"
       sources."cyclist-1.0.1"
       sources."debug-3.2.6"
       sources."decamelize-1.2.0"
@@ -113073,7 +114015,7 @@ in
           sources."bn.js-4.12.0"
         ];
       })
-      sources."dom-serializer-1.3.1"
+      sources."dom-serializer-1.3.2"
       sources."domain-browser-1.2.0"
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.0"
@@ -113103,7 +114045,7 @@ in
       })
       sources."entities-2.2.0"
       sources."errno-0.1.8"
-      (sources."es-abstract-1.18.0" // {
+      (sources."es-abstract-1.18.3" // {
         dependencies = [
           sources."object.assign-4.1.2"
         ];
@@ -113235,13 +114177,13 @@ in
       sources."ini-1.3.8"
       sources."interpret-1.4.0"
       sources."is-accessor-descriptor-1.0.0"
-      sources."is-bigint-1.0.1"
+      sources."is-bigint-1.0.2"
       sources."is-binary-path-2.1.0"
-      sources."is-boolean-object-1.1.0"
+      sources."is-boolean-object-1.1.1"
       sources."is-buffer-2.0.5"
       sources."is-callable-1.2.3"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-0.1.1"
       sources."is-extglob-2.1.1"
@@ -113249,11 +114191,11 @@ in
       sources."is-glob-4.0.1"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
-      sources."is-number-object-1.0.4"
+      sources."is-number-object-1.0.5"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
+      sources."is-regex-1.1.3"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
       sources."isarray-0.0.1"
@@ -113367,14 +114309,13 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.2"
+      sources."object-inspect-1.10.3"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
       sources."object.assign-4.1.0"
       sources."object.getownpropertydescriptors-2.1.2"
       sources."object.pick-1.3.0"
       sources."once-1.4.0"
-      sources."os-0.1.1"
       sources."os-browserify-0.3.0"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
@@ -113403,7 +114344,7 @@ in
       sources."path-key-2.0.1"
       sources."pbkdf2-3.1.2"
       sources."pend-1.2.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pkg-dir-3.0.0"
       sources."posix-character-classes-0.1.1"
@@ -113423,6 +114364,7 @@ in
         ];
       })
       sources."punycode-2.1.1"
+      sources."qs-6.10.1"
       sources."querystring-0.2.0"
       sources."querystring-es3-0.2.1"
       sources."randombytes-2.1.0"
@@ -113464,6 +114406,7 @@ in
       sources."sha.js-2.4.11"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
+      sources."side-channel-1.0.4"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -113578,14 +114521,15 @@ in
           sources."semver-6.3.0"
         ];
       })
+      sources."tslib-2.2.0"
       sources."tty-browserify-0.0.0"
-      sources."tunnel-0.0.4"
-      sources."typed-rest-client-1.2.0"
+      sources."tunnel-0.0.6"
+      sources."typed-rest-client-1.8.4"
       sources."typedarray-0.0.6"
       sources."typescript-3.9.9"
       sources."uc.micro-1.0.6"
       sources."unbox-primitive-1.0.1"
-      sources."underscore-1.8.3"
+      sources."underscore-1.13.1"
       sources."union-value-1.0.1"
       sources."unique-filename-1.1.1"
       sources."unique-slug-2.0.2"
@@ -113618,9 +114562,9 @@ in
       sources."util-deprecate-1.0.2"
       sources."v8-compile-cache-2.3.0"
       sources."vm-browserify-1.1.2"
-      sources."vsce-1.87.1"
-      sources."vscode-debugadapter-testsupport-1.46.0"
-      sources."vscode-debugprotocol-1.46.0"
+      sources."vsce-1.91.0"
+      sources."vscode-debugadapter-testsupport-1.47.0"
+      sources."vscode-debugprotocol-1.47.0"
       (sources."watchpack-1.7.5" // {
         dependencies = [
           sources."chokidar-3.5.1"
@@ -113800,7 +114744,7 @@ in
       sources."get-stream-3.0.0"
       sources."getpass-0.1.7"
       sources."git-clone-0.1.0"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       sources."got-6.7.1"
       sources."graceful-fs-4.2.6"
       sources."gray-matter-2.1.1"
@@ -113947,7 +114891,7 @@ in
       sources."tslib-1.14.1"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
-      sources."uglify-js-3.13.4"
+      sources."uglify-js-3.13.8"
       sources."uid-0.0.2"
       sources."unbzip2-stream-1.4.3"
       sources."unyield-0.0.1"
@@ -113989,8 +114933,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
+      sources."@babel/helper-validator-identifier-7.14.0"
+      sources."@babel/highlight-7.14.0"
       sources."@emmetio/extract-abbreviation-0.1.6"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
@@ -114006,7 +114950,7 @@ in
       sources."@starptech/rehype-webparser-0.10.0"
       sources."@starptech/webparser-0.10.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/unist-2.0.3"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
@@ -114287,7 +115231,7 @@ in
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -114357,7 +115301,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-decimal-1.0.4"
       sources."is-descriptor-1.0.2"
@@ -114466,7 +115410,7 @@ in
       sources."nopt-5.0.0"
       sources."normalize-package-data-2.5.0"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-prefix-1.2.0"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
@@ -114521,9 +115465,9 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."path-type-3.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."pify-3.0.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -114680,7 +115624,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
+      sources."spdx-license-ids-3.0.9"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
       sources."stampit-1.2.0"
@@ -114812,7 +115756,7 @@ in
       sources."unist-util-inspect-4.1.4"
       sources."unist-util-is-2.1.3"
       sources."unist-util-modify-children-1.1.6"
-      sources."unist-util-stringify-position-2.0.3"
+      sources."unist-util-stringify-position-3.0.0"
       sources."unist-util-visit-1.4.1"
       (sources."unist-util-visit-parents-2.1.2" // {
         dependencies = [
@@ -114838,8 +115782,13 @@ in
       sources."user-home-2.0.0"
       sources."util-deprecate-1.0.2"
       sources."validate-npm-package-license-3.0.4"
-      sources."vfile-4.2.1"
-      sources."vfile-message-2.0.4"
+      (sources."vfile-4.2.1" // {
+        dependencies = [
+          sources."unist-util-stringify-position-2.0.3"
+          sources."vfile-message-2.0.4"
+        ];
+      })
+      sources."vfile-message-3.0.1"
       (sources."vfile-reporter-6.0.2" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -114848,6 +115797,7 @@ in
           sources."string-width-4.2.2"
           sources."strip-ansi-6.0.0"
           sources."supports-color-6.1.0"
+          sources."unist-util-stringify-position-2.0.3"
         ];
       })
       sources."vfile-sort-2.2.2"
@@ -114914,18 +115864,257 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  wavedrom-cli = nodeEnv.buildNodePackage {
+    name = "wavedrom-cli";
+    packageName = "wavedrom-cli";
+    version = "2.6.8";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/wavedrom-cli/-/wavedrom-cli-2.6.8.tgz";
+      sha512 = "uhSNGU27KDT2e2v51l/NqMc59O7X0DG7CHonZOwsnvMHLvyudCLZgXCU8Rw4T8gpqg2asn50vfPHq7l3DGlN5w==";
+    };
+    dependencies = [
+      sources."@babel/runtime-corejs3-7.14.0"
+      sources."@mapbox/node-pre-gyp-1.0.5"
+      sources."@tootallnate/once-1.1.2"
+      sources."@types/raf-3.4.0"
+      sources."abab-2.0.5"
+      sources."abbrev-1.1.1"
+      sources."acorn-8.3.0"
+      (sources."acorn-globals-6.0.0" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+        ];
+      })
+      sources."acorn-walk-7.2.0"
+      sources."agent-base-6.0.2"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-4.3.0"
+      sources."aproba-1.2.0"
+      sources."are-we-there-yet-1.1.5"
+      sources."asynckit-0.4.0"
+      sources."at-least-node-1.0.0"
+      sources."atob-2.1.2"
+      sources."balanced-match-1.0.2"
+      (sources."bit-field-1.3.6" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."fs-extra-8.1.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."jsonfile-4.0.0"
+          sources."onml-1.3.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+          sources."universalify-0.1.2"
+          sources."yargs-15.4.1"
+        ];
+      })
+      sources."brace-expansion-1.1.11"
+      sources."browser-process-hrtime-1.0.0"
+      sources."btoa-1.2.1"
+      sources."camelcase-5.3.1"
+      sources."canvas-2.8.0"
+      sources."canvg-3.0.7"
+      sources."chownr-2.0.0"
+      (sources."cliui-6.0.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+        ];
+      })
+      sources."code-point-at-1.1.0"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
+      sources."combined-stream-1.0.8"
+      sources."concat-map-0.0.1"
+      sources."console-control-strings-1.1.0"
+      sources."core-js-pure-3.13.1"
+      sources."core-util-is-1.0.2"
+      sources."cssom-0.4.4"
+      (sources."cssstyle-2.3.0" // {
+        dependencies = [
+          sources."cssom-0.3.8"
+        ];
+      })
+      sources."data-urls-2.0.0"
+      sources."debug-4.3.2"
+      sources."decamelize-1.2.0"
+      sources."decimal.js-10.2.1"
+      sources."decompress-response-4.2.1"
+      sources."deep-is-0.1.3"
+      sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
+      sources."detect-libc-1.0.3"
+      (sources."domexception-2.0.1" // {
+        dependencies = [
+          sources."webidl-conversions-5.0.0"
+        ];
+      })
+      sources."emoji-regex-8.0.0"
+      sources."escalade-3.1.1"
+      sources."escodegen-2.0.0"
+      sources."esprima-4.0.1"
+      sources."estraverse-5.2.0"
+      sources."esutils-2.0.3"
+      sources."fast-levenshtein-2.0.6"
+      sources."find-up-4.1.0"
+      sources."form-data-3.0.1"
+      sources."fs-extra-9.1.0"
+      sources."fs-minipass-2.1.0"
+      sources."fs.realpath-1.0.0"
+      sources."gauge-2.7.4"
+      sources."get-caller-file-2.0.5"
+      sources."glob-7.1.7"
+      sources."graceful-fs-4.2.6"
+      sources."has-unicode-2.0.1"
+      sources."html-encoding-sniffer-2.0.1"
+      sources."http-proxy-agent-4.0.1"
+      sources."https-proxy-agent-5.0.0"
+      sources."iconv-lite-0.4.24"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-potential-custom-element-name-1.0.1"
+      sources."isarray-1.0.0"
+      sources."jsdom-16.6.0"
+      sources."json5-2.2.0"
+      sources."jsonfile-6.1.0"
+      sources."levn-0.3.0"
+      sources."locate-path-5.0.0"
+      sources."lodash-4.17.21"
+      sources."logidrom-0.3.1"
+      sources."lru-cache-6.0.0"
+      (sources."make-dir-3.1.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
+      sources."mime-db-1.47.0"
+      sources."mime-types-2.1.30"
+      sources."mimic-response-2.1.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."minipass-3.1.3"
+      sources."minizlib-2.1.2"
+      sources."mkdirp-1.0.4"
+      sources."ms-2.1.2"
+      sources."nan-2.14.2"
+      sources."node-fetch-2.6.1"
+      sources."nopt-5.0.0"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
+      sources."nwsapi-2.2.0"
+      sources."object-assign-4.1.1"
+      sources."once-1.4.0"
+      sources."onml-2.1.0"
+      sources."optionator-0.8.3"
+      sources."p-limit-2.3.0"
+      sources."p-locate-4.1.0"
+      sources."p-try-2.2.0"
+      sources."parse5-6.0.1"
+      sources."path-exists-4.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."performance-now-2.1.0"
+      sources."prelude-ls-1.1.2"
+      sources."process-nextick-args-2.0.1"
+      sources."psl-1.8.0"
+      sources."punycode-2.1.1"
+      sources."raf-3.4.1"
+      sources."readable-stream-2.3.7"
+      sources."regenerator-runtime-0.13.8"
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-2.0.0"
+      sources."rgbcolor-1.0.1"
+      sources."rimraf-3.0.2"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."saxes-5.0.1"
+      sources."semver-7.3.5"
+      sources."set-blocking-2.0.0"
+      sources."signal-exit-3.0.3"
+      sources."simple-concat-1.0.1"
+      sources."simple-get-3.1.0"
+      sources."source-map-0.6.1"
+      sources."stackblur-canvas-2.5.0"
+      sources."string-width-1.0.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."svg-pathdata-5.0.5"
+      sources."svg2img-0.9.2"
+      sources."symbol-tree-3.2.4"
+      sources."tar-6.1.0"
+      (sources."tough-cookie-4.0.0" // {
+        dependencies = [
+          sources."universalify-0.1.2"
+        ];
+      })
+      sources."tr46-2.1.0"
+      sources."tspan-0.4.0"
+      sources."type-check-0.3.2"
+      sources."universalify-2.0.0"
+      sources."util-deprecate-1.0.2"
+      sources."w3c-hr-time-1.0.2"
+      sources."w3c-xmlserializer-2.0.0"
+      sources."wavedrom-2.6.9"
+      sources."webidl-conversions-6.1.0"
+      sources."whatwg-encoding-1.0.5"
+      sources."whatwg-mimetype-2.3.0"
+      sources."whatwg-url-8.5.0"
+      sources."which-module-2.0.0"
+      sources."wide-align-1.1.3"
+      sources."word-wrap-1.2.3"
+      (sources."wrap-ansi-6.2.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+        ];
+      })
+      sources."wrappy-1.0.2"
+      sources."ws-7.4.6"
+      sources."xml-name-validator-3.0.0"
+      sources."xmlchars-2.2.0"
+      sources."y18n-4.0.3"
+      sources."yallist-4.0.0"
+      (sources."yargs-16.2.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."cliui-7.0.4"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+          sources."wrap-ansi-7.0.0"
+          sources."y18n-5.0.8"
+          sources."yargs-parser-20.2.7"
+        ];
+      })
+      sources."yargs-parser-18.1.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "WaveDrom command-line interface (CLI)";
+      homepage = "https://github.com/wavedrom/cli#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   web-ext = nodeEnv.buildNodePackage {
     name = "web-ext";
     packageName = "web-ext";
-    version = "6.0.0";
+    version = "6.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/web-ext/-/web-ext-6.0.0.tgz";
-      sha512 = "djjTY89kM5ULdKYQo+6TYJSlT+0zNkanW5hQJNybOqGyovUYpH7C3Ns9Pd1cy6ApbmG2VV4Gds9u4yCSuRfHUw==";
+      url = "https://registry.npmjs.org/web-ext/-/web-ext-6.1.0.tgz";
+      sha512 = "f9sBuysFoCJAuS03wRtSBH8dPKQUZvCVT+AoqBW3tBBN6a92P0PyGF2lTwZJ5wrOOvXu7w2DvuAFOU6CnBugFw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      (sources."@babel/highlight-7.13.10" // {
+      sources."@babel/helper-validator-identifier-7.14.0"
+      (sources."@babel/highlight-7.14.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -114939,22 +116128,23 @@ in
       sources."@devicefarmer/adbkit-2.11.3"
       sources."@devicefarmer/adbkit-logcat-1.1.0"
       sources."@devicefarmer/adbkit-monkey-1.0.1"
-      (sources."@eslint/eslintrc-0.4.0" // {
+      (sources."@eslint/eslintrc-0.4.1" // {
         dependencies = [
           sources."debug-4.3.2"
+          sources."globals-12.4.0"
           sources."ms-2.1.2"
         ];
       })
-      sources."@mdn/browser-compat-data-3.1.3"
+      sources."@mdn/browser-compat-data-3.2.4"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@types/yauzl-2.9.1"
       sources."acorn-7.4.1"
       sources."acorn-jsx-5.3.1"
-      sources."addons-linter-2.21.0"
-      sources."addons-scanner-utils-4.2.0"
+      sources."addons-linter-3.2.0"
+      sources."addons-scanner-utils-4.4.0"
       sources."adm-zip-0.5.5"
       sources."ajv-6.12.6"
       sources."ajv-merge-patch-4.1.0"
@@ -114971,17 +116161,6 @@ in
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-4.3.0"
       sources."any-promise-1.3.0"
-      (sources."archiver-5.2.0" // {
-        dependencies = [
-          sources."async-3.2.0"
-        ];
-      })
-      (sources."archiver-utils-2.1.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-        ];
-      })
       sources."argparse-1.0.10"
       sources."array-differ-3.0.0"
       sources."array-filter-0.0.1"
@@ -114999,9 +116178,7 @@ in
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."balanced-match-1.0.2"
-      sources."base64-js-1.5.1"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."bl-4.1.0"
       sources."bluebird-2.9.34"
       sources."boolbase-1.0.0"
       (sources."boxen-5.0.1" // {
@@ -115010,7 +116187,6 @@ in
         ];
       })
       sources."brace-expansion-1.1.11"
-      sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
       sources."buffer-equal-constant-time-1.0.1"
       sources."buffer-from-1.1.1"
@@ -115025,8 +116201,8 @@ in
       sources."camelcase-6.2.0"
       sources."caseless-0.12.0"
       sources."chalk-4.1.0"
-      sources."cheerio-1.0.0-rc.5"
-      sources."cheerio-select-tmp-0.1.1"
+      sources."cheerio-1.0.0-rc.6"
+      sources."cheerio-select-1.4.0"
       (sources."chrome-launcher-0.13.4" // {
         dependencies = [
           sources."mkdirp-0.5.5"
@@ -115049,23 +116225,15 @@ in
       sources."combined-stream-1.0.8"
       sources."commander-2.20.3"
       sources."common-tags-1.8.0"
-      sources."compress-commons-4.1.0"
       sources."concat-map-0.0.1"
-      (sources."concat-stream-1.6.2" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-        ];
-      })
+      sources."concat-stream-1.6.2"
       sources."configstore-5.0.1"
       sources."core-js-3.8.3"
       sources."core-util-is-1.0.2"
-      sources."crc-32-1.2.0"
-      sources."crc32-stream-4.0.2"
       sources."cross-spawn-7.0.3"
       sources."crypto-random-string-2.0.0"
-      sources."css-select-3.1.2"
-      sources."css-what-4.0.0"
+      sources."css-select-4.1.2"
+      sources."css-what-5.0.1"
       sources."dashdash-1.14.1"
       sources."debounce-1.2.0"
       sources."debug-2.6.9"
@@ -115080,14 +116248,13 @@ in
       sources."defer-to-connect-1.1.3"
       sources."define-properties-1.1.3"
       sources."delayed-stream-1.0.0"
-      (sources."dispensary-0.61.0" // {
+      (sources."dispensary-0.62.0" // {
         dependencies = [
           sources."async-3.2.0"
-          sources."pino-6.9.0"
         ];
       })
       sources."doctrine-3.0.0"
-      sources."dom-serializer-1.2.0"
+      sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.0"
       sources."domutils-2.6.0"
@@ -115099,14 +116266,14 @@ in
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
-      sources."entities-2.1.0"
+      sources."entities-2.2.0"
       sources."error-ex-1.3.2"
       sources."es6-error-4.1.1"
       sources."es6-promisify-6.1.1"
       sources."escalade-3.1.1"
       sources."escape-goat-2.1.1"
       sources."escape-string-regexp-1.0.5"
-      (sources."eslint-7.21.0" // {
+      (sources."eslint-7.24.0" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
           sources."debug-4.3.2"
@@ -115142,7 +116309,6 @@ in
       sources."esutils-2.0.3"
       sources."event-to-promise-0.8.0"
       sources."execa-4.1.0"
-      sources."exit-on-epipe-1.0.1"
       sources."extend-3.0.2"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
@@ -115153,14 +116319,13 @@ in
       })
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-redact-3.0.0"
+      sources."fast-redact-3.0.1"
       sources."fast-safe-stringify-2.0.7"
       sources."fd-slicer-1.1.0"
       sources."file-entry-cache-6.0.1"
-      (sources."firefox-profile-4.1.0" // {
+      (sources."firefox-profile-4.2.0" // {
         dependencies = [
           sources."fs-extra-9.0.1"
-          sources."uuid-8.3.2"
         ];
       })
       sources."first-chunk-stream-3.0.0"
@@ -115170,17 +116335,15 @@ in
       sources."fluent-syntax-0.13.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."fs-constants-1.0.0"
       (sources."fs-extra-9.1.0" // {
         dependencies = [
           sources."universalify-2.0.0"
         ];
       })
       sources."fs.realpath-1.0.0"
-      sources."fsevents-2.3.2"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
-      (sources."fx-runner-1.0.13" // {
+      (sources."fx-runner-1.1.0" // {
         dependencies = [
           sources."commander-2.9.0"
           sources."isexe-1.1.2"
@@ -115195,7 +116358,11 @@ in
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.4.1"
       sources."global-dirs-3.0.0"
-      sources."globals-12.4.0"
+      (sources."globals-13.9.0" // {
+        dependencies = [
+          sources."type-fest-0.20.2"
+        ];
+      })
       (sources."got-9.6.0" // {
         dependencies = [
           sources."get-stream-4.1.0"
@@ -115214,9 +116381,8 @@ in
       sources."http-cache-semantics-4.1.0"
       sources."http-signature-1.2.0"
       sources."human-signals-1.1.1"
-      sources."iconv-lite-0.4.24"
-      sources."ieee754-1.2.1"
       sources."ignore-4.0.6"
+      sources."image-size-0.9.7"
       sources."immediate-3.0.6"
       sources."import-fresh-3.3.0"
       sources."import-lazy-2.1.0"
@@ -115228,9 +116394,8 @@ in
       sources."is-absolute-0.1.7"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-boolean-object-1.1.0"
       sources."is-ci-2.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -115238,13 +116403,11 @@ in
       sources."is-installed-globally-0.4.0"
       sources."is-mergeable-object-1.1.1"
       sources."is-npm-5.0.0"
-      sources."is-number-object-1.0.4"
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-relative-0.1.3"
       sources."is-stream-2.0.0"
-      sources."is-string-1.0.5"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
       sources."is-wsl-2.2.0"
@@ -115276,22 +116439,11 @@ in
         ];
       })
       sources."jsprim-1.4.1"
-      (sources."jszip-3.6.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-        ];
-      })
+      sources."jszip-3.6.0"
       sources."jwa-1.4.1"
       sources."jws-3.2.2"
       sources."keyv-3.1.0"
       sources."latest-version-5.1.0"
-      (sources."lazystream-1.0.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-        ];
-      })
       sources."lcid-3.1.1"
       sources."levn-0.4.1"
       sources."lie-3.3.0"
@@ -115299,9 +116451,6 @@ in
       sources."lines-and-columns-1.1.6"
       sources."lodash-4.17.21"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.defaults-4.2.0"
-      sources."lodash.difference-4.5.0"
-      sources."lodash.flatten-4.4.0"
       sources."lodash.includes-4.3.0"
       sources."lodash.isboolean-3.0.3"
       sources."lodash.isinteger-4.0.4"
@@ -115310,7 +116459,6 @@ in
       sources."lodash.isstring-4.0.1"
       sources."lodash.once-4.1.1"
       sources."lodash.truncate-4.4.2"
-      sources."lodash.union-4.6.0"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-6.0.0"
       (sources."make-dir-3.1.0" // {
@@ -115319,7 +116467,7 @@ in
         ];
       })
       sources."map-age-cleaner-0.1.3"
-      sources."marky-1.2.1"
+      sources."marky-1.2.2"
       sources."mem-5.1.1"
       sources."merge-stream-2.0.0"
       sources."mime-db-1.47.0"
@@ -115341,24 +116489,17 @@ in
       })
       sources."mz-2.7.0"
       sources."nan-2.14.2"
-      sources."nanoid-3.1.22"
+      sources."nanoid-3.1.23"
       sources."natural-compare-1.4.0"
       sources."natural-compare-lite-1.4.0"
       sources."ncp-2.0.0"
-      (sources."needle-2.6.0" // {
-        dependencies = [
-          sources."debug-3.2.7"
-          sources."ms-2.1.3"
-        ];
-      })
       sources."node-forge-0.10.0"
       (sources."node-notifier-9.0.0" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
       })
-      sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
+      sources."normalize-url-4.5.1"
       sources."npm-run-path-4.0.1"
       sources."nth-check-2.0.0"
       sources."oauth-sign-0.9.0"
@@ -115388,17 +116529,11 @@ in
       sources."path-key-3.1.1"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
-      (sources."pino-6.11.1" // {
-        dependencies = [
-          sources."pino-std-serializers-3.2.0"
-        ];
-      })
-      sources."pino-std-serializers-2.5.0"
-      sources."postcss-8.2.7"
+      sources."pino-6.11.2"
+      sources."pino-std-serializers-3.2.0"
+      sources."postcss-8.2.10"
       sources."prelude-ls-1.2.1"
       sources."prepend-http-2.0.0"
-      sources."printj-1.1.2"
-      sources."probe-image-size-6.0.0"
       sources."process-nextick-args-2.0.1"
       sources."progress-2.0.3"
       sources."psl-1.8.0"
@@ -115406,15 +116541,19 @@ in
       sources."punycode-2.1.1"
       sources."pupa-2.1.1"
       sources."qs-6.5.2"
-      sources."quick-format-unescaped-4.0.3"
+      sources."queue-6.0.2"
+      sources."quick-format-unescaped-4.0.1"
       (sources."rc-1.2.8" // {
         dependencies = [
           sources."ini-1.3.8"
           sources."strip-json-comments-2.0.1"
         ];
       })
-      sources."readable-stream-3.6.0"
-      sources."readdir-glob-1.1.1"
+      (sources."readable-stream-2.3.7" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
       sources."regenerator-runtime-0.13.8"
       sources."regexp.prototype.flags-1.3.1"
       sources."regexpp-3.1.0"
@@ -115440,7 +116579,7 @@ in
       sources."safe-json-stringify-1.2.0"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
-      sources."semver-7.3.4"
+      sources."semver-7.3.5"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -115462,7 +116601,6 @@ in
       sources."split-0.3.3"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.16.1"
-      sources."stream-parser-0.3.1"
       sources."stream-to-array-2.3.0"
       sources."stream-to-promise-3.0.0"
       (sources."string-width-4.2.2" // {
@@ -115483,13 +116621,14 @@ in
       sources."strip-final-newline-2.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-7.2.0"
-      (sources."table-6.1.0" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.1.0"
+          sources."ajv-8.5.0"
+          sources."ansi-regex-5.0.0"
           sources."json-schema-traverse-1.0.0"
+          sources."strip-ansi-6.0.0"
         ];
       })
-      sources."tar-stream-2.2.0"
       sources."text-table-0.2.0"
       sources."thenify-3.3.1"
       sources."thenify-all-1.6.0"
@@ -115544,7 +116683,6 @@ in
           sources."async-3.2.0"
         ];
       })
-      sources."zip-stream-4.1.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -115559,17 +116697,17 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "5.33.2";
+    version = "5.38.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-5.33.2.tgz";
-      sha512 = "X4b7F1sYBmJx8mlh2B7mV5szEkE0jYNJ2y3akgAP0ERi0vLCG1VvdsIxt8lFd4st6SUy0lf7W0CCQS566MBpJg==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-5.38.1.tgz";
+      sha512 = "OqRmYD1OJbHZph6RUMD93GcCZy4Z4wC0ele4FXyYF0J6AxO1vOSuIlU1hkS/lDlR9CDYBz64MZRmdbdnFFoT2g==";
     };
     dependencies = [
-      sources."@types/eslint-7.2.10"
+      sources."@types/eslint-7.2.12"
       sources."@types/eslint-scope-3.7.0"
-      sources."@types/estree-0.0.46"
+      sources."@types/estree-0.0.47"
       sources."@types/json-schema-7.0.7"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."@webassemblyjs/ast-1.11.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
       sources."@webassemblyjs/helper-api-error-1.11.0"
@@ -115587,17 +116725,17 @@ in
       sources."@webassemblyjs/wast-printer-1.11.0"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
-      sources."acorn-8.1.1"
+      sources."acorn-8.3.0"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
-      sources."browserslist-4.16.4"
+      sources."browserslist-4.16.6"
       sources."buffer-from-1.1.1"
-      sources."caniuse-lite-1.0.30001209"
+      sources."caniuse-lite-1.0.30001232"
       sources."chrome-trace-event-1.0.3"
       sources."colorette-1.2.2"
       sources."commander-2.20.3"
-      sources."electron-to-chromium-1.3.717"
-      sources."enhanced-resolve-5.7.0"
+      sources."electron-to-chromium-1.3.743"
+      sources."enhanced-resolve-5.8.2"
       sources."es-module-lexer-0.4.1"
       sources."escalade-3.1.1"
       sources."eslint-scope-5.1.1"
@@ -115613,7 +116751,7 @@ in
       sources."glob-to-regexp-0.4.1"
       sources."graceful-fs-4.2.6"
       sources."has-flag-4.0.0"
-      sources."jest-worker-26.6.2"
+      sources."jest-worker-27.0.2"
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
       sources."loader-runner-4.2.0"
@@ -115621,7 +116759,7 @@ in
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."neo-async-2.6.2"
-      sources."node-releases-1.1.71"
+      sources."node-releases-1.1.72"
       sources."p-limit-3.1.0"
       sources."punycode-2.1.1"
       sources."randombytes-2.1.0"
@@ -115631,17 +116769,17 @@ in
       sources."source-list-map-2.0.1"
       sources."source-map-0.6.1"
       sources."source-map-support-0.5.19"
-      sources."supports-color-7.2.0"
+      sources."supports-color-8.1.1"
       sources."tapable-2.2.0"
-      (sources."terser-5.6.1" // {
+      (sources."terser-5.7.0" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
       })
-      sources."terser-webpack-plugin-5.1.1"
+      sources."terser-webpack-plugin-5.1.3"
       sources."uri-js-4.4.1"
-      sources."watchpack-2.1.1"
-      sources."webpack-sources-2.2.0"
+      sources."watchpack-2.2.0"
+      sources."webpack-sources-2.3.0"
       sources."yocto-queue-0.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -115657,24 +116795,22 @@ in
   webpack-cli = nodeEnv.buildNodePackage {
     name = "webpack-cli";
     packageName = "webpack-cli";
-    version = "4.6.0";
+    version = "4.7.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.6.0.tgz";
-      sha512 = "9YV+qTcGMjQFiY7Nb1kmnupvb1x40lfpj8pwdO/bom+sQiP4OBMKjHq29YQrlDWDPZO9r/qWaRRywKaRDKqBTA==";
+      url = "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz";
+      sha512 = "7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==";
     };
     dependencies = [
-      sources."@discoveryjs/json-ext-0.5.2"
-      sources."@webpack-cli/configtest-1.0.2"
-      sources."@webpack-cli/info-1.2.3"
-      sources."@webpack-cli/serve-1.3.1"
-      sources."ansi-colors-4.1.1"
+      sources."@discoveryjs/json-ext-0.5.3"
+      sources."@webpack-cli/configtest-1.0.3"
+      sources."@webpack-cli/info-1.2.4"
+      sources."@webpack-cli/serve-1.4.0"
       sources."clone-deep-4.0.1"
       sources."colorette-1.2.2"
       sources."commander-7.2.0"
       sources."cross-spawn-7.0.3"
-      sources."enquirer-2.3.6"
       sources."envinfo-7.8.1"
-      sources."execa-5.0.0"
+      sources."execa-5.0.1"
       sources."fastest-levenshtein-1.0.12"
       sources."find-up-4.1.0"
       sources."function-bind-1.1.1"
@@ -115683,7 +116819,7 @@ in
       sources."human-signals-2.1.0"
       sources."import-local-3.0.2"
       sources."interpret-2.2.0"
-      sources."is-core-module-2.2.0"
+      sources."is-core-module-2.4.0"
       sources."is-plain-object-2.0.4"
       sources."is-stream-2.0.0"
       sources."isexe-2.0.0"
@@ -115699,7 +116835,7 @@ in
       sources."p-try-2.2.0"
       sources."path-exists-4.0.0"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       sources."pkg-dir-4.2.0"
       sources."rechoir-0.7.0"
       sources."resolve-1.20.0"
@@ -115718,6 +116854,7 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "CLI for webpack & friends";
+      homepage = "https://github.com/webpack/webpack-cli/tree/master/packages/webpack-cli";
       license = "MIT";
     };
     production = true;
@@ -115735,7 +116872,7 @@ in
     dependencies = [
       sources."@types/glob-7.1.3"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
+      sources."@types/node-15.6.1"
       sources."accepts-1.3.7"
       sources."ajv-6.12.6"
       sources."ajv-errors-1.0.1"
@@ -115855,9 +116992,9 @@ in
       sources."del-4.1.1"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
-      sources."detect-node-2.0.5"
+      sources."detect-node-2.1.0"
       sources."dns-equal-1.0.0"
-      sources."dns-packet-1.3.1"
+      sources."dns-packet-1.3.4"
       sources."dns-txt-2.0.2"
       sources."ee-first-1.1.1"
       sources."emoji-regex-7.0.3"
@@ -115906,7 +117043,7 @@ in
       })
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."faye-websocket-0.11.3"
+      sources."faye-websocket-0.11.4"
       sources."file-uri-to-path-1.0.0"
       (sources."fill-range-4.0.0" // {
         dependencies = [
@@ -115920,9 +117057,9 @@ in
         ];
       })
       sources."find-up-3.0.0"
-      sources."follow-redirects-1.13.3"
+      sources."follow-redirects-1.14.1"
       sources."for-in-1.0.2"
-      sources."forwarded-0.1.2"
+      sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
@@ -115932,7 +117069,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
-      sources."glob-7.1.6"
+      sources."glob-7.1.7"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -115979,7 +117116,7 @@ in
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-1.0.1"
       sources."is-extglob-2.1.1"
@@ -115994,7 +117131,7 @@ in
       sources."is-path-in-cwd-2.1.0"
       sources."is-path-inside-2.1.0"
       sources."is-plain-object-2.0.4"
-      sources."is-regex-1.1.2"
+      sources."is-regex-1.1.3"
       sources."is-stream-1.1.0"
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
@@ -116083,7 +117220,7 @@ in
       })
       sources."posix-character-classes-0.1.1"
       sources."process-nextick-args-2.0.1"
-      sources."proxy-addr-2.0.6"
+      sources."proxy-addr-2.0.7"
       sources."prr-1.0.1"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -116121,7 +117258,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."schema-utils-1.0.0"
       sources."select-hose-2.0.0"
-      sources."selfsigned-1.10.8"
+      sources."selfsigned-1.10.11"
       sources."semver-6.3.0"
       (sources."send-0.17.1" // {
         dependencies = [
@@ -116308,10 +117445,10 @@ in
   copy-webpack-plugin = nodeEnv.buildNodePackage {
     name = "copy-webpack-plugin";
     packageName = "copy-webpack-plugin";
-    version = "8.1.1";
+    version = "9.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-8.1.1.tgz";
-      sha512 = "rYM2uzRxrLRpcyPqGceRBDpxxUV8vcDqIKxAUKfcnFpcrPxT5+XvhTxv7XLjo5AvEJFPdAE3zCogG2JVahqgSQ==";
+      url = "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.0.0.tgz";
+      sha512 = "k8UB2jLIb1Jip2nZbCz83T/XfhfjX6mB1yLJNYKrpYi7FQimfOoFv/0//iT6HV1K8FwUB5yUbCcnpLebJXJTug==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.4"
@@ -116324,11 +117461,15 @@ in
       sources."braces-3.0.2"
       sources."dir-glob-3.0.1"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.5"
+      (sources."fast-glob-3.2.5" // {
+        dependencies = [
+          sources."glob-parent-5.1.2"
+        ];
+      })
       sources."fast-json-stable-stringify-2.1.0"
       sources."fastq-1.11.0"
       sources."fill-range-7.0.1"
-      sources."glob-parent-5.1.2"
+      sources."glob-parent-6.0.0"
       sources."globby-11.0.3"
       sources."ignore-5.1.8"
       sources."is-extglob-2.1.1"
@@ -116340,7 +117481,7 @@ in
       sources."normalize-path-3.0.0"
       sources."p-limit-3.1.0"
       sources."path-type-4.0.0"
-      sources."picomatch-2.2.3"
+      sources."picomatch-2.3.0"
       sources."punycode-2.1.1"
       sources."queue-microtask-1.2.3"
       sources."randombytes-2.1.0"
@@ -116367,10 +117508,10 @@ in
   webtorrent-cli = nodeEnv.buildNodePackage {
     name = "webtorrent-cli";
     packageName = "webtorrent-cli";
-    version = "3.2.1";
+    version = "3.2.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webtorrent-cli/-/webtorrent-cli-3.2.1.tgz";
-      sha512 = "DHUtDymD5ZGv/h35FY4n9YdlHoNOy07X7ibexi+19AL/+MFdGuIIQEEnJQT/wA05mrzR6ubeJmcLXXqZISwLFQ==";
+      url = "https://registry.npmjs.org/webtorrent-cli/-/webtorrent-cli-3.2.4.tgz";
+      sha512 = "fobRASGOskIqf/ciwZ3TF14RhqWga6dR8kUD6a2E0L2YAY5n1PIJv1dVPXEwvfKHBFWDo5VwIH2OAzt/Tw2poQ==";
     };
     dependencies = [
       sources."@protobufjs/aspromise-1.1.2"
@@ -116384,7 +117525,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-13.13.50"
+      sources."@types/node-15.6.1"
       sources."addr-to-ip-port-1.5.1"
       sources."airplay-js-0.3.0"
       sources."balanced-match-1.0.2"
@@ -116466,12 +117607,13 @@ in
       sources."create-torrent-4.7.0"
       sources."debug-2.6.9"
       sources."decompress-response-3.3.0"
+      sources."define-lazy-prop-2.0.0"
       (sources."dlnacasts-0.1.0" // {
         dependencies = [
           sources."mime-1.6.0"
         ];
       })
-      sources."dns-packet-1.3.1"
+      sources."dns-packet-1.3.4"
       sources."dns-txt-2.0.2"
       sources."ecstatic-4.1.4"
       sources."ee-first-1.1.1"
@@ -116489,13 +117631,13 @@ in
       })
       sources."fs.realpath-1.0.0"
       sources."get-browser-rtc-1.1.0"
-      sources."get-stdin-7.0.0"
-      sources."glob-7.1.6"
+      sources."get-stdin-8.0.0"
+      sources."glob-7.1.7"
       sources."he-1.2.0"
       sources."http-node-git://github.com/feross/http-node#webtorrent"
       sources."http-parser-js-0.4.13"
       sources."ieee754-1.2.1"
-      sources."immediate-chunk-store-2.1.1"
+      sources."immediate-chunk-store-2.2.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ip-1.1.5"
@@ -116527,11 +117669,11 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."magnet-uri-5.4.0"
+      sources."magnet-uri-6.2.0"
       sources."mdns-js-0.5.0"
       sources."mdns-js-packet-0.2.0"
       sources."mediasource-2.4.0"
-      sources."memory-chunk-store-1.3.2"
+      sources."memory-chunk-store-1.3.5"
       sources."mime-2.5.2"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
@@ -116556,13 +117698,13 @@ in
       sources."nodebmc-0.0.7"
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
-      sources."open-7.4.2"
+      sources."open-8.2.0"
       sources."package-json-versionify-1.0.4"
-      (sources."parse-torrent-7.1.3" // {
+      (sources."parse-torrent-9.1.3" // {
         dependencies = [
-          sources."decompress-response-4.2.1"
-          sources."mimic-response-2.1.0"
-          sources."simple-get-3.1.0"
+          sources."decompress-response-6.0.0"
+          sources."mimic-response-3.1.0"
+          sources."simple-get-4.0.0"
         ];
       })
       sources."path-is-absolute-1.0.1"
@@ -116575,7 +117717,7 @@ in
       })
       sources."prettier-bytes-1.0.4"
       sources."process-nextick-args-2.0.1"
-      sources."protobufjs-6.10.2"
+      sources."protobufjs-6.11.2"
       sources."pump-3.0.0"
       sources."qap-3.3.1"
       sources."queue-microtask-1.2.3"
@@ -116586,7 +117728,7 @@ in
       sources."range-parser-1.2.1"
       sources."range-slice-stream-2.0.0"
       sources."readable-stream-3.6.0"
-      sources."record-cache-1.1.0"
+      sources."record-cache-1.1.1"
       (sources."render-media-4.1.0" // {
         dependencies = [
           sources."debug-4.3.2"
@@ -116653,27 +117795,24 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."ut_pex-2.0.1"
-      sources."utf-8-validate-5.0.4"
+      sources."ut_pex-3.0.0"
+      sources."utf-8-validate-5.0.5"
       sources."util-deprecate-1.0.2"
-      sources."utp-native-2.4.0"
+      sources."utp-native-2.5.0"
       sources."videostream-3.2.2"
       sources."vlc-command-1.2.0"
-      (sources."webtorrent-0.117.0" // {
+      (sources."webtorrent-1.0.0" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."decompress-response-6.0.0"
-          sources."get-stdin-8.0.0"
-          sources."magnet-uri-6.1.1"
           sources."mimic-response-3.1.0"
           sources."ms-2.1.2"
-          sources."parse-torrent-9.1.3"
           sources."simple-get-4.0.0"
         ];
       })
       sources."winreg-1.2.4"
       sources."wrappy-1.0.2"
-      sources."ws-7.4.5"
+      sources."ws-7.4.6"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
       sources."xmldom-0.1.31"
@@ -116715,119 +117854,13 @@ in
       sha512 = "P1Ct7+DNrOcr2JAxDZ3Q5i5sx2LSveu7iLaoUL0A+YiG0GKf0l5+9j3rwMeyh6JeTL1+HfQV1rnwEvzhNIvpFw==";
     };
     dependencies = [
-      sources."@babel/runtime-7.13.10"
-      sources."@babel/runtime-corejs3-7.13.10"
-      sources."@types/json5-0.0.29"
-      sources."adverb-where-0.2.2"
-      sources."aria-query-4.2.2"
-      sources."array-includes-3.1.3"
-      sources."array.prototype.flat-1.2.4"
-      sources."array.prototype.flatmap-1.2.4"
-      sources."ast-types-flow-0.0.7"
-      sources."axe-core-4.1.4"
-      sources."axobject-query-2.2.0"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
-      sources."call-bind-1.0.2"
+      sources."adverb-where-0.2.5"
       sources."commander-2.20.3"
-      sources."concat-map-0.0.1"
-      sources."contains-path-0.1.0"
-      sources."core-js-pure-3.10.1"
-      sources."damerau-levenshtein-1.0.6"
-      sources."debug-2.6.9"
-      sources."define-properties-1.1.3"
-      sources."doctrine-1.5.0"
       sources."e-prime-0.10.4"
-      sources."emoji-regex-9.2.2"
-      sources."error-ex-1.3.2"
-      sources."es-abstract-1.18.0"
-      sources."es-to-primitive-1.2.1"
-      sources."eslint-import-resolver-node-0.3.4"
-      sources."eslint-module-utils-2.6.0"
-      sources."eslint-plugin-import-2.22.1"
-      sources."eslint-plugin-jsx-a11y-6.4.1"
-      (sources."eslint-plugin-react-7.23.2" // {
-        dependencies = [
-          sources."doctrine-2.1.0"
-          sources."resolve-2.0.0-next.3"
-        ];
-      })
-      sources."eslint-plugin-react-hooks-4.2.0"
-      sources."esutils-2.0.3"
-      sources."find-up-2.1.0"
-      sources."function-bind-1.1.1"
-      sources."get-intrinsic-1.1.1"
-      sources."graceful-fs-4.2.6"
-      sources."has-1.0.3"
-      sources."has-bigints-1.0.1"
-      sources."has-symbols-1.0.2"
-      sources."hosted-git-info-2.8.9"
-      sources."internal-slot-1.0.3"
-      sources."is-arrayish-0.2.1"
-      sources."is-bigint-1.0.1"
-      sources."is-boolean-object-1.1.0"
-      sources."is-callable-1.2.3"
-      sources."is-core-module-2.2.0"
-      sources."is-date-object-1.0.2"
-      sources."is-negative-zero-2.0.1"
-      sources."is-number-object-1.0.4"
-      sources."is-regex-1.1.2"
-      sources."is-string-1.0.5"
-      sources."is-symbol-1.0.3"
-      sources."isarray-1.0.0"
-      sources."js-tokens-4.0.0"
-      sources."json5-1.0.1"
-      sources."jsx-ast-utils-3.2.0"
-      sources."language-subtag-registry-0.3.21"
-      sources."language-tags-1.0.5"
-      sources."load-json-file-2.0.0"
-      sources."locate-path-2.0.0"
-      sources."loose-envify-1.4.0"
-      sources."minimatch-3.0.4"
-      sources."minimist-1.2.5"
-      sources."ms-2.0.0"
-      sources."no-cliches-0.3.2"
-      sources."normalize-package-data-2.5.0"
-      sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.2"
-      sources."object-keys-1.1.1"
-      sources."object.assign-4.1.2"
-      sources."object.entries-1.1.3"
-      sources."object.fromentries-2.0.4"
-      sources."object.values-1.1.3"
-      sources."p-limit-1.3.0"
-      sources."p-locate-2.0.0"
-      sources."p-try-1.0.0"
-      sources."parse-json-2.2.0"
+      sources."no-cliches-0.3.4"
       sources."passive-voice-0.1.0"
-      sources."path-exists-3.0.0"
-      sources."path-parse-1.0.6"
-      sources."path-type-2.0.0"
-      sources."pify-2.3.0"
-      sources."pkg-dir-2.0.0"
-      sources."prop-types-15.7.2"
-      sources."react-is-16.13.1"
-      sources."read-pkg-2.0.0"
-      sources."read-pkg-up-2.0.0"
-      sources."regenerator-runtime-0.13.8"
-      sources."regexp.prototype.flags-1.3.1"
-      sources."resolve-1.20.0"
-      sources."semver-5.7.1"
-      sources."side-channel-1.0.4"
-      sources."spdx-correct-3.1.1"
-      sources."spdx-exceptions-2.3.0"
-      sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
-      sources."string.prototype.matchall-4.0.4"
-      sources."string.prototype.trimend-1.0.4"
-      sources."string.prototype.trimstart-1.0.4"
-      sources."strip-bom-3.0.0"
-      sources."too-wordy-0.3.1"
-      sources."tsconfig-paths-3.9.0"
-      sources."unbox-primitive-1.0.1"
-      sources."validate-npm-package-license-3.0.4"
+      sources."too-wordy-0.3.4"
       sources."weasel-words-0.1.1"
-      sources."which-boxed-primitive-1.0.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -116842,26 +117875,28 @@ in
   yaml-language-server = nodeEnv.buildNodePackage {
     name = "yaml-language-server";
     packageName = "yaml-language-server";
-    version = "0.18.0";
+    version = "0.19.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.18.0.tgz";
-      sha512 = "Cm3UKlaEzvd+my1L4lf5NKfCqDCkdxLmuvq8jRWOPjtrGEdY41EtuY1V+lRdRREVXyurgy4NPVFWzarcl5CltQ==";
+      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.19.2.tgz";
+      sha512 = "E4yMj1oK+OCObD15LvEaHOw8y3ux7G4KrREQDsDkjqFhUm/3qCCPMh3NPXTRQyse3r6Xpsv+lAW17Qo/NKm+0g==";
     };
     dependencies = [
       sources."agent-base-4.3.0"
-      sources."argparse-1.0.10"
+      sources."argparse-2.0.1"
+      sources."balanced-match-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
-      sources."esprima-4.0.1"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
-      sources."js-yaml-3.14.1"
+      sources."js-yaml-4.1.0"
       sources."jsonc-parser-2.3.1"
+      sources."minimatch-3.0.4"
       sources."ms-2.0.0"
       sources."request-light-0.2.5"
-      sources."sprintf-js-1.0.3"
-      (sources."vscode-json-languageservice-4.0.2" // {
+      (sources."vscode-json-languageservice-4.1.4" // {
         dependencies = [
           sources."jsonc-parser-3.0.0"
           sources."vscode-nls-5.0.0"
@@ -116907,24 +117942,63 @@ in
   yo = nodeEnv.buildNodePackage {
     name = "yo";
     packageName = "yo";
-    version = "3.1.1";
+    version = "4.2.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yo/-/yo-3.1.1.tgz";
-      sha512 = "GFg4QC1xi3gkbHGGUFme8/8XPg3kDISu/qJfx56X207yuv1FSevGY/eKuym7kh0bniCB4n3rseWW+QZXPH8LIw==";
+      url = "https://registry.npmjs.org/yo/-/yo-4.2.0.tgz";
+      sha512 = "dbHkO8dp4/KDsU5V7akSWVdWB+yyfadR0q3vGxRKXxg1umiYlFUrPuiu66Iy4IpRRr2Qrqx495kInkZJIJtqmA==";
     };
     dependencies = [
-      sources."@babel/code-frame-7.12.13"
-      sources."@babel/helper-validator-identifier-7.12.11"
-      sources."@babel/highlight-7.13.10"
-      sources."@babel/runtime-7.13.10"
-      sources."@mrmlnc/readdir-enhanced-2.2.1"
-      sources."@nodelib/fs.stat-1.1.3"
+      sources."@babel/runtime-7.14.0"
+      sources."@nodelib/fs.scandir-2.1.4"
+      sources."@nodelib/fs.stat-2.0.4"
+      sources."@nodelib/fs.walk-1.2.6"
+      (sources."@npmcli/arborist-2.6.1" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
+      (sources."@npmcli/git-2.0.9" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+          sources."semver-7.3.5"
+          sources."which-2.0.2"
+        ];
+      })
+      sources."@npmcli/installed-package-contents-1.0.7"
+      sources."@npmcli/map-workspaces-1.0.3"
+      (sources."@npmcli/metavuln-calculator-1.1.1" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
+      (sources."@npmcli/move-file-1.1.2" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+        ];
+      })
+      sources."@npmcli/name-from-folder-1.0.1"
+      sources."@npmcli/node-gyp-1.0.2"
+      sources."@npmcli/promise-spawn-1.3.2"
+      sources."@npmcli/run-script-1.8.5"
       sources."@sindresorhus/is-0.7.0"
-      sources."@types/glob-7.1.3"
+      sources."@tootallnate/once-1.1.2"
+      sources."@types/expect-1.20.4"
       sources."@types/minimatch-3.0.4"
-      sources."@types/node-14.14.41"
-      sources."@types/normalize-package-data-2.4.0"
-      sources."JSONStream-1.3.5"
+      sources."@types/node-15.6.1"
+      sources."@types/vinyl-2.0.4"
+      sources."abbrev-1.1.1"
+      (sources."agent-base-6.0.2" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
+      (sources."agentkeepalive-4.1.4" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
       sources."aggregate-error-3.1.0"
       sources."ajv-6.12.6"
       sources."ansi-0.3.1"
@@ -116932,113 +118006,106 @@ in
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
+      sources."aproba-1.2.0"
       sources."are-we-there-yet-1.1.5"
-      sources."arr-diff-4.0.0"
-      sources."arr-flatten-1.1.0"
-      sources."arr-union-3.1.0"
+      (sources."argparse-1.0.10" // {
+        dependencies = [
+          sources."sprintf-js-1.0.3"
+        ];
+      })
       sources."array-differ-3.0.0"
       sources."array-find-index-1.0.2"
-      sources."array-union-1.0.2"
+      sources."array-union-2.1.0"
       sources."array-uniq-1.0.3"
-      sources."array-unique-0.3.2"
-      sources."arrify-1.0.1"
+      sources."arrify-2.0.1"
+      sources."asap-2.0.6"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
-      sources."assign-symbols-1.0.0"
       sources."astral-regex-1.0.0"
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
-      sources."atob-2.1.2"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
-      sources."axios-0.21.1"
       sources."balanced-match-1.0.2"
-      (sources."base-0.11.2" // {
+      sources."base64-js-1.5.1"
+      sources."bcrypt-pbkdf-1.0.2"
+      (sources."bin-links-2.2.1" // {
         dependencies = [
-          sources."define-property-1.0.0"
+          sources."mkdirp-1.0.4"
+          sources."write-file-atomic-3.0.3"
         ];
       })
-      sources."bcrypt-pbkdf-1.0.2"
       (sources."bin-version-2.0.0" // {
         dependencies = [
           sources."execa-0.1.1"
         ];
       })
       sources."bin-version-check-3.0.0"
-      sources."binaryextensions-2.3.0"
-      sources."boolean-3.0.3"
+      sources."binaryextensions-4.15.0"
+      (sources."bl-4.1.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."boolean-3.1.0"
       (sources."boxen-1.3.0" // {
         dependencies = [
           sources."camelcase-4.1.0"
         ];
       })
       sources."brace-expansion-1.1.11"
-      (sources."braces-2.3.2" // {
+      sources."braces-3.0.2"
+      sources."buffer-5.7.1"
+      sources."buffer-from-1.1.1"
+      sources."builtins-1.0.3"
+      (sources."cacache-15.2.0" // {
         dependencies = [
-          sources."extend-shallow-2.0.1"
+          sources."mkdirp-1.0.4"
         ];
       })
-      sources."buffer-from-1.1.1"
-      sources."cache-base-1.0.1"
       (sources."cacheable-request-2.1.4" // {
         dependencies = [
           sources."get-stream-3.0.0"
           sources."lowercase-keys-1.0.0"
         ];
       })
-      sources."call-me-maybe-1.0.1"
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
       sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
+      sources."chownr-2.0.0"
       sources."ci-info-1.6.0"
-      (sources."class-utils-0.3.6" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          (sources."is-accessor-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          (sources."is-data-descriptor-0.1.4" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          sources."is-descriptor-0.1.6"
-          sources."kind-of-5.1.0"
-        ];
-      })
       sources."clean-stack-2.2.0"
       sources."cli-boxes-1.0.0"
       sources."cli-cursor-2.1.0"
       sources."cli-list-0.2.0"
+      sources."cli-spinners-2.6.0"
       sources."cli-table-0.3.6"
       sources."cli-width-2.2.1"
-      sources."clone-2.1.2"
+      sources."clone-1.0.4"
       sources."clone-buffer-1.0.0"
-      sources."clone-deep-4.0.1"
       sources."clone-regexp-1.0.1"
       sources."clone-response-1.0.2"
       sources."clone-stats-1.0.0"
       sources."cloneable-readable-1.1.3"
+      sources."cmd-shim-4.1.0"
       sources."code-point-at-1.1.0"
-      sources."collection-visit-1.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."colors-1.0.3"
       sources."combined-stream-1.0.8"
+      sources."commander-7.1.0"
+      sources."common-ancestor-path-1.0.1"
       sources."commondir-1.0.1"
-      sources."component-emitter-1.3.0"
       sources."concat-map-0.0.1"
       sources."concat-stream-1.6.2"
       sources."conf-1.4.0"
       sources."config-chain-1.1.12"
       sources."configstore-3.1.5"
-      sources."copy-descriptor-0.1.1"
-      sources."core-js-3.10.1"
+      sources."console-control-strings-1.1.0"
+      sources."core-js-3.13.1"
       sources."core-util-is-1.0.2"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-6.0.5"
@@ -117050,127 +118117,77 @@ in
       })
       sources."crypto-random-string-1.0.0"
       sources."currently-unhandled-0.4.1"
-      sources."dargs-6.1.0"
       sources."dashdash-1.14.1"
-      sources."dateformat-3.0.3"
+      sources."dateformat-4.5.1"
       sources."debug-2.6.9"
+      sources."debuglog-1.0.1"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."default-uid-1.0.0"
+      sources."defaults-1.0.3"
       sources."define-properties-1.1.3"
-      sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
-      sources."detect-node-2.0.5"
-      sources."diff-3.5.0"
-      (sources."dir-glob-2.0.0" // {
-        dependencies = [
-          sources."path-type-3.0.0"
-        ];
-      })
+      sources."depd-1.1.2"
+      sources."detect-node-2.1.0"
+      sources."dezalgo-1.0.3"
+      sources."diff-5.0.0"
+      sources."dir-glob-3.0.1"
       sources."dot-prop-4.2.1"
       sources."downgrade-root-1.2.2"
-      sources."download-stats-0.3.4"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
-      (sources."editions-2.3.1" // {
+      sources."ejs-3.1.6"
+      sources."emoji-regex-8.0.0"
+      sources."encodeurl-1.0.2"
+      (sources."encoding-0.1.13" // {
         dependencies = [
-          sources."semver-6.3.0"
+          sources."iconv-lite-0.6.3"
         ];
       })
-      sources."ejs-2.7.4"
-      sources."emoji-regex-8.0.0"
-      sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
       sources."env-paths-1.0.0"
-      sources."errlop-2.2.0"
-      sources."error-7.2.1"
+      sources."err-code-2.0.3"
+      sources."error-10.4.0"
       sources."error-ex-1.3.2"
       sources."es6-error-4.1.1"
-      sources."es6-promise-4.2.8"
       sources."escape-string-regexp-1.0.5"
+      sources."esprima-4.0.1"
+      sources."eventemitter3-4.0.7"
       sources."execa-1.0.0"
       sources."execall-1.0.0"
       sources."exit-hook-1.1.1"
-      (sources."expand-brackets-2.1.4" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          sources."extend-shallow-2.0.1"
-          (sources."is-accessor-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          (sources."is-data-descriptor-0.1.4" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          sources."is-descriptor-0.1.6"
-          sources."kind-of-5.1.0"
-        ];
-      })
       sources."extend-3.0.2"
-      (sources."extend-shallow-3.0.2" // {
-        dependencies = [
-          sources."is-extendable-1.0.1"
-        ];
-      })
       sources."external-editor-3.1.0"
-      (sources."extglob-2.0.4" // {
-        dependencies = [
-          sources."define-property-1.0.0"
-          sources."extend-shallow-2.0.1"
-        ];
-      })
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-2.2.7"
+      sources."fast-glob-3.2.5"
       sources."fast-json-stable-stringify-2.1.0"
+      sources."fastq-1.11.0"
       sources."figures-2.0.0"
       sources."filelist-1.0.2"
-      (sources."fill-range-4.0.0" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."fill-range-7.0.1"
       sources."filter-obj-2.0.2"
       sources."find-up-2.1.0"
       sources."find-versions-2.0.0"
+      sources."find-yarn-workspace-root2-1.2.16"
       sources."first-chunk-stream-2.0.0"
-      sources."follow-redirects-1.13.3"
-      sources."for-in-1.0.2"
       sources."foreachasync-3.0.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."fragment-cache-0.2.1"
       sources."from2-2.3.0"
+      sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."fullname-4.0.1"
       sources."function-bind-1.1.1"
       sources."gauge-1.2.7"
       sources."get-stdin-4.0.1"
       sources."get-stream-4.1.0"
-      sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      (sources."gh-got-5.0.0" // {
-        dependencies = [
-          sources."get-stream-3.0.0"
-          sources."got-6.7.1"
-          sources."prepend-http-1.0.4"
-          sources."url-parse-lax-1.0.0"
-        ];
-      })
-      sources."github-username-3.0.0"
-      sources."glob-7.1.6"
-      (sources."glob-parent-3.1.0" // {
-        dependencies = [
-          sources."is-glob-3.1.0"
-        ];
-      })
-      sources."glob-to-regexp-0.3.0"
+      sources."glob-7.1.7"
+      sources."glob-parent-5.1.2"
       (sources."global-agent-2.2.0" // {
         dependencies = [
           sources."semver-7.3.5"
@@ -117179,7 +118196,7 @@ in
       sources."global-dirs-0.1.1"
       sources."global-tunnel-ng-2.7.1"
       sources."globalthis-1.0.2"
-      sources."globby-8.0.2"
+      sources."globby-11.0.3"
       (sources."got-8.3.2" // {
         dependencies = [
           sources."get-stream-3.0.0"
@@ -117187,7 +118204,7 @@ in
         ];
       })
       sources."graceful-fs-4.2.6"
-      sources."grouped-queue-1.1.0"
+      sources."grouped-queue-2.0.0"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."has-1.0.3"
@@ -117200,94 +118217,96 @@ in
       sources."has-symbol-support-x-1.4.2"
       sources."has-to-string-tag-x-1.4.1"
       sources."has-unicode-2.0.1"
-      sources."has-value-1.0.0"
-      (sources."has-values-1.0.0" // {
+      sources."hosted-git-info-2.8.9"
+      sources."http-cache-semantics-3.8.1"
+      (sources."http-proxy-agent-4.0.1" // {
         dependencies = [
-          sources."kind-of-4.0.0"
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
         ];
       })
-      sources."hosted-git-info-2.8.9"
-      sources."http-cache-semantics-3.8.1"
       sources."http-signature-1.2.0"
-      sources."human-signals-1.1.1"
+      (sources."https-proxy-agent-5.0.0" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."human-signals-2.1.0"
+      sources."humanize-ms-1.2.1"
       sources."humanize-string-1.0.2"
       sources."iconv-lite-0.4.24"
-      sources."ignore-3.3.10"
+      sources."ieee754-1.2.1"
+      sources."ignore-5.1.8"
+      sources."ignore-walk-3.0.4"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
+      sources."infer-owner-1.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."inquirer-6.5.2"
       sources."insight-0.10.3"
-      sources."interpret-1.4.0"
       (sources."into-stream-3.1.0" // {
         dependencies = [
           sources."p-is-promise-1.1.0"
         ];
       })
+      sources."ip-1.1.5"
       sources."ip-regex-2.1.0"
-      sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.2.1"
-      sources."is-buffer-1.1.6"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.2.0"
-      sources."is-data-descriptor-1.0.0"
-      sources."is-descriptor-1.0.2"
+      sources."is-core-module-2.4.0"
       sources."is-docker-1.1.0"
-      sources."is-extendable-0.1.1"
       sources."is-extglob-2.1.1"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-glob-4.0.1"
       sources."is-installed-globally-0.1.0"
+      sources."is-interactive-1.0.0"
+      sources."is-lambda-1.0.1"
       sources."is-npm-1.0.0"
-      (sources."is-number-3.0.0" // {
-        dependencies = [
-          sources."kind-of-3.2.2"
-        ];
-      })
+      sources."is-number-7.0.0"
       sources."is-obj-1.0.1"
       sources."is-object-1.0.2"
       sources."is-path-inside-1.0.1"
       sources."is-plain-obj-1.1.0"
-      sources."is-plain-object-2.0.4"
       sources."is-redirect-1.0.0"
       sources."is-regexp-1.0.0"
       sources."is-retry-allowed-1.2.0"
       sources."is-root-1.0.0"
-      sources."is-scoped-1.0.0"
+      sources."is-scoped-2.1.0"
       sources."is-stream-1.1.0"
       sources."is-supported-regexp-flag-1.0.1"
       sources."is-typedarray-1.0.0"
+      sources."is-unicode-supported-0.1.0"
       sources."is-utf8-0.2.1"
-      sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
       sources."isarray-1.0.0"
-      sources."isbinaryfile-4.0.6"
+      sources."isbinaryfile-4.0.8"
       sources."isexe-2.0.0"
-      sources."isobject-3.0.1"
       sources."isstream-0.1.2"
-      sources."istextorbinary-2.6.0"
       sources."isurl-1.0.0"
       (sources."jake-10.8.2" // {
         dependencies = [
           sources."async-0.9.2"
         ];
       })
-      sources."js-tokens-4.0.0"
+      sources."js-yaml-3.14.1"
       sources."jsbn-0.1.1"
       sources."json-buffer-3.0.0"
       sources."json-parse-better-errors-1.0.2"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
+      sources."json-stringify-nice-1.1.4"
       sources."json-stringify-safe-5.0.1"
       sources."jsonparse-1.3.1"
       sources."jsprim-1.4.1"
+      sources."just-diff-3.1.1"
+      sources."just-diff-apply-3.0.0"
       sources."keyv-3.0.0"
-      sources."kind-of-6.0.3"
       (sources."latest-version-3.1.0" // {
         dependencies = [
           sources."get-stream-3.0.0"
@@ -117297,15 +118316,19 @@ in
           sources."url-parse-lax-1.0.0"
         ];
       })
-      sources."lazy-cache-2.0.2"
-      sources."lines-and-columns-1.1.6"
       (sources."load-json-file-1.1.0" // {
         dependencies = [
           sources."pify-2.3.0"
         ];
       })
+      (sources."load-yaml-file-0.2.0" // {
+        dependencies = [
+          sources."pify-4.0.1"
+          sources."strip-bom-3.0.0"
+        ];
+      })
       sources."locate-path-2.0.0"
-      sources."locutus-2.0.14"
+      sources."locutus-2.0.15"
       sources."lodash-4.17.21"
       sources."lodash.debounce-4.0.8"
       sources."lodash.pad-4.5.1"
@@ -117317,31 +118340,21 @@ in
       sources."lru-cache-6.0.0"
       sources."macos-release-2.4.1"
       sources."make-dir-1.3.0"
+      (sources."make-fetch-happen-8.0.14" // {
+        dependencies = [
+          sources."http-cache-semantics-4.1.0"
+        ];
+      })
       sources."map-age-cleaner-0.1.3"
-      sources."map-cache-0.2.2"
       sources."map-obj-1.0.1"
-      sources."map-visit-1.0.0"
       (sources."matcher-3.0.0" // {
         dependencies = [
           sources."escape-string-regexp-4.0.0"
         ];
       })
       sources."mem-5.1.1"
-      sources."mem-fs-1.2.0"
-      (sources."mem-fs-editor-6.0.0" // {
-        dependencies = [
-          sources."dir-glob-2.2.2"
-          sources."globby-9.2.0"
-          sources."ignore-4.0.6"
-          (sources."path-type-3.0.0" // {
-            dependencies = [
-              sources."pify-3.0.0"
-            ];
-          })
-          sources."pify-4.0.1"
-          sources."slash-2.0.0"
-        ];
-      })
+      sources."mem-fs-2.2.1"
+      sources."mem-fs-editor-9.0.1"
       (sources."meow-3.7.0" // {
         dependencies = [
           sources."find-up-1.1.2"
@@ -117351,35 +118364,55 @@ in
       })
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-3.1.10"
+      sources."micromatch-4.0.4"
       sources."mime-db-1.47.0"
       sources."mime-types-2.1.30"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      (sources."mixin-deep-1.3.2" // {
+      sources."minipass-3.1.3"
+      sources."minipass-collect-1.0.2"
+      sources."minipass-fetch-1.3.3"
+      sources."minipass-flush-1.0.5"
+      sources."minipass-json-stream-1.0.1"
+      sources."minipass-pipeline-1.2.4"
+      sources."minipass-sized-1.0.3"
+      sources."minizlib-2.1.2"
+      sources."mkdirp-0.5.5"
+      (sources."mkdirp-infer-owner-2.0.0" // {
         dependencies = [
-          sources."is-extendable-1.0.1"
+          sources."mkdirp-1.0.4"
         ];
       })
-      sources."mkdirp-0.5.5"
-      sources."moment-2.29.1"
       sources."ms-2.0.0"
-      (sources."multimatch-4.0.0" // {
+      sources."multimatch-5.0.0"
+      sources."mute-stream-0.0.7"
+      sources."nice-try-1.0.5"
+      (sources."node-gyp-7.1.2" // {
         dependencies = [
-          sources."array-union-2.1.0"
-          sources."arrify-2.0.1"
+          sources."ansi-regex-2.1.1"
+          sources."env-paths-2.2.1"
+          sources."gauge-2.7.4"
+          sources."is-fullwidth-code-point-1.0.0"
+          sources."npmlog-4.1.2"
+          sources."semver-7.3.5"
+          sources."string-width-1.0.2"
+          sources."strip-ansi-3.0.1"
+          sources."which-2.0.2"
         ];
       })
-      sources."mute-stream-0.0.7"
-      sources."nanomatch-1.2.13"
-      sources."nice-try-1.0.5"
-      sources."node-fetch-2.6.1"
+      sources."nopt-5.0.0"
       sources."normalize-package-data-2.5.0"
+      sources."normalize-path-3.0.0"
       sources."normalize-url-2.0.1"
-      sources."npm-api-1.0.1"
+      sources."npm-bundled-1.1.2"
       sources."npm-conf-1.1.3"
+      (sources."npm-install-checks-4.0.0" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
       (sources."npm-keyword-5.0.0" // {
         dependencies = [
           sources."get-stream-3.0.0"
@@ -117390,27 +118423,26 @@ in
           sources."url-parse-lax-1.0.0"
         ];
       })
+      sources."npm-normalize-package-bin-1.0.1"
+      (sources."npm-package-arg-8.1.2" // {
+        dependencies = [
+          sources."hosted-git-info-4.0.2"
+          sources."semver-7.3.5"
+        ];
+      })
+      sources."npm-packlist-2.2.2"
+      (sources."npm-pick-manifest-6.1.1" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
+      sources."npm-registry-fetch-10.1.2"
       sources."npm-run-path-2.0.2"
       sources."npmlog-2.0.4"
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
-      (sources."object-copy-0.1.0" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          sources."is-accessor-descriptor-0.1.6"
-          sources."is-data-descriptor-0.1.4"
-          (sources."is-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-5.1.0"
-            ];
-          })
-          sources."kind-of-3.2.2"
-        ];
-      })
       sources."object-keys-1.1.1"
-      sources."object-visit-1.0.1"
-      sources."object.pick-1.3.0"
       sources."once-1.4.0"
       (sources."onetime-2.0.1" // {
         dependencies = [
@@ -117418,47 +118450,91 @@ in
         ];
       })
       sources."open-6.4.0"
+      (sources."ora-5.4.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.1"
+          sources."cli-cursor-3.1.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."log-symbols-4.1.0"
+          sources."onetime-5.1.2"
+          sources."restore-cursor-3.1.0"
+          sources."strip-ansi-6.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
       sources."os-homedir-1.0.2"
       sources."os-name-3.1.0"
       sources."os-shim-0.1.3"
       sources."os-tmpdir-1.0.2"
       sources."p-any-2.1.0"
-      sources."p-cancelable-2.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
       sources."p-limit-1.3.0"
       sources."p-locate-2.0.0"
+      sources."p-map-4.0.0"
+      (sources."p-queue-6.6.2" // {
+        dependencies = [
+          sources."p-timeout-3.2.0"
+        ];
+      })
       sources."p-some-4.1.0"
       sources."p-timeout-2.0.1"
       sources."p-try-1.0.0"
       sources."package-json-5.0.0"
+      (sources."pacote-11.3.3" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+        ];
+      })
       sources."pad-component-0.0.1"
-      sources."paged-request-2.0.2"
+      sources."parse-conflict-json-1.1.1"
       sources."parse-help-1.0.0"
       sources."parse-json-2.2.0"
-      sources."pascalcase-0.1.1"
       sources."passwd-user-3.0.0"
-      sources."path-dirname-1.0.2"
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
-      (sources."path-type-1.1.0" // {
-        dependencies = [
-          sources."pify-2.3.0"
-        ];
-      })
+      sources."path-parse-1.0.7"
+      sources."path-type-4.0.0"
       sources."performance-now-2.1.0"
+      sources."picomatch-2.3.0"
       sources."pify-3.0.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
+      (sources."pkg-dir-4.2.0" // {
+        dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+          sources."p-limit-2.3.0"
+          sources."p-locate-4.1.0"
+          sources."p-try-2.2.0"
+          sources."path-exists-4.0.0"
+        ];
+      })
       sources."pkg-up-2.0.0"
-      sources."posix-character-classes-0.1.1"
+      (sources."preferred-pm-3.0.3" // {
+        dependencies = [
+          sources."find-up-5.0.0"
+          sources."locate-path-6.0.0"
+          sources."p-limit-3.1.0"
+          sources."p-locate-5.0.0"
+          sources."path-exists-4.0.0"
+        ];
+      })
       sources."prepend-http-2.0.0"
       sources."pretty-bytes-5.6.0"
       sources."process-nextick-args-2.0.1"
+      sources."promise-all-reject-late-1.0.1"
+      sources."promise-call-limit-1.0.1"
+      sources."promise-inflight-1.0.1"
+      sources."promise-retry-2.0.1"
       sources."proto-list-1.2.4"
       sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
@@ -117466,13 +118542,16 @@ in
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."query-string-5.1.1"
+      sources."queue-microtask-1.2.3"
       sources."rc-1.2.8"
-      (sources."read-chunk-3.2.0" // {
+      sources."read-cmd-shim-2.0.0"
+      sources."read-package-json-fast-2.0.2"
+      (sources."read-pkg-1.1.0" // {
         dependencies = [
-          sources."pify-4.0.1"
+          sources."path-type-1.1.0"
+          sources."pify-2.3.0"
         ];
       })
-      sources."read-pkg-1.1.0"
       (sources."read-pkg-up-4.0.0" // {
         dependencies = [
           sources."find-up-3.0.0"
@@ -117492,19 +118571,16 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      sources."rechoir-0.6.2"
+      sources."readdir-scoped-modules-1.1.0"
       (sources."redent-1.0.0" // {
         dependencies = [
           sources."indent-string-2.1.0"
         ];
       })
       sources."regenerator-runtime-0.13.8"
-      sources."regex-not-1.0.2"
       sources."registry-auth-token-3.4.0"
       sources."registry-url-3.1.0"
       sources."remove-trailing-separator-1.1.0"
-      sources."repeat-element-1.1.4"
-      sources."repeat-string-1.6.1"
       sources."repeating-2.0.1"
       sources."replace-ext-1.0.1"
       (sources."request-2.88.2" // {
@@ -117513,20 +118589,20 @@ in
         ];
       })
       sources."resolve-1.20.0"
-      sources."resolve-url-0.2.1"
       sources."responselike-1.0.2"
       sources."restore-cursor-2.0.0"
-      sources."ret-0.1.15"
-      sources."rimraf-2.7.1"
+      sources."retry-0.12.0"
+      sources."reusify-1.0.4"
+      sources."rimraf-3.0.2"
       sources."roarr-2.15.4"
       sources."root-check-1.0.0"
       sources."run-async-2.4.1"
+      sources."run-parallel-1.2.0"
       sources."rx-4.1.0"
       sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
-      sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
-      sources."scoped-regex-1.0.0"
+      sources."scoped-regex-2.1.0"
       sources."semver-5.7.1"
       sources."semver-compare-1.0.0"
       sources."semver-diff-2.1.0"
@@ -117537,83 +118613,39 @@ in
           sources."type-fest-0.13.1"
         ];
       })
-      sources."set-getter-0.1.0"
-      (sources."set-value-2.0.1" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
-      sources."shallow-clone-3.0.1"
+      sources."set-blocking-2.0.0"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
-      sources."shelljs-0.8.4"
       sources."signal-exit-3.0.3"
-      sources."slash-1.0.0"
-      (sources."snapdragon-0.8.2" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          sources."extend-shallow-2.0.1"
-          (sources."is-accessor-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          (sources."is-data-descriptor-0.1.4" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          sources."is-descriptor-0.1.6"
-          sources."kind-of-5.1.0"
-        ];
-      })
-      (sources."snapdragon-node-2.1.1" // {
+      sources."slash-3.0.0"
+      sources."smart-buffer-4.1.0"
+      sources."socks-2.6.1"
+      (sources."socks-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."define-property-1.0.0"
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
         ];
       })
-      (sources."snapdragon-util-3.0.1" // {
+      sources."sort-keys-2.0.0"
+      (sources."sort-on-3.0.0" // {
         dependencies = [
-          sources."kind-of-3.2.2"
+          sources."arrify-1.0.1"
         ];
       })
-      sources."sort-keys-2.0.0"
-      sources."sort-on-3.0.0"
-      sources."source-map-0.5.7"
-      sources."source-map-resolve-0.5.3"
-      sources."source-map-url-0.4.1"
       sources."spawn-sync-1.0.15"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
-      sources."split-string-3.1.0"
+      sources."spdx-license-ids-3.0.9"
       sources."sprintf-js-1.1.2"
       sources."sshpk-1.16.1"
-      (sources."static-extend-0.1.2" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          (sources."is-accessor-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          (sources."is-data-descriptor-0.1.4" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          sources."is-descriptor-0.1.6"
-          sources."kind-of-5.1.0"
-        ];
-      })
+      sources."ssri-8.0.1"
       sources."strict-uri-encode-1.1.0"
       (sources."string-length-2.0.0" // {
         dependencies = [
           sources."strip-ansi-4.0.0"
         ];
       })
-      sources."string-template-0.2.1"
       (sources."string-width-2.1.1" // {
         dependencies = [
           sources."strip-ansi-4.0.0"
@@ -117667,6 +118699,11 @@ in
         ];
       })
       sources."taketalk-1.0.0"
+      (sources."tar-6.1.0" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+        ];
+      })
       (sources."term-size-1.2.0" // {
         dependencies = [
           sources."cross-spawn-5.1.0"
@@ -117677,20 +118714,14 @@ in
         ];
       })
       sources."text-table-0.2.0"
-      sources."textextensions-2.6.0"
+      sources."textextensions-5.12.0"
       sources."through-2.3.8"
-      sources."through2-3.0.2"
       sources."timed-out-4.0.1"
       sources."titleize-1.0.1"
       sources."tmp-0.0.33"
-      (sources."to-object-path-0.3.0" // {
-        dependencies = [
-          sources."kind-of-3.2.2"
-        ];
-      })
-      sources."to-regex-3.0.2"
-      sources."to-regex-range-2.1.1"
+      sources."to-regex-range-5.0.1"
       sources."tough-cookie-3.0.1"
+      sources."treeverse-1.0.4"
       sources."trim-newlines-1.0.0"
       sources."tslib-1.14.1"
       sources."tunnel-0.0.6"
@@ -117699,47 +118730,44 @@ in
       sources."twig-1.15.4"
       sources."type-fest-0.3.1"
       sources."typedarray-0.0.6"
-      sources."union-value-1.0.1"
+      sources."typedarray-to-buffer-3.1.5"
+      sources."unique-filename-1.1.1"
+      sources."unique-slug-2.0.2"
       sources."unique-string-1.0.0"
-      (sources."unset-value-1.0.0" // {
-        dependencies = [
-          (sources."has-value-0.3.1" // {
-            dependencies = [
-              sources."isobject-2.1.0"
-            ];
-          })
-          sources."has-values-0.1.4"
-        ];
-      })
-      sources."untildify-3.0.3"
+      sources."untildify-4.0.0"
       sources."unzip-response-2.0.1"
       sources."update-notifier-2.5.0"
       sources."uri-js-4.4.1"
-      sources."urix-0.1.0"
       sources."url-parse-lax-3.0.0"
       sources."url-to-options-1.0.1"
-      sources."use-3.1.1"
       sources."user-home-2.0.0"
       sources."util-deprecate-1.0.2"
       sources."uuid-3.4.0"
       sources."validate-npm-package-license-3.0.4"
+      sources."validate-npm-package-name-3.0.0"
       sources."verror-1.10.0"
-      sources."vinyl-2.2.1"
+      (sources."vinyl-2.2.1" // {
+        dependencies = [
+          sources."clone-2.1.2"
+        ];
+      })
       (sources."vinyl-file-3.0.0" // {
         dependencies = [
           sources."pify-2.3.0"
         ];
       })
       sources."walk-2.3.14"
+      sources."walk-up-path-1.0.0"
+      sources."wcwidth-1.0.1"
       sources."which-1.3.1"
-      sources."widest-line-2.0.1"
-      sources."windows-release-3.3.3"
-      (sources."with-open-file-0.1.7" // {
+      (sources."which-pm-2.0.0" // {
         dependencies = [
-          sources."p-try-2.2.0"
-          sources."pify-4.0.1"
+          sources."path-exists-4.0.0"
         ];
       })
+      sources."wide-align-1.1.3"
+      sources."widest-line-2.0.1"
+      sources."windows-release-3.3.3"
       (sources."wrap-ansi-2.1.0" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
@@ -117759,46 +118787,57 @@ in
         ];
       })
       sources."yeoman-doctor-4.0.0"
-      (sources."yeoman-environment-2.10.3" // {
+      (sources."yeoman-environment-3.4.1" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
-          sources."ansi-regex-5.0.0"
+          sources."ansi-regex-2.1.1"
           sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.1"
           sources."cli-cursor-3.1.0"
           sources."cli-width-3.0.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."cross-spawn-7.0.3"
-          sources."debug-3.2.7"
-          sources."execa-4.1.0"
-          sources."figures-3.2.0"
-          sources."get-stream-5.2.0"
-          sources."has-flag-4.0.0"
-          (sources."inquirer-7.3.3" // {
+          sources."debug-4.3.2"
+          sources."escape-string-regexp-4.0.0"
+          sources."execa-5.0.1"
+          (sources."figures-3.2.0" // {
             dependencies = [
-              sources."chalk-4.1.0"
-              sources."strip-ansi-6.0.0"
+              sources."escape-string-regexp-1.0.5"
+            ];
+          })
+          sources."find-up-5.0.0"
+          (sources."gauge-2.7.4" // {
+            dependencies = [
+              sources."is-fullwidth-code-point-1.0.0"
+              sources."string-width-1.0.2"
+              sources."strip-ansi-3.0.1"
             ];
           })
+          sources."get-stream-6.0.1"
+          sources."has-flag-4.0.0"
+          sources."inquirer-8.1.0"
           sources."is-fullwidth-code-point-3.0.0"
           sources."is-stream-2.0.0"
-          sources."ms-2.1.3"
+          sources."locate-path-6.0.0"
+          sources."log-symbols-4.1.0"
+          sources."ms-2.1.2"
           sources."mute-stream-0.0.8"
           sources."npm-run-path-4.0.1"
+          sources."npmlog-4.1.2"
           sources."onetime-5.1.2"
+          sources."p-limit-3.1.0"
+          sources."p-locate-5.0.0"
+          sources."path-exists-4.0.0"
           sources."path-key-3.1.1"
           sources."restore-cursor-3.1.0"
           sources."semver-7.3.5"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
-          (sources."string-width-4.2.2" // {
-            dependencies = [
-              sources."strip-ansi-6.0.0"
-            ];
-          })
-          (sources."strip-ansi-4.0.0" // {
+          sources."string-width-4.2.2"
+          (sources."strip-ansi-6.0.0" // {
             dependencies = [
-              sources."ansi-regex-3.0.0"
+              sources."ansi-regex-5.0.0"
             ];
           })
           sources."supports-color-7.2.0"
@@ -117806,45 +118845,7 @@ in
           sources."which-2.0.2"
         ];
       })
-      (sources."yeoman-generator-4.13.0" // {
-        dependencies = [
-          sources."debug-4.3.2"
-          sources."diff-4.0.2"
-          sources."dir-glob-2.2.2"
-          sources."ejs-3.1.6"
-          sources."find-up-3.0.0"
-          sources."globby-9.2.0"
-          sources."ignore-4.0.6"
-          sources."locate-path-3.0.0"
-          (sources."make-dir-3.1.0" // {
-            dependencies = [
-              sources."semver-6.3.0"
-            ];
-          })
-          (sources."mem-fs-editor-7.1.0" // {
-            dependencies = [
-              sources."rimraf-3.0.2"
-            ];
-          })
-          sources."mkdirp-1.0.4"
-          sources."ms-2.1.2"
-          sources."p-limit-2.3.0"
-          sources."p-locate-3.0.0"
-          sources."p-try-2.2.0"
-          sources."parse-json-5.2.0"
-          (sources."path-type-3.0.0" // {
-            dependencies = [
-              sources."pify-3.0.0"
-            ];
-          })
-          sources."pify-4.0.1"
-          sources."read-pkg-5.2.0"
-          sources."read-pkg-up-5.0.0"
-          sources."semver-7.3.5"
-          sources."slash-2.0.0"
-          sources."type-fest-0.6.0"
-        ];
-      })
+      sources."yocto-queue-0.1.0"
       (sources."yosay-2.0.2" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ansiterminal/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ansiterminal/default.nix
index 53b02a453a0e..edd40fb4df29 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ansiterminal/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ansiterminal/default.nix
@@ -1,36 +1,29 @@
-{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild }:
+{ lib, buildDunePackage, fetchFromGitHub }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
+  pname = "ANSITerminal";
+  version = "0.8.2";
 
-  version = "0.7";
+  useDune2 = true;
 
-  name = "ocaml${ocaml.version}-ansiterminal-${version}";
-
-  src = fetchurl {
-    url = "https://github.com/Chris00/ANSITerminal/releases/download/${version}/ANSITerminal-${version}.tar.gz";
-    sha256 = "03pqfxvw9pa9720l8i5fgxky1qx70kw6wxbczd5i50xi668lh0i9";
+  src = fetchFromGitHub {
+    owner = "Chris00";
+    repo = pname;
+    rev = version;
+    sha256 = "0dyjischrgwlxqz1p5zbqq76jvk6pl1qj75i7ydhijssr9pj278d";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
-
-  buildPhase = "ocaml setup.ml -build";
-
-  installPhase = "ocaml setup.ml -install";
-
-  createFindlibDestdir = true;
+  doCheck = true;
 
   meta = with lib; {
-    homepage = "https://github.com/Chris00/ANSITerminal";
     description = "A module allowing to use the colors and cursor movements on ANSI terminals";
     longDescription = ''
       ANSITerminal is a module allowing to use the colors and cursor
       movements on ANSI terminals. It also works on the windows shell (but
       this part is currently work in progress).
     '';
+    inherit (src.meta) homepage;
     license = licenses.lgpl3;
-    platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.jirkamarsik ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/atd/default.nix b/nixpkgs/pkgs/development/ocaml-modules/atd/default.nix
index 2f85221e539c..de6ade61518a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/atd/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/atd/default.nix
@@ -1,4 +1,4 @@
-{ lib, menhir, easy-format, fetchurl, buildDunePackage, which, re }:
+{ lib, menhir, easy-format, fetchurl, buildDunePackage, which, re, nixosTests }:
 
 buildDunePackage rec {
   pname = "atd";
@@ -18,6 +18,10 @@ buildDunePackage rec {
 
   doCheck = true;
 
+  passthru.tests = {
+    smoke-test = nixosTests.atd;
+  };
+
   meta = with lib; {
     homepage = "https://github.com/mjambon/atd";
     description = "Syntax for cross-language type definitions";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/awa/default.nix b/nixpkgs/pkgs/development/ocaml-modules/awa/default.nix
index 49d614cda884..14f99bb6f8db 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/awa/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/awa/default.nix
@@ -8,14 +8,14 @@
 
 buildDunePackage rec {
   pname = "awa";
-  version = "0.0.1";
+  version = "0.0.3";
 
   minimumOCamlVersion = "4.07";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/awa-ssh/releases/download/v${version}/awa-v${version}.tbz";
-    sha256 = "c1d604645517b191184a5800f5c48a6a9a3e5a2fce4a0e2ecfeee74586301400";
+    sha256 = "5a7927363ffe672cccf12d5425386e84f6f553a17ffec2b01ae5dc28180c831a";
   };
 
   nativeBuildInputs = [ ppx_sexp_conv ppx_cstruct ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bap/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bap/default.nix
index 94f254a2edfb..c1cb7de2d188 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/bap/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/bap/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
     substituteInPlace oasis/elf-loader --replace bitstring.ppx ppx_bitstring
   '';
 
-  configureFlags = [ "--enable-everything ${disableIda}" "--with-llvm-config=${llvm}/bin/llvm-config" ];
+  configureFlags = [ "--enable-everything ${disableIda}" "--with-llvm-config=${llvm.dev}/bin/llvm-config" ];
 
   meta = with lib; {
     description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages.";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
index eba010819949..ddeda86e9bf7 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
@@ -1,27 +1,28 @@
-{ lib, fetchFromGitHub, buildDunePackage, cmdliner, ocaml-migrate-parsetree, ppx_tools_versioned }:
+{ lib, fetchFromGitHub, buildDunePackage, cmdliner, ppxlib }:
 
 buildDunePackage rec {
   pname = "bisect_ppx";
-  version = "2.5.0";
-
-  useDune2 = true;
+  version = "2.6.1";
 
   src = fetchFromGitHub {
     owner = "aantron";
     repo = "bisect_ppx";
     rev = version;
-    sha256 = "0w2qd1myvh333jvkf8hgrqzl8ns4xgfggk4frf1ij3jyc7qc0868";
+    sha256 = "sha256-YeLDlH3mUbVEY4OmzlrvSwVUav3uMtSsTFlOsQKnz84=";
   };
 
+  minimumOCamlVersion = "4.08";
+  useDune2 = true;
+
   buildInputs = [
     cmdliner
-    ocaml-migrate-parsetree
-    ppx_tools_versioned
+    ppxlib
   ];
 
-  meta = {
-    description = "Code coverage for OCaml";
-    license = lib.licenses.mit;
+  meta = with lib; {
+    description = "Bisect_ppx is a code coverage tool for OCaml and Reason. It helps you test thoroughly by showing what's not tested.";
+    license = licenses.mit;
     homepage = "https://github.com/aantron/bisect_ppx";
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ca-certs-nss/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ca-certs-nss/default.nix
new file mode 100644
index 000000000000..5e6691a9feba
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ca-certs-nss/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, buildDunePackage
+, fetchurl
+, rresult
+, mirage-crypto
+, mirage-clock
+, x509
+, logs
+, fmt
+, hex
+, bos
+, astring
+, cmdliner
+, alcotest
+}:
+
+buildDunePackage rec {
+  pname = "ca-certs-nss";
+  version = "3.64.0.1";
+
+  minimumOCamlVersion = "4.07";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/ca-certs-nss/releases/download/v${version}/ca-certs-nss-v${version}.tbz";
+    sha256 = "909c64076491647471f785527bfdd9a886a34504edabf88542b43f27b86067f9";
+  };
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    rresult
+    mirage-crypto
+    mirage-clock
+    x509
+  ];
+
+  buildInputs = [
+    logs
+    fmt
+    hex
+    bos
+    astring
+    cmdliner
+  ];
+
+  doCheck = true;
+  checkInputs = [ alcotest ];
+
+  meta = with lib; {
+    license = licenses.isc;
+    description = "X.509 trust anchors extracted from Mozilla's NSS";
+    maintainers = [ maintainers.sternenseemann ];
+    homepage = "https://github.com/mirage/ca-certs-nss";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
index dacc181f751c..acf869dbd275 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
@@ -1,24 +1,28 @@
 { lib, buildDunePackage, fetchurl
 , bos, fpath, rresult, ptime, mirage-crypto, x509, astring, logs
+, cacert, alcotest
 }:
 
 buildDunePackage rec {
   pname = "ca-certs";
-  version = "0.2.0";
+  version = "0.2.1";
 
   minimumOCamlVersion = "4.07";
 
   src = fetchurl {
     url = "https://github.com/mirage/ca-certs/releases/download/v${version}/ca-certs-v${version}.tbz";
-    sha256 = "15jfb5zvahs90jsfs7ridqihlka5198z2xrvplj8ddchxfmpx868";
+    sha256 = "d43109496a5129feff967d557c556af96f8b10456896a405c43b7cf0c35d0af3";
   };
 
   useDune2 = true;
 
   propagatedBuildInputs = [ bos fpath rresult ptime mirage-crypto x509 astring logs ];
 
-  # tests need access to network and systemwide ca cert chain
-  doCheck = false;
+  doCheck = true;
+  checkInputs = [
+    cacert    # for /etc/ssl/certs/ca-bundle.crt
+    alcotest
+  ];
 
   meta = with lib; {
     description = "Detect root CA certificates from the operating system";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cairo2/default.nix b/nixpkgs/pkgs/development/ocaml-modules/cairo2/default.nix
index 020006b19c5d..0a9922f67885 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cairo2/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cairo2/default.nix
@@ -1,18 +1,17 @@
-{ stdenv, lib, fetchurl, buildDunePackage, ocaml, dune-configurator
-, pkg-config, cairo
-}:
+{ stdenv, lib, fetchurl, buildDunePackage, ocaml, dune-configurator, pkg-config, cairo }:
 
 buildDunePackage rec {
   pname = "cairo2";
-  version = "0.6.1";
-
-  useDune2 = true;
+  version = "0.6.2";
 
   src = fetchurl {
     url = "https://github.com/Chris00/ocaml-cairo/releases/download/${version}/cairo2-${version}.tbz";
-    sha256 = "1ik4qf4b9443sliq2z7x9acd40rmzvyzjh3bh98wvjklxbb84a9i";
+    sha256 = "sha256-a7P1kiVmIwT6Fhtwxs29ffgO4iexsulxUoc9cnJmEK4=";
   };
 
+  minimalOCamlVersion = "4.02";
+  useDune2 = true;
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ cairo dune-configurator ];
 
@@ -20,7 +19,7 @@ buildDunePackage rec {
   # https://github.com/Chris00/ocaml-cairo/issues/19
   || lib.versionAtLeast ocaml.version "4.10");
 
-  meta = {
+  meta = with lib; {
     homepage = "https://github.com/Chris00/ocaml-cairo";
     description = "Binding to Cairo, a 2D Vector Graphics Library";
     longDescription = ''
@@ -29,7 +28,7 @@ buildDunePackage rec {
       the X Window System, Quartz, Win32, image buffers, PostScript, PDF,
       and SVG file output.
     '';
-    license = lib.licenses.lgpl3;
-    maintainers = with lib.maintainers; [ jirkamarsik vbgl ];
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ jirkamarsik vbgl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.0.nix b/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.0.nix
deleted file mode 100644
index 26735b1c5d7f..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.0.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv, fetchurl, omake, ocaml, libtiff, libjpeg, libpng, giflib, findlib, libXpm, freetype, graphicsmagick, ghostscript }:
-
-let
-  pname = "camlimages";
-  version = "4.0.1";
-in
-
-stdenv.mkDerivation {
-  name = "${pname}-${version}";
-
-  src = fetchurl {
-    url = "https://bitbucket.org/camlspotter/camlimages/get/v4.0.1.tar.gz";
-    sha256 = "b40237c1505487049799a7af296eb3996b3fa08eab94415546f46d61355747c4";
-  };
-
-  buildInputs = [ ocaml omake findlib graphicsmagick ghostscript ];
-
-  propagatedBuildInputs = [libtiff libjpeg libpng giflib freetype libXpm ];
-
-  createFindlibDestdir = true;
-
-  preConfigure = ''
-    rm ./configure
-  '';
-
-  buildPhase = ''
-    omake
-  '';
-
-  installPhase = ''
-    omake install
-  '';
-
-  meta = with lib; {
-    branch = "4.0";
-    homepage = "https://bitbucket.org/camlspotter/camlimages";
-    description = "OCaml image processing library";
-    license = licenses.lgpl2;
-    maintainers = [ maintainers.vbgl ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.1.2.nix b/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.1.2.nix
new file mode 100644
index 000000000000..dba303afdf24
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/camlimages/4.1.2.nix
@@ -0,0 +1,37 @@
+{ lib, stdenv, fetchFromGitLab, fetchpatch, omake, ocaml, findlib
+, graphicsmagick, ghostscript
+, freetype, giflib, libjpeg, libpng, libtiff, libXpm
+}:
+
+stdenv.mkDerivation rec {
+  pname = "camlimages";
+  version = "4.1.2";
+
+  src = fetchFromGitLab {
+    owner = "camlspotter";
+    repo = "camlimages";
+    rev = "98661d507e12ce91a51295a50f244cb8265b4439"; # no tag
+    sha256 = "0kpxj8wm2m17wjq217jzjpfgv1d7sp4w1yd1gi8ipn5rj4sid2j8";
+  };
+
+  buildInputs = [ ocaml omake findlib graphicsmagick ghostscript ];
+  propagatedBuildInputs = [ libtiff libjpeg libpng giflib freetype libXpm ];
+
+  createFindlibDestdir = true;
+
+  buildPhase = ''
+    omake
+  '';
+
+  installPhase = ''
+    omake install
+  '';
+
+  meta = with lib; {
+    branch = "4.1";
+    homepage = "https://gitlab.com/camlspotter/camlimages";
+    description = "OCaml image processing library";
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.vbgl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/caqti/default.nix b/nixpkgs/pkgs/development/ocaml-modules/caqti/default.nix
index 6df0af597c21..105a6a9dfe18 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/caqti/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/caqti/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "caqti";
-  version = "1.3.0";
+  version = "1.5.1";
   useDune2 = true;
 
   minimumOCamlVersion = "4.04";
@@ -11,7 +11,7 @@ buildDunePackage rec {
     owner = "paurkedal";
     repo = "ocaml-${pname}";
     rev = "v${version}";
-    sha256 = "1ksjchfjnh059wvd95my1sv9b0ild0dfaiynbf2xsaz7zg1y4xmw";
+    sha256 = "1vl61kdyj89whc3mh4k9bis6rbj9x2scf6hnv9afyalp4j65sqx1";
   };
 
   buildInputs = [ cppo ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/carton/default.nix b/nixpkgs/pkgs/development/ocaml-modules/carton/default.nix
index 31b864e29d32..c10537d5d506 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/carton/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/carton/default.nix
@@ -7,19 +7,19 @@
 
 buildDunePackage rec {
   pname = "carton";
-  version = "0.4.0";
+  version = "0.4.1";
 
   useDune2 = true;
   minimumOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/${pname}-${pname}-v${version}.tbz";
-    sha256 = "777f9692b83cd63570c17527a32c5045818ab9242d923cbbde72fc23d0da0140";
+    sha256 = "d16aad5560d9ab1e3b4d93d2e8fdea638c216ff47338fb630a8aefd22b452665";
   };
 
   # remove changelogs for mimic and the git* packages
   postPatch = ''
-    rm CHANGES.md CHANGES.mimic.md
+    rm CHANGES.md
   '';
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/ocaml-modules/checkseum/default.nix b/nixpkgs/pkgs/development/ocaml-modules/checkseum/default.nix
index 810099810470..527afec33eb3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/checkseum/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/checkseum/default.nix
@@ -1,23 +1,46 @@
-{ lib, fetchurl, buildDunePackage, dune-configurator
+{ lib, fetchurl, buildDunePackage, dune-configurator, pkg-config
 , bigarray-compat, optint
-, fmt, rresult
-, alcotest
+, fmt, rresult, bos, fpath, astring, alcotest
+, withFreestanding ? false
+, ocaml-freestanding
 }:
 
 buildDunePackage rec {
-  version = "0.2.1";
+  version = "0.3.1";
   pname = "checkseum";
 
   useDune2 = true;
 
+  minimumOCamlVersion = "4.07";
+
   src = fetchurl {
     url = "https://github.com/mirage/checkseum/releases/download/v${version}/checkseum-v${version}.tbz";
-    sha256 = "1swb44c64pcs4dh9ka9lig6d398qwwkd3kkiajicww6qk7jbh3n5";
+    sha256 = "b9e4d054e17618b1faed8c0eb15afe0614b2f093e58b59a180bda4500a5d2da1";
   };
 
-  buildInputs = [ dune-configurator fmt rresult ];
-  propagatedBuildInputs = [ bigarray-compat optint ];
-  checkInputs = lib.optionals doCheck [ alcotest ];
+  patches = [
+    ./makefile-no-opam.patch
+  ];
+
+  nativeBuildInputs = [
+    dune-configurator
+    pkg-config
+  ];
+  propagatedBuildInputs = [
+    bigarray-compat
+    optint
+  ] ++ lib.optionals withFreestanding [
+    ocaml-freestanding
+  ];
+
+  checkInputs = [
+    alcotest
+    bos
+    astring
+    fmt
+    fpath
+    rresult
+  ];
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/checkseum/makefile-no-opam.patch b/nixpkgs/pkgs/development/ocaml-modules/checkseum/makefile-no-opam.patch
new file mode 100644
index 000000000000..49fb41b2e008
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/checkseum/makefile-no-opam.patch
@@ -0,0 +1,12 @@
+diff --git a/freestanding/Makefile b/freestanding/Makefile
+index d535050..bb286bd 100644
+--- a/freestanding/Makefile
++++ b/freestanding/Makefile
+@@ -1,4 +1,6 @@
+-PKG_CONFIG_PATH := $(shell opam config var prefix)/lib/pkgconfig
++ifneq (, $(shell command -v opam))
++PKG_CONFIG_PATH ?= $(shell opam var prefix)/lib/pkgconfig
++endif
+ 
+ EXISTS := $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --exists ocaml-freestanding; echo $$?)
+ 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cohttp/async.nix b/nixpkgs/pkgs/development/ocaml-modules/cohttp/async.nix
index 21e22533f1b2..060d2c6fb6a8 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cohttp/async.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cohttp/async.nix
@@ -1,22 +1,60 @@
-{ lib, buildDunePackage, async, cohttp, conduit-async, uri, ppx_sexp_conv
-, logs, magic-mime }:
+{ lib
+, buildDunePackage
+, ppx_sexp_conv
+, base
+, async
+, async_kernel
+, async_unix
+, cohttp
+, conduit-async
+, uri
+, uri-sexp
+, logs
+, fmt
+, sexplib0
+, ipaddr
+, magic-mime
+, ounit
+, mirage-crypto
+, core
+}:
 
-if !lib.versionAtLeast cohttp.version "0.99" then
-  cohttp
-else if !lib.versionAtLeast async.version "0.13" then
-  throw "cohttp-async needs async-0.13 (hence OCaml >= 4.08)"
-else
+buildDunePackage {
+  pname = "cohttp-async";
 
-  buildDunePackage {
-    pname = "cohttp-async";
-    useDune2 = true;
-    inherit (cohttp) version src;
+  inherit (cohttp)
+    version
+    src
+    minimumOCamlVersion
+    useDune2
+    ;
 
-    buildInputs = [ ppx_sexp_conv ];
+  buildInputs = [ ppx_sexp_conv ];
 
-    propagatedBuildInputs = [ async cohttp conduit-async logs magic-mime uri ];
+  propagatedBuildInputs = [
+    cohttp
+    conduit-async
+    async_kernel
+    async_unix
+    async
+    base
+    magic-mime
+    logs
+    fmt
+    sexplib0
+    uri
+    uri-sexp
+    ipaddr
+  ];
 
-    meta = cohttp.meta // {
-      description = "CoHTTP implementation for the Async concurrency library";
-    };
-  }
+  doCheck = true;
+  checkInputs = [
+    ounit
+    mirage-crypto
+    core
+  ];
+
+  meta = cohttp.meta // {
+    description = "CoHTTP implementation for the Async concurrency library";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cohttp/default.nix b/nixpkgs/pkgs/development/ocaml-modules/cohttp/default.nix
index 1cbc43bc2804..c1dc973d0eea 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -1,25 +1,24 @@
 { lib, fetchurl, buildDunePackage
-, ppx_fields_conv, ppx_sexp_conv, stdlib-shims
-, base64, fieldslib, jsonm, re, stringext, uri-sexp
+, ppx_sexp_conv, base64, jsonm, re, stringext, uri-sexp
 , ocaml, fmt, alcotest
 }:
 
 buildDunePackage rec {
   pname = "cohttp";
-  version = "2.5.5";
+  version = "4.0.0";
 
   useDune2 = true;
 
-  minimumOCamlVersion = "4.04.1";
+  minimumOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-cohttp/releases/download/v${version}/cohttp-v${version}.tbz";
-    sha256 = "0ywmql4lp6ps2gd064ixbjzsdnnn5vk3pipm005sswl553qqwaim";
+    sha256 = "bd7aa4cd2c82744990ed7c49e3ee7a40324c64cb3d8509804809155e2bacd1d2";
   };
 
-  buildInputs = [ jsonm ppx_fields_conv ppx_sexp_conv ];
+  buildInputs = [ jsonm ppx_sexp_conv ];
 
-  propagatedBuildInputs = [ base64 fieldslib re stringext uri-sexp stdlib-shims ];
+  propagatedBuildInputs = [ base64 re stringext uri-sexp ];
 
   doCheck = lib.versionAtLeast ocaml.version "4.05";
   checkInputs = [ fmt alcotest ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
index 845df2a3f542..57885b0e65e0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
@@ -1,19 +1,28 @@
 { lib, buildDunePackage, cohttp-lwt
-, conduit-lwt-unix, ppx_sexp_conv
-, cmdliner, fmt, magic-mime
+, conduit-lwt-unix, conduit-lwt, ppx_sexp_conv
+, cmdliner, fmt, logs, magic-mime
+, ounit
+, cacert
 }:
 
-if !lib.versionAtLeast cohttp-lwt.version "0.99"
-then cohttp-lwt
-else
-
 buildDunePackage {
   pname = "cohttp-lwt-unix";
-  inherit (cohttp-lwt) version src meta;
+  inherit (cohttp-lwt) version src;
 
   useDune2 = true;
 
   buildInputs = [ cmdliner ppx_sexp_conv ];
 
-  propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ];
+  propagatedBuildInputs = [
+    cohttp-lwt conduit-lwt conduit-lwt-unix fmt logs magic-mime
+  ];
+
+  # TODO(@sternenseemann): fail for unknown reason
+  # https://github.com/mirage/ocaml-cohttp/issues/675#issuecomment-830692742
+  doCheck = false;
+  checkInputs = [ ounit cacert ];
+
+  meta = cohttp-lwt.meta // {
+    description = "CoHTTP implementation for Unix and Windows using Lwt";
+  };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt.nix b/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt.nix
index 36831d946132..158aa3b27b26 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -1,16 +1,21 @@
-{ lib, buildDunePackage, cohttp, ocaml_lwt, uri, ppx_sexp_conv, logs }:
-
-if !lib.versionAtLeast cohttp.version "0.99"
-then cohttp
-else if !lib.versionAtLeast ppx_sexp_conv.version "0.13"
-then throw "cohttp-lwt is not available for ppx_sexp_conv version ${ppx_sexp_conv.version}"
-else
+{ lib, buildDunePackage, cohttp, ocaml_lwt, uri, ppx_sexp_conv, logs, sexplib0 }:
 
 buildDunePackage {
   pname = "cohttp-lwt";
-  inherit (cohttp) version src useDune2 meta;
+  inherit (cohttp)
+    version
+    src
+    useDune2
+    minimumOCamlVersion
+    ;
+
+  buildInputs = [ ppx_sexp_conv ];
 
-  buildInputs = [ uri ppx_sexp_conv ];
+  propagatedBuildInputs = [
+    cohttp ocaml_lwt logs sexplib0 uri
+  ];
 
-  propagatedBuildInputs = [ cohttp ocaml_lwt logs ];
+  meta = cohttp.meta // {
+    description = "CoHTTP implementation using the Lwt concurrency library";
+  };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cohttp/mirage.nix b/nixpkgs/pkgs/development/ocaml-modules/cohttp/mirage.nix
index e7b172349cb9..d2d3e945645b 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/cohttp/mirage.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/cohttp/mirage.nix
@@ -2,6 +2,7 @@
 , mirage-flow, mirage-channel, mirage-kv
 , conduit, conduit-mirage, lwt
 , astring, magic-mime
+, ppx_sexp_conv
 }:
 
 buildDunePackage {
@@ -9,6 +10,8 @@ buildDunePackage {
 
   inherit (cohttp) version src minimumOCamlVersion useDune2;
 
+  nativeBuildInputs = [ ppx_sexp_conv ];
+
   propagatedBuildInputs = [
     mirage-flow mirage-channel conduit conduit-mirage mirage-kv
     lwt cohttp cohttp-lwt astring magic-mime
diff --git a/nixpkgs/pkgs/development/ocaml-modules/conduit/async.nix b/nixpkgs/pkgs/development/ocaml-modules/conduit/async.nix
index c15ad0520fb2..e78cb2bc5165 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/conduit/async.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/conduit/async.nix
@@ -1,17 +1,17 @@
-{ lib, buildDunePackage, async, async_ssl, ppx_sexp_conv, conduit }:
-
-if !lib.versionAtLeast conduit.version "1.0"
-then conduit
-else
+{ lib, buildDunePackage, async, async_ssl, ppx_sexp_conv, ppx_here, uri, conduit }:
 
 buildDunePackage {
   pname = "conduit-async";
-  useDune2 = true;
-  inherit (conduit) version src;
+  inherit (conduit)
+    version
+    src
+    minimumOCamlVersion
+    useDune2
+    ;
 
-  buildInputs = [ ppx_sexp_conv ];
+  buildInputs = [ ppx_sexp_conv ppx_here ];
 
-  propagatedBuildInputs = [ async async_ssl conduit ];
+  propagatedBuildInputs = [ async async_ssl conduit uri ];
 
   meta = conduit.meta // {
     description = "A network connection establishment library for Async";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix b/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
index 8c9b757f87c3..96f5bf43d214 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
@@ -5,18 +5,18 @@
 
 buildDunePackage rec {
   pname = "conduit";
-  version = "2.2.2";
+  version = "4.0.0";
   useDune2 = true;
 
-  minimumOCamlVersion = "4.07";
+  minimumOCamlVersion = "4.03";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-conduit/releases/download/v2.2.2/conduit-v2.2.2.tbz";
-    sha256 = "1zb83w2pq9c8xrappfxa6y5q93772f5dj22x78camsm77a2c2z55";
+    url = "https://github.com/mirage/ocaml-conduit/releases/download/v${version}/conduit-v${version}.tbz";
+    sha256 = "74b29d72bf47adc5d5c4cae6130ad5a2a4923118b9c571331bd1cb3c56decd2a";
   };
 
   buildInputs = [ ppx_sexp_conv ];
-  propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri ];
+  propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri logs ];
 
   meta = {
     description = "A network connection establishment library";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/nixpkgs/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
index ab6449b50a17..ce6016012d76 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
@@ -1,18 +1,31 @@
 { buildDunePackage
-, conduit-lwt, ppx_sexp_conv, ocaml_lwt, uri, ipaddr, ipaddr-sexp
-, lwt_ssl, tls
+, conduit-lwt, ppx_sexp_conv, ocaml_lwt, uri, ipaddr, ipaddr-sexp, ca-certs, logs
+, lwt_ssl, tls, lwt_log, ssl
 }:
 
 buildDunePackage {
   pname = "conduit-lwt-unix";
-  inherit (conduit-lwt) version src minimumOCamlVersion;
-
-  useDune2 = true;
+  inherit (conduit-lwt) version src minimumOCamlVersion useDune2;
 
   buildInputs = [ ppx_sexp_conv ];
 
-  propagatedBuildInputs =
-    [ conduit-lwt ocaml_lwt uri ipaddr ipaddr-sexp tls lwt_ssl ];
+  propagatedBuildInputs = [
+    conduit-lwt
+    ocaml_lwt
+    uri
+    ipaddr
+    ipaddr-sexp
+    tls
+    ca-certs
+    logs
+    lwt_ssl
+  ];
+
+  doCheck = true;
+  checkInputs = [
+    lwt_log
+    ssl
+  ];
 
   meta = conduit-lwt.meta // {
     description = "A network connection establishment library for Lwt_unix";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/conduit/mirage.nix b/nixpkgs/pkgs/development/ocaml-modules/conduit/mirage.nix
index 6100908f785b..d1f636be93c4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/conduit/mirage.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/conduit/mirage.nix
@@ -1,7 +1,8 @@
 { buildDunePackage, conduit-lwt
-, ppx_sexp_conv, sexplib, cstruct, mirage-stack, mirage-flow
+, ppx_sexp_conv, sexplib, uri, cstruct, mirage-stack, mirage-flow
 , mirage-flow-combinators, mirage-random, mirage-time, mirage-clock
 , dns-client, vchan, xenstore, tls, tls-mirage, ipaddr, ipaddr-sexp
+, tcpip, ca-certs-nss
 }:
 
 buildDunePackage {
@@ -12,10 +13,10 @@ buildDunePackage {
   nativeBuildInputs = [ ppx_sexp_conv ];
 
   propagatedBuildInputs = [
-    sexplib cstruct mirage-stack mirage-clock mirage-flow
+    sexplib uri cstruct mirage-stack mirage-clock mirage-flow
     mirage-flow-combinators mirage-random mirage-time
     dns-client conduit-lwt vchan xenstore tls tls-mirage
-    ipaddr ipaddr-sexp
+    ipaddr ipaddr-sexp tcpip ca-certs-nss
   ];
 
   meta = conduit-lwt.meta // {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/containers/default.nix b/nixpkgs/pkgs/development/ocaml-modules/containers/default.nix
index c3847acb9594..b0df52061520 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/containers/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/containers/default.nix
@@ -5,7 +5,7 @@
 }:
 
 buildDunePackage rec {
-  version = "3.0.1";
+  version = "3.4";
   pname = "containers";
 
   useDune2 = true;
@@ -14,7 +14,7 @@ buildDunePackage rec {
     owner = "c-cube";
     repo = "ocaml-containers";
     rev = "v${version}";
-    sha256 = "1m19cfcwks3xcj16nqldfb49dg0vdc7by1q1j8bpac3z2mjvks0l";
+    sha256 = "0ixpy81p6rc3lq71djfndb2sg2hfj20j1jbzzrrmgqsysqdjsgzz";
   };
 
   buildInputs = [ dune-configurator ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cooltt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/cooltt/default.nix
new file mode 100644
index 000000000000..2ece4543c2a7
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/cooltt/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, fetchFromGitHub
+, buildDunePackage
+, cmdliner
+, menhir
+, menhirLib
+, ppx_deriving
+, ppxlib
+, uuseg
+, uutf
+}:
+
+buildDunePackage {
+  pname = "cooltt";
+  version = "unstable-2021-05-25";
+
+  minimumOCamlVersion = "4.10";
+
+  useDune2 = true;
+
+  src = fetchFromGitHub {
+    owner = "RedPRL";
+    repo = "cooltt";
+    rev = "8ac06cbf7e05417d777f3ac6a471fe3576249f79";
+    sha256 = "sha256-JBLNJaRuP/gwlg8RS3cpOpzxChOVKfmFulf5HKhhHh4=";
+  };
+
+  nativeBuildInputs = [
+    cmdliner
+    menhir
+    ppxlib
+  ];
+
+  propagatedBuildInputs = [
+    menhirLib
+    ppx_deriving
+    uuseg
+    uutf
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/RedPRL/cooltt";
+    description = "A cool implementation of normalization by evaluation (nbe) & elaboration for Cartesian cubical type theory";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fortuneteller2k ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/csexp/default.nix b/nixpkgs/pkgs/development/ocaml-modules/csexp/default.nix
index 4bb83019dc5c..664d9a773ab0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/csexp/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/csexp/default.nix
@@ -2,23 +2,24 @@
 
 buildDunePackage rec {
   pname = "csexp";
-  version = "1.4.0";
-
-  useDune2 = true;
-
-  minimumOCamlVersion = "4.02.3";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "https://github.com/ocaml-dune/csexp/releases/download/${version}/csexp-${version}.tbz";
-    sha256 = "sha256-jj1vyofxAqEm3ui3KioNFG8QQ5xHIY38FJ1Rvz7fNk4=";
+    sha256 = "sha256-1gXkBl+pCliABEDvLzOi2TE5i/LCIGGorLffhFwKrAI=";
   };
 
-  propagatedBuildInputs = [ result ];
+  minimumOCamlVersion = "4.03";
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    result
+  ];
 
   meta = with lib; {
-    homepage = "https://github.com/ocaml-dune/csexp";
+    homepage = "https://github.com/ocaml-dune/csexp/";
     description = "Minimal support for Canonical S-expressions";
     license = licenses.mit;
-    maintainers = [ maintainers.marsam ];
+    maintainers = with maintainers; [ marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/csv/csvtool.nix b/nixpkgs/pkgs/development/ocaml-modules/csv/csvtool.nix
new file mode 100644
index 000000000000..12c0dfa160e6
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/csv/csvtool.nix
@@ -0,0 +1,16 @@
+{ lib, ocamlPackages }:
+
+let inherit (ocamlPackages) buildDunePackage csv uutf; in
+
+buildDunePackage {
+  pname = "csvtool";
+  inherit (csv) src version useDune2;
+
+  buildInputs = [ csv uutf ];
+
+  doCheck = true;
+
+  meta = csv.meta // {
+    description = "Command line tool for handling CSV files";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/csv/default.nix b/nixpkgs/pkgs/development/ocaml-modules/csv/default.nix
index 595624531759..d4c3d72a6d80 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/csv/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/csv/default.nix
@@ -4,13 +4,13 @@ buildDunePackage rec {
   pname = "csv";
   version = "2.4";
 
-  useDune2 = true;
-
   src = fetchurl {
     url = "https://github.com/Chris00/ocaml-${pname}/releases/download/${version}/csv-${version}.tbz";
     sha256 = "13m9n8mdss6jfbiw7d5bybxn4n85vmg4zw7dc968qrgjfy0w9zhk";
   };
 
+  useDune2 = true;
+
   meta = {
     description = "A pure OCaml library to read and write CSV files";
     license = lib.licenses.lgpl21;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix b/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
index 1c48b509c414..20197e207af3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, buildDunePackage, fetchurl, ocaml
-, result, alcotest, cohttp-lwt-unix, odoc, curl }:
+, result, alcotest, cohttp-lwt-unix, odoc, curl, cacert
+}:
 
 buildDunePackage rec {
   pname = "curly";
@@ -15,8 +16,9 @@ buildDunePackage rec {
   };
 
   propagatedBuildInputs = [ result ];
-  checkInputs = [ alcotest cohttp-lwt-unix ];
+  checkInputs = [ alcotest cohttp-lwt-unix cacert ];
   # test dependencies are only available for >= 4.08
+  # https://github.com/mirage/ca-certs/issues/16
   doCheck = lib.versionAtLeast ocaml.version "4.08"
     # Some test fails in macOS sandbox
     # > Fatal error: exception Unix.Unix_error(Unix.EPERM, "bind", "")
diff --git a/nixpkgs/pkgs/development/ocaml-modules/decompress/default.nix b/nixpkgs/pkgs/development/ocaml-modules/decompress/default.nix
index d2cba68d732e..505ffe3c4257 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/decompress/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/decompress/default.nix
@@ -4,7 +4,7 @@
 }:
 
 buildDunePackage rec {
-  version = "1.3.0";
+  version = "1.4.0";
   pname = "decompress";
 
   minimumOCamlVersion = "4.07";
@@ -13,7 +13,7 @@ buildDunePackage rec {
 
   src = fetchurl {
     url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-v${version}.tbz";
-    sha256 = "de149896939be13fedec46a4581121d5ab74850a2241d08e6aa8ae4bb18c52c4";
+    sha256 = "d1669e07446d73dd5e16f020d4a1682abcbb1b7a1e3bf19b805429636c26a19b";
   };
 
   buildInputs = [ cmdliner ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dns/certify.nix b/nixpkgs/pkgs/development/ocaml-modules/dns/certify.nix
index 1835114d707c..31b39d18225c 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dns/certify.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dns/certify.nix
@@ -1,6 +1,6 @@
 { buildDunePackage, dns, dns-tsig, dns-mirage, randomconv, x509
 , mirage-random, mirage-time, mirage-clock, mirage-stack
-, logs, mirage-crypto-pk, mirage-crypto-rng, tls, lwt
+, logs, mirage-crypto-pk, mirage-crypto-rng, mirage-crypto-ec, lwt
 }:
 
 buildDunePackage {
@@ -21,7 +21,7 @@ buildDunePackage {
     logs
     mirage-crypto-pk
     mirage-crypto-rng
-    tls
+    mirage-crypto-ec
     lwt
   ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dns/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dns/default.nix
index 4f0b95da6cb3..8a5115f10f05 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dns/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dns/default.nix
@@ -4,14 +4,14 @@
 
 buildDunePackage rec {
   pname = "dns";
-  version = "4.6.3";
+  version = "5.0.1";
 
   useDune2 = true;
   minimumOCamlVersion = "4.07";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-dns/releases/download/v${version}/dns-v${version}.tbz";
-    sha256 = "0g7xw43jm5hv0w9lsnhhi0w3243mxl615cdsvz29yh39fcqvqsdy";
+    sha256 = "72c0a1a91c8e409bd448c8e0ea28d16d13177c326aea403ee1c30ddcb5969adc";
   };
 
   propagatedBuildInputs = [ rresult astring fmt logs ptime domain-name gmap cstruct ipaddr lru duration metrics ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dolmen/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dolmen/default.nix
index a1a73bfe2188..815e1acd72ac 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dolmen/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dolmen/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir }:
+{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, menhirLib }:
 
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-dolmen-${version}";
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "1b9mf8p6mic0n76acx8x82hhgm2n40sdv0jri95im65l52223saf";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-  propagatedBuildInputs = [ menhir ];
+  buildInputs = [ ocaml findlib ocamlbuild menhir ];
+  propagatedBuildInputs = [ menhirLib ];
 
   makeFlags = [ "-C" "src" ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/earlybird/default.nix b/nixpkgs/pkgs/development/ocaml-modules/earlybird/default.nix
index 07e9b5a35461..a6a3648bec65 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/earlybird/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/earlybird/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchurl, ocaml, buildDunePackage
-, cmdliner, dap, fmt, iter, logs, lru, lwt_ppx, lwt_react, menhir, path_glob, ppx_deriving_yojson
+, cmdliner, dap, fmt, iter, logs, lru, lwt_ppx, lwt_react, menhir, menhirLib, path_glob, ppx_deriving_yojson
 }:
 
 if lib.versionAtLeast ocaml.version "4.13"
@@ -19,7 +19,7 @@ buildDunePackage rec {
     sha256 = "1pwzhcr3pw24ra4j4d23vz71h0psz4xkyp7b12l2wl1slxzjbrxa";
   };
 
-  buildInputs = [ cmdliner dap fmt iter logs lru lwt_ppx lwt_react menhir path_glob ppx_deriving_yojson ];
+  buildInputs = [ cmdliner dap fmt iter logs lru lwt_ppx lwt_react menhir menhirLib path_glob ppx_deriving_yojson ];
 
   meta = {
     homepage = "https://github.com/hackwaly/ocamlearlybird";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/eigen/default.nix b/nixpkgs/pkgs/development/ocaml-modules/eigen/default.nix
index c86b7cba0103..47b002fd7302 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/eigen/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/eigen/default.nix
@@ -15,7 +15,7 @@ buildDunePackage rec {
 
   minimumOCamlVersion = "4.02";
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   propagatedBuildInputs = [ ctypes ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix b/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix
index 38ba8f478bda..642a249e4937 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix
@@ -1,10 +1,11 @@
 { stdenv, lib, fetchzip, buildDunePackage, camlp5
 , ppxlib, ppx_deriving, re, perl, ncurses
-, version ? "1.13.1"
+, version ? "1.13.5"
 }:
 with lib;
 let fetched = import ../../../build-support/coq/meta-fetch/default.nix
   {inherit lib stdenv fetchzip; } ({
+    release."1.13.5".sha256 = "02a6r23mximrdvs6kgv6rp0r2dgk7zynbs99nn7lphw2c4189kka";
     release."1.13.1".sha256 = "12a9nbdvg9gybpw63lx3nw5wnxfznpraprb0wj3l68v1w43xq044";
     release."1.13.0".sha256 = "0dmzy058m1mkndv90byjaik6lzzfk3aaac7v84mpmkv6my23bygr";
     release."1.12.0".sha256 = "1agisdnaq9wrw3r73xz14yrq3wx742i6j8i5icjagqk0ypmly2is";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/extlib/1.7.7.nix b/nixpkgs/pkgs/development/ocaml-modules/extlib/1.7.7.nix
index 3314ebcb9b5d..d27fe085569f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/extlib/1.7.7.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/extlib/1.7.7.nix
@@ -1,11 +1,14 @@
 # Older version of extlib for Haxe 4.0 and 4.1.
 # May be replaceable by the next extlib + extlib-base64 release.
-{ fetchurl, ocaml_extlib }:
+{ lib, fetchurl, ocaml, ocaml_extlib }:
 
-ocaml_extlib.overrideAttrs (_: rec {
+ocaml_extlib.overrideAttrs (x: rec {
   version = "1.7.7";
   src = fetchurl {
     url = "https://github.com/ygrek/ocaml-extlib/releases/download/${version}/extlib-${version}.tar.gz";
     sha256 = "1sxmzc1mx3kg62j8kbk0dxkx8mkf1rn70h542cjzrziflznap0s1";
   };
+  meta = x.meta // {
+    broken = lib.versionAtLeast ocaml.version "4.12";
+  };
 })
diff --git a/nixpkgs/pkgs/development/ocaml-modules/fix/default.nix b/nixpkgs/pkgs/development/ocaml-modules/fix/default.nix
index d4ce484653b9..ffd0b5003ce4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/fix/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/fix/default.nix
@@ -1,25 +1,24 @@
-{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild }:
+{ lib, fetchFromGitLab, buildDunePackage }:
 
-assert lib.versionAtLeast (lib.getVersion ocaml) "3.12";
+buildDunePackage rec {
+  pname = "fix";
+  version = "20201120";
 
-stdenv.mkDerivation {
-
-  name = "ocaml-fix-20130611";
-
-  src = fetchurl {
-    url = "http://gallium.inria.fr/~fpottier/fix/fix-20130611.tar.gz";
-    sha256 = "1phlqcs1nb93x9cf0w0hnq2ck4dmn71zm4mxf60w96vb9yb9qzp0";
+  src = fetchFromGitLab {
+    domain = "gitlab.inria.fr";
+    owner = "fpottier";
+    repo = "fix";
+    rev = "${version}";
+    sha256 = "sha256-RO+JCG6R2i5uZfwTYEnQBCVq963fjv5lA2wA/8KrgMg=";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-
-  createFindlibDestdir = true;
+  minimumOCamlVersion = "4.03";
+  useDune2 = true;
 
   meta = with lib; {
-    homepage = "http://gallium.inria.fr/~fpottier/fix/";
+    homepage = "https://gitlab.inria.fr/fpottier/fix/";
     description = "A simple OCaml module for computing the least solution of a system of monotone equations";
     license = licenses.cecill-c;
-    maintainers = [ maintainers.vbgl ];
-    platforms = ocaml.meta.platforms or [];
+    maintainers = with maintainers; [ vbgl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/cohttp-mirage.nix b/nixpkgs/pkgs/development/ocaml-modules/git/cohttp-mirage.nix
deleted file mode 100644
index d30884006410..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/git/cohttp-mirage.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ lib, buildDunePackage
-, git, mimic, cohttp-mirage, cohttp, cohttp-lwt
-, fmt, lwt, result, rresult, uri
-}:
-
-buildDunePackage {
-  pname = "git-cohttp-mirage";
-
-  inherit (git) version src minimumOCamlVersion useDune2;
-
-  propagatedBuildInputs = [
-    git mimic cohttp-mirage cohttp cohttp-lwt fmt lwt result rresult uri
-  ];
-
-  meta = git.meta // {
-    description = "A package to use HTTP-based ocaml-git with MirageOS backend";
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/default.nix b/nixpkgs/pkgs/development/ocaml-modules/git/default.nix
index b8d73178d09b..954e4956c816 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/git/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/git/default.nix
@@ -1,30 +1,35 @@
 { stdenv, lib, fetchurl, buildDunePackage
 , alcotest, mtime, mirage-crypto-rng, tls, git-binary
 , angstrom, astring, cstruct, decompress, digestif, encore, duff, fmt, checkseum
-, fpath, ke, logs, lwt, ocamlgraph, uri, rresult, base64
+, fpath, ke, logs, lwt, ocamlgraph, uri, rresult, base64, hxd
 , result, bigstringaf, optint, mirage-flow, domain-name, emile
 , mimic, carton, carton-lwt, carton-git, ipaddr, psq, crowbar, alcotest-lwt
 }:
 
 buildDunePackage rec {
   pname = "git";
-  version = "3.3.3";
+  version = "3.4.0";
 
   minimumOCamlVersion = "4.08";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-git/releases/download/${version}/git-${version}.tbz";
-    sha256 = "0j8pw9w74bfhrjsqr8zm8g7h1az94z9vg7qgc6z6649zm9yjiax3";
+    sha256 = "6eef1240c7c85a8e495b82ef863c509ad41d75e0c45cf73c34ed1bdafd03413f";
   };
 
+  # remove changelog for the carton package
+  postPatch = ''
+    rm CHANGES.carton.md
+  '';
+
   buildInputs = [
     base64
   ];
   propagatedBuildInputs = [
     angstrom astring checkseum cstruct decompress digestif encore duff fmt fpath
     ke logs lwt ocamlgraph uri rresult result bigstringaf optint mirage-flow
-    domain-name emile mimic carton carton-lwt carton-git ipaddr psq
+    domain-name emile mimic carton carton-lwt carton-git ipaddr psq hxd
   ];
   checkInputs = [
     alcotest alcotest-lwt mtime mirage-crypto-rng tls git-binary crowbar
diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix b/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix
new file mode 100644
index 000000000000..cf0272ddf3b8
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix
@@ -0,0 +1,49 @@
+{ lib, buildDunePackage
+, git
+, mimic
+, paf
+, ca-certs-nss
+, cohttp
+, cohttp-lwt
+, fmt
+, ipaddr
+, logs
+, lwt
+, mirage-clock
+, mirage-stack
+, mirage-time
+, result
+, rresult
+, tls
+, uri
+}:
+
+buildDunePackage {
+  pname = "git-paf";
+
+  inherit (git) version src minimumOCamlVersion useDune2;
+
+  propagatedBuildInputs = [
+    git
+    mimic
+    paf
+    ca-certs-nss
+    cohttp
+    cohttp-lwt
+    fmt
+    lwt
+    result
+    rresult
+    ipaddr
+    logs
+    mirage-clock
+    mirage-stack
+    mirage-time
+    tls
+    uri
+  ];
+
+  meta = git.meta // {
+    description = "A package to use HTTP-based ocaml-git with MirageOS backend";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix b/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix
index f4cea472886d..3e5f464cea06 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix
@@ -6,7 +6,8 @@
 , tcpip, awa-mirage, mirage-flow
 , alcotest, alcotest-lwt, base64, cstruct
 , ke, mirage-crypto-rng, ocurl, git-binary
-, ptime
+, ptime, mimic, ca-certs-nss, tls, tls-mirage
+, cacert
 }:
 
 buildDunePackage {
@@ -24,10 +25,14 @@ buildDunePackage {
     fmt bos fpath uri digestif logs lwt
     astring cohttp-lwt-unix decompress
     domain-name ipaddr mtime mirage-flow
+    cstruct ptime mimic ca-certs-nss
+    tls tls-mirage
   ];
   checkInputs = [
-    alcotest alcotest-lwt base64 cstruct ke
-    mirage-crypto-rng ocurl git-binary ptime
+    alcotest alcotest-lwt base64 ke
+    mirage-crypto-rng git-binary
+    cohttp-lwt-unix
+    cacert # sets up NIX_SSL_CERT_FILE
   ];
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/containers.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/containers.nix
index 761e9bf5619e..76383099a41d 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/containers.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/containers.nix
@@ -1,6 +1,6 @@
 { buildDunePackage
 , irmin, irmin-unix, irmin-git, ppx_irmin, lwt, mtime
-, alcotest, alcotest-lwt
+, alcotest, alcotest-lwt, cacert
 }:
 
 buildDunePackage {
@@ -18,7 +18,7 @@ buildDunePackage {
 
   doCheck = true;
   checkInputs = [
-    alcotest alcotest-lwt
+    alcotest alcotest-lwt cacert
   ];
 
   meta = ppx_irmin.meta // {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/git.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/git.nix
index a6c1e8af8fa4..d477c932928e 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/git.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/git.nix
@@ -1,7 +1,7 @@
 { lib, buildDunePackage
 , git, irmin, irmin-test, ppx_irmin, git-cohttp-unix, git-unix
 , digestif, cstruct, fmt, astring, fpath, logs, lwt, uri
-, mtime, alcotest
+, mtime, alcotest, cacert
 }:
 
 buildDunePackage {
@@ -26,7 +26,7 @@ buildDunePackage {
     uri
   ];
 
-  checkInputs = [ mtime alcotest git-cohttp-unix git-unix irmin-test ];
+  checkInputs = [ mtime alcotest git-cohttp-unix git-unix irmin-test cacert ];
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/graphql.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/graphql.nix
index ca205cac4e15..03c8f1eca291 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/graphql.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/graphql.nix
@@ -1,5 +1,5 @@
 { lib, buildDunePackage, cohttp-lwt, graphql-cohttp, graphql-lwt, irmin
-, alcotest, alcotest-lwt, logs, yojson, cohttp-lwt-unix
+, alcotest, alcotest-lwt, logs, yojson, cohttp-lwt-unix, cacert
 }:
 
 buildDunePackage rec {
@@ -19,6 +19,7 @@ buildDunePackage rec {
     logs
     cohttp-lwt-unix
     yojson
+    cacert
   ];
 
   meta = irmin.meta // {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/http.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/http.nix
index b50e0b873454..7bfae9982021 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/http.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/http.nix
@@ -1,5 +1,6 @@
 { lib, buildDunePackage, cohttp-lwt, irmin, webmachine
 , checkseum, git-unix, irmin-git, irmin-test, digestif, git-cohttp-unix
+, cacert
 }:
 
 buildDunePackage rec {
@@ -12,7 +13,9 @@ buildDunePackage rec {
 
   propagatedBuildInputs = [ cohttp-lwt irmin webmachine ];
 
-  checkInputs = [ digestif checkseum git-cohttp-unix git-unix irmin-git irmin-test ];
+  checkInputs = [
+    digestif checkseum git-cohttp-unix git-unix irmin-git irmin-test cacert
+  ];
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/mirage-git.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/mirage-git.nix
index dfa84ff2335d..e33b766bd4cb 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/mirage-git.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/mirage-git.nix
@@ -1,6 +1,6 @@
 { buildDunePackage, irmin-mirage, irmin-git
 , mirage-kv, cohttp, conduit-lwt, conduit-mirage
-, git-cohttp-mirage, fmt, git, lwt, mirage-clock, uri
+, git-paf, fmt, git, lwt, mirage-clock, uri
 }:
 
 buildDunePackage {
@@ -15,7 +15,7 @@ buildDunePackage {
     cohttp
     conduit-lwt
     conduit-mirage
-    git-cohttp-mirage
+    git-paf
     fmt
     git
     lwt
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
index 7c59e1eaef34..c7eed70d9d99 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "ppx_irmin";
-  version = "2.5.3";
+  version = "2.6.0";
 
   src = fetchurl {
     url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
-    sha256 = "2c8ef24cc57379c3a138f121fea350ee7b6077abc22a4fdc6a47d0c81585f3f6";
+    sha256 = "1db134221e82c424260a0e206b640fcb82902be35eea4137af2bcd9c98d3ac0f";
   };
 
   minimumOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/unix.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/unix.nix
index a3dfb5d508c2..89cf36979bde 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/unix.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/unix.nix
@@ -1,7 +1,7 @@
 { lib, buildDunePackage
 , checkseum, cmdliner, git-unix, git-cohttp-unix, yaml, fpath
 , irmin, irmin-fs, irmin-git, irmin-graphql, irmin-http
-, irmin-pack, irmin-watcher, irmin-test
+, irmin-pack, irmin-watcher, irmin-test, cacert
 }:
 
 buildDunePackage rec {
@@ -18,7 +18,9 @@ buildDunePackage rec {
     irmin-pack irmin-watcher git-cohttp-unix
   ];
 
-  checkInputs = lib.optional doCheck irmin-test;
+  checkInputs = [
+    irmin-test cacert
+  ];
 
   doCheck = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
index eb429b2bb6dc..e348c5d9325a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
@@ -1,4 +1,5 @@
 { self
+, lib
 , openssl
 , zstd
 }:
@@ -40,6 +41,7 @@ with self;
     version = "0.14.1";
     hash = "1cdkv34m6czhacivpbb2sasj83fgcid6gnqk30ig9i84z8nh2gw2";
     meta.description = "Accessors for Core types, for use with the Accessor library";
+    meta.broken = lib.versionAtLeast ocaml.version "4.12";
     propagatedBuildInputs = [ accessor_base core_kernel ];
   };
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/junit/alcotest.nix b/nixpkgs/pkgs/development/ocaml-modules/junit/alcotest.nix
new file mode 100644
index 000000000000..85abaf7f872b
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/junit/alcotest.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, junit, alcotest }:
+
+buildDunePackage ({
+  pname = "junit_alcotest";
+
+  inherit (junit) src version meta useDune2;
+
+  propagatedBuildInputs = [
+    junit
+    alcotest
+  ];
+
+  doCheck = false; # 2 tests fail: 1) "Test with unexpected exception"; 2) "with wrong result";
+})
diff --git a/nixpkgs/pkgs/development/ocaml-modules/junit/default.nix b/nixpkgs/pkgs/development/ocaml-modules/junit/default.nix
new file mode 100644
index 000000000000..c91625e823b0
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/junit/default.nix
@@ -0,0 +1,26 @@
+{ lib, fetchurl, buildDunePackage, ptime, tyxml }:
+
+buildDunePackage (rec {
+  pname = "junit";
+  version = "2.0.2";
+
+  src = fetchurl {
+    url = "https://github.com/Khady/ocaml-junit/releases/download/${version}/junit-${version}.tbz";
+    sha256 = "00bbx5j8vsy9fqbc04xa3lsalaxicirmbczr65bllfk1afv43agx";
+  };
+
+  propagatedBuildInputs = [
+    ptime
+    tyxml
+  ];
+
+  useDune2 = true;
+  doCheck = true;
+
+  meta = with lib; {
+    description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest.";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ superherointj ];
+    homepage = "https://github.com/Khady/ocaml-junit";
+  };
+})
diff --git a/nixpkgs/pkgs/development/ocaml-modules/junit/ounit.nix b/nixpkgs/pkgs/development/ocaml-modules/junit/ounit.nix
new file mode 100644
index 000000000000..5f261b07236f
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/junit/ounit.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, junit, ounit }:
+
+buildDunePackage ({
+  pname = "junit_ounit";
+
+  inherit (junit) src version meta useDune2;
+
+  propagatedBuildInputs = [
+    junit
+    ounit
+  ];
+
+  doCheck = true;
+})
diff --git a/nixpkgs/pkgs/development/ocaml-modules/letsencrypt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/letsencrypt/default.nix
index b3c0d4f89412..0a70bf302428 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/letsencrypt/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/letsencrypt/default.nix
@@ -31,11 +31,11 @@
 
 buildDunePackage rec {
   pname = "letsencrypt";
-  version = "0.2.4";
+  version = "0.2.5";
 
   src = fetchurl {
     url = "https://github.com/mmaker/ocaml-letsencrypt/releases/download/v${version}/letsencrypt-v${version}.tbz";
-    sha256 = "91c79828a50243804da29c17563c54d2d528a79207e5b874dce6a3e7fedf7567";
+    sha256 = "6e3bbb5f593823d49e83e698c06cf9ed48818695ec8318507b311ae74731e607";
   };
 
   minimumOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/llvm/default.nix b/nixpkgs/pkgs/development/ocaml-modules/llvm/default.nix
index 34fe75a2943f..f984a28869e1 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/llvm/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/llvm/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, lib, fetchpatch, python, cmake, llvm, ocaml, findlib, ctypes }:
+{ stdenv, lib, fetchpatch, python, cmake, libllvm, ocaml, findlib, ctypes }:
 
-let version = lib.getVersion llvm; in
+let version = lib.getVersion libllvm; in
 
 stdenv.mkDerivation {
   pname = "ocaml-llvm";
   inherit version;
 
-  inherit (llvm) src;
+  inherit (libllvm) src;
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ python ocaml findlib ctypes ];
-  propagatedBuildInputs = [ llvm ];
+  propagatedBuildInputs = [ libllvm ];
 
   patches = [ (fetchpatch {
     url = "https://raw.githubusercontent.com/ocaml/opam-repository/2bdc193f5a9305ea93bf0f0dfc1fbc327c8b9306/packages/llvm/llvm.7.0.0/files/fix-shared.patch";
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   cmakeFlags = [
     "-DLLVM_OCAML_OUT_OF_TREE=TRUE"
     "-DLLVM_OCAML_INSTALL_PATH=${placeholder "out"}/ocaml"
-    "-DLLVM_OCAML_EXTERNAL_LLVM_LIBDIR=${lib.getLib llvm}/lib"
+    "-DLLVM_OCAML_EXTERNAL_LLVM_LIBDIR=${lib.getLib libllvm}/lib"
   ];
 
   buildFlags = [ "ocaml_all" ];
@@ -34,11 +34,11 @@ stdenv.mkDerivation {
   '';
 
   passthru = {
-    inherit llvm;
+    inherit libllvm;
   };
 
   meta = {
-    inherit (llvm.meta) license homepage;
+    inherit (libllvm.meta) license homepage;
     platforms = ocaml.meta.platforms or [];
     description = "OCaml bindings distributed with LLVM";
     maintainers = with lib.maintainers; [ vbgl ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix b/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
index 6ad5ce5d4879..41fdbc4eedcd 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
@@ -6,12 +6,12 @@
 
 buildDunePackage rec {
   pname = "luv";
-  version = "0.5.7";
+  version = "0.5.8";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/aantron/luv/releases/download/${version}/luv-${version}.tar.gz";
-    sha256 = "0wjnw5riydnzsk1xdzljlpzdnjwpa0j597y6x6ma4990mqj54260";
+    sha256 = "1y3g7jvb72frckjl92zyn7hzmzjy1fy4a48992jdk80vphsdzgmk";
   };
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix
index ee0c3b5b00cc..b0f73546eed9 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix
@@ -8,13 +8,13 @@ let inherit (lib) optional versionAtLeast; in
 
 buildDunePackage rec {
   pname = "lwt";
-  version = "5.4.0";
+  version = "5.4.1";
 
   useDune2 = true;
 
   src = fetchzip {
     url = "https://github.com/ocsigen/${pname}/archive/${version}.tar.gz";
-    sha256 = "1ay1zgadnw19r9hl2awfjr22n37l7rzxd9v73pjbahavwm2ay65d";
+    sha256 = "0cq2qy23sa1a5zk6nja3c652mp29i84yfrkcwks6i8sdqwli36jy";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/menhir/default.nix b/nixpkgs/pkgs/development/ocaml-modules/menhir/default.nix
index cbb759205e03..686cf9820580 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/menhir/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/menhir/default.nix
@@ -1,15 +1,15 @@
-{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild
-, version ? if lib.versionAtLeast (lib.getVersion ocaml) "4.02" then "20190626" else "20140422"
-}@args:
-
-let
-  src = fetchurl (
-  if version == "20140422" then { url = "http://cristal.inria.fr/~fpottier/menhir/menhir-20140422.tar.gz"; sha256 = "1ki1f2id6a14h9xpv2k8yb6px7dyw8cvwh39csyzj4qpzx7wia0d"; }
-  else if version == "20170712" then { url = "http://gallium.inria.fr/~fpottier/menhir/menhir-20170712.tar.gz"; sha256 = "006hq3bwj81j67f2k9cgzj5wr4hai8j36925p5n3sd2j01ljsj6a"; }
-  else if version == "20181113" then { url = "https://gitlab.inria.fr/fpottier/menhir/repository/20181113/archive.tar.gz"; sha256 = "0hl611l0gyl7b2bm7m0sk7vjz14m0i7znrnjq3gw58pylj934dx4"; }
-  else if version == "20190626" then { url = "https://gitlab.inria.fr/fpottier/menhir/repository/20190626/archive.tar.gz"; sha256 = "0nigjnskg89knyi2zj1w211mb1pvkrwfqpz9a0qbw80k3hm8gg0h"; }
-  else throw ("menhir: unknown version " ++ version)
-  );
-in
-
-import ./generic.nix (args // { inherit version src; })
+{ lib, fetchFromGitLab, buildDunePackage
+, menhirLib, menhirSdk
+}:
+
+buildDunePackage rec {
+  pname = "menhir";
+
+  inherit (menhirLib) version src useDune2;
+
+  buildInputs = [ menhirLib menhirSdk ];
+
+  meta = menhirSdk.meta // {
+    description = "A LR(1) parser generator for OCaml";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/menhir/generic.nix b/nixpkgs/pkgs/development/ocaml-modules/menhir/generic.nix
deleted file mode 100644
index a917d634a19c..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/menhir/generic.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ version, src, lib, stdenv, ocaml, findlib, ocamlbuild, ... }:
-
-stdenv.mkDerivation {
-  pname = "menhir";
-  inherit version;
-
-  inherit src;
-
-  buildInputs = [ ocaml findlib ocamlbuild ];
-
-  createFindlibDestdir = true;
-
-  preBuild = ''
-    # fix makefiles.
-    RM=$(type -p rm)
-    CHMOD=$(type -p chmod)
-    for f in src/Makefile demos/OMakefile* demos/Makefile*
-    do
-      substituteInPlace $f \
-        --replace /bin/rm $RM \
-        --replace /bin/chmod $CHMOD
-    done
-
-    export PREFIX=$out
-  '';
-
-  meta = with lib; {
-    homepage = "http://pauillac.inria.fr/~fpottier/menhir/";
-    description = "A LR(1) parser generator for OCaml";
-    longDescription = ''
-      Menhir is a LR(1) parser generator for the Objective Caml programming
-      language.  That is, Menhir compiles LR(1) grammar specifications down
-      to OCaml code.  Menhir was designed and implemented by François Pottier
-      and Yann Régis-Gianas.
-    '';
-    license = with licenses; [
-      (if versionAtLeast version "20170418" then gpl2 else qpl) /* generator */
-      lgpl2 /* library */
-    ];
-    platforms = ocaml.meta.platforms or [];
-    maintainers = with maintainers; [ maggesi ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/menhir/lib.nix b/nixpkgs/pkgs/development/ocaml-modules/menhir/lib.nix
new file mode 100644
index 000000000000..3f6660f23ee9
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/menhir/lib.nix
@@ -0,0 +1,29 @@
+{ lib, fetchFromGitLab, buildDunePackage }:
+
+buildDunePackage rec {
+  pname = "menhirLib";
+  version = "20210419";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.inria.fr";
+    owner = "fpottier";
+    repo = "menhir";
+    rev = version;
+    sha256 = "0jcbr7s3iwfr7xxfybs3h407g76yfp5yq5r9i0wg2ahvvbqh03ky";
+  };
+
+  useDune2 = true;
+
+  meta = with lib; {
+    homepage = "http://pauillac.inria.fr/~fpottier/menhir/";
+    description = "Runtime support library for parsers generated by Menhir";
+    longDescription = ''
+      Menhir is a LR(1) parser generator for the Objective Caml programming
+      language.  That is, Menhir compiles LR(1) grammar specifications down
+      to OCaml code.  Menhir was designed and implemented by François Pottier
+      and Yann Régis-Gianas.
+    '';
+    license = with licenses; [ lgpl2Only ];
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/menhir/sdk.nix b/nixpkgs/pkgs/development/ocaml-modules/menhir/sdk.nix
new file mode 100644
index 000000000000..0e60849494cc
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/menhir/sdk.nix
@@ -0,0 +1,15 @@
+{ lib, fetchFromGitLab, buildDunePackage
+, menhirLib
+}:
+
+buildDunePackage rec {
+  pname = "menhirSdk";
+
+  inherit (menhirLib) version src useDune2;
+
+  meta = menhirLib.meta // {
+    description = "Compile-time library for auxiliary tools related to Menhir";
+    license = with lib.licenses; [ gpl2Only ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
index 3ddae57e9e8d..ea1636427038 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
@@ -1,27 +1,23 @@
 { lib, buildDunePackage, fetchurl
-, fmt, mirage-flow, result, rresult, cstruct, logs, ke
+, fmt, mirage-flow, result, rresult, cstruct, logs, ke, lwt
 , alcotest, alcotest-lwt, bigstringaf, bigarray-compat
 }:
 
 buildDunePackage rec {
   pname = "mimic";
-  version = "0.0.2";
+  version = "0.0.3";
 
   minimumOCamlVersion = "4.08";
   useDune2 = true;
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/${pname}-${pname}-v${version}.tbz";
-    sha256 = "3ad5af3caa1120ecfdf022de41ba5be8edfbf50270fc99238b82d3d2d6e7c317";
+    url = "https://github.com/dinosaure/mimic/releases/download/${version}/mimic-${version}.tbz";
+    sha256 = "e4743cd2e4f8242eb1ce9d8086fd2affba0eb6a62131309ffa279108bd3dbbcb";
   };
 
-  # don't install changelogs for other packages
-  postPatch = ''
-    rm -f CHANGES.md CHANGES.carton.md
-  '';
-
   propagatedBuildInputs = [
     fmt
+    lwt
     mirage-flow
     result
     rresult
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage/runtime.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage/runtime.nix
index 50121ad62802..aaa51aa276c4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage/runtime.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage/runtime.nix
@@ -3,7 +3,7 @@
 
 buildDunePackage rec {
   pname = "mirage-runtime";
-  version = "3.10.1";
+  version = "3.10.3";
 
   useDune2 = true;
 
@@ -11,7 +11,7 @@ buildDunePackage rec {
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage/releases/download/v${version}/mirage-v${version}.tbz";
-    sha256 = "1glmsz2znhfkk4w6d6nsr7q5jqvivhmi8zwagzw2d8pah0c8bhm4";
+    sha256 = "7c8059ef9e330eaef1ed51c0d89afe17900310f8083a426cd8099602222c2281";
   };
 
   propagatedBuildInputs = [ ipaddr functoria-runtime fmt logs ocaml_lwt ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mustache/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mustache/default.nix
index 005e26926d1a..b16dfd484814 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mustache/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mustache/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildDunePackage, fetchFromGitHub, ezjsonm, menhir, ounit }:
+{ lib, buildDunePackage, fetchFromGitHub, ezjsonm, menhir, menhirLib, ounit }:
 
 buildDunePackage rec {
   pname = "mustache";
@@ -11,8 +11,8 @@ buildDunePackage rec {
     sha256 = "19v8rk8d8lkfm2rmhdawfgadji6wa267ir5dprh4w9l1sfj8a1py";
   };
 
-  buildInputs = [ ezjsonm ];
-  propagatedBuildInputs = [ menhir ];
+  buildInputs = [ ezjsonm menhir ];
+  propagatedBuildInputs = [ menhirLib ];
 
   doCheck = true;
   checkInputs = [ ounit ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
index 4fde475cf936..a8912c0f5d58 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
@@ -1,24 +1,21 @@
 { lib, fetchurl, buildDunePackage }:
 
 buildDunePackage rec {
-
   pname = "ocaml-version";
-  version = "3.0.0";
-
-  minimumOCamlVersion = "4.07";
-
-  useDune2 = true;
+  version = "3.1.0";
 
   src = fetchurl {
     url = "https://github.com/ocurrent/ocaml-version/releases/download/v${version}/ocaml-version-v${version}.tbz";
-    sha256 = "15vk8sh50p3f2mbv8z7mqnx76cffri36f2krp25zkkwix8jg7ci4";
+    sha256 = "sha256-rHuhagnY9yISdC85NpgPv667aYx7v2JRgq99ayw83l8=";
   };
 
-  meta = {
+  minimumOCamlVersion = "4.07";
+  useDune2 = true;
+
+  meta = with lib; {
     description = "Manipulate, parse and generate OCaml compiler version strings";
     homepage = "https://github.com/ocurrent/ocaml-version";
-    license = lib.licenses.isc;
-    maintainers = [ lib.maintainers.vbgl ];
+    license = licenses.isc;
+    maintainers = with maintainers; [ vbgl ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
index 553ad9562cc8..2cb066a7c035 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
@@ -1,24 +1,22 @@
-{ stdenv, lib, fetchzip, ocaml, findlib, ocamlbuild, cppo }:
+{ lib, buildDunePackage, fetchzip, cppo }:
 
-let version = "1.0"; in
-
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-ocplib-endian-${version}";
+buildDunePackage rec {
+  version = "1.1";
+  pname = "ocplib-endian";
 
   src = fetchzip {
     url = "https://github.com/OCamlPro/ocplib-endian/archive/${version}.tar.gz";
-    sha256 = "0s1ld3kavz892b8awyxyg1mr98h2g61gy9ci5v6yb49bsii6wicw";
+    sha256 = "sha256-zKsSkhlZBXSqPtw+/WN3pwo9plM9rDZfMbGVfosqb10=";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild cppo ];
+  useDune2 = true;
 
-  createFindlibDestdir = true;
+  buildInputs = [ cppo ];
 
-  meta = {
+  meta = with lib; {
     description = "Optimised functions to read and write int16/32/64";
     homepage = "https://github.com/OCamlPro/ocplib-endian";
-    license = lib.licenses.lgpl21;
-    platforms = ocaml.meta.platforms or [];
-    maintainers = with lib.maintainers; [ vbgl ];
+    license = licenses.lgpl21;
+    maintainers = with maintainers; [ vbgl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocsigen-server/default.nix
index cf869b6e5ef9..aac8b27955b5 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocsigen-server/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocsigen-server/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchFromGitHub, which, ocaml, findlib, lwt_react, ssl, lwt_ssl
 , lwt_log, ocamlnet, ocaml_pcre, cryptokit, tyxml, xml-light, ipaddr
 , pgocaml, camlzip, ocaml_sqlite3
-, makeWrapper, fetchpatch
+, makeWrapper
 }:
 
 if !lib.versionAtLeast ocaml.version "4.06.1"
@@ -13,22 +13,16 @@ let mkpath = p: n:
 in
 
 stdenv.mkDerivation rec {
-  version = "2.16.0";
+  version = "2.18.0";
   pname = "ocsigenserver";
 
   src = fetchFromGitHub {
     owner = "ocsigen";
     repo = "ocsigenserver";
     rev = version;
-    sha256 = "0dd7zfk8dlajv0297dswaaqh96hjk2ppy8zb67jbkd26nimahk9y";
+    sha256 = "0c61wkq8ddy3qxb2x1jz04rz0722hk92r6jl1zvgikh74m5p5ipp";
   };
 
-  # unreleased fix for Makefile typos breaking compilation
-  patches = [ (fetchpatch {
-    url = "https://github.com/ocsigen/ocsigenserver/commit/014aefc4e460686a361b974f16ebb7e0c993b36b.patch";
-    sha256 = "0xda4fj8p5102lh9xmrn5mv3s0ps6yykqj3mpjf72gf4zd6fzcn7";
-  }) ];
-
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ which ocaml findlib lwt_react pgocaml camlzip ocaml_sqlite3 ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/octavius/default.nix b/nixpkgs/pkgs/development/ocaml-modules/octavius/default.nix
index c71c8f35f4ba..a4124df66640 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/octavius/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/octavius/default.nix
@@ -1,24 +1,25 @@
-{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
+{ lib, fetchFromGitHub, buildDunePackage, ocaml }:
 
-if !lib.versionAtLeast ocaml.version "4.03"
-then throw "octavius is not available for OCaml ${ocaml.version}" else
+buildDunePackage rec {
+  pname = "octavius";
+  version = "1.2.2";
 
-stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-octavius-0.2.0";
-  src = fetchurl {
-    url = "https://github.com/ocaml-doc/octavius/releases/download/v0.2.0/octavius-0.2.0.tbz";
-    sha256 = "02milzzlr4xk5aymg2fjz27f528d5pyscqvld3q0dm41zcpkz5ml";
+  src = fetchFromGitHub {
+    owner = "ocaml-doc";
+    repo = "octavius";
+    rev = "v${version}";
+    sha256 = "sha256-/S6WpIo1c5J9uM3xgtAM/elhnsl0XimnIFsKy3ootbA=";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg ];
+  minimumOCamlVersion = "4.03";
+  useDune2 = lib.versionAtLeast ocaml.version "4.08";
 
-  inherit (topkg) buildPhase installPhase;
+  doCheck = true;
 
-  meta = {
+  meta = with lib; {
     description = "Ocamldoc comment syntax parser";
     homepage = "https://github.com/ocaml-doc/octavius";
-    license = lib.licenses.isc;
-    maintainers = [ lib.maintainers.vbgl ];
-    inherit (ocaml.meta) platforms;
+    license = licenses.isc;
+    maintainers = with maintainers; [ vbgl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/optint/default.nix b/nixpkgs/pkgs/development/ocaml-modules/optint/default.nix
index 7f8ded5feb6c..2227f6e033ca 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/optint/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/optint/default.nix
@@ -1,12 +1,12 @@
 { lib, buildDunePackage, fetchurl }:
 
 buildDunePackage rec {
-  minimumOCamlVersion = "4.03";
-  version = "0.0.4";
+  minimumOCamlVersion = "4.07";
+  version = "0.1.0";
   pname = "optint";
   src = fetchurl {
     url = "https://github.com/mirage/optint/releases/download/v${version}/optint-v${version}.tbz";
-    sha256 = "1a7gabxqmfvii8qnxq1clx43md2h9glskxhac8y8r0rhzblx3s1a";
+    sha256 = "27847660223c16cc7eaf8fcd9d5589a0b802114330a2529578f8007d3b01185d";
   };
 
   useDune2 = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/paf/default.nix b/nixpkgs/pkgs/development/ocaml-modules/paf/default.nix
index 0c91051e2433..375ba1c125e8 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/paf/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/paf/default.nix
@@ -5,6 +5,7 @@
 , mirage-stack
 , mirage-time
 , httpaf
+, h2
 , tls-mirage
 , mimic
 , cohttp-lwt
@@ -31,11 +32,11 @@
 
 buildDunePackage rec {
   pname = "paf";
-  version = "0.0.1";
+  version = "0.0.3";
 
   src = fetchurl {
     url = "https://github.com/dinosaure/paf-le-chien/releases/download/${version}/paf-${version}.tbz";
-    sha256 = "7a794c21ce458bda302553b0f5ac128c067579fbb3b7b8fba9b410446c43e790";
+    sha256 = "a0bbb84b19e1f0255337fc4d7017f3ea3611b241746e391b11c1d8b1f5f30a2b";
   };
 
   useDune2 = true;
@@ -45,6 +46,7 @@ buildDunePackage rec {
     mirage-stack
     mirage-time
     httpaf
+    h2
     tls-mirage
     mimic
     cohttp-lwt
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_cmdliner/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_cmdliner/default.nix
new file mode 100644
index 000000000000..412ef9568db2
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_cmdliner/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildDunePackage
+, fetchFromGitHub
+, alcotest
+, cmdliner
+, ppx_deriving
+, ppxlib
+}:
+
+buildDunePackage rec {
+  pname = "ppx_deriving_cmdliner";
+  version = "0.6.0";
+
+  minimumOCamlVersion = "4.08";
+  useDune2 = true;
+
+  src = fetchFromGitHub {
+    owner = "hammerlab";
+    repo = "ppx_deriving_cmdliner";
+    rev = "v${version}";
+    sha256 = "19l32y2wv64d1c7fvln07dg3bkf7wf5inzjxlff7lbabskdbbras";
+  };
+
+  propagatedBuildInputs = [
+    cmdliner
+    ppx_deriving
+    ppxlib
+  ];
+
+  doCheck = true;
+  checkInputs = [
+    alcotest
+  ];
+
+  meta = with lib; {
+    description = "Ppx_deriving plugin for generating command line interfaces from types for OCaml";
+    inherit (src.meta) homepage;
+    license = licenses.asl20;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
index 87ccd85a07df..ee801f6adfd8 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
@@ -1,22 +1,23 @@
-{ lib, fetchurl, buildDunePackage, ocaml-migrate-parsetree }:
+{ lib, fetchurl, buildDunePackage, ppxlib }:
 
 buildDunePackage rec {
   pname = "ppx_gen_rec";
-  version = "1.1.0";
-
-  useDune2 = true;
+  version = "2.0.0";
 
   src = fetchurl {
     url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-v${version}.tbz";
-    sha256 = "0fwi4bknq8h9zgpsarjvnzdm9bm8qlyyw0lz30pihg02aiiljqbh";
+    sha256 = "sha256-/mMj5UT22KQGVy1sjgEoOgPzyCYyeDPtWJYNDvQ9nlk=";
   };
 
-  buildInputs = [ ocaml-migrate-parsetree ];
+  minimumOCamlVersion = "4.07";
+  useDune2 = true;
+
+  buildInputs = [ ppxlib ];
 
   meta = with lib; {
     homepage = "https://github.com/flowtype/ocaml-ppx_gen_rec";
-    description = "ocaml preprocessor that generates a recursive module";
+    description = "A ppx rewriter that transforms a recursive module expression into a struct.";
     license = licenses.mit;
-    maintainers = [ maintainers.frontsideair ];
+    maintainers = with maintainers; [ frontsideair ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ppx_import/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ppx_import/default.nix
index 4ad26ff0862b..6588d6db7f45 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ppx_import/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ppx_import/default.nix
@@ -1,7 +1,6 @@
 { lib, fetchurl, buildDunePackage
 , ppx_tools_versioned
 , ocaml-migrate-parsetree
-, ounit, ppx_deriving, ppxlib
 }:
 
 buildDunePackage rec {
@@ -21,9 +20,6 @@ buildDunePackage rec {
     ppx_tools_versioned ocaml-migrate-parsetree
   ];
 
-  doCheck = true;
-  checkInputs = [ ounit ppx_deriving ppxlib ];
-
   meta = {
     description = "A syntax extension that allows to pull in types or signatures from other compiled interface files";
     license = lib.licenses.mit;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix b/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
index de6877ddd68e..cd7e1e014e4d 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
@@ -1,30 +1,29 @@
-{ lib, buildDunePackage, fetchurl, fmt, uutf, jsonm, base64, either }:
+{ lib, buildDunePackage, fetchurl, base64, either, fmt, jsonm, uutf }:
 
 buildDunePackage rec {
   pname = "repr";
-  version = "0.2.1";
-
-  minimumOCamlVersion = "4.08";
+  version = "0.3.0";
 
   src = fetchurl {
     url = "https://github.com/mirage/${pname}/releases/download/${version}/${pname}-fuzz-${version}.tbz";
-    sha256 = "1cbzbawbn71mmpw8y84s1p2pbhc055w1znz64jvr00c7fdr9p8hc";
+    sha256 = "sha256-2b0v5RwutvyidzEDTEb5p33IvJ+3t2IW+KVxYD1ufXQ=";
   };
 
+  minimumOCamlVersion = "4.08";
   useDune2 = true;
 
   propagatedBuildInputs = [
-    fmt
-    uutf
-    jsonm
     base64
     either
+    fmt
+    jsonm
+    uutf
   ];
 
   meta = with lib; {
     description = "Dynamic type representations. Provides no stability guarantee";
     homepage = "https://github.com/mirage/repr";
     license = licenses.isc;
-    maintainers = [ maintainers.sternenseemann ];
+    maintainers = with maintainers; [ sternenseemann ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix b/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
index a1112ef9ac74..7ef2c55c2c26 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
@@ -1,4 +1,4 @@
-{ buildDunePackage, repr, ppxlib, ppx_deriving, alcotest, hex }:
+{ buildDunePackage, ppx_deriving, ppxlib, repr, alcotest, hex }:
 
 buildDunePackage {
   pname = "ppx_repr";
@@ -6,9 +6,9 @@ buildDunePackage {
   inherit (repr) src version useDune2;
 
   propagatedBuildInputs = [
-    repr
-    ppxlib
     ppx_deriving
+    ppxlib
+    repr
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/stdcompat/default.nix b/nixpkgs/pkgs/development/ocaml-modules/stdcompat/default.nix
new file mode 100644
index 000000000000..df5c1a58b17b
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/stdcompat/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchurl
+, ocaml, findlib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "ocaml${ocaml.version}-stdcompat";
+  version = "15";
+
+  src = fetchurl {
+    url = "https://github.com/thierry-martinez/stdcompat/releases/download/v${version}/stdcompat-${version}.tar.gz";
+    sha256 = "1xcwb529m4lg9cbnxa9m3x2nnl9nxzz1x5lxpvdfflg4zxl6yx2y";
+  };
+
+  buildInputs = [ ocaml findlib ];
+
+  configureFlags = "--libdir=$(OCAMLFIND_DESTDIR)";
+
+  meta = {
+    homepage = "https://github.com/thierry-martinez/stdcompat";
+    license = lib.licenses.bsd2;
+    maintainers = [ lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix
index 2ee01ed82194..dadeb5a98eaf 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix
@@ -1,17 +1,17 @@
 { lib, fetchurl, buildDunePackage, ppx_sexp_conv, ppx_cstruct, cstruct
 , cstruct-sexp, sexplib, mirage-crypto, mirage-crypto-pk, mirage-crypto-rng
-, x509, domain-name, fmt, cstruct-unix, ounit2, ocaml_lwt, ptime
-, hacl_x25519, fiat-p256, hkdf, logs, alcotest }:
+, x509, domain-name, fmt, cstruct-unix, ounit2, ocaml_lwt, ptime, rresult
+, mirage-crypto-ec, hkdf, logs, alcotest }:
 
 buildDunePackage rec {
   minimumOCamlVersion = "4.08";
 
-  version = "0.12.8";
+  version = "0.13.1";
   pname = "tls";
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-tls/releases/download/v${version}/tls-v${version}.tbz";
-    sha256 = "0sgppvfnamfnsglw1cl801i1xqkxbs33g40kwmmqj2vqjcarm26a";
+    sha256 = "ca95fa59a82f7d38b0b495fc0cd1ff54e7728492a292895d0067c1ba9de81b7b";
   };
 
   useDune2 = true;
@@ -21,8 +21,8 @@ buildDunePackage rec {
 
   propagatedBuildInputs = [ ppx_sexp_conv ppx_cstruct cstruct cstruct-sexp
                             sexplib mirage-crypto mirage-crypto-pk mirage-crypto-rng
-                            x509 domain-name fmt ocaml_lwt ptime hacl_x25519 fiat-p256
-                            hkdf logs ];
+                            x509 domain-name fmt ocaml_lwt ptime mirage-crypto-ec
+                            hkdf logs rresult ];
 
   meta = with lib; {
     homepage = "https://github.com/mirleft/ocaml-tls";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tls/mirage.nix b/nixpkgs/pkgs/development/ocaml-modules/tls/mirage.nix
index ad81c03c35d0..18d0f08357d4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tls/mirage.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tls/mirage.nix
@@ -1,6 +1,6 @@
 { buildDunePackage, tls
 , x509, lwt, fmt, mirage-flow, mirage-kv, mirage-clock, ptime
-, mirage-crypto, mirage-crypto-pk, hacl_x25519, fiat-p256
+, mirage-crypto, mirage-crypto-pk, mirage-crypto-ec
 }:
 
 buildDunePackage {
@@ -19,8 +19,7 @@ buildDunePackage {
     ptime
     mirage-crypto
     mirage-crypto-pk
-    hacl_x25519
-    fiat-p256
+    mirage-crypto-ec
   ];
 
   meta = tls.meta // {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tyxml/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tyxml/default.nix
index bf0e06507c9e..c49327d7d338 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tyxml/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tyxml/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "tyxml";
-  version = "4.4.0";
+  version = "4.5.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/ocsigen/tyxml/releases/download/${version}/tyxml-${version}.tbz";
-    sha256 = "0c150h2f4c4id73ickkdqkir3jya66m6c7f5jxlp4caw9bfr8qsi";
+    sha256 = "0s30f72m457c3gbdmdwbx7ls9zg806nvm83aiz9qkpglbppwr6n6";
   };
 
   propagatedBuildInputs = [ uutf re ];
@@ -19,7 +19,7 @@ buildDunePackage rec {
     license = licenses.lgpl21;
     maintainers = with maintainers; [
       gal_bolle vbgl
-      ];
+    ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix b/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix
index 7933b3bd8d42..f669a98c4def 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix
@@ -5,13 +5,13 @@
 buildDunePackage rec {
   minimumOCamlVersion = "4.03";
   pname = "uri";
-  version = "4.0.0";
+  version = "4.2.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/${pname}-v${version}.tbz";
-    sha256 = "13r9nkgym9z3dqxkyf0yyaqlrk5r3pjdw0kfzvrc90bmhwl9j380";
+    sha256 = "0szifda6yism5vn5jdizkha3ad0xk6zw4xgfl8g77dnv83ci7h65";
   };
 
   checkInputs = [ ounit ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/x509/default.nix b/nixpkgs/pkgs/development/ocaml-modules/x509/default.nix
index 637105361fda..0ce57b071689 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/x509/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/x509/default.nix
@@ -8,11 +8,11 @@ buildDunePackage rec {
   minimumOCamlVersion = "4.07";
 
   pname = "x509";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-x509/releases/download/v${version}/x509-v${version}.tbz";
-    sha256 = "04g59j8sn8am0z0a94h8cyvr6cqzd5gkn2lj6g51nb5dkwajj19h";
+    sha256 = "4577c2a616bda45cc777869fc44e272397d63a029135a993df8937bcfd6f6c49";
   };
 
   useDune2 = true;
diff --git a/nixpkgs/pkgs/development/octave-modules/audio/default.nix b/nixpkgs/pkgs/development/octave-modules/audio/default.nix
index 4fafefd6f75d..0cb03746085a 100644
--- a/nixpkgs/pkgs/development/octave-modules/audio/default.nix
+++ b/nixpkgs/pkgs/development/octave-modules/audio/default.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchurl
 , jack2
-, alsaLib
+, alsa-lib
 , rtmidi
 , pkg-config
 }:
@@ -22,7 +22,7 @@ buildOctavePackage rec {
 
   propagatedBuildInputs = [
     jack2
-    alsaLib
+    alsa-lib
     rtmidi
   ];
 
@@ -31,6 +31,6 @@ buildOctavePackage rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ KarlJoad ];
     description = "Audio and MIDI Toolbox for GNU Octave";
-    platforms = platforms.linux; # Because of run-time dependency on jack2 and alsaLib
+    platforms = platforms.linux; # Because of run-time dependency on jack2 and alsa-lib
   };
 }
diff --git a/nixpkgs/pkgs/development/perl-modules/TextBibTeX-use-lib-on-aarch64.patch b/nixpkgs/pkgs/development/perl-modules/TextBibTeX-use-lib-on-aarch64.patch
new file mode 100644
index 000000000000..42fa3728680b
--- /dev/null
+++ b/nixpkgs/pkgs/development/perl-modules/TextBibTeX-use-lib-on-aarch64.patch
@@ -0,0 +1,11 @@
+--- a/Build.PL
++++ b/Build.PL
+@@ -88,7 +88,7 @@ if ( $^O =~ /mswin32/i ) {
+     }
+ }
+ else {
+-    if ( $Config{archname} =~ /^x86_64|^ppc64|^s390x|^aarch64|^riscv64/ ) {
++    if ( $Config{archname} =~ /^x86_64|^ppc64|^s390x|^riscv64/ ) {
+         $libdir =~ s/\bbin\b/lib64/;
+         if ( !-d $libdir ) {
+             my $test = $libdir;
diff --git a/nixpkgs/pkgs/development/perl-modules/generic/default.nix b/nixpkgs/pkgs/development/perl-modules/generic/default.nix
index c7b57eae9067..9beacd65a646 100644
--- a/nixpkgs/pkgs/development/perl-modules/generic/default.nix
+++ b/nixpkgs/pkgs/development/perl-modules/generic/default.nix
@@ -5,10 +5,8 @@
 assert attrs?pname -> attrs?version;
 assert attrs?pname -> !(attrs?name);
 
-(if attrs ? name then
-  lib.trivial.warn "builtPerlPackage: `name' (\"${attrs.name}\") is deprecated, use `pname' and `version' instead"
- else
-  (x: x))
+lib.warnIf (attrs ? name) "builtPerlPackage: `name' (\"${attrs.name}\") is deprecated, use `pname' and `version' instead"
+
 toPerlModule(stdenv.mkDerivation (
   (
   lib.recursiveUpdate
diff --git a/nixpkgs/pkgs/development/pharo/vm/build-vm-legacy.nix b/nixpkgs/pkgs/development/pharo/vm/build-vm-legacy.nix
index bd5d1e91602d..88ef9f9efde8 100644
--- a/nixpkgs/pkgs/development/pharo/vm/build-vm-legacy.nix
+++ b/nixpkgs/pkgs/development/pharo/vm/build-vm-legacy.nix
@@ -10,9 +10,10 @@
 , libGL
 , freetype
 , xorg
-, alsaLib
+, alsa-lib
 , cairo
 , libuuid
+, libnsl
 , makeWrapper
 , ... }:
 
@@ -29,10 +30,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ unzip cmake gcc makeWrapper ];
 
   buildInputs = [ bash glibc openssl libGLU libGL freetype
-                  xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share ];
+                  xorg.libX11 xorg.libICE xorg.libSM alsa-lib cairo pharo-share libnsl ];
 
   LD_LIBRARY_PATH = lib.makeLibraryPath
-    [ cairo libGLU libGL freetype openssl libuuid alsaLib
+    [ cairo libGLU libGL freetype openssl libuuid alsa-lib
       xorg.libICE xorg.libSM ];
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/development/pharo/vm/build-vm.nix b/nixpkgs/pkgs/development/pharo/vm/build-vm.nix
index c1f703f72515..498e5c414727 100644
--- a/nixpkgs/pkgs/development/pharo/vm/build-vm.nix
+++ b/nixpkgs/pkgs/development/pharo/vm/build-vm.nix
@@ -8,7 +8,7 @@
 , libGLU, libGL
 , freetype
 , xorg
-, alsaLib
+, alsa-lib
 , cairo
 , libuuid
 , autoreconfHook
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     xorg.libX11
     xorg.libICE
     xorg.libSM
-    alsaLib
+    alsa-lib
     cairo
     pharo-share
     libuuid
@@ -115,7 +115,7 @@ stdenv.mkDerivation rec {
       freetype
       openssl
       libuuid
-      alsaLib
+      alsa-lib
       xorg.libICE
       xorg.libSM
     ];
diff --git a/nixpkgs/pkgs/development/pharo/vm/vms.nix b/nixpkgs/pkgs/development/pharo/vm/vms.nix
index 77bc5b0682fb..a51366820a9d 100644
--- a/nixpkgs/pkgs/development/pharo/vm/vms.nix
+++ b/nixpkgs/pkgs/development/pharo/vm/vms.nix
@@ -11,7 +11,7 @@
 , libGLU, libGL
 , freetype
 , xorg
-, alsaLib
+, alsa-lib
 , cairo
 , libuuid
 , autoreconfHook
@@ -19,6 +19,7 @@
 , fetchFromGitHub
 , makeWrapper
 , runtimeShell
+, libnsl
 } @args:
 
 let
diff --git a/nixpkgs/pkgs/development/php-packages/apcu/default.nix b/nixpkgs/pkgs/development/php-packages/apcu/default.nix
index 3301d949c228..0cfc7b4b44fd 100644
--- a/nixpkgs/pkgs/development/php-packages/apcu/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/apcu/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, lib, pcre' }:
+{ buildPecl, lib, pcre2 }:
 
 buildPecl {
   pname = "apcu";
@@ -6,12 +6,17 @@ buildPecl {
   version = "5.1.20";
   sha256 = "sha256-uZ1A+v7Ab00TL87lPnUm3b/B0EHqbgThc4nfrSj5w5A=";
 
-  buildInputs = [ pcre' ];
+  buildInputs = [ pcre2 ];
   doCheck = true;
   checkTarget = "test";
   checkFlagsArray = [ "REPORT_EXIT_STATUS=1" "NO_INTERACTION=1" ];
   makeFlags = [ "phpincludedir=$(dev)/include" ];
   outputs = [ "out" "dev" ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Userland cache for PHP";
+    license = licenses.php301;
+    homepage = "https://pecl.php.net/package/APCu";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/apcu_bc/default.nix b/nixpkgs/pkgs/development/php-packages/apcu_bc/default.nix
index 132a25a2df4c..e487a075dbde 100644
--- a/nixpkgs/pkgs/development/php-packages/apcu_bc/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/apcu_bc/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, lib, pcre', php }:
+{ buildPecl, lib, pcre2, php }:
 
 buildPecl {
   pname = "apcu_bc";
@@ -8,11 +8,17 @@ buildPecl {
 
   peclDeps = [ php.extensions.apcu ];
 
-  buildInputs = [ pcre' ];
+  buildInputs = [ pcre2 ];
 
   postInstall = ''
     mv $out/lib/php/extensions/apc.so $out/lib/php/extensions/apcu_bc.so
   '';
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "APCu Backwards Compatibility Module";
+    license = licenses.php301;
+    homepage = "https://pecl.php.net/package/apcu_bc";
+    maintainers = teams.php.members;
+    broken = versionAtLeast php.version "8";
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/ast/default.nix b/nixpkgs/pkgs/development/php-packages/ast/default.nix
index fb609b9f04f2..03cd439867a6 100644
--- a/nixpkgs/pkgs/development/php-packages/ast/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/ast/default.nix
@@ -6,5 +6,10 @@ buildPecl {
   version = "1.0.10";
   sha256 = "13s5r1szd80g1mqickghdd38mvjkwss221322mmbrykcfgp4fs30";
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Exposes the abstract syntax tree generated by PHP";
+    license = licenses.bsd3;
+    homepage = "https://pecl.php.net/package/ast";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/composer/1.x.nix b/nixpkgs/pkgs/development/php-packages/composer/1.x.nix
deleted file mode 100644
index 4660da9532dc..000000000000
--- a/nixpkgs/pkgs/development/php-packages/composer/1.x.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ mkDerivation, fetchurl, makeWrapper, unzip, lib, php }:
-let
-  pname = "composer";
-  version = "1.10.15";
-in
-mkDerivation {
-  inherit pname version;
-
-  src = fetchurl {
-    url = "https://getcomposer.org/download/${version}/composer.phar";
-    sha256 = "1shsxsrc2kq74s1jbq3njn9wzidcz7ak66n9vyz8z8d0hqpg37d6";
-  };
-
-  dontUnpack = true;
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  installPhase = ''
-    mkdir -p $out/bin
-    install -D $src $out/libexec/composer/composer.phar
-    makeWrapper ${php}/bin/php $out/bin/composer \
-      --add-flags "$out/libexec/composer/composer.phar" \
-      --prefix PATH : ${lib.makeBinPath [ unzip ]}
-  '';
-
-  meta = with lib; {
-    description = "Dependency Manager for PHP";
-    license = licenses.mit;
-    homepage = "https://getcomposer.org/";
-    maintainers = with maintainers; [ offline ] ++ teams.php.members;
-  };
-}
diff --git a/nixpkgs/pkgs/development/php-packages/composer/default.nix b/nixpkgs/pkgs/development/php-packages/composer/default.nix
index a7be06f1d049..aaa698e6d0c6 100644
--- a/nixpkgs/pkgs/development/php-packages/composer/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/composer/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, unzip, lib, php }:
 let
   pname = "composer";
-  version = "2.0.12";
+  version = "2.1.3";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://getcomposer.org/download/${version}/composer.phar";
-    sha256 = "sha256-guqMFTfPrOt+VvYATHzN+Z3a/OcjfAc3TZIOY1cwpjE=";
+    sha256 = "04ad2zsnf8qi6hzs9sak6y8xxyx8l0f7crmcimnp7nn8vsc2x9zq";
   };
 
   dontUnpack = true;
@@ -16,17 +16,20 @@ mkDerivation {
   nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
+    runHook preInstall
     mkdir -p $out/bin
     install -D $src $out/libexec/composer/composer.phar
     makeWrapper ${php}/bin/php $out/bin/composer \
       --add-flags "$out/libexec/composer/composer.phar" \
       --prefix PATH : ${lib.makeBinPath [ unzip ]}
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "Dependency Manager for PHP";
     license = licenses.mit;
     homepage = "https://getcomposer.org/";
+    changelog = "https://github.com/composer/composer/releases/tag/${version}";
     maintainers = with maintainers; [ offline ] ++ teams.php.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/couchbase/default.nix b/nixpkgs/pkgs/development/php-packages/couchbase/default.nix
index 24d4e02a3286..0b34ffe780a8 100644
--- a/nixpkgs/pkgs/development/php-packages/couchbase/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/couchbase/default.nix
@@ -14,7 +14,6 @@ buildPecl {
   };
 
   configureFlags = [ "--with-couchbase" ];
-  broken = lib.versionAtLeast php.version "8.0";
 
   buildInputs = [ libcouchbase zlib ];
   internalDeps = lib.optionals (lib.versionOlder php.version "8.0") [ php.extensions.json ];
@@ -45,5 +44,11 @@ buildPecl {
     '')
   ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Couchbase Server PHP extension";
+    license = licenses.asl20;
+    homepage = "https://docs.couchbase.com/php-sdk/current/project-docs/sdk-release-notes.html";
+    maintainers = teams.php.members;
+    broken = versionAtLeast php.version "8.0";
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/deployer/default.nix b/nixpkgs/pkgs/development/php-packages/deployer/default.nix
new file mode 100644
index 000000000000..7679fb5ea51b
--- /dev/null
+++ b/nixpkgs/pkgs/development/php-packages/deployer/default.nix
@@ -0,0 +1,33 @@
+{ mkDerivation, fetchurl, makeWrapper, installShellFiles, lib, php }:
+
+mkDerivation rec {
+  pname = "deployer";
+  version = "6.8.0";
+
+  src = fetchurl {
+    url = "https://deployer.org/releases/v${version}/${pname}.phar";
+    sha256 = "09mxwfa7yszsiljbkxpsd4sghqngl08cn18v4g1fbsxp3ib3kxi5";
+  };
+
+  dontUnpack = true;
+
+  nativeBuildInputs = [ makeWrapper installShellFiles ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install -D $src $out/libexec/deployer/deployer.phar
+    makeWrapper ${php}/bin/php $out/bin/dep --add-flags "$out/libexec/deployer/deployer.phar"
+
+    # fish support currently broken: https://github.com/deployphp/deployer/issues/2527
+    installShellCompletion --cmd dep \
+      --bash <($out/bin/dep autocomplete --install) \
+      --zsh <($out/bin/dep autocomplete --install)
+  '';
+
+  meta = with lib; {
+    description = "A deployment tool for PHP";
+    license = licenses.mit;
+    homepage = "https://deployer.org/";
+    maintainers = with maintainers; teams.php.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/php-packages/igbinary/default.nix b/nixpkgs/pkgs/development/php-packages/igbinary/default.nix
index 7a321cc90b4e..9e710f3c3d1e 100644
--- a/nixpkgs/pkgs/development/php-packages/igbinary/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/igbinary/default.nix
@@ -10,5 +10,10 @@ buildPecl {
   makeFlags = [ "phpincludedir=$(dev)/include" ];
   outputs = [ "out" "dev" ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Binary serialization for PHP";
+    license = licenses.bsd3;
+    homepage = "https://github.com/igbinary/igbinary/";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/imagick/default.nix b/nixpkgs/pkgs/development/php-packages/imagick/default.nix
index ebff9b00f02c..1af4f1a23b47 100644
--- a/nixpkgs/pkgs/development/php-packages/imagick/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/imagick/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, fetchpatch, lib, imagemagick, pkg-config, pcre' }:
+{ buildPecl, fetchpatch, lib, imagemagick, pkg-config, pcre2 }:
 
 buildPecl {
   pname = "imagick";
@@ -21,7 +21,12 @@ buildPecl {
 
   configureFlags = [ "--with-imagick=${imagemagick.dev}" ];
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ pcre' ];
+  buildInputs = [ pcre2 ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Imagick is a native php extension to create and modify images using the ImageMagick API";
+    license = licenses.php301;
+    homepage = "https://pecl.php.net/package/imagick";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/mailparse/default.nix b/nixpkgs/pkgs/development/php-packages/mailparse/default.nix
index 820bbbdbad6b..1981b3d6aea2 100644
--- a/nixpkgs/pkgs/development/php-packages/mailparse/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/mailparse/default.nix
@@ -11,5 +11,10 @@ buildPecl {
     echo "#define HAVE_MBSTRING 1" >> config.h
   '';
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Mailparse is an extension for parsing and working with email messages";
+    license = licenses.php301;
+    homepage = "https://pecl.php.net/package/mailparse";
+    maintainers = lib.teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/maxminddb/default.nix b/nixpkgs/pkgs/development/php-packages/maxminddb/default.nix
index 9a5a96e15c23..ae7ef3d0602f 100644
--- a/nixpkgs/pkgs/development/php-packages/maxminddb/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/maxminddb/default.nix
@@ -19,6 +19,7 @@ buildPecl {
   meta = with lib; {
     description = "C extension that is a drop-in replacement for MaxMind\\Db\\Reader";
     license = with licenses; [ asl20 ];
+    homepage = "https://github.com/maxmind/MaxMind-DB-Reader-php";
     maintainers = with maintainers; [ ajs124 das_j ] ++ teams.php.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/memcached/default.nix b/nixpkgs/pkgs/development/php-packages/memcached/default.nix
index 4880e08e0629..0aea58572cba 100644
--- a/nixpkgs/pkgs/development/php-packages/memcached/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/memcached/default.nix
@@ -26,5 +26,10 @@ buildPecl {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ cyrus_sasl zlib ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "PHP extension for interfacing with memcached via libmemcached library";
+    license = licenses.php301;
+    homepage = "https://github.com/php-memcached-dev/php-memcached";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/mongodb/default.nix b/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
index 95e51892f04e..f8cd990d2670 100644
--- a/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPecl, lib, pcre', pkg-config, cyrus_sasl, icu64
+{ stdenv, buildPecl, lib, pcre2, pkg-config, cyrus_sasl, icu64
 , openssl, snappy, zlib, darwin }:
 
 buildPecl {
@@ -14,8 +14,13 @@ buildPecl {
     openssl
     snappy
     zlib
-    pcre'
+    pcre2
   ] ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "MongoDB driver for PHP";
+    license = licenses.asl20;
+    homepage = "https://docs.mongodb.com/drivers/php/";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/oci8/default.nix b/nixpkgs/pkgs/development/php-packages/oci8/default.nix
index eeaffb4b7fc9..eb65b5a27cda 100644
--- a/nixpkgs/pkgs/development/php-packages/oci8/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/oci8/default.nix
@@ -11,5 +11,10 @@ buildPecl {
     sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${oracle-instantclient.dev}/include"|' config.m4
   '';
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Extension for Oracle Database";
+    license = licenses.php301;
+    homepage = "https://pecl.php.net/package/oci8";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/pcov/default.nix b/nixpkgs/pkgs/development/php-packages/pcov/default.nix
index 1422e1b176d4..8511ccbebc54 100644
--- a/nixpkgs/pkgs/development/php-packages/pcov/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/pcov/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, lib, pcre' }:
+{ buildPecl, lib, pcre2 }:
 
 buildPecl {
   pname = "pcov";
@@ -6,7 +6,12 @@ buildPecl {
   version = "1.0.8";
   sha256 = "sha256-6rbniyxLIHPW/e+eWZN1qS8F1rOB7ld1N8JKUS1geRQ=";
 
-  buildInputs = [ pcre' ];
+  buildInputs = [ pcre2 ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "A self contained php-code-coverage compatible driver for PHP.";
+    license = licenses.php301;
+    homepage = "https://github.com/krakjoe/pcov";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/pdlib/default.nix b/nixpkgs/pkgs/development/php-packages/pdlib/default.nix
index e217edd29ef7..5a1e431d52d8 100644
--- a/nixpkgs/pkgs/development/php-packages/pdlib/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/pdlib/default.nix
@@ -19,6 +19,7 @@ buildPecl {
   meta = with lib; {
     description = "A PHP extension for Dlib";
     license = with licenses; [ mit ];
+    homepage = "https://github.com/goodspb/pdlib";
     maintainers = lib.teams.php.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/pdo_sqlsrv/default.nix b/nixpkgs/pkgs/development/php-packages/pdo_sqlsrv/default.nix
index d80944ada09f..ab7e6e71fea5 100644
--- a/nixpkgs/pkgs/development/php-packages/pdo_sqlsrv/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/pdo_sqlsrv/default.nix
@@ -10,5 +10,10 @@ buildPecl {
 
   buildInputs = [ unixODBC ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Microsoft Drivers for PHP for SQL Server";
+    license = licenses.mit;
+    homepage = "https://github.com/Microsoft/msphpsql";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/php_excel/default.nix b/nixpkgs/pkgs/development/php-packages/php_excel/default.nix
index 8b83f558a53a..0930926a06e0 100644
--- a/nixpkgs/pkgs/development/php-packages/php_excel/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/php_excel/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, fetchurl, lib, libxl }:
+{ buildPecl, fetchurl, lib, libxl, php }:
 let
   pname = "php_excel";
   phpVersion = "php7";
@@ -20,5 +20,11 @@ buildPecl {
     "--with-libxl-libdir=${libxl}/lib"
   ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "PHP Extension interface to the Excel writing/reading library";
+    license = licenses.php301;
+    homepage = "https://github.com/iliaal/php_excel";
+    maintainers = lib.teams.php.members;
+    broken = lib.versionAtLeast php.version "8.0";
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/phpcbf/default.nix b/nixpkgs/pkgs/development/php-packages/phpcbf/default.nix
index da114a4d348f..caf3b515aabb 100644
--- a/nixpkgs/pkgs/development/php-packages/phpcbf/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/phpcbf/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, lib, php, makeWrapper }:
 let
   pname = "phpcbf";
-  version = "3.5.8";
+  version = "3.6.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
-    sha256 = "15ci30yvw3p9zlmzsk9s4mxzb3wax3gl9p55slhf1bzwn1xxwyb0";
+    sha256 = "04wb1imm4934mpy2hxcmqh4cn7md1vwmfii39p6mby809325b5z1";
   };
 
   phases = [ "installPhase" ];
diff --git a/nixpkgs/pkgs/development/php-packages/phpcs/default.nix b/nixpkgs/pkgs/development/php-packages/phpcs/default.nix
index d2053dbe9cb7..87433066ea99 100644
--- a/nixpkgs/pkgs/development/php-packages/phpcs/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/phpcs/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "phpcs";
-  version = "3.5.8";
+  version = "3.6.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
-    sha256 = "037mdnpbgd9xaj556pf14h02a4a6f5zzdg58p2z1sivxcygf8aka";
+    sha256 = "0sdi78hrwd3r5p1b38qmp89m41kfszh2qn4n5zhq2dmhsjdhjziz";
   };
 
   phases = [ "installPhase" ];
diff --git a/nixpkgs/pkgs/development/php-packages/phpmd/default.nix b/nixpkgs/pkgs/development/php-packages/phpmd/default.nix
index fde674701eb2..bf6979f88eae 100644
--- a/nixpkgs/pkgs/development/php-packages/phpmd/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/phpmd/default.nix
@@ -2,8 +2,6 @@
 let
   pname = "phpmd";
   version = "2.8.2";
-
-  isPhp74 = lib.versionAtLeast php.version "7.4";
 in
 mkDerivation {
   inherit pname version;
@@ -28,6 +26,6 @@ mkDerivation {
     license = licenses.bsd3;
     homepage = "https://phpmd.org/";
     maintainers = teams.php.members;
-    broken = !isPhp74;
+    broken = versionAtLeast php.version "7.4";
   };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/pinba/default.nix b/nixpkgs/pkgs/development/php-packages/pinba/default.nix
index 0880c2a46e21..0373e74d9fca 100644
--- a/nixpkgs/pkgs/development/php-packages/pinba/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/pinba/default.nix
@@ -1,24 +1,15 @@
 { buildPecl, lib, fetchFromGitHub, php }:
-let
-  pname = "pinba";
-
-  isPhp73 = lib.versionAtLeast php.version "7.3";
 
-  version = if isPhp73 then "1.1.2-dev" else "1.1.1";
+buildPecl {
+  pname = "pinba";
+  version = "1.1.2-dev";
 
-  src = fetchFromGitHub ({
+  src = fetchFromGitHub {
     owner = "tony2001";
     repo = "pinba_extension";
-  } // (if (isPhp73) then {
     rev = "edbc313f1b4fb8407bf7d5acf63fbb0359c7fb2e";
     sha256 = "02sljqm6griw8ccqavl23f7w1hp2zflcv24lpf00k6pyrn9cwx80";
-  } else {
-    rev = "RELEASE_1_1_1";
-    sha256 = "1kdp7vav0y315695vhm3xifgsh6h6y6pny70xw3iai461n58khj5";
-  }));
-in
-buildPecl {
-  inherit pname version src;
+  };
 
   meta = with lib; {
     description = "PHP extension for Pinba";
@@ -26,6 +17,7 @@ buildPecl {
       Pinba is a MySQL storage engine that acts as a realtime monitoring and
       statistics server for PHP using MySQL as a read-only interface.
     '';
+    license = licenses.lgpl2Plus;
     homepage = "http://pinba.org/";
     maintainers = teams.php.members;
   };
diff --git a/nixpkgs/pkgs/development/php-packages/protobuf/default.nix b/nixpkgs/pkgs/development/php-packages/protobuf/default.nix
index e2ef068120d7..2112e84cffff 100644
--- a/nixpkgs/pkgs/development/php-packages/protobuf/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/protobuf/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, lib, pcre', fetchpatch }:
+{ buildPecl, lib, pcre2, fetchpatch }:
 
 buildPecl {
   pname = "protobuf";
@@ -6,7 +6,7 @@ buildPecl {
   version = "3.14.0";
   sha256 = "1ldc4s28hq61cfg8l4c06pgicj0ng7k37f28a0dnnbs7xkr7cibd";
 
-  buildInputs = [ pcre' ];
+  buildInputs = [ pcre2 ];
 
   patches = [
     # TODO: remove with next update
diff --git a/nixpkgs/pkgs/development/php-packages/psysh/default.nix b/nixpkgs/pkgs/development/php-packages/psysh/default.nix
index 514706dc178c..c12eb6b4585b 100644
--- a/nixpkgs/pkgs/development/php-packages/psysh/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/psysh/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "psysh";
-  version = "0.10.4";
+  version = "0.10.8";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/bobthecow/psysh/releases/download/v${version}/psysh-v${version}.tar.gz";
-    sha256 = "005xh5rz12bsy9yvzzr69zpr0p7v4sh6cafhpinpfrvbwfq068f1";
+    sha256 = "sha256-6opSBKR5eI5HlaJy4A94JrxYfUtCCNVlyntmLZbWfOE=";
   };
 
   phases = [ "installPhase" ];
diff --git a/nixpkgs/pkgs/development/php-packages/pthreads/default.nix b/nixpkgs/pkgs/development/php-packages/pthreads/default.nix
deleted file mode 100644
index 31b32e82967d..000000000000
--- a/nixpkgs/pkgs/development/php-packages/pthreads/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ buildPecl, lib, fetchFromGitHub, php, pcre' }:
-let
-  pname = "pthreads";
-
-  isPhp73 = lib.versionAtLeast php.version "7.3";
-  isPhp74 = lib.versionAtLeast php.version "7.4";
-
-  version = if isPhp73 then "3.2.0-dev" else "3.2.0";
-
-  src = fetchFromGitHub ({
-    owner = "krakjoe";
-    repo = "pthreads";
-  } // (if (isPhp73) then {
-    rev = "4d1c2483ceb459ea4284db4eb06646d5715e7154";
-    sha256 = "07kdxypy0bgggrfav2h1ccbv67lllbvpa3s3zsaqci0gq4fyi830";
-  } else {
-    rev = "v3.2.0";
-    sha256 = "17hypm75d4w7lvz96jb7s0s87018yzmmap0l125d5fd7abnhzfvv";
-  }));
-in
-buildPecl {
-  inherit pname version src;
-
-  buildInputs = [ pcre'.dev ];
-
-  meta.broken = isPhp74;
-  meta.maintainers = lib.teams.php.members;
-}
diff --git a/nixpkgs/pkgs/development/php-packages/rdkafka/default.nix b/nixpkgs/pkgs/development/php-packages/rdkafka/default.nix
index 0e78d3bbc976..1b963a01ad5d 100644
--- a/nixpkgs/pkgs/development/php-packages/rdkafka/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/rdkafka/default.nix
@@ -1,4 +1,4 @@
-{ buildPecl, lib, rdkafka, pcre' }:
+{ buildPecl, lib, rdkafka, pcre2 }:
 
 buildPecl {
   pname = "rdkafka";
@@ -6,7 +6,7 @@ buildPecl {
   version = "5.0.0";
   sha256 = "sha256-Qy+6rkPczhdxFbDhcuzmUTLMPUXYZ0HaheDBhkh4FXs=";
 
-  buildInputs = [ rdkafka pcre' ];
+  buildInputs = [ rdkafka pcre2 ];
 
   postPhpize = ''
     substituteInPlace configure \
@@ -15,6 +15,7 @@ buildPecl {
 
   meta = with lib; {
     description = "Kafka client based on librdkafka";
+    license = licenses.mit;
     homepage = "https://github.com/arnaud-lb/php-rdkafka";
     maintainers = teams.php.members;
   };
diff --git a/nixpkgs/pkgs/development/php-packages/redis/default.nix b/nixpkgs/pkgs/development/php-packages/redis/default.nix
index fedc7a7ffde2..35e9a909b377 100644
--- a/nixpkgs/pkgs/development/php-packages/redis/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/redis/default.nix
@@ -14,5 +14,10 @@ buildPecl {
     hash
   ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "PHP extension for interfacing with Redis";
+    license = licenses.php301;
+    homepage = "https://github.com/phpredis/phpredis/";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/smbclient/default.nix b/nixpkgs/pkgs/development/php-packages/smbclient/default.nix
index 0b485e048052..65cfad9ea3ad 100644
--- a/nixpkgs/pkgs/development/php-packages/smbclient/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/smbclient/default.nix
@@ -10,5 +10,10 @@ buildPecl {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ samba ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "PHP wrapper for libsmbclient";
+    license = licenses.bsd2;
+    homepage = "https://github.com/eduardok/libsmbclient-php";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/snuffleupagus/default.nix b/nixpkgs/pkgs/development/php-packages/snuffleupagus/default.nix
new file mode 100644
index 000000000000..4318a49a8aa5
--- /dev/null
+++ b/nixpkgs/pkgs/development/php-packages/snuffleupagus/default.nix
@@ -0,0 +1,53 @@
+{ buildPecl
+, lib
+, php
+, fetchFromGitHub
+, pcre2
+, fetchpatch
+}:
+
+buildPecl rec {
+  pname = "snuffleupagus";
+  version = "0.7.0";
+  src = fetchFromGitHub {
+    owner = "jvoisin";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1la6wa9xznc110b7isiy502x71mkvhisq6m8llhczpq4rs4nbcw2";
+  };
+
+  buildInputs = [
+    pcre2
+  ];
+
+  internalDeps = with php.extensions; [
+    session
+  ] ++ lib.optionals (lib.versionOlder php.version "7.4") [
+    hash
+  ];
+
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/jvoisin/snuffleupagus/commit/3c528d9d03cec872382a6f400b5701a8fbfd59b4.patch";
+      sha256 = "0lnj4xcl867f477mha697d1py1nwxhl18dvvg40qgflpdbywlzns";
+      stripLen = 1;
+    })
+  ];
+
+  sourceRoot = "source/src";
+
+  configureFlags = [
+    "--enable-snuffleupagus"
+  ];
+
+  postPhpize = ''
+    ./configure --enable-snuffleupagus
+  '';
+
+  meta = with lib; {
+    description = "Security module for php7 and php8 - Killing bugclasses and virtual-patching the rest!";
+    license = licenses.lgpl3Only;
+    homepage = "https://github.com/jvoisin/snuffleupagus";
+    maintainers = teams.php.members ++ [ maintainers.zupo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/php-packages/sqlsrv/default.nix b/nixpkgs/pkgs/development/php-packages/sqlsrv/default.nix
index 4522129b2aa3..37ff1cb187ee 100644
--- a/nixpkgs/pkgs/development/php-packages/sqlsrv/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/sqlsrv/default.nix
@@ -10,5 +10,10 @@ buildPecl {
     unixODBC
   ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Microsoft Drivers for PHP for SQL Server";
+    license = licenses.mit;
+    homepage = "https://github.com/Microsoft/msphpsql";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/swoole/default.nix b/nixpkgs/pkgs/development/php-packages/swoole/default.nix
index b3d43acd1b32..ef228c2ddc3e 100644
--- a/nixpkgs/pkgs/development/php-packages/swoole/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/swoole/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPecl, php, valgrind, pcre' }:
+{ lib, buildPecl, php, valgrind, pcre2 }:
 
 buildPecl {
   pname = "swoole";
@@ -6,7 +6,7 @@ buildPecl {
   version = "4.6.4";
   sha256 = "0hgndnn27q7fbsb0nw6bfdg0kyy5di9vrmf7g53jc6lsnf73ha31";
 
-  buildInputs = [ valgrind pcre' ];
+  buildInputs = [ valgrind pcre2 ];
   internalDeps = lib.optionals (lib.versionOlder php.version "7.4") [ php.extensions.hash ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/php-packages/xdebug/default.nix b/nixpkgs/pkgs/development/php-packages/xdebug/default.nix
index 56341be436a0..eaadb4b1f544 100644
--- a/nixpkgs/pkgs/development/php-packages/xdebug/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/xdebug/default.nix
@@ -11,5 +11,10 @@ buildPecl {
 
   zendExtension = true;
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "Provides functions for function traces and profiling";
+    license = licenses.php301;
+    homepage = "https://xdebug.org/";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/php-packages/yaml/default.nix b/nixpkgs/pkgs/development/php-packages/yaml/default.nix
index 9bd30ff4e3c4..ef58b315faee 100644
--- a/nixpkgs/pkgs/development/php-packages/yaml/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/yaml/default.nix
@@ -10,5 +10,10 @@ buildPecl {
 
   nativeBuildInputs = [ pkg-config ];
 
-  meta.maintainers = lib.teams.php.members;
+  meta = with lib; {
+    description = "YAML-1.1 parser and emitter";
+    license = licenses.mit;
+    homepage = "http://bd808.com/pecl-file_formats-yaml/";
+    maintainers = teams.php.members;
+  };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/Babel/default.nix b/nixpkgs/pkgs/development/python-modules/Babel/default.nix
index 1074d2eef48c..183478396eb7 100644
--- a/nixpkgs/pkgs/development/python-modules/Babel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/Babel/default.nix
@@ -1,38 +1,17 @@
-{ stdenv, lib, buildPythonPackage, fetchPypi, fetchpatch, pytz, pytest, freezegun, glibcLocales }:
+{ stdenv, lib, buildPythonPackage, fetchPypi, pytz, pytestCheckHook, freezegun }:
 
 buildPythonPackage rec {
   pname = "Babel";
-  version = "2.7.0";
+  version = "2.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e86135ae101e31e2c8ec20a4e0c5220f4eed12487d5cf3f78be7e98d3a57fc28";
+    sha256 = "018yg7g2pa6vjixx1nx41cfispgfi0azzp0a1chlycbj8jsil0ys";
   };
 
-  patches = [
-    # The following 2 patches fix the test suite failing on nix < 2.3 with
-    # Python < 3 because those nix versions do not run in a pseudoterminal,
-    # which makes Python 2 not set the default encoding to UTF-8, and the
-    # Babel code crashes when printing a warning in that case.
-    # See #75676 and https://github.com/python-babel/babel/pull/691.
-    # It is important to fix this because otherwise Babel is not buildable
-    # with older nix versions (e.g. on machines used as --builders).
-    # TODO: Remove at release > 2.8.0.
-    (fetchpatch {
-      name = "Babel-Introduce-invariant-that-invalid_pofile-takes-unicode-line.patch";
-      url = "https://github.com/python-babel/babel/commit/f4f6653e6aa053724d2c6dc0ee71dcb928013352.patch";
-      sha256 = "1kyknwn9blspcf9yxmgdiaxdii1dnkblyhcflqwhxyl1mss1dxv5";
-    })
-    (fetchpatch {
-      name = "Babel-Fix-unicode-printing-error-on-Python-2-without-TTY.patch";
-      url = "https://github.com/python-babel/babel/commit/da7f31143847659b6b74d802618b03438aceb350.patch";
-      sha256 = "09yny8614knr8ngrrddmqzkxk70am135rccv2ncc6dji4xbqbfln";
-    })
-  ];
-
   propagatedBuildInputs = [ pytz ];
 
-  checkInputs = [ pytest freezegun ];
+  checkInputs = [ pytestCheckHook freezegun ];
 
   doCheck = !stdenv.isDarwin;
 
diff --git a/nixpkgs/pkgs/development/python-modules/FormEncode/default.nix b/nixpkgs/pkgs/development/python-modules/FormEncode/default.nix
index 74884f36f033..7a3967404c94 100644
--- a/nixpkgs/pkgs/development/python-modules/FormEncode/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/FormEncode/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, dnspython, pycountry, nose, setuptools_scm, six, isPy27 }:
+{ lib, buildPythonPackage, fetchPypi, dnspython, pycountry, nose, setuptools-scm, six, isPy27 }:
 
 buildPythonPackage rec {
   pname = "FormEncode";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py
   '';
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six ];
 
   checkInputs = [ dnspython pycountry nose ];
diff --git a/nixpkgs/pkgs/development/python-modules/Markups/default.nix b/nixpkgs/pkgs/development/python-modules/Markups/default.nix
index 012f31c266b2..d997b120d3bf 100644
--- a/nixpkgs/pkgs/development/python-modules/Markups/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/Markups/default.nix
@@ -5,6 +5,7 @@
 , markdown
 , docutils
 , pygments
+, pyyaml
 }:
 
 buildPythonPackage rec {
@@ -16,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "e309d79dde0935576ce1def6752f2127a12e2c2ea2ae8b0c69f99ff8bc12181d";
   };
 
-  checkInputs = [ markdown docutils pygments ];
+  checkInputs = [ markdown docutils pygments pyyaml ];
   propagatedBuildInputs = [ python-markdown-math ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/python-modules/MechanicalSoup/default.nix b/nixpkgs/pkgs/development/python-modules/MechanicalSoup/default.nix
deleted file mode 100644
index e4ce48158f64..000000000000
--- a/nixpkgs/pkgs/development/python-modules/MechanicalSoup/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ fetchPypi, buildPythonPackage, lib
-, requests, beautifulsoup4, six, lxml
-, pytestrunner, requests-mock, pytestcov, pytest
-}:
-
-buildPythonPackage rec {
-  pname = "MechanicalSoup";
-  version = "1.0.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "37d3b15c1957917d3ae171561e77f4dd4c08c35eb4500b8781f6e7e1bb6c4d07";
-  };
-
-  checkInputs = [ pytest pytestrunner requests-mock pytestcov ];
-
-  propagatedBuildInputs = [ lxml requests beautifulsoup4 six ];
-
-  # Requires network
-  doCheck = false;
-
-  postPatch = ''
-    # Is in setup_requires but not used in setup.py...
-    substituteInPlace setup.py --replace "'pytest-runner'" ""
-  '';
-
-  meta = with lib; {
-    description = "A Python library for automating interaction with websites";
-    homepage = "https://github.com/hickford/MechanicalSoup";
-    license = licenses.mit;
-    maintainers = [ maintainers.jgillich ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/Nikola/default.nix b/nixpkgs/pkgs/development/python-modules/Nikola/default.nix
index d8c49c99eba3..17a6e4d6a899 100644
--- a/nixpkgs/pkgs/development/python-modules/Nikola/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/Nikola/default.nix
@@ -1,79 +1,112 @@
 { lib
-, stdenv
+, aiohttp
+, Babel
+, blinker
 , buildPythonPackage
-, isPy3k
-, fetchPypi
-, doit
-, glibcLocales
-, pytest
-, pytestcov
-, mock
-, pygments
-, pillow
 , dateutil
 , docutils
-, Mako
-, unidecode
+, doit
+, fetchPypi
+, freezegun
+, ghp-import
+, hsluv
+, html5lib
+, ipykernel
+, jinja2
 , lxml
-, Yapsy
-, PyRSS2Gen
-, Logbook
-, blinker
-, natsort
-, requests
-, piexif
+, Mako
 , markdown
-, phpserialize
-, jinja2
-, Babel
-, freezegun
-, toml
+, micawber
+, mock
+, natsort
 , notebook
+, phpserialize
+, piexif
+, pillow
+, pygal
+, pygments
+, pyphen
+, PyRSS2Gen
+, pytestCheckHook
+, pythonOlder
+, requests
 , ruamel_yaml
-, aiohttp
+, stdenv
+, toml
+, typogrify
+, unidecode
 , watchdog
+, Yapsy
 }:
 
 buildPythonPackage rec {
   pname = "Nikola";
   version = "8.1.3";
-
-  # Nix contains only Python 3 supported version of doit, which is a dependency
-  # of Nikola. Python 2 support would require older doit 0.29.0 (which on the
-  # other hand doesn't support Python 3.3). So, just disable Python 2.
-  disabled = !isPy3k;
-
-  checkInputs = [ pytest pytestcov mock glibcLocales freezegun ];
-
-  propagatedBuildInputs = [
-    # requirements.txt
-    doit pygments pillow dateutil docutils Mako markdown unidecode
-    lxml Yapsy PyRSS2Gen Logbook blinker natsort requests piexif Babel
-    # requirements-extras.txt
-    phpserialize jinja2 toml notebook ruamel_yaml aiohttp watchdog
-  ];
+  disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "05eac356bb4273cdd05d2dd6ad676226133496c457af91987c3f0d40e2fe57ef";
   };
 
-  patchPhase = ''
-    # upstream added bound so that requires.io doesn't send mails about update
-    # nikola should work with markdown 3.0: https://github.com/getnikola/nikola/pull/3175#issue-220147596
-    sed -i 's/Markdown>.*/Markdown/' requirements.txt
-  '';
+  propagatedBuildInputs = [
+    aiohttp
+    Babel
+    blinker
+    dateutil
+    docutils
+    doit
+    ghp-import
+    hsluv
+    html5lib
+    ipykernel
+    jinja2
+    lxml
+    Mako
+    markdown
+    micawber
+    natsort
+    notebook
+    phpserialize
+    piexif
+    pillow
+    pygal
+    pygments
+    pyphen
+    PyRSS2Gen
+    requests
+    ruamel_yaml
+    toml
+    typogrify
+    unidecode
+    watchdog
+    Yapsy
+  ];
+
+  checkInputs = [
+    freezegun
+    mock
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
-    LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" py.test .
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "--cov nikola --cov-report term-missing" ""
   '';
 
-  meta = {
+  disabledTests = [
+    # AssertionError
+    "test_compiling_markdown"
+  ];
+
+  pythonImportsCheck = [ "nikola" ];
+
+  meta = with lib; {
+    description = "Static website and blog generator";
     homepage = "https://getnikola.com/";
-    description = "A modular, fast, simple, static website and blog generator";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ jluttine ];
-    # all tests fail
+    license = licenses.mit;
+    maintainers = with maintainers; [ jluttine ];
+    # All tests fail
     broken = stdenv.isDarwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/PyRMVtransport/default.nix b/nixpkgs/pkgs/development/python-modules/PyRMVtransport/default.nix
index cfbf3be1c40c..aee4789f93bf 100644
--- a/nixpkgs/pkgs/development/python-modules/PyRMVtransport/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/PyRMVtransport/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "PyRMVtransport";
-  version = "0.3.1";
+  version = "0.3.2";
   format = "pyproject";
   disabled = pythonOlder "3.6";
 
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "cgtobi";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1savzndg8l7rrc5dgzgsrdz9hnnjfv6qs5drznqmdw4f2rq84ypa";
+    sha256 = "0m74m3dhxmbv10hsvs7cpshzs3pg66va5lyq94i5j1nxrl9i7spb";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/accuweather/default.nix b/nixpkgs/pkgs/development/python-modules/accuweather/default.nix
index 01a299c89fde..ccacef6df575 100644
--- a/nixpkgs/pkgs/development/python-modules/accuweather/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/accuweather/default.nix
@@ -11,20 +11,20 @@
 
 buildPythonPackage rec {
   pname = "accuweather";
-  version = "0.1.1";
+  version = "0.2.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "bieniu";
     repo = pname;
     rev = version;
-    sha256 = "sha256-fjOwa13hxY8/gCM6TCAFWVmEY1oZyqKyc6o3OSsxHpY=";
+    sha256 = "sha256-Swe8vegRcyaeG4n/8aeGFLrXkwcLM/Al53yD6oD/0GA=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
       --replace "pytest-runner" ""
-    substituteInPlace pytest.ini \
+    substituteInPlace setup.cfg \
       --replace "--cov --cov-report term-missing" ""
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/acme-tiny/default.nix b/nixpkgs/pkgs/development/python-modules/acme-tiny/default.nix
index c979104914da..76e8a8401fd4 100644
--- a/nixpkgs/pkgs/development/python-modules/acme-tiny/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/acme-tiny/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, fusepy, fuse
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, fusepy, fuse
 , openssl }:
 
 buildPythonPackage rec {
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     substituteInPlace tests/monkey.py --replace /etc/ssl/openssl.cnf ${openssl.out}/etc/ssl/openssl.cnf
   '';
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   checkInputs = [ fusepy fuse ];
 
   doCheck = false; # seems to hang, not sure
diff --git a/nixpkgs/pkgs/development/python-modules/acoustics/default.nix b/nixpkgs/pkgs/development/python-modules/acoustics/default.nix
index 7b62c6791cb1..b652c28c6293 100644
--- a/nixpkgs/pkgs/development/python-modules/acoustics/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/acoustics/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   checkPhase = ''
     pushd tests
-    py.test ./.
+    py.test -Wignore::DeprecationWarning ./.
     popd
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index 2345f8cae469..64df2e02759c 100644
--- a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.6.0";
+  version = "3.13.4";
 
   src = fetchPypi {
     pname = "Adafruit-PlatformDetect";
     inherit version;
-    sha256 = "sha256-096bMTAh5d2wikrmlDcUspD9GYZlPHbdDcf/e/BLAHI=";
+    sha256 = "sha256-e8hliPYLvHR3JjZ4AFgJWjPW1vK10BYuVqUYtF54J5c=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix b/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
index 59eb468868a8..62922efa530c 100644
--- a/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonPackage rec {
   pname = "adb-enhanced";
-  version = "2.5.10";
+  version = "2.5.11";
 
   disabled = pythonOlder "3.4";
 
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     owner = "ashishb";
     repo = pname;
     rev = version;
-    sha256 = "sha256-JMbcOk9Yr4WbfVUMKe5zZZWvvjKwhpPMdBt9d7xE6ek=";
+    sha256 = "sha256-jb5O7Qxk2xAX5sax6nqywcGBJao5Xfff9s1yvdfvDCs=";
   };
 
   postPatch = ''
@@ -30,5 +30,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/ashishb/adb-enhanced";
     license = licenses.asl20;
     maintainers = with maintainers; [ vtuan10 ];
+    mainProgram = "adbe";
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix b/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
index 5377785ff25a..24ee4ee7ea44 100644
--- a/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "adb-shell";
-  version = "0.3.1";
+  version = "0.3.3";
 
   disabled = !isPy3k;
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "JeffLIrion";
     repo = "adb_shell";
     rev = "v${version}";
-    sha256 = "sha256-b+9ySme44TdIlVnF8AHBBGd8pkoeYG99wmDK/nyAreo=";
+    sha256 = "sha256-QVSPQk/QNnIjTgKGuIg0e58qCH91wn7e4TwgWSmOJEk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/adblock/default.nix b/nixpkgs/pkgs/development/python-modules/adblock/default.nix
index 8fc697828f0a..186e2e9e4437 100644
--- a/nixpkgs/pkgs/development/python-modules/adblock/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adblock/default.nix
@@ -3,18 +3,21 @@
 , fetchFromGitHub
 , buildPythonPackage
 , rustPlatform
-, pythonImportsCheckHook
 , pkg-config
 , openssl
 , publicsuffix-list
 , isPy27
+, libiconv
 , CoreFoundation
 , Security
+, pytestCheckHook
+, toml
+, python
 }:
 
 buildPythonPackage rec {
   pname = "adblock";
-  version = "0.4.0";
+  version = "0.4.4";
   disabled = isPy27;
 
   # Pypi only has binary releases
@@ -22,34 +25,43 @@ buildPythonPackage rec {
     owner = "ArniDagur";
     repo = "python-adblock";
     rev = version;
-    sha256 = "10d6ks2fyzbizq3kb69q478idj0h86k6ygjb6wl3zq3mf65ma4zg";
+    sha256 = "sha256-zNQ8zEpTLzyU5AnFBNpOGDJ02Ogu2+xl85LA+ia7Si4=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-gEFmj3/KvhvvsOK2nX2L1RUD4Wfp3nYzEzVnQZIsIDY=";
+    hash = "sha256-ajVZ0xPxC31hM1gQr3DC1HWdpIYBCSmqm0z2cflcClg=";
   };
 
   format = "pyproject";
 
-  nativeBuildInputs = [ pkg-config pythonImportsCheckHook ]
+  nativeBuildInputs = [ pkg-config ]
     ++ (with rustPlatform; [ cargoSetupHook maturinBuildHook ]);
 
   buildInputs = [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security ];
+    ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation Security ];
 
   PSL_PATH = "${publicsuffix-list}/share/publicsuffix/public_suffix_list.dat";
 
-  # There are no rust tests
-  doCheck = false;
+  checkInputs = [ pytestCheckHook toml ];
 
-  pythonImportsCheck = [ "adblock" ];
+  preCheck = ''
+    # import from $out instead
+    rm -r adblock
+  '';
+
+  disabledTestPaths = [
+    # relies on directory removed above
+    "tests/test_typestubs.py"
+  ];
+
+  pythonImportsCheck = [ "adblock" "adblock.adblock" ];
 
   meta = with lib; {
     description = "Python wrapper for Brave's adblocking library, which is written in Rust";
     homepage = "https://github.com/ArniDagur/python-adblock/";
-    maintainers = with maintainers; [ petabyteboy ];
+    maintainers = with maintainers; [ petabyteboy dotlambda ];
     license = with licenses; [ asl20 mit ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/adext/default.nix b/nixpkgs/pkgs/development/python-modules/adext/default.nix
index 12c86bfc8f5f..7b10b0de1b62 100644
--- a/nixpkgs/pkgs/development/python-modules/adext/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adext/default.nix
@@ -1,19 +1,24 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools-scm
 , alarmdecoder
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "adext";
-  version = "0.4.1";
+  version = "0.4.2";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1yz1rpfvhbf7kfjck5vadbj9rd3bkx5248whaa3impdrjh7vs03x";
+  src = fetchFromGitHub {
+    owner = "ajschmidt8";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0h5k9kzms2f0r48pdhsgv8pimk0vsxw8vs0k6880mank8ij914wr";
   };
 
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   nativeBuildInputs = [
     setuptools-scm
   ];
@@ -22,8 +27,10 @@ buildPythonPackage rec {
     alarmdecoder
   ];
 
-  # Tests are not published yet
-  doCheck = false;
+  checkInputs = [
+    pytestCheckHook
+  ];
+
   pythonImportsCheck = [ "adext" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aenum/default.nix b/nixpkgs/pkgs/development/python-modules/aenum/default.nix
index b5fb2999c961..35ccf68808c3 100644
--- a/nixpkgs/pkgs/development/python-modules/aenum/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aenum/default.nix
@@ -1,27 +1,35 @@
-{ lib, fetchPypi, buildPythonPackage, python, isPy3k, glibcLocales }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, pyparsing
+, python
+}:
 
 buildPythonPackage rec {
   pname = "aenum";
-  version = "3.0.0";
+  version = "3.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "17cd8cfed1ee4b617198c9fabbabd70ebd8f01e54ac29cd6c3a92df14bd86656";
+    sha256 = "sha256-h/Dp70+ChXirBq8w5NeUQEO/Ts0/S3vRy+N+IXPN6Uo=";
   };
 
-  # For Python 3, locale has to be set to en_US.UTF-8 for
-  # tests to pass
-  checkInputs = if isPy3k then [ glibcLocales ] else [];
+  checkInputs = [
+    pyparsing
+  ] ;
 
   # py2 likes to reorder tests
   doCheck = isPy3k;
+
   checkPhase = ''
-  runHook preCheck
-  ${if isPy3k then "export LC_ALL=en_US.UTF-8" else ""}
-  PYTHONPATH=`pwd` ${python.interpreter} aenum/test.py
-  runHook postCheck
+    runHook preCheck
+    ${python.interpreter} aenum/test.py
+    runHook postCheck
   '';
 
+  pythonImportsCheck = [ "aenum" ];
+
   meta = with lib; {
     description = "Advanced Enumerations (compatible with Python's stdlib Enum), NamedTuples, and NamedConstants";
     maintainers = with maintainers; [ vrthra ];
diff --git a/nixpkgs/pkgs/development/python-modules/afdko/default.nix b/nixpkgs/pkgs/development/python-modules/afdko/default.nix
index f86151f2f51f..9a4dbbab3745 100644
--- a/nixpkgs/pkgs/development/python-modules/afdko/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/afdko/default.nix
@@ -2,7 +2,7 @@
 , fonttools, defcon, lxml, fs, unicodedata2, zopfli, brotlipy, fontpens
 , brotli, fontmath, mutatormath, booleanoperations
 , ufoprocessor, ufonormalizer, psautohint, tqdm
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook
 }:
 
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     booleanoperations
diff --git a/nixpkgs/pkgs/development/python-modules/agate-excel/default.nix b/nixpkgs/pkgs/development/python-modules/agate-excel/default.nix
index af98bbded8c4..752c905ee8e6 100644
--- a/nixpkgs/pkgs/development/python-modules/agate-excel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/agate-excel/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, buildPythonPackage
-, agate, openpyxl, xlrd, nose
+, agate, openpyxl, xlrd, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -13,11 +13,12 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ agate openpyxl xlrd ];
 
-  checkInputs = [ nose ];
+  checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    nosetests
-  '';
+  disabledTests = [
+    # See https://github.com/wireservice/agate-excel/issues/45
+    "test_ambiguous_date"
+  ];
 
   meta = with lib; {
     description = "Adds read support for excel files to agate";
diff --git a/nixpkgs/pkgs/development/python-modules/ailment/default.nix b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
index f7194f8dd2f5..e555d69169b5 100644
--- a/nixpkgs/pkgs/development/python-modules/ailment/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.0.6852";
+  version = "9.0.7912";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-yIYZubZ8073voe4C78QITP3Pau/mrpNTyhPpU/QftXo=";
+    sha256 = "sha256-q1mi8ZNvjb3XM3le4ysy58bb978102OFKypTp9mSzxo=";
   };
 
   propagatedBuildInputs = [ pyvex ];
diff --git a/nixpkgs/pkgs/development/python-modules/aio-georss-client/default.nix b/nixpkgs/pkgs/development/python-modules/aio-georss-client/default.nix
new file mode 100644
index 000000000000..1ac37e8b602a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aio-georss-client/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, aiohttp
+, aresponses
+, asynctest
+, buildPythonPackage
+, dateparser
+, fetchFromGitHub
+, haversine
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, requests
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "aio-georss-client";
+  version = "0.7";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-aio-georss-client";
+    rev = "v${version}";
+    sha256 = "1nhw2sf92dbizxdcil1wdmbaa3hbmsiriy8jfzpqxsliw5dc0kmh";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    haversine
+    xmltodict
+    requests
+    dateparser
+  ];
+
+  checkInputs = [
+    aresponses
+    asynctest
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "aio_georss_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing GeoRSS feeds";
+    homepage = "https://github.com/exxamalte/python-aio-georss-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/aio-georss-gdacs/default.nix b/nixpkgs/pkgs/development/python-modules/aio-georss-gdacs/default.nix
new file mode 100644
index 000000000000..6b6d295f8b86
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aio-georss-gdacs/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, aio-georss-client
+, aresponses
+, buildPythonPackage
+, dateparser
+, fetchFromGitHub
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aio-georss-gdacs";
+  version = "0.5";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-aio-georss-gdacs";
+    rev = "v${version}";
+    sha256 = "sha256-CIQoQRk5KIPEa/Y/7C1NPctuHvoiZ/o2bDa5YSWY+9M=";
+  };
+
+  propagatedBuildInputs = [
+    aio-georss-client
+    dateparser
+  ];
+
+  checkInputs = [
+    aresponses
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "aio_georss_gdacs" ];
+
+  meta = with lib; {
+    description = "Python library for accessing GeoRSS feeds";
+    homepage = "https://github.com/exxamalte/python-aio-georss-gdacs";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/aioambient/default.nix b/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
index 5e504ab87a02..83c74925b8cd 100644
--- a/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
@@ -5,8 +5,8 @@
 , buildPythonPackage
 , fetchFromGitHub
 , poetry-core
+, pytest-aiohttp
 , pytest-asyncio
-, pytest-cov
 , pytestCheckHook
 , python-engineio
 , python-socketio
@@ -27,7 +27,9 @@ buildPythonPackage rec {
     sha256 = "sha256-uqvM5F0rpw+xeCXYl4lGMt3r0ugPsUmSvujmTJ9HABk=";
   };
 
-  nativeBuildInputs = [ poetry-core ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
   propagatedBuildInputs = [
     aiohttp
@@ -39,13 +41,20 @@ buildPythonPackage rec {
   checkInputs = [
     aresponses
     asynctest
+    pytest-aiohttp
     pytest-asyncio
-    pytest-cov
     pytestCheckHook
   ];
 
+  postPatch = ''
+    # https://github.com/bachya/aioambient/pull/84
+    substituteInPlace pyproject.toml \
+      --replace 'websockets = "^8.1"' 'websockets = ">=8.1,<10.0"'
+  '';
+
   # Ignore the examples directory as the files are prefixed with test_
-  pytestFlagsArray = [ "--ignore examples/" ];
+  disabledTestPaths = [ "examples/" ];
+
   pythonImportsCheck = [ "aioambient" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch b/nixpkgs/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch
new file mode 100644
index 000000000000..0d319eb2a0d4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aioamqp/compat-pamqp-3.patch
@@ -0,0 +1,498 @@
+From 17b5be250cb5ecf95cf4f77c8c930450d876efa6 Mon Sep 17 00:00:00 2001
+From: dzen <benoit.calvez@polyconseil.fr>
+Date: Thu, 12 Mar 2020 08:32:29 +0100
+Subject: [PATCH 1/3] Moves to pamqp 3.0
+
+---
+ aioamqp/channel.py        | 114 +++++++++++++++++++-------------------
+ aioamqp/frame.py          |   1 -
+ aioamqp/protocol.py       |  22 ++++----
+ aioamqp/tests/testcase.py |   2 +-
+ 4 files changed, 69 insertions(+), 70 deletions(-)
+
+diff --git a/aioamqp/channel.py b/aioamqp/channel.py
+index 7f0f402..ea164c4 100644
+--- a/aioamqp/channel.py
++++ b/aioamqp/channel.py
+@@ -9,7 +9,7 @@
+ from itertools import count
+ import warnings
+ 
+-import pamqp.specification
++import pamqp.commands
+ 
+ from . import frame as amqp_frame
+ from . import exceptions
+@@ -78,35 +78,35 @@ def connection_closed(self, server_code=None, server_reason=None, exception=None
+ 
+     async def dispatch_frame(self, frame):
+         methods = {
+-            pamqp.specification.Channel.OpenOk.name: self.open_ok,
+-            pamqp.specification.Channel.FlowOk.name: self.flow_ok,
+-            pamqp.specification.Channel.CloseOk.name: self.close_ok,
+-            pamqp.specification.Channel.Close.name: self.server_channel_close,
+-
+-            pamqp.specification.Exchange.DeclareOk.name: self.exchange_declare_ok,
+-            pamqp.specification.Exchange.BindOk.name: self.exchange_bind_ok,
+-            pamqp.specification.Exchange.UnbindOk.name: self.exchange_unbind_ok,
+-            pamqp.specification.Exchange.DeleteOk.name: self.exchange_delete_ok,
+-
+-            pamqp.specification.Queue.DeclareOk.name: self.queue_declare_ok,
+-            pamqp.specification.Queue.DeleteOk.name: self.queue_delete_ok,
+-            pamqp.specification.Queue.BindOk.name: self.queue_bind_ok,
+-            pamqp.specification.Queue.UnbindOk.name: self.queue_unbind_ok,
+-            pamqp.specification.Queue.PurgeOk.name: self.queue_purge_ok,
+-
+-            pamqp.specification.Basic.QosOk.name: self.basic_qos_ok,
+-            pamqp.specification.Basic.ConsumeOk.name: self.basic_consume_ok,
+-            pamqp.specification.Basic.CancelOk.name: self.basic_cancel_ok,
+-            pamqp.specification.Basic.GetOk.name: self.basic_get_ok,
+-            pamqp.specification.Basic.GetEmpty.name: self.basic_get_empty,
+-            pamqp.specification.Basic.Deliver.name: self.basic_deliver,
+-            pamqp.specification.Basic.Cancel.name: self.server_basic_cancel,
+-            pamqp.specification.Basic.Ack.name: self.basic_server_ack,
+-            pamqp.specification.Basic.Nack.name: self.basic_server_nack,
+-            pamqp.specification.Basic.RecoverOk.name: self.basic_recover_ok,
+-            pamqp.specification.Basic.Return.name: self.basic_return,
+-
+-            pamqp.specification.Confirm.SelectOk.name: self.confirm_select_ok,
++            pamqp.commands.Channel.OpenOk.name: self.open_ok,
++            pamqp.commands.Channel.FlowOk.name: self.flow_ok,
++            pamqp.commands.Channel.CloseOk.name: self.close_ok,
++            pamqp.commands.Channel.Close.name: self.server_channel_close,
++
++            pamqp.commands.Exchange.DeclareOk.name: self.exchange_declare_ok,
++            pamqp.commands.Exchange.BindOk.name: self.exchange_bind_ok,
++            pamqp.commands.Exchange.UnbindOk.name: self.exchange_unbind_ok,
++            pamqp.commands.Exchange.DeleteOk.name: self.exchange_delete_ok,
++
++            pamqp.commands.Queue.DeclareOk.name: self.queue_declare_ok,
++            pamqp.commands.Queue.DeleteOk.name: self.queue_delete_ok,
++            pamqp.commands.Queue.BindOk.name: self.queue_bind_ok,
++            pamqp.commands.Queue.UnbindOk.name: self.queue_unbind_ok,
++            pamqp.commands.Queue.PurgeOk.name: self.queue_purge_ok,
++
++            pamqp.commands.Basic.QosOk.name: self.basic_qos_ok,
++            pamqp.commands.Basic.ConsumeOk.name: self.basic_consume_ok,
++            pamqp.commands.Basic.CancelOk.name: self.basic_cancel_ok,
++            pamqp.commands.Basic.GetOk.name: self.basic_get_ok,
++            pamqp.commands.Basic.GetEmpty.name: self.basic_get_empty,
++            pamqp.commands.Basic.Deliver.name: self.basic_deliver,
++            pamqp.commands.Basic.Cancel.name: self.server_basic_cancel,
++            pamqp.commands.Basic.Ack.name: self.basic_server_ack,
++            pamqp.commands.Basic.Nack.name: self.basic_server_nack,
++            pamqp.commands.Basic.RecoverOk.name: self.basic_recover_ok,
++            pamqp.commands.Basic.Return.name: self.basic_return,
++
++            pamqp.commands.Confirm.SelectOk.name: self.confirm_select_ok,
+         }
+ 
+         if frame.name not in methods:
+@@ -144,7 +144,7 @@ async def _write_frame_awaiting_response(self, waiter_id, channel_id, request,
+ 
+     async def open(self):
+         """Open the channel on the server."""
+-        request = pamqp.specification.Channel.Open()
++        request = pamqp.commands.Channel.Open()
+         return (await self._write_frame_awaiting_response(
+             'open', self.channel_id, request, no_wait=False, check_open=False))
+ 
+@@ -159,7 +159,7 @@ async def close(self, reply_code=0, reply_text="Normal Shutdown"):
+         if not self.is_open:
+             raise exceptions.ChannelClosed("channel already closed or closing")
+         self.close_event.set()
+-        request = pamqp.specification.Channel.Close(reply_code, reply_text, class_id=0, method_id=0)
++        request = pamqp.commands.Channel.Close(reply_code, reply_text, class_id=0, method_id=0)
+         return (await self._write_frame_awaiting_response(
+             'close', self.channel_id, request, no_wait=False, check_open=False))
+ 
+@@ -169,7 +169,7 @@ async def close_ok(self, frame):
+         self.protocol.release_channel_id(self.channel_id)
+ 
+     async def _send_channel_close_ok(self):
+-        request = pamqp.specification.Channel.CloseOk()
++        request = pamqp.commands.Channel.CloseOk()
+         await self._write_frame(self.channel_id, request)
+ 
+     async def server_channel_close(self, frame):
+@@ -183,7 +183,7 @@ async def server_channel_close(self, frame):
+         self.connection_closed(results['reply_code'], results['reply_text'])
+ 
+     async def flow(self, active):
+-        request = pamqp.specification.Channel.Flow(active)
++        request = pamqp.commands.Channel.Flow(active)
+         return (await self._write_frame_awaiting_response(
+             'flow', self.channel_id, request, no_wait=False,
+             check_open=False))
+@@ -201,7 +201,7 @@ async def flow_ok(self, frame):
+ 
+     async def exchange_declare(self, exchange_name, type_name, passive=False, durable=False,
+                          auto_delete=False, no_wait=False, arguments=None):
+-        request = pamqp.specification.Exchange.Declare(
++        request = pamqp.commands.Exchange.Declare(
+             exchange=exchange_name,
+             exchange_type=type_name,
+             passive=passive,
+@@ -222,7 +222,7 @@ async def exchange_declare_ok(self, frame):
+         return future
+ 
+     async def exchange_delete(self, exchange_name, if_unused=False, no_wait=False):
+-        request = pamqp.specification.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait)
++        request = pamqp.commands.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait)
+         return await self._write_frame_awaiting_response(
+             'exchange_delete', self.channel_id, request, no_wait)
+ 
+@@ -235,7 +235,7 @@ async def exchange_bind(self, exchange_destination, exchange_source, routing_key
+                       no_wait=False, arguments=None):
+         if arguments is None:
+             arguments = {}
+-        request = pamqp.specification.Exchange.Bind(
++        request = pamqp.commands.Exchange.Bind(
+             destination=exchange_destination,
+             source=exchange_source,
+             routing_key=routing_key,
+@@ -255,7 +255,7 @@ async def exchange_unbind(self, exchange_destination, exchange_source, routing_k
+         if arguments is None:
+             arguments = {}
+ 
+-        request = pamqp.specification.Exchange.Unbind(
++        request = pamqp.commands.Exchange.Unbind(
+             destination=exchange_destination,
+             source=exchange_source,
+             routing_key=routing_key,
+@@ -297,7 +297,7 @@ async def queue_declare(self, queue_name=None, passive=False, durable=False,
+ 
+         if not queue_name:
+             queue_name = 'aioamqp.gen-' + str(uuid.uuid4())
+-        request = pamqp.specification.Queue.Declare(
++        request = pamqp.commands.Queue.Declare(
+             queue=queue_name,
+             passive=passive,
+             durable=durable,
+@@ -327,7 +327,7 @@ async def queue_delete(self, queue_name, if_unused=False, if_empty=False, no_wai
+                if_empty:       bool, the queue is deleted if it has no messages. Raise if not.
+                no_wait:        bool, if set, the server will not respond to the method
+         """
+-        request = pamqp.specification.Queue.Delete(
++        request = pamqp.commands.Queue.Delete(
+             queue=queue_name,
+             if_unused=if_unused,
+             if_empty=if_empty,
+@@ -346,7 +346,7 @@ async def queue_bind(self, queue_name, exchange_name, routing_key, no_wait=False
+         if arguments is None:
+             arguments = {}
+ 
+-        request = pamqp.specification.Queue.Bind(
++        request = pamqp.commands.Queue.Bind(
+             queue=queue_name,
+             exchange=exchange_name,
+             routing_key=routing_key,
+@@ -367,7 +367,7 @@ async def queue_unbind(self, queue_name, exchange_name, routing_key, arguments=N
+         if arguments is None:
+             arguments = {}
+ 
+-        request = pamqp.specification.Queue.Unbind(
++        request = pamqp.commands.Queue.Unbind(
+             queue=queue_name,
+             exchange=exchange_name,
+             routing_key=routing_key,
+@@ -383,7 +383,7 @@ async def queue_unbind_ok(self, frame):
+         logger.debug("Queue unbound")
+ 
+     async def queue_purge(self, queue_name, no_wait=False):
+-        request = pamqp.specification.Queue.Purge(
++        request = pamqp.commands.Queue.Purge(
+             queue=queue_name, nowait=no_wait
+         )
+         return (await self._write_frame_awaiting_response(
+@@ -406,7 +406,7 @@ async def basic_publish(self, payload, exchange_name, routing_key,
+         if properties is None:
+             properties = {}
+ 
+-        method_request = pamqp.specification.Basic.Publish(
++        method_request = pamqp.commands.Basic.Publish(
+             exchange=exchange_name,
+             routing_key=routing_key,
+             mandatory=mandatory,
+@@ -417,7 +417,7 @@ async def basic_publish(self, payload, exchange_name, routing_key,
+ 
+         header_request = pamqp.header.ContentHeader(
+             body_size=len(payload),
+-            properties=pamqp.specification.Basic.Properties(**properties)
++            properties=pamqp.commands.Basic.Properties(**properties)
+         )
+         await self._write_frame(self.channel_id, header_request, drain=False)
+ 
+@@ -446,7 +446,7 @@ async def basic_qos(self, prefetch_size=0, prefetch_count=0, connection_global=F
+                                 settings should apply per-consumer channel; and global=true to mean
+                                 that the QoS settings should apply per-channel.
+         """
+-        request = pamqp.specification.Basic.Qos(
++        request = pamqp.commands.Basic.Qos(
+             prefetch_size, prefetch_count, connection_global
+         )
+         return (await self._write_frame_awaiting_response(
+@@ -490,7 +490,7 @@ async def basic_consume(self, callback, queue_name='', consumer_tag='', no_local
+         if arguments is None:
+             arguments = {}
+ 
+-        request = pamqp.specification.Basic.Consume(
++        request = pamqp.commands.Basic.Consume(
+             queue=queue_name,
+             consumer_tag=consumer_tag,
+             no_local=no_local,
+@@ -561,7 +561,7 @@ async def server_basic_cancel(self, frame):
+                              callback, error)
+ 
+     async def basic_cancel(self, consumer_tag, no_wait=False):
+-        request = pamqp.specification.Basic.Cancel(consumer_tag, no_wait)
++        request = pamqp.commands.Basic.Cancel(consumer_tag, no_wait)
+         return (await self._write_frame_awaiting_response(
+             'basic_cancel', self.channel_id, request, no_wait=no_wait)
+         )
+@@ -575,7 +575,7 @@ async def basic_cancel_ok(self, frame):
+         logger.debug("Cancel ok")
+ 
+     async def basic_get(self, queue_name='', no_ack=False):
+-        request = pamqp.specification.Basic.Get(queue=queue_name, no_ack=no_ack)
++        request = pamqp.commands.Basic.Get(queue=queue_name, no_ack=no_ack)
+         return (await self._write_frame_awaiting_response(
+             'basic_get', self.channel_id, request, no_wait=False)
+         )
+@@ -606,11 +606,11 @@ async def basic_get_empty(self, frame):
+         future.set_exception(exceptions.EmptyQueue)
+ 
+     async def basic_client_ack(self, delivery_tag, multiple=False):
+-        request = pamqp.specification.Basic.Ack(delivery_tag, multiple)
++        request = pamqp.commands.Basic.Ack(delivery_tag, multiple)
+         await self._write_frame(self.channel_id, request)
+ 
+     async def basic_client_nack(self, delivery_tag, multiple=False, requeue=True):
+-        request = pamqp.specification.Basic.Nack(delivery_tag, multiple, requeue)
++        request = pamqp.commands.Basic.Nack(delivery_tag, multiple, requeue)
+         await self._write_frame(self.channel_id, request)
+ 
+     async def basic_server_ack(self, frame):
+@@ -620,15 +620,15 @@ async def basic_server_ack(self, frame):
+         fut.set_result(True)
+ 
+     async def basic_reject(self, delivery_tag, requeue=False):
+-        request = pamqp.specification.Basic.Reject(delivery_tag, requeue)
++        request = pamqp.commands.Basic.Reject(delivery_tag, requeue)
+         await self._write_frame(self.channel_id, request)
+ 
+     async def basic_recover_async(self, requeue=True):
+-        request = pamqp.specification.Basic.RecoverAsync(requeue)
++        request = pamqp.commands.Basic.RecoverAsync(requeue)
+         await self._write_frame(self.channel_id, request)
+ 
+     async def basic_recover(self, requeue=True):
+-        request = pamqp.specification.Basic.Recover(requeue)
++        request = pamqp.commands.Basic.Recover(requeue)
+         return (await self._write_frame_awaiting_response(
+             'basic_recover', self.channel_id, request, no_wait=False)
+         )
+@@ -681,7 +681,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
+             delivery_tag = next(self.delivery_tag_iter)  # pylint: disable=stop-iteration-return
+             fut = self._set_waiter('basic_server_ack_{}'.format(delivery_tag))
+ 
+-        method_request = pamqp.specification.Basic.Publish(
++        method_request = pamqp.commands.Basic.Publish(
+             exchange=exchange_name,
+             routing_key=routing_key,
+             mandatory=mandatory,
+@@ -689,7 +689,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
+         )
+         await self._write_frame(self.channel_id, method_request, drain=False)
+ 
+-        properties = pamqp.specification.Basic.Properties(**properties)
++        properties = pamqp.commands.Basic.Properties(**properties)
+         header_request = pamqp.header.ContentHeader(
+             body_size=len(payload), properties=properties
+         )
+@@ -710,7 +710,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
+     async def confirm_select(self, *, no_wait=False):
+         if self.publisher_confirms:
+             raise ValueError('publisher confirms already enabled')
+-        request = pamqp.specification.Confirm.Select(nowait=no_wait)
++        request = pamqp.commands.Confirm.Select(nowait=no_wait)
+ 
+         return (await self._write_frame_awaiting_response(
+             'confirm_select', self.channel_id, request, no_wait)
+diff --git a/aioamqp/frame.py b/aioamqp/frame.py
+index d70cfd7..af27ab5 100644
+--- a/aioamqp/frame.py
++++ b/aioamqp/frame.py
+@@ -42,7 +42,6 @@
+ import socket
+ 
+ import pamqp.encode
+-import pamqp.specification
+ import pamqp.frame
+ 
+ from . import exceptions
+diff --git a/aioamqp/protocol.py b/aioamqp/protocol.py
+index e111dea..f0b928d 100644
+--- a/aioamqp/protocol.py
++++ b/aioamqp/protocol.py
+@@ -5,9 +5,9 @@
+ import asyncio
+ import logging
+ 
++import pamqp.commands
+ import pamqp.frame
+ import pamqp.heartbeat
+-import pamqp.specification
+ 
+ from . import channel as amqp_channel
+ from . import constants as amqp_constants
+@@ -159,7 +159,7 @@ async def close(self, no_wait=False, timeout=None):
+         """Close connection (and all channels)"""
+         await self.ensure_open()
+         self.state = CLOSING
+-        request = pamqp.specification.Connection.Close(
++        request = pamqp.commands.Connection.Close(
+             reply_code=0,
+             reply_text='',
+             class_id=0,
+@@ -254,11 +254,11 @@ async def dispatch_frame(self, frame_channel=None, frame=None):
+         """Dispatch the received frame to the corresponding handler"""
+ 
+         method_dispatch = {
+-            pamqp.specification.Connection.Close.name: self.server_close,
+-            pamqp.specification.Connection.CloseOk.name: self.close_ok,
+-            pamqp.specification.Connection.Tune.name: self.tune,
+-            pamqp.specification.Connection.Start.name: self.start,
+-            pamqp.specification.Connection.OpenOk.name: self.open_ok,
++            pamqp.commands.Connection.Close.name: self.server_close,
++            pamqp.commands.Connection.CloseOk.name: self.close_ok,
++            pamqp.commands.Connection.Tune.name: self.tune,
++            pamqp.commands.Connection.Start.name: self.start,
++            pamqp.commands.Connection.OpenOk.name: self.open_ok,
+         }
+         if frame_channel is None and frame is None:
+             frame_channel, frame = await self.get_frame()
+@@ -395,7 +395,7 @@ async def start_ok(self, client_properties, mechanism, auth, locale):
+         def credentials():
+             return '\0{LOGIN}\0{PASSWORD}'.format(**auth)
+ 
+-        request = pamqp.specification.Connection.StartOk(
++        request = pamqp.commands.Connection.StartOk(
+             client_properties=client_properties,
+             mechanism=mechanism,
+             locale=locale,
+@@ -417,7 +417,7 @@ async def server_close(self, frame):
+         self._stream_writer.close()
+ 
+     async def _close_ok(self):
+-        request = pamqp.specification.Connection.CloseOk()
++        request = pamqp.commands.Connection.CloseOk()
+         await self._write_frame(0, request)
+ 
+     async def tune(self, frame):
+@@ -426,7 +426,7 @@ async def tune(self, frame):
+         self.server_heartbeat = frame.heartbeat
+ 
+     async def tune_ok(self, channel_max, frame_max, heartbeat):
+-        request = pamqp.specification.Connection.TuneOk(
++        request = pamqp.commands.Connection.TuneOk(
+             channel_max, frame_max, heartbeat
+         )
+         await self._write_frame(0, request)
+@@ -436,7 +436,7 @@ async def secure_ok(self, login_response):
+ 
+     async def open(self, virtual_host, capabilities='', insist=False):
+         """Open connection to virtual host."""
+-        request = pamqp.specification.Connection.Open(
++        request = pamqp.commands.Connection.Open(
+             virtual_host, capabilities, insist
+         )
+         await self._write_frame(0, request)
+diff --git a/aioamqp/tests/testcase.py b/aioamqp/tests/testcase.py
+index 120104b..d6d702b 100644
+--- a/aioamqp/tests/testcase.py
++++ b/aioamqp/tests/testcase.py
+@@ -147,7 +147,7 @@ def server_version(self, amqp=None):
+         if amqp is None:
+             amqp = self.amqp
+ 
+-        server_version = tuple(int(x) for x in amqp.server_properties['version'].decode().split('.'))
++        server_version = tuple(int(x) for x in amqp.server_properties['version'].split('.'))
+         return server_version
+ 
+     async def check_exchange_exists(self, exchange_name):
+
+From c900f6d5e8ef273000d221d0e46ab81ed4aed2a2 Mon Sep 17 00:00:00 2001
+From: dzen <benoit.calvez@polyconseil.fr>
+Date: Wed, 25 Mar 2020 11:02:04 +0100
+Subject: [PATCH 2/3] fix pamqp version for tests on travis
+
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index a740243..2277b28 100644
+--- a/setup.py
++++ b/setup.py
+@@ -25,7 +25,7 @@
+         'aioamqp',
+     ],
+     install_requires=[
+-        'pamqp>=2.2.0,<3',
++        'pamqp>=3.0.0', # TODO(bcalvez): for tests purpose, until 3.0 is released
+     ],
+     classifiers=[
+         "Development Status :: 4 - Beta",
+
+From 836340e8d881a93b0111b9aed6f2bb2926f38de6 Mon Sep 17 00:00:00 2001
+From: dzen <benoit.calvez@polyconseil.fr>
+Date: Wed, 25 Mar 2020 11:37:45 +0100
+Subject: [PATCH 3/3] pamqp 3.0 is no more compatible with 3.5
+
+---
+ .travis.yml | 1 -
+ setup.cfg   | 2 +-
+ setup.py    | 2 +-
+ 3 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/.travis.yml b/.travis.yml
+index 1069e7c..46d6fea 100644
+--- a/.travis.yml
++++ b/.travis.yml
+@@ -1,7 +1,6 @@
+ language: python
+ dist: bionic
+ python:
+-- 3.5
+ - 3.6
+ - 3.7-dev
+ - 3.8
+diff --git a/setup.cfg b/setup.cfg
+index 0ab7d0b..d0ba16e 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -1,2 +1,2 @@
+ [bdist_wheel]
+-python-tag = py35.py36.py37.py38
++python-tag = py36.py37.py38
+diff --git a/setup.py b/setup.py
+index 2277b28..c413078 100644
+--- a/setup.py
++++ b/setup.py
+@@ -27,6 +27,7 @@
+     install_requires=[
+         'pamqp==3.0.0a6', # TODO(bcalvez): for tests purpose, until 3.0 is released
+     ],
++    python_requires=">=3.6",
+     classifiers=[
+         "Development Status :: 4 - Beta",
+         "Intended Audience :: Developers",
+@@ -34,7 +35,6 @@
+         "Operating System :: OS Independent",
+         "Programming Language :: Python",
+         "Programming Language :: Python :: 3",
+-        "Programming Language :: Python :: 3.5",
+         "Programming Language :: Python :: 3.6",
+         "Programming Language :: Python :: 3.7",
+         "Programming Language :: Python :: 3.8",
diff --git a/nixpkgs/pkgs/development/python-modules/aioamqp/default.nix b/nixpkgs/pkgs/development/python-modules/aioamqp/default.nix
index 5be5b6a1dd08..a2882ce1288b 100644
--- a/nixpkgs/pkgs/development/python-modules/aioamqp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioamqp/default.nix
@@ -20,6 +20,8 @@ buildPythonPackage rec {
     sha256 = "1gpfsrc2vi6w33c9zsycd2qn589pr7a222rb41r85m915283zy48";
   };
 
+  patches = [ ./compat-pamqp-3.patch ];
+
   propagatedBuildInputs = [
     pamqp
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/aioasuswrt/default.nix b/nixpkgs/pkgs/development/python-modules/aioasuswrt/default.nix
index edd2796eca48..a6bd79e80ef1 100644
--- a/nixpkgs/pkgs/development/python-modules/aioasuswrt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioasuswrt/default.nix
@@ -9,18 +9,16 @@
 
 buildPythonPackage rec {
   pname = "aioasuswrt";
-  version = "1.3.3";
+  version = "1.3.4";
 
   src = fetchFromGitHub {
     owner = "kennedyshead";
     repo = pname;
-    rev = "V${version}";
-    sha256 = "1h1qwc7szgrcwiz4q6x4mlf26is20lj1ds5rcb9i611j26656v6d";
+    rev = version;
+    sha256 = "101d76zarvilzfmcy8n3bjqzyars8hsjzr0zc80d4rngv4vhrki1";
   };
 
   postPatch = ''
-    substituteInPlace setup.py \
-      --replace "cryptography==3.3.2" "cryptography"
     substituteInPlace setup.cfg \
       --replace "--cov-report html" "" \
       --replace "--cov-report term-missing" ""
diff --git a/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix b/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
index f75a0d6bb60b..1ebf66a2597f 100644
--- a/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
@@ -10,18 +10,18 @@
 
 buildPythonPackage rec {
   pname = "aiobotocore";
-  version = "1.2.2";
+  version = "1.3.0";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "37c23166603a3bd134e5f6fc22dbbf8c274d4d24c71418fba292ed2cd7a0bf43";
+    sha256 = "17pcdi69bwdfw2wv3a0fhira5gimw88sp2wf47yqz50z1ckhv2c1";
   };
 
   # relax version constraints: aiobotocore works with newer botocore versions
   # the pinning used to match some `extras_require` we're not using.
-  preConfigure = ''
-    substituteInPlace setup.py --replace 'botocore>=1.17.44,<1.17.45' 'botocore'
+  postPatch = ''
+    substituteInPlace setup.py --replace 'botocore>=1.20.49,<1.20.50' 'botocore'
   '';
 
   propagatedBuildInputs = [ wrapt aiohttp aioitertools botocore ];
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "aiobotocore" ];
 
   meta = with lib; {
-    description = "Async client for amazon services using botocore and aiohttp/asyncio.";
+    description = "Python client for amazon services";
     license = licenses.asl20;
     homepage = "https://github.com/aio-libs/aiobotocore";
     maintainers = with maintainers; [ teh ];
diff --git a/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix b/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix
index 8a7f72f8b863..97caef50285a 100644
--- a/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix
@@ -1,6 +1,6 @@
 { lib
-, async-dns
 , buildPythonPackage
+, dnspython
 , fetchFromGitHub
 , ifaddr
 , pyroute2
@@ -11,24 +11,26 @@
 
 buildPythonPackage rec {
   pname = "aiodiscover";
-  version = "1.3.4";
+  version = "1.4.2";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "bdraco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-TmWl5d5HwyqWPUjwtEvc5FzVfxV/K1pekljcMkGN0Ag=";
+    sha256 = "sha256-xiIN/YLIOdPuqenyxybu0iUpYEy3MyBssXswza5InU0=";
   };
 
   propagatedBuildInputs = [
-    async-dns
+    dnspython
     pyroute2
     ifaddr
   ];
 
   postPatch = ''
-    substituteInPlace setup.py --replace '"pytest-runner>=5.2",' ""
+    substituteInPlace setup.py \
+      --replace '"pytest-runner>=5.2",' "" \
+      --replace "pyroute2>=0.5.18,!=0.6.1" "pyroute2"
   '';
 
   checkInputs = [
@@ -36,10 +38,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  preBuild = ''
-    export HOME=$TMPDIR
-  '';
-
   disabledTests = [
     # Tests require access to /etc/resolv.conf
     "test_async_discover_hosts"
diff --git a/nixpkgs/pkgs/development/python-modules/aiodns/default.nix b/nixpkgs/pkgs/development/python-modules/aiodns/default.nix
index 05e17ec12f43..9c626618ff0a 100644
--- a/nixpkgs/pkgs/development/python-modules/aiodns/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiodns/default.nix
@@ -1,31 +1,38 @@
-{ lib, buildPythonPackage, fetchPypi, pythonOlder
-, isPy27, isPyPy, python, pycares, typing ? null
-, trollius ? null
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pycares
+, pythonOlder
+, typing
 }:
 
 buildPythonPackage rec {
   pname = "aiodns";
-  version = "2.0.0";
+  version = "3.0.0";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "815fdef4607474295d68da46978a54481dd1e7be153c7d60f9e72773cd38d77d";
+  src = fetchFromGitHub {
+    owner = "saghul";
+    repo = pname;
+    rev = "aiodns-${version}";
+    sha256 = "1i91a43gsq222r8212jn4m6bxc3fl04z1mf2h7s39nqywxkggvlp";
   };
 
-  propagatedBuildInputs = [ pycares ]
-    ++ lib.optional (pythonOlder "3.7") typing
-    ++ lib.optional (isPy27 || isPyPy) trollius;
+  propagatedBuildInputs = [
+    pycares
+  ] ++ lib.optional (pythonOlder "3.7") [
+    typing
+  ];
 
-  checkPhase = ''
-    ${python.interpreter} tests.py
-  '';
-
-  # 'Could not contact DNS servers'
+  # Could not contact DNS servers
   doCheck = false;
 
+  pythonImportsCheck = [ "aiodns" ];
+
   meta = with lib; {
+    description = "Simple DNS resolver for asyncio";
     homepage = "https://github.com/saghul/aiodns";
     license = licenses.mit;
-    description = "Simple DNS resolver for asyncio";
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
index 425575442592..795657262f43 100644
--- a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "aioesphomeapi";
-  version = "2.6.6";
+  version = "2.8.0";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-LdBUtU5rNoixh7DPIFkHxLMvBeI6MZH57sO0IjuOQAw=";
+    sha256 = "1j25i7vh4fg56rzhzxlaj4ys1rvswld15ia44mwwzxfggw8w3rbk";
   };
 
   propagatedBuildInputs = [ attrs protobuf zeroconf ];
@@ -22,6 +22,6 @@ buildPythonPackage rec {
     description = "Python Client for ESPHome native API";
     homepage = "https://github.com/esphome/aioesphomeapi";
     license = licenses.mit;
-    maintainers = with maintainers; [ dotlambda ];
+    maintainers = with maintainers; [ fab hexa ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/aioeventlet/default.nix b/nixpkgs/pkgs/development/python-modules/aioeventlet/default.nix
deleted file mode 100644
index ef0166e5d624..000000000000
--- a/nixpkgs/pkgs/development/python-modules/aioeventlet/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, eventlet
-, trollius ? null
-, mock
-, python
-}:
-
-buildPythonPackage rec {
-  pname = "aioeventlet";
-  # version is called 0.5.1 on PyPI, but the filename is aioeventlet-0.5.2.tar.gz
-  version = "0.5.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "cecb51ea220209e33b53cfb95124d90e4fcbee3ff8ba8a179a57120b8624b16a";
-  };
-
-  propagatedBuildInputs = [ eventlet trollius ];
-  buildInputs = [ mock ];
-
-  # 2 tests error out
-  doCheck = false;
-  checkPhase = ''
-    ${python.interpreter} runtests.py
-  '';
-
-  meta = with lib; {
-    description = "aioeventlet implements the asyncio API (PEP 3156) on top of eventlet. It makes";
-    homepage = "https://pypi.org/project/aioeventlet/";
-    license = licenses.asl20;
-  };
-
-}
diff --git a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
index 47b820161886..388c856fc619 100644
--- a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
@@ -5,7 +5,7 @@
 , asynctest
 , buildPythonPackage
 , fetchFromGitHub
-, poetry
+, poetry-core
 , pytest-aiohttp
 , pytest-asyncio
 , pytestCheckHook
@@ -27,7 +27,9 @@ buildPythonPackage rec {
 
   format = "pyproject";
 
-  nativeBuildInputs = [ poetry ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
   propagatedBuildInputs = [
     aiohttp
@@ -44,8 +46,17 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  # Ignore the examples as they are prefixed with test_
-  pytestFlagsArray = [ "--ignore examples/" ];
+  postPatch = ''
+    # https://github.com/bachya/aioguardian/pull/66
+    substituteInPlace pyproject.toml \
+      --replace 'asyncio_dgram = "^1.0.1"' 'asyncio_dgram = "^2.0.0"'
+    # https://github.com/bachya/aioguardian/pull/67
+    substituteInPlace pyproject.toml \
+      --replace "poetry>=0.12" "poetry-core"
+  '';
+
+  disabledTestPaths = [ "examples/" ];
+
   pythonImportsCheck = [ "aioguardian" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
index f9afbe22c917..2d76d033231d 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "aiohomekit";
-  version = "0.2.61";
+  version = "0.2.62";
   format = "pyproject";
   disabled = pythonAtLeast "3.9";
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Jc2k";
     repo = pname;
     rev = version;
-    sha256 = "047ql5a4i4354jgr8xr2waim8j522z58vbfi7aa62jqc9l8jzxzk";
+    sha256 = "sha256-01IzeR0iukPTkz8I7h93wZkgjz6flRAJN8unEX6d+cs=";
   };
 
   nativeBuildInputs = [ poetry ];
diff --git a/nixpkgs/pkgs/development/python-modules/aiohttp-socks/default.nix b/nixpkgs/pkgs/development/python-modules/aiohttp-socks/default.nix
index 7b0bfe80684a..4e75f56a8dab 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohttp-socks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohttp-socks/default.nix
@@ -1,16 +1,16 @@
-{ lib, fetchPypi, buildPythonPackage, pythonOlder, aiohttp, attrs }:
+{ lib, fetchPypi, buildPythonPackage, pythonOlder, aiohttp, python-socks, attrs }:
 
 buildPythonPackage rec {
   pname = "aiohttp-socks";
-  version = "0.3.9";
+  version = "0.6.0";
 
   src = fetchPypi {
     inherit version;
     pname = "aiohttp_socks";
-    sha256 = "1mn2ng66951mri49f99zh3660j83kvqhr6dpx90s9fkjwk83hmjy";
+    sha256 = "04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr";
   };
 
-  propagatedBuildInputs = [ aiohttp attrs ];
+  propagatedBuildInputs = [ aiohttp attrs python-socks ];
 
   # Checks needs internet access
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/aiohue/default.nix b/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
index b495bf4df463..65baaec37190 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
@@ -1,19 +1,34 @@
-{ lib, buildPythonPackage, fetchPypi, aiohttp }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, aiohttp
+}:
 
 buildPythonPackage rec {
   pname = "aiohue";
-  version = "2.2.0";
+  version = "2.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "35696d04d6eb0328b7031ea3c0a3cfe5d83dfcf62f920522e4767d165c6bc529";
+    sha256 = "1qxvqqsflcn263yg7r8vvfc2c2fl3rh4dkzwzh926ijnbc2sk4nm";
   };
 
-  propagatedBuildInputs = [ aiohttp ];
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  pythonImportsCheck = [
+    "aiohue"
+    "aiohue.discovery"
+  ];
+
+  # Project has no tests
+  doCheck = false;
 
   meta = with lib; {
-    description = "asyncio package to talk to Philips Hue";
-    homepage = "https://github.com/balloob/aiohue";
-    license = licenses.asl20;
+    description = "Python package to talk to Philips Hue";
+    homepage = "https://github.com/home-assistant-libs/aiohue";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/aiokafka/default.nix b/nixpkgs/pkgs/development/python-modules/aiokafka/default.nix
index ba32976b96b1..61ff78a3428e 100644
--- a/nixpkgs/pkgs/development/python-modules/aiokafka/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiokafka/default.nix
@@ -1,7 +1,8 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy27
+, pythonOlder
+, dataclasses
 , kafka-python
 , cython
 , zlib
@@ -9,15 +10,14 @@
 
 buildPythonPackage rec {
   pname = "aiokafka";
-  version = "0.7.0";
-
-  disabled = isPy27;
+  version = "0.7.1";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "aio-libs";
-    repo = "aiokafka";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "16pcgv38syqy6sj3w7zx95zgynpd642n3i95dpiw0ivhpqrxxhrf";
+    sha256 = "sha256-D89ppIUliJJMDuCySrZUyN6Rlm01gFskz6ayHmqploc=";
   };
 
   nativeBuildInputs = [
@@ -30,16 +30,15 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     kafka-python
+  ] ++ lib.optionals (pythonOlder "3.7") [
+    dataclasses
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-       --replace "kafka-python==1.4.6" "kafka-python"
-  '';
-
   # checks require running kafka server
   doCheck = false;
 
+  pythonImportsCheck = [ "aiokafka" ];
+
   meta = with lib; {
     description = "Kafka integration with asyncio";
     homepage = "https://aiokafka.readthedocs.org";
diff --git a/nixpkgs/pkgs/development/python-modules/aiomultiprocess/default.nix b/nixpkgs/pkgs/development/python-modules/aiomultiprocess/default.nix
index 7b84996a1c91..6403f396eaac 100644
--- a/nixpkgs/pkgs/development/python-modules/aiomultiprocess/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiomultiprocess/default.nix
@@ -24,6 +24,14 @@ buildPythonPackage rec {
   checkInputs = [ pytestCheckHook ];
 
   pytestFlagsArray = [ "aiomultiprocess/tests/*.py" ];
+
+  disabledTests = [
+    # tests are flaky and make the whole test suite time out
+    "test_pool_worker_exceptions"
+    "test_pool_worker_max_tasks"
+    "test_pool_worker_stop"
+  ];
+
   pythonImportsCheck = [ "aiomultiprocess" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aiomysql/default.nix b/nixpkgs/pkgs/development/python-modules/aiomysql/default.nix
index 803f642406c8..3432931f9356 100644
--- a/nixpkgs/pkgs/development/python-modules/aiomysql/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiomysql/default.nix
@@ -4,6 +4,7 @@
 , pymysql
 , pytest
 , isPy27
+, fetchpatch
 }:
 
 buildPythonPackage rec {
@@ -18,6 +19,14 @@ buildPythonPackage rec {
     sha256 = "1qvy3phbsxp55161dnppjfx2m1kn82v0irc3xzqw0adfd81vaiad";
   };
 
+  patches = [
+    (fetchpatch {
+      # vendor functions previously provided by pymysql.util
+      url = "https://github.com/aio-libs/aiomysql/pull/554/commits/919b997a9de7f53d721af76762fba425e306531e.patch";
+      sha256 = "V1VYyqr6RwTXoVoGVyMuJst6uqTuuHbpMOpLoVZO1XA=";
+    })
+  ];
+
   propagatedBuildInputs = [
     pymysql
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/aiopg/default.nix b/nixpkgs/pkgs/development/python-modules/aiopg/default.nix
new file mode 100644
index 000000000000..cb9cd327e8ce
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aiopg/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, async-timeout
+, buildPythonPackage
+, fetchFromGitHub
+, psycopg2
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aiopg";
+  version = "1.2.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0c6s2p1fjbdk1ygpl6a1s1rbnsk8gw9kj99pf98nxhb9j3iahas4";
+  };
+
+  propagatedBuildInputs = [
+    async-timeout
+    psycopg2
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "psycopg2-binary" "psycopg2"
+  '';
+
+  # Tests requires a PostgreSQL Docker instance
+  doCheck = false;
+
+  pythonImportsCheck = [ "aiopg" ];
+
+  meta = with lib; {
+    description = "Python library for accessing a PostgreSQL database";
+    homepage = "https://aiopg.readthedocs.io/";
+    license = with licenses; [ bsd2 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/aiopvpc/default.nix b/nixpkgs/pkgs/development/python-modules/aiopvpc/default.nix
new file mode 100644
index 000000000000..0b079e0d1a59
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aiopvpc/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, aiohttp
+, async-timeout
+, backports-zoneinfo
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pytest-asyncio
+, pytest-timeout
+, pytestCheckHook
+, pythonOlder
+, tzdata
+}:
+
+buildPythonPackage rec {
+  pname = "aiopvpc";
+  version = "2.1.2";
+  disabled = pythonOlder "3.8";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "azogue";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0s8ki46dh39kw6qvsjcfcxa0gblyi33m3hry137kbi4lw5ws6qhr";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    backports-zoneinfo
+    tzdata
+    async-timeout
+  ];
+
+  checkInputs = [
+    pytest-asyncio
+    pytest-timeout
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml --replace \
+      " --cov --cov-report term --cov-report html" ""
+  '';
+
+  pythonImportsCheck = [ "aiopvpc" ];
+
+  meta = with lib; {
+    description = "Python module to download Spanish electricity hourly prices (PVPC)";
+    homepage = "https://github.com/azogue/aiopvpc";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/aiorecollect/default.nix b/nixpkgs/pkgs/development/python-modules/aiorecollect/default.nix
index 53daf1f22696..1bce60ce6af9 100644
--- a/nixpkgs/pkgs/development/python-modules/aiorecollect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiorecollect/default.nix
@@ -1,7 +1,6 @@
 { lib
 , aiohttp
 , aresponses
-, async-timeout
 , buildPythonPackage
 , fetchFromGitHub
 , freezegun
@@ -13,19 +12,23 @@
 
 buildPythonPackage rec {
   pname = "aiorecollect";
-  version = "1.0.3";
+  version = "1.0.4";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-S4HL8vJS/dTKsR5egKRSHqZYPClcET5Le06euHPyIkU=";
+    sha256 = "sha256-A4qk7eo4maCRP4UmtWrRCPvG6YrLVSOiOcfN8pEj5Po=";
   };
 
-  nativeBuildInputs = [ poetry-core ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
-  propagatedBuildInputs = [ aiohttp ];
+  propagatedBuildInputs = [
+    aiohttp
+  ];
 
   checkInputs = [
     aresponses
@@ -35,8 +38,8 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  # Ignore the examples as they are prefixed with test_
-  pytestFlagsArray = [ "--ignore examples/" ];
+  disabledTestPaths = [ "examples/" ];
+
   pythonImportsCheck = [ "aiorecollect" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix b/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix
index aa5e227ca65b..6e1b02e4fe9a 100644
--- a/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "aioshelly";
-  version = "0.6.2";
+  version = "0.6.4";
 
   src = fetchFromGitHub {
     owner = "home-assistant-libs";
     repo = pname;
     rev = version;
-    sha256 = "sha256-vlIon+VAHeJiaSIVMEKEpwQC4gXA52vxfEkiQMC9yiw=";
+    sha256 = "sha256-QRCqkaKhPQQjNt9mw8nlTB5YKLmIZbXfrxarb3Ksr5k=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiosignal/default.nix b/nixpkgs/pkgs/development/python-modules/aiosignal/default.nix
new file mode 100644
index 000000000000..9b9ef3b12ae1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aiosignal/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, frozenlist
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aiosignal";
+  version = "1.1.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0a9md2dy83qwg2an57nqrzp9nb7krq27y9zz0f7qxcrv0xd42djy";
+  };
+
+  propagatedBuildInputs = [
+    frozenlist
+  ];
+
+  checkInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pytest.ini \
+      --replace "--cov=aiosignal" ""
+  '';
+
+  pythonImportsCheck = [ "aiosignal" ];
+
+  meta = with lib; {
+    description = "Python list of registered asynchronous callbacks";
+    homepage = "https://github.com/aio-libs/aiosignal";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix b/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
index ce20341eae1d..b9c968d63f5b 100644
--- a/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
@@ -14,12 +14,12 @@
 
 buildPythonPackage rec {
   pname = "aiosmb";
-  version = "0.2.41";
+  version = "0.2.44";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-hiLLoFswh0rm5f5TsaX+zyRDkOIyzGXVO0M5J5d/gtQ=";
+    sha256 = "sha256-xNdrOO0BqV4sD6U39G2RXihDBBf516x8RLiqNLnZyWk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioswitcher/default.nix b/nixpkgs/pkgs/development/python-modules/aioswitcher/default.nix
index 115da7dfca40..2535253dc2a3 100644
--- a/nixpkgs/pkgs/development/python-modules/aioswitcher/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioswitcher/default.nix
@@ -3,7 +3,7 @@
 , asynctest
 , buildPythonPackage
 , fetchFromGitHub
-, poetry
+, poetry-core
 , pytest-aiohttp
 , pytest-asyncio
 , pytest-sugar
@@ -12,19 +12,23 @@
 
 buildPythonPackage rec {
   pname = "aioswitcher";
-  version = "1.2.2";
+  version = "1.2.5";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "TomerFi";
     repo = pname;
     rev = version;
-    sha256 = "0wvca1jbyj4bwrpkpklbxnkvdp9zs7mrvg5b9vkx2hpyr81vyxam";
+    sha256 = "sha256-eiWmB2DVNAYHPHfnVwv0+4A/wYLgtAa1ReGsmwiIvAk=";
   };
 
-  nativeBuildInputs = [ poetry ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
-  propagatedBuildInputs = [ aiohttp ];
+  propagatedBuildInputs = [
+    aiohttp
+  ];
 
   checkInputs = [
     asynctest
diff --git a/nixpkgs/pkgs/development/python-modules/aioymaps/default.nix b/nixpkgs/pkgs/development/python-modules/aioymaps/default.nix
new file mode 100644
index 000000000000..4a6d806dee1d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aioymaps/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aioymaps";
+  version = "1.1.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1rvgf4flvnpjj0sm14xlnfmmnlmkz6xq5h5mfb14amkfy76za3jm";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "aioymaps" ];
+
+  meta = with lib; {
+    description = "Python package fetch data from Yandex maps";
+    homepage = "https://github.com/devbis/aioymaps";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/alarmdecoder/default.nix b/nixpkgs/pkgs/development/python-modules/alarmdecoder/default.nix
index ee07588b325d..23b4173f8da8 100644
--- a/nixpkgs/pkgs/development/python-modules/alarmdecoder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/alarmdecoder/default.nix
@@ -1,28 +1,51 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pyserial, pyftdi, pyusb
-, pyopenssl, nose, isPy3k, pythonOlder, mock }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, pyftdi
+, pyopenssl
+, pyserial
+, pytestCheckHook
+, pythonOlder
+, pyusb
+}:
 
 buildPythonPackage rec {
   pname = "alarmdecoder";
-  version = "1.13.10";
+  version = "1.13.11";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "nutechsoftware";
     repo = "alarmdecoder";
     rev = version;
-    sha256 = "05581j78181p6mwbfpbkp5irnrzsvps1lslgqrh7xbdcmz5b2nxd";
+    sha256 = "sha256-q2s+wngDKtWm5mxGHNAc63Ed6tiQD9gLHVoQZNWFB0w=";
   };
 
-  propagatedBuildInputs = [ pyserial pyftdi pyusb pyopenssl ];
+  propagatedBuildInputs = [
+    pyftdi
+    pyopenssl
+    pyserial
+    pyusb
+  ];
+
+  checkInputs = [
+    mock
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # Socket issue, https://github.com/nutechsoftware/alarmdecoder/issues/45
+    "test_ssl"
+    "test_ssl_exception"
+  ];
 
-  doCheck = !isPy3k;
-  checkInputs = [ nose mock ];
   pythonImportsCheck = [ "alarmdecoder" ];
 
   meta = with lib; {
+    description = "Python interface for the Alarm Decoder (AD2USB, AD2SERIAL and AD2PI) devices";
     homepage = "https://github.com/nutechsoftware/alarmdecoder";
-    description =
-      "Python interface for the Alarm Decoder (AD2) family of alarm devices. (AD2USB, AD2SERIAL and AD2PI)";
     license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/amply/default.nix b/nixpkgs/pkgs/development/python-modules/amply/default.nix
index 0589caf1e6a1..35aa3ecb4d3a 100644
--- a/nixpkgs/pkgs/development/python-modules/amply/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/amply/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, setuptools_scm
+, setuptools-scm
 , docutils
 , pyparsing
 , pytestCheckHook
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "cb12dcb49d16b168c02be128a1527ecde50211e4bd94af76ff4e67707f5a2d38";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     docutils
     pyparsing
diff --git a/nixpkgs/pkgs/development/python-modules/amqtt/default.nix b/nixpkgs/pkgs/development/python-modules/amqtt/default.nix
new file mode 100644
index 000000000000..8ab0e7a7c0cc
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/amqtt/default.nix
@@ -0,0 +1,64 @@
+{ lib
+, buildPythonPackage
+, docopt
+, fetchFromGitHub
+, hypothesis
+, passlib
+, poetry-core
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, pyyaml
+, transitions
+, websockets
+}:
+
+buildPythonPackage rec {
+  pname = "amqtt";
+  version = "0.10.0-alpha.3";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Yakifo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wz85ykjgi2174qcdgpakmc4m0p96v62az7pvc9hyallq1v1k4n6";
+  };
+
+  nativeBuildInputs = [ poetry-core ];
+
+  propagatedBuildInputs = [
+    docopt
+    passlib
+    pyyaml
+    transitions
+    websockets
+  ];
+
+  checkInputs = [
+    hypothesis
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Test are not ported from hbmqtt yet
+    "tests/test_cli.py"
+    "tests/test_client.py"
+  ];
+
+  disabledTests = [
+    # Requires network access
+    "test_connect_tcp"
+  ];
+
+  pythonImportsCheck = [ "amqtt" ];
+
+  meta = with lib; {
+    description = "Python MQTT client and broker implementation";
+    homepage = "https://amqtt.readthedocs.io/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/androidtv/default.nix b/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
index 98ab09fd8e6b..02edcea42efd 100644
--- a/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "androidtv";
-  version = "0.0.58";
+  version = "0.0.59";
 
   # pypi does not contain tests, using github sources instead
   src = fetchFromGitHub {
     owner = "JeffLIrion";
     repo = "python-androidtv";
     rev = "v${version}";
-    sha256 = "sha256-/5sYiYRFa8XJJ4QSxLzJBHaKfAKsGETiVDHerNQ79U8=";
+    sha256 = "sha256-QuKWOo+QMBpVJglwvaSMbKKYMN/MW31E7BgIMchESG8=";
   };
 
   propagatedBuildInputs = [ adb-shell pure-python-adb ]
diff --git a/nixpkgs/pkgs/development/python-modules/angr/default.nix b/nixpkgs/pkgs/development/python-modules/angr/default.nix
index 588e647647d1..0ea298e06e19 100644
--- a/nixpkgs/pkgs/development/python-modules/angr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angr/default.nix
@@ -42,14 +42,14 @@ in
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.0.6852";
+  version = "9.0.7912";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-8BN706jqflhKmHVLQ1Y0k3GMScB1Hs5E/zndgq0sXB8=";
+    sha256 = "sha256-261fk0JM37Hq+xsMF95VqLyidWE4ZUeygp8BP/DBXG4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/angrop/default.nix b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
index 1237ed6fa46d..cbe2ed9db2ad 100644
--- a/nixpkgs/pkgs/development/python-modules/angrop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
@@ -4,23 +4,25 @@
 , fetchFromGitHub
 , progressbar
 , pythonOlder
+, tqdm
 }:
 
 buildPythonPackage rec {
   pname = "angrop";
-  version = "9.0.6852";
+  version = "9.0.7912";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uOf2d3TbTdLobqfdOUSVQ/mqyD3TaYPlPCNFsqcPrXo=";
+    sha256 = "sha256-nbVvgbTk9LFA376alu4Cxqcu9b9CT9yutnfE5fVT8gY=";
   };
 
   propagatedBuildInputs = [
     angr
     progressbar
+    tqdm
   ];
 
   # Tests have additional requirements, e.g., angr binaries
diff --git a/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix b/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix
index f28668a8912b..9cc3fb827755 100644
--- a/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix
@@ -1,22 +1,35 @@
-{ lib, buildPythonPackage, fetchPypi
-, dateutil, mock, isPy3k }:
+{ lib
+, buildPythonPackage
+, dateutil
+, fetchPypi
+, isPy3k
+, mock
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "aniso8601";
   version = "9.0.1";
 
-  meta = with lib; {
-    description = "Parses ISO 8601 strings.";
-    homepage    = "https://bitbucket.org/nielsenb/aniso8601";
-    license     = licenses.bsd3;
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-cuMRdmfu32aVG7LZP0KWpWuUsHioqVkFoFJhH7PxuXM=";
   };
 
-  propagatedBuildInputs = [ dateutil ];
+  propagatedBuildInputs = [
+    dateutil
+  ];
 
-  checkInputs = lib.optional (!isPy3k) mock;
+  checkInputs = [
+    pytestCheckHook
+  ] ++ lib.optional (!isPy3k) mock;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "72e3117667eedf66951bb2d93f4296a56b94b078a8a95905a052611fb3f1b973";
+  pythonImportsCheck = [ "aniso8601" ];
+
+  meta = with lib; {
+    description = "Python Parser for ISO 8601 strings";
+    homepage = "https://bitbucket.org/nielsenb/aniso8601";
+    license = with licenses; [ bsd3 ];
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ansi2html/default.nix b/nixpkgs/pkgs/development/python-modules/ansi2html/default.nix
index df115cf7c470..4abcec541a04 100644
--- a/nixpkgs/pkgs/development/python-modules/ansi2html/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansi2html/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, six, mock, pytestCheckHook, setuptools, setuptools_scm, toml }:
+{ lib, buildPythonPackage, fetchPypi, isPy3k, six, mock, pytestCheckHook, setuptools, setuptools-scm, toml }:
 
 buildPythonPackage rec {
   pname = "ansi2html";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "0f124ea7efcf3f24f1f9398e527e688c9ae6eab26b0b84e1299ef7f94d92c596";
   };
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
   propagatedBuildInputs = [ six setuptools ];
 
   preCheck = "export PATH=$PATH:$out/bin";
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-lint/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-lint/default.nix
index e404edddbcf3..eec3b5cc813e 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible-lint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible-lint/default.nix
@@ -1,69 +1,90 @@
 { lib
-, fetchPypi
 , buildPythonPackage
 , isPy27
-, ansible
+, fetchPypi
+, setuptools-scm
+, ansible-base
+, enrich
+, flaky
 , pyyaml
-, ruamel-yaml
 , rich
-, pytestCheckHook
-, pytest-xdist
-, git
+, ruamel-yaml
+, tenacity
 , wcmatch
-, enrich
-, python
+, yamllint
+, pytest-xdist
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "ansible-lint";
-  version = "5.0.2";
+  version = "5.0.8";
   disabled = isPy27;
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-vgt/KqNozTPaON/I19SybBZuo7bbl3Duq5dTBTMlj44=";
+    sha256 = "sha256-tnuWKEB66bwVuwu3H3mHG99ZP+/msGhMDMRL5fyQgD8=";
   };
 
-  postPatch = ''
-    substituteInPlace src/ansiblelint/file_utils.py \
-      --replace 'raise RuntimeError("Unable to determine file type for %s" % pathex)' 'return "playbook"'
-  '';
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    ansible-base
+    enrich
+    flaky
+    pyyaml
+    rich
+    ruamel-yaml
+    tenacity
+    wcmatch
+    yamllint
+  ];
 
-  buildInputs = [ python ];
+  checkInputs = [
+    pytest-xdist
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [
+    "--numprocesses" "auto"
+  ];
 
-  propagatedBuildInputs = [ ansible enrich pyyaml rich ruamel-yaml wcmatch ];
+  postPatch = ''
+    # Both patches are addressed in https://github.com/ansible-community/ansible-lint/pull/1549
+    # and should be removed once merged upstream
 
-  checkInputs = [ pytestCheckHook pytest-xdist git ];
+    # fixes test_get_yaml_files_umlaut and test_run_inside_role_dir
+    substituteInPlace src/ansiblelint/file_utils.py \
+      --replace 'os.path.join(root, name)' 'os.path.normpath(os.path.join(root, name))'
+    # fixes test_custom_kinds
+    substituteInPlace src/ansiblelint/file_utils.py \
+      --replace "if name.endswith('.yaml') or name.endswith('.yml')" ""
+  '';
 
   preCheck = ''
     # ansible wants to write to $HOME and crashes if it can't
     export HOME=$(mktemp -d)
-    export PATH=$PATH:${lib.makeBinPath [ ansible ]}
+    export PATH=$PATH:${lib.makeBinPath [ ansible-base ]}
 
     # create a working ansible-lint executable
     export PATH=$PATH:$PWD/src/ansiblelint
     ln -rs src/ansiblelint/__main__.py src/ansiblelint/ansible-lint
     patchShebangs src/ansiblelint/__main__.py
+
+    # create symlink like in the git repo so test_included_tasks does not fail
+    ln -s ../roles examples/playbooks/roles
   '';
 
   disabledTests = [
     # requires network
     "test_prerun_reqs_v1"
     "test_prerun_reqs_v2"
-    # Assertion error with negative numbers; maybe requieres an ansible update?
-    "test_negative"
-    "test_example"
-    "test_playbook"
-    "test_included_tasks"
-    "test_long_line"
-
-    "test_get_yaml_files_umlaut"
-    "test_run_inside_role_dir"
-    "test_role_handler_positive"
   ];
 
-  makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ ansible ]}" ];
+  makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ ansible-base ]}" ];
 
   meta = with lib; {
     homepage = "https://github.com/ansible-community/ansible-lint";
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/base.nix b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
new file mode 100644
index 000000000000..99a63d699391
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
@@ -0,0 +1,78 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, installShellFiles
+, ansible-collections
+, cryptography
+, jinja2
+, junit-xml
+, lxml
+, ncclient
+, packaging
+, paramiko
+, pexpect
+, psutil
+, pycrypto
+, pyyaml
+, requests
+, scp
+, windowsSupport ? false, pywinrm
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "ansible-base";
+  version = "2.10.10";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "046ynyk9ldw35jbyw6jp0dmms735cd5i1f046f2lis8xv27bci3p";
+  };
+
+  # ansible_connection is already wrapped, so don't pass it through
+  # the python interpreter again, as it would break execution of
+  # connection plugins.
+  postPatch = ''
+    substituteInPlace lib/ansible/executor/task_executor.py \
+      --replace "[python," "["
+  '';
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  propagatedBuildInputs = [
+    # depend on ansible-collections instead of the other way around
+    ansible-collections
+    # from requirements.txt
+    cryptography
+    jinja2
+    packaging
+    pyyaml
+    # optional dependencies
+    junit-xml
+    lxml
+    ncclient
+    paramiko
+    pexpect
+    psutil
+    pycrypto
+    requests
+    scp
+    xmltodict
+  ] ++ lib.optional windowsSupport pywinrm;
+
+  postInstall = ''
+    installManPage docs/man/man1/*.1
+  '';
+
+  # internal import errors, missing dependencies
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Radically simple IT automation";
+    homepage = "https://www.ansible.com";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/collections.nix b/nixpkgs/pkgs/development/python-modules/ansible/collections.nix
new file mode 100644
index 000000000000..9547b9a09187
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ansible/collections.nix
@@ -0,0 +1,77 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, ansible-base
+, jsonschema
+, jxmlease
+, ncclient
+, netaddr
+, paramiko
+, pynetbox
+, scp
+, textfsm
+, ttp
+, xmltodict
+, withJunos ? false
+, withNetbox ? false
+}:
+
+buildPythonPackage rec {
+  pname = "ansible";
+  version = "3.4.0";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "096rbgz730njk0pg8qnc27mmz110wqrw354ca9gasb7rqg0f4d6a";
+  };
+
+  postPatch = ''
+    # make ansible-base depend on ansible-collection, not the other way around
+    sed -i '/ansible-base/d' setup.py
+  '';
+
+  propagatedBuildInputs = lib.unique ([
+    # Support ansible collections by default, make all others optional
+    # ansible.netcommon
+    jxmlease
+    ncclient
+    netaddr
+    paramiko
+    xmltodict
+    # ansible.posix
+    # ansible.utils
+    jsonschema
+    textfsm
+    ttp
+    xmltodict
+    # ansible.windows
+
+    # lots of collections with dedicated requirements.txt and pyproject.toml files,
+    # add the dependencies for the collections you need conditionally and install
+    # ansible using overrides to enable the collections you need.
+  ] ++ lib.optionals (withJunos) [
+    # ansible_collections/junipernetworks/junos/requirements.txt
+    jxmlease
+    ncclient
+    paramiko
+    scp
+    xmltodict
+  ] ++ lib.optionals (withNetbox) [
+    # ansible_collections/netbox/netbox/pyproject.toml
+    pynetbox
+  ]);
+
+  # don't try and fail to strip 48000+ non strippable files, it takes >5 minutes!
+  dontStrip = true;
+
+  # difficult to test
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Radically simple IT automation";
+    homepage = "http://www.ansible.com";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/core.nix b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
new file mode 100644
index 000000000000..b300771b346a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
@@ -0,0 +1,83 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, installShellFiles
+, ansible-collections
+, cryptography
+, jinja2
+, junit-xml
+, lxml
+, ncclient
+, packaging
+, paramiko
+, pexpect
+, psutil
+, pycrypto
+, pyyaml
+, requests
+, resolvelib
+, scp
+, windowsSupport ? false, pywinrm
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "ansible-core";
+  version = "2.11.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-fnWCepTUfRw+GTDXCPDvY3o6uaIfdXqvVd6rbp9HxoI=";
+  };
+
+  # ansible_connection is already wrapped, so don't pass it through
+  # the python interpreter again, as it would break execution of
+  # connection plugins.
+  postPatch = ''
+    substituteInPlace lib/ansible/executor/task_executor.py \
+      --replace "[python," "["
+
+    substituteInPlace requirements.txt \
+      --replace "resolvelib >= 0.5.3, < 0.6.0" "resolvelib"
+  '';
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  propagatedBuildInputs = [
+    # depend on ansible-collections instead of the other way around
+    ansible-collections
+    # from requirements.txt
+    cryptography
+    jinja2
+    packaging
+    pyyaml
+    resolvelib
+    # optional dependencies
+    junit-xml
+    lxml
+    ncclient
+    paramiko
+    pexpect
+    psutil
+    pycrypto
+    requests
+    scp
+    xmltodict
+  ] ++ lib.optional windowsSupport pywinrm;
+
+  postInstall = ''
+    installManPage docs/man/man1/*.1
+  '';
+
+  # internal import errors, missing dependencies
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Radically simple IT automation";
+    homepage = "https://www.ansible.com";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/default.nix b/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix
index 245375c26be0..174ab6dc6c46 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix
@@ -18,13 +18,13 @@
 
 buildPythonPackage rec {
   pname = "ansible";
-  version = "2.9.12";
+  version = "2.9.22";
 
   src = fetchFromGitHub {
     owner = "ansible";
     repo = "ansible";
     rev = "v${version}";
-    sha256 = "0c794k0cyl54807sh9in0l942ah6g6wlz5kf3qvy5lhd581zlgyb";
+    sha256 = "0gkv59cfxzs0ahgkxmmx9sqnfb2xqr10q4yh2662nbzajmvqmfgm";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/anytree/default.nix b/nixpkgs/pkgs/development/python-modules/anytree/default.nix
index c11833ba5793..fa92bc44891a 100644
--- a/nixpkgs/pkgs/development/python-modules/anytree/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/anytree/default.nix
@@ -52,6 +52,6 @@ buildPythonPackage rec {
     description = "Powerful and Lightweight Python Tree Data Structure";
     homepage = "https://github.com/c0fec0de/anytree";
     license = licenses.asl20;
-    maintainers = [ maintainers.worldofpeace ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/apipkg/default.nix b/nixpkgs/pkgs/development/python-modules/apipkg/default.nix
index 10e2369e12ee..5e7ae3860a93 100644
--- a/nixpkgs/pkgs/development/python-modules/apipkg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apipkg/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, setuptools_scm, isPy3k }:
+, pytest, setuptools-scm, isPy3k }:
 
 buildPythonPackage rec {
   pname = "apipkg";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   checkInputs = [ pytest ];
 
   # Fix pytest 4 support. See: https://github.com/pytest-dev/apipkg/issues/14
diff --git a/nixpkgs/pkgs/development/python-modules/apispec/default.nix b/nixpkgs/pkgs/development/python-modules/apispec/default.nix
index 13fb71d7f2f2..1262bb3338a3 100644
--- a/nixpkgs/pkgs/development/python-modules/apispec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apispec/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, pythonOlder
 , pyyaml
 , prance
 , marshmallow
@@ -11,16 +12,20 @@
 
 buildPythonPackage rec {
   pname = "apispec";
-  version = "4.3.0";
+  version = "4.4.1";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5ec0fe72f1422a1198973fcbb48d0eb5c7390f4b0fbe55474fce999ad6826a9b";
+    sha256 = "sha256-qt7UrkUXUsWLcOV5kj2Nt9rwtx9i3vjI/noqUr18BqI=";
   };
 
-  checkInputs = [
+  propagatedBuildInputs = [
     pyyaml
     prance
+  ];
+
+  checkInputs = [
     openapi-spec-validator
     marshmallow
     mock
diff --git a/nixpkgs/pkgs/development/python-modules/aplpy/default.nix b/nixpkgs/pkgs/development/python-modules/aplpy/default.nix
index e253c610c214..682ef6e17fdf 100644
--- a/nixpkgs/pkgs/development/python-modules/aplpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aplpy/default.nix
@@ -27,13 +27,26 @@ buildPythonPackage rec {
     sha256 = "239f3d83635ca4251536aeb577df7c60df77fc4d658097b92094719739aec3f3";
   };
 
-  patches = [ (fetchpatch {
-      # Can be removed in next release after 2.0.3
+  patches = [
+    # Fixes compatibility with astropy-helpers. This patch has been merged into
+    # the master branch as of May 2020, and should be part of the next
+    # upstream release (v2.0.3 was tagged in Feb. 2019).
+    (fetchpatch {
       url = "https://github.com/aplpy/aplpy/pull/448.patch";
       sha256 = "1pnzh7ykjc8hwahzbzyryrzv5a8fddgd1bmzbhagkrn6lmvhhpvq";
       excludes = [ "tox.ini" "azure-pipelines.yml" ".circleci/config.yml" "MANIFEST.in" ".gitignore"
        "setup.cfg" "appveyor.yml" "readthedocs.yml" "CHANGES.rst" ".gitmodules" ".travis.yml" "astropy_helpers" ];
     })
+    # Fix for matplotlib >= 3.4 (https://github.com/aplpy/aplpy/pull/466)
+    # Note: because of a security thing, github will refuse to serve this patch from the
+    # "normal" location
+    # (https://github.com/aplpy/aplpy/commit/56c1cc694fdea69e7da8506d3212c4495adb0ca5.patch)
+    # due to the fact that it contains the PDF magic bytes, but it will serve it from
+    # this githubusercontent domain.
+    (fetchpatch {
+      url = "https://patch-diff.githubusercontent.com/raw/aplpy/aplpy/pull/466/commit/56c1cc694fdea69e7da8506d3212c4495adb0ca5.patch";
+      sha256 = "0jna2n1cgfzr0a27m5z94wwph7qg25hs7lycrdb2dp3943rb35g4";
+    })
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/apprise/default.nix b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
index fad9e7d03fa8..61cfed3dbb9e 100644
--- a/nixpkgs/pkgs/development/python-modules/apprise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "apprise";
-  version = "0.9.1";
+  version = "0.9.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-FW5gt35yoXVr2+hiGBDJ/5jFFfIpn2Z9sDN8acoO4FI=";
+    sha256 = "sha256-yKzpyJHUIkVYVwrL6oCPMd+QSVML2czWmQHCemXWAMQ=";
   };
 
   nativeBuildInputs = [ Babel installShellFiles ];
diff --git a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
index 7802df99ebed..601dd954bc42 100644
--- a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.0.6852";
+  version = "9.0.7912";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NlL/uRI568HYkt8T2kuzyHNXpWybOLbFduE+1dzm4Qo=";
+    sha256 = "sha256-nHXF6Il6rHHrnGYEmv4FPQr6MsurzH1exkJS9UXThBs=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/arrow/1.nix b/nixpkgs/pkgs/development/python-modules/arrow/1.nix
deleted file mode 100644
index f9b830762b30..000000000000
--- a/nixpkgs/pkgs/development/python-modules/arrow/1.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, pythonOlder
-, simplejson, typing-extensions, python-dateutil, pytz, pytest-mock, sphinx
-, dateparser, pytestcov, pytestCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "arrow";
-  version = "1.0.3";
-
-  disabled = pythonOlder "3.6";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0793badh4hgbk2c5g70hmbl7n3d4g5d87bcflld0w9rjwy59r71r";
-  };
-
-  propagatedBuildInputs = [ python-dateutil ]
-    ++ lib.optionals (!pythonOlder "3.8") [ typing-extensions ];
-
-  checkInputs = [
-    dateparser
-    pytestCheckHook
-    pytestcov
-    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 oxzi ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/arrow/default.nix b/nixpkgs/pkgs/development/python-modules/arrow/default.nix
index 93347d7a4b4b..159ef917f521 100644
--- a/nixpkgs/pkgs/development/python-modules/arrow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/arrow/default.nix
@@ -1,29 +1,39 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
-, nose, chai, simplejson, backports_functools_lru_cache
-, python-dateutil, pytz, pytest-mock, sphinx, dateparser, pytestcov
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, python-dateutil
+, typing-extensions
 , pytestCheckHook
+, pytest-mock
+, pytz
+, simplejson
 }:
 
 buildPythonPackage rec {
   pname = "arrow";
   version = "1.0.3";
 
+  disabled = pythonOlder "3.6";
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "399c9c8ae732270e1aa58ead835a79a40d7be8aa109c579898eb41029b5a231d";
   };
 
+  postPatch = ''
+    # no coverage reports
+    sed -i "/addopts/d" tox.ini
+  '';
+
   propagatedBuildInputs = [ python-dateutil ]
-    ++ lib.optionals isPy27 [ backports_functools_lru_cache ];
+    ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
 
   checkInputs = [
-    dateparser
     pytestCheckHook
-    pytestcov
     pytest-mock
     pytz
     simplejson
-    sphinx
   ];
 
   # ParserError: Could not parse timezone expression "America/Nuuk"
diff --git a/nixpkgs/pkgs/development/python-modules/asciimatics/default.nix b/nixpkgs/pkgs/development/python-modules/asciimatics/default.nix
index aafbaa15ffe7..cbddf962bd10 100644
--- a/nixpkgs/pkgs/development/python-modules/asciimatics/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asciimatics/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pyfiglet
 , pillow
 , wcwidth
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/astroid/1.6.nix b/nixpkgs/pkgs/development/python-modules/astroid/1.6.nix
index 2c763e214e87..47c7e8f6eb3f 100644
--- a/nixpkgs/pkgs/development/python-modules/astroid/1.6.nix
+++ b/nixpkgs/pkgs/development/python-modules/astroid/1.6.nix
@@ -34,6 +34,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/PyCQA/astroid";
     license = licenses.lgpl2;
     platforms = platforms.all;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/astroid/default.nix b/nixpkgs/pkgs/development/python-modules/astroid/default.nix
index 77ac408076cc..d6fda529d5da 100644
--- a/nixpkgs/pkgs/development/python-modules/astroid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/astroid/default.nix
@@ -35,6 +35,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/PyCQA/astroid";
     license = licenses.lgpl21Plus;
     platforms = platforms.all;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/astropy-healpix/default.nix b/nixpkgs/pkgs/development/python-modules/astropy-healpix/default.nix
index e82faba97583..80ef403b2cc0 100644
--- a/nixpkgs/pkgs/development/python-modules/astropy-healpix/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/astropy-healpix/default.nix
@@ -3,25 +3,42 @@
 , fetchPypi
 , numpy
 , astropy
-, astropy-helpers
+, astropy-extension-helpers
+, setuptools-scm
+, pytestCheckHook
+, pytest-doctestplus
+, hypothesis
 }:
 
 buildPythonPackage rec {
   pname = "astropy-healpix";
   version = "0.6";
 
-  doCheck = false; # tests require pytest-astropy
-
   src = fetchPypi {
-    inherit pname version;
+    inherit version;
+    pname = lib.replaceStrings ["-"] ["_"] pname;
     sha256 = "409a6621c383641456c074f0f0350a24a4a58e910eaeef14e9bbce3e00ad6690";
   };
 
-  propagatedBuildInputs = [ numpy astropy astropy-helpers ];
+  nativeBuildInputs = [
+    astropy-extension-helpers
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    astropy
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-doctestplus
+    hypothesis
+  ];
 
-  # Disable automatic update of the astropy-helper module
-  postPatch = ''
-    substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False"
+  # tests must be run in the build directory
+  preCheck = ''
+    cd build/lib*
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/astropy/default.nix b/nixpkgs/pkgs/development/python-modules/astropy/default.nix
index 9ffcba63954b..06cfafc134f3 100644
--- a/nixpkgs/pkgs/development/python-modules/astropy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/astropy/default.nix
@@ -1,6 +1,6 @@
 { lib
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , buildPythonPackage
 , isPy3k
 , cython
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     sha256 = "2c194f8a429b8399de64a413a06881ea49f0525cabaa2d78fc132b9e970adc6a";
   };
 
-  nativeBuildInputs = [ setuptools_scm astropy-helpers astropy-extension-helpers cython jinja2 ];
+  nativeBuildInputs = [ setuptools-scm astropy-helpers astropy-extension-helpers cython jinja2 ];
   propagatedBuildInputs = [ numpy pyerfa ];
   checkInputs = [ pytest pytest-astropy ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/asttokens/default.nix b/nixpkgs/pkgs/development/python-modules/asttokens/default.nix
index ecbbfa909112..bb4cf989cddf 100644
--- a/nixpkgs/pkgs/development/python-modules/asttokens/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asttokens/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, fetchpatch, buildPythonPackage,
-  setuptools_scm, toml, six, astroid, pytest
+  setuptools-scm, toml, six, astroid, pytest
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     })
   ];
 
-  propagatedBuildInputs = [ setuptools_scm toml six astroid ];
+  propagatedBuildInputs = [ setuptools-scm toml six astroid ];
 
   checkInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix b/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
index a25916bc99c1..46084fcd8a9d 100644
--- a/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "async-upnp-client";
-  version = "0.16.0";
+  version = "0.18.0";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "StevenLooman";
     repo = "async_upnp_client";
     rev = version;
-    sha256 = "sha256-vgy/zn1Xm7Fm7u/YMe/nJa3tyRNKx/WHz0AHfhFaVKo=";
+    sha256 = "sha256-pntOy7J4dPtAS8ZzxLLV79VQ36r+0sXMImJFhDk9bQw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncio-dgram/default.nix b/nixpkgs/pkgs/development/python-modules/asyncio-dgram/default.nix
index 2360d170f38e..b5ae2b4baf8d 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncio-dgram/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncio-dgram/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "asyncio-dgram";
-  version = "1.2.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "jsbronder";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wgcL/BdNjzitkkaGyRUQbW1uv1enLDnHk30YHClK58o=";
+    sha256 = "sha256-EL3iOoCfLAtfdMI1J2XMf4izOEo9+a+0PNQs+4HuEfo=";
   };
 
   # OSError: AF_UNIX path too long
diff --git a/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix b/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
index 9271adeb617f..f6d59c633cd9 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
@@ -50,6 +50,6 @@ buildPythonPackage rec {
     description = "Provides an asynchronous client and server implementation of the SSHv2 protocol on top of the Python asyncio framework";
     homepage = "https://asyncssh.readthedocs.io/en/latest";
     license = licenses.epl20;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix b/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix
new file mode 100644
index 000000000000..63e096bdc0f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, typing-extensions
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "asyncstdlib";
+  version = "3.9.1";
+  disabled = pythonOlder "3.7";
+  format = "flit";
+
+  src = fetchFromGitHub {
+    owner = "maxfischer2781";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "13ranr7zi61w52vfrxwkf32bbhk88j0r5c5z2x2h5vw268001lk2";
+  };
+
+  propagatedBuildInputs = [
+    typing-extensions
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "asyncstdlib" ];
+
+  meta = with lib; {
+    description = "Python library that extends the Python asyncio standard library";
+    homepage = "https://asyncstdlib.readthedocs.io/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/atlassian-python-api/default.nix b/nixpkgs/pkgs/development/python-modules/atlassian-python-api/default.nix
index 617d5562b43a..31d615f5314b 100755
--- a/nixpkgs/pkgs/development/python-modules/atlassian-python-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/atlassian-python-api/default.nix
@@ -1,30 +1,28 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, isPy3k
-, certifi
-, chardet
+, fetchFromGitHub
 , deprecated
-, idna
 , oauthlib
 , requests
 , requests_oauthlib
 , six
-, urllib3
-, pytestrunner
-, pytest
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "atlassian-python-api";
   version = "3.8.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7ef384a91a790c807336e2bd6b7554284691aadd6d7413d199baf752dd84c53e";
+  src = fetchFromGitHub {
+    owner = "atlassian-api";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-J0/CtfBtOdWReKQS/VvOL/3r+j4zJfnv/ICIXepKUvc=";
   };
 
-  checkInputs = [ pytestrunner pytest ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
   propagatedBuildInputs = [ deprecated oauthlib requests requests_oauthlib six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/audioread/default.nix b/nixpkgs/pkgs/development/python-modules/audioread/default.nix
index a4f6d9057654..d2964accc144 100644
--- a/nixpkgs/pkgs/development/python-modules/audioread/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/audioread/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytestrunner
 }:
 
 buildPythonPackage rec {
@@ -13,8 +12,6 @@ buildPythonPackage rec {
     sha256 = "a3480e42056c8e80a8192a54f6729a280ef66d27782ee11cbd63e9d4d1523089";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
-
   # No tests, need to disable or py3k breaks
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/authcaptureproxy/default.nix b/nixpkgs/pkgs/development/python-modules/authcaptureproxy/default.nix
new file mode 100644
index 000000000000..0f1f6d046463
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/authcaptureproxy/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, aiohttp
+, beautifulsoup4
+, httpx
+, importlib-metadata
+, multidict
+, typer
+, yarl
+, pytest-asyncio
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "authcaptureproxy";
+  version = "1.0.1";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "alandtse";
+    repo = "auth_capture_proxy";
+    rev = "v${version}";
+    sha256 = "1fbrmh6qa3dm3q3zdxaa0fls94wardbcvnjgwxk686wpjgs1xrs4";
+  };
+
+  postPatch = ''
+    # https://github.com/alandtse/auth_capture_proxy/issues/14
+    substituteInPlace pyproject.toml --replace \
+      "poetry.masonry.api" \
+      "poetry.core.masonry.api"
+  '';
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    beautifulsoup4
+    httpx
+    importlib-metadata
+    multidict
+    typer
+    yarl
+  ];
+
+  checkInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "A proxy to capture authentication information from a webpage";
+    homepage = "https://github.com/alandtse/auth_capture_proxy";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ graham33 hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/autobahn/default.nix b/nixpkgs/pkgs/development/python-modules/autobahn/default.nix
index 386d4766bbfa..52def3d6ee17 100644
--- a/nixpkgs/pkgs/development/python-modules/autobahn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/autobahn/default.nix
@@ -1,35 +1,78 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k,
-  six, txaio, twisted, zope_interface, cffi,
-  trollius ? null, futures ? null,
-  mock, pytest, cryptography, pynacl
+{ lib
+, argon2_cffi
+, attrs
+, buildPythonPackage
+, cbor
+, cbor2
+, cffi
+, cryptography
+, fetchPypi
+, flatbuffers
+, mock
+, msgpack
+, passlib
+, pynacl
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, twisted
+, py-ubjson
+, txaio
+, ujson
+, zope_interface
 }:
+
 buildPythonPackage rec {
   pname = "autobahn";
   version = "21.3.1";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e126c1f583e872fb59e79d36977cfa1f2d0a8a79f90ae31f406faae7664b8e03";
+    sha256 = "00wf9dkfgakg80gy62prg650lb8zz9y9fdlxwxcznwp8hgsw29p1";
   };
 
-  propagatedBuildInputs = [ six txaio twisted zope_interface cffi cryptography pynacl ] ++
-    (lib.optionals (!isPy3k) [ trollius futures ]);
+  propagatedBuildInputs = [
+    argon2_cffi
+    cbor
+    cbor2
+    cffi
+    cryptography
+    flatbuffers
+    msgpack
+    passlib
+    py-ubjson
+    pynacl
+    twisted
+    txaio
+    ujson
+    zope_interface
+  ];
+
+  checkInputs = [
+    mock
+    pytest-asyncio
+    pytestCheckHook
+  ];
 
-  checkInputs = [ mock pytest ];
-  checkPhase = ''
-    runHook preCheck
-    USE_TWISTED=true py.test $out
-    runHook postCheck
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "pytest>=2.8.6,<3.3.0" "pytest"
   '';
 
-  # Tests do no seem to be compatible yet with pytest 5.1
-  # https://github.com/crossbario/autobahn-python/issues/1235
-  doCheck = false;
+  preCheck = ''
+    # Run asyncio tests (requires twisted)
+    export USE_ASYNCIO=1
+  '';
+
+  pytestFlagsArray = [ "--pyargs autobahn" ];
+
+  pythonImportsCheck = [ "autobahn" ];
 
   meta = with lib; {
-    description = "WebSocket and WAMP in Python for Twisted and asyncio.";
-    homepage    = "https://crossbar.io/autobahn";
-    license     = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    description = "WebSocket and WAMP in Python for Twisted and asyncio";
+    homepage = "https://crossbar.io/autobahn";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/autoit-ripper/default.nix b/nixpkgs/pkgs/development/python-modules/autoit-ripper/default.nix
new file mode 100644
index 000000000000..2276241d25e9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/autoit-ripper/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, lief
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "autoit-ripper";
+  version = "1.0.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0mbsrfa72n7y1vkm9jhwhn1z3k45jxrlgx58ia1l2bp6chnnn2zy";
+  };
+
+  propagatedBuildInputs = [
+    lief
+  ];
+
+  postPatch = ''
+    substituteInPlace requirements.txt --replace "lief==0.10.1" "lief>=0.10.1"
+  '';
+
+  # Project has no tests
+  doCheck = false;
+  pythonImportsCheck = [ "autoit_ripper" ];
+
+  meta = with lib; {
+    description = "Python module to extract AutoIt scripts embedded in PE binaries";
+    homepage = "https://github.com/nazywam/AutoIt-Ripper";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/automat/default.nix b/nixpkgs/pkgs/development/python-modules/automat/default.nix
index 20f54870e1f9..ce7566deb30d 100644
--- a/nixpkgs/pkgs/development/python-modules/automat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/automat/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi,
-  m2r, setuptools_scm, six, attrs }:
+  m2r, setuptools-scm, six, attrs }:
 
 buildPythonPackage rec {
   version = "20.2.0";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "7979803c74610e11ef0c0d68a2942b152df52da55336e0c9d58daf1831cbdf33";
   };
 
-  buildInputs = [ m2r setuptools_scm ];
+  buildInputs = [ m2r setuptools-scm ];
   propagatedBuildInputs = [ six attrs ];
 
   # Some tests require twisetd, but twisted requires Automat to build.
diff --git a/nixpkgs/pkgs/development/python-modules/autopep8/default.nix b/nixpkgs/pkgs/development/python-modules/autopep8/default.nix
index 491663b56cd0..737989ac3183 100644
--- a/nixpkgs/pkgs/development/python-modules/autopep8/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/autopep8/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "autopep8";
-  version = "1.5.6";
+  version = "1.5.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5454e6e9a3d02aae38f866eec0d9a7de4ab9f93c10a273fb0340f3d6d09f7514";
+    sha256 = "276ced7e9e3cb22e5d7c14748384a5cf5d9002257c0ed50c0e075b68011bb6d0";
   };
 
   propagatedBuildInputs = [ pycodestyle toml ];
diff --git a/nixpkgs/pkgs/development/python-modules/awesomeversion/default.nix b/nixpkgs/pkgs/development/python-modules/awesomeversion/default.nix
index 09a4c9460d1c..5eadd131d9ad 100644
--- a/nixpkgs/pkgs/development/python-modules/awesomeversion/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awesomeversion/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "awesomeversion";
-  version = "21.4.0";
+  version = "21.5.0";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "ludeeus";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ulByke1sKVcDdBhAz/fxdNFJ0PSjYVdnBcO+GYEnZUQ=";
+    sha256 = "sha256-0EOGWJZyvcRJyOqkcISvjL7o6lIaCwMKLftshsQCR6E=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/awkward/default.nix b/nixpkgs/pkgs/development/python-modules/awkward/default.nix
index 2acec8ccc6f1..4057758155e6 100644
--- a/nixpkgs/pkgs/development/python-modules/awkward/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awkward/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "awkward";
-  version = "1.2.2";
+  version = "1.2.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "89f126a072d3a6eee091e1afeed87e0b2ed3c34ed31a1814062174de3cab8d9b";
+    sha256 = "7d727542927a926f488fa62d04e2c5728c72660f17f822e627f349285f295063";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/python-modules/awscrt/default.nix b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
new file mode 100644
index 000000000000..26c4334e3196
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
@@ -0,0 +1,35 @@
+{ lib, buildPythonPackage, fetchPypi, cmake, perl, stdenv, gcc10, darwin }:
+
+buildPythonPackage rec {
+  pname = "awscrt";
+  version = "0.11.13";
+
+  buildInputs = lib.optionals stdenv.isDarwin
+    (with darwin.apple_sdk.frameworks; [ CoreFoundation Security ]);
+
+  # Required to suppress -Werror
+  # https://github.com/NixOS/nixpkgs/issues/39687
+  hardeningDisable = lib.optional stdenv.cc.isClang "strictoverflow";
+
+  nativeBuildInputs = [ cmake ] ++
+    # gcc <10 is not supported, LLVM on darwin is just fine
+    lib.optionals (!stdenv.isDarwin && stdenv.isAarch64) [ gcc10 perl ];
+
+  dontUseCmakeConfigure = true;
+
+  # Unable to import test module
+  # https://github.com/awslabs/aws-crt-python/issues/281
+  doCheck = false;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-G/bf2AzWp8AHL4of0zfX3jIYyTtmTLBIC2ZKiMi19c0=";
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/awslabs/aws-crt-python";
+    description = "Python bindings for the AWS Common Runtime";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ davegallant ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/azure-common/default.nix b/nixpkgs/pkgs/development/python-modules/azure-common/default.nix
index f77c938b1d7f..2312df1cafaf 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-common/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-common/default.nix
@@ -9,14 +9,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.1.26";
+  version = "1.1.27";
   pname = "azure-common";
   disabled = isPyPy;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "b2866238aea5d7492cfb0282fc8b8d5f6d06fb433872345864d45753c10b6e4f";
+    sha256 = "9f3f5d991023acbd93050cf53c4e863c6973ded7e236c69e99c8ff5c7bad41ef";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-core/default.nix b/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
index 2bcb4d42646c..6718ca1d5042 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
@@ -14,14 +14,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.12.0";
+  version = "1.15.0";
   pname = "azure-core";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "adf2b1c6ef150a92295b4b405f982a9d2c55c4846728cb14760ca592acbb09ec";
+    sha256 = "197917b98fec661c35392e32abec4f690ac2117371a814e25e57c224ce23cf1f";
   };
 
   propagatedBuildInputs = [
@@ -45,6 +45,13 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "tests/" ];
   # disable tests which touch network
   disabledTests = [ "aiohttp" "multipart_send" "response" "request" "timeout" ];
+  disabledTestPaths = [
+    # requires testing modules which aren't published, and likely to create cyclic dependencies
+    "tests/test_connection_string_parsing.py"
+    # wants network
+    "tests/async_tests/test_streaming_async.py"
+    "tests/test_streaming.py"
+  ];
 
   meta = with lib; {
     description = "Microsoft Azure Core Library for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/azure-datalake-store/default.nix b/nixpkgs/pkgs/development/python-modules/azure-datalake-store/default.nix
index f2c57d76623d..b201b39d52db 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-datalake-store/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-datalake-store/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "azure-datalake-store";
-  version = "0.0.51";
+  version = "0.0.52";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b871ebb3bcfd292e8a062dbbaacbc132793d98f1b60f549a8c3b672619603fc1";
+    sha256 = "4198ddb32614d16d4502b43d5c9739f81432b7e0e4d75d30e05149fe6007fea2";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-eventgrid/default.nix b/nixpkgs/pkgs/development/python-modules/azure-eventgrid/default.nix
index 3d8e4df56540..f83040a4b3ce 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-eventgrid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-eventgrid/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "azure-eventgrid";
-  version = "4.1.0";
+  version = "4.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c4f29b2d9b717dad7919048f0a458dd84f83637c3d5c8f5a7e64634b22086719";
+    sha256 = "77af2c20abde7d8342da7993781605b440aeac0f95c4af13bb87465c3bd5fe35";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix b/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
index a0120ae35060..10c455ce072d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
@@ -17,12 +17,12 @@
 
 buildPythonPackage rec {
   pname = "azure-identity";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "872adfa760b2efdd62595659b283deba92d47b7a67557eb9ff48f0b5d04ee396";
+    sha256 = "2e70b00874e4f288e37804bc06bfaf216de8565c759594bf79cccfbf9ca2c78a";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-apimanagement/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-apimanagement/default.nix
index 4432595a12e7..8ca4df197bb7 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-apimanagement/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-apimanagement/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "2.0.0";
   pname = "azure-mgmt-apimanagement";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3ad7e2c3d20dd0141f9e2c0ae923121f7cbe7333bb314850e6f8b606636e3589";
+    sha256 = "54fade87af54904c8ac9785efccebc537c58a3c1f8726e929e473698f06ebbfc";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-billing/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-billing/default.nix
index d1cb009355de..91ec3c069c8b 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-billing/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-billing/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , python
 , isPy3k
@@ -10,17 +11,18 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-billing";
-  version = "1.0.0"; #pypi's 0.2.0 doesn't build ootb
+  version = "6.0.0"; #pypi's 0.2.0 doesn't build ootb
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8b55064546c8e94839d9f8c98e9ea4b021004b3804e192bf39fa65b603536ad0";
+    sha256 = "d4f5c5a4188a456fe1eb32b6c45f55ca2069c74be41eb76921840b39f2f5c07f";
     extension = "zip";
   };
 
   propagatedBuildInputs = [
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-botservice/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
index ead8dbd3f015..69dff020c8e7 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-botservice/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "0.3.0";
+  version = "1.0.0";
   pname = "azure-mgmt-botservice";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f8318878a66a0685a01bf27b7d1409c44eb90eb72b0a616c1a2455c72330f2f1";
+    sha256 = "9dae4d749a2a072e22703318ea36e379aec20876c553b2889037c7bdec4b9546";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
index dfadfbbc10e4..ca662f6b1455 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cdn";
-  version = "10.0.0";
+  version = "11.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "f1216f505126483c568be511a3e0e654f886f13730dae5368609ff0573528cf2";
+    sha256 = "28e7070001e7208cdb6c2ad253ec78851abdd73be482230d2c0874eed5bc0907";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
index 09800f9cef36..cb782c6e58e3 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cognitiveservices";
-  version = "11.0.0";
+  version = "12.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "71414e3cd7445e44fc18f217f2d22df05c36877e1233328b2297d07ddf27e82a";
+    sha256 = "73054bd19866577e7e327518afc8f47e1639a11aea29a7466354b81804f4a676";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
index 2bfa56dc81c5..171c45220d17 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "19.0.0";
+  version = "21.0.0";
   pname = "azure-mgmt-compute";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "65afe759c6ee87dd89d65d59c8da4b2c04d197c07c1fbfdc56ef1aea468e4525";
+    sha256 = "9227c3755a70bc377d70e35e1fc6f1fab109dd88974fd2c7129867ccaa10f813";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix
index 821c7db0d324..8bc79a7df2ff 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix
@@ -1,21 +1,22 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "2.8.0";
+  version = "8.0.0";
   pname = "azure-mgmt-containerregistry";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "193k07a77z7bj61zn2gxvvfqi20cgxksvxp7if71bwsl1l2y2jxj";
+    sha256 = "480eb5d1bb910da4e87a5d7047e2f3e426083b14911ac64c48badd0218e9e756";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [ azure-common azure-mgmt-core msrest msrestazure ];
 
   # no tests included
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index 8433025bbc04..76d5c11cb6fd 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "15.0.0";
+  version = "15.1.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "e205aada94bb630e1ba5ee57751849456e1535aec3f2173edf2cbf596b99c0d9";
+    sha256 = "51c64e01e614c9b88723b86b36b48f8417171610a098bf4690e39e71cefc32d9";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
index 22823bfdd583..1531a4e0758f 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cosmosdb/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cosmosdb";
-  version = "6.1.0";
+  version = "6.3.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7eb28eae4354e0a68e098de314b380d92f6482f53b2947dc8a36913195bdfde0";
+    sha256 = "4135104da5b0f3f0a7249abcd8da55936603e50aaaf2868e5f739a717cf20b3d";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-databoxedge/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-databoxedge/default.nix
index 317019844cb0..7c76daf619d5 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-databoxedge/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-databoxedge/default.nix
@@ -1,21 +1,23 @@
 { lib, buildPythonPackage, fetchPypi
 , msrestazure
 , azure-common
+, azure-mgmt-core
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-databoxedge";
-  version = "0.2.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "g8BtUpIGOse8Jrws48gQ/o7sgymlgX0XIxl1ThHS3XA=";
+    sha256 = "04090062bc1e8f00c2f45315a3bceb0fb3b3479ec1474d71b88342e13499b087";
   };
 
   propagatedBuildInputs = [
     msrestazure
     azure-common
+    azure-mgmt-core
   ];
 
   # no tests in pypi tarball
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
index f8f0818598d3..f7d2b7b9db04 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
@@ -7,22 +7,24 @@
 , msrestazure
 , azure-common
 , azure-mgmt-nspkg
+, azure-mgmt-core
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-datamigration";
-  version = "4.1.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c33d1deb0ee173a15c8ec21a1e714ba544fe5f4895d3b1d8b0581f3c1b2e8ce4";
+    sha256 = "70373dbeb35a7768a47341bb3b570c559197bc1ba36fc8f8bf15139e4c8bad70";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
index f6be961060e6..c8f15f5960c1 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-deploymentmanager/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "0.2.0";
+  version = "1.0.0";
   pname = "azure-mgmt-deploymentmanager";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0c6pyr36n9snx879vas5r6l25db6nlp2z96xn759mz4kg4i45qs6";
+    sha256 = "9badb768617209149c33e68ca2e59c35b1d3d11427e2969872f2e236e14eee78";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-dns/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-dns/default.nix
index 37511456fe6f..7daca780853a 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-dns/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-dns/default.nix
@@ -6,24 +6,24 @@
 , msrest
 , msrestazure
 , azure-common
-, azure-mgmt-nspkg
+, azure-mgmt-core
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-dns";
-  version = "3.0.0";
+  version = "8.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0zxkcczf01b64qfwj98jqdvnwqahygcyccf37rcxpdcfgpkg9kbf";
+    sha256 = "407c2dacb33513ffbe9ca4be5addb5e9d4bae0cb7efa613c3f7d531ef7bf8de8";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
-    azure-mgmt-nspkg
+    azure-mgmt-core
   ];
 
   # this is still needed for when the version is overrided
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventgrid/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventgrid/default.nix
index 1b244818f913..c3ba311d4c49 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventgrid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventgrid/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-eventgrid";
-  version = "8.0.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "a8a6e1bb105a14f1d3545ecb07c190370f21a145f8ba51599ed169f1dc8d5dcc";
+    sha256 = "aecbb69ecb010126c03668ca7c9a2be8e965568f5b560f0e7b5bc152b157b510";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventhub/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventhub/default.nix
index 6b86973bccd9..5bd45d3609e6 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventhub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-eventhub/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-eventhub";
-  version = "8.0.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "ae02b1e3ccbb9ec45849de544dea4d8ef36ea767707207d055ae2b4f756c0d79";
+    sha256 = "181f72adf9287741ded8e386c8934a722d08399d781ce1c452f0482aac1f019b";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
index c4453e8c0c11..9b9a84bbe21e 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
@@ -4,24 +4,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-hanaonazure";
-  version = "0.15.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "f5699cd2f6ad09555c3f1a75c8703e12db76bbbb7ec8b621dcb948d4fc9829a5";
+    sha256 = "f2f8342fbfded8be4165fb0d6f010b68df074886811db3e2c9a50b360ee2dd3a";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-hdinsight/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-hdinsight/default.nix
index 5547eb032d0e..02d2c6a013c1 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-hdinsight/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-hdinsight/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "7.0.0";
+  version = "8.0.0";
   pname = "azure-mgmt-hdinsight";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d0070817ee2be611d45af91eabc5665dd53f024eaa7a55e490ace4f71a55c733";
+    sha256 = "2c43f1a62e5b83304392b0ad7cfdaeef2ef2f47cb3fdfa2577b703b6ea126000";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-iothub/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
index c51d43ec4447..f4e1534a61d6 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-iothub";
-  version = "1.0.0";
+  version = "2.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7acf24088395a299974dd26406db2686d8d59a3fffbe47c24617b36d445f2de8";
+    sha256 = "653a765f0beb6af0c9ecbd290b4101e1b5e0f6450405faf28ab8234c15d8b38b";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
index 10c4604ec186..c7aa05d25bd2 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-keyvault";
-  version = "8.0.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "2c974c6114d8d27152642c82a975812790a5e86ccf609bf370a476d9ea0d2e7d";
+    sha256 = "2890c489289b8a0bf833852014f2f494eb96873834896910ddfa58cfa97b90da";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-kusto/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
index c5adc61ea203..fb82c33ba9be 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "2.0.0";
   pname = "azure-mgmt-kusto";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fa3ede0ebd6489bbf993f420bcb5fc63d9fad2a1e945c3c49b26fa012bb3534e";
+    sha256 = "81601479e2b6da3e69654462674ef1474218c4415ef25c1d9892939721732153";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
index 9eb1d2afc149..5a93d3d0df18 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-loganalytics";
-  version = "8.0.0";
+  version = "10.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "3e7a93186594c328a6f34f0e0d9209a05021228baa85aa4c1c4ffdbf8005a45f";
+    sha256 = "29330984d0f084dff26cea239d7b733c1a26844da85d33bf3bb53b515ce0bc23";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managedservices/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managedservices/default.nix
index 4d059480c442..140f08e13f4a 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managedservices/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managedservices/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "6.0.0";
   pname = "azure-mgmt-managedservices";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "06ddfqriqlvwjsjhqka9r5vhshardyj9c10xgjissfkpqsgkkn7y";
+    sha256 = "ec0cb3858bcf8edf5eee0eddee81560424eb84352e0df082ddc94eb99badfd5e";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementgroups/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementgroups/default.nix
index e09646373b6e..eb744b78ff7d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementgroups/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementgroups/default.nix
@@ -4,24 +4,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-managementgroups";
-  version = "0.2.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "3d5237947458dc94b4a392141174b1c1258d26611241ee104e9006d1d798f682";
+    sha256 = "bab9bd532a1c34557f5b0ab9950e431e3f00bb96e8a3ce66df0f6ce2ae19cd73";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementpartner/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementpartner/default.nix
index d42fb5b05c39..169f52c86d52 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementpartner/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-managementpartner/default.nix
@@ -3,22 +3,24 @@
 , fetchPypi
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-managementpartner";
-  version = "0.1.1";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1bvcmx7dkf2adi26z7c2ga63ggpzdfqj8q1gzcic1yn03v6nb8i7";
+    sha256 = "1cd591848454a115c216d216a3fb7802c1b5de04b105e2696e4237b0f8768f2f";
   };
 
   propagatedBuildInputs = [
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-maps/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-maps/default.nix
index c0f418ed725c..8a62fafaea13 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-maps/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-maps/default.nix
@@ -6,24 +6,24 @@
 , msrest
 , msrestazure
 , azure-common
-, azure-mgmt-nspkg
+, azure-mgmt-core
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-maps";
-  version = "0.1.0";
+  version = "2.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c120e210bb61768da29de24d28b82f8d42ae24e52396eb6569b499709e22f006";
+    sha256 = "384e17f76a68b700a4f988478945c3a9721711c0400725afdfcb63cf84e85f0e";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
-    azure-mgmt-nspkg
+    azure-mgmt-core
   ];
 
   pythonNamespaces = [ "azure.mgmt" ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-media/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-media/default.nix
index 6320588ed430..b4d25a14938d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-media/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-media/default.nix
@@ -4,24 +4,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-media";
-  version = "3.1.0";
+  version = "7.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c35316d3d63dc99feb97ad7f12a7b411046537f5c6d79ef14f6067bcc379292f";
+    sha256 = "b45e82a594ed91cd5aa7a5cd5d01f038b7ac3cf12233e7ba2beaaa3477900e8e";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-netapp/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
index 35dc7ef05aba..ccb7c5592478 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "2.0.0";
+  version = "3.0.0";
   pname = "azure-mgmt-netapp";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ff3b663e36c961e86fc0cdbd6f9fb9fb863d3e7db9035fe713af7299e809ee5e";
+    sha256 = "5a293118c5089c4ec81f676b76aa95c60408a3443a46131d22978ffb81fe4605";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
index f70c8420c829..792501b24e71 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
@@ -10,14 +10,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "18.0.0";
+  version = "19.0.0";
   pname = "azure-mgmt-network";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "85fdeb7a1a8d89be9b585396796b218b31b681590d57d82d3ea14cf1f2d20b4a";
+    sha256 = "5e39a26ae81fa58c13c02029700f8c7b22c3fd832a294c543e3156a91b9459e8";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-privatedns/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-privatedns/default.nix
index 98855730ba34..c6ed92e0428d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-privatedns/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-privatedns/default.nix
@@ -1,21 +1,27 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , azure-common
+, azure-mgmt-core
 , msrest
 , msrestazure
 }:
 
 buildPythonPackage rec {
-  version = "0.1.0";
+  version = "1.0.0";
   pname = "azure-mgmt-privatedns";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08wdvfkk8jh90m3l4nz7knd5vikgfvsx70lk7mkhcvl0xj6gv76j";
+    sha256 = "b60f16e43f7b291582c5f57bae1b083096d8303e9d9958e2c29227a55cc27c45";
     extension = "zip";
   };
 
-  propagatedBuildInputs = [ azure-common msrest msrestazure ];
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+    msrestazure
+  ];
 
   # no tests included
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
index c7cb274d68b6..56e531421634 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-rdbms";
-  version = "8.0.0";
+  version = "8.1.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "8b018543048fc4fddb4155d9f22246ad0c4be2fb582a29dbb21ec4022724a119";
+    sha256 = "b30003a94c306533ebfb741b824dd1cc6c0a1810200926675e6b808bd0459d19";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
index 4ce18c4ae3b0..25aae3ffad01 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
@@ -4,23 +4,25 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-recoveryservicesbackup";
-  version = "0.11.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "f2b85d1d7d7db2af106000910ea5f8b95639874176a5de2f7ab37a2caa67af6b";
+    sha256 = "fd915aa6a76ef9e0e963615d4c909400c8d5646e26273ae25fa1418ce61e28d2";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
index 323aa26472ca..1ba00e861735 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
@@ -5,24 +5,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , isPy27
 }:
 
 buildPythonPackage rec {
-  version = "0.1.0";
+  version = "1.0.0";
   pname = "azure-mgmt-redhatopenshift";
   disabled = isPy27; # don't feel like fixing namespace issues on python2
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1g65lbia1i1jw6qkyjz2ldyl3p90rbr78l8kfryg70sj7z3gnnjn";
+    sha256 = "94cd41f1ebd82e40620fd3e6d88f666b5c19ac7cf8b4e8edadb9721bd7c80980";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ];
 
   pythonNamespaces = "azure.mgmt";
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-reservations/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
index 76ef894b96ad..7e08b16166d7 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
@@ -4,24 +4,26 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 , isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-reservations";
-  version = "0.9.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1dc97f48f3edb67116da8604ab76ef93233319f56455532be307f323e9ebf0e6";
+    sha256 = "880df54fdf3869ee6b142d4fc7a3fce518c850523c42cc895b7fb8359956554e";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
   ] ++ lib.optionals (!isPy3k) [
     azure-mgmt-nspkg
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
index 5cbbee77ae8e..9ea6acbe8da7 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
@@ -8,14 +8,14 @@
 
 
 buildPythonPackage rec {
-  version = "16.0.0";
+  version = "18.0.0";
   pname = "azure-mgmt-resource";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0bdbdc9c1ed2ef975d8dff45f358d1e06dc6761eace5b6817f13993447e48a68";
+    sha256 = "551036e592f409ef477d30937ea7cc4dda5126576965d9c816fdb8401bbd774c";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
index abb117d00466..661a507291d1 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
@@ -6,23 +6,25 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-servicefabric";
-  version = "0.5.0";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "5771f24516c8d4a27f5569f23f3a606f6f106e4ad502eec7f38aedfcd3eadc74";
+    sha256 = "de35e117912832c1a9e93109a8d24cab94f55703a9087b2eb1c5b0655b3b1913";
   };
 
   propagatedBuildInputs = [
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabricmanagedclusters/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabricmanagedclusters/default.nix
new file mode 100644
index 000000000000..b79c73ab026c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-servicefabricmanagedclusters/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, python
+, isPy3k
+, msrest
+, msrestazure
+, azure-common
+, azure-mgmt-core
+}:
+
+buildPythonPackage rec {
+  pname = "azure-mgmt-servicefabricmanagedclusters";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
+    sha256 = "sha256-EJyjolHrt92zWg+IKWFKTapwZaFrwTtSyEIu5/mZXOg=";
+  };
+
+  propagatedBuildInputs = [
+    msrest
+    msrestazure
+    azure-common
+    azure-mgmt-core
+  ];
+
+  pythonNamespaces = [ "azure.mgmt" ];
+
+  # has no tests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "This is the Microsoft Azure Service Fabric Cluster Management Client Library";
+    homepage = "https://github.com/Azure/azure-sdk-for-python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jonringer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-sql/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-sql/default.nix
index 60c1022e6037..83cffa0a295c 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-sql/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-sql/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-sql";
-  version = "1.0.0";
+  version = "2.1.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c7904f8798fbb285a2160c41c8bd7a416c6bd987f5d36a9b98c16f41e24e9f47";
+    sha256 = "5474387ec3417b0a277de2b42c6d1992256a6a9717ca1ada0e8dad01238b9919";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-storage/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-storage/default.nix
index 6f14ce174cd2..86c5005c8769 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-storage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-storage/default.nix
@@ -8,14 +8,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "17.0.0";
+  version = "18.0.0";
   pname = "azure-mgmt-storage";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c0e3fd99028d98c80dddabe1c22dfeb3d694e5c1393c6de80766eb240739e4bc";
+    sha256 = "d17beb34273797fa89863632ff0e1eb9b6a55198abb8c7f05d84980762e5f71f";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-synapse/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-synapse/default.nix
index 1b26495e9b7b..a09677ab8e7d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-synapse/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-synapse/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-synapse";
-  version = "1.0.0";
+  version = "2.0.0";
   disabled = pythonOlder "3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d5514dfef93294a2d9b8ff6fdb353b3102abd5750f147d904e6012f24113ff9c";
+    sha256 = "bec6bdfaeb55b4fdd159f2055e8875bf50a720bb0fce80a816e92a2359b898c8";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-web/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-web/default.nix
index 9bd5371412d7..b2643eb336c8 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-web/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-web/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-web";
-  version = "2.0.0";
+  version = "3.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0040e1c9c795f7bebe43647ff30b62cb0db7175175df5cbfa1e554a6a277b81e";
+    sha256 = "274239993a4705c9e1135842137d77a703f63d14ee5c1a5ee87fe1f8a471a061";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix b/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
index d885166daa91..93f70108c359 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-servicebus";
-  version = "7.1.0";
+  version = "7.3.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c5b3681ce4d7a44c223ddddfdec4c8d2eadede3b11b598ac09c4dbf4b729e89b";
+    sha256 = "sha256-NigQxqZjekZjlu6wSrziVwbEBclxfwSK4svd0eHPKr8=";
   };
 
   propagatedBuildInputs = [
@@ -35,7 +35,7 @@ buildPythonPackage rec {
   pythonImportsCheck = lib.optionals isPy3k [ "azure.servicebus" ];
 
   meta = with lib; {
-    description = "This is the Microsoft Azure Service Bus Client Library";
+    description = "Microsoft Azure Service Bus Client Library";
     homepage = "https://github.com/Azure/azure-sdk-for-python";
     license = licenses.mit;
     maintainers = with maintainers; [ maxwilson ];
diff --git a/nixpkgs/pkgs/development/python-modules/azure-servicefabric/default.nix b/nixpkgs/pkgs/development/python-modules/azure-servicefabric/default.nix
index 743f0abd9256..283a31466620 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-servicefabric/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-servicefabric/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "azure-servicefabric";
-  version = "7.2.0.46";
+  version = "8.0.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "c15fd5e8fe33a12295435f16e007edcfd8f660547795742f9b74ef8fb3a431ba";
+    sha256 = "f414cc114e28a358a7f39772205f3f15d7fc1aa30a08d106b0b80623f4303f1d";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-storage-blob/default.nix b/nixpkgs/pkgs/development/python-modules/azure-storage-blob/default.nix
index bbcf84ef6acd..fe36536dfe21 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-storage-blob/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-storage-blob/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-storage-blob";
-  version = "12.8.0";
+  version = "12.8.1";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "36b85a3423379d4a93f663022487cf53aa3043a355f8414321dde878c00cb577";
+    sha256 = "eb37b50ddfb6e558b29f6c8c03b0666514e55d6170bf4624e7261a3af93c6401";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-storage-file-share/default.nix b/nixpkgs/pkgs/development/python-modules/azure-storage-file-share/default.nix
index fc98e4207e8b..a1322c03c9f9 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-storage-file-share/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-storage-file-share/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "azure-storage-file-share";
-  version = "12.4.1";
+  version = "12.4.2";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7503d05882970abc977529ff5a4b81e79f62fd51b238fe306f72e13f57a522ca";
+    sha256 = "6c458d1e3db38fdd502d8f77107c81e6859654f02c0e7f2a98214289d9e0dde2";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-storage/default.nix b/nixpkgs/pkgs/development/python-modules/azure-storage/default.nix
index 258a5ebabb2c..8afb9b751ee9 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-storage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-storage/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , python
 , azure-common
+, cryptography
 , futures ? null
 , dateutil
 , requests
@@ -18,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "0pyasfxkin6j8j00qmky7d9cvpxgis4fi9bscgclj6yrpvf14qpv";
   };
 
-  propagatedBuildInputs = [ azure-common dateutil requests ]
+  propagatedBuildInputs = [ azure-common cryptography dateutil requests ]
                             ++ pkgs.lib.optionals (!isPy3k) [ futures ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/azure-synapse-artifacts/default.nix b/nixpkgs/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
index 76ad61636061..f9c78b6116fc 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-synapse-artifacts/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "azure-synapse-artifacts";
-  version = "0.5.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "a13124dc9405277f697f6452728d7dcf4c50601ee76055fd42f12b51494d6579";
+    sha256 = "2a538d617dc5d2d167716226d0a24e416324efb35ef22b223e0d9fb6b9889a72";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/b2sdk/default.nix b/nixpkgs/pkgs/development/python-modules/b2sdk/default.nix
index b4a3e7acaec0..47ed0fe5fd68 100644
--- a/nixpkgs/pkgs/development/python-modules/b2sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/b2sdk/default.nix
@@ -1,17 +1,48 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools-scm, isPy27, pytestCheckHook
-, requests, arrow, logfury, tqdm }:
+{ lib
+, arrow
+, buildPythonPackage
+, fetchPypi
+, importlib-metadata
+, isPy27
+, logfury
+, pytestCheckHook
+, pytest-lazy-fixture
+, pytest-mock
+, pythonOlder
+, requests
+, setuptools-scm
+, tqdm
+}:
 
 buildPythonPackage rec {
   pname = "b2sdk";
-  version = "1.6.0";
-
+  version = "1.7.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-6fjreuMUC056ljddfAidfBbJkvEDndB/dIkx1bF7efs=";
+    sha256 = "sha256-8X5XLh9SxZI1P7/2ZjOy8ipcEzTcriJfGI7KlMXncv4=";
   };
 
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    arrow
+    logfury
+    requests
+    tqdm
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-lazy-fixture
+    pytest-mock
+  ];
+
   postPatch = ''
     substituteInPlace setup.py \
       --replace 'setuptools_scm<6.0' 'setuptools_scm'
@@ -19,16 +50,16 @@ buildPythonPackage rec {
       --replace 'arrow>=0.8.0,<1.0.0' 'arrow'
   '';
 
-  pythonImportsCheck = [ "b2sdk" ];
-
-  nativeBuildInputs = [ setuptools-scm ];
-  propagatedBuildInputs = [ requests arrow logfury tqdm ];
+  disabledTests = [
+    # Test requires an API key
+    "test_raw_api"
+    "test_files_headers"
+  ];
 
-  # requires unpackaged dependencies like liccheck
-  doCheck = false;
+  pythonImportsCheck = [ "b2sdk" ];
 
   meta = with lib; {
-    description = "Client library and utilities for access to B2 Cloud Storage (backblaze).";
+    description = "Client library and utilities for access to B2 Cloud Storage (backblaze)";
     homepage = "https://github.com/Backblaze/b2-sdk-python";
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/backports-zoneinfo/default.nix b/nixpkgs/pkgs/development/python-modules/backports-zoneinfo/default.nix
new file mode 100644
index 000000000000..a9bc0b55955b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/backports-zoneinfo/default.nix
@@ -0,0 +1,39 @@
+{ lib, buildPythonPackage, fetchFromGitHub
+, pythonOlder
+, importlib-resources
+, hypothesis
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "backports-zoneinfo";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "pganssle";
+    repo = "zoneinfo";
+    rev = version;
+    sha256 = "sha256-00xdDOVdDanfsjQTd3yjMN2RFGel4cWRrAA3CvSnl24=";
+  };
+
+  propagatedBuildInputs = lib.optionals (pythonOlder "3.7") [
+    importlib-resources
+  ];
+
+  pythonImportsCheck = [ "backports.zoneinfo" ];
+
+  checkInputs = [
+    hypothesis
+    pytestCheckHook
+  ];
+
+  # unfortunately /etc/zoneinfo doesn't exist in sandbox, and many tests fail
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Backport of the standard library module zoneinfo";
+    homepage = "https://github.com/pganssle/zoneinfo";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jonringer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
index 6c0d1df81f39..8a9bc2283858 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , isPy3k
 , pytest
 , pytest-black
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "d84e126e2a29e4fde8931ff8131240bbf30a0e7dbcc3897a8dbd8ea5ac11419c";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [ pytest pytest-flake8 pytest-black pytestcov ];
   # ironically, they fail a linting test, and pytest.ini forces that test suite
diff --git a/nixpkgs/pkgs/development/python-modules/backports_os/default.nix b/nixpkgs/pkgs/development/python-modules/backports_os/default.nix
index 39973e433eed..214449708433 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_os/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_os/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , future
 , isPy3k
 , python
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "b472c4933094306ca08ec90b2a8cbb50c34f1fb2767775169a1c1650b7b74630";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   checkInputs = [ hypothesis ];
   propagatedBuildInputs = [ future ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/backports_tempfile/default.nix b/nixpkgs/pkgs/development/python-modules/backports_tempfile/default.nix
index cc51e23260b8..0d1203d28be2 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_tempfile/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_tempfile/default.nix
@@ -2,7 +2,7 @@
 , python
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , backports_weakref
 }:
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "1c648c452e8770d759bdc5a5e2431209be70d25484e1be24876cf2168722c762";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ backports_weakref ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/backports_unittest-mock/default.nix b/nixpkgs/pkgs/development/python-modules/backports_unittest-mock/default.nix
index a9950eb704f8..bf81efce8d89 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_unittest-mock/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_unittest-mock/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, mock }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, mock }:
 
 buildPythonPackage rec {
   pname = "backports.unittest_mock";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ mock ];
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
 
   # does not contain tests
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/backports_weakref/default.nix b/nixpkgs/pkgs/development/python-modules/backports_weakref/default.nix
index c04b88a3f328..4db504ac3306 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_weakref/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_weakref/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 # , backports
 , python
 }:
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "bc4170a29915f8b22c9e7c4939701859650f2eb84184aee80da329ac0b9825c2";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
 #   checkInputs = [ backports ];
 
   # Requires backports package
diff --git a/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix b/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
index f07c5e90d517..e07b02a08e74 100644
--- a/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
@@ -1,15 +1,16 @@
 { lib, buildPythonPackage, fetchPypi, fetchFromGitHub
-, wheel, pytestCheckHook, pytestrunner }:
+, wheel, pytestCheckHook, pytestrunner, pythonAtLeast }:
 
 buildPythonPackage rec {
-  version = "0.18.1";
+  version = "0.18.4";
   pname = "bacpypes";
+  disabled = pythonAtLeast "3.9";
 
   src = fetchFromGitHub {
     owner = "JoelBender";
     repo = "bacpypes";
     rev = version;
-    sha256 = "1fxrh57z3fjl95db8jh71grkv5id8qk65g6k5jqcs9v3dgkg8jkl";
+    sha256 = "1z5v0i7ms8na062wxd5ki43yy5z2d9cns0p4vdmkx2drwsbzlav2";
   };
 
   propagatedBuildInputs = [ wheel ];
diff --git a/nixpkgs/pkgs/development/python-modules/batchgenerators/default.nix b/nixpkgs/pkgs/development/python-modules/batchgenerators/default.nix
index 8706a31d5711..336c6b2e5134 100644
--- a/nixpkgs/pkgs/development/python-modules/batchgenerators/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/batchgenerators/default.nix
@@ -8,7 +8,7 @@
 , numpy
 , pillow
 , scipy
-, scikitlearn
+, scikit-learn
 , scikitimage
 , threadpoolctl
 }:
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    future numpy pillow scipy scikitlearn scikitimage threadpoolctl
+    future numpy pillow scipy scikit-learn scikitimage threadpoolctl
   ];
 
   checkInputs = [ pytestCheckHook unittest2 ];
diff --git a/nixpkgs/pkgs/development/python-modules/bayesian-optimization/default.nix b/nixpkgs/pkgs/development/python-modules/bayesian-optimization/default.nix
index c41181ca7b04..1e896d82678a 100644
--- a/nixpkgs/pkgs/development/python-modules/bayesian-optimization/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bayesian-optimization/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , python
-, scikitlearn
+, scikit-learn
 , scipy
 , pytest
 , isPy27
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    scikitlearn
+    scikit-learn
     scipy
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/beancount/default.nix b/nixpkgs/pkgs/development/python-modules/beancount/default.nix
index 88369f41872b..ec864e71498f 100644
--- a/nixpkgs/pkgs/development/python-modules/beancount/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/beancount/default.nix
@@ -7,6 +7,7 @@
 , chardet
 , dateutil
 , google-api-python-client
+, google-auth-oauthlib
 , lxml
 , oauth2client
 , ply
@@ -35,6 +36,7 @@ buildPythonPackage rec {
     chardet
     dateutil
     google-api-python-client
+    google-auth-oauthlib
     lxml
     oauth2client
     ply
diff --git a/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix b/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
index 0067716b6265..44ebb5d94f01 100644
--- a/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
@@ -1,4 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
+, setuptools-scm
 , beancount
 , pytest, sh
 }:
@@ -14,6 +15,10 @@ buildPythonPackage rec {
     sha256 = "1kjc0axrxpvm828lqq5m2ikq0ls8xksbmm7312zw867gdx56x5aj";
   };
 
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
   propagatedBuildInputs = [
     beancount
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/behave/default.nix b/nixpkgs/pkgs/development/python-modules/behave/default.nix
index 43c74fc95716..1198f034d00a 100644
--- a/nixpkgs/pkgs/development/python-modules/behave/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/behave/default.nix
@@ -17,6 +17,12 @@ buildPythonApplication rec {
   };
 
   checkInputs = [ pytestCheckHook mock pathpy pyhamcrest pytest-html ];
+
+  # upstream tests are failing, so instead we only check if we can import it
+  doCheck = false;
+
+  pythonImportsCheck = [ "behave" ];
+
   buildInputs = [ glibcLocales ];
   propagatedBuildInputs = [ colorama cucumber-tag-expressions parse parse-type six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/bellows/default.nix b/nixpkgs/pkgs/development/python-modules/bellows/default.nix
index 79bcaa91cbe7..7df23d1a25aa 100644
--- a/nixpkgs/pkgs/development/python-modules/bellows/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bellows/default.nix
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "bellows";
-  version = "0.23.1";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "bellows";
     rev = version;
-    sha256 = "sha256-c9rKRmGMlYrzVQmUuM9P3c/Jm4QVM2aBRSZ0OkyrPTY=";
+    sha256 = "00sa4x1qzv861z9d83lk4lp1g2pqiv9hpawj92w4qn1wnqxbz6rw";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/bidict/default.nix b/nixpkgs/pkgs/development/python-modules/bidict/default.nix
index dcb684a55e0d..8ad3534170d5 100644
--- a/nixpkgs/pkgs/development/python-modules/bidict/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bidict/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools_scm
+, setuptools-scm
 , sphinx
 , hypothesis
 , py
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     sha256 = "4fa46f7ff96dc244abfc437383d987404ae861df797e2fd5b190e233c302be09";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ sphinx ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bip_utils/default.nix b/nixpkgs/pkgs/development/python-modules/bip_utils/default.nix
index 1854bd4f71b5..94f6e3df8f2e 100644
--- a/nixpkgs/pkgs/development/python-modules/bip_utils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bip_utils/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "bip_utils";
-  version = "1.7.0";
+  version = "1.9.0";
 
   disabled = pythonOlder "3.6";
 
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "ebellocchia";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1dj0c9sj0c4dkdf7rbz3s1z5kfzw22hpncm4bnwqigjzi6nrk81z";
+    sha256 = "0i1jdpdsrc8cal5x0b1am9mgbca69ymxlaqpkw0y4d0m3m6vs33k";
   };
 
   propagatedBuildInputs = [ ecdsa pysha3 ];
diff --git a/nixpkgs/pkgs/development/python-modules/bitarray/default.nix b/nixpkgs/pkgs/development/python-modules/bitarray/default.nix
index c3965b10a2ab..e83a79192387 100644
--- a/nixpkgs/pkgs/development/python-modules/bitarray/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bitarray/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "bitarray";
-  version = "2.0.1";
+  version = "2.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-7DpPbXEaee0jrqlUFjjTNT3D8IPyk6ExgLFLSC4+Ge8=";
+    sha256 = "sha256-lyJKGTJezuSaO/TfPuBTHTr5zyiLZ9CJp+9Eo8TqODk=";
   };
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/black/default.nix b/nixpkgs/pkgs/development/python-modules/black/default.nix
index 3346afbb4ab9..bf82df4afa34 100644
--- a/nixpkgs/pkgs/development/python-modules/black/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/black/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib
-, buildPythonPackage, fetchPypi, pythonOlder, setuptools_scm, pytestCheckHook
+, buildPythonPackage, fetchPypi, pythonOlder, setuptools-scm, pytestCheckHook
 , aiohttp
 , aiohttp-cors
 , appdirs
@@ -8,6 +8,7 @@
 , dataclasses
 , mypy-extensions
 , pathspec
+, parameterized
 , regex
 , toml
 , typed-ast
@@ -15,34 +16,34 @@
 
 buildPythonPackage rec {
   pname = "black";
-  version = "20.8b1";
+  version = "21.5b1";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1spv6sldp3mcxr740dh3ywp25lly9s8qlvs946fin44rl1x5a0hw";
+    sha256 = "1cdkrl5vw26iy7s23v2zpr39m6g5xsgxhfhagzzflgfbvdc56s93";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   # Necessary for the tests to pass on Darwin with sandbox enabled.
   # Black starts a local server and needs to bind a local address.
   __darwinAllowLocalNetworking = true;
 
-  checkInputs =  [ pytestCheckHook ];
+  checkInputs =  [ pytestCheckHook parameterized ];
 
   preCheck = ''
     export PATH="$PATH:$out/bin"
+
+    # The top directory /build matches black's DEFAULT_EXCLUDE regex.
+    # Make /build the project root for black tests to avoid excluding files.
+    touch ../.git
   '';
 
   disabledTests = [
-    # Don't know why these tests fails
-    "test_cache_multiple_files"
-    "test_failed_formatting_does_not_get_cached"
     # requires network access
     "test_gen_check_output"
-    "test_process_queue"
   ] ++ lib.optionals stdenv.isDarwin [
     # fails on darwin
     "test_expression_diff"
diff --git a/nixpkgs/pkgs/development/python-modules/blist/default.nix b/nixpkgs/pkgs/development/python-modules/blist/default.nix
index d4dcb54c5cd1..af129f4aa5dc 100644
--- a/nixpkgs/pkgs/development/python-modules/blist/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/blist/default.nix
@@ -22,6 +22,12 @@ buildPythonPackage rec {
       url = "https://github.com/DanielStutzbach/blist/commit/2dc1ec28ed68611fcec9ac1c68070c782d6b4b4e.patch";
       sha256 = "0ma0z6ga80w3wzh3sidwd8ckfbgx4j1y7cc29q6j9ddrvxpf276y";
     })
+
+    # Fixes compatibility for Python 3.9 https://github.com/DanielStutzbach/blist/pull/91
+    (fetchpatch {
+      url = "https://github.com/DanielStutzbach/blist/pull/91/commits/e63514f805e42dc6a5708e629e4153d91bc90bff.patch";
+      sha256 = "1prx8znk7008v4ky7q2lx0pi6hzqd4kxgfdwbsr4zylwbrdqvsga";
+    })
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/blspy/default.nix b/nixpkgs/pkgs/development/python-modules/blspy/default.nix
new file mode 100644
index 000000000000..e75e474bdab1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/blspy/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchFromGitHub
+, setuptools-scm
+, substituteAll
+, cmake
+, boost
+, gmp
+, pybind11
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "blspy";
+  version = "1.0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-N1mk83uZrzSty2DyXfKiVp85z/jmztiUSRXKfNBRJV4=";
+  };
+
+  patches = [
+    # prevent CMake from trying to get libraries on the Internet
+    (substituteAll {
+      src = ./dont_fetch_dependencies.patch;
+      pybind11_src = pybind11.src;
+      relic_src = fetchFromGitHub {
+        owner = "relic-toolkit";
+        repo = "relic";
+        rev = "1885ae3b681c423c72b65ce1fe70910142cf941c"; # pinned by blspy
+        hash = "sha256-tsSZTcssl8t7Nqdex4BesgQ+ACPgTdtHnJFvS9josN0=";
+      };
+    })
+  ];
+
+  nativeBuildInputs = [ cmake setuptools-scm ];
+
+  buildInputs = [ boost gmp.static pybind11 ];
+
+  pythonImportsCheck = [
+    "blspy"
+  ];
+
+  # Note: upstream testsuite is just a single test.py script outside of any framework
+  doCheck = false;
+
+  # CMake needs to be run by setuptools rather than by its hook
+  dontConfigure = true;
+
+  meta = with lib; {
+    description = "BLS signatures with aggregation";
+    homepage = "https://github.com/Chia-Network/bls-signatures/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch b/nixpkgs/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch
new file mode 100644
index 000000000000..f9c41d9420be
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch
@@ -0,0 +1,38 @@
+diff --git a/python-bindings/CMakeLists.txt b/python-bindings/CMakeLists.txt
+index 255e3bb..5f99c3a 100644
+--- a/python-bindings/CMakeLists.txt
++++ b/python-bindings/CMakeLists.txt
+@@ -6,8 +6,7 @@ include(FetchContent)
+ 
+ FetchContent_Declare(
+   pybind11
+-  GIT_REPOSITORY https://github.com/pybind/pybind11.git
+-  GIT_TAG        v2.6.2
++  SOURCE_DIR @pybind11_src@
+ )
+ FetchContent_MakeAvailable(pybind11 relic)
+ 
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index faecc61..3272116 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -4,18 +4,9 @@ set (CMAKE_CXX_STANDARD 17)
+ # CMake 3.14+
+ include(FetchContent)
+ 
+-if (DEFINED ENV{RELIC_MAIN})
+-  set(RELIC_GIT_TAG "origin/main")
+-else ()
+-  set(RELIC_GIT_TAG "1885ae3b681c423c72b65ce1fe70910142cf941c")
+-endif ()
+-
+-message(STATUS "Relic will be built from: ${RELIC_GIT_TAG}")
+-
+ FetchContent_Declare(
+   relic
+-  GIT_REPOSITORY https://github.com/relic-toolkit/relic.git
+-  GIT_TAG        ${RELIC_GIT_TAG}
++  SOURCE_DIR @relic_src@
+ )
+ FetchContent_MakeAvailable(relic)
+ 
diff --git a/nixpkgs/pkgs/development/python-modules/booleanoperations/default.nix b/nixpkgs/pkgs/development/python-modules/booleanoperations/default.nix
index c747df90f5a5..f5f3dda77a45 100644
--- a/nixpkgs/pkgs/development/python-modules/booleanoperations/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/booleanoperations/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi
 , fonttools, fs, pyclipper, defcon, fontpens
-, setuptools_scm, pytest
+, setuptools-scm, pytest
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     extension = "zip";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     fonttools
diff --git a/nixpkgs/pkgs/development/python-modules/bpython/default.nix b/nixpkgs/pkgs/development/python-modules/bpython/default.nix
index 55e66545538f..64fe3c455ee5 100644
--- a/nixpkgs/pkgs/development/python-modules/bpython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bpython/default.nix
@@ -3,12 +3,15 @@
 , fetchPypi
 , curtsies
 , greenlet
-, mock
+, jedi
 , pygments
+, pyxdg
 , requests
 , substituteAll
 , urwid
-, which }:
+, watchdog
+, which
+}:
 
 buildPythonPackage rec {
   pname = "bpython";
@@ -24,17 +27,22 @@ buildPythonPackage rec {
     which = "${which}/bin/which";
   })];
 
-  propagatedBuildInputs = [ curtsies greenlet pygments requests urwid ];
+  propagatedBuildInputs = [
+    curtsies
+    greenlet
+    pygments
+    pyxdg
+    requests
+    urwid
+  ];
 
   postInstall = ''
     substituteInPlace "$out/share/applications/org.bpython-interpreter.bpython.desktop" \
       --replace "Exec=/usr/bin/bpython" "Exec=$out/bin/bpython"
   '';
 
-  checkInputs = [ mock ];
-
-  # tests fail: https://github.com/bpython/bpython/issues/712
-  doCheck = false;
+  checkInputs = [ jedi watchdog ];
+  pythonImportsCheck = [ "bpython" ];
 
   meta = with lib; {
     description = "A fancy curses interface to the Python interactive interpreter";
diff --git a/nixpkgs/pkgs/development/python-modules/braintree/default.nix b/nixpkgs/pkgs/development/python-modules/braintree/default.nix
index 28b6fccfca90..7e1c8f5a583f 100644
--- a/nixpkgs/pkgs/development/python-modules/braintree/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/braintree/default.nix
@@ -22,6 +22,6 @@ buildPythonPackage rec {
     description = "Python library for integration with Braintree";
     homepage = "https://github.com/braintree/braintree_python";
     license = licenses.mit;
-    maintainers = [ maintainers.ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/breezy/default.nix b/nixpkgs/pkgs/development/python-modules/breezy/default.nix
index 21d0b6d9f308..dcd6caaffa21 100644
--- a/nixpkgs/pkgs/development/python-modules/breezy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/breezy/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "breezy";
-  version = "3.1.0";
+  version = "3.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1eff207403f48898fa3b3ffa7a4275197c6c58fec105ef267caf1f5fd5a6c7be";
+    sha256 = "sha256-lwKPk+UxKAhfIgUb1xPLJ/za53VdHenmBrr85RTpEps=";
   };
 
   propagatedBuildInputs = [ configobj patiencediff six fastimport dulwich launchpadlib ];
diff --git a/nixpkgs/pkgs/development/python-modules/brother/default.nix b/nixpkgs/pkgs/development/python-modules/brother/default.nix
index 9f41ed5756f5..2f4552ca3f6c 100644
--- a/nixpkgs/pkgs/development/python-modules/brother/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/brother/default.nix
@@ -5,29 +5,29 @@
 , pytest-asyncio
 , pytest-error-for-skips
 , pytest-runner
-, pytest-tornasync
-, pytest-trio
 , pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "brother";
-  version = "1.0.0";
+  version = "1.0.2";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "bieniu";
     repo = pname;
     rev = version;
-    sha256 = "sha256-0NfqPlQiOkNhR+H55E9LE4dGa9R8vcSyPNbbIeiRJV8=";
+    sha256 = "sha256-xs/GIsJUuKKbDotV1BeT/ng86UVkNsH48uHR4i3vqow=";
   };
 
+  nativeBuildInputs = [
+    pytest-runner
+  ];
+
   postPatch = ''
-    substituteInPlace pytest.ini \
+    substituteInPlace setup.cfg \
       --replace "--cov --cov-report term-missing " ""
-    substituteInPlace requirements-test.txt \
-      --replace "pytest-cov" ""
   '';
 
   propagatedBuildInputs = [
@@ -37,9 +37,6 @@ buildPythonPackage rec {
   checkInputs = [
     pytest-asyncio
     pytest-error-for-skips
-    pytest-runner
-    pytest-tornasync
-    pytest-trio
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/btrfs/default.nix b/nixpkgs/pkgs/development/python-modules/btrfs/default.nix
index ff21d5670d72..9bcb8f37330b 100644
--- a/nixpkgs/pkgs/development/python-modules/btrfs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/btrfs/default.nix
@@ -1,17 +1,15 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
+, fetchPypi
 }:
 
 buildPythonPackage rec {
   pname = "btrfs";
-  version = "12";
+  version = "13";
 
-  src = fetchFromGitHub {
-    owner = "knorrie";
-    repo = "python-btrfs";
-    rev = "v${version}";
-    sha256 = "sha256-ZQSp+pbHABgBTrCwC2YsUUXAf/StP4ny7MEhBgCRqgE=";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-NSyzhpHYDkunuU104XnbVCcVRNDoVBz4KuJRrE7WMO0=";
   };
 
   # no tests (in v12)
@@ -23,6 +21,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/knorrie/python-btrfs";
     license = licenses.lgpl3Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.evils ];
+    maintainers = with maintainers; [ evils Luflosi ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/buildbot/default.nix b/nixpkgs/pkgs/development/python-modules/buildbot/default.nix
index 52a43d0d1137..043a1cd3e136 100644
--- a/nixpkgs/pkgs/development/python-modules/buildbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/buildbot/default.nix
@@ -25,11 +25,11 @@ let
 
   package = buildPythonPackage rec {
     pname = "buildbot";
-    version = "3.1.0";
+    version = "3.1.1";
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1b9m9l8bz2slkrq0l5z8zd8pd0js5w4k7dam8bdp00kv3aln4si9";
+      sha256 = "0vh2v1qs65kwcj1x8r1wj2g456kflspyz7mjara9ph9qs7j97y74";
     };
 
     propagatedBuildInputs = [
@@ -101,7 +101,7 @@ let
     meta = with lib; {
       homepage = "https://buildbot.net/";
       description = "An open-source continuous integration framework for automating software build, test, and release processes";
-      maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+      maintainers = with maintainers; [ ryansydnor lopsided98 ];
       license = licenses.gpl2;
     };
   };
diff --git a/nixpkgs/pkgs/development/python-modules/buildbot/pkg.nix b/nixpkgs/pkgs/development/python-modules/buildbot/pkg.nix
index 4c17eb2b6e53..b00a2ece5684 100644
--- a/nixpkgs/pkgs/development/python-modules/buildbot/pkg.nix
+++ b/nixpkgs/pkgs/development/python-modules/buildbot/pkg.nix
@@ -6,7 +6,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0bv1qq4cf24cklxfqfnkhjb6w4xqcp3afdcan75n6v7mnwqxyyvr";
+    sha256 = "13bcshfas3r7hl205il9fzdjfhd18jf0lxrr5wd8r6qzdrl6i1y6";
   };
 
   postPatch = ''
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://buildbot.net/";
     description = "Buildbot Packaging Helper";
-    maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+    maintainers = with maintainers; [ ryansydnor lopsided98 ];
     license = licenses.gpl2;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/buildbot/plugins.nix b/nixpkgs/pkgs/development/python-modules/buildbot/plugins.nix
index 042bddc1d124..62f32a00fb45 100644
--- a/nixpkgs/pkgs/development/python-modules/buildbot/plugins.nix
+++ b/nixpkgs/pkgs/development/python-modules/buildbot/plugins.nix
@@ -7,7 +7,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1a40fbmbf4gb0hgpr40yr9fb17ynxwi6vj8hvv3mm1fm9nqiggm1";
+      sha256 = "1qb82s72mrm39123kwkypa2nhdsks6v9nkpw4vvscnq4p9xbzw2c";
     };
 
     # Remove unneccessary circular dependency on buildbot
@@ -23,7 +23,7 @@
     meta = with lib; {
       homepage = "https://buildbot.net/";
       description = "Buildbot UI";
-      maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+      maintainers = with maintainers; [ ryansydnor lopsided98 ];
       license = licenses.gpl2;
     };
   };
@@ -34,7 +34,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1fcm4h489sb5a1hk82y1a8575s4k6qd82qkfbm2q5gd14bdvysb0";
+      sha256 = "0kwzj28dmhkcr44nf39s82xjc9y5p27w4ywxfpm55cim3hwxbcb1";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -45,7 +45,7 @@
     meta = with lib; {
       homepage = "https://buildbot.net/";
       description = "Buildbot Console View Plugin";
-      maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+      maintainers = with maintainers; [ ryansydnor lopsided98 ];
       license = licenses.gpl2;
     };
   };
@@ -56,7 +56,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1qw9g2maixlcm5l1kpmc721b2p4b7adw5rsimlqcjz96mjya7acj";
+      sha256 = "0vvp6z0d0qf5i5kykzph28hr3g9wgzrmmbbzdnm94yk4wsqq7w86";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -67,7 +67,7 @@
     meta = with lib; {
       homepage = "https://buildbot.net/";
       description = "Buildbot Waterfall View Plugin";
-      maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+      maintainers = with maintainers; [ ryansydnor lopsided98 ];
       license = licenses.gpl2;
     };
   };
@@ -78,7 +78,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1q0fm2h4alcck6g8fwwd42jsmkw3gdy9xmw1p78xnvk5dgs6cf9c";
+      sha256 = "0y839swv9vdkwi4i1hjiyrjbj1bs74sbkpr5f58ivkjlf5alb56b";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -89,7 +89,7 @@
     meta = with lib; {
       homepage = "https://buildbot.net/";
       description = "Buildbot Grid View Plugin";
-      maintainers = with maintainers; [ nand0p lopsided98 ];
+      maintainers = with maintainers; [ lopsided98 ];
       license = licenses.gpl2;
     };
   };
@@ -100,7 +100,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "0n8q607rl1qs012gpkxpq1n7ny8306n4vr3hjlz96pm60a7j7904";
+      sha256 = "1zsh1bvrl3byx0ycz5jnhijzifxglm8w7kcxp79k7frw7i02fpvy";
     };
 
     buildInputs = [ buildbot-pkg ];
diff --git a/nixpkgs/pkgs/development/python-modules/buildbot/worker.nix b/nixpkgs/pkgs/development/python-modules/buildbot/worker.nix
index 242849e2c79e..4313d16d0b77 100644
--- a/nixpkgs/pkgs/development/python-modules/buildbot/worker.nix
+++ b/nixpkgs/pkgs/development/python-modules/buildbot/worker.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, buildbot, setuptoolsTrial, mock, twisted,
-  future, coreutils }:
+  future, coreutils, nixosTests }:
 
 buildPythonPackage (rec {
   pname = "buildbot-worker";
@@ -7,7 +7,7 @@ buildPythonPackage (rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0n5p9x9gz276nv1m8vn3d74jfbd35gff332cjxxqvabk06iqcjp6";
+    sha256 = "0q16vgvlhiybq5rhva9kcj5v2mhfpdb5czm2vng4rrfqqiqq918m";
   };
 
   propagatedBuildInputs = [ twisted future ];
@@ -19,10 +19,14 @@ buildPythonPackage (rec {
       --replace /usr/bin/tail "${coreutils}/bin/tail"
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.buildbot;
+  };
+
   meta = with lib; {
     homepage = "https://buildbot.net/";
     description = "Buildbot Worker Daemon";
-    maintainers = with maintainers; [ nand0p ryansydnor lopsided98 ];
+    maintainers = with maintainers; [ ryansydnor lopsided98 ];
     license = licenses.gpl2;
   };
 })
diff --git a/nixpkgs/pkgs/development/python-modules/cartopy/default.nix b/nixpkgs/pkgs/development/python-modules/cartopy/default.nix
index 87eafc265501..d3953137167a 100644
--- a/nixpkgs/pkgs/development/python-modules/cartopy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cartopy/default.nix
@@ -1,29 +1,21 @@
-{ buildPythonPackage, lib, fetchPypi, fetchpatch
+{ buildPythonPackage, lib, fetchPypi
 , pytestCheckHook, filelock, mock, pep8
 , cython
 , six, pyshp, shapely, geos, numpy
 , gdal, pillow, matplotlib, pyepsg, pykdtree, scipy, owslib, fiona
-, proj
+, proj, flufl_lock
 }:
 
 buildPythonPackage rec {
   pname = "cartopy";
-  version = "0.18.0";
+  version = "0.19.0.post1";
 
   src = fetchPypi {
     inherit version;
     pname = "Cartopy";
-    sha256 = "0d24fk0cbp29gmkysrwq05vry13swmwi3vx3cpcy04c0ixz33ykz";
+    sha256 = "0xnm8z3as3hriivdfd26s6vn5b63gb46x6vxw6gh1mwfm5rlg2sb";
   };
 
-  patches = [
-    # Fix numpy-1.20 compatibility.  Will be part of 0.19.
-    (fetchpatch {
-      url = "https://github.com/SciTools/cartopy/commit/e663bbbef07989a5f8484a8f36ea9c07e61d14ce.patch";
-      sha256 = "061kbjgzkc3apaz6sxy00pkgy3n9dxcgps5wzj4rglb5iy86n2kq";
-    })
-  ];
-
   buildInputs = [
     geos proj
   ];
@@ -36,7 +28,7 @@ buildPythonPackage rec {
     gdal pillow matplotlib pyepsg pykdtree scipy fiona owslib
   ];
 
-  checkInputs = [ pytestCheckHook filelock mock pep8 ];
+  checkInputs = [ pytestCheckHook filelock mock pep8 flufl_lock ];
 
   pytestFlagsArray = [
     "--pyargs" "cartopy"
@@ -46,6 +38,7 @@ buildPythonPackage rec {
   disabledTests = [
     "test_nightshade_image"
     "background_img"
+    "test_gridliner_labels_bbox_style"
   ];
 
   nativeBuildInputs = [
@@ -56,7 +49,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Process geospatial data to create maps and perform analyses";
-    license = licenses.lgpl3;
+    license = licenses.lgpl3Plus;
     homepage = "https://scitools.org.uk/cartopy/docs/latest/";
     maintainers = with maintainers; [ mredaelli ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/cassandra-driver/default.nix b/nixpkgs/pkgs/development/python-modules/cassandra-driver/default.nix
index 16479302221b..e5b1a4c4fb0f 100644
--- a/nixpkgs/pkgs/development/python-modules/cassandra-driver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cassandra-driver/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, lib, buildPythonPackage, fetchFromGitHub, python, pythonOlder
+{ stdenv
+, lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
 , cython
 , eventlet
 , futures ? null
@@ -21,14 +25,14 @@
 
 buildPythonPackage rec {
   pname = "cassandra-driver";
-  version = "3.24.0";
+  version = "3.25.0";
 
   # pypi tarball doesn't include tests
   src = fetchFromGitHub {
     owner = "datastax";
     repo = "python-driver";
     rev = version;
-    sha256 = "1rr69hly5q810xpn8rkzxwzlq55wxxp7kwki9vfri3gh674d2wip";
+    sha256 = "1dn7iiavsrhh6i9hcyw0mk8j95r5ym0gbrvdca998hx2rnz5ark6";
   };
 
   nativeBuildInputs = [ cython ];
@@ -66,8 +70,10 @@ buildPythonPackage rec {
 
   pytestFlagsArray = [
     "tests/unit"
+  ];
+  disabledTestPaths = [
     # requires puresasl
-    "--ignore=tests/unit/advanced/test_auth.py"
+    "tests/unit/advanced/test_auth.py"
   ];
   disabledTests = [
     # doesn't seem to be intended to be run directly
diff --git a/nixpkgs/pkgs/development/python-modules/castepxbin/default.nix b/nixpkgs/pkgs/development/python-modules/castepxbin/default.nix
new file mode 100644
index 000000000000..3c4466648633
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/castepxbin/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, numpy
+, scipy
+, pymatgen
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "castepxbin";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "zhubonan";
+    repo = "castepxbin";
+    rev = "v${version}";
+    sha256 = "16wnd1mwhl204d1s3har2fhyhyjg86sypg00bj812dxk8zixxszf";
+  };
+
+  propagatedBuildInputs = [
+    numpy
+    scipy
+    pymatgen
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "A collection of readers for CASTEP binary outputs";
+    homepage = "https://github.com/zhubonan/castepxbin";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/catalogue/default.nix b/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
index d07b7f29dc39..fbbaf92f4eb8 100644
--- a/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
@@ -2,23 +2,20 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, importlib-metadata
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "catalogue";
-  version = "2.0.1";
+  version = "2.0.4";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0d01077dbfca7aa53f3ef4adecccce636bce4f82e5b52237703ab2f56478e56e";
+    hash = "sha256-ntNF0ShVrzFfFxVYNhKya4YhorCi4775dNxdcS95g6o=";
   };
 
-  propagatedBuildInputs = [ importlib-metadata ];
-
   checkInputs = [ pytestCheckHook ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/cbor2/default.nix b/nixpkgs/pkgs/development/python-modules/cbor2/default.nix
index 776cc4d38e98..534ba3c9af52 100644
--- a/nixpkgs/pkgs/development/python-modules/cbor2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cbor2/default.nix
@@ -4,7 +4,7 @@
 , fetchPypi
 , pytestCheckHook
 , pytest-cov
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "a33aa2e5534fd74401ac95686886e655e3b2ce6383b3f958199b6e70a87c94bf";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [
     pytest-cov
diff --git a/nixpkgs/pkgs/development/python-modules/certbot/default.nix b/nixpkgs/pkgs/development/python-modules/certbot/default.nix
index 7b4f7064b16a..12e541d9007a 100644
--- a/nixpkgs/pkgs/development/python-modules/certbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/certbot/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "certbot";
-  version = "1.14.0";
+  version = "1.15.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-J514zgmIcHpwySChFBXGKR4552wS9z5x8Berk/irHSU=";
+    sha256 = "sha256-Z5ZIA0ib+N7La6Z0Taf6DovCF6fXnEDppPQt6Vgwl0c=";
   };
 
   sourceRoot = "source/${pname}";
diff --git a/nixpkgs/pkgs/development/python-modules/cffi/default.nix b/nixpkgs/pkgs/development/python-modules/cffi/default.nix
index afd9cfdc2950..92899ed85e58 100644
--- a/nixpkgs/pkgs/development/python-modules/cffi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cffi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPythonPackage, isPyPy, fetchPypi, libffi, pycparser, pytest }:
+{ lib, stdenv, buildPythonPackage, isPyPy, fetchPypi, libffi, pycparser, pytestCheckHook }:
 
 if isPyPy then null else buildPythonPackage rec {
   pname = "cffi";
@@ -11,8 +11,9 @@ if isPyPy then null else buildPythonPackage rec {
 
   outputs = [ "out" "dev" ];
 
-  propagatedBuildInputs = [ libffi pycparser ];
-  checkInputs = [ pytest ];
+  buildInputs = [ libffi ];
+
+  propagatedBuildInputs = [ pycparser ];
 
   # On Darwin, the cffi tests want to hit libm a lot, and look for it in a global
   # impure search path. It's obnoxious how much repetition there is, and how difficult
@@ -33,9 +34,8 @@ if isPyPy then null else buildPythonPackage rec {
     "-Wno-unused-command-line-argument -Wno-unreachable-code";
 
   doCheck = !stdenv.hostPlatform.isMusl && !stdenv.isDarwin; # TODO: Investigate
-  checkPhase = ''
-    py.test -k "not test_char_pointer_conversion"
-  '';
+
+  checkInputs = [ pytestCheckHook ];
 
   meta = with lib; {
     maintainers = with maintainers; [ domenkozar lnl7 ];
diff --git a/nixpkgs/pkgs/development/python-modules/chalice/default.nix b/nixpkgs/pkgs/development/python-modules/chalice/default.nix
index e99f321df37f..70aa31a0d8bf 100644
--- a/nixpkgs/pkgs/development/python-modules/chalice/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/chalice/default.nix
@@ -7,6 +7,7 @@
 , click
 , enum-compat
 , hypothesis
+, inquirer
 , jmespath
 , mock
 , mypy-extensions
@@ -35,6 +36,7 @@ buildPythonPackage rec {
     botocore
     click
     enum-compat
+    inquirer
     jmespath
     mypy-extensions
     pip
diff --git a/nixpkgs/pkgs/development/python-modules/cheroot/default.nix b/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
index 7e79d5c63a3c..50f6d33791de 100644
--- a/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
@@ -14,7 +14,7 @@
 , requests
 , requests-toolbelt
 , requests-unixsocket
-, setuptools_scm
+, setuptools-scm
 , setuptools-scm-git-archive
 , six
 , trustme
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     sha256 = "f137d03fd5155b1364bea557a7c98168665c239f6c8cedd8f80e81cdfac01567";
   };
 
-  nativeBuildInputs = [ setuptools_scm setuptools-scm-git-archive ];
+  nativeBuildInputs = [ setuptools-scm setuptools-scm-git-archive ];
 
   propagatedBuildInputs = [
     # install_requires
diff --git a/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix b/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
index 2ee8eb3bd0ca..df50219fb170 100644
--- a/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
+++ b/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonPackage, fetchPypi
-, setuptools_scm
+, setuptools-scm
 , cheroot, contextlib2, portend, routes, six, zc_lockfile
 , backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt
 }:
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     cheroot contextlib2 portend routes six zc_lockfile
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [
     backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
diff --git a/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix b/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
index 9a01a030e685..9eebff1b1e6f 100644
--- a/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonPackage, fetchPypi, isPy3k
-, setuptools_scm
+, setuptools-scm
 , cheroot, portend, more-itertools, zc_lockfile, routes
 , jaraco_collections
 , objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     # required
diff --git a/nixpkgs/pkgs/development/python-modules/chiabip158/default.nix b/nixpkgs/pkgs/development/python-modules/chiabip158/default.nix
new file mode 100644
index 000000000000..f2c309593610
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/chiabip158/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cmake
+, pybind11
+, pythonOlder
+, pytestCheckHook
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "chiabip158";
+  version = "1.0";
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-dG6A4n30uPswQWY/Wmi75HK4ZMCDNr9Lt05FRWEPYV8=";
+  };
+
+  nativeBuildInputs = [ cmake setuptools-scm ];
+
+  buildInputs = [ pybind11 ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  # CMake needs to be run by setuptools rather than by its hook
+  dontConfigure = true;
+
+  meta = with lib; {
+    description = "Chia's implementation of BIP 158";
+    homepage = "https://www.chia.net/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/chiapos/default.nix b/nixpkgs/pkgs/development/python-modules/chiapos/default.nix
new file mode 100644
index 000000000000..e0a86f499a2a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/chiapos/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, substituteAll
+, buildPythonPackage
+, fetchPypi
+, cmake
+, cxxopts
+, ghc_filesystem
+, pybind11
+, pythonOlder
+, psutil
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "chiapos";
+  version = "1.0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "09mwj9m9rcvcb3zn6v2xykgd4a9lpwl6c86nwl8d1iqr82gb5hb5";
+  };
+
+  patches = [
+    # prevent CMake from trying to get libraries on the Internet
+    (substituteAll {
+      src = ./dont_fetch_dependencies.patch;
+      inherit cxxopts ghc_filesystem;
+      pybind11_src = pybind11.src;
+    })
+  ];
+
+  nativeBuildInputs = [ cmake setuptools-scm ];
+
+  buildInputs = [ pybind11 ];
+
+  checkInputs = [ psutil ];
+
+  # CMake needs to be run by setuptools rather than by its hook
+  dontConfigure = true;
+
+  meta = with lib; {
+    description = "Chia proof of space library";
+    homepage = "https://www.chia.net/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch b/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
new file mode 100644
index 000000000000..ca18fd292ca8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
@@ -0,0 +1,31 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9b4a2f5..86f849c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -18,22 +18,19 @@ include(FetchContent)
+ 
+ FetchContent_Declare(
+   pybind11-src
+-  GIT_REPOSITORY https://github.com/pybind/pybind11.git
+-  GIT_TAG        v2.6.2
++  SOURCE_DIR @pybind11_src@
+ )
+ FetchContent_MakeAvailable(pybind11-src)
+ 
+ FetchContent_Declare(
+   cxxopts
+-  GIT_REPOSITORY https://github.com/jarro2783/cxxopts.git
+-  GIT_TAG        v2.2.1
++  SOURCE_DIR @cxxopts@
+ )
+ FetchContent_MakeAvailable(cxxopts)
+ 
+ FetchContent_Declare(
+   gulrak
+-  GIT_REPOSITORY https://github.com/gulrak/filesystem.git
+-  GIT_TAG        v1.5.4
++  SOURCE_DIR @ghc_filesystem@
+ )
+ FetchContent_MakeAvailable(gulrak)
+ 
+
diff --git a/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix b/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix
new file mode 100644
index 000000000000..deb7d21adc76
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, setuptools-scm
+, substituteAll
+, cmake
+, boost
+, gmp
+, pybind11
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "chiavdf";
+  version = "1.0.1";
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-z0od/VrH580+9641lKNI7jbVMlJZKCWnoT+GljnFxmU=";
+  };
+
+  patches = [
+    # prevent CMake from trying to get libraries on the Internet
+    (substituteAll {
+      src = ./dont_fetch_dependencies.patch;
+      pybind11_src = pybind11.src;
+    })
+  ];
+
+  # x86 instructions are needed for this component
+  BUILD_VDF_CLIENT = lib.optionalString (!stdenv.isx86_64) "N";
+
+  nativeBuildInputs = [ cmake setuptools-scm ];
+
+  buildInputs = [ boost gmp pybind11 ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  # CMake needs to be run by setuptools rather than by its hook
+  dontConfigure = true;
+
+  meta = with lib; {
+    description = "Chia verifiable delay function utilities";
+    homepage = "https://www.chia.net/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch b/nixpkgs/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch
new file mode 100644
index 000000000000..9b49db81fcf5
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch
@@ -0,0 +1,14 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index c975128..a9f6910 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -31,8 +31,7 @@ include(FetchContent)
+ 
+ FetchContent_Declare(
+   pybind11-src
+-  GIT_REPOSITORY https://github.com/pybind/pybind11.git
+-  GIT_TAG        v2.6.2
++  SOURCE_DIR @pybind11_src@
+ )
+ FetchContent_MakeAvailable(pybind11-src)
+ 
diff --git a/nixpkgs/pkgs/development/python-modules/cirq-core/default.nix b/nixpkgs/pkgs/development/python-modules/cirq-core/default.nix
new file mode 100644
index 000000000000..54e2fa1954df
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cirq-core/default.nix
@@ -0,0 +1,98 @@
+{ stdenv
+, lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, matplotlib
+, networkx
+, numpy
+, pandas
+, requests
+, scipy
+, sortedcontainers
+, sympy
+, tqdm
+, typing-extensions
+  # Contrib requirements
+, withContribRequires ? false
+, autoray ? null
+, opt-einsum
+, ply
+, pylatex ? null
+, pyquil ? null
+, quimb ? null
+  # test inputs
+, pytestCheckHook
+, freezegun
+, pytest-asyncio
+}:
+buildPythonPackage rec {
+  pname = "cirq-core";
+  version = "0.11.0";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "quantumlib";
+    repo = "cirq";
+    rev = "v${version}";
+    hash = "sha256-JaKTGnkYhzIFb35SGaho8DRupoT0JFYKA5+rJEq4oXw=";
+  };
+
+  sourceRoot = "source/${pname}";
+
+  postPatch = ''
+    substituteInPlace requirements.txt \
+      --replace "matplotlib~=3.0" "matplotlib" \
+      --replace "networkx~=2.4" "networkx" \
+      --replace "numpy~=1.16" "numpy" \
+      --replace "requests~=2.18" "requests"
+  '';
+
+  propagatedBuildInputs = [
+    matplotlib
+    networkx
+    numpy
+    pandas
+    requests
+    scipy
+    sortedcontainers
+    sympy
+    tqdm
+    typing-extensions
+  ] ++ lib.optionals withContribRequires [
+    autoray
+    opt-einsum
+    ply
+    pylatex
+    pyquil
+    quimb
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-asyncio
+    freezegun
+  ];
+
+  pytestFlagsArray = lib.optionals (!withContribRequires) [
+    # requires external (unpackaged) libraries, so untested.
+    "--ignore=cirq/contrib/"
+  ];
+  disabledTests = [
+    "test_metadata_search_path" # tries to import flynt, which isn't in Nixpkgs
+    "test_benchmark_2q_xeb_fidelities" # fails due pandas MultiIndex. Maybe issue with pandas version in nix?
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
+    # Seem to fail due to math issues on aarch64?
+    "expectation_from_wavefunction"
+    "test_single_qubit_op_to_framed_phase_form_output_on_example_case"
+  ];
+
+  meta = with lib; {
+    description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.";
+    homepage = "https://github.com/quantumlib/cirq";
+    changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cirq-google/default.nix b/nixpkgs/pkgs/development/python-modules/cirq-google/default.nix
new file mode 100644
index 000000000000..8692aef4b678
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cirq-google/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, cirq-core
+, google-api-core
+, protobuf
+# test inputs
+, pytestCheckHook
+, freezegun
+}:
+
+buildPythonPackage rec {
+  pname = "cirq-google";
+  inherit (cirq-core) version src meta;
+
+  sourceRoot = "source/${pname}";
+
+  postPatch = ''
+    substituteInPlace requirements.txt --replace "protobuf~=3.13.0" "protobuf"
+  '';
+
+  propagatedBuildInputs = [
+    cirq-core
+    google-api-core
+    protobuf
+  ];
+
+  checkInputs = [ pytestCheckHook freezegun ];
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cirq/default.nix b/nixpkgs/pkgs/development/python-modules/cirq/default.nix
index f0b576299b21..f8afdcbbb050 100644
--- a/nixpkgs/pkgs/development/python-modules/cirq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cirq/default.nix
@@ -1,114 +1,28 @@
-{ stdenv
-, lib
+{ lib
 , buildPythonPackage
-, pythonOlder
-, fetchFromGitHub
-, google-api-core
-, matplotlib
-, networkx
-, numpy
-, pandas
-, protobuf
-, requests
-, scipy
-, sortedcontainers
-, sympy
-, tqdm
-, typing-extensions
+, cirq-core
+, cirq-google
   # test inputs
-, freezegun
 , pytestCheckHook
-, pytest-asyncio
-, pytest-benchmark
-, ply
-, pydot
-, pyyaml
-, pygraphviz
 }:
 
 buildPythonPackage rec {
   pname = "cirq";
-  version = "0.10.0";
-
-  disabled = pythonOlder "3.6";
-
-  src = fetchFromGitHub {
-    owner = "quantumlib";
-    repo = "cirq";
-    rev = "v${version}";
-    sha256 = "0xinml44n2lfl0q2lb2apmn69gsszlwim83082f66vyk0gpwd4lr";
-  };
-
-  postPatch = ''
-    substituteInPlace requirements.txt \
-      --replace "matplotlib~=3.0" "matplotlib" \
-      --replace "networkx~=2.4" "networkx" \
-      --replace "numpy~=1.16" "numpy" \
-      --replace "protobuf~=3.13.0" "protobuf"
-  '';
+  inherit (cirq-core) version src meta;
 
   propagatedBuildInputs = [
-    google-api-core
-    matplotlib
-    networkx
-    numpy
-    pandas
-    protobuf
-    requests
-    scipy
-    sortedcontainers
-    sympy
-    tqdm
-    typing-extensions
+    cirq-core
+    cirq-google
   ];
 
   # pythonImportsCheck = [ "cirq" "cirq.Circuit" ];  # cirq's importlib hook doesn't work here
-  checkInputs = [
-    pytestCheckHook
-    freezegun
-    pytest-asyncio
-    pytest-benchmark
-    ply
-    pydot
-    pyyaml
-    pygraphviz
-  ];
+  checkInputs = [ pytestCheckHook ];
 
-  pytestFlagsArray = [
-    "--ignore=dev_tools"  # Only needed when developing new code, which is out-of-scope
-    "--ignore=cirq/contrib/"  # requires external (unpackaged) python packages, so untested.
-    "--benchmark-disable" # Don't need to run benchmarks when packaging.
-  ];
-  disabledTests = lib.optionals stdenv.isAarch64 [
-    # Seem to fail due to math issues on aarch64?
-    "expectation_from_wavefunction"
-    "test_single_qubit_op_to_framed_phase_form_output_on_example_case"
-  ] ++ [
-    # slow tests, for quicker building
-    "test_anneal_search_method_calls"
-    "test_density_matrix_from_state_tomography_is_correct"
-    "test_example_runs_qubit_characterizations"
-    "test_example_runs_hello_line_perf"
-    "test_example_runs_bc_mean_field_perf"
-    "test_main_loop"
-    "test_clifford_circuit_2"
-    "test_decompose_specific_matrices"
-    "test_two_qubit_randomized_benchmarking"
-    "test_kak_decomposition_perf"
-    "test_example_runs_simon"
-    "test_decompose_random_unitary"
-    "test_decompose_size_special_unitary"
-    "test_api_retry_5xx_errors"
-    "test_xeb_fidelity"
-    "test_example_runs_phase_estimator_perf"
-    "test_cross_entropy_benchmarking"
+  # Don't run submodule or development tool tests
+  disabledTestPaths = [
+    "cirq-google"
+    "cirq-core"
+    "dev_tools"
   ];
 
-  meta = with lib; {
-    description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.";
-    homepage = "https://github.com/quantumlib/cirq";
-    changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ drewrisinger ];
-  };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/claripy/default.nix b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
index c3a715c15274..ad3c97b920d7 100644
--- a/nixpkgs/pkgs/development/python-modules/claripy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.0.6852";
+  version = "9.0.7912";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-31zaL3PJDXyLvVD3Xdc2qoLSrXipwTawHoj+I+Y6fng=";
+    sha256 = "sha256-p9i3ajN/CpLdwcg8HLhtION0ghgs1fcnqjzUrxu1wDw=";
   };
 
   # Use upstream z3 implementation
diff --git a/nixpkgs/pkgs/development/python-modules/cle/default.nix b/nixpkgs/pkgs/development/python-modules/cle/default.nix
index 4daab5059627..45e619b25c6d 100644
--- a/nixpkgs/pkgs/development/python-modules/cle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cle/default.nix
@@ -15,7 +15,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.0.6852";
+  version = "9.0.7912";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-IRyRio3M7YZtdBqb7PGoWs2Lyt8hjBLYM1zQYbhjYEs=";
+    sha256 = "sha256-AHJk40uRhrlQbfzRmMJXremKxnxjpmxLLAAYxNV9vkc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/clevercsv/default.nix b/nixpkgs/pkgs/development/python-modules/clevercsv/default.nix
index 36944b5dbec4..233b7164989d 100644
--- a/nixpkgs/pkgs/development/python-modules/clevercsv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clevercsv/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "clevercsv";
-  version = "0.6.7";
+  version = "0.6.8";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "alan-turing-institute";
     repo = "CleverCSV";
     rev = "v${version}";
-    sha256 = "0j3959bji48pkp0vnk7yls5l75ywjl77jdkvzs62n5mi5lky88p9";
+    sha256 = "0jpgyh65zqr76sz2s63zsjyb49dpg2xdmf72jvpicw923bdzhqvp";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/click-configfile/default.nix b/nixpkgs/pkgs/development/python-modules/click-configfile/default.nix
new file mode 100644
index 000000000000..0d87aa890d2a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/click-configfile/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, click
+, six
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "click-configfile";
+  version = "0.2.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "lb7sE77pUOmPQ8gdzavvT2RAkVWepmKY+drfWTUdkNE=";
+  };
+
+  propagatedBuildInputs = [
+    click
+    six
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    "test_configfile__with_unbound_section"
+    "test_matches_section__with_bad_arg"
+  ];
+
+  meta = with lib; {
+    description = "Add support for commands that use configuration files to Click";
+    homepage = "https://github.com/click-contrib/click-configfile";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/click-option-group/default.nix b/nixpkgs/pkgs/development/python-modules/click-option-group/default.nix
new file mode 100644
index 000000000000..cf39ba808452
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/click-option-group/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, click
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "click-option-group";
+  version = "0.5.3";
+  format = "setuptools";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "click-contrib";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1w0692s8fabncpggpwl2d4dfqjjlmcia271rrb8hcz0r6nvw98ak";
+  };
+
+  propagatedBuildInputs = [
+    click
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "click_option_group"
+  ];
+
+  meta = with lib; {
+    description = "Option groups missing in Click";
+    longDescription = ''
+      Option groups are convenient mechanism for logical structuring
+      CLI, also it allows you to set the specific behavior and set the
+      relationship among grouped options (mutually exclusive options
+      for example). Moreover, argparse stdlib package contains this
+      functionality out of the box.
+    '';
+    homepage = "https://github.com/click-contrib/click-option-group";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/click-spinner/default.nix b/nixpkgs/pkgs/development/python-modules/click-spinner/default.nix
new file mode 100644
index 000000000000..e0d862ab1310
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/click-spinner/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, click
+, six
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "click-spinner";
+  version = "0.1.10";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "h+rPnXKYlzol12Fe9X1Hgq6/kTpTK7pLKKN+Nm6XXa8=";
+  };
+
+  checkInputs = [
+    click
+    six
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Add support for showwing that command line app is active to Click";
+    homepage = "https://github.com/click-contrib/click-spinner";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/clickhouse-driver/default.nix b/nixpkgs/pkgs/development/python-modules/clickhouse-driver/default.nix
index a1addcfc97ab..9a4c0f0f92be 100644
--- a/nixpkgs/pkgs/development/python-modules/clickhouse-driver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clickhouse-driver/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools
 , pytz
 , tzlocal
@@ -10,15 +10,20 @@
 , freezegun
 , mock
 , nose
+, pytestCheckHook
+, pytest-xdist
 }:
 
 buildPythonPackage rec {
   pname = "clickhouse-driver";
   version = "0.2.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "62d37f93872d5a13eb6b0d52bab2b593ed0e14cf9200949aa2d02f9801064c0f";
+  # pypi source doesn't contain tests
+  src = fetchFromGitHub {
+    owner = "mymarilyn";
+    repo = "clickhouse-driver";
+    rev = "96b7ba448c63ca2670cc9aa70d4a0e08826fb650";
+    sha256 = "sha256-HFKUxJOlBCVlu7Ia8heGpwX6+HdKuwSy92s3v+GKGwE=";
   };
 
   propagatedBuildInputs = [
@@ -34,9 +39,30 @@ buildPythonPackage rec {
     freezegun
     mock
     nose
+    pytest-xdist
+    pytestCheckHook
   ];
 
-  doCheck = true;
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "lz4<=3.0.1" "lz4<=4"
+  '';
+
+  # remove source to prevent pytest testing source instead of the build artifacts
+  # (the source doesn't contain the extension modules)
+  preCheck = ''
+    rm -rf clickhouse_driver
+  '';
+
+  # some test in test_buffered_reader.py doesn't seem to return
+  disabledTestPaths = [ "tests/test_buffered_reader.py" ];
+
+  pytestFlagsArray = [ "-n" "$NIX_BUILD_CORES" ];
+
+  # most tests require `clickhouse`
+  # TODO: enable tests after `clickhouse` unbroken
+  doCheck = false;
+
   pythonImportsCheck = [ "clickhouse_driver" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/clldutils/default.nix b/nixpkgs/pkgs/development/python-modules/clldutils/default.nix
index 96e6b86c1507..318354786b56 100644
--- a/nixpkgs/pkgs/development/python-modules/clldutils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clldutils/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "clldutils";
-  version = "3.7.0";
+  version = "3.9.0";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "clld";
     repo = pname;
     rev = "v${version}";
-    sha256 = "13shas7krf7j04gqxjn09ipy318hmrp1s3b5d576d5r1xfxakam4";
+    sha256 = "07ljq7v1zvaxyl6xn4a2p4097lgd5j9bz71lf05y5bz8k024mxbr";
   };
 
   patchPhase = ''
@@ -48,6 +48,6 @@ buildPythonPackage rec {
     description = "CSV on the Web";
     homepage = "https://github.com/cldf/csvw";
     license = licenses.asl20;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix b/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
index 591d1aac2e6a..cd11aa03f863 100644
--- a/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "cloudscraper";
-  version = "1.2.56";
+  version = "1.2.58";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "84c5910023dd393619b2b793fdb154392c5c8887b55e4bcac3ad2646f1cfe212";
+    sha256 = "1wnzv2k8cm8q1x18r4zg8pcnpm4gsdp82hywwjimp2v2qll918nx";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix b/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix
new file mode 100644
index 000000000000..57316ae9d6ce
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, certifi
+, six
+, dateutil
+, urllib3
+}:
+
+buildPythonPackage rec {
+  pname = "cloudsmith-api";
+  version = "0.54.15";
+
+  format = "wheel";
+
+  src = fetchPypi {
+    pname = "cloudsmith_api";
+    inherit format version;
+    sha256 = "X72xReosUnUlj69Gq+i+izhaKZuakM9mUrRHZI5L9h0=";
+  };
+
+  propagatedBuildInputs = [
+    certifi
+    six
+    dateutil
+    urllib3
+  ];
+
+  # Wheels have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "cloudsmith_api"
+  ];
+
+  meta = with lib; {
+    description = "Cloudsmith API Client";
+    homepage = "https://github.com/cloudsmith-io/cloudsmith-api";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/clvm-rs/default.nix b/nixpkgs/pkgs/development/python-modules/clvm-rs/default.nix
new file mode 100644
index 000000000000..4e5f69f8cd50
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/clvm-rs/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, rustPlatform
+, pythonOlder
+, openssl
+, perl
+}:
+
+buildPythonPackage rec {
+  pname = "clvm_rs";
+  version = "0.1.7";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Chia-Network";
+    repo = "clvm_rs";
+    rev = version;
+    sha256 = "sha256-ves23q1uQ3lexwK9l1xGRss05jYObJDi/aY9Yvp4aPU=";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    hash = "sha256-3kPzM2EX61ZvU6VKXY1OG/ic+9FU3Et4RuKp+3QYzSo=";
+  };
+
+  format = "pyproject";
+
+  nativeBuildInputs = [
+    perl # used by openssl-sys to configure
+  ] ++ (with rustPlatform; [
+    cargoSetupHook
+    maturinBuildHook
+  ]);
+
+  buildInputs = [ openssl ];
+
+  pythonImportsCheck = [ "clvm_rs" ];
+
+  meta = with lib; {
+    homepage = "https://chialisp.com/";
+    description = "Rust implementation of clvm";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/clvm-tools/default.nix b/nixpkgs/pkgs/development/python-modules/clvm-tools/default.nix
new file mode 100644
index 000000000000..66856191d403
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/clvm-tools/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, clvm
+, setuptools-scm
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "clvm_tools";
+  version = "0.4.3";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Chia-Network";
+    repo = "clvm_tools";
+    rev = version;
+    sha256 = "sha256-bWz3YCrakob/kROq+LOA+yD1wtIbInVrmDqtg4/cV4g=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    clvm
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "clvm_tools"
+  ];
+
+  disabledTests = [
+    "test_cmd_unknown-1_txt"
+  ];
+
+  # give a hint to setuptools-scm on package version
+  SETUPTOOLS_SCM_PRETEND_VERSION="v${version}";
+
+  meta = with lib; {
+    description = "Tools for clvm development";
+    homepage = "https://www.chialisp.com/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/clvm/default.nix b/nixpkgs/pkgs/development/python-modules/clvm/default.nix
new file mode 100644
index 000000000000..00bc14e280f4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/clvm/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, blspy
+, setuptools-scm
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "clvm";
+  version = "0.9.6";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Chia-Network";
+    repo = "clvm";
+    rev = version;
+    sha256 = "sha256-XBQEilDFhx0kT9bEMD4jX+SDk3cAC1BUCWhbtpgrLcA=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  # give a hint to setuptools-scm on package version
+  SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
+
+  propagatedBuildInputs = [
+    blspy
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # all tests in this file have a circular dependency on clvm-tools
+    "tests/cmds_test.py"
+  ];
+
+  pythonImportsCheck = [
+    "clvm"
+  ];
+
+  meta = with lib; {
+    description = "Chia Lisp virtual machine";
+    homepage = "https://www.chia.net/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cmd2/default.nix b/nixpkgs/pkgs/development/python-modules/cmd2/default.nix
index a6b49d32bcb9..dee6c2ab499e 100644
--- a/nixpkgs/pkgs/development/python-modules/cmd2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cmd2/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchPypi, buildPythonPackage, pythonOlder, isPy3k
 , pyperclip, six, pyparsing, vim, wcwidth, colorama, attrs
-, contextlib2 ? null, typing ? null, setuptools_scm
+, contextlib2 ? null, typing ? null, setuptools-scm
 , pytest, mock ? null, pytest-mock
 , which, glibcLocales
 }:
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   disabled = !isPy3k;
 
   buildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cnvkit/default.nix b/nixpkgs/pkgs/development/python-modules/cnvkit/default.nix
index 5baa28e4bd7f..6347c8552bf6 100644
--- a/nixpkgs/pkgs/development/python-modules/cnvkit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cnvkit/default.nix
@@ -6,7 +6,7 @@
 , biopython
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , pandas
 , matplotlib
 , reportlab
@@ -42,7 +42,7 @@ buildPythonPackage rec {
     biopython
     numpy
     scipy
-    scikitlearn
+    scikit-learn
     pandas
     matplotlib
     reportlab
diff --git a/nixpkgs/pkgs/development/python-modules/cock/default.nix b/nixpkgs/pkgs/development/python-modules/cock/default.nix
new file mode 100644
index 000000000000..c11646decd74
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cock/default.nix
@@ -0,0 +1,19 @@
+{ lib, buildPythonPackage, fetchPypi, locale, pytestCheckHook, click, sortedcontainers, pyyaml }:
+
+buildPythonPackage rec {
+  pname = "cock";
+  version = "0.8.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1gwaklvwlyvhz2c07hdmhbnqqmpybssxzzr0399dpjk7dgdqgam3";
+  };
+
+  propagatedBuildInputs = [ click sortedcontainers pyyaml ];
+
+  meta = with lib; {
+    homepage = "https://github.com/pohmelie/cock";
+    description = "Configuration file with click";
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cocotb-bus/default.nix b/nixpkgs/pkgs/development/python-modules/cocotb-bus/default.nix
new file mode 100644
index 000000000000..af740e8d298f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cocotb-bus/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "cocotb-bus";
+  version = "0.1.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "cc9b0bb00c95061a67f650caf96e3a294bb74ef437124dea456dd9e2a9431854";
+  };
+
+  postPatch = ''
+    # remove circular dependency cocotb from setup.py
+    substituteInPlace setup.py --replace '"cocotb>=1.5.0.dev,<2.0"' ""
+  '';
+
+  # tests require cocotb, disable for now to avoid circular dependency
+  doCheck = false;
+
+  # checkPhase = ''
+  #   export PATH=$out/bin:$PATH
+  #   make test
+  # '';
+
+  meta = with lib; {
+    description = "Pre-packaged testbenching tools and reusable bus interfaces for cocotb";
+    homepage = "https://github.com/cocotb/cocotb-bus";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ prusnak ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cocotb/default.nix b/nixpkgs/pkgs/development/python-modules/cocotb/default.nix
index b63432383832..17fe45f1cf49 100644
--- a/nixpkgs/pkgs/development/python-modules/cocotb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cocotb/default.nix
@@ -1,19 +1,31 @@
-{ lib, stdenv, buildPythonPackage, fetchFromGitHub, setuptools, swig, verilog }:
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, setuptools-scm
+, cocotb-bus
+, pytest
+, swig
+, verilog
+}:
 
 buildPythonPackage rec {
   pname = "cocotb";
-  version = "1.5.1";
-
-  src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "02bw2i03vd4rcvdk10qdjl2lbvvy81cn9qpr8vzq8cm9h45689mv";
+  version = "1.5.2";
+
+  # - we need to use the tarball from PyPi
+  #   or the full git checkout (with .git)
+  # - using fetchFromGitHub will cause a build failure,
+  #   because it does not include required metadata
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "9f4f3e6eb9caeb479e98d604770645b57469cd25b39e28df1916ffcd593efbe6";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
+  nativeBuildInputs = [ setuptools-scm ];
+
+  buildInputs = [ setuptools ];
 
   postPatch = ''
     patchShebangs bin/*.py
@@ -25,16 +37,14 @@ buildPythonPackage rec {
     do
       substituteInPlace $f --replace 'shell which' 'shell command -v'
     done
+
+    # remove circular dependency cocotb-bus from setup.py
+    substituteInPlace setup.py --replace "'cocotb-bus<1.0'" ""
   '';
 
-  checkInputs = [ swig verilog ];
+  checkInputs = [ cocotb-bus pytest swig verilog ];
 
   checkPhase = ''
-    # test expected failures actually pass because of a fix in our icarus version
-    # https://github.com/cocotb/cocotb/issues/1952
-    substituteInPlace tests/test_cases/test_discovery/test_discovery.py \
-      --replace 'def access_single_bit' $'def foo(x): pass\ndef foo'
-
     export PATH=$out/bin:$PATH
     make test
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/colored-traceback/default.nix b/nixpkgs/pkgs/development/python-modules/colored-traceback/default.nix
new file mode 100644
index 000000000000..35d1d5a896c2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/colored-traceback/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pygments
+}:
+
+buildPythonPackage rec {
+  pname = "colored-traceback";
+  version = "0.3.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-bafOKx2oafa7VMkntBW5VyfEu22ahMRhXqd9mHKRGwU=";
+  };
+
+  buildInputs = [ pygments ];
+
+  # No setuptools tests for the package.
+  doCheck = false;
+
+  pythonImportsCheck = [ "colored_traceback" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/staticshock/colored-traceback.py";
+    description = "Automatically color Python's uncaught exception tracebacks";
+    license = licenses.isc;
+    maintainers = with maintainers; [ pamplemousse ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/commentjson/default.nix b/nixpkgs/pkgs/development/python-modules/commentjson/default.nix
new file mode 100644
index 000000000000..2aefb51d481e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/commentjson/default.nix
@@ -0,0 +1,34 @@
+{ lib, buildPythonPackage, fetchFromGitHub, six, lark-parser, pytestCheckHook }:
+
+buildPythonPackage rec {
+  pname = "commentjson";
+  version = "0.9.0";
+
+  src = fetchFromGitHub {
+    owner = "vaidik";
+    repo = "commentjson";
+    rev = "v${version}";
+    sha256 = "sha256-dPnIcv7TIeyG7rU938w7FrDklmaGuPpXz34uw/JjOgY=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "lark-parser>=0.7.1,<0.8.0" "lark-parser"
+
+    # NixOS is missing test.test_json module
+    rm -r commentjson/tests/test_json
+  '';
+
+  propagatedBuildInputs = [ lark-parser six ];
+
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "commentjson" ];
+
+  meta = with lib; {
+    description = "Add JavaScript or Python style comments in JSON";
+    homepage = "https://github.com/vaidik/commentjson/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SuperSandro2000 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/concurrent-log-handler/default.nix b/nixpkgs/pkgs/development/python-modules/concurrent-log-handler/default.nix
new file mode 100644
index 000000000000..5880cdf961e7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/concurrent-log-handler/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, portalocker
+}:
+
+buildPythonPackage rec {
+  pname = "concurrent-log-handler";
+  version = "0.9.19";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-sS95q+0/lBIcJc6cJM21fYiSguxv9h9VNasgaNw31Ak=";
+  };
+
+  propagatedBuildInputs = [
+    portalocker
+  ];
+
+  pythonImportsCheck = [
+    "concurrent_log_handler"
+  ];
+
+  doCheck = false; # upstream has no tests
+
+  meta = with lib; {
+    description = "Python logging handler that allows multiple processes to safely write to the same log file concurrently";
+    homepage = "https://www.chia.net/";
+    license = licenses.asl20;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/configparser/4.nix b/nixpkgs/pkgs/development/python-modules/configparser/4.nix
index cbef6fd2ce7f..0f3b6e0b4912 100644
--- a/nixpkgs/pkgs/development/python-modules/configparser/4.nix
+++ b/nixpkgs/pkgs/development/python-modules/configparser/4.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools_scm }:
+{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "configparser";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   # No tests available
   doCheck = false;
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   preConfigure = ''
     export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8
diff --git a/nixpkgs/pkgs/development/python-modules/configparser/default.nix b/nixpkgs/pkgs/development/python-modules/configparser/default.nix
index 47fe88d4e61a..a939f6623c9c 100644
--- a/nixpkgs/pkgs/development/python-modules/configparser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/configparser/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools_scm
+{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools-scm
 , toml
 }:
 
@@ -14,7 +14,7 @@ buildPythonPackage rec {
   # No tests available
   doCheck = false;
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
 
   preConfigure = ''
     export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8
diff --git a/nixpkgs/pkgs/development/python-modules/connect_box/default.nix b/nixpkgs/pkgs/development/python-modules/connect_box/default.nix
index 6c92ac025d8d..cfcb1d946824 100644
--- a/nixpkgs/pkgs/development/python-modules/connect_box/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/connect_box/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "connect-box";
-  version = "0.2.8";
+  version = "0.3.0";
 
   src = fetchPypi {
     pname = "connect_box";
     inherit version;
-    sha256 = "1lvz7g2f0a9ifnjczmbavn105miirdgyayr4sixhzgdgadcdhz3l";
+    sha256 = "sha256-d1KqVKaHlZDm2o1GJ7r8KoONwfd1lxXexJxavCvjfW8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/connexion/default.nix b/nixpkgs/pkgs/development/python-modules/connexion/default.nix
index 25925f56069a..0429ee7a507a 100644
--- a/nixpkgs/pkgs/development/python-modules/connexion/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/connexion/default.nix
@@ -1,89 +1,60 @@
-{ buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, glibcLocales
-, lib
-, pythonOlder
-
+{ lib
 , aiohttp
-, aiohttp-swagger
 , aiohttp-jinja2
+, aiohttp-remotes
+, aiohttp-swagger
+, buildPythonPackage
 , clickclick
 , decorator
-, flake8
+, fetchFromGitHub
 , flask
-, gevent
 , inflection
 , jsonschema
-, mock
 , openapi-spec-validator
-, pathlib
-, pytest
 , pytest-aiohttp
-, pytestcov
+, pytestCheckHook
+, pythonOlder
 , pyyaml
 , requests
-, six
 , swagger-ui-bundle
 , testfixtures
-, typing ? null
-, ujson
 }:
 
 buildPythonPackage rec {
   pname = "connexion";
-  version = "2.4.0";
+  version = "2.7.0";
+  disabled = pythonOlder "3.6";
 
-  # we're fetching from GitHub because tests weren't distributed on PyPi
   src = fetchFromGitHub {
     owner = "zalando";
     repo = pname;
     rev = version;
-    sha256 = "1b9q027wrks0afl7l3a1wxymz3aick26b9fq2m07pc5wb9np0vvg";
+    sha256 = "15iflq5403diwda6n6qrpq67wkdcvl3vs0gsg0fapxqnq3a2m7jj";
   };
 
-  checkInputs = [
-    decorator
-    mock
-    pytest
-    pytestcov
-    testfixtures
-    flask
-    swagger-ui-bundle
-  ]
-  ++ lib.optionals isPy3k [ aiohttp aiohttp-jinja2 aiohttp-swagger ujson pytest-aiohttp ]
-  ++ lib.optional (pythonOlder "3.7") glibcLocales
-  ;
   propagatedBuildInputs = [
+    aiohttp
+    aiohttp-jinja2
+    aiohttp-swagger
     clickclick
+    flask
+    inflection
     jsonschema
+    openapi-spec-validator
     pyyaml
     requests
-    six
-    inflection
-    openapi-spec-validator
     swagger-ui-bundle
-    flask
-  ]
-  ++ lib.optional (pythonOlder "3.4") pathlib
-  ++ lib.optional (pythonOlder "3.6") typing
-  ++ lib.optionals isPy3k [ aiohttp aiohttp-jinja2 aiohttp-swagger ujson ]
-  ;
-
-  preConfigure = lib.optional (pythonOlder "3.7") ''
-    export LANG=en_US.UTF-8
-  '';
+  ];
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "'aiohttp>=2.3.10,<3.5.2'" "'aiohttp>=2.3.10'"
-  '';
+  checkInputs = [
+    aiohttp-remotes
+    decorator
+    pytest-aiohttp
+    pytestCheckHook
+    testfixtures
+  ];
 
-  checkPhase = if isPy3k then ''
-    pytest -k "not test_app_get_root_path and \
-               not test_verify_oauth_scopes_remote and \
-               not test_verify_oauth_scopes_local and \
-               not test_run_with_aiohttp_not_installed"''
-  else "pytest --ignore=tests/aiohttp";
+  pythonImportsCheck = [ "connexion" ];
 
   meta = with lib; {
     description = "Swagger/OpenAPI First framework on top of Flask";
diff --git a/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix b/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
index c5ee4d8617d0..b2a13cdbb654 100644
--- a/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
@@ -5,14 +5,14 @@
 
 buildPythonPackage rec {
   pname = "cookiecutter";
-  version = "1.7.2";
+  version = "1.7.3";
 
   # not sure why this is broken
   disabled = isPyPy;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "efb6b2d4780feda8908a873e38f0e61778c23f6a2ea58215723bcceb5b515dac";
+    sha256 = "sha256-a5pNcoguJDvgd6c5fQ8fdv5mzz35HzEV27UzDiFPpFc=";
   };
 
   checkInputs = [ pytest pytestcov pytest-mock freezegun ];
diff --git a/nixpkgs/pkgs/development/python-modules/coqpit/default.nix b/nixpkgs/pkgs/development/python-modules/coqpit/default.nix
new file mode 100644
index 000000000000..c4df114e24df
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/coqpit/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "coqpit";
+  version = "0.0.6.6";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "coqui-ai";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wb5wf84i5h4ycm732kn4316v7schhm91s2rrklfw9sny5dqmdnh";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "coqpit"
+    "coqpit.coqpit"
+  ];
+
+  meta = with lib; {
+    description = "Simple but maybe too simple config management through python data classes";
+    longDescription = ''
+      Simple, light-weight and no dependency config handling through python data classes with to/from JSON serialization/deserialization.
+    '';
+    homepage = "https://github.com/coqui-ai/coqpit";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa mic92 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/coreapi/default.nix b/nixpkgs/pkgs/development/python-modules/coreapi/default.nix
index 8b957fee4f6e..ad9fd3d7ef73 100644
--- a/nixpkgs/pkgs/development/python-modules/coreapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coreapi/default.nix
@@ -39,6 +39,6 @@ buildPythonPackage rec {
     description = "Python client library for Core API";
     homepage = "https://github.com/core-api/python-client";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/coreschema/default.nix b/nixpkgs/pkgs/development/python-modules/coreschema/default.nix
index 65bdee5a8da9..d22e7f4ecd91 100644
--- a/nixpkgs/pkgs/development/python-modules/coreschema/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coreschema/default.nix
@@ -29,6 +29,6 @@ buildPythonPackage rec {
     description = "Python client library for Core Schema";
     homepage = "https://github.com/ivegotasthma/python-coreschema";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/corsair-scan/default.nix b/nixpkgs/pkgs/development/python-modules/corsair-scan/default.nix
new file mode 100644
index 000000000000..e7c016be06bb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/corsair-scan/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, click
+, fetchFromGitHub
+, mock
+, pytestCheckHook
+, pythonOlder
+, requests
+, tldextract
+, urllib3
+, validators
+}:
+
+buildPythonPackage rec {
+  pname = "corsair-scan";
+  version = "0.2.0";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "Santandersecurityresearch";
+    repo = "corsair_scan";
+    rev = "v${version}";
+    sha256 = "09jsv5bag7mjy0rxsxjzmg73rjl7qknzr0d7a7himd7v6a4ikpmk";
+  };
+
+  propagatedBuildInputs = [
+    validators
+    requests
+    urllib3
+    tldextract
+    click
+  ];
+
+  checkInputs = [
+    mock
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'pytest-runner'," ""
+  '';
+
+  pythonImportsCheck = [ "corsair_scan" ];
+
+  meta = with lib; {
+    description = "Python module to check for Cross-Origin Resource Sharing (CORS) misconfigurations";
+    homepage = "https://github.com/Santandersecurityresearch/corsair_scan";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/crate/default.nix b/nixpkgs/pkgs/development/python-modules/crate/default.nix
index 9be85ff4b3cd..07b9652e7753 100644
--- a/nixpkgs/pkgs/development/python-modules/crate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/crate/default.nix
@@ -29,6 +29,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    "RequestsCaBundleTest"
+  ];
   disabledTestPaths = lib.optionals stdenv.isDarwin [ "src/crate/client/test_http.py" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/croniter/default.nix b/nixpkgs/pkgs/development/python-modules/croniter/default.nix
index 577fef8d79d9..a93f8e78ce6b 100644
--- a/nixpkgs/pkgs/development/python-modules/croniter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/croniter/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "croniter";
-  version = "1.0.9";
+  version = "1.0.13";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "708532f70584207e23ef2989ca40f367e6238bfe050133a1aff43e1e0e6f6092";
+    sha256 = "sha256-V/Nt9PWhwxu/ULv/o1UWEsGfYVarHoji5CNCzLufm5o=";
   };
 
   propagatedBuildInputs = [
@@ -28,6 +28,8 @@ buildPythonPackage rec {
     tzlocal
   ];
 
+  pythonImportsCheck = [ "croniter" ];
+
   meta = with lib; {
     description = "croniter provides iteration for datetime object with cron like format";
     homepage = "https://github.com/kiorky/croniter";
diff --git a/nixpkgs/pkgs/development/python-modules/cryptography/default.nix b/nixpkgs/pkgs/development/python-modules/cryptography/default.nix
index 4671f607bbac..9b35b5654e26 100644
--- a/nixpkgs/pkgs/development/python-modules/cryptography/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cryptography/default.nix
@@ -15,6 +15,7 @@
 , pytest
 , pytest-subtests
 , pretend
+, libiconv
 , iso8601
 , pytz
 , hypothesis
@@ -33,7 +34,7 @@ buildPythonPackage rec {
     inherit src;
     sourceRoot = "${pname}-${version}/${cargoRoot}";
     name = "${pname}-${version}";
-    sha256 = "1wisxmq26b8ml144m2458sgcbk8jpv419j01qmffsrfy50x9i1yw";
+    sha256 = "1m6smky4nahwlp4hn6yzibrcxlbsw4nx162dsq48vlw8h1lgjl62";
   };
 
   cargoRoot = "src/rust";
@@ -48,7 +49,7 @@ buildPythonPackage rec {
   ] ++ (with rustPlatform; [ rust.cargo rust.rustc ]);
 
   buildInputs = [ openssl ]
-             ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
+             ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security libiconv ];
   propagatedBuildInputs = [
     packaging
     six
@@ -66,8 +67,18 @@ buildPythonPackage rec {
     pytz
   ];
 
+  pytestFlags = lib.concatStringsSep " " ([
+    "--disable-pytest-warnings"
+  ] ++
+    lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+      # aarch64-darwin forbids W+X memory, but this tests depends on it:
+      # * https://cffi.readthedocs.io/en/latest/using.html#callbacks
+      "--ignore=tests/hazmat/backends/test_openssl_memleak.py"
+    ]
+  );
+
   checkPhase = ''
-    py.test --disable-pytest-warnings tests
+    py.test ${pytestFlags} tests
   '';
 
   # IOKit's dependencies are inconsistent between OSX versions, so this is the best we
diff --git a/nixpkgs/pkgs/development/python-modules/cssutils/default.nix b/nixpkgs/pkgs/development/python-modules/cssutils/default.nix
index 8bfe8ea2948d..9d1aec862508 100644
--- a/nixpkgs/pkgs/development/python-modules/cssutils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cssutils/default.nix
@@ -5,19 +5,21 @@
 , setuptools-scm
 , toml
 , importlib-metadata
+, cssselect
+, lxml
 , mock
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "cssutils";
-  version = "2.2.0";
+  version = "2.3.0";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5bef59f6b59bdccbea8e36cb292d2be1b6be1b485fc4a9f5886616f19eb31aaf";
+    sha256 = "sha256-stOxYEfKroLlxZADaTW6+htiHPRcLziIWvS+SDjw/QA=";
   };
 
   nativeBuildInputs = [
@@ -30,6 +32,8 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    cssselect
+    lxml
     mock
     pytestCheckHook
   ];
@@ -38,6 +42,12 @@ buildPythonPackage rec {
     # access network
     "test_parseUrl"
     "encutils"
+    "website.logging"
+  ] ++ lib.optionals (pythonOlder "3.9") [
+    # AttributeError: module 'importlib.resources' has no attribute 'files'
+    "test_parseFile"
+    "test_parseString"
+    "test_combine"
   ];
 
   pythonImportsCheck = [ "cssutils" ];
diff --git a/nixpkgs/pkgs/development/python-modules/csvw/default.nix b/nixpkgs/pkgs/development/python-modules/csvw/default.nix
index e4bd7ab2b624..27f3f291113c 100644
--- a/nixpkgs/pkgs/development/python-modules/csvw/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/csvw/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy27
+, pythonOlder
 , attrs
 , isodate
 , dateutil
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "csvw";
-  version = "1.10.1";
-  disabled = isPy27;
+  version = "1.11.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "cldf";
     repo = "csvw";
     rev = "v${version}";
-    sha256 = "1764nfa4frjdd7v6wj35y7prnciaqz57wwygy5zfavl4laxn4nxd";
+    sha256 = "1393xwqawaxsflbq62vks92vv4zch8p6dd1mdvdi7j4vvf0zljkg";
   };
 
   patchPhase = ''
@@ -42,6 +42,12 @@ buildPythonPackage rec {
     pytest-mock
   ];
 
+  disabledTests = [
+    # this test is flaky on darwin because it depends on the resolution of filesystem mtimes
+    # https://github.com/cldf/csvw/blob/45584ad63ff3002a9b3a8073607c1847c5cbac58/tests/test_db.py#L257
+    "test_write_file_exists"
+  ];
+
   meta = with lib; {
     description = "CSV on the Web";
     homepage = "https://github.com/cldf/csvw";
diff --git a/nixpkgs/pkgs/development/python-modules/curtsies/default.nix b/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
index dc32bcdf74c9..7b34884e26e2 100644
--- a/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
@@ -1,22 +1,14 @@
-{ lib, buildPythonPackage, fetchPypi, fetchpatch, pythonOlder, blessings, mock, nose, pyte, wcwidth, typing ? null}:
+{ lib, buildPythonPackage, fetchPypi, pythonOlder, blessings, mock, nose, pyte, cwcwidth, typing ? null}:
 
 buildPythonPackage rec {
   pname = "curtsies";
-  version = "0.3.0";
+  version = "0.3.5";
   src = fetchPypi {
     inherit pname version;
-    sha256 = "89c802ec051d01dec6fc983e9856a3706e4ea8265d2940b1f6d504a9e26ed3a9";
+    sha256 = "1g8dwafx4vx06isjkn28r3cwb0hw1bv67lgygaz34yk66lrzz1x5";
   };
 
-  patches = [
-    # Fix dependency on typing. Remove with the next release
-    (fetchpatch {
-      url = "https://github.com/bpython/curtsies/commit/217b4f83e954837f8adc4c549c1f2f9f2bb272a7.patch";
-      sha256 = "1d3zwx9c7i0drb4nvydalm9mr83jrvdm75ffgisri89h337hiffs";
-    })
-  ];
-
-  propagatedBuildInputs = [ blessings wcwidth ]
+  propagatedBuildInputs = [ blessings cwcwidth ]
     ++ lib.optionals (pythonOlder "3.5") [ typing ];
 
   checkInputs = [ mock pyte nose ];
diff --git a/nixpkgs/pkgs/development/python-modules/cvxpy/default.nix b/nixpkgs/pkgs/development/python-modules/cvxpy/default.nix
index 1d060c41bb21..359ee96f60a9 100644
--- a/nixpkgs/pkgs/development/python-modules/cvxpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cvxpy/default.nix
@@ -9,7 +9,7 @@
 , osqp
 , scipy
 , scs
-, useOpenmp ? true
+, useOpenmp ? (!stdenv.isDarwin)
   # Check inputs
 , pytestCheckHook
 }:
diff --git a/nixpkgs/pkgs/development/python-modules/cwcwidth/default.nix b/nixpkgs/pkgs/development/python-modules/cwcwidth/default.nix
new file mode 100644
index 000000000000..a17a8a936aa0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cwcwidth/default.nix
@@ -0,0 +1,34 @@
+{ lib, buildPythonPackage, fetchPypi, cython, pytestCheckHook }:
+
+buildPythonPackage rec {
+  pname = "cwcwidth";
+  version = "0.1.4";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1azrphpkcyggg38xvkfb9dpc4xmmm90p02kf8dkqd4d6j5w96aj8";
+  };
+
+  nativeBuildInputs = [ cython ];
+
+  checkInputs = [ pytestCheckHook ];
+  # Hack needed to make pytest + cython work
+  # https://github.com/NixOS/nixpkgs/pull/82410#issuecomment-827186298
+  preCheck = ''
+    export HOME=$(mktemp -d)
+    cp -r $TMP/$sourceRoot/tests $HOME
+    pushd $HOME
+  '';
+  postCheck = "popd";
+
+  pythonImportsCheck = [ "cwcwidth" ];
+
+  meta = with lib; {
+    description = "Python bindings for wc(s)width";
+    homepage = "https://github.com/sebastinas/cwcwidth";
+    changelog = "https://github.com/sebastinas/cwcwidth/blob/main/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ eduardosm ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cxxfilt/default.nix b/nixpkgs/pkgs/development/python-modules/cxxfilt/default.nix
index 580d698d8dab..1cc5ad19bda2 100644
--- a/nixpkgs/pkgs/development/python-modules/cxxfilt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cxxfilt/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , gcc-unwrapped
@@ -12,9 +13,11 @@ buildPythonPackage rec {
     sha256 = "ef6810e76d16c95c11b96371e2d8eefd1d270ec03f9bcd07590e8dcc2c69e92b";
   };
 
-  postPatch = ''
+  postPatch = let
+    libstdcpp = "${lib.getLib gcc-unwrapped}/lib/libstdc++${stdenv.hostPlatform.extensions.sharedLibrary}";
+  in ''
     substituteInPlace cxxfilt/__init__.py \
-      --replace "find_any_library('stdc++', 'c++')" '"${lib.getLib gcc-unwrapped}/lib/libstdc++.so"'
+      --replace "find_any_library('stdc++', 'c++')" '"${libstdcpp}"'
   '';
 
   # no tests
diff --git a/nixpkgs/pkgs/development/python-modules/dask-glm/default.nix b/nixpkgs/pkgs/development/python-modules/dask-glm/default.nix
index ca25e05bb1ed..9072a691c20a 100644
--- a/nixpkgs/pkgs/development/python-modules/dask-glm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dask-glm/default.nix
@@ -7,8 +7,8 @@
 , multipledispatch
 , setuptools-scm
 , scipy
-, scikitlearn
-, pytest
+, scikit-learn
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -21,12 +21,8 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ setuptools-scm ];
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ cloudpickle dask numpy toolz multipledispatch scipy scikitlearn ];
-
-  checkPhase = ''
-    py.test dask_glm
-  '';
+  checkInputs = [ pytestCheckHook ];
+  propagatedBuildInputs = [ cloudpickle dask numpy toolz multipledispatch scipy scikit-learn ];
 
   meta = with lib; {
     homepage = "https://github.com/dask/dask-glm/";
diff --git a/nixpkgs/pkgs/development/python-modules/dask-image/default.nix b/nixpkgs/pkgs/development/python-modules/dask-image/default.nix
index a38350f0f6ac..e3ab607dcac0 100644
--- a/nixpkgs/pkgs/development/python-modules/dask-image/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dask-image/default.nix
@@ -2,41 +2,32 @@
 , buildPythonPackage
 , fetchPypi
 , dask
-, numpy, toolz # dask[array]
 , scipy
 , pims
-, pytest
-, pytest-flake8
 , scikitimage
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
-  version = "0.5.0";
+  version = "0.6.0";
   pname = "dask-image";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0bf7ea8dcd9d795505b498bd632394720c048f50761e23c574d9a6bacfb27cbb";
+    sha256 = "1zzxrvbm52xn7azkn74pjinlk0jkpdcyl3r5vxxy5lmjnmzlrrpy";
   };
 
-  nativeBuildInputs = [ pytest-flake8 ];
-  propagatedBuildInputs = [ dask numpy toolz scipy pims ];
-  checkInputs = [
-    pytest
-    scikitimage
-  ];
+  propagatedBuildInputs = [ dask scipy pims ];
 
-  # ignore errors from newer versions of flake8
   prePatch = ''
-    substituteInPlace setup.cfg \
-      --replace "docs/conf.py,versioneer.py" \
-        "docs/conf.py,versioneer.py,dask_image/ndfilters/_utils.py"
+    substituteInPlace setup.cfg --replace "--flake8" ""
   '';
 
-  # scikit.external is not exported
-  checkPhase = ''
-    pytest --ignore=tests/test_dask_image/
-  '';
+  checkInputs = [
+    pytestCheckHook
+    scikitimage
+  ];
+
   pythonImportsCheck = [ "dask_image" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/dask-ml/default.nix b/nixpkgs/pkgs/development/python-modules/dask-ml/default.nix
index 517056866bb4..ff1b145ee8a2 100644
--- a/nixpkgs/pkgs/development/python-modules/dask-ml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dask-ml/default.nix
@@ -6,7 +6,7 @@
 , numpy, toolz # dask[array]
 , numba
 , pandas
-, scikitlearn
+, scikit-learn
 , scipy
 , dask-glm
 , six
@@ -26,6 +26,10 @@ buildPythonPackage rec {
     sha256 = "8fc4ac3ec1915e382fb8cae9ff1ec9b5ac1bee0b6f4c6975d6e6cb7191a4a815";
   };
 
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
   propagatedBuildInputs = [
     dask
     dask-glm
@@ -35,11 +39,10 @@ buildPythonPackage rec {
     numpy
     packaging
     pandas
-    scikitlearn
+    scikit-learn
     scipy
     six
     toolz
-    setuptools-scm
   ];
 
   # has non-standard build from source, and pypi doesn't include tests
diff --git a/nixpkgs/pkgs/development/python-modules/dask/default.nix b/nixpkgs/pkgs/development/python-modules/dask/default.nix
index 13c03a1f7968..55ba3ad6ba7f 100644
--- a/nixpkgs/pkgs/development/python-modules/dask/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dask/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , bokeh
 , buildPythonPackage
 , fetchpatch
@@ -72,16 +73,19 @@ buildPythonPackage rec {
       --replace "cmdclass=versioneer.get_cmdclass()," ""
   '';
 
-  pytestFlagsArray = [ "-n $NIX_BUILD_CORES" ];
+  pytestFlagsArray = [
+    "-n $NIX_BUILD_CORES"
+    "-m 'not network'"
+  ];
 
-  disabledTests = [
-    "test_annotation_pack_unpack"
-    "test_annotations_blockwise_unpack"
+  disabledTests = lib.optionals stdenv.isDarwin [
     # this test requires features of python3Packages.psutil that are
     # blocked in sandboxed-builds
     "test_auto_blocksize_csv"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   pythonImportsCheck = [ "dask.dataframe" "dask" "dask.array" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/databases/default.nix b/nixpkgs/pkgs/development/python-modules/databases/default.nix
index f5a7c52ef8e5..3a1da0697c0d 100644
--- a/nixpkgs/pkgs/development/python-modules/databases/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/databases/default.nix
@@ -4,7 +4,8 @@
 , sqlalchemy
 , aiocontextvars
 , isPy27
-, pytest
+, pytestCheckHook
+, pymysql
 , asyncpg
 , aiomysql
 , aiosqlite
@@ -12,33 +13,37 @@
 
 buildPythonPackage rec {
   pname = "databases";
-  version = "0.2.6";
+  version = "0.4.3";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "0cdb4vln4zdmqbbcj7711b81b2l64jg1miihqcg8gpi35v404h2q";
+    sha256 = "0aq88k7d9036cy6qvlfv9p2dxd6p6fic3j0az43gn6k1ardhdsgf";
   };
 
   propagatedBuildInputs = [
-    sqlalchemy
     aiocontextvars
+    sqlalchemy
   ];
 
   checkInputs = [
-    pytest
-    asyncpg
     aiomysql
     aiosqlite
+    asyncpg
+    pymysql
+    pytestCheckHook
   ];
 
-  # big chunk to tests depend on existing posgresql and mysql databases
-  # some tests are better than no tests
-  checkPhase = ''
-    pytest --ignore=tests/test_integration.py --ignore=tests/test_databases.py
-  '';
+  disabledTestPaths = [
+    # ModuleNotFoundError: No module named 'aiopg'
+    "tests/test_connection_options.py"
+    # circular dependency on starlette
+    "tests/test_integration.py"
+    # TEST_DATABASE_URLS is not set.
+    "tests/test_databases.py"
+  ];
 
   meta = with lib; {
     description = "Async database support for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/datadog/default.nix b/nixpkgs/pkgs/development/python-modules/datadog/default.nix
index ad3f66b5d658..fbe3316e0100 100644
--- a/nixpkgs/pkgs/development/python-modules/datadog/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datadog/default.nix
@@ -17,11 +17,11 @@
 
 buildPythonPackage rec {
   pname = "datadog";
-  version = "0.40.1";
+  version = "0.41.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "438c1dde5462e68c5c792b7b4a1d87a0ddd970af3db31b3cf15980eed0c44311";
+    sha256 = "sha256-PeGkO4qNX2sZ0WLsG0gtxasmNsWc9l5gWJcCMEUQpok=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/datasette/default.nix b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
index 1d919de6ee80..58920b406466 100644
--- a/nixpkgs/pkgs/development/python-modules/datasette/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
@@ -5,6 +5,7 @@
 , asgi-csrf
 , click
 , click-default-group
+, itsdangerous
 , janus
 , jinja2
 , hupper
@@ -17,56 +18,62 @@
 , httpx
 # Check Inputs
 , pytestCheckHook
-, pytestrunner
+, pytest-runner
 , pytest-asyncio
+, pytest-timeout
 , aiohttp
 , beautifulsoup4
 , asgiref
 , setuptools
+, trustme
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "datasette";
-  version = "0.54.1";
+  version = "0.57.1";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "simonw";
-    repo = "datasette";
+    repo = pname;
     rev = version;
-    sha256 = "sha256-Ixh56X9dI/FIJPXHXXGnFiYj3qeBmvW5L1FF7/0ofUQ=";
+    sha256 = "sha256-BHsf3GOganPhsDiZlRxvAsRZH/Sq+Jr+CZcc2ubce+8=";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [
     aiofiles
     asgi-csrf
+    asgiref
     click
     click-default-group
+    httpx
+    hupper
+    itsdangerous
     janus
     jinja2
-    hupper
     mergedeep
     pint
     pluggy
     python-baseconv
     pyyaml
-    uvicorn
     setuptools
-    httpx
-    asgiref
+    uvicorn
   ];
 
   checkInputs = [
-    pytestCheckHook
-    pytest-asyncio
     aiohttp
     beautifulsoup4
+    pytest-asyncio
+    pytest-timeout
+    pytestCheckHook
+    trustme
   ];
 
   postConfigure = ''
     substituteInPlace setup.py \
-      --replace "click~=7.1.1" "click" \
       --replace "click-default-group~=1.2.2" "click-default-group" \
       --replace "hupper~=1.9" "hupper" \
       --replace "pint~=0.9" "pint" \
@@ -75,12 +82,13 @@ buildPythonPackage rec {
       --replace "PyYAML~=5.3" "PyYAML"
   '';
 
-  # takes 30-180 mins to run entire test suite, not worth the cpu resources, slows down reviews
-  # with pytest-xdist, it still takes around 10mins with 32 cores
+  # takes 30-180 mins to run entire test suite, not worth the CPU resources, slows down reviews
+  # with pytest-xdist, it still takes around 10 mins with 32 cores
   # just run the csv tests, as this should give some indictation of correctness
   pytestFlagsArray = [
     "tests/test_csv.py"
   ];
+
   disabledTests = [
     "facet"
     "_invalid_database" # checks error message when connecting to invalid database
@@ -97,10 +105,9 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "An instant JSON API for your SQLite databases";
-    homepage = "https://github.com/simonw/datasette";
+    description = "Multi-tool for exploring and publishing data";
+    homepage = "https://datasette.io/";
     license = licenses.asl20;
     maintainers = [ maintainers.costrouc ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/datatable/default.nix b/nixpkgs/pkgs/development/python-modules/datatable/default.nix
index c5271e473e3e..60eb0df1d09d 100644
--- a/nixpkgs/pkgs/development/python-modules/datatable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datatable/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   checkInputs = [ docutils pytestCheckHook ];
 
   LLVM = llvm;
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-isystem ${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-isystem ${lib.getDev libcxx}/include/c++/v1";
 
   pytestFlagsArray = let
     # ini file (not included in tarball) required to change python_files setting,
diff --git a/nixpkgs/pkgs/development/python-modules/dawg-python/default.nix b/nixpkgs/pkgs/development/python-modules/dawg-python/default.nix
new file mode 100644
index 000000000000..ba9c298a2e82
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/dawg-python/default.nix
@@ -0,0 +1,24 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+}:
+
+buildPythonPackage rec {
+  pname = "dawg-python";
+  version = "0.7.2";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "DAWG-Python";
+    hash = "sha256-Sl4yhuYmHMoC8gXP1VFqerEBkPowxRwo00WAj1leNCE=";
+  };
+
+  pythonImportsCheck = [ "dawg_python" ];
+
+  meta = with lib; {
+    description = "Pure Python reader for DAWGs created by dawgdic C++ library or DAWG Python extension";
+    homepage = "https://github.com/pytries/DAWG-Python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/dbus/default.nix b/nixpkgs/pkgs/development/python-modules/dbus/default.nix
index a6e2e28c6f59..8c9eb476fe08 100644
--- a/nixpkgs/pkgs/development/python-modules/dbus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dbus/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, python, pkg-config, dbus, dbus-glib, isPyPy
+{ lib, stdenv, fetchPypi, buildPythonPackage, python, pkg-config, dbus, dbus-glib, isPyPy
 , ncurses, pygobject3, isPy3k }:
 
 buildPythonPackage rec {
@@ -19,6 +19,10 @@ buildPythonPackage rec {
 
   disabled = isPyPy;
 
+  preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) then ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
+  '' else null;
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ dbus dbus-glib ]
     # My guess why it's sometimes trying to -lncurses.
diff --git a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
index beb5ba9c46b7..059f2110fd53 100644
--- a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
@@ -17,13 +17,13 @@
 
 buildPythonPackage rec {
   pname = "debugpy";
-  version = "1.2.1";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1dgjbbhy228w2zbfq5pf0hkai7742zw8mmybnzjdc9l6pw7360rq";
+    hash = "sha256-YGzc9mMIzPTmUgIXuZROLdYKjUm69x9SR+JtYRVpn24=";
   };
 
   patches = [
@@ -33,6 +33,7 @@ buildPythonPackage rec {
       inherit gdb;
     })
 
+    # Use nixpkgs version instead of versioneer
     (substituteAll {
       src = ./hardcode-version.patch;
       inherit version;
@@ -87,11 +88,13 @@ buildPythonPackage rec {
     "gevent"
   ];
 
+  pythonImportsCheck = [ "debugpy" ];
+
   meta = with lib; {
     description = "An implementation of the Debug Adapter Protocol for Python";
     homepage = "https://github.com/microsoft/debugpy";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "i686-darwin" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/debugpy/fix-test-pythonpath.patch b/nixpkgs/pkgs/development/python-modules/debugpy/fix-test-pythonpath.patch
index 751351e03cde..f74b53a831b3 100644
--- a/nixpkgs/pkgs/development/python-modules/debugpy/fix-test-pythonpath.patch
+++ b/nixpkgs/pkgs/development/python-modules/debugpy/fix-test-pythonpath.patch
@@ -1,8 +1,8 @@
 diff --git a/tests/debug/session.py b/tests/debug/session.py
-index 2b39106..6d45a10 100644
+index 101492f..4ee7cfb 100644
 --- a/tests/debug/session.py
 +++ b/tests/debug/session.py
-@@ -625,6 +625,7 @@ class Session(object):
+@@ -630,6 +630,7 @@ class Session(object):
          if "PYTHONPATH" in self.config.env:
              # If specified, launcher will use it in lieu of PYTHONPATH it inherited
              # from the adapter when spawning debuggee, so we need to adjust again.
diff --git a/nixpkgs/pkgs/development/python-modules/debut/default.nix b/nixpkgs/pkgs/development/python-modules/debut/default.nix
deleted file mode 100644
index 02eece2fc242..000000000000
--- a/nixpkgs/pkgs/development/python-modules/debut/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, chardet
-, attrs
-, pytestCheckHook
-}:
-buildPythonPackage rec {
-  pname = "debut";
-  version = "0.9.9";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "a3a71e475295f4cf4292440c9c7303ebca0309d395536d2a7f86a5f4d7465dc1";
-  };
-
-  dontConfigure = true;
-
-  propagatedBuildInputs = [
-    chardet
-    attrs
-  ];
-
-  checkInputs = [
-    pytestCheckHook
-  ];
-
-  pythonImportsCheck = [
-    "debut"
-  ];
-
-  meta = with lib; {
-    description = "Python library to parse Debian deb822-style control and copyright files ";
-    homepage = "https://github.com/nexB/debut";
-    license = with licenses; [ asl20 bsd3 mit ];
-    maintainers = teams.determinatesystems.members;
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/decopatch/default.nix b/nixpkgs/pkgs/development/python-modules/decopatch/default.nix
new file mode 100644
index 000000000000..7fa3c6465db4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/decopatch/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, makefun
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "decopatch";
+  version = "1.4.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0i6i811s2j1z0cl6y177dwsbfxib8dvb5c2jpgklvc2xy4ahhsy6";
+  };
+
+  nativeBuildInputs = [ setuptools-scm ];
+
+  propagatedBuildInputs = [ makefun ];
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "'pytest-runner', " ""
+  '';
+
+  # Tests would introduce multiple cirucular dependencies
+  # Affected: makefun, pytest-cases
+  doCheck = false;
+
+  pythonImportsCheck = [ "decopatch" ];
+
+  meta = with lib; {
+    description = "Python helper for decorators";
+    homepage = "https://github.com/smarie/python-decopatch";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/deepdiff/default.nix b/nixpkgs/pkgs/development/python-modules/deepdiff/default.nix
index 83140ff0bb00..e414d8633502 100644
--- a/nixpkgs/pkgs/development/python-modules/deepdiff/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/deepdiff/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "deepdiff";
-  version = "5.3.0";
+  version = "5.5.0";
   format = "setuptools";
 
   # pypi source does not contain all fixtures required for tests
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "seperman";
     repo = "deepdiff";
     rev = version;
-    sha256 = "1izw2qpd93nj948zakamjn7q7dlmmr7sapg0c65hxvs0nmij8sl4";
+    sha256 = "sha256-PQijGub0sAW0aBYI+Ir89SraXaWx7OcQ+txZSqodJ6w=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/deepmerge/default.nix b/nixpkgs/pkgs/development/python-modules/deepmerge/default.nix
index c29737595af8..da4b72d2ff49 100644
--- a/nixpkgs/pkgs/development/python-modules/deepmerge/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/deepmerge/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "deepmerge";
-  version = "0.2.1";
+  version = "0.3.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "082bvlk65pkf9qzkzzl8fq7s6zfz1b2v5pcb0ikwg1nx0xspggaz";
+    sha256 = "1zfl8rkw98vj7jdpb29ably50x46pq6pazhrkrczndf5jc97zzgn";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/defusedxml/default.nix b/nixpkgs/pkgs/development/python-modules/defusedxml/default.nix
index c39ca96bfe17..6ac1bab0845e 100644
--- a/nixpkgs/pkgs/development/python-modules/defusedxml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/defusedxml/default.nix
@@ -1,14 +1,12 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
 , python
 }:
 
 buildPythonPackage rec {
   pname = "defusedxml";
   version = "0.7.1";
-  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/nixpkgs/pkgs/development/python-modules/delorean/default.nix b/nixpkgs/pkgs/development/python-modules/delorean/default.nix
new file mode 100644
index 000000000000..3435b461d09b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/delorean/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, Babel
+, humanize
+, python-dateutil
+, tzlocal
+}:
+
+buildPythonPackage rec {
+  pname = "Delorean";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0d31ay7yq2w7xz7m3ssk5phjbm64b2k8hmgcif22719k29p7hrzy";
+  };
+
+  propagatedBuildInputs = [ Babel humanize python-dateutil tzlocal ];
+
+  pythonImportsCheck = [ "delorean" ];
+
+  # test data not included
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Delorean: Time Travel Made Easy";
+    homepage = "https://github.com/myusuf3/delorean";
+    license = licenses.mit;
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/deltachat/default.nix b/nixpkgs/pkgs/development/python-modules/deltachat/default.nix
new file mode 100644
index 000000000000..ffa9b8d7d63a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/deltachat/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, isPy27
+, fetchpatch
+, setuptools-scm
+, libdeltachat
+, cffi
+, IMAPClient
+, pluggy
+, requests
+, setuptools
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "deltachat";
+  inherit (libdeltachat) version src;
+  sourceRoot = "${src.name}/python";
+
+  disabled = isPy27;
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  buildInputs = [
+    libdeltachat
+  ];
+
+  propagatedBuildInputs = [
+    cffi
+    IMAPClient
+    pluggy
+    requests
+    setuptools
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "deltachat"
+    "deltachat.account"
+    "deltachat.contact"
+    "deltachat.chat"
+    "deltachat.message"
+  ];
+
+  meta = with lib; {
+    description = "Python bindings for the Delta Chat Core library";
+    homepage = "https://github.com/deltachat/deltachat-core-rust/tree/master/python";
+    changelog = "https://github.com/deltachat/deltachat-core-rust/blob/${version}/python/CHANGELOG";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/dendropy/default.nix b/nixpkgs/pkgs/development/python-modules/dendropy/default.nix
index 05737ecf9a86..be1b705dc02b 100644
--- a/nixpkgs/pkgs/development/python-modules/dendropy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dendropy/default.nix
@@ -1,38 +1,40 @@
 { lib
-, pkgs
 , buildPythonPackage
 , fetchFromGitHub
-, pytest
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
-  pname   = "DendroPy";
-  version = "4.4.0";
+  pname = "dendropy";
+  version = "4.5.1";
 
-  # tests are incorrectly packaged in pypi version
   src = fetchFromGitHub {
     owner = "jeetsukumaran";
     repo = pname;
     rev = "v${version}";
-    sha256 = "097hfyv2kaf4x92i4rjx0paw2cncxap48qivv8zxng4z7nhid0x9";
+    sha256 = "sha256-FP0+fJkkFtSysPxoHXjyMgF8pPin7aRyzmHe9bH8LlM=";
   };
 
-  preCheck = ''
-    # Needed for unicode python tests
-    export LC_ALL="en_US.UTF-8"
-    cd tests  # to find the 'support' module
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  checkInputs = [ pytest pkgs.glibcLocales ];
+  disabledTests = [
+    # FileNotFoundError: [Errno 2] No such file or directory: 'paup'
+    "test_basic_split_count_with_incorrect_rootings_raises_error"
+    "test_basic_split_count_with_incorrect_weight_treatment_raises_error"
+    "test_basic_split_counting_under_different_rootings"
+    "test_group1"
+    # AssertionError: 6 != 5
+    "test_by_num_lineages"
+  ];
 
-  checkPhase = ''
-    pytest -k 'not test_dataio_nexml_reader_tree_list and not test_pscores_with'
-  '';
+  pythonImportsCheck = [ "dendropy" ];
 
-  meta = {
+  meta = with lib; {
+    description = "Python library for phylogenetic computing";
     homepage = "https://dendropy.org/";
-    description = "A Python library for phylogenetic computing";
-    maintainers = with lib.maintainers; [ unode ];
-    license = lib.licenses.bsd3;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ unode ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/denonavr/default.nix b/nixpkgs/pkgs/development/python-modules/denonavr/default.nix
index b02e1e498b9d..e4e36a196fe0 100644
--- a/nixpkgs/pkgs/development/python-modules/denonavr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/denonavr/default.nix
@@ -1,33 +1,51 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy27, requests, netifaces
-, pytestCheckHook, testtools, requests-mock }:
+{ lib
+, asyncstdlib
+, attrs
+, buildPythonPackage
+, defusedxml
+, fetchFromGitHub
+, httpx
+, netifaces
+, pytest-asyncio
+, pytestCheckHook
+, pytest-httpx
+, pytest-timeout
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "denonavr";
-  version = "0.9.10";
-  disabled = isPy27;
+  version = "0.10.8";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "scarface-4711";
-    repo = "denonavr";
+    repo = pname;
     rev = version;
-    sha256 = "sha256-3ap8F3ayBTpaR98md+gT0+hkIWlFBNxStTGWT5AL//A=";
+    sha256 = "02q76mbmg2rkm4shy2apwbw9pvicy9j5v4zgpjwzxif9yf7m8aqk";
   };
 
   propagatedBuildInputs = [
-    requests
+    asyncstdlib
+    attrs
+    defusedxml
+    httpx
     netifaces
   ];
 
   checkInputs = [
+    pytest-asyncio
     pytestCheckHook
-    testtools
-    requests-mock
+    pytest-httpx
+    pytest-timeout
   ];
 
+  pythonImportsCheck = [ "denonavr" ];
+
   meta = with lib; {
+    description = "Automation Library for Denon AVR receivers";
     homepage = "https://github.com/scarface-4711/denonavr";
-    description = "Automation Library for Denon AVR receivers.";
-    license = licenses.mit;
+    license = with licenses; [ mit ];
     maintainers = with maintainers; [ colemickens ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix b/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix
index 9c977ecc5f0c..8958566070ed 100644
--- a/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix
@@ -1,27 +1,53 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, six, unittest2, pyyaml, flask }:
-
-let
-  testPath =
-    if isPy3k
-    then "test_*_py3.py"
-    else "test_*_py2_py3.py";
-in
+{ lib
+, aiohttp
+, buildPythonPackage
+, fastapi
+, fetchFromGitHub
+, flask
+, httpx
+, mypy-boto3-s3
+, numpy
+, scipy
+, pydantic
+, pytestCheckHook
+, pyyaml
+, six
+}:
 
 buildPythonPackage rec {
   pname = "dependency-injector";
-  version = "4.31.1";
+  version = "4.32.2";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b6b28b9571f44d575367c6005ba8aaa9fd2b70310e1c15410925d6f1ee2769ad";
+  src = fetchFromGitHub {
+    owner = "ets-labs";
+    repo = "python-dependency-injector";
+    rev = version;
+    sha256 = "1gkkka0hl2hl4axf3gfm58mzv92bg0frr5jikw8g32hd4q4aagcg";
   };
 
-  propagatedBuildInputs = [ six ];
-  checkInputs = [ unittest2 pyyaml flask ];
+  propagatedBuildInputs = [
+    six
+  ];
+
+  checkInputs = [
+    aiohttp
+    fastapi
+    flask
+    httpx
+    mypy-boto3-s3
+    numpy
+    pydantic
+    scipy
+    pytestCheckHook
+    pyyaml
+  ];
+
+  disabledTestPaths = [
+    # There is no unique identifier to disable the one failing test
+    "tests/unit/ext/test_aiohttp_py35.py"
+  ];
 
-  checkPhase = ''
-    unit2 discover -s tests/unit -p "${testPath}"
-  '';
+  pythonImportsCheck = [ "dependency_injector" ];
 
   meta = with lib; {
     description = "Dependency injection microframework for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/dftfit/default.nix b/nixpkgs/pkgs/development/python-modules/dftfit/default.nix
index 73791bdaa9a6..778b8c3d9843 100644
--- a/nixpkgs/pkgs/development/python-modules/dftfit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dftfit/default.nix
@@ -8,7 +8,7 @@
 , pandas
 , scipy
 , numpy
-, scikitlearn
+, scikit-learn
 , lammps-cython
 , pymatgen-lammps
 , pytestrunner
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     pandas
     scipy
     numpy
-    scikitlearn
+    scikit-learn
     lammps-cython
     pymatgen-lammps
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/diofant/default.nix b/nixpkgs/pkgs/development/python-modules/diofant/default.nix
index c473f2fb4200..f99e17137de9 100644
--- a/nixpkgs/pkgs/development/python-modules/diofant/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/diofant/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytestrunner
-, setuptools_scm
+, setuptools-scm
 , isort
 , mpmath
 , strategies
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     isort
     pytestrunner
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/discordpy/default.nix b/nixpkgs/pkgs/development/python-modules/discordpy/default.nix
index d4f742d97f5b..3fb5e7ae55e4 100644
--- a/nixpkgs/pkgs/development/python-modules/discordpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/discordpy/default.nix
@@ -5,25 +5,23 @@
 , libopus
 , pynacl
 , pythonOlder
-, websockets
 , withVoice ? true
 }:
 
 buildPythonPackage rec {
   pname = "discord.py";
-  version = "1.7.1";
+  version = "1.7.2";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "Rapptz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dpASIqe6rJEyiWJyPbQhq9M54lX1ilfp4UuGnbJcFLo=";
+    sha256 = "sha256-NY1/RKp8w9gAqGYXnCNhNZqR/inGMvUvxjJ1MMs62B8=";
   };
 
   propagatedBuildInputs = [
     aiohttp
-    websockets
   ] ++ lib.optionalString withVoice [
     libopus
     pynacl
diff --git a/nixpkgs/pkgs/development/python-modules/distro/default.nix b/nixpkgs/pkgs/development/python-modules/distro/default.nix
index 16d26e741aa9..885538de65ce 100644
--- a/nixpkgs/pkgs/development/python-modules/distro/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/distro/default.nix
@@ -18,6 +18,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/nir0s/distro";
     description = "Linux Distribution - a Linux OS platform information API.";
     license = licenses.asl20;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/django-anymail/default.nix b/nixpkgs/pkgs/development/python-modules/django-anymail/default.nix
index 6f1d81c9287a..9b5c8e1d00b5 100644
--- a/nixpkgs/pkgs/development/python-modules/django-anymail/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-anymail/default.nix
@@ -42,6 +42,6 @@ buildPythonPackage rec {
     description = "Django email backends and webhooks for Mailgun";
     homepage = "https://github.com/anymail/django-anymail";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/django-configurations/default.nix b/nixpkgs/pkgs/development/python-modules/django-configurations/default.nix
index b6b736e92383..de01f4f70417 100644
--- a/nixpkgs/pkgs/development/python-modules/django-configurations/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-configurations/default.nix
@@ -9,7 +9,7 @@
 , django-cache-url
 , six
 , django
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "9e3bcea1355ac50a4c9f854f751d214cb17e5f8adf18405a4488d0a1e8945915";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six ];
   checkInputs = [ django-discover-runner mock dj-database-url dj-email-url dj-search-url django-cache-url ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/django-cors-headers/default.nix b/nixpkgs/pkgs/development/python-modules/django-cors-headers/default.nix
index 1bc9153d0063..ace1dc4f2de5 100644
--- a/nixpkgs/pkgs/development/python-modules/django-cors-headers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-cors-headers/default.nix
@@ -30,6 +30,6 @@ buildPythonPackage rec {
     description = "Django app for handling server Cross-Origin Resource Sharing (CORS) headers";
     homepage = "https://github.com/OttoYiu/django-cors-headers";
     license = licenses.mit;
-    maintainers = [ maintainers.ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/django-haystack/default.nix b/nixpkgs/pkgs/development/python-modules/django-haystack/default.nix
index 7342aa3300c4..2c678e672a3e 100644
--- a/nixpkgs/pkgs/development/python-modules/django-haystack/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-haystack/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools, setuptools_scm, django, dateutil, whoosh, pysolr
+, setuptools, setuptools-scm, django, dateutil, whoosh, pysolr
 , coverage, mock, nose, geopy, requests }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   checkInputs = [ pysolr whoosh dateutil geopy coverage nose mock coverage requests ];
   propagatedBuildInputs = [ django setuptools ];
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   postPatch = ''
     sed -i 's/geopy==/geopy>=/' setup.py
diff --git a/nixpkgs/pkgs/development/python-modules/django-pipeline/default.nix b/nixpkgs/pkgs/development/python-modules/django-pipeline/default.nix
deleted file mode 100644
index 92aefe4a408b..000000000000
--- a/nixpkgs/pkgs/development/python-modules/django-pipeline/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy3k
-, django, futures ? null, mock ? null, jinja2, jsmin, slimit }:
-
-buildPythonPackage rec {
-  pname = "django-pipeline";
-  version = "1.6.14";
-
-  # no tests on PyPI
-  src = fetchFromGitHub {
-    owner = "jazzband";
-    repo = pname;
-    rev = version;
-    sha256 = "1xf732bd17mgha75jfhlnms46ib2pffhpfa0ca7bmng9jhbvsl9j";
-  };
-
-  postPatch = ''
-    substituteInPlace tests/tests/test_compiler.py \
-      --replace "/usr/bin/env" ""
-  '';
-
-  propagatedBuildInputs = [ django ] ++ lib.optional (!isPy3k) futures;
-
-  checkInputs = [ jinja2 jsmin slimit ] ++ lib.optional (!isPy3k) mock;
-
-  checkPhase = ''
-    export PYTHONPATH=.:$PYTHONPATH
-    export DJANGO_SETTINGS_MODULE=tests.settings
-    ${django}/bin/django-admin.py test tests
-  '';
-
-  meta = with lib; {
-    description = "Pipeline is an asset packaging library for Django";
-    homepage = "https://github.com/cyberdelia/django-pipeline";
-    license = licenses.mit;
-    broken = true;
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/django-rest-auth/default.nix b/nixpkgs/pkgs/development/python-modules/django-rest-auth/default.nix
index 9e11c2b6a03e..e04581b3574b 100644
--- a/nixpkgs/pkgs/development/python-modules/django-rest-auth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-rest-auth/default.nix
@@ -24,6 +24,6 @@ buildPythonPackage rec {
     description = "Django app that makes registration and authentication easy";
     homepage = "https://github.com/Tivix/django-rest-auth";
     license = licenses.mit;
-    maintainers = [ maintainers.ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/django/2.nix b/nixpkgs/pkgs/development/python-modules/django/2.nix
index 991c353df179..e0d3cd12f8fd 100644
--- a/nixpkgs/pkgs/development/python-modules/django/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/django/2.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "Django";
-  version = "2.2.20";
+  version = "2.2.22";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0r3a6gbhwngxl172yy6n0sq5knibl2vxc0wbk1g8licfbzfgjs95";
+    sha256 = "db2214db1c99017cbd971e58824e6f424375154fe358afc30e976f5b99fc6060";
   };
 
   patches = lib.optional withGdal
diff --git a/nixpkgs/pkgs/development/python-modules/django/3.nix b/nixpkgs/pkgs/development/python-modules/django/3.nix
index 62ca390eac5b..321582946b3b 100644
--- a/nixpkgs/pkgs/development/python-modules/django/3.nix
+++ b/nixpkgs/pkgs/development/python-modules/django/3.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "Django";
-  version = "3.2";
+  version = "3.2.2";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "179qdxa438fnycnnf1j5z6359h1kbp2q7djf01v5jrr26xjgkw11";
+    sha256 = "0a1d195ad65c52bf275b8277b3d49680bd1137a5f55039a806f25f6b9752ce3d";
   };
 
   patches = lib.optional withGdal
diff --git a/nixpkgs/pkgs/development/python-modules/djangorestframework-jwt/default.nix b/nixpkgs/pkgs/development/python-modules/djangorestframework-jwt/default.nix
deleted file mode 100644
index 643218242d79..000000000000
--- a/nixpkgs/pkgs/development/python-modules/djangorestframework-jwt/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, fetchPypi
-, django
-, pyjwt
-, djangorestframework
-, buildPythonPackage
-}:
-
-buildPythonPackage rec {
-  pname = "djangorestframework-jwt";
-  version = "1.11.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "19rng6v1sw14mbjp5cplnrgxjnhlj8faalfw02iihi9s5w1k7zjy";
-  };
-
-  propagatedBuildInputs = [ pyjwt django djangorestframework ];
-
-  # ./runtests.py fails because the project must be tested against a django
-  # installation, there are missing database tables for User, that don't exist.
-  doCheck = false;
-
-  meta = with lib; {
-    description = "JSON Web Token Authentication support for Django REST Framework";
-    homepage = "https://github.com/GetBlimp/django-rest-framework-jwt";
-    license = licenses.mit;
-    maintainers = [ maintainers.ivegotasthma ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/dnspython/1.nix b/nixpkgs/pkgs/development/python-modules/dnspython/1.nix
index 30f280a5029e..5ff02c043380 100644
--- a/nixpkgs/pkgs/development/python-modules/dnspython/1.nix
+++ b/nixpkgs/pkgs/development/python-modules/dnspython/1.nix
@@ -1,4 +1,8 @@
-{ buildPythonPackage, fetchPypi, lib, pythonOlder }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "dnspython";
@@ -12,11 +16,11 @@ buildPythonPackage rec {
 
   # needs networking for some tests
   doCheck = false;
+  pythonImportsCheck = [ "dns" ];
 
-  meta = {
-    description = "A DNS toolkit for Python 3.x";
+  meta = with lib; {
+    description = "A DNS toolkit for Python";
     homepage = "http://www.dnspython.org";
-    # BSD-like, check https://www.dnspython.org/LICENSE for details
-    license = lib.licenses.free;
+    license = with licenses; [ isc ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/dnspython/default.nix b/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
index afb85fb61f57..56e69aac0443 100644
--- a/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
@@ -1,4 +1,8 @@
-{ buildPythonPackage, fetchPypi, lib, pythonOlder }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "dnspython";
@@ -13,11 +17,11 @@ buildPythonPackage rec {
 
   # needs networking for some tests
   doCheck = false;
+  pythonImportsCheck = [ "dns" ];
 
-  meta = {
-    description = "A DNS toolkit for Python 3.x";
+  meta = with lib; {
+    description = "A DNS toolkit for Python";
     homepage = "http://www.dnspython.org";
-    # BSD-like, check https://www.dnspython.org/LICENSE for details
-    license = lib.licenses.free;
+    license = with licenses; [ isc ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/dogtail/default.nix b/nixpkgs/pkgs/development/python-modules/dogtail/default.nix
index 4981440c7ccd..808c2916ddd9 100644
--- a/nixpkgs/pkgs/development/python-modules/dogtail/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dogtail/default.nix
@@ -10,7 +10,7 @@
 , gsettings-desktop-schemas
 , fetchurl
 , dbus
-, xvfb_run
+, xvfb-run
 , wrapGAppsHook
 # , fetchPypi
 }:
@@ -33,7 +33,7 @@ buildPythonPackage {
     ./nix-support.patch
   ];
 
-  nativeBuildInputs = [ gobject-introspection dbus xvfb_run wrapGAppsHook ]; # for setup hooks
+  nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks
   propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ];
   strictDeps = false; # issue 56943
 
diff --git a/nixpkgs/pkgs/development/python-modules/dotmap/default.nix b/nixpkgs/pkgs/development/python-modules/dotmap/default.nix
new file mode 100644
index 000000000000..cb5f032a6f26
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/dotmap/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "dotmap";
+  version = "1.3.23";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0hy88kzzb7zhxfr7iyvl6rhmvz02538pbna7zypaard4a88bbbka";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "dotmap/test.py" ];
+
+  pythonImportsCheck = [ "dotmap" ];
+
+  meta = with lib; {
+    description = "Python for dot-access dictionaries";
+    homepage = "https://github.com/drgrib/dotmap";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/dotty-dict/default.nix b/nixpkgs/pkgs/development/python-modules/dotty-dict/default.nix
index 22d469b96693..a2af0920da9e 100644
--- a/nixpkgs/pkgs/development/python-modules/dotty-dict/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dotty-dict/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "sha256-6wA1o2KezYQ5emjx9C8elKvRw0V3oZzT6srTMe58uvA=";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/drf-jwt/default.nix b/nixpkgs/pkgs/development/python-modules/drf-jwt/default.nix
new file mode 100644
index 000000000000..2cf125c8df35
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/drf-jwt/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pyjwt
+, djangorestframework
+}:
+
+buildPythonPackage rec {
+  pname = "drf-jwt";
+  version = "1.19.1";
+
+  src = fetchFromGitHub {
+    owner = "Styria-Digital";
+    repo = "django-rest-framework-jwt";
+    rev = version;
+    sha256 = "sha256-++8rFXVsA5WMTt+aC4di3Rpa0BAW285/qM087i9uQ0g=";
+  };
+
+  propagatedBuildInputs = [
+    pyjwt
+    djangorestframework
+  ];
+
+  # requires setting up a django instance
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "rest_framework_jwt"
+    "rest_framework_jwt.blacklist"
+    # require setting DJANGO_SETTINGS_MODULE
+    # "rest_framework_jwt.authentication"
+    # "rest_framework_jwt.blacklist.views"
+    # "rest_framework_jwt.settings"
+    # "rest_framework_jwt.utils"
+    # "rest_framework_jwt.views"
+  ];
+
+  meta = with lib; {
+    description = "JSON Web Token based authentication for Django REST framework";
+    homepage = "https://github.com/Styria-Digital/django-rest-framework-jwt";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/drf-nested-routers/default.nix b/nixpkgs/pkgs/development/python-modules/drf-nested-routers/default.nix
index d265838526da..db0212e45697 100644
--- a/nixpkgs/pkgs/development/python-modules/drf-nested-routers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/drf-nested-routers/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "drf-nested-routers";
-  version = "0.92.5";
+  version = "0.93.3";
 
   src = fetchFromGitHub {
     owner = "alanjds";
     repo = "drf-nested-routers";
     rev = "v${version}";
-    sha256 = "1l1jza8xz6xcm3gwxh1k6pc8fs95cq3v751gxj497y1a83d26j8i";
+    sha256 = "1gmw6gwiqzfysx8qn7aan7xgkizxy64db94z30pm3bvn6jxv08si";
   };
 
   propagatedBuildInputs = [ django djangorestframework setuptools ];
diff --git a/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix b/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
index ab1d551fea35..45842fb809cc 100644
--- a/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , inflection
 , ruamel_yaml
-, setuptools_scm
+, setuptools-scm
 , six
 , coreapi
 , djangorestframework
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
@@ -52,7 +52,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Generation of Swagger/OpenAPI schemas for Django REST Framework";
     homepage = "https://github.com/axnsan12/drf-yasg";
-    maintainers = with maintainers; [ ivegotasthma ];
+    maintainers = with maintainers; [ ];
     license = licenses.bsd3;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/duckdb/default.nix b/nixpkgs/pkgs/development/python-modules/duckdb/default.nix
index 56fb450b3e5d..4a4dd279a52e 100644
--- a/nixpkgs/pkgs/development/python-modules/duckdb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/duckdb/default.nix
@@ -4,7 +4,7 @@
 , numpy
 , pandas
 , pybind11
-, setuptools_scm
+, setuptools-scm
 , pytestrunner
 , pytestCheckHook
 }:
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     pybind11
-    setuptools_scm
+    setuptools-scm
     pytestrunner
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
index 9c7f62edf11a..a9af41c499d7 100644
--- a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
@@ -8,25 +8,38 @@
 , geventhttpclient
 , git
 , glibcLocales
+, gpgme
 , mock
+, pkgs
 , urllib3
 }:
 
 buildPythonPackage rec {
-  version = "0.20.21";
+  version = "0.20.23";
   pname = "dulwich";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-rHZMmpuA+mGv40BNUnDFBgqlf38IexGpU5XTt287cf0=";
+    sha256 = "sha256-QC5WtcB/BAR50RiOXC9AbiwAaqOUMIAVXUxtBeX8qGU=";
   };
 
   LC_ALL = "en_US.UTF-8";
 
-  propagatedBuildInputs = [ urllib3 certifi ];
-
-  # Only test dependencies
-  checkInputs = [ git glibcLocales gevent geventhttpclient mock fastimport ];
+  propagatedBuildInputs = [
+    certifi
+    urllib3
+  ];
+
+  checkInputs = [
+    fastimport
+    gevent
+    geventhttpclient
+    git
+    glibcLocales
+    gpgme
+    pkgs.gnupg
+    mock
+  ];
 
   doCheck = !stdenv.isDarwin;
 
diff --git a/nixpkgs/pkgs/development/python-modules/dwdwfsapi/default.nix b/nixpkgs/pkgs/development/python-modules/dwdwfsapi/default.nix
index 6699050035d0..1a68e7474af0 100644
--- a/nixpkgs/pkgs/development/python-modules/dwdwfsapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dwdwfsapi/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "dwdwfsapi";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-PX1b1msaZH8HKVBo3GU7TOr8Lo7INLjjJBkDHHs6mzk=";
+    sha256 = "sha256-JOIg6rLrU8v39z1I6smIPEeiUPdSdJcD2avUsTQq+bU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/elementpath/default.nix b/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
index c98937804a31..3bb9269d460b 100644
--- a/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27 }:
 
 buildPythonPackage rec {
-  version = "2.2.1";
+  version = "2.2.2";
   pname = "elementpath";
   disabled = isPy27; # uses incompatible class syntax
 
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "v${version}";
-    sha256 = "15yjl18n81zddd27789mcy12gnja3cqycjdykybwgd9i0ysj96gl";
+    sha256 = "sha256-n4zIn2WmFHaVaah2J0mz7Q6G4Ptb8Ms0dwQYbh0Ofcs=";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/nixpkgs/pkgs/development/python-modules/elevate/default.nix b/nixpkgs/pkgs/development/python-modules/elevate/default.nix
new file mode 100644
index 000000000000..cfb1dbf068dc
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/elevate/default.nix
@@ -0,0 +1,35 @@
+{ lib, fetchPypi, buildPythonPackage, fetchpatch, setuptools-scm }:
+
+buildPythonPackage rec {
+  pname = "elevate";
+  version = "0.1.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "53ad19fa1de301fb1de3f8768fb3a5894215716fd96a475690c4d0ff3b1de209";
+  };
+
+  patches = [
+    (fetchpatch {
+    # This is for not calling shell wrappers through Python, which fails.
+    url = "https://github.com/rkitover/elevate/commit/148b2bf698203ea39c9fe5d635ecd03cd94051af.patch";
+    sha256 = "1ky3z1jxl1g28wbwbx8qq8jgx8sa8pr8s3fdcpdhdx1blw28cv61";
+    })
+  ];
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  # No tests included
+  doCheck = false;
+
+  pythonImportsCheck = [ "elevate" ];
+
+  meta = with lib; {
+    description = "Python module for re-launching the current process as super-user";
+    homepage = "https://github.com/barneygale/elevate";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rkitover ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/elmax/default.nix b/nixpkgs/pkgs/development/python-modules/elmax/default.nix
index 7ec3b8d1c112..775050acb0c9 100644
--- a/nixpkgs/pkgs/development/python-modules/elmax/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/elmax/default.nix
@@ -4,12 +4,15 @@
 , httpx
 , poetry-core
 , pythonOlder
+, pytest-asyncio
+, pytest-httpx
+, pytestCheckHook
 , yarl
 }:
 
 buildPythonPackage rec {
   pname = "elmax";
-  version = "0.1.1";
+  version = "0.1.2";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -17,7 +20,7 @@ buildPythonPackage rec {
     owner = "home-assistant-ecosystem";
     repo = "python-elmax";
     rev = version;
-    sha256 = "sha256-vDISJ/CVOjpM+GPF2TCm3/AMFTWTM0b/+ZPCpAEvNvY=";
+    sha256 = "sha256-Aq/OHxOmtUUmBNlFPu892C8AkTX+Ee0oca7D79InPXQ=";
   };
 
   nativeBuildInputs = [ poetry-core ];
@@ -27,8 +30,12 @@ buildPythonPackage rec {
     yarl
   ];
 
-  # Project has no tests
-  doCheck = false;
+  checkInputs = [
+    pytest-asyncio
+    pytest-httpx
+    pytestCheckHook
+  ];
+
   pythonImportsCheck = [ "elmax" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/enaml/default.nix b/nixpkgs/pkgs/development/python-modules/enaml/default.nix
index 1102443884f7..8896c5c706a6 100644
--- a/nixpkgs/pkgs/development/python-modules/enaml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/enaml/default.nix
@@ -5,7 +5,7 @@
 , ply
 , kiwisolver
 , qtpy
-, sip
+, sip_4
 , cppy
 , bytecode
 }:
@@ -44,7 +44,7 @@ buildPythonPackage rec {
     ply
     kiwisolver
     qtpy
-    sip
+    sip_4
     cppy
     bytecode
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/envoy-reader/default.nix b/nixpkgs/pkgs/development/python-modules/envoy-reader/default.nix
new file mode 100644
index 000000000000..d72db523a21c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/envoy-reader/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, httpx
+, pytest-asyncio
+, pytest-raises
+, pytest-runner
+, pytestCheckHook
+, respx
+}:
+
+buildPythonPackage rec {
+  pname = "envoy-reader";
+  version = "0.19.0";
+
+  src = fetchFromGitHub {
+    owner = "jesserizzo";
+    repo = "envoy_reader";
+    rev = version;
+    sha256 = "0jyrgm7dc6k66c94gadc69a6xsv2b48wn3b3rbpwgbssi5s7iiz6";
+  };
+
+  nativeBuildInputs = [
+    pytest-runner
+  ];
+
+  propagatedBuildInputs = [
+    httpx
+  ];
+
+  checkInputs = [
+    pytest-raises
+    pytest-asyncio
+    pytestCheckHook
+    respx
+  ];
+
+  pythonImportsCheck = [ "envoy_reader" ];
+
+  meta = with lib; {
+    description = "Python module to read from Enphase Envoy units";
+    homepage = "https://github.com/jesserizzo/envoy_reader";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/eve/default.nix b/nixpkgs/pkgs/development/python-modules/eve/default.nix
index 32f531e4ff59..89db1ccad28d 100644
--- a/nixpkgs/pkgs/development/python-modules/eve/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/eve/default.nix
@@ -27,6 +27,11 @@ buildPythonPackage rec {
     setuptools
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "events>=0.3,<0.4" "events>=0.3,<0.5"
+  '';
+
   pythonImportsCheck = [ "eve" ];
 
   # tests call a running mongodb instance
diff --git a/nixpkgs/pkgs/development/python-modules/evohome-async/default.nix b/nixpkgs/pkgs/development/python-modules/evohome-async/default.nix
index 0f38faf57340..908d68dd27e9 100644
--- a/nixpkgs/pkgs/development/python-modules/evohome-async/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/evohome-async/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "evohome-async";
-  version = "0.3.8";
+  version = "0.3.15";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "zxdavb";
     repo = pname;
     rev = version;
-    sha256 = "04xy72k79cnb8pc19v5jzkc0djazfm6pbm10ysphx06ndwvxr9mn";
+    sha256 = "sha256-/dZRlcTcea26FEpw/XDItKh4ncr/eEFQcdfIE2KIMo8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix b/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
index 0cccedd54a91..bf9ae2284f7d 100644
--- a/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
@@ -3,8 +3,8 @@
   lxml, tzlocal, python-dateutil, pygments, requests-kerberos,
   defusedxml, cached-property, isodate, requests_ntlm, dnspython,
   psutil, requests-mock, pyyaml,
-  oauthlib, requests_oauthlib,
-  flake8,
+  oauthlib, requests_oauthlib, tzdata,
+  flake8, backports-zoneinfo
 }:
 
 buildPythonPackage rec {
@@ -24,9 +24,11 @@ buildPythonPackage rec {
     flake8
   ];
   propagatedBuildInputs = [
-    lxml tzlocal python-dateutil pygments requests-kerberos
+    lxml tzlocal tzdata python-dateutil pygments requests-kerberos
     defusedxml cached-property isodate requests_ntlm dnspython
     oauthlib requests_oauthlib
+  ] ++ lib.optionals (pythonOlder "3.9") [
+    backports-zoneinfo
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/execnet/default.nix b/nixpkgs/pkgs/development/python-modules/execnet/default.nix
index b66c8a28128c..57a4af2fc0c6 100644
--- a/nixpkgs/pkgs/development/python-modules/execnet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/execnet/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
     description = "Distributed Python deployment and communication";
     license = licenses.mit;
     homepage = "https://execnet.readthedocs.io/";
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix b/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix
new file mode 100644
index 000000000000..b0f1a16fe421
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchFromGitHub, antlr4-python3-runtime, pygments, python-igraph }:
+
+buildPythonPackage rec {
+  pname = "explorerscript";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "1vzyliiyrxx8l9sfbqcyr4xn5swd7znkxy69kn0vb5rban8hm9c1";
+  };
+
+  propagatedBuildInputs = [ antlr4-python3-runtime python-igraph ];
+  checkInputs = [ pygments ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/explorerscript";
+    description = "A programming language + compiler/decompiler for creating scripts for Pokémon Mystery Dungeon Explorers of Sky";
+    license = licenses.mit;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
index dadfc41c68bc..0f1c7ec6bdc3 100644
--- a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
@@ -17,19 +17,19 @@
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.63.0";
+  version = "0.65.0";
   format = "flit";
 
   src = fetchFromGitHub {
     owner = "tiangolo";
     repo = "fastapi";
     rev = version;
-    sha256 = "0l3imrcs42pqf9d6k8c1q15k5sqcnapl5zk71xl52mrxhz49lgpi";
+    sha256 = "sha256-DPfijCGORF3ThZblqaYTKN0H8+wlhtdIS8lfKfJl/bY=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "starlette ==0.13.6" "starlette"
+      --replace "starlette ==" "starlette >="
   '';
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/fastpair/default.nix b/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
index 9a3f8c53b1d3..eaf1a78520a2 100644
--- a/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
@@ -1,35 +1,28 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, pytest, scipy }:
+{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, pytest, scipy, pytestCheckHook }:
 
 buildPythonPackage {
   pname = "fastpair";
-  version = "2016-07-05";
+  version = "2021-05-19";
 
   src = fetchFromGitHub {
     owner = "carsonfarmer";
     repo = "fastpair";
-    rev = "92364962f6b695661f35a117bf11f96584128a8d";
-    sha256 = "1pv9sxycxdk567s5gs947rhlqngrb9nn9yh4dhdvg1ix1i8dca71";
+    rev = "d3170fd7e4d6e95312e7e1cb02e84077a3f06379";
+    sha256 = "1l8zgr8awg27lhlkpa2dsvghrb7b12jl1bkgpzg5q7pg8nizl9mx";
   };
 
   nativeBuildInputs = [ pytestrunner ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest pytestCheckHook ];
 
   propagatedBuildInputs = [
     scipy
   ];
 
-  # Does not support pytest 4 https://github.com/carsonfarmer/fastpair/issues/14
-  doCheck = false;
-
-  checkPhase = ''
-    pytest fastpair
-  '';
-
   meta = with lib; {
     homepage = "https://github.com/carsonfarmer/fastpair";
     description = "Data-structure for the dynamic closest-pair problem";
     license = licenses.mit;
-    maintainers = with maintainers; [ cmcdragonkai ];
+    maintainers = with maintainers; [ cmcdragonkai rakesh4g ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix b/nixpkgs/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix
new file mode 100644
index 000000000000..5d2641970721
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, colorama
+, tqdm
+, pytestCheckHook
+, ffmpeg
+}:
+
+buildPythonPackage rec {
+  pname = "ffmpeg-progress-yield";
+  version = "0.0.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "e944093e2c1b213da8fa4f0c276c1bad44e0b8ba8be7e4fd001f5132d16baef5";
+  };
+
+  propagatedBuildInputs = [ colorama tqdm ];
+
+  checkInputs = [ pytestCheckHook ffmpeg ];
+
+  pytestFlagsArray = [ "test/test.py" ];
+
+  pythonImportsCheck = [ "ffmpeg_progress_yield" ];
+
+  meta = with lib; {
+    description = "Run an ffmpeg command with progress";
+    homepage = "https://github.com/slhck/ffmpeg-progress-yield";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ prusnak ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix b/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
index 51b0060cb2d6..f845ca6a5d36 100644
--- a/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
@@ -2,9 +2,9 @@
 , buildPythonPackage
 , fetchFromGitHub
 , substituteAll
-, ffmpeg_3
+, pytestCheckHook
+, ffmpeg
 , future
-, pytest
 , pytestrunner
 , pytest-mock
 }:
@@ -21,23 +21,20 @@ buildPythonPackage rec {
   };
 
   patches = [
-    (
-      substituteAll {
-        src = ./ffmpeg-location.patch;
-        ffmpeg = ffmpeg_3;
-      }
-    )
+    (substituteAll {
+      src = ./ffmpeg-location.patch;
+      inherit ffmpeg;
+    })
   ];
 
   buildInputs = [ pytestrunner ];
   propagatedBuildInputs = [ future ];
-  checkInputs = [ pytest pytest-mock ];
+  checkInputs = [ pytestCheckHook pytest-mock ];
 
   meta = with lib; {
     description = "Python bindings for FFmpeg - with complex filtering support";
     homepage = "https://github.com/kkroening/ffmpeg-python";
     license = licenses.asl20;
     maintainers = [ maintainers.AluisioASG ];
-    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/fiona/default.nix b/nixpkgs/pkgs/development/python-modules/fiona/default.nix
index 42f1a410624c..7318d1dc5113 100644
--- a/nixpkgs/pkgs/development/python-modules/fiona/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fiona/default.nix
@@ -1,27 +1,27 @@
 { stdenv, lib, buildPythonPackage, fetchPypi, isPy3k, pythonOlder
 , attrs, click, cligj, click-plugins, six, munch, enum34
-, pytest, boto3, mock, giflib, pytz
-, gdal_2 # can't bump to 3 yet, https://github.com/Toblerity/Fiona/issues/745
+, pytestCheckHook, boto3, mock, giflib, pytz
+, gdal
 , certifi
 }:
 
 buildPythonPackage rec {
   pname = "Fiona";
-  version = "1.8.18";
+  version = "1.8.19";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b732ece0ff8886a29c439723a3e1fc382718804bb057519d537a81308854967a";
+    sha256 = "b9059e0b29c2e9e6b817e53f941e77e1aca7075f986005d38db307067b60458f";
   };
 
   CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
 
   nativeBuildInputs = [
-    gdal_2 # for gdal-config
+    gdal # for gdal-config
   ];
 
   buildInputs = [
-    gdal_2
+    gdal
   ] ++ lib.optionals stdenv.cc.isClang [ giflib ];
 
   propagatedBuildInputs = [
@@ -36,16 +36,19 @@ buildPythonPackage rec {
   ] ++ lib.optional (!isPy3k) enum34;
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     boto3
   ] ++ lib.optional (pythonOlder "3.4") mock;
 
-  checkPhase = ''
+  preCheck = ''
     rm -r fiona # prevent importing local fiona
-    # Some tests access network, others test packaging
-    pytest -k "not (http or https or wheel)"
   '';
 
+  disabledTests = [
+    # Some tests access network, others test packaging
+    "http" "https" "wheel"
+  ];
+
   meta = with lib; {
     description = "OGR's neat, nimble, no-nonsense API for Python";
     homepage = "https://fiona.readthedocs.io/";
diff --git a/nixpkgs/pkgs/development/python-modules/flametree/default.nix b/nixpkgs/pkgs/development/python-modules/flametree/default.nix
index d4cba69afcb0..b4311eeb7cd6 100644
--- a/nixpkgs/pkgs/development/python-modules/flametree/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flametree/default.nix
@@ -1,25 +1,45 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, fontconfig
+, matplotlib
+, pandas
+, pytestCheckHook
+, weasyprint
 }:
 
 buildPythonPackage rec {
   pname = "flametree";
   version = "0.1.11";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "c8eb81dea8c7f8261a2aa03d2bac98b1d21ebceec9c67efaac423f7c1b4fe061";
+  src = fetchFromGitHub {
+    owner = "Edinburgh-Genome-Foundry";
+    repo = "Flametree";
+    rev = "v${version}";
+    sha256 = "1ynrk1ivl1vjiga0ayl8k89vs5il7i0pf9jz2ycn771c47szwk4x";
   };
 
-  # no tests in tarball
-  doCheck = false;
+  checkInputs = [
+    matplotlib
+    pandas
+    pytestCheckHook
+    weasyprint
+  ];
+
+  preCheck = ''
+    export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf
+  '';
+
+  disabledTests = [
+    # AssertionError, https://github.com/Edinburgh-Genome-Foundry/Flametree/issues/9
+    "test_weasyprint"
+  ];
 
   pythonImportsCheck = [ "flametree" ];
 
   meta = with lib; {
-    homepage = "https://github.com/Edinburgh-Genome-Foundry/Flametree";
     description = "Python file and zip operations made easy";
+    homepage = "https://github.com/Edinburgh-Genome-Foundry/Flametree";
     license = licenses.mit;
     maintainers = with maintainers; [ prusnak ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
index 6e98f6e80ac5..f39393ecff7a 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
@@ -1,11 +1,11 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, nose
 , apispec
 , colorama
 , click
 , email_validator
+, fetchpatch
 , flask
 , flask-babel
 , flask_login
@@ -20,21 +20,28 @@
 , python-dateutil
 , prison
 , pyjwt
+, pyyaml
 , sqlalchemy-utils
 }:
 
 buildPythonPackage rec {
   pname = "flask-appbuilder";
-  version = "3.1.1";
+  version = "3.3.0";
 
   src = fetchPypi {
     pname = "Flask-AppBuilder";
     inherit version;
-    sha256 = "076b020b0ba125339a2e710e74eab52648cde2b18599f7cb0fa1eada9bbb648c";
+    sha256 = "00dsfv1apl6483wy20aj91f9h5ak2casbx5vcajv2nd3i7c7v8gx";
   };
 
-  checkInputs = [
-    nose
+  patches = [
+    # https://github.com/dpgaspar/Flask-AppBuilder/pull/1610
+    (fetchpatch {
+      name = "flask_jwt_extended-and-pyjwt-patch";
+      url = "https://github.com/dpgaspar/Flask-AppBuilder/commit/7097a7b133f27c78d2b54d2a46e4a4c24478a066.patch";
+      sha256 = "sha256-ZpY8+2Hoz3z01GVtw2OIbQcsmAwa7iwilFWzgcGhY1w=";
+      includes = [ "flask_appbuilder/security/manager.py" "setup.py" ];
+    })
   ];
 
   propagatedBuildInputs = [
@@ -56,22 +63,23 @@ buildPythonPackage rec {
     python-dateutil
     prison
     pyjwt
+    pyyaml
     sqlalchemy-utils
   ];
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "apispec[yaml]>=3.3, <4" "apispec" \
-      --replace "Flask-Login>=0.3, <0.5" "Flask-Login" \
-      --replace "Flask-Babel>=1, <2" "Flask-Babel" \
-      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy" \
-      --replace "prison>=0.1.3, <1.0.0" "prison"
+      --replace "apispec[yaml]>=3.3, <4" "apispec[yaml] >=3.3, <5" \
+      --replace "Flask-Login>=0.3, <0.5" "Flask-Login >=0.3, <0.6" \
+      --replace "Flask-Babel>=1, <2" "Flask-Babel >=1, <3" \
+      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy >=0.22.0, <0.25.0"
   '';
 
-
-  # majority of tests require network access or mongo
+  # Majority of tests require network access or mongo
   doCheck = false;
 
+  pythonImportsCheck = [ "flask_appbuilder" ];
+
   meta = with lib; {
     description = "Simple and rapid application development framework, built on top of Flask";
     homepage = "https://github.com/dpgaspar/flask-appbuilder/";
diff --git a/nixpkgs/pkgs/development/python-modules/flask-httpauth/default.nix b/nixpkgs/pkgs/development/python-modules/flask-httpauth/default.nix
index e5d55a2b9b5f..ba8e0d0f11e6 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-httpauth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-httpauth/default.nix
@@ -1,16 +1,22 @@
-{ lib, buildPythonPackage, fetchPypi, flask }:
+{ lib, python, buildPythonPackage, fetchPypi, flask }:
 
 buildPythonPackage rec {
   pname = "Flask-HTTPAuth";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8c7e49e53ce7dc14e66fe39b9334e4b7ceb8d0b99a6ba1c3562bb528ef9da84a";
+    sha256 = "05j1mckwhgicrlj4j7ni2rhcf9w4i7phll06jbjjyvs3rj1l4q1f";
   };
 
   propagatedBuildInputs = [ flask ];
 
+  pythonImportsCheck = [ "flask_httpauth" ];
+
+  checkPhase = ''
+    ${python.interpreter} -m unittest discover
+  '';
+
   meta = with lib; {
     description = "Extension that provides HTTP authentication for Flask routes";
     homepage = "https://github.com/miguelgrinberg/Flask-HTTPAuth";
diff --git a/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix b/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
index f2b7222c3d06..e1de7bf0d3b3 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "flask-restx";
-  version = "0.2.0";
+  version = "0.3.0";
 
   # Tests not included in PyPI tarball
   src = fetchFromGitHub {
     owner = "python-restx";
     repo = pname;
     rev = version;
-    sha256 = "0xf2vkmdngp9cv9klznizai4byxjcf0iqh1pr4b83nann0jxqwy7";
+    sha256 = "0aj13nd3z71gb8c2kqiaz3f9k7jr0srlvrsx8hpz4nkpki8jiz2s";
   };
 
   propagatedBuildInputs = [ aniso8601 jsonschema flask werkzeug pytz six ]
@@ -45,6 +45,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://flask-restx.readthedocs.io/en/${version}/";
     description = "Fully featured framework for fast, easy and documented API development with Flask";
+    changelog = "https://github.com/python-restx/flask-restx/raw/${version}/CHANGELOG.rst";
     license = licenses.bsd3;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/flufl/lock.nix b/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
index b44a7f3cdfee..ce2ead246f95 100644
--- a/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
+++ b/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
@@ -14,6 +14,11 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ atpublic psutil ];
   checkInputs = [ pytestCheckHook pytestcov sybil ];
 
+  # disable code coverage checks for all OS. Upstream does not enforce these
+  # checks on Darwin, and code coverage cannot be improved downstream nor is it
+  # relevant to the user.
+  pytestFlagsArray = [ "--no-cov" ];
+
   meta = with lib; {
     homepage = "https://flufllock.readthedocs.io/";
     description = "NFS-safe file locking with timeouts for POSIX and Windows";
diff --git a/nixpkgs/pkgs/development/python-modules/fontparts/default.nix b/nixpkgs/pkgs/development/python-modules/fontparts/default.nix
index 3280f5f4bb1e..8ed3ef17adb5 100644
--- a/nixpkgs/pkgs/development/python-modules/fontparts/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fontparts/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi, python
 , fonttools, lxml, fs, unicodedata2
 , defcon, fontpens, fontmath, booleanoperations
-, pytest, setuptools_scm
+, pytest, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     extension = "zip";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     booleanoperations
diff --git a/nixpkgs/pkgs/development/python-modules/fpyutils/default.nix b/nixpkgs/pkgs/development/python-modules/fpyutils/default.nix
new file mode 100644
index 000000000000..0120391aee1b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/fpyutils/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, atomicwrites
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "fpyutils";
+  version = "2.0.0";
+  disabled = pythonOlder "3.5";
+
+  src = fetchFromGitHub {
+    owner = "frnmst";
+    repo = pname;
+    rev = version;
+    sha256 = "1n15fvd6191ixxsza49fdd8j43hs0agagg8k9v6rc7by1ffqnl2b";
+  };
+
+  propagatedBuildInputs = [
+    atomicwrites
+    requests
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "fpyutils/tests/*.py" ];
+
+  disabledTests = [
+    # Don't run test which requires bash
+    "test_execute_command_live_output"
+  ];
+
+  pythonImportsCheck = [ "fpyutils" ];
+
+  meta = with lib; {
+    description = "Collection of useful non-standard Python functions";
+    homepage = "https://github.com/frnmst/fpyutils";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/freetype-py/default.nix b/nixpkgs/pkgs/development/python-modules/freetype-py/default.nix
index a1259b85673a..b0035e838447 100644
--- a/nixpkgs/pkgs/development/python-modules/freetype-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/freetype-py/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, substituteAll, stdenv, setuptools_scm, freetype }:
+{ lib, buildPythonPackage, fetchPypi, substituteAll, stdenv, setuptools-scm, freetype }:
 
 buildPythonPackage rec {
   pname = "freetype-py";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ freetype ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/fritzconnection/default.nix b/nixpkgs/pkgs/development/python-modules/fritzconnection/default.nix
index 8e54cb6897cc..ad157fbda4c0 100644
--- a/nixpkgs/pkgs/development/python-modules/fritzconnection/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fritzconnection/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "fritzconnection";
-  version = "1.4.2";
+  version = "1.5.0";
 
   # no tests on PyPI
   src = fetchFromGitHub {
     owner = "kbr";
     repo = pname;
     rev = version;
-    sha256 = "02w1hwbfwbh5xlq433myzv6ms7jqxg8kn3d6znq4ic22zprzf5r2";
+    sha256 = "sha256-Iw7R+39rpoCTrRD74kBihF7AMcJWxy2xdPhKLznWdlo=";
   };
 
   disabled = pythonOlder "3.6";
diff --git a/nixpkgs/pkgs/development/python-modules/frozenlist/default.nix b/nixpkgs/pkgs/development/python-modules/frozenlist/default.nix
new file mode 100644
index 000000000000..e3def747f03b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/frozenlist/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, cython
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "frozenlist";
+  version = "1.1.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "07z33vid7s8fjwvybyn8357yvs0f6nlhizv1l3qj1bczi3jbdkbh";
+  };
+
+  nativeBuildInputs = [
+    cython
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pytest.ini \
+      --replace "--cov=frozenlist" ""
+  '';
+
+  preBuild = ''
+    cython frozenlist/_frozenlist.pyx
+  '';
+
+  pythonImportsCheck = [ "frozenlist" ];
+
+  meta = with lib; {
+    description = "Python module for list-like structure";
+    homepage = "https://github.com/aio-libs/frozenlist";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/fsspec/default.nix b/nixpkgs/pkgs/development/python-modules/fsspec/default.nix
index fbcf09de2eb3..e1a5611dfd30 100644
--- a/nixpkgs/pkgs/development/python-modules/fsspec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fsspec/default.nix
@@ -1,32 +1,43 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
 , pytestCheckHook
 , numpy
-, stdenv
 , aiohttp
 , pytest-vcr
 , requests
+, paramiko
+, smbprotocol
 }:
 
 buildPythonPackage rec {
   pname = "fsspec";
-  version = "2021.04.0";
-  disabled = pythonOlder "3.5";
+  version = "2021.05.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "intake";
     repo = "filesystem_spec";
     rev = version;
-    sha256 = "sha256-9072kb1VEQ0xg9hB8yEzJMD2Ttd3UGjBmTuhE+Uya1k=";
+    sha256 = "sha256-MQjUBLmx3Lb3nZNU/AgBKUQ/qNOd+XH+2YI51wV8AO0=";
   };
 
-  checkInputs = [ pytestCheckHook numpy pytest-vcr ];
+  propagatedBuildInputs = [
+    aiohttp
+    paramiko
+    requests
+    smbprotocol
+  ];
 
-  __darwinAllowLocalNetworking = true;
+  checkInputs = [
+    numpy
+    pytest-vcr
+    pytestCheckHook
+  ];
 
-  propagatedBuildInputs = [ aiohttp requests ];
+  __darwinAllowLocalNetworking = true;
 
   disabledTests = [
     # Test assumes user name is part of $HOME
@@ -43,8 +54,10 @@ buildPythonPackage rec {
     "test_touch"
   ];
 
+  pythonImportsCheck = [ "fsspec" ];
+
   meta = with lib; {
-    description = "A specification that python filesystems should adhere to";
+    description = "A specification that Python filesystems should adhere to";
     homepage = "https://github.com/intake/filesystem_spec";
     license = licenses.bsd3;
     maintainers = [ maintainers.costrouc ];
diff --git a/nixpkgs/pkgs/development/python-modules/garages-amsterdam/default.nix b/nixpkgs/pkgs/development/python-modules/garages-amsterdam/default.nix
new file mode 100644
index 000000000000..eeb68b9bbbd0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/garages-amsterdam/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, aiohttp
+}:
+
+buildPythonPackage rec {
+  pname = "garages-amsterdam";
+  version = "2.1.0";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "klaasnicolaas";
+    repo = "garages_amsterdam";
+    rev = version;
+    sha256 = "1lg66g0im6v0m294j82229n2b7bhs6kkrp0d9nh87k2rz7zgllil";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  # The only test requires network access
+  doCheck = false;
+
+  pythonImportsCheck = [ "garages_amsterdam" ];
+
+  meta = with lib; {
+    description = "Python client for getting garage occupancy in Amsterdam";
+    homepage = "https://github.com/klaasnicolaas/garages_amsterdam";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix b/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix
index 483e4a61084e..c71794b106eb 100644
--- a/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix
@@ -1,31 +1,54 @@
-{ buildPythonPackage, fetchFromGitHub, lib, pytestCheckHook, google-auth
-, google-auth-oauthlib, requests, decorator, fsspec, ujson, aiohttp, crcmod
-, pytest-vcr, vcrpy }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, google-auth
+, google-auth-oauthlib
+, requests
+, decorator
+, fsspec
+, ujson
+, aiohttp
+, crcmod
+, pytest-vcr
+, vcrpy
+}:
 
 buildPythonPackage rec {
   pname = "gcsfs";
-  version = "2021.04.0";
+  version = "2021.05.0";
+  disabled = pythonOlder "3.6";
 
-  # github sources needed for test data
   src = fetchFromGitHub {
     owner = "dask";
     repo = pname;
     rev = version;
-    sha256 = "sha256-OA43DaQue7R5d6SzfKThEQFEwJndjLfznu1LMubs5fs=";
+    sha256 = "sha256-I17eWaijxn0+8CzfzvzXVc0t9gQ03vx29a/i+QCQ0/U=";
   };
 
   propagatedBuildInputs = [
+    aiohttp
+    crcmod
+    decorator
+    fsspec
     google-auth
     google-auth-oauthlib
     requests
-    decorator
-    fsspec
-    aiohttp
     ujson
-    crcmod
   ];
 
-  checkInputs = [ pytestCheckHook pytest-vcr vcrpy ];
+  checkInputs = [
+    pytest-vcr
+    pytestCheckHook
+    vcrpy
+  ];
+
+  disabledTests = [
+    # Tests wants to communicate with the Link-local address
+    "test_GoogleCredentials_None"
+  ];
+
   pythonImportsCheck = [ "gcsfs" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/gensim/default.nix b/nixpkgs/pkgs/development/python-modules/gensim/default.nix
index be6321f86ca7..b29822a507cd 100644
--- a/nixpkgs/pkgs/development/python-modules/gensim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gensim/default.nix
@@ -4,8 +4,8 @@
 , numpy
 , six
 , scipy
-, smart_open
-, scikitlearn, testfixtures, unittest2
+, smart-open
+, scikit-learn, testfixtures, unittest2
 , isPy3k
 }:
 
@@ -19,9 +19,9 @@ buildPythonPackage rec {
     sha256 = "0rx37vnjspjl45v7bj123xwsjfgbwv91v8zpqpli8lgpf42xnskq";
   };
 
-  propagatedBuildInputs = [ smart_open numpy six scipy ];
+  propagatedBuildInputs = [ smart-open numpy six scipy ];
 
-  checkInputs = [ scikitlearn testfixtures unittest2 ];
+  checkInputs = [ scikit-learn testfixtures unittest2 ];
 
   # Two tests fail.
   #
diff --git a/nixpkgs/pkgs/development/python-modules/geoalchemy2/default.nix b/nixpkgs/pkgs/development/python-modules/geoalchemy2/default.nix
index b629d48c61f6..06139b40c385 100644
--- a/nixpkgs/pkgs/development/python-modules/geoalchemy2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/geoalchemy2/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , sqlalchemy
 , shapely
-, setuptools_scm
+, setuptools-scm
 , pytest
 }:
 
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "02jbad9vbnjx8bmfvxg77z18nymrry6li8hy9pwi0yiyvwbnycyr";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ sqlalchemy shapely ];
 
   # https://github.com/geoalchemy/geoalchemy2/blob/e05a676350b11f0e73609379dae5625c5de2e868/TEST.rst
diff --git a/nixpkgs/pkgs/development/python-modules/geojson-client/default.nix b/nixpkgs/pkgs/development/python-modules/geojson-client/default.nix
index 7e683e204834..8c4eb2cdf1bf 100644
--- a/nixpkgs/pkgs/development/python-modules/geojson-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/geojson-client/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "geojson-client";
-  version = "0.5";
+  version = "0.6";
 
   src = fetchFromGitHub {
     owner = "exxamalte";
     repo = "python-geojson-client";
     rev = "v${version}";
-    sha256 = "1cc6ymbn45dv7xdl1r8bbizlmsdbxjmsfza442yxmmm19nxnnqjv";
+    sha256 = "sha256-8eSLimCgFRn3cHTz5TE9fAUAbwFO72b23C0lg6fVOLQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/georss-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-client/default.nix
new file mode 100644
index 000000000000..e142942f9394
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-client/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, dateparser
+, fetchFromGitHub
+, haversine
+, pytestCheckHook
+, pythonOlder
+, requests
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "georss-client";
+  version = "0.13";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-client";
+    rev = "v${version}";
+    sha256 = "1pvx2qb8gs2f7bb8xxq689ydxirsl3bcgsbi5qv5klc4c051dj8i";
+  };
+
+  propagatedBuildInputs = [
+    haversine
+    xmltodict
+    requests
+    dateparser
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing GeoRSS feeds";
+    homepage = "https://github.com/exxamalte/python-georss-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-generic-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-generic-client/default.nix
new file mode 100644
index 000000000000..e01d7fa789f7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-generic-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-generic-client";
+  version = "0.4";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-generic-client";
+    rev = "v${version}";
+    sha256 = "0i4shx6fvwibx0hlfmd0dyq2n5lkrqwmlm0l476fdb9bw5lkaiy0";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_generic_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing generic GeoRSS feeds";
+    homepage = "https://github.com/exxamalte/python-georss-generic-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-ign-sismologia-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-ign-sismologia-client/default.nix
new file mode 100644
index 000000000000..4ce833668474
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-ign-sismologia-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-ign-sismologia-client";
+  version = "0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-ign-sismologia-client";
+    rev = "v${version}";
+    sha256 = "1xylgvbdrpl3wxa6qqc8jma4c9520rld0pv28y3b6b0m07ab6ijl";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_ign_sismologia_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing the IGN Sismologia GeoRSS feed";
+    homepage = "https://github.com/exxamalte/python-georss-ign-sismologia-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
new file mode 100644
index 000000000000..a4b317407ea2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-ingv-centro-nazionale-terremoti-client";
+  version = "0.4";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-ingv-centro-nazionale-terremoti-client";
+    rev = "v${version}";
+    sha256 = "06qhxczznckb208bnfly0q5099scq1yj5rk67a6fqczpsmzcln6x";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_ingv_centro_nazionale_terremoti_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing the INGV Centro Nazionale Terremoti GeoRSS feed";
+    homepage = "https://github.com/exxamalte/python-georss-ingv-centro-nazionale-terremoti-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-nrcan-earthquakes-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-nrcan-earthquakes-client/default.nix
new file mode 100644
index 000000000000..fc482e220c9b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-nrcan-earthquakes-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-nrcan-earthquakes-client";
+  version = "0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-nrcan-earthquakes-client";
+    rev = "v${version}";
+    sha256 = "0d5cdvi35wj30yvql1sr5n4vz0g4ydrslhql3bya1b7pndfs0h3y";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_nrcan_earthquakes_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing Natural Resources Canada Earthquakes feed";
+    homepage = "https://github.com/exxamalte/python-georss-nrcan-earthquakes-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-qld-bushfire-alert-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-qld-bushfire-alert-client/default.nix
new file mode 100644
index 000000000000..954e4a6237fb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-qld-bushfire-alert-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-qld-bushfire-alert-client";
+  version = "0.5";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-qld-bushfire-alert-client";
+    rev = "v${version}";
+    sha256 = "sha256-G7rIoG48MTWngtXCT5xzcjntzsYxtVWVhXflLsWY/dk=";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_qld_bushfire_alert_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing Queensland Bushfire Alert feed";
+    homepage = "https://github.com/exxamalte/python-georss-qld-bushfire-alert-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-tfs-incidents-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-tfs-incidents-client/default.nix
new file mode 100644
index 000000000000..27d43d900fd6
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-tfs-incidents-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-tfs-incidents-client";
+  version = "0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-tfs-incidents-client";
+    rev = "v${version}";
+    sha256 = "10qscn7kncb7h0b8mjykkf5kmm3ga9l8gss4acb888iaigcjgavf";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_tfs_incidents_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing Tasmania Fire Service Incidents feed";
+    homepage = "https://github.com/exxamalte/python-georss-tfs-incidents-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/georss-wa-dfes-client/default.nix b/nixpkgs/pkgs/development/python-modules/georss-wa-dfes-client/default.nix
new file mode 100644
index 000000000000..1f478151bb3e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/georss-wa-dfes-client/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, georss-client
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "georss-wa-dfes-client";
+  version = "0.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "exxamalte";
+    repo = "python-georss-wa-dfes-client";
+    rev = "v${version}";
+    sha256 = "0zfjq6yyrss61vwgdrykwkikb009q63kg9ab6ryb2509wiwwfwvk";
+  };
+
+  propagatedBuildInputs = [
+    georss-client
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "georss_wa_dfes_client" ];
+
+  meta = with lib; {
+    description = "Python library for accessing WA Department of Fire and Emergency Services (DFES) feed";
+    homepage = "https://github.com/exxamalte/python-georss-wa-dfes-client";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/get-video-properties/default.nix b/nixpkgs/pkgs/development/python-modules/get-video-properties/default.nix
new file mode 100644
index 000000000000..89e01fedc13d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/get-video-properties/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, ffmpeg
+}:
+
+buildPythonPackage rec {
+  pname = "get-video-properties";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "mvasilkov";
+    repo = "python-get-video-properties";
+    rev = "944c68addbc27e320ebc6313d3f016fb69b5e880";
+    sha256 = "18aslx7amaiw31bl9gambmvzry7hp5nqab6kgp8sg3mz9ih4lzal";
+  };
+
+  # no tests
+  doCheck = false;
+
+  postPatch = ''
+    substituteInPlace videoprops/__init__.py \
+      --replace "which('ffprobe')" "'${ffmpeg}/bin/ffprobe'"
+  '';
+
+  pythonImportsCheck = [ "videoprops" ];
+
+  meta = with lib; {
+    description = "Get video properties";
+    homepage = "https://github.com/mvasilkov/python-get-video-properties";
+    license = licenses.mit;
+    maintainers = with maintainers; [ globin ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ghp-import/default.nix b/nixpkgs/pkgs/development/python-modules/ghp-import/default.nix
new file mode 100644
index 000000000000..37a35febdf03
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ghp-import/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, dateutil
+}:
+
+buildPythonPackage rec {
+  pname = "ghp-import";
+  version = "1.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-wiqc4Qw3dT4miNFk12WnANrkuNefptsKLDEyuniBiU8=";
+  };
+
+  propagatedBuildInputs = [ dateutil ];
+
+  # Does not include any unit tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "ghp_import" ];
+
+  meta = with lib; {
+    description = "Copy your docs directly to the gh-pages branch";
+    homepage = "https://github.com/c-w/ghp-import";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ veehaitch ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/glcontext/default.nix b/nixpkgs/pkgs/development/python-modules/glcontext/default.nix
new file mode 100644
index 000000000000..c5a06fb6499a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/glcontext/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, isPy3k
+, libGL
+, libX11
+, pytestCheckHook
+, psutil
+}:
+
+buildPythonPackage rec {
+  pname = "glcontext";
+  version = "2.3.3";
+
+  src = fetchFromGitHub {
+    owner = "moderngl";
+    repo = pname;
+    rev = version;
+    sha256 = "16kwrfjijn9bnb48rk17wapmhxq6g9s59zczh65imyncb9k82wkc";
+  };
+
+  disabled = !isPy3k;
+
+  buildInputs = [ libGL libX11 ];
+
+  postPatch = ''
+    substituteInPlace glcontext/x11.cpp \
+      --replace '"libGL.so"' '"${libGL}/lib/libGL.so"' \
+      --replace '"libX11.so"' '"${libX11}/lib/libX11.so"'
+    substituteInPlace glcontext/egl.cpp \
+      --replace '"libGL.so"' '"${libGL}/lib/libGL.so"' \
+      --replace '"libEGL.so"' '"${libGL}/lib/libEGL.so"'
+  '';
+
+  # Tests fail because they try to open display. See
+  # https://github.com/NixOS/nixpkgs/pull/121439
+  # for details.
+  doCheck = false;
+
+  pythonImportsCheck = [ "glcontext" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/moderngl/glcontext";
+    description = "OpenGL implementation for ModernGL";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ friedelino ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
index 0c2d74a90e11..d251ec75ff59 100644
--- a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
@@ -28,6 +28,11 @@ buildPythonPackage rec {
     responses
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+    --replace "pyjwt[crypto]>=1.5.3,<2.0.0" "pyjwt[crypto] >=1.5.3, <3.0.0"
+  '';
+
   pythonImportsCheck = [ "globus_sdk" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/glymur/default.nix b/nixpkgs/pkgs/development/python-modules/glymur/default.nix
index 9a0b1b09db68..f14245865f59 100644
--- a/nixpkgs/pkgs/development/python-modules/glymur/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/glymur/default.nix
@@ -2,10 +2,10 @@
 , buildPythonPackage
 , fetchFromGitHub
 , numpy
-, python
 , scikitimage
 , openjpeg
 , procps
+, pytestCheckHook
 , contextlib2
 , mock
 , importlib-resources
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "glymur";
-  version = "0.8.18";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "quintusdias";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1zbghzw1q4fljb019lsrhka9xrnn4425qnxrjbmbv7dssgkkywd7";
+    sha256 = "1xlpax56qg5qqh0s19xidgvv2483sc684zj7rh6zw1m1z9m37drr";
   };
 
   propagatedBuildInputs = [
@@ -30,16 +30,21 @@ buildPythonPackage rec {
   checkInputs = [
     scikitimage
     procps
+    pytestCheckHook
   ];
 
   postConfigure = ''
     substituteInPlace glymur/config.py \
-    --replace "path = read_config_file(libname)" "path = '${openjpeg}/lib' + libname + ${if stdenv.isDarwin then "'.dylib'" else "'.so'"}"
+    --replace "path = read_config_file(libname)" "path = '${openjpeg}/lib/lib' + libname + ${if stdenv.isDarwin then "'.dylib'" else "'.so'"}"
   '';
 
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover
-  '';
+  disabledTestPaths = [
+    # this test involves glymur's different ways of finding the openjpeg path on
+    # fsh systems by reading an .rc file and such, and is obviated by the patch
+    # in postConfigure
+    "tests/test_config.py"
+  ];
+
 
   meta = with lib; {
     description = "Tools for accessing JPEG2000 files";
diff --git a/nixpkgs/pkgs/development/python-modules/google-api-python-client/default.nix b/nixpkgs/pkgs/development/python-modules/google-api-python-client/default.nix
index 39ed8d68345f..e2b15ccca656 100644
--- a/nixpkgs/pkgs/development/python-modules/google-api-python-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-api-python-client/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "google-api-python-client";
-  version = "2.0.2";
+  version = "2.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "04c0c8m4c7lzqv0m3jm0zks9wjcv1myas80rxswvi36wn376qs28";
+    sha256 = "sha256-mHm40dGCEq6Ss1urYejqntXqY++cjKhHk4U42hDdGTs=";
   };
 
   # No tests included in archive
diff --git a/nixpkgs/pkgs/development/python-modules/gpapi/default.nix b/nixpkgs/pkgs/development/python-modules/gpapi/default.nix
index 6ed9f48dd61c..6c2454dbbfeb 100644
--- a/nixpkgs/pkgs/development/python-modules/gpapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gpapi/default.nix
@@ -1,7 +1,11 @@
-{ lib, buildPythonPackage, fetchPypi, pythonOlder
-, requests
+{ buildPythonPackage
+, cryptography
+, fetchPypi
+, lib
+, pythonOlder
 , protobuf
 , pycryptodome
+, requests
 }:
 
 buildPythonPackage rec {
@@ -14,11 +18,17 @@ buildPythonPackage rec {
     sha256 = "0ampvsv97r3hy1cakif4kmyk1ynf3scbvh4fbk02x7xrxn4kl38w";
   };
 
-  propagatedBuildInputs = [ requests protobuf pycryptodome ];
+  # package doesn't contain unit tests
+  # scripts in ./test require networking
+  doCheck = false;
+
+  pythonImportsCheck = [ "gpapi.googleplay" ];
+
+  propagatedBuildInputs = [ cryptography protobuf pycryptodome requests ];
 
   meta = with lib; {
     homepage = "https://github.com/NoMore201/googleplay-api";
-    license = licenses.gpl3;
+    license = licenses.gpl3Only;
     description = "Google Play Unofficial Python API";
     maintainers = with maintainers; [ ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/graphene/default.nix b/nixpkgs/pkgs/development/python-modules/graphene/default.nix
index 2839fc337cd8..be2cc808eb0d 100644
--- a/nixpkgs/pkgs/development/python-modules/graphene/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphene/default.nix
@@ -11,6 +11,7 @@
 , pytest-mock
 , pytz
 , snapshottest
+, fetchpatch
 }:
 
 buildPythonPackage rec {
@@ -24,6 +25,13 @@ buildPythonPackage rec {
     sha256 = "sha256-bVCCLPnV5F8PqLMg3GwcpwpGldrxsU+WryL6gj6y338=";
   };
 
+  # Allow later aniso8601 releases
+  # https://github.com/graphql-python/graphene/pull/1331
+  patches = [ (fetchpatch {
+    url = "https://github.com/graphql-python/graphene/commit/26b16f75b125e35eeb2274b7be503ec29f2e8a45.patch";
+    sha256 = "qm96pNOoxPieEy1CFZpa2Mx010pY3QU/vRyuL0qO3Tk=";
+  }) ];
+
   propagatedBuildInputs = [
     aniso8601
     graphql-core
diff --git a/nixpkgs/pkgs/development/python-modules/graphite-web/default.nix b/nixpkgs/pkgs/development/python-modules/graphite-web/default.nix
index d2d6a78436ac..08125bfc71a3 100644
--- a/nixpkgs/pkgs/development/python-modules/graphite-web/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphite-web/default.nix
@@ -28,6 +28,12 @@ buildPythonPackage rec {
     ./update-django-tagging.patch
   ];
 
+  postPatch = ''
+    # https://github.com/graphite-project/graphite-web/pull/2701
+    substituteInPlace setup.py \
+      --replace "'scandir'" "'scandir; python_version < \"3.5\"'"
+  '';
+
   propagatedBuildInputs = [
     django
     memcached
diff --git a/nixpkgs/pkgs/development/python-modules/graphql-core/default.nix b/nixpkgs/pkgs/development/python-modules/graphql-core/default.nix
index 5c29a1135a9b..85021d126a1b 100644
--- a/nixpkgs/pkgs/development/python-modules/graphql-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphql-core/default.nix
@@ -1,27 +1,21 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, lib
-, pythonOlder
-
-, coveralls
-, promise
-, pytestCheckHook
 , pytest-benchmark
-, pytest-mock
-, rx
-, six
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "graphql-core";
-  version = "3.1.3";
+  version = "3.1.4";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "graphql-python";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0qy1i6vffwad74ymdsh1qjf5b6ph4z0vyxzkkc6yppwczhzmi1ps";
+    sha256 = "sha256-lamV5Rd37WvFBJ+zJUb+UhqxoNUrRhoMJx1NodbQUjs=";
   };
 
   checkInputs = [
@@ -29,12 +23,12 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [ "graphql" ];
+
   meta = with lib; {
     description = "Port of graphql-js to Python";
     homepage = "https://github.com/graphql-python/graphql-core";
     license = licenses.mit;
-    maintainers = with maintainers; [
-      kamadorueda
-    ];
+    maintainers = with maintainers; [ kamadorueda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/graspologic/default.nix b/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
index b4e8803784b5..758f988a2395 100644
--- a/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
@@ -8,7 +8,7 @@
 , matplotlib
 , networkx
 , numpy
-, scikitlearn
+, scikit-learn
 , scipy
 , seaborn
 }:
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     matplotlib
     networkx
     numpy
-    scikitlearn
+    scikit-learn
     scipy
     seaborn
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/gremlinpython/default.nix b/nixpkgs/pkgs/development/python-modules/gremlinpython/default.nix
index 59da8f173d97..573f5a68ce67 100644
--- a/nixpkgs/pkgs/development/python-modules/gremlinpython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gremlinpython/default.nix
@@ -1,6 +1,15 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, pytestCheckHook, pyhamcrest, pytestrunner
-, six, isodate, tornado, aenum, radish-bdd, mock
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, aenum
+, importlib-metadata
+, isodate
+, six
+, tornado
+, pytestCheckHook
+, mock
+, pyhamcrest
+, radish-bdd
 }:
 
 buildPythonPackage rec {
@@ -22,13 +31,28 @@ buildPythonPackage rec {
       --replace 'PyHamcrest>=1.9.0,<2.0.0' 'PyHamcrest' \
       --replace 'radish-bdd==0.8.6' 'radish-bdd' \
       --replace 'mock>=3.0.5,<4.0.0' 'mock' \
-      --replace 'pytest>=4.6.4,<5.0.0' 'pytest'
+      --replace 'pytest>=4.6.4,<5.0.0' 'pytest' \
+      --replace 'importlib-metadata<3.0.0' 'importlib-metadata' \
+      --replace 'pytest-runner==5.2' ' '
   '';
 
-  nativeBuildInputs = [ pytestrunner ];  # simply to placate requirements
-  propagatedBuildInputs = [ six isodate tornado aenum ];
+  # setup-requires requirements
+  nativeBuildInputs = [
+    importlib-metadata
+  ];
+  propagatedBuildInputs = [
+    aenum
+    isodate
+    six
+    tornado
+  ];
 
-  checkInputs = [ pytestCheckHook pyhamcrest radish-bdd mock ];
+  checkInputs = [
+    pytestCheckHook
+    mock
+    pyhamcrest
+    radish-bdd
+  ];
 
   # disable custom pytest report generation
   preCheck = ''
@@ -36,12 +60,14 @@ buildPythonPackage rec {
   '';
 
   # many tests expect a running tinkerpop server
+  disabledTestPaths = [
+    "tests/driver/test_client.py"
+    "tests/driver/test_driver_remote_connection.py"
+    "tests/driver/test_driver_remote_connection_threaded.py"
+    "tests/process/test_dsl.py"
+    "tests/structure/io/test_functionalityio.py"
+  ];
   pytestFlagsArray = [
-    "--ignore=tests/driver/test_client.py"
-    "--ignore=tests/driver/test_driver_remote_connection.py"
-    "--ignore=tests/driver/test_driver_remote_connection_threaded.py"
-    "--ignore=tests/process/test_dsl.py"
-    "--ignore=tests/structure/io/test_functionalityio.py"
     # disabledTests doesn't quite allow us to be precise enough for this
     "-k 'not (TestFunctionalGraphSONIO and (test_timestamp or test_datetime or test_uuid))'"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix b/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
index 2f4ee5de8d28..52091cacc581 100644
--- a/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "grpcio-tools";
-  version = "1.37.0";
+  version = "1.38.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3ec510c1b6bfc32effc639acf9a055e72dab7a7b6757bf72f2132790d6a7cf1c";
+    sha256 = "c609678cf6faf4b467259757f848de4fbc7baca3c1e3f7b0e55c701c50fd94ae";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/python-modules/gst-python/default.nix b/nixpkgs/pkgs/development/python-modules/gst-python/default.nix
index ea89f7214c63..a391d993cf0c 100644
--- a/nixpkgs/pkgs/development/python-modules/gst-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gst-python/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "gst-python";
-  version = "1.18.0";
+  version = "1.18.4";
 
   format = "other";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-python/${pname}-${version}.tar.xz";
-    sha256 = "0ifx2s2j24sj2w5jm7cxyg1kinnhbxiz4x0qp3gnsjlwbawfigvn";
+    sha256 = "13h9qzfz8s1gyj2ar9q2gf5346sgdv6jv8hj7aw0hpl2gs5f0s6b";
   };
 
   # Python 2.x is not supported.
diff --git a/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix b/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix
index bb31baa78880..15a1ddbf0614 100644
--- a/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix
@@ -46,11 +46,11 @@ buildPythonPackage rec {
       To run gtimelog successfully on a system that does not have full GNOME 3
       installed, the following NixOS options should be set:
       - programs.dconf.enable = true;
-      - services.gnome3.gnome-keyring.enable = true;
+      - services.gnome.gnome-keyring.enable = true;
 
       In addition, the following packages should be added to the environment:
-      - gnome3.adwaita-icon-theme
-      - gnome3.dconf
+      - gnome.adwaita-icon-theme
+      - gnome.dconf
     '';
     homepage = "https://gtimelog.org/";
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/development/python-modules/gym/default.nix b/nixpkgs/pkgs/development/python-modules/gym/default.nix
index 126606af73a9..a1cd76cd38e4 100644
--- a/nixpkgs/pkgs/development/python-modules/gym/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gym/default.nix
@@ -1,19 +1,32 @@
 { lib
-, buildPythonPackage, fetchPypi
-, numpy, requests, six, pyglet, scipy, cloudpickle
+, buildPythonPackage
+, fetchFromGitHub
+, numpy
+, requests
+, pyglet
+, scipy
+, pillow
+, cloudpickle
 }:
 
 buildPythonPackage rec {
   pname = "gym";
-  version = "0.18.0";
+  version = "0.18.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "a0dcd25c1373f3938f4cb4565f74f434fba6faefb73a42d09c9dddd0c08af53e";
+  src = fetchFromGitHub {
+    owner = "openai";
+    repo = pname;
+    rev = version;
+    sha256 = "0mv4af2y9d1y97bsda94f21nis2jm1zkzv7c806vmvzh5s4r8nfn";
   };
 
   propagatedBuildInputs = [
-    numpy requests six pyglet scipy cloudpickle
+    cloudpickle
+    numpy
+    pillow
+    pyglet
+    requests
+    scipy
   ];
 
   # The test needs MuJoCo that is not free library.
@@ -22,7 +35,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "gym" ];
 
   meta = with lib; {
-    description = "A toolkit by OpenAI for developing and comparing your reinforcement learning agents";
+    description = "A toolkit for developing and comparing your reinforcement learning agents";
     homepage = "https://gym.openai.com/";
     license = licenses.mit;
     maintainers = with maintainers; [ hyphon81 ];
diff --git a/nixpkgs/pkgs/development/python-modules/ha-ffmpeg/default.nix b/nixpkgs/pkgs/development/python-modules/ha-ffmpeg/default.nix
index 84810fd2b532..9fd1295733c4 100644
--- a/nixpkgs/pkgs/development/python-modules/ha-ffmpeg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ha-ffmpeg/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
-, ffmpeg_3, async-timeout }:
+, async-timeout }:
 
 buildPythonPackage rec {
   pname = "ha-ffmpeg";
@@ -12,17 +12,21 @@ buildPythonPackage rec {
     sha256 = "8d92f2f5790da038d828ac862673e0bb43e8e972e4c70b1714dd9a0fb776c8d1";
   };
 
-  buildInputs = [ ffmpeg_3 ];
-
   propagatedBuildInputs = [ async-timeout ];
 
   # only manual tests
   doCheck = false;
 
+  pythonImportsCheck = [
+    "haffmpeg.camera"
+    "haffmpeg.sensor"
+    "haffmpeg.tools"
+  ];
+
   meta = with lib; {
     homepage = "https://github.com/pvizeli/ha-ffmpeg";
     description = "Library for home-assistant to handle ffmpeg";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ peterhoeg ];
+    maintainers = teams.home-assistant.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ha-philipsjs/default.nix b/nixpkgs/pkgs/development/python-modules/ha-philipsjs/default.nix
new file mode 100644
index 000000000000..c6de997a1da7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ha-philipsjs/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, cryptography
+, fetchFromGitHub
+, httpx
+, pytest-aiohttp
+, pytest-mock
+, pytestCheckHook
+, pythonOlder
+, respx
+}:
+
+buildPythonPackage rec {
+  pname = "ha-philipsjs";
+  version = "2.7.4";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "danielperna84";
+    repo = pname;
+    rev = version;
+    sha256 = "08fjdb1q02dwxq8s15ddd00gps64xplblkn8dx5yivldskiy8i1n";
+  };
+
+  propagatedBuildInputs = [
+    cryptography
+    httpx
+  ];
+
+  checkInputs = [
+    pytest-aiohttp
+    pytest-mock
+    pytestCheckHook
+    respx
+  ];
+
+  pythonImportsCheck = [ "haphilipsjs" ];
+
+  meta = with lib; {
+    description = "Python library to interact with Philips TVs with jointSPACE API";
+    homepage = "https://github.com/danielperna84/ha-philipsjs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix b/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
index a9f0d30ef44e..1abd9648e952 100644
--- a/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
@@ -15,13 +15,13 @@
 
 buildPythonPackage rec {
   pname = "hass-nabucasa";
-  version = "0.43.0";
+  version = "0.43.1";
 
   src = fetchFromGitHub {
     owner = "nabucasa";
     repo = pname;
     rev = version;
-    sha256 = "sha256-mfVSiquZrCtAza4q9Ocle22e4ZMoTgxguevuOlZEUm8=";
+    sha256 = "sha256-eQdbAQRKqnJGxnSTkk3gld9TX9MpP3J8LFNYH6peVIY=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix b/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
index 961137ed9ab2..abfc4523965f 100644
--- a/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "hatasmota";
-  version = "0.2.9";
+  version = "0.2.14";
 
   src = fetchFromGitHub {
     owner = "emontnemery";
     repo = pname;
     rev = version;
-    sha256 = "sha256-+4jlzemF5f4Qz4QHDaErsmVHq1Pjn/vsvoq/oCbW/hI=";
+    sha256 = "sha256-sCGUlEN1ejWhc2+9JRQ7UPqueq30u8gGSPRxbs4cnLE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/haversine/default.nix b/nixpkgs/pkgs/development/python-modules/haversine/default.nix
index 7f5e462d1b3c..9d12be3aa198 100644
--- a/nixpkgs/pkgs/development/python-modules/haversine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/haversine/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "haversine";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "mapado";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1c3yf9162b2b7l1lsw3ffd1linnc542qvljpgwxp6y5arrmljqnv";
+    sha256 = "sha256-1PXPsZd/4pN42TU0lhXWsmyX7uGP1n/xna2cVZPczB4=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/hdate/default.nix b/nixpkgs/pkgs/development/python-modules/hdate/default.nix
new file mode 100644
index 000000000000..5c8a2c1e9fc5
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/hdate/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, astral
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pytestCheckHook
+, pythonOlder
+, pytz
+}:
+
+buildPythonPackage rec {
+  pname = "hdate";
+  version = "0.10.3";
+  disabled = pythonOlder "3.6";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "py-libhdate";
+    repo = "py-libhdate";
+    rev = "v${version}";
+    sha256 = "sha256-6rOsG6qgq4woBhj25SNWvKshvFLBL/6MJiBZb+NPvdk=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    astral
+    pytz
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml --replace "^2020.5" ">=2020.5"
+  '';
+
+  pytestFlagsArray = [
+    "tests"
+  ];
+
+  pythonImportsCheck = [ "hdate" ];
+
+  meta = with lib; {
+    description = "Python module for Jewish/Hebrew date and Zmanim";
+    homepage = "https://github.com/py-libhdate/py-libhdate";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/hdbscan/default.nix b/nixpkgs/pkgs/development/python-modules/hdbscan/default.nix
index d2590d14955c..bf48d6cf5e76 100644
--- a/nixpkgs/pkgs/development/python-modules/hdbscan/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hdbscan/default.nix
@@ -5,7 +5,7 @@
 , numpy
 , pytestCheckHook
 , scipy
-, scikitlearn
+, scikit-learn
 , fetchPypi
 , joblib
 , six
@@ -29,12 +29,20 @@ buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [ cython ];
-  propagatedBuildInputs = [ numpy scipy scikitlearn joblib six ];
+  propagatedBuildInputs = [ numpy scipy scikit-learn joblib six ];
   preCheck = ''
     cd hdbscan/tests
     rm __init__.py
   '';
   checkInputs = [ pytestCheckHook ];
+  disabledTests = [
+    # known flaky tests: https://github.com/scikit-learn-contrib/hdbscan/issues/420
+    "test_mem_vec_diff_clusters"
+    "test_all_points_mem_vec_diff_clusters"
+    "test_approx_predict_diff_clusters"
+    # another flaky test https://github.com/scikit-learn-contrib/hdbscan/issues/421
+    "test_hdbscan_boruvka_balltree_matches"
+  ];
 
   meta = with lib; {
     description = "Hierarchical Density-Based Spatial Clustering of Applications with Noise, a clustering algorithm with a scikit-learn compatible API";
diff --git a/nixpkgs/pkgs/development/python-modules/hg-evolve/default.nix b/nixpkgs/pkgs/development/python-modules/hg-evolve/default.nix
index b7bd002c3678..46db97a9aedd 100644
--- a/nixpkgs/pkgs/development/python-modules/hg-evolve/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hg-evolve/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "hg-evolve";
-  version = "10.3.0";
+  version = "10.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5d7f73fc1c357134ae9b4a3ed2d844ab8e75a4ca1303679a9e150e87617e7bc7";
+    sha256 = "03xwnadpvgna70n6pfxb7xdrszppdqrx5qmkbr1v0jzbh5rnzi6b";
   };
 
   doCheck = false;
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Enables the “changeset evolution” feature of Mercurial core";
     homepage = "https://www.mercurial-scm.org/doc/evolution/";
-    maintainers = with maintainers; [ xavierzwirtz ];
+    maintainers = with maintainers; [ xavierzwirtz lukegb ];
     license = licenses.gpl2Plus;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/hickle/default.nix b/nixpkgs/pkgs/development/python-modules/hickle/default.nix
index 036122f702b4..1d6d6b39d043 100644
--- a/nixpkgs/pkgs/development/python-modules/hickle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hickle/default.nix
@@ -42,6 +42,8 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "hickle" ];
 
   meta = {
+    # incompatible with h5py>=3.0, see https://github.com/telegraphic/hickle/issues/143
+    broken = true;
     description = "Serialize Python data to HDF5";
     homepage = "https://github.com/telegraphic/hickle";
     license = lib.licenses.mit;
diff --git a/nixpkgs/pkgs/development/python-modules/hidapi/default.nix b/nixpkgs/pkgs/development/python-modules/hidapi/default.nix
index 790e7aa08fc2..2b9165dee24e 100644
--- a/nixpkgs/pkgs/development/python-modules/hidapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hidapi/default.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, libusb1, udev, darwin, fetchPypi, buildPythonPackage, cython }:
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, xcbuild
+, cython
+, libusb1
+, udev
+, darwin
+}:
 
 buildPythonPackage rec {
   pname = "hidapi";
@@ -9,18 +18,17 @@ buildPythonPackage rec {
     sha256 = "a1170b18050bc57fae3840a51084e8252fd319c0fc6043d68c8501deb0e25846";
   };
 
-  propagatedBuildInputs =
-    lib.optionals stdenv.isLinux [ libusb1 udev ] ++
-    lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ AppKit CoreFoundation IOKit ]) ++
-    [ cython ];
+  nativeBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ];
+
+  propagatedBuildInputs = [ cython ]
+    ++ lib.optionals stdenv.isLinux [ libusb1 udev ]
+    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ AppKit CoreFoundation IOKit ]);
 
   # Fix the USB backend library lookup
   postPatch = lib.optionalString stdenv.isLinux ''
     libusb=${libusb1.dev}/include/libusb-1.0
     test -d $libusb || { echo "ERROR: $libusb doesn't exist, please update/fix this build expression."; exit 1; }
     sed -i -e "s|/usr/include/libusb-1.0|$libusb|" setup.py
-  '' + lib.optionalString stdenv.isDarwin ''
-    substituteInPlace setup.py --replace 'macos_sdk_path =' 'macos_sdk_path = "" #'
   '';
 
   pythonImportsCheck = [ "hid" ];
@@ -30,7 +38,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/trezor/cython-hidapi";
     # license can actually be either bsd3 or gpl3
     # see https://github.com/trezor/cython-hidapi/blob/master/LICENSE-orig.txt
-    license = licenses.bsd3;
+    license = with licenses; [ bsd3 gpl3Only ];
     maintainers = with maintainers; [ np prusnak ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/hmmlearn/default.nix b/nixpkgs/pkgs/development/python-modules/hmmlearn/default.nix
index 8d2afcf5e722..d079b18a30c2 100644
--- a/nixpkgs/pkgs/development/python-modules/hmmlearn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hmmlearn/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, buildPythonPackage, numpy, scikitlearn, setuptools_scm, cython, pytest }:
+{ lib, fetchurl, buildPythonPackage, numpy, scikit-learn, setuptools-scm, cython, pytest }:
 
 buildPythonPackage rec {
   pname = "hmmlearn";
@@ -9,8 +9,8 @@ buildPythonPackage rec {
     sha256 = "14fb4ad3fb7529785844a25fae5d32272619fb5973cc02c8784018055470ca01";
   };
 
-  buildInputs = [ setuptools_scm cython ];
-  propagatedBuildInputs = [ numpy scikitlearn ];
+  buildInputs = [ setuptools-scm cython ];
+  propagatedBuildInputs = [ numpy scikit-learn ];
   checkInputs = [ pytest ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/hsluv/default.nix b/nixpkgs/pkgs/development/python-modules/hsluv/default.nix
new file mode 100644
index 000000000000..b6573db53268
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/hsluv/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "hsluv";
+  version = "5.0.2";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "hsluv";
+    repo = "hsluv-python";
+    rev = "v${version}";
+    sha256 = "0r0w8ycjwfg3pmzjghzrs0lkam93fzvgiqvrwh3nl9jnqlpw7v7j";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "hsluv" ];
+
+  meta = with lib; {
+    description = "Python implementation of HSLuv";
+    homepage = "https://github.com/hsluv/hsluv-python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/hstspreload/default.nix b/nixpkgs/pkgs/development/python-modules/hstspreload/default.nix
index 55aafc620424..e30435c568c7 100644
--- a/nixpkgs/pkgs/development/python-modules/hstspreload/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hstspreload/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "hstspreload";
-  version = "2021.3.29";
+  version = "2021.5.31";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "sethmlarson";
     repo = pname;
     rev = version;
-    sha256 = "sha256-F5EXwCoXYmFkV0VWT5leIWZU2xH1t6T0LuxodAANS8E=";
+    sha256 = "sha256-qTOzhPET2uj/ST28pzeckFTYYfyPgErvG4HB9zMMB2w=";
   };
 
   # tests require network connection
diff --git a/nixpkgs/pkgs/development/python-modules/httpcore/default.nix b/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
index dbbdf0bb38c0..079b5e71a10f 100644
--- a/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
@@ -5,24 +5,25 @@
 , h11
 , h2
 , pproxy
+, pytest-asyncio
+, pytest-trio
 , pytestCheckHook
 , pytestcov
 , sniffio
-, uvicorn
 , trustme
-, trio
+, uvicorn
 }:
 
 buildPythonPackage rec {
   pname = "httpcore";
-  version = "0.12.3";
+  version = "0.13.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "09hbjc5wzhrnri5y3idxcq329d7jiaxljc7y6npwv9gh9saln109";
+    sha256 = "sha256-KvqBVQUaF3p2oJz0tt3Bkn2JiKEHqrZ3b6I9f0JK5h8=";
   };
 
   propagatedBuildInputs = [
@@ -33,18 +34,19 @@ buildPythonPackage rec {
 
   checkInputs = [
     pproxy
+    pytest-asyncio
+    pytest-trio
     pytestCheckHook
     pytestcov
-    uvicorn
     trustme
-    trio
+    uvicorn
   ];
 
-  pytestFlagsArray = [
+  disabledTestPaths = [
     # these tests fail during dns lookups: httpcore.ConnectError: [Errno -2] Name or service not known
-    "--ignore=tests/test_threadsafety.py"
-    "--ignore=tests/sync_tests/test_interfaces.py"
-    "--ignore=tests/sync_tests/test_retries.py"
+    "tests/test_threadsafety.py"
+    "tests/sync_tests/test_interfaces.py"
+    "tests/sync_tests/test_retries.py"
   ];
 
   pythonImportsCheck = [ "httpcore" ];
diff --git a/nixpkgs/pkgs/development/python-modules/httpx/default.nix b/nixpkgs/pkgs/development/python-modules/httpx/default.nix
index 2aba203ea01f..b45c3e85f502 100644
--- a/nixpkgs/pkgs/development/python-modules/httpx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httpx/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "httpx";
-  version = "0.17.1";
+  version = "0.18.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "sha256-P4Uki+vlAgVECBUz9UGvv1ip49jmf0kYbyU2/mkWE3U=";
+    sha256 = "sha256-6EYBTRXaVHBgW/JzZvWLz55AqgocOyym2FVtu2Nkp/U=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/humanize/default.nix b/nixpkgs/pkgs/development/python-modules/humanize/default.nix
index 5db7d6d02545..5184f83881f0 100644
--- a/nixpkgs/pkgs/development/python-modules/humanize/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/humanize/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 , setuptools
 , pytestCheckHook
 , freezegun
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "8bf7abd672b867f38b8b04593829b85b9b6199a61ef6586bf3629cc06458ff35";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ setuptools ];
   checkInputs = [ pytestCheckHook freezegun ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/humblewx/default.nix b/nixpkgs/pkgs/development/python-modules/humblewx/default.nix
new file mode 100644
index 000000000000..7fd0b0e8dd90
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/humblewx/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, wxPython_4_0
+, python3
+}:
+
+buildPythonPackage rec {
+  pname = "humblewx";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "thetimelineproj";
+    repo = pname;
+    rev = version;
+    sha256 = "0fv8gwlbcj000qq34inbwgxf0xgibs590dsyqnw0mmyb7f1iq210";
+  };
+
+  # timeline is not compatible with wxPython_4_1. reported upstream
+  propagatedBuildInputs = [ wxPython_4_0 ];
+
+  checkPhase = ''
+    runHook preCheck
+    for i in examples/*; do
+      ${python3.interpreter} $i
+    done
+    runHook postCheck
+  '';
+
+  # Unable to access the X Display, is $DISPLAY set properly?
+  # would have to use nixos module tests, but it is not worth it
+  doCheck = false;
+
+  pythonImportsCheck = [ "humblewx" ];
+
+  meta = {
+    homepage = "https://github.com/thetimelineproj/humblewx";
+    description = "Library that simplifies creating user interfaces with wxPython";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ davidak ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/hupper/default.nix b/nixpkgs/pkgs/development/python-modules/hupper/default.nix
index 27e308ee4477..972606974602 100644
--- a/nixpkgs/pkgs/development/python-modules/hupper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hupper/default.nix
@@ -3,25 +3,35 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
-, pytest-cov
 , watchdog
 }:
 
 buildPythonPackage rec {
   pname = "hupper";
-  version = "1.10.2";
+  version = "1.10.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3818f53dabc24da66f65cf4878c1c7a9b5df0c46b813e014abdd7c569eb9a02a";
+    sha256 = "sha256-zW9Rtyx1h7ybzopl7NAloelfGwMoRRm/6RKE0BAxbNk=";
   };
 
   # FIXME: watchdog dependency is disabled on Darwin because of #31865, which causes very silent
   # segfaults in the testsuite that end up failing the tests in a background thread (in myapp)
-  checkInputs = [ pytestCheckHook pytest-cov ] ++ lib.optional (!stdenv.isDarwin) watchdog;
+  checkInputs = [
+    pytestCheckHook
+  ] ++ lib.optional (!stdenv.isDarwin) [
+    watchdog
+  ];
+
+  disabledTestPaths = [
+    # Doesn't work with an exported home, RuntimeError: timeout waiting for change to file=/build/tmpgfn145cx
+    "tests/test_it.py"
+  ];
+
+  pythonImportsCheck = [ "hupper" ];
 
   meta = with lib; {
-    description = "in-process file monitor / reloader for reloading your code automatically during development";
+    description = "In-process file monitor/reloader for reloading your code automatically during development";
     homepage = "https://github.com/Pylons/hupper";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/nixpkgs/pkgs/development/python-modules/hwi/default.nix b/nixpkgs/pkgs/development/python-modules/hwi/default.nix
index 5da15fa3e233..7b6daf1fad05 100644
--- a/nixpkgs/pkgs/development/python-modules/hwi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hwi/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "hwi";
-  version = "2.0.1";
+  version = "2.0.2";
 
   src = fetchFromGitHub {
     owner = "bitcoin-core";
     repo = "HWI";
     rev = version;
-    sha256 = "148m0vgwm6l8drcx6j3fjs2zpdzvslk4w2nkb8nm0g8qdlm6gjlw";
+    sha256 = "sha256-s0pKYqesZjHE6YndqsMwCuqLK7eE82oRiSXxBdUtEX4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/hyperlink/default.nix b/nixpkgs/pkgs/development/python-modules/hyperlink/default.nix
index ad56de86782b..21927683b18b 100644
--- a/nixpkgs/pkgs/development/python-modules/hyperlink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hyperlink/default.nix
@@ -1,4 +1,10 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27, idna, typing ? null }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy27
+, idna
+, typing ? null
+}:
 
 buildPythonPackage rec {
   pname = "hyperlink";
@@ -6,7 +12,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "427af957daa58bc909471c6c40f74c5450fa123dd093fc53efd2e91d2705a56b";
+    sha256 = "0sx50lkivsfjxx9zr4yh7l9gll2l9kvl0v0w8w4wk2x5v9bzjyj2";
   };
 
   propagatedBuildInputs = [ idna ]
@@ -14,6 +20,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A featureful, correct URL for Python";
+    homepage = "https://github.com/python-hyper/hyperlink";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ apeschar ];
diff --git a/nixpkgs/pkgs/development/python-modules/hyppo/default.nix b/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
index 86b43465fb64..9fdeca082b2f 100644
--- a/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
@@ -4,8 +4,10 @@
 , fetchFromGitHub
 , pytestCheckHook , pytestcov , numba
 , numpy
-, scikitlearn
+, scikit-learn
 , scipy
+, matplotlib
+, seaborn
 }:
 
 buildPythonPackage rec {
@@ -24,12 +26,16 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numba
     numpy
-    scikitlearn
+    scikit-learn
     scipy
   ];
 
-  checkInputs = [ pytestCheckHook pytestcov ];
-  pytestFlagsArray = [ "--ignore=docs" ];
+  checkInputs = [ pytestCheckHook pytestcov matplotlib seaborn ];
+  disabledTestPaths = [
+    "docs"
+    "benchmarks"
+    "examples"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/neurodata/hyppo";
diff --git a/nixpkgs/pkgs/development/python-modules/i-pi/default.nix b/nixpkgs/pkgs/development/python-modules/i-pi/default.nix
new file mode 100644
index 000000000000..5f031197978a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/i-pi/default.nix
@@ -0,0 +1,41 @@
+{ buildPythonPackage, lib, fetchFromGitHub, gfortran
+, makeWrapper, numpy, pytest, mock, pytest-mock
+} :
+
+buildPythonPackage rec {
+  name = "i-pi";
+  version = "2.4.0";
+
+  src = fetchFromGitHub {
+    owner = "i-pi";
+    repo = "i-pi";
+    rev = "v${version}";
+    sha256 = "0d0ag57aa0fsqjwya27fyj8alimjvlxzgh6hxjqy1k4ap9h3n1cy";
+  };
+
+  nativeBuildInputs = [
+    gfortran
+    makeWrapper
+  ];
+
+  propagatedBuildInputs = [ numpy ];
+
+  checkInputs = [
+    pytest
+    mock
+    pytest-mock
+  ];
+
+  postFixup = ''
+    wrapProgram $out/bin/i-pi \
+      --set IPI_ROOT $out
+  '';
+
+  meta = with lib; {
+    description = "A universal force engine for ab initio and force field driven (path integral) molecular dynamics";
+    license = with licenses; [ gpl3Only mit ];
+    homepage = "http://ipi-code.org/";
+    platforms = platforms.linux;
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/i2c-tools/default.nix b/nixpkgs/pkgs/development/python-modules/i2c-tools/default.nix
new file mode 100644
index 000000000000..60af11e24198
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/i2c-tools/default.nix
@@ -0,0 +1,21 @@
+{ lib
+, buildPythonPackage
+, i2c-tools
+}:
+
+buildPythonPackage rec {
+  inherit (i2c-tools) pname version src;
+
+  buildInputs = [ i2c-tools ];
+
+  preConfigure = "cd py-smbus";
+
+  meta = with lib; {
+    inherit (i2c-tools.meta) homepage platforms;
+
+    description = "wrapper for i2c-tools' smbus stuff";
+    # from py-smbus/smbusmodule.c
+    license = [ licenses.gpl2Only ];
+    maintainers = [ maintainers.evils ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
new file mode 100644
index 000000000000..828f51ae28f4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, codecov
+, pyjwt
+, pylint
+, pytestCheckHook
+, pytestcov
+, python-dateutil
+, requests
+, responses
+, tox
+}:
+
+buildPythonPackage rec {
+  pname = "ibm-cloud-sdk-core";
+  version = "3.9.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1gwx0z6yqlym9af6wnzq5alcrx8pfsywxn18a0yxhm1j00rkyh2i";
+  };
+
+  checkInputs = [
+    codecov
+    pylint
+    pytestCheckHook
+    pytestcov
+    responses
+    tox
+  ];
+
+  propagatedBuildInputs = [
+    pyjwt
+    python-dateutil
+    requests
+  ];
+
+  # Various tests try to access credential files which are not included with the source distribution
+  disabledTests = [
+    "test_iam" "test_cwd" "test_configure_service" "test_get_authenticator"
+    "test_read_external_sources_2" "test_files_duplicate_parts" "test_files_list"
+    "test_files_dict" "test_retry_config_external" "test_gzip_compression_external"
+  ];
+
+  meta = with lib; {
+    description = "Client library for the IBM Cloud services";
+    homepage = "https://github.com/IBM/python-sdk-core";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ globin lheckemann ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
new file mode 100644
index 000000000000..fe8756fde03b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, responses
+, pytestCheckHook
+, python-dotenv
+, pytest-rerunfailures
+, tox
+, requests
+, python-dateutil
+, websocket_client
+, ibm-cloud-sdk-core
+}:
+
+buildPythonPackage rec {
+  pname = "ibm-watson";
+  version = "5.1.0";
+
+  src = fetchFromGitHub {
+    owner = "watson-developer-cloud";
+    repo = "python-sdk";
+    rev = "v${version}";
+    sha256 = "sha256:16llw7kybwndgf2ryrg5698v4j3rhrdx52lf3kdzhxdi0q3kmwdn";
+  };
+
+  checkInputs = [
+    responses
+    pytestCheckHook
+    python-dotenv
+    pytest-rerunfailures
+    tox
+  ];
+
+  propagatedBuildInputs = [
+    requests
+    python-dateutil
+    websocket_client
+    ibm-cloud-sdk-core
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace websocket-client==0.48.0 websocket-client>=0.48.0 \
+      --replace ibm_cloud_sdk_core==3.3.6 ibm_cloud_sdk_core>=3.3.6
+  '';
+
+  meta = with lib; {
+    description = "Client library to use the IBM Watson Services";
+    homepage = "https://github.com/watson-developer-cloud/python-sdk";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ globin lheckemann ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/icmplib/default.nix b/nixpkgs/pkgs/development/python-modules/icmplib/default.nix
index 2718b6340540..fdbf45edaaeb 100644
--- a/nixpkgs/pkgs/development/python-modules/icmplib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/icmplib/default.nix
@@ -4,24 +4,22 @@
 , pbr
 , pythonOlder
 , requests
-, six
 }:
 
 buildPythonPackage rec {
   pname = "icmplib";
-  version = "2.1.1";
-  disabled = pythonOlder "3.6";
+  version = "3.0.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ValentinBELYN";
     repo = pname;
     rev = "v${version}";
-    sha256 = "06xx9854yzxa7x1mjfzbhhw5rfzgjnw269j5k0rshyqh3qvw1nwv";
+    sha256 = "sha256-i5cmL8kOrehldOwX2RfVAfL4HdzJ+9S3BojJI2raUSA=";
   };
 
   propagatedBuildInputs = [
     pbr
-    six
     requests
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/ics/default.nix b/nixpkgs/pkgs/development/python-modules/ics/default.nix
index 011909d6b805..ed87f3678b15 100644
--- a/nixpkgs/pkgs/development/python-modules/ics/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ics/default.nix
@@ -1,6 +1,11 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder
-, tatsu, arrow
-, pytestCheckHook, pytest-flakes
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, tatsu
+, arrow
+, pytestCheckHook
+, pytest-flakes
 }:
 
 buildPythonPackage rec {
@@ -9,21 +14,35 @@ buildPythonPackage rec {
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
-    owner = "C4ptainCrunch";
-    repo = "ics.py";
+    owner = "ics-py";
+    repo = "ics-py";
     rev = "v${version}";
     sha256 = "0rrdc9rcxc3ys6rml81b8m8qdlisk78a34bdib0wy65hlkmyyykn";
   };
 
-  propagatedBuildInputs = [ tatsu arrow ];
+  propagatedBuildInputs = [
+    arrow
+    tatsu
+  ];
+
+  checkInputs = [
+    pytest-flakes
+    pytestCheckHook
+  ];
 
   postPatch = ''
+    # 0.8 will move to python-dateutil
     substituteInPlace requirements.txt \
       --replace "arrow>=0.11,<0.15" "arrow"
     substituteInPlace setup.cfg --replace "--pep8" ""
   '';
 
-  checkInputs = [ pytestCheckHook pytest-flakes ];
+  disabledTests = [
+    # Failure seems to be related to arrow > 1.0
+    "test_event"
+  ];
+
+  pythonImportsCheck = [ "ics" ];
 
   meta = with lib; {
     description = "Pythonic and easy iCalendar library (RFC 5545)";
@@ -32,9 +51,8 @@ buildPythonPackage rec {
       write ics data in a developer friendly way.
     '';
     homepage = "http://icspy.readthedocs.org/en/stable/";
-    changelog = "https://github.com/C4ptainCrunch/ics.py/releases/tag/v${version}";
+    changelog = "https://github.com/ics-py/ics-py/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ primeos ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ignite/default.nix b/nixpkgs/pkgs/development/python-modules/ignite/default.nix
index 71bed73f9d7b..f745b735f342 100644
--- a/nixpkgs/pkgs/development/python-modules/ignite/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ignite/default.nix
@@ -8,7 +8,7 @@
 , mock
 , pytorch
 , pynvml
-, scikitlearn
+, scikit-learn
 , tqdm
 }:
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ pytestCheckHook matplotlib mock pytest_xdist ];
-  propagatedBuildInputs = [ pytorch scikitlearn tqdm pynvml ];
+  propagatedBuildInputs = [ pytorch scikit-learn tqdm pynvml ];
 
   # runs succesfully in 3.9, however, async isn't correctly closed so it will fail after test suite.
   doCheck = pythonOlder "3.9";
diff --git a/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/default.nix b/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/default.nix
index db59ba70bb26..bb186d6594c0 100644
--- a/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/default.nix
@@ -1,29 +1,42 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, fetchpatch
 , isPy3k
+, fetchPypi
+, substituteAll
+, ffmpeg
+, python
 }:
 
 buildPythonPackage rec {
   pname = "imageio-ffmpeg";
-  version = "0.4.2";
+  version = "0.4.3";
+
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "13b05b17a941a9f4a90b16910b1ffac159448cff051a153da8ba4b4343ffa195";
+    sha256 = "f826260a3207b872f1a4ba87ec0c8e02c00afba4fd03348a59049bdd8215841e";
   };
-  patches = [ (fetchpatch {
-    # Fixes compatibility with python3.9
-    # Should be included in the next release after 0.4.2
-    url = "https://github.com/imageio/imageio-ffmpeg/pull/43/commits/b90c39fe3d29418d67d953588ed9fdf4d848f811.patch";
-    sha256 = "0d9kf4w6ldwag3s2dr9zjin6wrj66fnl4fn8379ci4q4qfsqgx3f";
-  })];
 
-  disabled = !isPy3k;
+  patches = [
+    (substituteAll {
+      src = ./ffmpeg-path.patch;
+      ffmpeg = "${ffmpeg}/bin/ffmpeg";
+    })
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+
+    ${python.interpreter} << EOF
+    from imageio_ffmpeg import get_ffmpeg_version
+    assert get_ffmpeg_version() == '${ffmpeg.version}'
+    EOF
+
+    runHook postCheck
+  '';
 
-  # No test infrastructure in repository.
-  doCheck = false;
+  pythonImportsCheck = [ "imageio_ffmpeg" ];
 
   meta = with lib; {
     description = "FFMPEG wrapper for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/ffmpeg-path.patch b/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/ffmpeg-path.patch
new file mode 100644
index 000000000000..d193ec199f9b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/imageio-ffmpeg/ffmpeg-path.patch
@@ -0,0 +1,39 @@
+diff --git a/imageio_ffmpeg/_utils.py b/imageio_ffmpeg/_utils.py
+index 1399cfd..c0eb9be 100644
+--- a/imageio_ffmpeg/_utils.py
++++ b/imageio_ffmpeg/_utils.py
+@@ -23,33 +23,7 @@ def get_ffmpeg_exe():
+     if exe:
+         return exe
+ 
+-    plat = get_platform()
+-
+-    # 2. Try from here
+-    bin_dir = resource_filename("imageio_ffmpeg", "binaries")
+-    exe = os.path.join(bin_dir, FNAME_PER_PLATFORM.get(plat, ""))
+-    if exe and os.path.isfile(exe) and _is_valid_exe(exe):
+-        return exe
+-
+-    # 3. Try binary from conda package
+-    # (installed e.g. via `conda install ffmpeg -c conda-forge`)
+-    if plat.startswith("win"):
+-        exe = os.path.join(sys.prefix, "Library", "bin", "ffmpeg.exe")
+-    else:
+-        exe = os.path.join(sys.prefix, "bin", "ffmpeg")
+-    if exe and os.path.isfile(exe) and _is_valid_exe(exe):
+-        return exe
+-
+-    # 4. Try system ffmpeg command
+-    exe = "ffmpeg"
+-    if _is_valid_exe(exe):
+-        return exe
+-
+-    # Nothing was found
+-    raise RuntimeError(
+-        "No ffmpeg exe could be found. Install ffmpeg on your system, "
+-        "or set the IMAGEIO_FFMPEG_EXE environment variable."
+-    )
++    return '@ffmpeg@'
+ 
+ 
+ def _popen_kwargs(prevent_sigint=False):
diff --git a/nixpkgs/pkgs/development/python-modules/imageio/default.nix b/nixpkgs/pkgs/development/python-modules/imageio/default.nix
index 2b334fd121ce..1672e798f304 100644
--- a/nixpkgs/pkgs/development/python-modules/imageio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imageio/default.nix
@@ -1,17 +1,12 @@
 { lib
 , buildPythonPackage
 , isPy27
-, pathlib
 , fetchPypi
-, pillow
-, psutil
 , imageio-ffmpeg
-, pytest
 , numpy
-, isPy3k
-, ffmpeg_3
-, futures ? null
-, enum34
+, pillow
+, psutil
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -24,26 +19,21 @@ buildPythonPackage rec {
     inherit pname version;
   };
 
-  checkInputs = [ pytest psutil ] ++ lib.optionals isPy3k [
-    imageio-ffmpeg ffmpeg_3
-    ];
-  propagatedBuildInputs = [ numpy pillow ];
+  propagatedBuildInputs = [
+    imageio-ffmpeg
+    numpy
+    pillow
+  ];
+
+  checkInputs = [
+    psutil
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
+  preCheck = ''
     export IMAGEIO_USERDIR="$TMP"
     export IMAGEIO_NO_INTERNET="true"
     export HOME="$(mktemp -d)"
-    py.test
-  '';
-
-  # For some reason, importing imageio also imports xml on Nix, see
-  # https://github.com/imageio/imageio/issues/395
-
-  # Also, there are tests that test the downloading of ffmpeg if it's not installed.
-  # "Uncomment" those by renaming.
-  postPatch = ''
-    substituteInPlace tests/test_meta.py --replace '"urllib",' "\"urllib\",\"xml\","
-    substituteInPlace tests/test_ffmpeg.py --replace 'test_get_exe_installed' 'get_exe_installed'
   '';
 
   meta = with lib; {
@@ -51,5 +41,4 @@ buildPythonPackage rec {
     homepage = "http://imageio.github.io/";
     license = licenses.bsd2;
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/imap-tools/default.nix b/nixpkgs/pkgs/development/python-modules/imap-tools/default.nix
index 700c23827faa..75de29b233db 100644
--- a/nixpkgs/pkgs/development/python-modules/imap-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imap-tools/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "imap-tools";
-  version = "0.40.0";
+  version = "0.41.0";
 
   disabled = isPy27;
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "ikvk";
     repo = "imap_tools";
     rev = "v${version}";
-    sha256 = "sha256-7qLiVN3pBkbZQlA12ZOkgpiV/JybrPTmEIeJjy4ZS3A=";
+    sha256 = "sha256-gtfVZTHeiYamKkcu9n/CJ4O4X1YneY2QB3XZnvtNL3U=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/imapclient/default.nix b/nixpkgs/pkgs/development/python-modules/imapclient/default.nix
index 27667f860ff1..ea4f388b6c7e 100644
--- a/nixpkgs/pkgs/development/python-modules/imapclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imapclient/default.nix
@@ -1,35 +1,30 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, mock
 , six
+, pytestCheckHook
+, mock
 }:
 
 buildPythonPackage rec {
   pname = "IMAPClient";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "mjs";
     repo = "imapclient";
     rev = version;
-    sha256 = "1zc8qj8ify2zygbz255b6fcg7jhprswf008ccwjmbrnj08kh9l4x";
+    sha256 = "sha256-q/8LFKHgrY3pQV7Coz+5pZAw696uABMTEkYoli6C2KA=";
   };
 
-  # fix test failing in python 36
-  postPatch = ''
-    substituteInPlace tests/test_imapclient.py \
-      --replace "if sys.version_info >= (3, 7):" "if sys.version_info >= (3, 6, 4):"
-  '';
-
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ mock ];
+  checkInputs = [ pytestCheckHook mock ];
 
   meta = with lib; {
     homepage = "https://imapclient.readthedocs.io";
     description = "Easy-to-use, Pythonic and complete IMAP client library";
     license = licenses.bsd3;
-    maintainers = [ maintainers.almac ];
+    maintainers = with maintainers; [ almac dotlambda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/imbalanced-learn/0.4.nix b/nixpkgs/pkgs/development/python-modules/imbalanced-learn/0.4.nix
index 96ba16b1cd1a..6709092ca955 100644
--- a/nixpkgs/pkgs/development/python-modules/imbalanced-learn/0.4.nix
+++ b/nixpkgs/pkgs/development/python-modules/imbalanced-learn/0.4.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, scikitlearn, pandas, nose, pytest }:
+{ lib, buildPythonPackage, fetchPypi, scikit-learn, pandas, nose, pytest }:
 
 buildPythonPackage rec {
   pname = "imbalanced-learn";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "5bd9e86e40ce4001a57426541d7c79b18143cbd181e3330c1a3e5c5c43287083";
   };
 
-  propagatedBuildInputs = [ scikitlearn ];
+  propagatedBuildInputs = [ scikit-learn ];
   checkInputs = [ nose pytest pandas ];
   checkPhase = ''
     export HOME=$PWD
diff --git a/nixpkgs/pkgs/development/python-modules/imbalanced-learn/default.nix b/nixpkgs/pkgs/development/python-modules/imbalanced-learn/default.nix
index cf3fca9aa03c..aad2e3e07a45 100644
--- a/nixpkgs/pkgs/development/python-modules/imbalanced-learn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imbalanced-learn/default.nix
@@ -4,7 +4,7 @@
 , isPy27
 , pandas
 , pytestCheckHook
-, scikitlearn
+, scikit-learn
 }:
 
 buildPythonPackage rec {
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "0a9xrw4qsh95g85pg2611hvj6xcfncw646si2icaz22haw1x410w";
   };
 
-  propagatedBuildInputs = [ scikitlearn ];
+  propagatedBuildInputs = [ scikit-learn ];
   checkInputs = [ pytestCheckHook pandas ];
   preCheck = ''
     export HOME=$TMPDIR
diff --git a/nixpkgs/pkgs/development/python-modules/img2pdf/default.nix b/nixpkgs/pkgs/development/python-modules/img2pdf/default.nix
index eb8605c45ddc..204e3e93b8d3 100644
--- a/nixpkgs/pkgs/development/python-modules/img2pdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/img2pdf/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "img2pdf";
-  version = "0.4.0";
+  version = "0.4.1";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "eaee690ab8403dd1a9cb4db10afee41dd3e6c7ed63bdace02a0121f9feadb0c9";
+    sha256 = "sha256-OKEinKhLIR13gtHWWtclGpeBvyT29kl8c4x1X8/tVVI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/imgaug/default.nix b/nixpkgs/pkgs/development/python-modules/imgaug/default.nix
index 343c7869a6c1..ab3cdd6e6d06 100644
--- a/nixpkgs/pkgs/development/python-modules/imgaug/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imgaug/default.nix
@@ -4,7 +4,7 @@
 , imagecorruptions
 , numpy
 , opencv3
-, pytest
+, pytestCheckHook
 , scikitimage
 , scipy
 , shapely
@@ -43,11 +43,30 @@ buildPythonPackage rec {
     six
   ];
 
-  checkPhase = ''
-     pytest ./test
-  '';
+  checkInputs = [
+    opencv3
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # Tests are outdated
+    "test_quokka_segmentation_map"
+    "test_pool"
+    "test_avg_pool"
+    "test_max_pool"
+    "test_min_pool"
+    "est_median_pool"
+    "test_alpha_is_080"
+    "test_face_and_lines_at_half_visibility"
+    "test_polygon_fully_inside_image__no_rectangular_shape"
+  ];
+
+  disabledTestPaths = [
+    # TypeError:  int() argument must be a string, a bytes-like object or a number, not 'NoneType'
+    "test/augmenters/test_pooling.py"
+  ];
 
-  checkInputs = [ opencv3 pytest ];
+  pythonImportsCheck = [ "imgaug" ];
 
   meta = with lib; {
     homepage = "https://github.com/aleju/imgaug";
diff --git a/nixpkgs/pkgs/development/python-modules/importlib-resources/2.nix b/nixpkgs/pkgs/development/python-modules/importlib-resources/2.nix
new file mode 100644
index 000000000000..1034c3111306
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/importlib-resources/2.nix
@@ -0,0 +1,38 @@
+{ 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/nixpkgs/pkgs/development/python-modules/importlib-resources/default.nix b/nixpkgs/pkgs/development/python-modules/importlib-resources/default.nix
index cd8fec1e54e0..2388fb1b26df 100644
--- a/nixpkgs/pkgs/development/python-modules/importlib-resources/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/importlib-resources/default.nix
@@ -1,8 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
-, toml
+, setuptools-scm
 , importlib-metadata
 , typing ? null
 , singledispatch ? null
@@ -11,15 +10,16 @@
 }:
 
 buildPythonPackage rec {
-  pname = "importlib_resources";
+  pname = "importlib-resources";
   version = "5.1.2";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "importlib_resources";
+    inherit version;
     sha256 = "642586fc4740bd1cad7690f836b3321309402b20b332529f25617ff18e8e1370";
   };
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     importlib-metadata
   ] ++ lib.optional (pythonOlder "3.4") singledispatch
@@ -34,5 +34,6 @@ buildPythonPackage rec {
     description = "Read resources from Python packages";
     homepage = "https://importlib-resources.readthedocs.io/";
     license = licenses.asl20;
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/imread/default.nix b/nixpkgs/pkgs/development/python-modules/imread/default.nix
index 3d09e6a43971..9d5ea1bebd20 100644
--- a/nixpkgs/pkgs/development/python-modules/imread/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/imread/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "python-imread";
-  version = "0.7.0";
+  version = "0.7.4";
 
   src = fetchPypi {
     inherit version;
     pname = "imread";
-    sha256 = "0yb0fmy6ilh5fvbk69wl2bzqgss2g0951668mx8z9yyj4jhr1z2y";
+    sha256 = "0kvlpy62vc16i0mysv1b2gv746in41q75hb815q6h8d227psv1q4";
   };
 
 
diff --git a/nixpkgs/pkgs/development/python-modules/incremental/default.nix b/nixpkgs/pkgs/development/python-modules/incremental/default.nix
index 6cbed7221a8f..b79ba4b7db2e 100644
--- a/nixpkgs/pkgs/development/python-modules/incremental/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/incremental/default.nix
@@ -13,6 +13,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/twisted/treq";
     description = "Incremental is a small library that versions your Python projects";
     license = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/inflect/default.nix b/nixpkgs/pkgs/development/python-modules/inflect/default.nix
index b8ebce462dce..f81ceabd27e1 100644
--- a/nixpkgs/pkgs/development/python-modules/inflect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/inflect/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 , toml
 , pytestCheckHook
 }:
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "41a23f6788962e9775e40e2ecfb1d6455d02de315022afeedd3c5dc070019d73";
   };
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
 
   checkInputs = [ pytestCheckHook ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix b/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
index 82153f4b3d9b..38f6f58910db 100644
--- a/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
@@ -14,22 +14,16 @@
 
 buildPythonPackage rec {
   pname = "influxdb-client";
-  version = "1.15.0";
-
-  disabled = pythonOlder "3.6"; # requires python version >=3.6
+  version = "1.17.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "influxdata";
     repo = "influxdb-client-python";
     rev = "v${version}";
-    sha256 = "1b2xh78v965rgafyj7cdbjm2p96d74f7ifsqllc7242n9wv3k53q";
+    sha256 = "1xxg8z9zambbhr7nmxhmvmiwkd4578zxr6rl2vhdh2w77idsw29z";
   };
 
-  # makes test not reproducible
-  postPatch = ''
-    sed -i -e '/randomize/d' test-requirements.txt
-  '';
-
   propagatedBuildInputs = [
     rx
     certifi
@@ -44,6 +38,8 @@ buildPythonPackage rec {
   # requires influxdb server
   doCheck = false;
 
+  pythonImportsCheck = [ "influxdb_client" ];
+
   meta = with lib; {
     description = "InfluxDB 2.0 Python client library";
     homepage = "https://github.com/influxdata/influxdb-client-python";
diff --git a/nixpkgs/pkgs/development/python-modules/infoqscraper/default.nix b/nixpkgs/pkgs/development/python-modules/infoqscraper/default.nix
deleted file mode 100644
index b250dfc6c7f6..000000000000
--- a/nixpkgs/pkgs/development/python-modules/infoqscraper/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, html5lib
-, six
-, beautifulsoup4
-, pkgs
-}:
-
-buildPythonPackage rec {
-  version = "0.1.0";
-  pname = "infoqscraper";
-
-  src = pkgs.fetchFromGitHub {
-    owner = "cykl";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "07mxp4mla7fwfc032f3mxrhjarnhkjqdxxibf9ba87c93z3dq8jj";
-  };
-
-  # requires network
-  doCheck = false;
-
-  buildInputs = [ html5lib ];
-  propagatedBuildInputs = [ six beautifulsoup4 pkgs.ffmpeg_3 pkgs.swftools pkgs.rtmpdump ];
-
-  meta = with lib; {
-    description = "Discover presentations and/or create a movie consisting of slides and audio track from an infoq url";
-    homepage = "https://github.com/cykl/infoqscraper/wiki";
-    license = licenses.mit;
-    maintainers = with maintainers; [ edwtjo ];
-  };
-
-}
diff --git a/nixpkgs/pkgs/development/python-modules/injector/default.nix b/nixpkgs/pkgs/development/python-modules/injector/default.nix
new file mode 100644
index 000000000000..921db5d1a877
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/injector/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchPypi, typing-extensions }:
+
+buildPythonPackage rec {
+  pname = "injector";
+  version = "0.18.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "10miwi58g4b8rvdf1pl7s7x9j91qyxxv3kdn5idzkfc387hqxn6f";
+  };
+
+  propagatedBuildInputs = [ typing-extensions ];
+
+  doCheck = false; # No tests are available
+  pythonImportsCheck = [ "injector" ];
+
+  meta = with lib; {
+    description = "Python dependency injection framework, inspired by Guice";
+    homepage = "https://github.com/alecthomas/injector";
+    maintainers = [ maintainers.ivar ];
+    license = licenses.bsd3;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix b/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
index 0d1fb08e2a4e..20e7986188c5 100644
--- a/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
@@ -19,11 +19,11 @@
 
 buildPythonPackage rec {
   pname = "internetarchive";
-  version = "2.0.2";
+  version = "2.0.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "515e6646a2b917c15f2241670d21f14a014b9c67dc509aef4d4aca5a59cdda65";
+    sha256 = "2ce0ab89fea37e5b2311bc7d163955e84f73f6beeac3942e17e9d51ad7cc9ffa";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ipdb/default.nix b/nixpkgs/pkgs/development/python-modules/ipdb/default.nix
index fbdfd5b7900a..b34aa13bbcfc 100644
--- a/nixpkgs/pkgs/development/python-modules/ipdb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipdb/default.nix
@@ -3,21 +3,21 @@
 , fetchPypi
 , ipython
 , isPyPy
-, isPy27
 , mock
+, toml
 }:
 
 buildPythonPackage rec {
   pname = "ipdb";
   version = "0.13.7";
-  disabled = isPyPy || isPy27;  # setupterm: could not find terminfo database
+  disabled = isPyPy;  # setupterm: could not find terminfo database
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "178c367a61c1039e44e17c56fcc4a6e7dc11b33561261382d419b6ddb4401810";
   };
 
-  propagatedBuildInputs = [ ipython ];
+  propagatedBuildInputs = [ ipython toml ];
   checkInputs = [ mock ];
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix b/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
index a0efa9b575db..e6e1e605cca5 100644
--- a/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "ipydatawidgets";
-  version = "4.2.0";
+  version = "4.1.0";
 
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d0e4b58b59b508165e8562b8f5d1dbfcd739855847ec0477bd9185a5e9b7c5bc";
+    sha256 = "d9f94828c11e3b40350fb14a02e027f42670a7c372bcb30db18d552dcfab7c01";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ipympl/default.nix b/nixpkgs/pkgs/development/python-modules/ipympl/default.nix
index 44c8c7bfd061..2d25eb645bad 100644
--- a/nixpkgs/pkgs/development/python-modules/ipympl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipympl/default.nix
@@ -1,4 +1,10 @@
-{ lib, buildPythonPackage, fetchPypi, ipywidgets, matplotlib }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, ipywidgets
+, matplotlib
+, jupyter-packaging
+}:
 
 buildPythonPackage rec {
   pname = "ipympl";
@@ -9,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "f0f1f356d8cb9d4fb51bb86dbbf837c190145316cb72f66081872ebc4d6db0a1";
   };
 
-  propagatedBuildInputs = [ ipywidgets matplotlib ];
+  propagatedBuildInputs = [ ipywidgets matplotlib jupyter-packaging ];
 
   # There are no unit tests in repository
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/irc/default.nix b/nixpkgs/pkgs/development/python-modules/irc/default.nix
index ed113dc6da64..60a960a204c4 100644
--- a/nixpkgs/pkgs/development/python-modules/irc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/irc/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
 , six, jaraco_logging, jaraco_text, jaraco_stream, pytz, jaraco_itertools
-, setuptools_scm, jaraco_collections, importlib-metadata, toml
+, setuptools-scm, jaraco_collections, importlib-metadata, toml
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "irc" ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     six
     importlib-metadata
diff --git a/nixpkgs/pkgs/development/python-modules/isbnlib/default.nix b/nixpkgs/pkgs/development/python-modules/isbnlib/default.nix
index db05436d04e6..746cd3ab8adf 100644
--- a/nixpkgs/pkgs/development/python-modules/isbnlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/isbnlib/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "isbnlib";
-  version = "3.10.7";
+  version = "3.10.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-gbMxV9qOLCpIH3rUceG1ds9ZUpjwOv1gyYL3GLkS3Ik=";
+    sha256 = "sha256-6kBu8uFDiKs5ZJXw9gTS08lstaJWuWvAVW3Ycc19x7Q=";
   };
 
   checkInputs = [
@@ -22,7 +22,13 @@ buildPythonPackage rec {
   # requires network connection
   doCheck = false;
 
-  pythonImportsCheck = [ "isbnlib" ];
+  pythonImportsCheck = [
+    "isbnlib"
+    "isbnlib.config"
+    "isbnlib.dev"
+    "isbnlib.dev.helpers"
+    "isbnlib.registry"
+  ];
 
   meta = with lib; {
     description = "Extract, clean, transform, hyphenate and metadata for ISBNs";
diff --git a/nixpkgs/pkgs/development/python-modules/iso8601/default.nix b/nixpkgs/pkgs/development/python-modules/iso8601/default.nix
index 783f6f1eb305..d0a74f400bba 100644
--- a/nixpkgs/pkgs/development/python-modules/iso8601/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/iso8601/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytest
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -13,15 +13,18 @@ buildPythonPackage rec {
     sha256 = "8aafd56fa0290496c5edbb13c311f78fa3a241f0853540da09d9363eae3ebd79";
   };
 
-  checkInputs = [ pytest ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
-    py.test iso8601
-  '';
+  pytestFlagsArray = [ "iso8601" ];
 
-  meta = {
-    homepage = "https://bitbucket.org/micktwomey/pyiso8601/";
+  pythonImportsCheck = [ "iso8601" ];
+
+  meta = with lib; {
     description = "Simple module to parse ISO 8601 dates";
-    maintainers = with lib.maintainers; [ phreedom ];
+    homepage = "https://pyiso8601.readthedocs.io/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/isort/4.nix b/nixpkgs/pkgs/development/python-modules/isort/4.nix
index b2ef4e66f361..5da9a5c6b306 100644
--- a/nixpkgs/pkgs/development/python-modules/isort/4.nix
+++ b/nixpkgs/pkgs/development/python-modules/isort/4.nix
@@ -38,6 +38,6 @@ in buildPythonPackage rec {
     description = "A Python utility / library to sort Python imports";
     homepage = "https://github.com/timothycrosley/isort";
     license = licenses.mit;
-    maintainers = with maintainers; [ couchemar nand0p ];
+    maintainers = with maintainers; [ couchemar ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/isort/default.nix b/nixpkgs/pkgs/development/python-modules/isort/default.nix
index bc11697339e8..1195f0f6b097 100644
--- a/nixpkgs/pkgs/development/python-modules/isort/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/isort/default.nix
@@ -72,6 +72,6 @@ in buildPythonPackage rec {
     description = "A Python utility / library to sort Python imports";
     homepage = "https://github.com/PyCQA/isort";
     license = licenses.mit;
-    maintainers = with maintainers; [ couchemar nand0p ];
+    maintainers = with maintainers; [ couchemar ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/itypes/default.nix b/nixpkgs/pkgs/development/python-modules/itypes/default.nix
index 1b6845472404..36581bf2db50 100644
--- a/nixpkgs/pkgs/development/python-modules/itypes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/itypes/default.nix
@@ -26,6 +26,6 @@ buildPythonPackage rec {
     description = "Simple immutable types for python";
     homepage = "https://github.com/tomchristie/itypes";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ivegotasthma ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_classes/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_classes/default.nix
index 9054f1f109c5..a727e774ec30 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_classes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_classes/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27
-, setuptools_scm, toml
+, setuptools-scm, toml
 , more-itertools
 , pytestCheckHook
 }:
@@ -20,7 +20,7 @@ buildPythonPackage rec {
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
 
   propagatedBuildInputs = [ more-itertools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_collections/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_collections/default.nix
index eac4e2ca328a..17bb30e1352a 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_collections/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_collections/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchPypi, setuptools_scm
+{ buildPythonPackage, fetchPypi, setuptools-scm
 , six, jaraco_classes, jaraco_text
 }:
 
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   pythonNamespaces = [ "jaraco" ];
 
   doCheck = false;
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six jaraco_classes jaraco_text ];
 
   # break dependency cycle
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_functools/2.nix b/nixpkgs/pkgs/development/python-modules/jaraco_functools/2.nix
index e0bbde47d250..e10a11018a5d 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_functools/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_functools/2.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools_scm
+, setuptools-scm
 , more-itertools, backports_functools_lru_cache }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   doCheck = false;
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
 
   meta = with lib; {
     description = "Additional functools in the spirit of stdlib's functools";
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_functools/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_functools/default.nix
index 3fa4de9f3d95..534b18764f33 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_functools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_functools/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools_scm, toml
+, setuptools-scm, toml
 , more-itertools, backports_functools_lru_cache }:
 
 buildPythonPackage rec {
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "97cf88b46ab544c266e2d81fa17bb183622268722a7dd1a3711ea426e9c26f94";
   };
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
 
   propagatedBuildInputs = [ more-itertools backports_functools_lru_cache ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_itertools/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_itertools/default.nix
index 91bb83fdb5a4..9b34a4c441d4 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_itertools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_itertools/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm
 , inflect, more-itertools, six, pytest
 }:
 
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   pythonNamespaces = [ "jaraco" ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ inflect more-itertools six ];
   checkInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_logging/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_logging/default.nix
index e378240e6ccc..d8ff10d95b62 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_logging/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_logging/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm
 , tempora, six
 }:
 
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   pythonNamespaces = [ "jaraco" ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ tempora six ];
 
   # test no longer packaged with pypi
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_stream/2.nix b/nixpkgs/pkgs/development/python-modules/jaraco_stream/2.nix
index e1737083c86c..1f5a70477a3f 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_stream/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_stream/2.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchPypi, setuptools_scm, six }:
+{ buildPythonPackage, fetchPypi, setuptools-scm, six }:
 
 buildPythonPackage rec {
   pname = "jaraco.stream";
@@ -8,6 +8,6 @@ buildPythonPackage rec {
     sha256 = "196synw4g76yagcflmavi7wakf5cdgsflmvbj7zs616gv03xbsf2";
   };
   doCheck = false;
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six ];
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_stream/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_stream/default.nix
index f62cb1db8ba8..367959e37ff9 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_stream/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_stream/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchPypi, setuptools_scm, six }:
+{ buildPythonPackage, fetchPypi, setuptools-scm, six }:
 
 buildPythonPackage rec {
   pname = "jaraco.stream";
@@ -12,6 +12,6 @@ buildPythonPackage rec {
   pythonNamespaces = [ "jaraco" ];
 
   doCheck = false;
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six ];
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jaraco_text/default.nix b/nixpkgs/pkgs/development/python-modules/jaraco_text/default.nix
index fb945d5b3f6f..3126ab999674 100644
--- a/nixpkgs/pkgs/development/python-modules/jaraco_text/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaraco_text/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder
 , importlib-resources
 , jaraco_functools
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   pythonNamespaces = [ "jaraco" ];
 
-  nativeBuildInputs =[ setuptools_scm ];
+  nativeBuildInputs =[ setuptools-scm ];
   propagatedBuildInputs = [
     jaraco_functools
   ] ++ lib.optional (pythonOlder "3.7") [ importlib-resources ];
diff --git a/nixpkgs/pkgs/development/python-modules/johnnycanencrypt/default.nix b/nixpkgs/pkgs/development/python-modules/johnnycanencrypt/default.nix
index 460b0cddf616..a8ce23d371f8 100644
--- a/nixpkgs/pkgs/development/python-modules/johnnycanencrypt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/johnnycanencrypt/default.nix
@@ -37,9 +37,7 @@ buildPythonPackage rec {
 
   patches = [ ./Cargo.lock.patch ];
 
-  cargoSha256 = "0ifvpdizcdp2c5x2x2j1bhhy5a75q0pk7a63dmh52mlpmh45fy6r";
-
-  LIBCLANG_PATH = llvmPackages.libclang + "/lib";
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
   propagatedBuildInputs = [
     requests
diff --git a/nixpkgs/pkgs/development/python-modules/jq/default.nix b/nixpkgs/pkgs/development/python-modules/jq/default.nix
index efc1152678f3..f9f71a587ab9 100644
--- a/nixpkgs/pkgs/development/python-modules/jq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jq/default.nix
@@ -2,14 +2,17 @@
 
 buildPythonPackage rec {
   pname = "jq";
-  version = "1.1.2";
+  version = "1.1.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "77e747c6ad10ce65479f5f9064ab036483bf307bf71fdd7d6235ef895fcc506e";
+    sha256 = "1ryxcll7601ki9rwlnryhhxpmwwnxs2qxq7kjm2b0xcqgzx1vv7r";
   };
 
-  patches = [ ./jq-py-setup.patch ];
+  patches = [
+    # Removes vendoring
+    ./jq-py-setup.patch
+  ];
 
   buildInputs = [ jq ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jq/jq-py-setup.patch b/nixpkgs/pkgs/development/python-modules/jq/jq-py-setup.patch
index df5245a0c3b5..cf8713796751 100644
--- a/nixpkgs/pkgs/development/python-modules/jq/jq-py-setup.patch
+++ b/nixpkgs/pkgs/development/python-modules/jq/jq-py-setup.patch
@@ -1,17 +1,17 @@
-From 968ddf2bd773e800e46737fced743bd00af9aa0d Mon Sep 17 00:00:00 2001
-From: William Kral <william.kral@gmail.com>
-Date: Tue, 8 Sep 2020 22:04:24 -0700
-Subject: [PATCH] Vastly simplify setup.py for distro compatibility
+From bef841b73ba7c9a79211146798ac888fce9bb55a Mon Sep 17 00:00:00 2001
+From: "Robert T. McGibbon" <rmcgibbo@gmail.com>
+Date: Fri, 7 May 2021 19:14:20 -0400
+Subject: [PATCH 1/1] Vastly simplify setup.py for distro compatibility
 
 ---
- setup.py | 101 ++-----------------------------------------------------
- 1 file changed, 2 insertions(+), 99 deletions(-)
+ setup.py | 98 +-------------------------------------------------------
+ 1 file changed, 1 insertion(+), 97 deletions(-)
 
 diff --git a/setup.py b/setup.py
-index cb63f60..87380ed 100644
+index 663792c..3ebcabe 100644
 --- a/setup.py
 +++ b/setup.py
-@@ -1,114 +1,19 @@
+@@ -1,113 +1,19 @@
  #!/usr/bin/env python
  
  import os
@@ -79,8 +79,7 @@ index cb63f60..87380ed 100644
 -            tarball_path=jq_lib_tarball_path,
 -            lib_dir=jq_lib_dir,
 -            commands=[
--                ["autoreconf", "-i"],
--                ["./configure", "CFLAGS=-fPIC", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir],
+-                ["./configure", "CFLAGS=-fPIC -pthread", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir],
 -                ["make"],
 -            ])
 -
@@ -93,7 +92,7 @@ index cb63f60..87380ed 100644
 -
 -        macosx_deployment_target = sysconfig.get_config_var("MACOSX_DEPLOYMENT_TARGET")
 -        if macosx_deployment_target:
--            os.environ['MACOSX_DEPLOYMENT_TARGET'] = macosx_deployment_target
+-            os.environ['MACOSX_DEPLOYMENT_TARGET'] = str(macosx_deployment_target)
 -
 -        def run_command(args):
 -            print("Executing: %s" % ' '.join(args))
@@ -127,21 +126,19 @@ index cb63f60..87380ed 100644
  )
  
  setup(
-@@ -120,8 +25,7 @@ setup(
-     url='http://github.com/mwilliamson/jq.py',
+@@ -120,7 +26,6 @@ setup(
      python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
      license='BSD 2-Clause',
--    ext_modules = [jq_extension],
+     ext_modules = [jq_extension],
 -    cmdclass={"build_ext": jq_build_ext},
-+    ext_modules=[jq_extension],
      classifiers=[
          'Development Status :: 5 - Production/Stable',
          'Intended Audience :: Developers',
-@@ -137,4 +41,3 @@ setup(
-         'Programming Language :: Python :: 3.8',
+@@ -137,4 +42,3 @@ setup(
+         'Programming Language :: Python :: 3.9',
      ],
  )
 -
 -- 
-2.28.0
+2.29.3
 
diff --git a/nixpkgs/pkgs/development/python-modules/json-logging/default.nix b/nixpkgs/pkgs/development/python-modules/json-logging/default.nix
new file mode 100644
index 000000000000..1f4425a3e112
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/json-logging/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, pytestCheckHook
+, wheel
+, flask
+, sanic
+, fastapi
+, uvicorn
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "json-logging";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "bobbui";
+    repo = "json-logging-python";
+    rev = version;
+    hash = "sha256-0eIhOi30r3ApyVkiBdTQps5tNj7rI+q8TjNWxTnhtMQ=";
+  };
+  patches = [
+    # Fix tests picking up test modules instead of real packages.
+    (fetchpatch {
+      url = "https://github.com/bobbui/json-logging-python/commit/6fdb64deb42fe48b0b12bda0442fd5ac5f03107f.patch";
+      sha256 = "sha256-BLfARsw2FdvY22NCaFfdFgL9wTmEZyVIi3CQpB5qU0Y=";
+    })
+  ];
+
+  # - Quart is not packaged for Nixpkgs.
+  checkInputs = [ wheel flask /*quart*/ sanic fastapi uvicorn requests pytestCheckHook ];
+  disabledTests = [ "quart" ];
+  # Tests spawn servers and try to connect to them.
+  __darwinAllowLocalNetworking = true;
+
+  meta = with lib; {
+    description = "Python library to emit logs in JSON format";
+    longDescription = ''
+      Python logging library to emit JSON log that can be easily indexed and searchable by logging infrastructure such as ELK, EFK, AWS Cloudwatch, GCP Stackdriver.
+    '';
+    homepage = "https://github.com/bobbui/json-logging-python";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/jsonpickle/default.nix b/nixpkgs/pkgs/development/python-modules/jsonpickle/default.nix
index 78d2a5f6c8ce..a91e6b3accd2 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonpickle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonpickle/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytest
-, setuptools_scm
+, setuptools-scm
 , toml
 , importlib-metadata
 }:
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   checkInputs = [ pytest ];
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
     toml
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jsonref/default.nix b/nixpkgs/pkgs/development/python-modules/jsonref/default.nix
index 3154f63f3181..2ab8ec45a701 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonref/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonref/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     description = "An implementation of JSON Reference for Python";
     homepage    = "https://github.com/gazpachoking/jsonref";
     license     = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     platforms   = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix b/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
index d90040c4269f..583936255fde 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
@@ -6,7 +6,7 @@
 , nose
 , pyperf
 , pyrsistent
-, setuptools_scm
+, setuptools-scm
 , twisted
 , vcversioner
 }:
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     sha256 = "c8a85b28d377cc7737e46e2d9f2b4f44ee3c0e1deac6bf46ddefc7187d30797a";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ attrs importlib-metadata functools32 pyrsistent ];
   checkInputs = [ nose mock pyperf twisted vcversioner ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix b/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix
index 9042498664a8..82152a8d112c 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "jsonstreams";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "dcbaker";
     repo = pname;
     rev = version;
-    sha256 = "0c85fdqkj5k4b0v0ngx2d9qbmzdsvglh4j9k9h7508bvn7l8fa4b";
+    sha256 = "0qw74wz9ngz9wiv89vmilbifsbvgs457yn1bxnzhrh7g4vs2wcav";
   };
 
   propagatedBuildInputs = [ six ];
diff --git a/nixpkgs/pkgs/development/python-modules/jupyter_core/default.nix b/nixpkgs/pkgs/development/python-modules/jupyter_core/default.nix
index cff5dc194aa4..cdd0485b6843 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyter_core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyter_core/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, isPy3k
 , ipython
 , traitlets
 , glibcLocales
@@ -12,6 +13,7 @@
 buildPythonPackage rec {
   pname = "jupyter_core";
   version = "4.7.1";
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
diff --git a/nixpkgs/pkgs/development/python-modules/jupyter_server/default.nix b/nixpkgs/pkgs/development/python-modules/jupyter_server/default.nix
index 50f193c2058c..f90c521b553b 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyter_server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyter_server/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
@@ -71,8 +72,13 @@ buildPythonPackage rec {
     "test_list_formats"
     "test_base_url"
     "test_culling"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # attempts to use trashcan, build env doesn't allow this
+    "test_delete"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications.";
     homepage = "https://github.com/jupyter-server/jupyter_server";
diff --git a/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix b/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
index c110cc0590fe..d5d1318ed63c 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
@@ -41,6 +41,8 @@ buildPythonPackage rec {
     "test_get_language_pack"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "JupyterLab Server";
     homepage = "https://jupyter.org";
diff --git a/nixpkgs/pkgs/development/python-modules/jupytext/default.nix b/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
index eedfcfbcb6e9..0b893f7776a2 100644
--- a/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
@@ -1,39 +1,54 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, GitPython
+, jupyter-packaging
+, jupyter_client
+, jupyterlab
 , markdown-it-py
+, mdit-py-plugins
 , nbformat
-, pytest
+, notebook
+, pytestCheckHook
 , pyyaml
 , toml
 }:
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.11.0";
+  version = "1.11.2";
+  format = "pyproject";
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "9062d001baaa32430fbb94a2c9394ac906db0a58da94e7aa4e414b73fd7d51bc";
+  src = fetchFromGitHub {
+    owner = "mwouts";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-S2SKAC2oT4VIVMMDbu/Puo87noAgnQs1hh88JphutA8=";
   };
 
+  buildInputs = [ jupyter-packaging jupyterlab ];
   propagatedBuildInputs = [
     markdown-it-py
+    mdit-py-plugins
     nbformat
     pyyaml
     toml
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
+    GitPython
+    jupyter_client
+    notebook
   ];
-
-  # requires test notebooks which are not shipped with the pypi release
-  # also, pypi no longer includes tests
-  doCheck = false;
-  checkPhase = ''
-    pytest
-  '';
+  # Tests that use a Jupyter notebook require $HOME to be writable.
+  HOME = "$TMPDIR";
+  # Pre-commit tests expect the source directory to be a Git repository.
+  pytestFlagsArray = [ "--ignore-glob='tests/test_pre_commit_*.py'" ];
+  pythonImportsCheck = [ "jupytext" "jupytext.cli" ];
 
   meta = with lib; {
     description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts";
diff --git a/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix b/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix
new file mode 100644
index 000000000000..727548f21d50
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, lxml
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "jxmlease";
+  version = "1.0.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "17l3w3ak07p72s8kv8hg0ilxs0kkxjn7bfwnl3g2cw58v1siab31";
+  };
+
+  propagatedBuildInputs = [
+    lxml
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m unittest discover -v
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    description = "Converts between XML and intelligent Python data structures";
+    homepage = "https://github.com/Juniper/jxmlease";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/karton-asciimagic/default.nix b/nixpkgs/pkgs/development/python-modules/karton-asciimagic/default.nix
index f62e602896b3..6edafea1d560 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-asciimagic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-asciimagic/default.nix
@@ -7,24 +7,19 @@
 
 buildPythonPackage rec {
   pname = "karton-asciimagic";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0yvd0plpwy5qkd2jljpd6wm6dlj2g8csvj1q2md23vsgx7h7v2vm";
+    sha256 = "0vj4b8man81g99g4c53zyvp1gc47c2imj5ha9r4z4bf8gs3aqsv6";
   };
 
   propagatedBuildInputs = [
     karton-core
   ];
 
-  postPatch = ''
-    substituteInPlace requirements.txt \
-      --replace "karton.core==4.0.5" "karton-core"
-  '';
-
   checkPhase = ''
     runHook preCheck
     ${python.interpreter} -m unittest discover
diff --git a/nixpkgs/pkgs/development/python-modules/karton-autoit-ripper/default.nix b/nixpkgs/pkgs/development/python-modules/karton-autoit-ripper/default.nix
new file mode 100644
index 000000000000..e675c055d786
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/karton-autoit-ripper/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, autoit-ripper
+, buildPythonPackage
+, fetchFromGitHub
+, karton-core
+, malduck
+, regex
+}:
+
+buildPythonPackage rec {
+  pname = "karton-autoit-ripper";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "CERT-Polska";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1bsqpf9w6d9fjysmnafaglg2w41gsafs2xz4dzcgc7n92shpcs8w";
+  };
+
+  propagatedBuildInputs = [
+    autoit-ripper
+    karton-core
+    malduck
+    regex
+  ];
+
+  postPatch = ''
+    substituteInPlace requirements.txt \
+      --replace "autoit-ripper==1.0.0" "autoit-ripper" \
+      --replace "malduck==3.1.0" "malduck>=3.1.0" \
+      --replace "regex==2020.2.20" "regex>=2020.2.20"
+  '';
+
+  # Project has no tests
+  doCheck = false;
+  pythonImportsCheck = [ "karton.autoit_ripper" ];
+
+  meta = with lib; {
+    description = "AutoIt script ripper for Karton framework";
+    homepage = "https://github.com/CERT-Polska/karton-autoit-ripper";
+    license = with licenses; [ bsd3 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/karton-classifier/default.nix b/nixpkgs/pkgs/development/python-modules/karton-classifier/default.nix
index a623486f03cf..ea9710ecd311 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-classifier/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-classifier/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "karton-classifier";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "05pxv0smrzgmljykc6yx0rx8b85ck7fa09xjkjw0dd7lb6bb19a6";
+    sha256 = "0s09mzsw546klnvm59wzj9vdwd2hyzgxvapi20k86q3prs9ncds6";
   };
 
   propagatedBuildInputs = [
@@ -27,7 +27,6 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace requirements.txt \
       --replace "chardet==3.0.4" "chardet" \
-      --replace "karton-core==4.0.4" "karton-core" \
       --replace "python-magic==0.4.18" "python-magic"
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/karton-config-extractor/default.nix b/nixpkgs/pkgs/development/python-modules/karton-config-extractor/default.nix
index bb2b9d4903b9..71170ac5342e 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-config-extractor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-config-extractor/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "karton-config-extractor";
-  version = "1.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1v0zqa81yjz6hm17x9hp0iwkllymqzn84dd6r2yrhillbwnjg9bb";
+    sha256 = "1kq0gbfz9y0n0bcblyrmwv4la3lcf86lf80794sdvyvn49g0brny";
   };
 
   propagatedBuildInputs = [
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace "karton.core==4.0.5" "karton-core"
+      --replace "malduck==4.1.0" "malduck"
   '';
 
   # Project has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/karton-dashboard/default.nix b/nixpkgs/pkgs/development/python-modules/karton-dashboard/default.nix
index c82cb8957826..3ec455a8aceb 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-dashboard/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-dashboard/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "karton-dashboard";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "101qmx6nmiim0vrz2ldk973ns498hnxla1xy7nys9kh9wijg4msk";
+    sha256 = "0qygv9lkd1jad5b4l0zz6hsi7m8q0fmpwaa6hpp7p9x6ql7gnyl8";
   };
 
   propagatedBuildInputs = [
@@ -27,8 +27,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace "Flask==1.1.1" "Flask" \
-      --replace "karton-core==4.1.0" "karton-core"
+      --replace "Flask==1.1.1" "Flask"
   '';
 
   # Project has no tests. pythonImportsCheck requires MinIO configuration
diff --git a/nixpkgs/pkgs/development/python-modules/karton-mwdb-reporter/default.nix b/nixpkgs/pkgs/development/python-modules/karton-mwdb-reporter/default.nix
index 68b28bffe6fa..65bb683be2b8 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-mwdb-reporter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-mwdb-reporter/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "karton-mwdb-reporter";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ks8jrc4v87q6zhwqg40w6xv2wfkzslmnfmsmmkfjj8mak8nk70f";
+    sha256 = "0jrn5c83nhcjny4bc879wrsgcr7mbazm51jzdkxmxyqf543cc841";
   };
 
   propagatedBuildInputs = [
@@ -23,8 +23,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace "karton-core==4.0.4" "karton-core" \
-      --replace "mwdblib==3.3.1" "mwdblib"
+      --replace "mwdblib==3.4.0" "mwdblib"
   '';
 
   # Project has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/karton-yaramatcher/default.nix b/nixpkgs/pkgs/development/python-modules/karton-yaramatcher/default.nix
index afe6f2aaa443..6183e9500059 100644
--- a/nixpkgs/pkgs/development/python-modules/karton-yaramatcher/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/karton-yaramatcher/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "karton-yaramatcher";
-  version = "1.0.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
     rev = "v${version}";
-    sha256 = "093h5hbx2ss4ly523gvf10a5ky3vvin6wipigvhx13y1rdxl6c9n";
+    sha256 = "0mv8v1gk6p21pw9kx6cxr76l6c5fxd3p6dk85cwfzz100h8mdvar";
   };
 
   propagatedBuildInputs = [
@@ -22,12 +22,6 @@ buildPythonPackage rec {
     yara-python
   ];
 
-  postPatch = ''
-    substituteInPlace requirements.txt \
-      --replace "karton-core==4.0.5" "karton-core" \
-      --replace "yara-python==4.0.2" "yara-python" \
-  '';
-
   checkPhase = ''
     runHook preCheck
     ${python.interpreter} -m unittest discover
diff --git a/nixpkgs/pkgs/development/python-modules/keyring/2.nix b/nixpkgs/pkgs/development/python-modules/keyring/2.nix
index ee3b42b9bb85..553b649b6382 100644
--- a/nixpkgs/pkgs/development/python-modules/keyring/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/keyring/2.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonPackage, fetchPypi
-, dbus-python, setuptools_scm, entrypoints, secretstorage
+, dbus-python, setuptools-scm, entrypoints, secretstorage
 , pytest, pytest-flake8 }:
 
 buildPythonPackage rec {
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "0f58jq58jhfzlhix7x2zz7c4ycdvcs1z3sgs4lkr4xxx680wrmk7";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [ pytest pytest-flake8 ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix b/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
index 5b53d201a0b6..abcd04a1d307 100644
--- a/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder, isPy27, six
-, pytest, backports_unittest-mock, keyring, setuptools_scm, toml
+, pytest, backports_unittest-mock, keyring, setuptools-scm, toml
 }:
 
 buildPythonPackage rec {
@@ -17,7 +17,7 @@ buildPythonPackage rec {
       --replace "--flake8" ""
   '';
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
   propagatedBuildInputs = [ six ];
 
   checkInputs = [ pytest keyring ] ++ lib.optional (pythonOlder "3.3") backports_unittest-mock;
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix
new file mode 100644
index 000000000000..7f2cacea6294
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchpatch
+, argon2_cffi
+, keyring
+, pycryptodome
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "keyrings.cryptfile";
+  # NOTE: newer releases are bugged/incompatible
+  # https://github.com/frispete/keyrings.cryptfile/issues/15
+  version = "1.3.4";
+  disabled = pythonOlder "3.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-jW+cKMm+xef8C+fl0CGe+6SEkYBHDjFX2/kLCZ62j6c=";
+  };
+
+  patches = [
+    # upstream setup.cfg has an option that is not supported
+    ./fix-testsuite.patch
+    # change of API in keyrings.testing
+    (fetchpatch {
+      url = "https://github.com/frispete/keyrings.cryptfile/commit/6fb9e45f559b8b69f7a0a519c0bece6324471d79.patch";
+      sha256 = "sha256-1878pMO9Ed1zs1pl+7gMjwx77HbDHdE1CryN8TPfPdU=";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    argon2_cffi
+    keyring
+    pycryptodome
+  ];
+
+  pythonImportsCheck = [
+    "keyrings.cryptfile"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    "test_set_properties"
+    "UncryptedFileKeyringTestCase"
+  ];
+
+  meta = with lib; {
+    description = "Encrypted file keyring backend";
+    homepage = "https://github.com/frispete/keyrings.cryptfile";
+    license = licenses.mit;
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch
new file mode 100644
index 000000000000..8e32a64e5292
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch
@@ -0,0 +1,14 @@
+diff --git a/setup.cfg b/setup.cfg
+index ec7eb30..7ffd831 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -5,9 +5,6 @@ dists = clean --all sdist bdist_wheel
+ [wheel]
+ universal = 1
+ 
+-[tool:pytest]
+-addopts = -s --cov=keyrings/cryptfile
+-
+ [egg_info]
+ tag_build = 
+ tag_date = 0
diff --git a/nixpkgs/pkgs/development/python-modules/kiwisolver/1_1.nix b/nixpkgs/pkgs/development/python-modules/kiwisolver/1_1.nix
index 0702e3518e01..762b5bc0b7b3 100644
--- a/nixpkgs/pkgs/development/python-modules/kiwisolver/1_1.nix
+++ b/nixpkgs/pkgs/development/python-modules/kiwisolver/1_1.nix
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "53eaed412477c836e1b9522c19858a8557d6e595077830146182225613b11a75";
   };
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   # Does not include tests
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/kiwisolver/default.nix b/nixpkgs/pkgs/development/python-modules/kiwisolver/default.nix
index d4d62787092b..2b157494f919 100644
--- a/nixpkgs/pkgs/development/python-modules/kiwisolver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/kiwisolver/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "950a199911a8d94683a6b10321f9345d5a3a8433ec58b217ace979e18f16e248";
   };
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   nativeBuildInputs = [
     cppy
diff --git a/nixpkgs/pkgs/development/python-modules/kmapper/default.nix b/nixpkgs/pkgs/development/python-modules/kmapper/default.nix
index 6c173661084c..87f22172c495 100644
--- a/nixpkgs/pkgs/development/python-modules/kmapper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/kmapper/default.nix
@@ -1,11 +1,11 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, scikitlearn
+, fetchFromGitHub
+, scikit-learn
 , numpy
 , scipy
 , jinja2
-, pytest
+, pytestCheckHook
 , networkx
 , matplotlib
 , python-igraph
@@ -17,20 +17,22 @@ buildPythonPackage rec {
   pname = "kmapper";
   version = "2.0.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "3708d889f96f6bbe89c52000dd9378ca4c35638180ff894b64ebbdfcfe62aab2";
+  src = fetchFromGitHub {
+    owner = "scikit-tda";
+    repo = "kepler-mapper";
+    rev = "v${version}";
+    sha256 = "0djm27si2bn18khrbb7rwhflc5ma6g9smhikhk5i1apwn5avm6l4";
   };
 
   propagatedBuildInputs = [
-    scikitlearn
+    scikit-learn
     numpy
     scipy
     jinja2
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     networkx
     matplotlib
     python-igraph
@@ -38,10 +40,6 @@ buildPythonPackage rec {
     ipywidgets
   ];
 
-  checkPhase = ''
-    pytest test --ignore test/test_drawing.py
-  '';
-
   meta = with lib; {
     description = "Python implementation of Mapper algorithm for Topological Data Analysis";
     homepage = "https://kepler-mapper.scikit-tda.org/";
diff --git a/nixpkgs/pkgs/development/python-modules/knack/default.nix b/nixpkgs/pkgs/development/python-modules/knack/default.nix
index 0b4c24afa4dc..5a05449e610b 100644
--- a/nixpkgs/pkgs/development/python-modules/knack/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/knack/default.nix
@@ -15,11 +15,11 @@
 
 buildPythonPackage rec {
   pname = "knack";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "16aa47240add6badd933a0b27576f3c090d7469177dc941e3ece05ca88123199";
+    sha256 = "4eaa50a1c5e79d1c5c8e5e1705b661721b0b83a089695e59e229cc26c64963b9";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/labelbox/default.nix b/nixpkgs/pkgs/development/python-modules/labelbox/default.nix
index ce7cff4d79b8..957b8ad5fd1f 100644
--- a/nixpkgs/pkgs/development/python-modules/labelbox/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/labelbox/default.nix
@@ -1,38 +1,67 @@
 { lib
+, backoff
+, backports-datetime-fromisoformat
 , buildPythonPackage
-, fetchPypi
-, requests
+, dataclasses
+, fetchFromGitHub
+, google-api-core
 , jinja2
+, ndjson
 , pillow
+, pydantic
+, pytest-cases
+, pytestCheckHook
+, pythonOlder
 , rasterio
+, requests
 , shapely
-, ndjson
-, backoff
-, google-api-core
-, backports-datetime-fromisoformat
 }:
 
 buildPythonPackage rec {
   pname = "labelbox";
-  version = "2.5.1";
+  version = "2.5.4";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7f2cbc5d4869d8acde865ad519fc1cc85338247cd7cf534334f988a040679219";
+  src = fetchFromGitHub {
+    owner = "Labelbox";
+    repo = "labelbox-python";
+    rev = "v${version}";
+    sha256 = "0182klvm8bjcm8fkl9w8ypj12s026czgid8ldl6jjvmzhxpmss68";
   };
 
   propagatedBuildInputs = [
-    jinja2 requests pillow rasterio shapely ndjson backoff
-    google-api-core backports-datetime-fromisoformat
+    backoff
+    backports-datetime-fromisoformat
+    dataclasses
+    google-api-core
+    jinja2
+    ndjson
+    pillow
+    pydantic
+    rasterio
+    requests
+    shapely
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "pydantic==1.8" "pydantic>=1.8"
+  '';
+
+  checkInputs = [
+    pytest-cases
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Requires network access
+    "tests/integration"
   ];
 
-  # Test cases are not running on pypi or GitHub
-  doCheck = false;
   pythonImportsCheck = [ "labelbox" ];
 
   meta = with lib; {
-    homepage = "https://github.com/Labelbox/Labelbox";
     description = "Platform API for LabelBox";
+    homepage = "https://github.com/Labelbox/labelbox-python";
     license = licenses.asl20;
     maintainers = with maintainers; [ rakesh4g ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/lark-parser/default.nix b/nixpkgs/pkgs/development/python-modules/lark-parser/default.nix
index d8996a153e64..9f787563e5a4 100644
--- a/nixpkgs/pkgs/development/python-modules/lark-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lark-parser/default.nix
@@ -1,35 +1,38 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, python
 , regex
-  # Test inputs
-, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "lark-parser";
-  version = "0.11.2";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "lark-parser";
     repo = "lark";
     rev = version;
-    sha256 = "1v1piaxpz4780km2z5i6sr9ygi9wpn09yyh999b3f4y0dcz20pbd";
+    sha256 = "1ggvlzpdzlrxl46fgi8cfq2rzlwn21shpdkm4pknnhfjlsinv913";
   };
 
+  # Optional import, but fixes some re known bugs & allows advanced regex features
   propagatedBuildInputs = [ regex ];
 
-  checkInputs = [ pytestCheckHook ];
-  disabledTestPaths = [
-    "tests/test_nearley" # requires Js2Py package (not in nixpkgs)
-  ];
-  disabledTests = [
-    "test_override_rule"  # has issue with file access paths
-  ];
+  checkPhase = ''
+    runHook preCheck
+
+    # Official way to run the tests. Runs unittest internally.
+    # pytest produces issues with some test resource paths (relies on __main__)
+    ${python.interpreter} -m tests
+
+    runHook postCheck
+  '';
 
   meta = with lib; {
     description = "A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface";
-    homepage = "https://github.com/lark-parser/lark";
+    homepage = "https://lark-parser.readthedocs.io/";
+    changelog = "https://github.com/lark-parser/lark/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ fridh drewrisinger ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/lazy-object-proxy/default.nix b/nixpkgs/pkgs/development/python-modules/lazy-object-proxy/default.nix
index 9eaae90f46ed..09232cbc6242 100644
--- a/nixpkgs/pkgs/development/python-modules/lazy-object-proxy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lazy-object-proxy/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/ldaptor/19.nix b/nixpkgs/pkgs/development/python-modules/ldaptor/19.nix
new file mode 100644
index 000000000000..cca696f1dff0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ldaptor/19.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, twisted
+, passlib
+, pyopenssl
+, pyparsing
+, service-identity
+, zope_interface
+, isPy3k
+, python
+}:
+
+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/nixpkgs/pkgs/development/python-modules/libarcus/default.nix b/nixpkgs/pkgs/development/python-modules/libarcus/default.nix
index edea85876a84..a48d70c544c3 100644
--- a/nixpkgs/pkgs/development/python-modules/libarcus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libarcus/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, python, fetchFromGitHub
-, cmake, sip, protobuf, pythonOlder }:
+, cmake, sip_4, protobuf, pythonOlder }:
 
 buildPythonPackage rec {
   pname = "libarcus";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   disabled = pythonOlder "3.4.0";
 
-  propagatedBuildInputs = [ sip ];
+  propagatedBuildInputs = [ sip_4 ];
   nativeBuildInputs = [ cmake ];
   buildInputs = [ protobuf ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/liblarch/default.nix b/nixpkgs/pkgs/development/python-modules/liblarch/default.nix
index 5ff8d25d54b5..957d37f2176a 100644
--- a/nixpkgs/pkgs/development/python-modules/liblarch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/liblarch/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , python
 , pygobject3
-, xvfb_run
+, xvfb-run
 , gobject-introspection
 , gtk3
 , pythonOlder
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   checkPhase = ''
     runHook preCheck
-    ${xvfb_run}/bin/xvfb-run -s '-screen 0 800x600x24' \
+    ${xvfb-run}/bin/xvfb-run -s '-screen 0 800x600x24' \
       ${python.interpreter} nix_run_setup test
     runHook postCheck
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/librosa/default.nix b/nixpkgs/pkgs/development/python-modules/librosa/default.nix
index ce8f2a73fa7f..45f6bffd661c 100644
--- a/nixpkgs/pkgs/development/python-modules/librosa/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/librosa/default.nix
@@ -4,7 +4,7 @@
 , joblib
 , matplotlib
 , six
-, scikitlearn
+, scikit-learn
 , decorator
 , audioread
 , resampy
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "af0b9f2ed4bbf6aecbc448a4cd27c16453c397cb6bef0f0cfba0e63afea2b839";
   };
 
-  propagatedBuildInputs = [ joblib matplotlib six scikitlearn decorator audioread resampy soundfile pooch ];
+  propagatedBuildInputs = [ joblib matplotlib six scikit-learn decorator audioread resampy soundfile pooch ];
 
   # No tests
   # 1. Internet connection is required
diff --git a/nixpkgs/pkgs/development/python-modules/libsavitar/default.nix b/nixpkgs/pkgs/development/python-modules/libsavitar/default.nix
index f6aa1b378f58..7ecd09160fff 100644
--- a/nixpkgs/pkgs/development/python-modules/libsavitar/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libsavitar/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, python, pythonOlder, fetchFromGitHub, cmake, sip }:
+{ lib, buildPythonPackage, python, pythonOlder, fetchFromGitHub, cmake, sip_4 }:
 
 buildPythonPackage rec {
   pname = "libsavitar";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ cmake ];
 
-  propagatedBuildInputs = [ sip ];
+  propagatedBuildInputs = [ sip_4 ];
 
   disabled = pythonOlder "3.4.0";
 
diff --git a/nixpkgs/pkgs/development/python-modules/lightgbm/default.nix b/nixpkgs/pkgs/development/python-modules/lightgbm/default.nix
index 1018ceaec4b2..fbe9e04b6438 100644
--- a/nixpkgs/pkgs/development/python-modules/lightgbm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lightgbm/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , llvmPackages ? null
 }:
 
@@ -23,35 +23,22 @@ buildPythonPackage rec {
 
   dontUseCmakeConfigure = true;
 
-  # we never actually explicitly call the install command so this is the only way
-  # to inject these options to it - however, openmp-library doesn't appear to have
-  # any effect, so we have to inject it into NIX_LDFLAGS manually below
-  postPatch = lib.optionalString stdenv.cc.isClang ''
-    cat >> setup.cfg <<EOF
-
-    [install]
-    openmp-include-dir=${llvmPackages.openmp}/include
-    openmp-library=${llvmPackages.openmp}/lib/libomp.dylib
-
-    EOF
-  '';
-
+  buildInputs = lib.optional stdenv.cc.isClang [ llvmPackages.openmp ];
   propagatedBuildInputs = [
     numpy
     scipy
-    scikitlearn
+    scikit-learn
   ];
 
   postConfigure = ''
     export HOME=$(mktemp -d)
-  '' + lib.optionalString stdenv.cc.isClang ''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -L${llvmPackages.openmp}/lib -lomp"
   '';
 
   # The pypi package doesn't distribute the tests from the GitHub
   # repository. It contains c++ tests which don't seem to wired up to
   # `make check`.
   doCheck = false;
+  pythonImportsCheck = [ "lightgbm" ];
 
   meta = with lib; {
     description = "A fast, distributed, high performance gradient boosting (GBDT, GBRT, GBM or MART) framework";
diff --git a/nixpkgs/pkgs/development/python-modules/linkify-it-py/default.nix b/nixpkgs/pkgs/development/python-modules/linkify-it-py/default.nix
new file mode 100644
index 000000000000..b9511bd5f35b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/linkify-it-py/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+, uc-micro-py
+}:
+
+buildPythonPackage rec {
+  pname = "linkify-it-py";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "tsutsu3";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-gd51no6VqvIiW9fbCdp30zHG/us6by7FLHV2ul/XJAM=";
+  };
+
+  propagatedBuildInputs = [ uc-micro-py ];
+
+  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "linkify_it" ];
+
+  meta = with lib; {
+    description = "Links recognition library with full unicode support";
+    homepage = "https://github.com/tsutsu3/linkify-it-py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
index ecf5990e74bc..4b2decb9550c 100644
--- a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
@@ -2,40 +2,61 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
+, installShellFiles
 , docopt
 , hidapi
 , pyusb
 , smbus-cffi
+, i2c-tools
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "liquidctl";
-  version = "1.5.1";
+  version = "1.6.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner  = pname;
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "1l6cvm8vs2gkmg4qwg5m5vqjql1gah2vd9vs7pcj2v5hf0cm5v9x";
+    sha256 = "sha256-FYpr1mYzPc0rOE75fUNjxe/57EWl+zcbIbkqFseDhzI=";
   };
 
+  nativeBuildInputs = [ installShellFiles ];
+
   propagatedBuildInputs = [
     docopt
     hidapi
     pyusb
     smbus-cffi
+    i2c-tools
   ];
 
-  # does not contain tests
-  doCheck = false;
+  outputs = [ "out" "man" ];
+
+  postInstall = ''
+    installManPage liquidctl.8
+    installShellCompletion extra/completions/liquidctl.bash
+
+    mkdir -p $out/lib/udev/rules.d
+    cp extra/linux/71-liquidctl.rules $out/lib/udev/rules.d/.
+  '';
+
+  checkInputs = [ pytestCheckHook ];
+
+  postBuild = ''
+    # needed for pythonImportsCheck
+    export XDG_RUNTIME_DIR=$TMPDIR
+  '';
+
   pythonImportsCheck = [ "liquidctl" ];
 
   meta = with lib; {
     description = "Cross-platform CLI and Python drivers for AIO liquid coolers and other devices";
     homepage    = "https://github.com/liquidctl/liquidctl";
     changelog   = "https://github.com/liquidctl/liquidctl/blob/master/CHANGELOG.md";
-    license     = licenses.gpl3;
-    maintainers = with maintainers; [ arturcygan ];
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ arturcygan evils ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/llvmlite/default.nix b/nixpkgs/pkgs/development/python-modules/llvmlite/default.nix
index b5e6847a9f0c..c7d2221a22e2 100644
--- a/nixpkgs/pkgs/development/python-modules/llvmlite/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/llvmlite/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   '';
   # Set directory containing llvm-config binary
   preConfigure = ''
-    export LLVM_CONFIG=${llvm}/bin/llvm-config
+    export LLVM_CONFIG=${llvm.dev}/bin/llvm-config
   '';
   checkPhase = ''
     ${python.executable} runtests.py
diff --git a/nixpkgs/pkgs/development/python-modules/lmdb/default.nix b/nixpkgs/pkgs/development/python-modules/lmdb/default.nix
index fc7748765f31..3e78626238a7 100644
--- a/nixpkgs/pkgs/development/python-modules/lmdb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lmdb/default.nix
@@ -4,22 +4,19 @@
 , pytestCheckHook
 , cffi
 , lmdb
-, ludios_wpull
 }:
 
 buildPythonPackage rec {
   pname = "lmdb";
-  version = "1.1.1";
+  version = "1.2.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "165cd1669b29b16c2d5cc8902b90fede15a7ee475c54d466f1444877a3f511ac";
+    sha256 = "5f76a90ebd08922acca11948779b5055f7a262687178e9e94f4e804b9f8465bc";
   };
 
   buildInputs = [ lmdb ];
 
-  propogatedBuildInputs = [ ludios_wpull ];
-
   checkInputs = [ cffi pytestCheckHook ];
 
   LMDB_FORCE_SYSTEM=1;
diff --git a/nixpkgs/pkgs/development/python-modules/localzone/default.nix b/nixpkgs/pkgs/development/python-modules/localzone/default.nix
index 0960a824817a..0fcf15fe9474 100644
--- a/nixpkgs/pkgs/development/python-modules/localzone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/localzone/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "localzone";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchFromGitHub {
     owner = "ags-slc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1vzn1vm3zf86l7qncbmghjrwyvla9dc2v8abn8jajbl47gm7r5f7";
+    sha256 = "1cbiv21yryjqy46av9hbjccks95sxznrx8nypd3yzihf1vkjiq5a";
   };
 
   propagatedBuildInputs = [ dnspython sphinx ];
diff --git a/nixpkgs/pkgs/development/python-modules/locationsharinglib/default.nix b/nixpkgs/pkgs/development/python-modules/locationsharinglib/default.nix
new file mode 100644
index 000000000000..4baf8600ac76
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/locationsharinglib/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, betamax
+, buildPythonPackage
+, cachetools
+, coloredlogs
+, emoji
+, fetchPypi
+, nose
+, python
+, pythonOlder
+, pytz
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "locationsharinglib";
+  version = "4.1.6";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "092j8z01nwjqh5zr7aj8mxl1zjd3j2irhrs39dhn47bd6db2a6ij";
+  };
+
+  propagatedBuildInputs = [
+    coloredlogs
+    requests
+    cachetools
+    pytz
+  ];
+
+  checkInputs = [
+    betamax
+    emoji
+    nose
+  ];
+
+  postPatch = ''
+    # Tests requirements want to pull in multiple modules which we don't need
+    substituteInPlace setup.py \
+      --replace "tests_require=test_requirements" "tests_require=[]"
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+    # Only coverage no real unit tests
+    ${python.interpreter} setup.py nosetests
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [ "locationsharinglib" ];
+
+  meta = with lib; {
+    description = "Python package to retrieve coordinates from a Google account";
+    homepage = "https://locationsharinglib.readthedocs.io/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mahotas/default.nix b/nixpkgs/pkgs/development/python-modules/mahotas/default.nix
index 818ff459985c..707ad9f3c8f6 100644
--- a/nixpkgs/pkgs/development/python-modules/mahotas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mahotas/default.nix
@@ -1,26 +1,36 @@
-{ buildPythonPackage, fetchFromGitHub, nose, pillow, scipy, numpy, imread, lib, stdenv }:
+{ buildPythonPackage, fetchFromGitHub, pillow, scipy, numpy, pytestCheckHook, imread, freeimage, lib, stdenv }:
 
 buildPythonPackage rec {
   pname = "mahotas";
-  version = "1.4.10";
+  version = "1.4.11";
 
   src = fetchFromGitHub {
     owner = "luispedro";
     repo = "mahotas";
     rev = "v${version}";
-    sha256 = "0fjiyl82wj1a6xzr9mss2y2rydl4zchl2cbdbg0jm0fcrs99q4hw";
+    sha256 = "029gvy1fb855pvxvy8zwj44k4s7qpqi0161bg5wldfiprrysn1kw";
   };
 
-  # remove this as soon as https://github.com/luispedro/mahotas/issues/97 is fixed
-  patches = [ ./disable-impure-tests.patch ];
+  propagatedBuildInputs = [ numpy imread pillow scipy freeimage ];
+  checkInputs = [ pytestCheckHook ];
 
-  propagatedBuildInputs = [ numpy imread pillow scipy ];
-  checkInputs = [ nose ];
+  postPatch = ''
+    substituteInPlace mahotas/io/freeimage.py --replace "/opt/local/lib" "${freeimage}/lib"
+  '';
 
-  checkPhase= ''
-    python setup.py test
+  # tests must be run in the build directory
+  preCheck = ''
+    cd build/lib*
   '';
 
+  # re-enable as soon as https://github.com/luispedro/mahotas/issues/97 is fixed
+  disabledTests = [
+    "test_colors"
+    "test_ellipse_axes"
+    "test_normalize"
+    "test_haralick3d"
+  ];
+
   disabled = stdenv.isi686; # Failing tests
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/mahotas/disable-impure-tests.patch b/nixpkgs/pkgs/development/python-modules/mahotas/disable-impure-tests.patch
deleted file mode 100644
index f19bd329e662..000000000000
--- a/nixpkgs/pkgs/development/python-modules/mahotas/disable-impure-tests.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/mahotas/tests/test_colors.py b/mahotas/tests/test_colors.py
-index 8a8183b..0d34c9f 100644
---- a/mahotas/tests/test_colors.py
-+++ b/mahotas/tests/test_colors.py
-@@ -2,7 +2,9 @@ import mahotas
- import numpy as np
- from mahotas.tests.utils import luispedro_jpg
- from mahotas.colors import rgb2xyz, rgb2lab, xyz2rgb, rgb2grey, rgb2sepia
-+from nose.tools import nottest
- 
-+@nottest
- def test_colors():
-     f = luispedro_jpg()
-     lab = rgb2lab(f)
-diff --git a/mahotas/tests/test_features_shape.py b/mahotas/tests/test_features_shape.py
-index 462f467..2381793 100644
---- a/mahotas/tests/test_features_shape.py
-+++ b/mahotas/tests/test_features_shape.py
-@@ -2,6 +2,7 @@ import mahotas.features.shape
- import numpy as np
- import mahotas as mh
- from mahotas.features.shape import roundness, eccentricity
-+from nose.tools import nottest
- 
- def test_eccentricity():
-     D = mh.disk(32, 2)
-@@ -29,6 +30,7 @@ def test_zeros():
-     I[8:4:12] = 1
-     assert eccentricity(I) == 0
- 
-+@nottest
- def test_ellipse_axes():
-     Y,X = np.mgrid[:1024,:1024]
-     Y = Y/1024.
-diff --git a/mahotas/tests/test_moments.py b/mahotas/tests/test_moments.py
-index 686c7c3..ba3487b 100644
---- a/mahotas/tests/test_moments.py
-+++ b/mahotas/tests/test_moments.py
-@@ -1,6 +1,7 @@
- import numpy as np
- import mahotas as mh
- from mahotas.features.moments import moments
-+from nose.tools import nottest
- 
- def _slow(A, p0, p1, cm):
-     c0,c1 = cm
-@@ -28,7 +29,7 @@ def test_against_slow():
-     yield perform, 1, 2, (0, 0), A
-     yield perform, 1, 0, (0, 0), A
- 
--
-+@nottest
- def test_normalize():
-     A,B = np.meshgrid(np.arange(128),np.arange(128))
-     for p0,p1 in [(1,1), (1,2), (2,1), (2,2)]:
-diff --git a/mahotas/tests/test_texture.py b/mahotas/tests/test_texture.py
-index 7e101ba..af1305d 100644
---- a/mahotas/tests/test_texture.py
-+++ b/mahotas/tests/test_texture.py
-@@ -2,7 +2,7 @@ import numpy as np
- from mahotas.features import texture
- import mahotas as mh
- import mahotas.features._texture
--from nose.tools import raises
-+from nose.tools import raises, nottest
- 
- def test__cooccurence():
-     cooccurence = mahotas.features._texture.cooccurence
-@@ -149,6 +149,7 @@ def test_float_haralick():
-     A[2,2]=12
-     texture.haralick(A)
- 
-+@nottest
- def test_haralick3d():
-     np.random.seed(22)
-     img = mahotas.stretch(255*np.random.rand(20,20,4))
diff --git a/nixpkgs/pkgs/development/python-modules/mail-parser/default.nix b/nixpkgs/pkgs/development/python-modules/mail-parser/default.nix
index 219a9066dc74..a2e7898f049d 100644
--- a/nixpkgs/pkgs/development/python-modules/mail-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mail-parser/default.nix
@@ -14,16 +14,6 @@ buildPythonPackage rec {
 
   LC_ALL = "en_US.utf-8";
 
-  # remove version bounds
-  prePatch = ''
-    sed -i -e 's/==.*//g' requirements.txt
-  ''
-  # ipaddress is part of the standard library of Python 3.3+
-  + lib.optionalString (!pythonOlder "3.3") ''
-    substituteInPlace requirements.txt \
-      --replace "ipaddress" ""
-  '';
-
   nativeBuildInputs = [ glibcLocales ];
   propagatedBuildInputs = [ simplejson six ] ++ lib.optional (pythonOlder "3.3") ipaddress;
 
diff --git a/nixpkgs/pkgs/development/python-modules/makefun/default.nix b/nixpkgs/pkgs/development/python-modules/makefun/default.nix
index 1f5596a46ccc..731226fdbfb3 100644
--- a/nixpkgs/pkgs/development/python-modules/makefun/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/makefun/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "sha256-2qNQpILtWLVyREPGUUMhkem5ewyDdDh50JExccaigIU=";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   # Disabling tests for now due to various (transitive) dependencies on modules
   # from @smarie which are, as of yet, not part of nixpkgs. Also introduces
diff --git a/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix b/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix
index c7a8a3e17f3e..322c4ac533d2 100644
--- a/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix
@@ -1,41 +1,36 @@
 { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder
 , attrs
-, coverage
+, linkify-it-py
 , psutil
 , pytest-benchmark
+, pytest-regressions
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "markdown-it-py";
-  version = "0.6.2";
+  version = "1.0.0";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "executablebooks";
-    repo = "markdown-it-py";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1g9p8pdnvjya436lii63r5gjajhmbhmyh9ngbjqf9dqny05nagz1";
+    hash = "sha256-GA7P2I8N+i2ISsVgx58zyhrfKMcZ7pL4X9T/trbsr1Y=";
   };
 
-  propagatedBuildInputs = [ attrs ];
+  propagatedBuildInputs = [ attrs linkify-it-py ]
+    ++ lib.optional (pythonOlder "3.8") typing-extensions;
 
   checkInputs = [
-    coverage
-    pytest-benchmark
     psutil
+    pytest-benchmark
+    pytest-regressions
     pytestCheckHook
   ];
-
-  disabledTests = [
-    # Requires the unpackaged pytest-regressions fixture plugin
-    "test_amsmath"
-    "test_container"
-    "test_deflist"
-    "test_dollarmath"
-    "test_spec"
-    "test_texmath"
-  ];
+  pytestImportsCheck = [ "markdown_it" ];
 
   meta = with lib; {
     description = "Markdown parser done right";
diff --git a/nixpkgs/pkgs/development/python-modules/mat2/default.nix b/nixpkgs/pkgs/development/python-modules/mat2/default.nix
index 0b097024a55f..6c1ba9a40c63 100644
--- a/nixpkgs/pkgs/development/python-modules/mat2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mat2/default.nix
@@ -3,6 +3,7 @@
 , python
 , pythonOlder
 , fetchFromGitLab
+, fetchpatch
 , substituteAll
 , bubblewrap
 , exiftool
@@ -49,6 +50,12 @@ buildPythonPackage rec {
     ./executable-name.patch
     # hardcode path to mat2 executable
     ./tests.patch
+    # remove for next release
+    (fetchpatch {
+      name = "fix-tests-ffmpeg-4.4.patch";
+      url = "https://0xacab.org/jvoisin/mat2/-/commit/c9be50f968212b01f8d8ad85e59e19c3e67d8578.patch";
+      sha256 = "0895dkv6575ps3drdfnli15cggx27n9irjx0axigrm4ql4ma0648";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/matchpy/default.nix b/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
index 132be56f19b3..794b2c8f4add 100644
--- a/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
@@ -7,7 +7,7 @@
 , pytest
 , pytestrunner
 , hypothesis
-, setuptools_scm
+, setuptools-scm
 , isPy27
 }:
 
@@ -36,7 +36,7 @@ buildPythonPackage rec {
        --replace "pytest>=3.0,<4.0" "pytest"
   '';
 
-  buildInputs = [ setuptools_scm pytestrunner ];
+  buildInputs = [ setuptools-scm pytestrunner ];
   checkInputs = [ pytest hypothesis ];
   propagatedBuildInputs = [ hopcroftkarp multiset ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/matplotlib/2.nix b/nixpkgs/pkgs/development/python-modules/matplotlib/2.nix
index 2c929d9a694e..a6ee1a3bade7 100644
--- a/nixpkgs/pkgs/development/python-modules/matplotlib/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/matplotlib/2.nix
@@ -1,24 +1,16 @@
-{ lib, stdenv, fetchPypi, python, buildPythonPackage, pycairo, backports_functools_lru_cache
+{ lib, stdenv, fetchPypi, writeText, python, buildPythonPackage, pycairo, backports_functools_lru_cache
 , which, cycler, dateutil, nose, numpy, pyparsing, sphinx, tornado, kiwisolver
 , freetype, libpng, pkg-config, mock, pytz, pygobject3, gobject-introspection, functools32, subprocess32
 , fetchpatch
-, enableGhostscript ? false, ghostscript ? null, gtk3
+, enableGhostscript ? false, ghostscript, gtk3
 , enableGtk3 ? false, cairo
 # darwin has its own "MacOSX" backend
-, enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
+, enableTk ? !stdenv.isDarwin, tcl, tk, tkinter, libX11
 , enableQt ? false, pyqt4
 , Cocoa
 , pythonOlder
 }:
 
-assert enableGhostscript -> ghostscript != null;
-assert enableTk -> (tcl != null)
-                && (tk != null)
-                && (tkinter != null)
-                && (libX11 != null)
-                ;
-assert enableQt -> pyqt4 != null;
-
 buildPythonPackage rec {
   version = "2.2.3";
   pname = "matplotlib";
@@ -54,7 +46,10 @@ buildPythonPackage rec {
     ++ lib.optionals enableQt [ pyqt4 ]
     ++ lib.optionals python.isPy2 [ functools32 subprocess32 ];
 
-  setup_cfg = ./setup.cfg;
+  passthru.config = {
+    directories = { basedirlist = "."; };
+  };
+  setup_cfg = writeText "setup.cfg" (lib.generators.toINI {} passthru.config);
   preBuild = ''
     cp "$setup_cfg" ./setup.cfg
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix b/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
index 4be4189f8c7a..12ef896117ab 100644
--- a/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
@@ -1,33 +1,30 @@
-{ lib, stdenv, fetchPypi, python, buildPythonPackage, isPy3k, pycairo, backports_functools_lru_cache
-, which, cycler, dateutil, nose, numpy, pyparsing, sphinx, tornado, kiwisolver
-, freetype, libpng, pkg-config, mock, pytz, pygobject3, gobject-introspection
+{ lib, stdenv, fetchPypi, writeText, buildPythonPackage, isPy3k, pycairo
+, which, cycler, dateutil, numpy, pyparsing, sphinx, tornado, kiwisolver
+, freetype, qhull, libpng, pkg-config, mock, pytz, pygobject3, gobject-introspection
 , certifi, pillow
-, enableGhostscript ? true, ghostscript ? null, gtk3
+, enableGhostscript ? true, ghostscript, gtk3
 , enableGtk3 ? false, cairo
 # darwin has its own "MacOSX" backend
-, enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
-, enableQt ? false, pyqt5 ? null
+, enableTk ? !stdenv.isDarwin, tcl, tk, tkinter
+, enableQt ? false, pyqt5
+# required for headless detection
+, libX11, wayland
 , Cocoa
-, pythonOlder
 }:
 
-assert enableGhostscript -> ghostscript != null;
-assert enableTk -> (tcl != null)
-                && (tk != null)
-                && (tkinter != null)
-                && (libX11 != null)
-                ;
-assert enableQt -> pyqt5 != null;
+let
+  interactive = enableTk || enableGtk3 || enableQt;
+in
 
 buildPythonPackage rec {
-  version = "3.3.4";
+  version = "3.4.1";
   pname = "matplotlib";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3e477db76c22929e4c6876c44f88d790aacdf3c3f8f3a90cb1975c0bf37825b0";
+    sha256 = "84d4c4f650f356678a5d658a43ca21a41fca13f9b8b00169c0b76e6a6a948908";
   };
 
   XDG_RUNTIME_DIR = "/tmp";
@@ -39,13 +36,23 @@ buildPythonPackage rec {
     ++ lib.optional stdenv.isDarwin [ Cocoa ];
 
   propagatedBuildInputs =
-    [ cycler dateutil numpy pyparsing tornado freetype kiwisolver
-      certifi libpng mock pytz pillow ]
+    [ cycler dateutil numpy pyparsing tornado freetype qhull
+      kiwisolver certifi libpng mock pytz pillow ]
     ++ lib.optionals enableGtk3 [ cairo pycairo gtk3 gobject-introspection pygobject3 ]
     ++ lib.optionals enableTk [ tcl tk tkinter libX11 ]
     ++ lib.optionals enableQt [ pyqt5 ];
 
-  setup_cfg = if stdenv.isDarwin then ./setup-darwin.cfg else ./setup.cfg;
+  passthru.config = {
+    directories = { basedirlist = "."; };
+    libs = {
+      system_freetype = true;
+      system_qhull = true;
+    } // lib.optionalAttrs stdenv.isDarwin {
+      # LTO not working in darwin stdenv, see #19312
+      enable_lto = false;
+    };
+  };
+  setup_cfg = writeText "setup.cfg" (lib.generators.toINI {} passthru.config);
   preBuild = ''
     cp "$setup_cfg" ./setup.cfg
   '';
@@ -60,8 +67,14 @@ buildPythonPackage rec {
     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";
+    lib.optionalString enableTk ''
+      sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py
+    '' + lib.optionalString (stdenv.isLinux && interactive) ''
+      # fix paths to libraries in dlopen calls (headless detection)
+      substituteInPlace src/_c_internal_utils.c \
+        --replace libX11.so.6 ${libX11}/lib/libX11.so.6 \
+        --replace libwayland-client.so.0 ${wayland}/lib/libwayland-client.so.0
+    '';
 
   # Matplotlib needs to be built against a specific version of freetype in
   # order for all of the tests to pass.
@@ -70,6 +83,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python plotting library, making publication quality plots";
     homepage    = "https://matplotlib.org/";
+    license     = with licenses; [ psfl bsd0 ];
     maintainers = with maintainers; [ lovek323 veprbl ];
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/matplotlib/setup-darwin.cfg b/nixpkgs/pkgs/development/python-modules/matplotlib/setup-darwin.cfg
deleted file mode 100644
index f6463d9c574a..000000000000
--- a/nixpkgs/pkgs/development/python-modules/matplotlib/setup-darwin.cfg
+++ /dev/null
@@ -1,7 +0,0 @@
-[directories]
-basedirlist = .
-
-[libs]
-system_freetype = true
-# LTO not working in darwin stdenv, see #19312
-enable_lto = false
diff --git a/nixpkgs/pkgs/development/python-modules/matplotlib/setup.cfg b/nixpkgs/pkgs/development/python-modules/matplotlib/setup.cfg
deleted file mode 100644
index 6a7738627651..000000000000
--- a/nixpkgs/pkgs/development/python-modules/matplotlib/setup.cfg
+++ /dev/null
@@ -1,5 +0,0 @@
-[directories]
-basedirlist = .
-
-[libs]
-system_freetype = true
diff --git a/nixpkgs/pkgs/development/python-modules/matrix-api-async/default.nix b/nixpkgs/pkgs/development/python-modules/matrix-api-async/default.nix
new file mode 100644
index 000000000000..d7ae05bddc96
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/matrix-api-async/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildPythonPackage, fetchPypi, matrix-client }:
+
+buildPythonPackage rec {
+  pname = "matrix_api_async";
+  version = "0.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0xdx8fci0lar3x09dwqgka6ssz9d3g7gsfx4yyr13sdwza7zsqc3";
+  };
+
+  propagatedBuildInputs = [ matrix-client ];
+
+  # no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "matrix_api_async" ];
+
+  meta = with lib; {
+    description = "An asyncio wrapper of matrix_client.api";
+    license = licenses.mit;
+    homepage = "https://github.com/Cadair/matrix_api_async";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/matrix-nio/default.nix b/nixpkgs/pkgs/development/python-modules/matrix-nio/default.nix
index 69774b58eb69..3e613fd89a50 100644
--- a/nixpkgs/pkgs/development/python-modules/matrix-nio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matrix-nio/default.nix
@@ -2,9 +2,11 @@
 , buildPythonPackage
 , fetchFromGitHub
 , git
+, poetry-core
 , attrs
 , future
 , aiohttp
+, aiohttp-socks
 , aiofiles
 , h11
 , h2
@@ -16,27 +18,37 @@
 , peewee
 , cachetools
 , atomicwrites
+, pytestCheckHook
+, faker
+, aioresponses
+, hypothesis
+, pytest-aiohttp
+, pytest-benchmark
 }:
 
 buildPythonPackage rec {
   pname = "matrix-nio";
-  version = "0.15.2";
+  version = "0.18.1";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "poljar";
     repo = "matrix-nio";
     rev = version;
-    sha256 = "190xw3cvk4amr9pl8ip2i7k3xdjd0231kn2zl6chny5axx22p1dv";
+    sha256 = "QHNirglqSxGMmbST96LUp9MHoGj0yAwLoTRlsbMqwaM=";
   };
 
   nativeBuildInputs = [
     git
+    poetry-core
+    pytestCheckHook
   ];
 
   propagatedBuildInputs = [
     attrs
     future
     aiohttp
+    aiohttp-socks
     aiofiles
     h11
     h2
@@ -50,7 +62,20 @@ buildPythonPackage rec {
     atomicwrites
   ];
 
-  doCheck = false;
+  checkInputs = [
+    faker
+    aioresponses
+    hypothesis
+    pytest-aiohttp
+    pytest-benchmark
+  ];
+
+  disabledTests = [
+    # touches network
+    "test_connect_wrapper"
+    # time dependent and flaky
+    "test_transfer_monitor_callbacks"
+  ];
 
   meta = with lib; {
     description = "A Python Matrix client library, designed according to sans I/O principles";
diff --git a/nixpkgs/pkgs/development/python-modules/mattermostdriver/default.nix b/nixpkgs/pkgs/development/python-modules/mattermostdriver/default.nix
new file mode 100644
index 000000000000..7d9421b5d949
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mattermostdriver/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, websockets
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "mattermostdriver";
+  version = "7.3.0";
+
+  disabled = pythonOlder "3.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "17jqcpa1xd9n7bf4d5l7wmscls34kymv27gi17pyyfjxbwk5gsga";
+  };
+
+  propagatedBuildInputs = [ websockets requests ];
+
+  pythonImportsCheck = [ "mattermostdriver" ];
+
+  # no tests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A Python Mattermost Driver";
+    homepage = "https://github.com/Vaelor/python-mattermost-driver";
+    license = licenses.mit;
+    maintainers = with maintainers; [ globin lheckemann ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
index 1ea14c35510c..6a39ff347cd5 100644
--- a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "mcstatus";
-  version = "5.1.4";
+  version = "6.0.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "Dinnerbone";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1k8hjv965svbm95m7jaawlhdbxqpkjchlwvjwn1n7z90dfgn5kih";
+    sha256 = "sha256-YBtVWcOZDt2jQB9bHDrSCP9f2OC+IHzJKlBBGorLnZU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/md-toc/default.nix b/nixpkgs/pkgs/development/python-modules/md-toc/default.nix
new file mode 100644
index 000000000000..aaec77a9ace8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/md-toc/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fpyutils
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "md-toc";
+  version = "7.2.0";
+  disabled = pythonOlder "3.5";
+
+  src = fetchFromGitHub {
+    owner = "frnmst";
+    repo = pname;
+    rev = version;
+    sha256 = "1v74iddfk5d6170frg89vzrkz9xrycl1f50g59imc7x7g50i6c2x";
+  };
+
+  propagatedBuildInputs = [
+    fpyutils
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "fpyutils>=1.2,<1.3" "fpyutils>=1.2"
+  '';
+
+  pytestFlagsArray = [ "md_toc/tests/*.py" ];
+
+  pythonImportsCheck = [ "md_toc" ];
+
+  meta = with lib; {
+    description = "Table of contents generator for Markdown";
+    homepage = "https://docs.franco.net.eu.org/md-toc/";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mdformat/default.nix b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
new file mode 100644
index 000000000000..159310035b8f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, importlib-metadata
+, markdown-it-py
+, poetry-core
+, pytestCheckHook
+, pythonOlder
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "mdformat";
+  version = "0.7.6";
+  format = "pyproject";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "executablebooks";
+    repo = pname;
+    rev = version;
+    sha256 = "0mnbi3vp7zgllpcpf6vrjw9y6jas95shphn99ayr8b8wgxsaqkif";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    markdown-it-py
+  ] ++ lib.optionals (pythonOlder "3.10") [
+    importlib-metadata
+  ] ++ lib.optionals (pythonOlder "3.7") [
+    typing-extensions
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "mdformat" ];
+
+  meta = with lib; {
+    description = "CommonMark compliant Markdown formatter";
+    homepage = "https://mdformat.rtfd.io/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mdit-py-plugins/default.nix b/nixpkgs/pkgs/development/python-modules/mdit-py-plugins/default.nix
new file mode 100644
index 000000000000..9c5705dbc408
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mdit-py-plugins/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, markdown-it-py
+, pytest-regressions
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "mdit-py-plugins";
+  version = "0.2.8";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "executablebooks";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-MXQjaVDuguGbmby6BQnrTdpq6Mih3HabXuyFxf9jB18=";
+  };
+
+  propagatedBuildInputs = [ markdown-it-py ];
+
+  checkInputs = [ pytestCheckHook pytest-regressions ];
+  pythonImportsCheck = [ "mdit_py_plugins" ];
+
+  meta = with lib; {
+    description = "Collection of core plugins for markdown-it-py";
+    homepage = "https://github.com/executablebooks/mdit-py-plugins";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/measurement/default.nix b/nixpkgs/pkgs/development/python-modules/measurement/default.nix
index 6b7a02a76eb5..c3ce875b4f57 100644
--- a/nixpkgs/pkgs/development/python-modules/measurement/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/measurement/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildPythonPackage, isPy3k
-, sympy, pytest, pytestrunner, sphinx, setuptools_scm }:
+, sympy, pytest, pytestrunner, sphinx, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "measurement";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   '';
 
   checkInputs = [ pytest pytestrunner ];
-  nativeBuildInputs = [ sphinx setuptools_scm ];
+  nativeBuildInputs = [ sphinx setuptools-scm ];
   propagatedBuildInputs = [ sympy ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/mecab-python3/default.nix b/nixpkgs/pkgs/development/python-modules/mecab-python3/default.nix
index e3abdaa70916..bb5ffb7de791 100644
--- a/nixpkgs/pkgs/development/python-modules/mecab-python3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mecab-python3/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , mecab
 , swig
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     mecab # for mecab-config
     swig
-    setuptools_scm
+    setuptools-scm
   ];
 
   buildInputs = [ mecab ];
diff --git a/nixpkgs/pkgs/development/python-modules/mechanicalsoup/default.nix b/nixpkgs/pkgs/development/python-modules/mechanicalsoup/default.nix
new file mode 100644
index 000000000000..5f11d5cc9e85
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mechanicalsoup/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, beautifulsoup4
+, buildPythonPackage
+, pythonAtLeast
+, fetchFromGitHub
+, lxml
+, pytest-httpbin
+, pytest-mock
+, pytestCheckHook
+, requests
+, requests-mock
+}:
+
+buildPythonPackage rec {
+  pname = "mechanicalsoup";
+  version = "1.1.0";
+
+  disabled = ! pythonAtLeast "3.6";
+
+  src = fetchFromGitHub {
+    owner = "MechanicalSoup";
+    repo = "MechanicalSoup";
+    rev = "v${version}";
+    sha256 = "1mly0ivai3rx64frk7a7ra6abhdxm9x3l6s6x7sgrl9qx1z8zsp3";
+  };
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    lxml
+    requests
+  ];
+
+  checkInputs = [
+    pytest-httpbin
+    pytest-mock
+    pytestCheckHook
+    requests-mock
+  ];
+
+  postPatch = ''
+    # Is in setup_requires but not used in setup.py
+    substituteInPlace setup.py \
+      --replace "'pytest-runner'" ""
+    substituteInPlace setup.cfg \
+      --replace " --cov --cov-config .coveragerc --flake8" ""
+  '';
+
+  pythonImportsCheck = [ "mechanicalsoup" ];
+
+  meta = with lib; {
+    description = "Python library for automating interaction with websites";
+    homepage = "https://github.com/hickford/MechanicalSoup";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jgillich fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mercantile/default.nix b/nixpkgs/pkgs/development/python-modules/mercantile/default.nix
new file mode 100644
index 000000000000..e7f307361ed3
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mercantile/default.nix
@@ -0,0 +1,28 @@
+{ lib, buildPythonPackage, fetchFromGitHub
+, click
+, pytestCheckHook
+, hypothesis
+}:
+
+buildPythonPackage rec {
+  pname = "mercantile";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "mapbox";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-DiDXO2XnD3We6NhP81z7aIHzHrHDi/nkqy98OT9986w=";
+  };
+
+  propagatedBuildInputs = [ click ];
+
+  checkInputs = [ pytestCheckHook hypothesis ];
+
+  meta = with lib; {
+    description = "Spherical mercator tile and coordinate utilities";
+    homepage = "https://github.com/mapbox/mercantile";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ sikmir ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
new file mode 100644
index 000000000000..c8a9d78e7c1b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
@@ -0,0 +1,57 @@
+{ lib
+, buildPythonPackage
+, dotmap
+, fetchPypi
+, pexpect
+, protobuf
+, pygatt
+, pypubsub
+, pyqrcode
+, pyserial
+, pythonOlder
+, tabulate
+, timeago
+}:
+
+buildPythonPackage rec {
+  pname = "meshtastic";
+  version = "1.2.30";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1kjflc2jwnsgxyr2zx1gyykhak9fsgy6hxaxlggsz5sw9b8rdrby";
+  };
+
+  propagatedBuildInputs = [
+    dotmap
+    pexpect
+    protobuf
+    pygatt
+    pypubsub
+    pyqrcode
+    pyserial
+    tabulate
+    timeago
+  ];
+
+  postPatch = ''
+    # https://github.com/meshtastic/Meshtastic-python/pull/87
+    substituteInPlace setup.py \
+      --replace 'with open("README.md", "r") as fh:' "" \
+      --replace "long_description = fh.read()" "" \
+      --replace "long_description=long_description," 'long_description="",'
+  '';
+
+  # Project only provides PyPI releases which don't contain the tests
+  # https://github.com/meshtastic/Meshtastic-python/issues/86
+  doCheck = false;
+  pythonImportsCheck = [ "meshtastic" ];
+
+  meta = with lib; {
+    description = "Python API for talking to Meshtastic devices";
+    homepage = "https://meshtastic.github.io/Meshtastic-python/";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/midiutil/default.nix b/nixpkgs/pkgs/development/python-modules/midiutil/default.nix
index d1cae8c78041..a3527bc6e1cf 100644
--- a/nixpkgs/pkgs/development/python-modules/midiutil/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/midiutil/default.nix
@@ -13,6 +13,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/MarkCWirt/MIDIUtil";
     description = "A pure python library for creating multi-track MIDI files";
     license = licenses.mit;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/mido/default.nix b/nixpkgs/pkgs/development/python-modules/mido/default.nix
index 8312ea783cb4..ae737dc71661 100644
--- a/nixpkgs/pkgs/development/python-modules/mido/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mido/default.nix
@@ -1,6 +1,13 @@
-{ stdenv, lib, buildPythonPackage, fetchPypi, substituteAll
-, portmidi, pygame, python-rtmidi, rtmidi-python
-, pytest
+{ stdenv
+, lib
+, buildPythonPackage
+, fetchPypi
+, substituteAll
+, portmidi
+, pygame
+, python-rtmidi
+, rtmidi-python
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -25,15 +32,18 @@ buildPythonPackage rec {
     rtmidi-python
   ];
 
-  checkInputs = [ pytest ];
-  checkPhase = ''
-    py.test . -rs -q
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "mido"
+  ];
 
   meta = with lib; {
     description = "MIDI Objects for Python";
     homepage = "https://mido.readthedocs.io";
     license = licenses.mit;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix b/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
index ee0812eacecc..d1e0616cfb68 100644
--- a/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
@@ -3,24 +3,27 @@
 , asysocks
 , buildPythonPackage
 , fetchPypi
+, oscrypto
 }:
 
 buildPythonPackage rec {
   pname = "minikerberos";
-  version = "0.2.11";
+  version = "0.2.14";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-OC+Cnk47GFzK1QaDEDxntRVrakpFiBuNelM/R5t/AUY=";
+    sha256 = "sha256-MND7r4Gkx9RnEMgEl62QXFYr1NEloihQ2HeU9hyhsx8=";
   };
 
   propagatedBuildInputs = [
     asn1crypto
     asysocks
+    oscrypto
   ];
 
   # no tests are published: https://github.com/skelsec/minikerberos/pull/5
   doCheck = false;
+
   pythonImportsCheck = [ "minikerberos" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/minio/default.nix b/nixpkgs/pkgs/development/python-modules/minio/default.nix
index b23d264f72db..fdbcf09534b2 100644
--- a/nixpkgs/pkgs/development/python-modules/minio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minio/default.nix
@@ -1,38 +1,53 @@
-{ lib, buildPythonPackage, isPy3k, fetchPypi
+{ lib
+, buildPythonPackage
+, certifi
 , configparser
 , faker
+, fetchFromGitHub
 , future
 , mock
 , nose
+, pytestCheckHook
 , python-dateutil
+, pythonOlder
 , pytz
-, pytestCheckHook
 , urllib3
-, certifi
 }:
 
 buildPythonPackage rec {
   pname = "minio";
-  version = "7.0.2";
-  disabled = !isPy3k;
+  version = "7.0.3";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f2f6022cfe4694d946972efef2a752f87d08cc030940faa50a640088772953c8";
+  src = fetchFromGitHub {
+    owner = "minio";
+    repo = "minio-py";
+    rev = version;
+    sha256 = "14symk7b3i9xzfc2wkcnqmfsvh9j3jx2ijz7dgy1xyrbjwb7yzhc";
   };
 
   propagatedBuildInputs = [
+    certifi
     configparser
     future
     python-dateutil
     pytz
     urllib3
-    certifi
   ];
 
-  checkInputs = [ faker mock nose pytestCheckHook ];
+  checkInputs = [
+    faker
+    mock
+    nose
+    pytestCheckHook
+  ];
+
   # example credentials aren't present
-  pytestFlagsArray = [ "--ignore=tests/unit/credentials_test.py" ];
+  disabledTestPaths = [
+    "tests/unit/credentials_test.py"
+  ];
+
+  pythonImportsCheck = [ "minio" ];
 
   meta = with lib; {
     description = "Simple APIs to access any Amazon S3 compatible object storage server";
diff --git a/nixpkgs/pkgs/development/python-modules/mitogen/default.nix b/nixpkgs/pkgs/development/python-modules/mitogen/default.nix
new file mode 100644
index 000000000000..3268e8fae7ba
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mitogen/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+}:
+
+buildPythonPackage rec {
+  pname = "mitogen";
+  version = "0.3.0rc1";
+
+  src = fetchFromGitHub {
+    owner = "mitogen-hq";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0hxb41sshybxjyvyarl2axs0v6w53vqxafgfjrmpp5k20z5kapz4";
+  };
+
+  # Tests require network access and Docker support
+  doCheck = false;
+
+  pythonImportsCheck = [ "mitogen" ];
+
+  meta = with lib; {
+    description = "Python Library for writing distributed self-replicating programs";
+    homepage = "https://github.com/mitogen-hq/mitogen";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mlrose/default.nix b/nixpkgs/pkgs/development/python-modules/mlrose/default.nix
index 40e3b6ce0953..2187f2726801 100644
--- a/nixpkgs/pkgs/development/python-modules/mlrose/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mlrose/default.nix
@@ -1,21 +1,45 @@
-{ lib, isPy27, buildPythonPackage, fetchPypi, scikitlearn }:
+{ lib
+, isPy27
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, scikit-learn
+, pytestCheckHook
+, pytest-randomly
+}:
 
 buildPythonPackage rec {
   pname = "mlrose";
   version = "1.3.0";
   disabled = isPy27;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "cec83253bf6da67a7fb32b2c9ae13e9dbc6cfbcaae2aa3107993e69e9788f15e";
+  src = fetchFromGitHub {
+    owner = "gkhayes";
+    repo = "mlrose";
+    rev = "v${version}";
+    sha256 = "1dn43k3rcypj58ymcj849b37w66jz7fphw8842v6mlbij3x0rxfl";
   };
 
-  propagatedBuildInputs = [ scikitlearn ];
+  patches = [
+    # Fixes compatibility with scikit-learn 0.24.1
+    (fetchpatch {
+      url = "https://github.com/gkhayes/mlrose/pull/55/commits/19caf8616fc194402678aa67917db334ad02852a.patch";
+      sha256 = "1nivz3bn21nd21bxbcl16a6jmy7y5j8ilz90cjmd0xq4v7flsahf";
+    })
+  ];
+
+  propagatedBuildInputs = [ scikit-learn ];
+  checkInputs = [ pytest-randomly pytestCheckHook ];
 
   postPatch = ''
-    sed -i 's,sklearn,scikit-learn,g' setup.py
+    substituteInPlace setup.py --replace sklearn scikit-learn
   '';
 
+  pythonImportsCheck = [ "mlrose" ];
+
+  # Fix random seed during tests
+  pytestFlagsArray = [ "--randomly-seed 0" ];
+
   meta = with lib; {
     description = "Machine Learning, Randomized Optimization and SEarch";
     homepage    = "https://github.com/gkhayes/mlrose";
diff --git a/nixpkgs/pkgs/development/python-modules/mlxtend/default.nix b/nixpkgs/pkgs/development/python-modules/mlxtend/default.nix
index 44402b36ec08..4692dc61c229 100644
--- a/nixpkgs/pkgs/development/python-modules/mlxtend/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mlxtend/default.nix
@@ -5,7 +5,7 @@
 , pytestCheckHook
 , scipy
 , numpy
-, scikitlearn
+, scikit-learn
 , pandas
 , matplotlib
 , joblib
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     scipy
     numpy
-    scikitlearn
+    scikit-learn
     pandas
     matplotlib
     joblib
@@ -45,7 +45,7 @@ buildPythonPackage rec {
     license= licenses.bsd3;
     maintainers = with maintainers; [ evax ];
     platforms = platforms.unix;
-    # incompatible with nixpkgs scikitlearn version
+    # incompatible with nixpkgs scikit-learn version
     broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/mne-python/default.nix b/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
index bed191c39e32..d8add2608b6a 100644
--- a/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
@@ -11,7 +11,7 @@
 , matplotlib
 , nibabel
 , pandas
-, scikitlearn
+, scikit-learn
 }:
 
 buildPythonPackage rec {
@@ -40,7 +40,7 @@ buildPythonPackage rec {
     matplotlib
     nibabel
     pandas
-    scikitlearn
+    scikit-learn
   ];
   preCheck = ''
     export HOME=$TMP
diff --git a/nixpkgs/pkgs/development/python-modules/mock-services/default.nix b/nixpkgs/pkgs/development/python-modules/mock-services/default.nix
new file mode 100644
index 000000000000..2917b21dcfe4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mock-services/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, attrs
+, funcsigs
+, requests-mock
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "mock-services";
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "peopledoc";
+    repo = "mock-services";
+    rev = version;
+    sha256 = "1rqyyfwngi1xsd9a81irjxacinkj1zf6nqfvfxhi55ky34x5phf9";
+  };
+
+  patches = [
+    # Fix issues due to internal API breaking in latest versions of requests-mock
+    (fetchpatch {
+      url = "https://github.com/peopledoc/mock-services/commit/88d3a0c9ef4dd7d5e011068ed2fdbbecc4a1a03a.patch";
+      sha256 = "0a4pwxr33kr525sp8q4mb4cr3n2b51mj2a3052lhg6brdbi4gnms";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    attrs
+    funcsigs
+    requests-mock
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # require networking
+    "test_real_http_1"
+    "test_restart_http_mock"
+    "test_start_http_mock"
+    "test_stop_http_mock"
+  ];
+
+  pythonImportsCheck = [ "mock_services" ];
+
+  meta = with lib; {
+    description = "Mock an entire service API based on requests-mock";
+    homepage = "https://github.com/peopledoc/mock-services";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mocket/default.nix b/nixpkgs/pkgs/development/python-modules/mocket/default.nix
index 76b64be7430b..b05260930f10 100644
--- a/nixpkgs/pkgs/development/python-modules/mocket/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mocket/default.nix
@@ -19,12 +19,12 @@
 
 buildPythonPackage rec {
   pname = "mocket";
-  version = "3.9.40";
+  version = "3.9.41";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "061w3zqf4ir7hfj0vzl58lg8szsik1fxv126s32x03nk1sd39r6v";
+    sha256 = "19zxqh0xk08gj0jf6im9vh53z22yf17ywzykk0fjs9g7m29x8i5j";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mockupdb/default.nix b/nixpkgs/pkgs/development/python-modules/mockupdb/default.nix
new file mode 100644
index 000000000000..341660e1af0b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mockupdb/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildPythonPackage, fetchPypi
+, pymongo
+}:
+
+buildPythonPackage rec {
+  pname = "mockupdb";
+  version = "1.8.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "130z5g96r52h362qc5jbf1g3gw3irb2wr946xlhgcv9ww9z64cl8";
+  };
+
+  propagatedBuildInputs = [ pymongo ];
+
+  pythonImportsCheck = [ "mockupdb" ];
+
+  meta = with lib; {
+    description = "Simulate a MongoDB server";
+    license = licenses.asl20;
+    homepage = "https://github.com/ajdavis/mongo-mockup-db";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/moderngl/default.nix b/nixpkgs/pkgs/development/python-modules/moderngl/default.nix
index f32f541573eb..447d2b00b019 100644
--- a/nixpkgs/pkgs/development/python-modules/moderngl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/moderngl/default.nix
@@ -4,6 +4,7 @@
 , isPy3k
 , libGL
 , libX11
+, glcontext
 }:
 
 buildPythonPackage rec {
@@ -17,7 +18,7 @@ buildPythonPackage rec {
 
   disabled = !isPy3k;
 
-  buildInputs = [ libGL libX11 ];
+  buildInputs = [ libGL libX11 glcontext ];
 
   # Tests need a display to run.
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/moderngl_window/default.nix b/nixpkgs/pkgs/development/python-modules/moderngl_window/default.nix
index 7f6d9893c969..e06d5aa3780b 100644
--- a/nixpkgs/pkgs/development/python-modules/moderngl_window/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/moderngl_window/default.nix
@@ -7,6 +7,7 @@
 , pyglet
 , pillow
 , pyrr
+, glcontext
 }:
 
 buildPythonPackage rec {
@@ -20,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "1p03j91pk2bwycd13p0qi8kns1sf357180hd2mkaip8mfaf33x3q";
   };
 
-  propagatedBuildInputs = [ numpy moderngl pyglet pillow pyrr ];
+  propagatedBuildInputs = [ numpy moderngl pyglet pillow pyrr glcontext ];
 
   disabled = !isPy3k;
 
diff --git a/nixpkgs/pkgs/development/python-modules/monty/default.nix b/nixpkgs/pkgs/development/python-modules/monty/default.nix
index a2398ce750dd..4690f9f8820f 100644
--- a/nixpkgs/pkgs/development/python-modules/monty/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/monty/default.nix
@@ -1,22 +1,20 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy27
-, nose
-, numpy
-, six
-, ruamel_yaml
+, pythonOlder
 , msgpack
-, coverage
-, coveralls
+, pytestCheckHook
+, numpy
+, pydantic
 , pymongo
-, lsof
+, ruamel_yaml
+, tqdm
 }:
 
 buildPythonPackage rec {
   pname = "monty";
   version = "2021.3.3";
-  disabled = isPy27; # uses type annotations
+  disabled = pythonOlder "3.5"; # uses type annotations
 
   # No tests in Pypi
   src = fetchFromGitHub {
@@ -26,15 +24,18 @@ buildPythonPackage rec {
     sha256 = "1nbv0ys0fv70rgzskkk8gsfr9dsmm7ykim5wv36li840zsj83b1l";
   };
 
-  checkInputs = [ lsof nose numpy msgpack coverage coveralls pymongo];
-  propagatedBuildInputs = [ six ruamel_yaml ];
+  propagatedBuildInputs = [
+    ruamel_yaml
+    tqdm
+    msgpack
+  ];
 
-  # test suite tries to decode bytes, but msgpack now returns a str
-  # https://github.com/materialsvirtuallab/monty/pull/121
-  postPatch = ''
-    substituteInPlace tests/test_serialization.py \
-      --replace ".decode('utf-8')" ""
-  '';
+  checkInputs = [
+    pytestCheckHook
+    numpy
+    pydantic
+    pymongo
+  ];
 
   preCheck = ''
     substituteInPlace tests/test_os.py \
diff --git a/nixpkgs/pkgs/development/python-modules/motioneye-client/default.nix b/nixpkgs/pkgs/development/python-modules/motioneye-client/default.nix
new file mode 100644
index 000000000000..a769128fd861
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/motioneye-client/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pytest-aiohttp
+, pytest-timeout
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "motioneye-client";
+  version = "0.3.9";
+  format = "pyproject";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "dermotduffy";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-pLdAxBipmr+HUr9NSupm7h/68PK95r3zY/qZTBs1m54=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  checkInputs = [
+    pytest-aiohttp
+    pytest-timeout
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace " --cov-report=html:htmlcov --cov-report=xml:coverage.xml --cov-report=term-missing --cov=motioneye_client --cov-fail-under=100" ""
+  '';
+
+  pythonImportsCheck = [ "motioneye_client" ];
+
+  meta = with lib; {
+    description = "Python library for motionEye";
+    homepage = "https://github.com/dermotduffy/motioneye-client";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/motor/default.nix b/nixpkgs/pkgs/development/python-modules/motor/default.nix
new file mode 100644
index 000000000000..318d519e57ce
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/motor/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildPythonPackage, fetchFromGitHub
+, pymongo, mockupdb
+}:
+
+buildPythonPackage rec {
+  pname = "motor";
+  version = "2.4.0";
+
+  src = fetchFromGitHub {
+    owner = "mongodb";
+    repo = pname;
+    rev = version;
+    sha256 = "1sgaqg98h35lazzdi015q1i60ig7krid8b10a5rm6lf755y8yj2c";
+  };
+
+  propagatedBuildInputs = [ pymongo ];
+
+  # network connections
+  doCheck = false;
+  checkInputs = [ mockupdb ];
+
+  pythonImportsCheck = [ "motor" ];
+
+  meta = with lib; {
+    description = "Non-blocking MongoDB driver for Tornado or asyncio";
+    license = licenses.asl20;
+    homepage = "https://github.com/mongodb/motor";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
index 4cd1fec3d8b2..c3acdbe71ec2 100644
--- a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
@@ -13,14 +13,14 @@
 , advancedProcessing ? false
 , opencv3 ? null
 , scikitimage ? null
-, scikitlearn ? null
+, scikit-learn ? null
 , scipy ? null
 , matplotlib ? null
 , youtube-dl ? null
 }:
 
 assert advancedProcessing -> (
-  opencv3 != null && scikitimage != null && scikitlearn != null
+  opencv3 != null && scikitimage != null && scikit-learn != null
   && scipy != null && matplotlib != null && youtube-dl != null);
 
 buildPythonPackage rec {
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy decorator imageio imageio-ffmpeg tqdm requests proglog
   ] ++ (lib.optionals advancedProcessing [
-    opencv3 scikitimage scikitlearn scipy matplotlib youtube-dl
+    opencv3 scikitimage scikit-learn scipy matplotlib youtube-dl
   ]);
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/mox3/default.nix b/nixpkgs/pkgs/development/python-modules/mox3/default.nix
index 1883c9c8c011..593d845ad866 100644
--- a/nixpkgs/pkgs/development/python-modules/mox3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mox3/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   buildInputs = [ subunit testrepository testtools six ];
   propagatedBuildInputs = [ pbr fixtures ];
 
-  # Disabling as several tests depdencies are missing:
+  # Disabling as several tests dependencies are missing:
   # https://opendev.org/openstack/mox3/src/branch/master/test-requirements.txt
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/msal/default.nix b/nixpkgs/pkgs/development/python-modules/msal/default.nix
index 3df0527589a1..735d74b5237b 100644
--- a/nixpkgs/pkgs/development/python-modules/msal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/msal/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "msal";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "582e92e3b9fa68084dca6ecfd8db866ddc75cd9043de267c79d6b6277dd27f55";
+    sha256 = "sha256-RnrwK7lKh6G2lbUb+GdmfoKKzA3Twd5fpUP2kALbSfo=";
   };
 
   propagatedBuildInputs = [
@@ -22,15 +22,15 @@ buildPythonPackage rec {
   ];
 
   # Tests assume Network Connectivity:
-  #   https://github.com/AzureAD/microsoft-authentication-library-for-python/blob/e2958961e8ec16d0af4199f60c36c3f913497e48/tests/test_authority.py#L73
+  # https://github.com/AzureAD/microsoft-authentication-library-for-python/blob/e2958961e8ec16d0af4199f60c36c3f913497e48/tests/test_authority.py#L73
   doCheck = false;
 
+  pythonImportsCheck = [ "msal" ];
+
   meta = with lib; {
     description = "The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of users with Microsoft Azure Active Directory accounts (AAD) and Microsoft Accounts (MSA) using industry standard OAuth2 and OpenID Connect";
     homepage = "https://github.com/AzureAD/microsoft-authentication-library-for-python";
     license = licenses.mit;
-    maintainers = with maintainers; [
-      kamadorueda
-    ];
+    maintainers = with maintainers; [ kamadorueda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/msldap/default.nix b/nixpkgs/pkgs/development/python-modules/msldap/default.nix
index 12bfb7d7603e..649276ef252f 100644
--- a/nixpkgs/pkgs/development/python-modules/msldap/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/msldap/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "msldap";
-  version = "0.3.29";
+  version = "0.3.30";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0khwyhylh28qvz35pdckr5fdd82zsybv0xmzlzjbgcv99cyy1a94";
+    sha256 = "sha256-fX+W1Bq4F0/6DyxWeA6zvoswFQCdDpSk29g7nq1cYYE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/multiset/default.nix b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
index 020617abebf4..e183031b8d95 100644
--- a/nixpkgs/pkgs/development/python-modules/multiset/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytestrunner
 , pytest
 }:
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "4801569c08bfcecfe7b0927b17f079c90f8607aca8fecaf42ded92b737162bc7";
   };
 
-  buildInputs = [ setuptools_scm pytestrunner ];
+  buildInputs = [ setuptools-scm pytestrunner ];
   checkInputs = [ pytest ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/mutesync/default.nix b/nixpkgs/pkgs/development/python-modules/mutesync/default.nix
new file mode 100644
index 000000000000..98bf6ce07458
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mutesync/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, aiohttp
+, async-timeout
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "mutesync";
+  version = "0.0.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "05r8maq59glwgysg98y1vrysfb1mkh9jpbag3ixl13n8jw8clp85";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+  ];
+
+  patches = [
+    # Don't parse requirements.txt, https://github.com/currentoor/pymutesync/pull/1
+    (fetchpatch {
+      name = "add-requirements.patch";
+      url = "https://github.com/currentoor/pymutesync/commit/d66910fc83b1ae3060cdb3fe22a6f91fb70a67f0.patch";
+      sha256 = "0axhgriyyv31b1r1yidxcrv0nyrqbb63xw5qrmv2iy2h0v96ijsk";
+    })
+  ];
+
+  # Project has not published tests yet
+  doCheck = false;
+  pythonImportsCheck = [ "mutesync" ];
+
+  meta = with lib; {
+    description = "Python module for interacting with mutesync buttons";
+    homepage = "https://github.com/currentoor/pymutesync";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mwoauth/default.nix b/nixpkgs/pkgs/development/python-modules/mwoauth/default.nix
index 0a73e99391e2..8743329917e7 100644
--- a/nixpkgs/pkgs/development/python-modules/mwoauth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mwoauth/default.nix
@@ -17,14 +17,28 @@ buildPythonPackage rec {
     sha256 = "9e0d70a1fa6f452584de1cb853ae6c11f41233549f7839cfb879f99410f6ad46";
   };
 
-  # package has no tests
+  propagatedBuildInputs = [
+    oauthlib
+    pyjwt
+    requests
+    requests_oauthlib
+    six
+  ];
+
+  postPatch = ''
+    # https://github.com/mediawiki-utilities/python-mwoauth/pull/43
+    substituteInPlace setup.py --replace "PyJWT>=1.0.1,<2.0.0" "PyJWT>=1.0.1"
+  '';
+
+  # PyPI source has no tests included
+  # https://github.com/mediawiki-utilities/python-mwoauth/issues/44
   doCheck = false;
 
-  propagatedBuildInputs = [ six pyjwt requests oauthlib requests_oauthlib ];
+  pythonImportsCheck = [ "mwoauth" ];
 
   meta = with lib; {
-    description = "A library designed to provide a simple means to performing an OAuth handshake with a MediaWiki installation with the OAuth Extension installed.";
-    homepage =  "https://github.com/mediawiki-utilities/python-mwoauth";
+    description = "Python library to perform OAuth handshakes with a MediaWiki installation";
+    homepage = "https://github.com/mediawiki-utilities/python-mwoauth";
     license = licenses.mit;
     maintainers = with maintainers; [ ixxie ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/myjwt/default.nix b/nixpkgs/pkgs/development/python-modules/myjwt/default.nix
index d80e66e07bf0..0fecd439e3f5 100644
--- a/nixpkgs/pkgs/development/python-modules/myjwt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/myjwt/default.nix
@@ -1,33 +1,31 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchFromGitHub
 , click
 , colorama
 , cryptography
 , exrex
+, fetchFromGitHub
 , pyopenssl
 , pyperclip
+, pytest-mock
+, pytestCheckHook
 , questionary
 , requests
-, pytestCheckHook
-, pytest-mock
 , requests-mock
 }:
 
 buildPythonPackage rec {
   pname = "myjwt";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "mBouamama";
     repo = "MyJWT";
     rev = version;
-    sha256 = "1n3lvdrzp6wbbcygjwa7xar2jnhjnrz7a9khmn2phhkkngxm5rc4";
+    sha256 = "sha256-kZkqFeaQPd56BVaYmCWAbVu1xwbPAIlQC3u5/x3dh7A=";
   };
 
-  patches = [ ./pinning.patch ];
-
   propagatedBuildInputs = [
     click
     colorama
@@ -40,15 +38,20 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytestCheckHook
     pytest-mock
+    pytestCheckHook
     requests-mock
   ];
 
+  postPatch = ''
+    # Remove all version pinning (E.g., tornado==5.1.1 -> tornado)
+    sed -i -e "s/==[0-9.]*//" requirements.txt
+  '';
+
   pythonImportsCheck = [ "myjwt" ];
 
   meta = with lib; {
-    description = "CLI tool for testing vulnerabilities on Json Web Token(JWT)";
+    description = "CLI tool for testing vulnerabilities of JSON Web Tokens (JWT)";
     homepage = "https://github.com/mBouamama/MyJWT";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
diff --git a/nixpkgs/pkgs/development/python-modules/myjwt/pinning.patch b/nixpkgs/pkgs/development/python-modules/myjwt/pinning.patch
deleted file mode 100644
index abae9d0e2ecb..000000000000
--- a/nixpkgs/pkgs/development/python-modules/myjwt/pinning.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/requirements.txt b/requirements.txt
-index 3017e02..2b465db 100644
---- a/requirements.txt
-+++ b/requirements.txt
-@@ -1,8 +1,8 @@
--click==7.1.2
--colorama==0.4.4
--cryptography==3.3.1
--exrex==0.10.5
--pyOpenSSL==20.0.1
--pyperclip==1.8.1
--questionary==1.9.0
--requests==2.25.1
-+click
-+colorama
-+cryptography
-+exrex
-+pyOpenSSL
-+pyperclip
-+questionary
-+requests
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
new file mode 100644
index 000000000000..860646af9c65
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, black
+, boto3
+, buildPythonPackage
+, fetchFromGitHub
+, jinja2
+, md-toc
+, isort
+, mdformat
+, pyparsing
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "mypy-boto3-builder";
+  version = "4.12.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "vemel";
+    repo = "mypy_boto3_builder";
+    rev = version;
+    sha256 = "09kbmrpnph5kbxlqqavpxg3l85dmk3vzmwawa4s09y9gknxxkcv9";
+  };
+
+  propagatedBuildInputs = [
+    black
+    boto3
+    isort
+    jinja2
+    md-toc
+    mdformat
+    pyparsing
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "mypy_boto3_builder" ];
+
+  meta = with lib; {
+    description = "Type annotations builder for boto3";
+    homepage = "https://vemel.github.io/mypy_boto3_builder/";
+    license = with licenses; [ bsd3 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix
new file mode 100644
index 000000000000..af97c5e103f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, boto3
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "mypy-boto3-s3";
+  version = "1.17.71";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0zgx3f41j80xy203jwms7j72svxy10ry5v9w3ql817ai4lcrspnn";
+  };
+
+  propagatedBuildInputs = [
+    boto3
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
+  ];
+
+  # Project has no tests
+  doCheck = false;
+  pythonImportsCheck = [ "mypy_boto3_s3" ];
+
+  meta = with lib; {
+    description = "Type annotations for boto3";
+    homepage = "https://vemel.github.io/boto3_stubs_docs/mypy_boto3_s3/";
+    license = with licenses; [ bsd3 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/nassl/default.nix b/nixpkgs/pkgs/development/python-modules/nassl/default.nix
index 908ecff8c177..97033224c14a 100644
--- a/nixpkgs/pkgs/development/python-modules/nassl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nassl/default.nix
@@ -8,12 +8,15 @@
 , tls-parser
 , cacert
 , pytestCheckHook
+, pythonOlder
 }:
 
 let
-  zlibStatic = pkgsStatic.zlib.override {
+  zlibStatic = (pkgsStatic.zlib.override {
     splitStaticOutput = false;
-  };
+  }).overrideAttrs (oldAttrs: {
+    NIX_CFLAGS_COMPILE = "${oldAttrs.NIX_CFLAGS_COMPILE} -fPIC";
+  });
   nasslOpensslArgs = {
     static = true;
     enableSSL2 = true;
@@ -67,13 +70,14 @@ let
 in
 buildPythonPackage rec {
   pname = "nassl";
-  version = "3.1.0";
+  version = "4.0.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    sha256 = "1x1v0fpb6gcc2r0k2rsy0mc3v25s3qbva78apvi46n08c2l309ci";
+    hash = "sha256-6lk2YfI9km10YbJAn38fvo9qa4iXcByL+udCsDe+kvU=";
   };
 
   postPatch = let
@@ -108,18 +112,21 @@ buildPythonPackage rec {
     invoke package.wheel
   '';
 
+  doCheck = true;
+
+  pythonImportsCheck = [ "nassl" ];
+
   checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    # Skip online tests
-    pytest -k 'not Online'
-  '';
+  disabledTests = [
+    "Online"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/nabla-c0d3/nassl";
     description = "Low-level OpenSSL wrapper for Python 3.7+";
     platforms = with platforms; linux ++ darwin;
-    license = licenses.agpl3;
+    license = licenses.agpl3Only;
     maintainers = with maintainers; [ veehaitch ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix b/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
index 3644b4e48dd7..a6aa34a88ec8 100644
--- a/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
@@ -28,6 +28,8 @@ buildPythonPackage rec {
     pytest-tornasync
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Jupyter lab environment notebook server extension.";
     license = with licenses; [ bsd3 ];
diff --git a/nixpkgs/pkgs/development/python-modules/nbdime/default.nix b/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
index 66e1edd93908..221915efca03 100644
--- a/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
 , hypothesis
-, setuptools_scm
+, setuptools-scm
 , six
 , attrs
 , py
@@ -52,7 +52,7 @@ buildPythonPackage rec {
     "test_merge"
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     attrs
diff --git a/nixpkgs/pkgs/development/python-modules/nbval/default.nix b/nixpkgs/pkgs/development/python-modules/nbval/default.nix
index 704bc21d7e1a..b9a336f7fbe9 100644
--- a/nixpkgs/pkgs/development/python-modules/nbval/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbval/default.nix
@@ -5,6 +5,7 @@
 , ipykernel
 , jupyter_client
 , nbformat
+, pytestCheckHook
 , pytest
 , six
 , glibcLocales
@@ -23,7 +24,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     matplotlib
     sympy
     pytestcov
@@ -40,14 +41,15 @@ buildPythonPackage rec {
     six
   ];
 
-  # Set HOME so that matplotlib doesn't try to use
-  # /homeless-shelter/.config/matplotlib, otherwise some of the tests fail for
-  # having an unexpected warning on stderr produced by matplotlib.
-  # Ignore impure tests.
-  checkPhase = ''
-    export HOME=$(mktemp -d)
-    pytest tests --ignore tests/test_timeouts.py
-  '';
+  pytestFlagsArray = [
+    "tests"
+    # These are the main tests but they're fragile so skip them. They error
+    # whenever matplotlib outputs any unexpected warnings, e.g. deprecation
+    # warnings.
+    "--ignore=tests/test_unit_tests_in_notebooks.py"
+    # Impure
+    "--ignore=tests/test_timeouts.py"
+  ];
 
   # Some of the tests use localhost networking.
   __darwinAllowLocalNetworking = true;
diff --git a/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix b/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
index 531232bf8e6e..c145b9d888f4 100644
--- a/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
@@ -1,26 +1,31 @@
-{ lib, buildPythonPackage, fetchzip, gobject-introspection, idna, libsoup, precis-i18n, pygobject3, pyopenssl }:
+{ lib, buildPythonPackage, pythonOlder, fetchFromGitLab
+, gobject-introspection, idna, libsoup, precis-i18n, pygobject3, pyopenssl
+}:
 
-let
+buildPythonPackage rec {
   pname = "nbxmpp";
-  version = "1.0.2";
-  name = "${pname}-${version}";
-in buildPythonPackage {
-  inherit pname version;
+  version = "2.0.2";
+
+  disabled = pythonOlder "3.7";
+
   # Tests aren't included in PyPI tarball.
-  src = fetchzip {
-    name = "${name}.tar.bz2";
-    url = "https://dev.gajim.org/gajim/python-nbxmpp/repository/archive.tar.bz2?"
-        + "ref=${name}";
-    sha256 = "1rhzsakqrybzq5j5b9400wjd14pncph47c1ggn5a6f3di03lk4az";
+  src = fetchFromGitLab {
+    domain = "dev.gajim.org";
+    owner = "gajim";
+    repo = "python-nbxmpp";
+    rev = "nbxmpp-${version}";
+    sha256 = "0z27mxgfk7hvpx0xdrd8g9441rywv74yk7s83zjnc2mc7xvpwhf4";
   };
 
   buildInputs = [ precis-i18n ];
   propagatedBuildInputs = [ gobject-introspection idna libsoup pygobject3 pyopenssl ];
 
+  pythonImportsCheck = [ "nbxmpp" ];
+
   meta = with lib; {
     homepage = "https://dev.gajim.org/gajim/python-nbxmpp";
     description = "Non-blocking Jabber/XMPP module";
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ndspy/default.nix b/nixpkgs/pkgs/development/python-modules/ndspy/default.nix
new file mode 100644
index 000000000000..9c4d91df9d65
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ndspy/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchPypi, crcmod }:
+
+buildPythonPackage rec {
+  pname = "ndspy";
+  version = "3.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1s0i81gspas22bjwk9vhy3x5sw1svyybk7c2j1ixc77drr9ym20a";
+  };
+
+  propagatedBuildInputs = [ crcmod ];
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "ndspy" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/RoadrunnerWMC/ndspy";
+    description = "A Python library for many Nintendo DS file formats";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/netdisco/default.nix b/nixpkgs/pkgs/development/python-modules/netdisco/default.nix
index 489b6bddf562..dd17a3f6c10f 100644
--- a/nixpkgs/pkgs/development/python-modules/netdisco/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/netdisco/default.nix
@@ -1,23 +1,24 @@
-{ lib, buildPythonPackage, isPy3k, fetchPypi, requests, zeroconf, netifaces, pytest }:
+{ lib, buildPythonPackage, isPy3k, fetchPypi, requests, zeroconf, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "netdisco";
-  version = "2.8.2";
+  version = "2.8.3";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "dcaabf83b204282aacfb213b18799eb7af2d5a6defe529487bbd0548036392fe";
+    sha256 = "sha256-4WS9PiErB6U7QuejTvbrOmnHetbE5S4zaUyhLCbyihM=";
   };
 
-  propagatedBuildInputs = [ requests zeroconf netifaces ];
+  propagatedBuildInputs = [ requests zeroconf ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    py.test
-  '';
+  pythonImportsCheck = [
+    "netdisco"
+    "netdisco.discovery"
+  ];
 
   meta = with lib; {
     description = "Python library to scan local network for services and devices";
diff --git a/nixpkgs/pkgs/development/python-modules/nilearn/default.nix b/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
index e3ce770398e4..39edd7e34da2 100644
--- a/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, pytestCheckHook, matplotlib
-, nibabel, numpy, pandas, scikitlearn, scipy, joblib, requests }:
+, nibabel, numpy, pandas, scikit-learn, scipy, joblib, requests }:
 
 buildPythonPackage rec {
   pname = "nilearn";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     numpy
     pandas
     requests
-    scikitlearn
+    scikit-learn
     scipy
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/nmigen-boards/default.nix b/nixpkgs/pkgs/development/python-modules/nmigen-boards/default.nix
index cb7d57f75307..209d1f090779 100644
--- a/nixpkgs/pkgs/development/python-modules/nmigen-boards/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nmigen-boards/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , nmigen
 , setuptools
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "1flbcyb2xz174dgqv2964qra80xj2vbzbqwjb27shvxm6knj9ikf";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ setuptools nmigen ];
 
   preBuild = ''
diff --git a/nixpkgs/pkgs/development/python-modules/nmigen-soc/default.nix b/nixpkgs/pkgs/development/python-modules/nmigen-soc/default.nix
index b987557d5f68..22422adad92a 100644
--- a/nixpkgs/pkgs/development/python-modules/nmigen-soc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nmigen-soc/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , nmigen
 , setuptools
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "0afmnfs1ms7p1r4c1nc0sfvlcq36zjwaim7775v5i2vajcn3020c";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ setuptools nmigen ];
 
   preBuild = ''
diff --git a/nixpkgs/pkgs/development/python-modules/nmigen/default.nix b/nixpkgs/pkgs/development/python-modules/nmigen/default.nix
index 1e38a087bce4..d42e27a29329 100644
--- a/nixpkgs/pkgs/development/python-modules/nmigen/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nmigen/default.nix
@@ -3,11 +3,12 @@
 , pythonOlder
 , fetchFromGitHub
 , setuptools
-, setuptools_scm
+, setuptools-scm
 , pyvcd
 , jinja2
 , importlib-resources
 , importlib-metadata
+, git
 
 # for tests
 , pytestCheckHook
@@ -30,7 +31,7 @@ buildPythonPackage rec {
     sha256 = "0cjs9wgmxa76xqmjhsw4fsb2mhgvd85jgs2mrjxqp6fwp8rlgnl1";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm git ];
 
   propagatedBuildInputs = [
     setuptools
diff --git a/nixpkgs/pkgs/development/python-modules/notify-py/default.nix b/nixpkgs/pkgs/development/python-modules/notify-py/default.nix
index 46c72fb69794..ba4725c9aaa4 100644
--- a/nixpkgs/pkgs/development/python-modules/notify-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/notify-py/default.nix
@@ -1,33 +1,37 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, alsaUtils, libnotify, which, loguru, pytest }:
+{ lib, stdenv, buildPythonPackage, fetchFromGitHub, isPy3k, coreutils, alsa-utils
+, libnotify, which, jeepney, loguru, pytestCheckHook }:
 
 buildPythonPackage rec {
-  pname = "notify_py";
-  version = "0.3.1";
+  pname = "notify-py";
+  version = "0.3.3";
 
   disabled = !isPy3k;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "5ba696d18ffe1d7070f3d0a5b4923fee4d6c863de6843af105bec0ce9915ebad";
+  src = fetchFromGitHub {
+    owner = "ms7m";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1n35adwsyhz304n4ifnsz6qzkymwhyqc8sg8d76qv5psv2xsnzlf";
   };
 
-  postPatch = ''
-   substituteInPlace setup.py \
-     --replace "loguru==0.4.1" "loguru~=0.5.0"
-  '';
-
-  propagatedBuildInputs = [ alsaUtils libnotify loguru which ];
+  propagatedNativeBuildInputs = [ which ]
+    ++ lib.optionals stdenv.isLinux [ alsa-utils libnotify ];
+  propagatedBuildInputs = [ loguru ]
+    ++ lib.optionals stdenv.isLinux [ jeepney ];
 
-  checkInputs = [ alsaUtils libnotify pytest which ];
+  checkInputs = [ coreutils pytestCheckHook ];
 
-  checkPhase = ''
-    pytest
+  # Tests search for "afplay" binary which is built in to MacOS and not available in nixpkgs
+  preCheck = ''
+    mkdir $TMP/bin
+    ln -s ${coreutils}/bin/true $TMP/bin/afplay
+    export PATH="$TMP/bin:$PATH"
   '';
 
   pythonImportsCheck = [ "notifypy" ];
 
   meta = with lib; {
-    description = " Python Module for sending cross-platform desktop notifications on Windows, macOS, and Linux.";
+    description = "Python Module for sending cross-platform desktop notifications on Windows, macOS, and Linux.";
     homepage = "https://github.com/ms7m/notify-py/";
     license = licenses.mit;
     maintainers = with maintainers; [ austinbutler ];
diff --git a/nixpkgs/pkgs/development/python-modules/nuitka/default.nix b/nixpkgs/pkgs/development/python-modules/nuitka/default.nix
index 44ee4597dbe4..548565ff1d35 100644
--- a/nixpkgs/pkgs/development/python-modules/nuitka/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nuitka/default.nix
@@ -1,28 +1,29 @@
 { lib, stdenv
 , buildPythonPackage
-, fetchurl
+, fetchFromGitHub
 , vmprof
 , pyqt4
 , isPyPy
 , pkgs
+, scons
+, chrpath
 }:
 
-let
-  # scons is needed but using it requires Python 2.7
-  # Therefore we create a separate env for it.
-  scons = pkgs.python27.withPackages(ps: [ pkgs.scons ]);
-in buildPythonPackage rec {
-  version = "0.6.8.4";
+buildPythonPackage rec {
+  version = "0.6.14.5";
   pname = "Nuitka";
 
   # Latest version is not yet on PyPi
-  src = fetchurl {
-    url = "https://github.com/kayhayen/Nuitka/archive/${version}.tar.gz";
-    sha256 = "0awhwksnmqmbciimqmd11wygp7bnq57khcg4n9r4ld53s147rmqm";
+  src = fetchFromGitHub {
+    owner = "kayhayen";
+    repo = "Nuitka";
+    rev = version;
+    sha256 = "08kcp22zdgp25kk4bp56z196mn6bdi3z4x0q2y9vyz0ywfzp9zap";
   };
 
   checkInputs = [ vmprof pyqt4 ];
   nativeBuildInputs = [ scons ];
+  propagatedBuildInputs = [ chrpath ];
 
   postPatch = ''
     patchShebangs tests/run-tests
diff --git a/nixpkgs/pkgs/development/python-modules/numba/default.nix b/nixpkgs/pkgs/development/python-modules/numba/default.nix
index 211e9d6185f6..c49a4105abe9 100644
--- a/nixpkgs/pkgs/development/python-modules/numba/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/numba/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     sha256 = "55c11d7edbba2ba715f2b56f5294cad55cfd87bff98e2627c3047c2d5cc52d16";
   };
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   propagatedBuildInputs = [ numpy llvmlite setuptools ];
   pythonImportsCheck = [ "numba" ];
diff --git a/nixpkgs/pkgs/development/python-modules/numcodecs/default.nix b/nixpkgs/pkgs/development/python-modules/numcodecs/default.nix
index 89471207c944..ca31e34d297c 100644
--- a/nixpkgs/pkgs/development/python-modules/numcodecs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/numcodecs/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 , cython
 , numpy
 , msgpack
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
     cython
     gcc8
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix b/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
index 839582e87f0d..25e81c89c255 100644
--- a/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
@@ -14,20 +14,18 @@
 
 buildPythonPackage rec {
   pname = "oauthenticator";
-  version = "0.13.0";
+  version = "14.0.0";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5202adcd96ddbbccbc267da02f2d14e977300c81291aaa77be4fd9f2e27cfa37";
+    sha256 = "1zfcl3dq9ladqg7fnpx6kgxf1ckjzlc8v3j6wa8w6iwglm40ax4r";
   };
 
   propagatedBuildInputs = [
     jupyterhub
   ];
 
-  pytestFlagsArray = [ "oauthenticator/tests" ];
-
   checkInputs = [
     google-api-python-client
     google-auth-oauthlib
@@ -38,6 +36,20 @@ buildPythonPackage rec {
     requests-mock
   ];
 
+  postPatch = ''
+  # The constraint was removed. No longer needed for > 14.0.0
+  # https://github.com/jupyterhub/oauthenticator/pull/431
+    substituteInPlace test-requirements.txt --replace "pyjwt>=1.7,<2.0" "pyjwt"
+  '';
+
+  disabledTests = [
+    # Test are outdated, https://github.com/jupyterhub/oauthenticator/issues/432
+    "test_azuread"
+    "test_mediawiki"
+  ];
+
+  pythonImportsCheck = [ "oauthenticator" ];
+
   meta = with lib; {
     description = "Authenticate JupyterHub users with common OAuth providers, including GitHub, Bitbucket, and more.";
     homepage =  "https://github.com/jupyterhub/oauthenticator";
diff --git a/nixpkgs/pkgs/development/python-modules/ofxparse/default.nix b/nixpkgs/pkgs/development/python-modules/ofxparse/default.nix
index d018a924d898..33d027f1beed 100644
--- a/nixpkgs/pkgs/development/python-modules/ofxparse/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ofxparse/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , six
 , beautifulsoup4
 , lxml
@@ -8,11 +8,15 @@
 
 buildPythonPackage rec {
   pname = "ofxparse";
-  version = "0.20";
+  version = "unstable-2020-02-05";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0zn3grc6xhgzcc81qc3dxkkwk731cjjqqhb46smw12lk09cdnigb";
+  # The newer changes haven't been released yet and ledger-autosync
+  # depends on them:
+  src = fetchFromGitHub {
+    owner = "jseutter";
+    repo = "ofxparse";
+    rev = "3236cfd96434feb6bc79a8b66f3400f18e2ad3c4";
+    sha256 = "1rkp174102q7hwjrg3na0qnfd612xb3r360b9blkbprjhzxy7gr7";
   };
 
   propagatedBuildInputs = [ six beautifulsoup4 lxml ];
diff --git a/nixpkgs/pkgs/development/python-modules/ondilo/default.nix b/nixpkgs/pkgs/development/python-modules/ondilo/default.nix
index 7010bd473aba..271243ab791e 100644
--- a/nixpkgs/pkgs/development/python-modules/ondilo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ondilo/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "ondilo";
-  version = "0.2.0";
+  version = "0.3.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "JeromeHXP";
     repo = pname;
     rev = version;
-    sha256 = "0k7c9nacf7pxvfik3hkv9vvvda2sx5jrf6zwq7r077x7fw5l8d2b";
+    sha256 = "sha256-MI6K+41I/IVi+GRBdmRIHbljULDFLAwpo3W8tdxCOBM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix b/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix
new file mode 100644
index 000000000000..f09a42ddd69b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, isodate
+, jsonschema
+, pytest-flake8
+, pytestcov
+, rfc3339-validator
+, six
+, strict-rfc3339
+}:
+
+buildPythonPackage rec {
+  pname = "openapi-schema-validator";
+  version = "0.1.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "a4b2712020284cee880b4c55faa513fbc2f8f07f365deda6098f8ab943c9f0df";
+  };
+
+  propagatedBuildInputs = [ isodate jsonschema six strict-rfc3339 rfc3339-validator ];
+
+  checkInputs = [ pytestCheckHook pytestcov pytest-flake8 ];
+  pythonImportsCheck = [ "openapi_schema_validator" ];
+
+  meta = with lib; {
+    description = "Validates OpenAPI schema against the OpenAPI Schema Specification v3.0";
+    homepage = "https://github.com/p1c2u/openapi-schema-validator";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix b/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
index 1cd95bcd6ab3..88455e726107 100644
--- a/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, isPy27, fetchPypi
-, jsonschema, pyyaml, six, pathlib
+, jsonschema, openapi-schema-validator, pyyaml, six, pathlib
 , mock, pytest, pytestcov, pytest-flake8, tox, setuptools }:
 
 buildPythonPackage rec {
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "53ba3d884e98ff2062d5ada025aa590541dcd665b8f81067dc82dd61c0923759";
   };
 
-  propagatedBuildInputs = [ jsonschema pyyaml six setuptools ]
+  propagatedBuildInputs = [ jsonschema openapi-schema-validator pyyaml six setuptools ]
     ++ (lib.optionals (isPy27) [ pathlib ]);
 
   checkInputs = [ mock pytest pytestcov pytest-flake8 tox ];
diff --git a/nixpkgs/pkgs/development/python-modules/openrazer/common.nix b/nixpkgs/pkgs/development/python-modules/openrazer/common.nix
index 35655b207a59..985d4e199e18 100644
--- a/nixpkgs/pkgs/development/python-modules/openrazer/common.nix
+++ b/nixpkgs/pkgs/development/python-modules/openrazer/common.nix
@@ -1,16 +1,16 @@
 { lib
 , fetchFromGitHub
 }: rec {
-  version = "3.0.0";
+  version = "3.0.1";
   src = fetchFromGitHub {
     owner = "openrazer";
     repo = "openrazer";
     rev = "v${version}";
-    sha256 = "sha256-gw6Qt9BntPcF3zw19PXftDbhoCeBr8hwrujy51rb5Fc=";
+    sha256 = "sha256-ptB0jP0kp1Liynkfz0B0OMw6xNQG1s8IvxhgNAdEytM=";
   };
   meta = with lib; {
     homepage = "https://openrazer.github.io/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ roelvandijk evanjs ];
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/opsdroid_get_image_size/default.nix b/nixpkgs/pkgs/development/python-modules/opsdroid_get_image_size/default.nix
new file mode 100644
index 000000000000..0f33da44145f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/opsdroid_get_image_size/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildPythonPackage, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "opsdroid_get_image_size";
+  version = "0.2.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "124j2xvfxv09q42qfb8nqlcn55y7f09iayrix3yfyrs2qyzav78a";
+  };
+
+  # test data not included on pypi
+  doCheck = false;
+
+  pythonImportsCheck = [ "get_image_size" ];
+
+  meta = with lib; {
+    description = "Get image width and height given a file path using minimal dependencies";
+    license = licenses.mit;
+    homepage = "https://github.com/opsdroid/image_size";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/oscrypto/default.nix b/nixpkgs/pkgs/development/python-modules/oscrypto/default.nix
index 6012398db982..cc89f3124806 100644
--- a/nixpkgs/pkgs/development/python-modules/oscrypto/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oscrypto/default.nix
@@ -1,25 +1,30 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , asn1crypto
 , fetchPypi
-, lib
 , openssl
 }:
 
 buildPythonPackage rec {
   pname = "oscrypto";
-  version = "1.1.1";
+  version = "1.2.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1vlryamwr442w2av8f54ldhls8fqs6678fg60pqbrf5pjy74kg23";
+    sha256 = "1546si2bdgkqnbvv4mw1hr4mhh6bq39d9z4wxgv1m7fq6miclb3x";
   };
 
   testSources = fetchPypi {
     inherit version;
     pname = "oscrypto_tests";
-    sha256 = "1crndz647pqdd8148yn3n5l63xwr6qkwa1qarsz59nk3ip0dsyq5";
+    sha256 = "1ha68dsrbx6mlra44x0n81vscn17pajbl4yg7cqkk7mq1zfmjwks";
   };
 
+  propagatedBuildInputs = [
+    asn1crypto
+    openssl
+  ];
+
   preCheck = ''
     tar -xf ${testSources}
     mv oscrypto_tests-${version} tests
@@ -28,14 +33,11 @@ buildPythonPackage rec {
     sed -e '/TLSTests/d' -e '/TrustListTests/d' -i tests/__init__.py
   '';
 
-  propagatedBuildInputs = [
-    asn1crypto
-    openssl
-  ];
+  pythonImportsCheck = [ "oscrypto" ];
 
   meta = with lib; {
-    description = "A compilation-free, always up-to-date encryption library for Python that works on Windows, OS X, Linux and BSD.";
-    homepage = "https://www.snowflake.com/";
+    description = "Encryption library for Python";
+    homepage = "https://github.com/wbond/oscrypto";
     license = licenses.mit;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/osmnx/default.nix b/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
index 3cd420c7491f..a55d26d83c28 100755
--- a/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, geopandas, descartes, matplotlib, networkx, numpy
-, pandas, requests, Rtree, shapely, folium, scikitlearn, scipy}:
+, pandas, requests, Rtree, shapely, folium, scikit-learn, scipy}:
 
 buildPythonPackage rec {
   pname = "osmnx";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "1k3y5kl4k93vxaxyanc040x44s2fyyc3m1ndy2j3kg0037z8ad4z";
   };
 
-  propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikitlearn scipy ];
+  propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy ];
 
   # requires network
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/ovoenergy/default.nix b/nixpkgs/pkgs/development/python-modules/ovoenergy/default.nix
new file mode 100644
index 000000000000..42615fa664dd
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ovoenergy/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, click
+, fetchFromGitHub
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "ovoenergy";
+  version = "1.1.12";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "timmo001";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1430k699gblxwspsbgxnha8afk6npqharhz2jyjw5gir9pi6g9cz";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    click
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "ovoenergy" ];
+
+  meta = with lib; {
+    description = "Python client for getting data from OVO's API";
+    homepage = "https://github.com/timmo001/ovoenergy";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pandas/2.nix b/nixpkgs/pkgs/development/python-modules/pandas/2.nix
index 936a3db296ec..8af4094b0cfb 100644
--- a/nixpkgs/pkgs/development/python-modules/pandas/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/pandas/2.nix
@@ -59,7 +59,7 @@ buildPythonPackage rec {
   # 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="${libcxx}/include/c++/v1";
+    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']" \
diff --git a/nixpkgs/pkgs/development/python-modules/pandas/default.nix b/nixpkgs/pkgs/development/python-modules/pandas/default.nix
index 7fd551e192c9..f3505e3c9a6a 100644
--- a/nixpkgs/pkgs/development/python-modules/pandas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pandas/default.nix
@@ -77,7 +77,7 @@ buildPythonPackage rec {
   # 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="${libcxx}/include/c++/v1";
+    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']" \
diff --git a/nixpkgs/pkgs/development/python-modules/parfive/default.nix b/nixpkgs/pkgs/development/python-modules/parfive/default.nix
index 45f4a66f2605..7b32cbb55bb3 100644
--- a/nixpkgs/pkgs/development/python-modules/parfive/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/parfive/default.nix
@@ -4,7 +4,7 @@
 , tqdm
 , aiohttp
 , pytest
-, setuptools_scm
+, setuptools-scm
 , pytest-localserver
 , pytest-socket
 , pytest-asyncio
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   buildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/path.py/2.nix b/nixpkgs/pkgs/development/python-modules/path.py/2.nix
index fb4ff20b7076..d7c635c2fe4a 100644
--- a/nixpkgs/pkgs/development/python-modules/path.py/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/path.py/2.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytest
 , pytest-flake8
 , glibcLocales
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ pytest pytest-flake8 glibcLocales packaging ];
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     importlib-metadata
   ] ++ lib.optional isPy27 backports_os
diff --git a/nixpkgs/pkgs/development/python-modules/path.py/default.nix b/nixpkgs/pkgs/development/python-modules/path.py/default.nix
index 5a0322edf657..e49b1ceb462c 100644
--- a/nixpkgs/pkgs/development/python-modules/path.py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/path.py/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook
 , pytest-flake8
 , glibcLocales
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ pytestCheckHook pytest-flake8 glibcLocales packaging ];
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     importlib-metadata
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pathy/default.nix b/nixpkgs/pkgs/development/python-modules/pathy/default.nix
new file mode 100644
index 000000000000..d656a752cf55
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pathy/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, typer
+, dataclasses
+, smart-open
+, pytest
+, mock
+, google-cloud-storage
+}:
+
+buildPythonPackage rec {
+  pname = "pathy";
+  version = "0.5.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-nb8my/5rkc7thuHnXZHe1Hg8j+sLBlYyJcLHWrrKZ5M=";
+  };
+
+  propagatedBuildInputs = [ smart-open typer google-cloud-storage ];
+
+  postPatch = ''
+    substituteInPlace requirements.txt \
+      --replace "smart-open>=2.2.0,<4.0.0" "smart-open>=2.2.0"
+  '';
+
+  checkInputs = [ pytestCheckHook mock ];
+
+  # Exclude tests that require provider credentials
+  pytestFlagsArray = [
+    "--ignore=pathy/_tests/test_clients.py"
+    "--ignore=pathy/_tests/test_gcs.py"
+    "--ignore=pathy/_tests/test_s3.py"
+  ];
+
+  meta = with lib; {
+    description = "A Path interface for local and cloud bucket storage";
+    homepage = "https://github.com/justindujardin/pathy";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ melling ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pdoc3/default.nix b/nixpkgs/pkgs/development/python-modules/pdoc3/default.nix
index d544f27b988b..66bed253cb86 100644
--- a/nixpkgs/pkgs/development/python-modules/pdoc3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pdoc3/default.nix
@@ -3,7 +3,7 @@
 , Mako
 , markdown
 , setuptools-git
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "9df5d931f25f353c69c46819a3bd03ef96dd286f2a70bb1b93a23a781f91faa1";
   };
 
-  nativeBuildInputs = [ setuptools-git setuptools_scm ];
+  nativeBuildInputs = [ setuptools-git setuptools-scm ];
   propagatedBuildInputs = [ Mako markdown ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/peewee/default.nix b/nixpkgs/pkgs/development/python-modules/peewee/default.nix
index 6f5d8e262279..fd057d24d31e 100644
--- a/nixpkgs/pkgs/development/python-modules/peewee/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/peewee/default.nix
@@ -12,14 +12,14 @@
 buildPythonPackage rec {
 
   pname = "peewee";
-  version = "3.13.3";
+  version = "3.14.4";
 
   # pypi release does not provide tests
   src = fetchFromGitHub {
     owner = "coleifer";
     repo = pname;
     rev = version;
-    sha256 = "1r67hxb9m6v0xbnbqfnsw6dahmdr94pf81b4x51jfw6x9sa4izi4";
+    sha256 = "0x85swpaffysc05kka0mab87cnilzw1lpacfhcx5ayabh0i2qsh6";
   };
 
 
diff --git a/nixpkgs/pkgs/development/python-modules/persim/default.nix b/nixpkgs/pkgs/development/python-modules/persim/default.nix
index d016d1ccea8b..2868cea4aea7 100644
--- a/nixpkgs/pkgs/development/python-modules/persim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/persim/default.nix
@@ -1,12 +1,14 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, scikitlearn
-, numpy
+, deprecated
+, hopcroftkarp
+, joblib
 , matplotlib
+, numpy
+, scikit-learn
 , scipy
-, hopcroftkarp
-, pytest
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -19,26 +21,24 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    scikitlearn
-    numpy
+    deprecated
+    hopcroftkarp
+    joblib
     matplotlib
+    numpy
+    scikit-learn
     scipy
-    hopcroftkarp
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
   ];
 
-  checkPhase = ''
+  preCheck = ''
     # specifically needed for darwin
     export HOME=$(mktemp -d)
     mkdir -p $HOME/.matplotlib
     echo "backend: ps" > $HOME/.matplotlib/matplotlibrc
-
-    # ignore tests due to python 2.7 fail
-    pytest --ignore test/test_plots.py \
-           --ignore test/test_visuals.py
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pg8000/default.nix b/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
index a03452d78628..958d3b765592 100644
--- a/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "pg8000";
-  version = "1.19.2";
+  version = "1.19.4";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-RMu008kS8toWfKAr+YoAQPfpMmDk7xFMKNXWFSAS6gc=";
+    sha256 = "sha256-fJxtV1QbDyFT4jqNdZzrPXy5MIkY+6atnpL44OWpC8g=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pglast/default.nix b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
index 3240b0809922..6a0f8940788c 100644
--- a/nixpkgs/pkgs/development/python-modules/pglast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
@@ -1,29 +1,33 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , isPy3k
-, pythonOlder
 , setuptools
-, aenum
-, pytest
 , pytestcov
+, pytest
 }:
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "1.17";
+  version = "3.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "2979b38ca5f72cfa0a5db78af2f62d04db6a7647ee7f03eac7a67f9e86e3f5f9";
+  # PyPI tarball does not include all the required files
+  src = fetchFromGitHub {
+    owner = "lelit";
+    repo = pname;
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "0yi24wj19rzw5dvppm8g3hnfskyzbrqw14q8x9f2q5zi8g6xnnrd";
   };
 
   disabled = !isPy3k;
 
-  propagatedBuildInputs = [ setuptools ] ++ lib.optionals (pythonOlder "3.6") [ aenum ];
+  propagatedBuildInputs = [ setuptools ];
 
   checkInputs = [ pytest pytestcov ];
 
+  pythonImportsCheck = [ "pglast" ];
+
   checkPhase = ''
     pytest
   '';
@@ -31,6 +35,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/lelit/pglast";
     description = "PostgreSQL Languages AST and statements prettifier";
+    changelog = "https://github.com/lelit/pglast/raw/v${version}/CHANGES.rst";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pgpy/default.nix b/nixpkgs/pkgs/development/python-modules/pgpy/default.nix
index b3fde72baec3..a79c65f4059a 100644
--- a/nixpkgs/pkgs/development/python-modules/pgpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pgpy/default.nix
@@ -1,31 +1,31 @@
-{ lib, isPy3k, fetchFromGitHub, buildPythonPackage
+{ lib, pythonOlder, fetchFromGitHub, buildPythonPackage
 , six, enum34, pyasn1, cryptography, singledispatch ? null
-, fetchPypi, pytestCheckHook }:
+, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "pgpy";
-  version = "0.5.2";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
     owner = "SecurityInnovation";
     repo = "PGPy";
-    rev = version;
-    sha256 = "1v2b1dyq1sl48d2gw7vn4hv6sasd9ihpzzcq8yvxj9dgfak2y663";
+    rev = "v${version}";
+    sha256 = "03pch39y3hi4ici6y6lvz0j0zram8dw2wvnmq1zyjy3vyvm1ms4a";
   };
 
   propagatedBuildInputs = [
     six
     pyasn1
     cryptography
+  ] ++ lib.optionals (pythonOlder "3.4") [
     singledispatch
-  ] ++ lib.optional (!isPy3k) enum34;
+    enum34
+  ];
 
   checkInputs = [
     pytestCheckHook
   ];
 
-  disabledTests = [ "test_sign_string" "test_verify_string" ];
-
   meta = with lib; {
     homepage = "https://github.com/SecurityInnovation/PGPy";
     description = "Pretty Good Privacy for Python 2 and 3";
@@ -35,6 +35,6 @@ buildPythonPackage rec {
       4880.
     '';
     license = licenses.bsd3;
-    maintainers = with maintainers; [ eadwu ];
+    maintainers = with maintainers; [ eadwu dotlambda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pgspecial/default.nix b/nixpkgs/pkgs/development/python-modules/pgspecial/default.nix
index d0cbf5bafe41..c49d6bae313c 100644
--- a/nixpkgs/pkgs/development/python-modules/pgspecial/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pgspecial/default.nix
@@ -1,4 +1,12 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, psycopg2, click, sqlparse }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, psycopg2
+, click
+, configobj
+, sqlparse
+}:
 
 buildPythonPackage rec {
   pname = "pgspecial";
@@ -9,13 +17,16 @@ buildPythonPackage rec {
     sha256 = "b68feb0005f57861573d3fbb82c5c777950decfbb2d1624af57aec825db02c02";
   };
 
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ click sqlparse psycopg2 ];
+  propagatedBuildInputs = [
+    click
+    sqlparse
+    psycopg2
+  ];
 
-  checkPhase = ''
-    find tests -name \*.pyc -delete
-    py.test tests
-  '';
+  checkInputs = [
+    configobj
+    pytestCheckHook
+  ];
 
   meta = with lib; {
     description = "Meta-commands handler for Postgres Database";
diff --git a/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix b/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
index 43ce5f1e766d..8eab09046dc2 100644
--- a/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
@@ -65,6 +65,6 @@ buildPythonApplication rec {
     homepage = "https://github.com/bootphon/phonemizer";
     description = "Simple text to phones converter for multiple languages";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pika/default.nix b/nixpkgs/pkgs/development/python-modules/pika/default.nix
index ef3250732164..1c8cae9f041c 100644
--- a/nixpkgs/pkgs/development/python-modules/pika/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pika/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, gevent
 , nose
 , mock
 , twisted
@@ -11,12 +12,34 @@ buildPythonPackage rec {
   pname = "pika";
   version = "1.2.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f023d6ac581086b124190cb3dc81dd581a149d216fa4540ac34f9be1e3970b89";
+  src = fetchFromGitHub {
+    owner = "pika";
+    repo = "pika";
+    rev = version;
+    sha256 = "sha256-Wog6Wxa8V/zv/bBrFOigZi6KE5qRf82bf1GK2XwvpDI=";
   };
 
-  checkInputs = [ nose mock twisted tornado ];
+  propagatedBuildInputs = [ gevent tornado twisted ];
+
+  checkInputs = [ nose mock ];
+
+  postPatch = ''
+    # don't stop at first test failure
+    # don't run acceptance tests because they access the network
+    # don't report test coverage
+    substituteInPlace setup.cfg \
+      --replace "stop = 1" "stop = 0" \
+      --replace "tests=tests/unit,tests/acceptance" "tests=tests/unit" \
+      --replace "with-coverage = 1" "with-coverage = 0"
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+
+    PIKA_TEST_TLS=true nosetests
+
+    runHook postCheck
+  '';
 
   meta = with lib; {
     description = "Pure-Python implementation of the AMQP 0-9-1 protocol";
diff --git a/nixpkgs/pkgs/development/python-modules/pillow-simd/default.nix b/nixpkgs/pkgs/development/python-modules/pillow-simd/default.nix
index 3aed634dfb1a..d7b2ff8d6b36 100644
--- a/nixpkgs/pkgs/development/python-modules/pillow-simd/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pillow-simd/default.nix
@@ -1,19 +1,20 @@
 { lib, stdenv, buildPythonPackage, fetchFromGitHub, isPyPy, isPy3k
 , olefile, freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2
-, tk, libX11, openjpeg, libimagequant, pyroma, numpy, pytestCheckHook
+, libxcb, tk, libX11, openjpeg, libimagequant, pyroma, numpy
+, pytestCheckHook
 }@args:
 
 import ../pillow/generic.nix (rec {
   pname = "Pillow-SIMD";
-  version = "7.0.0.post3";
+  version = "8.1.2";
 
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "uploadcare";
     repo = "pillow-simd";
-    rev = "v${version}";
-    sha256 = "1h832xp1bzf951hr4dmjmxqfsv28sx9lr2cq96qdz1c72k40zj1h";
+    rev = version;
+    sha256 = "1z0c1qpx7l1bhj71ww7za7kl29j5wdraqr2pdhv4dp1q74kgrr0m";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pint/default.nix b/nixpkgs/pkgs/development/python-modules/pint/default.nix
index c0aa86a3763d..f39caef6e59d 100644
--- a/nixpkgs/pkgs/development/python-modules/pint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pint/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, setuptools_scm
+, setuptools-scm
 , importlib-metadata
 , packaging
 # Check Inputs
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   disabled = pythonOlder "3.6";
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ packaging ]
     ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
diff --git a/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix b/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
index 48f15181ce00..51da889621f7 100644
--- a/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
@@ -1,45 +1,36 @@
-{ lib, fetchPypi, buildPythonPackage, pip, pytest, click, six
-, setuptools_scm, git, glibcLocales, mock }:
+{ lib
+, fetchPypi
+, pythonOlder
+, buildPythonPackage
+, pip
+, pytest
+, pytest-xdist
+, click
+, setuptools-scm
+, git
+, glibcLocales
+, mock
+, pep517
+}:
 
 buildPythonPackage rec {
   pname = "pip-tools";
-  version = "6.0.1";
+  version = "6.1.0";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3b0c7b95e8d3dfb011bb42cb38f356fcf5d0630480462b59c4d0a112b8d90281";
+    sha256 = "sha256-QAv3finMpIwxq8IQBCkyu1LcwTjvTqTVLF20KaqK5u4=";
   };
 
   LC_ALL = "en_US.UTF-8";
-  checkInputs = [ pytest git glibcLocales mock ];
-  propagatedBuildInputs = [ pip click six setuptools_scm ];
-
-  disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) [
-    # Depend on network tests:
-    "test_allow_unsafe_option" #paramaterized, but all fail
-    "test_annotate_option" #paramaterized, but all fail
-    "test_editable_package_vcs"
-    "test_editable_top_level_deps_preserved" # can't figure out how to select only one parameter to ignore
-    "test_filter_pip_markers"
-    "test_filter_pip_markes"
-    "test_generate_hashes_all_platforms"
-    "test_generate_hashes_verbose"
-    "test_generate_hashes_with_editable"
-    "test_generate_hashes_with_url"
-    "test_generate_hashes_without_interfering_with_each_other"
-    "test_get_file_hash_without_interfering_with_each_other"
-    "test_get_hashes_local_repository_cache_miss"
-    "test_realistic_complex_sub_dependencies"
-    "test_stdin"
-    "test_upgrade_packages_option"
-    "test_url_package"
-    "test_editable_package"
-    "test_locally_available_editable_package_is_not_archived_in_cache_dir"
-  ];
+  checkInputs = [ pytest git glibcLocales mock pytest-xdist ];
+  propagatedBuildInputs = [ pip click setuptools-scm pep517 ];
 
   checkPhase = ''
     export HOME=$(mktemp -d) VIRTUAL_ENV=1
-    py.test -k "${disabledTests}"
+    py.test -m "not network"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pipx/default.nix b/nixpkgs/pkgs/development/python-modules/pipx/default.nix
index 34a7bc6b31a1..c49601786732 100644
--- a/nixpkgs/pkgs/development/python-modules/pipx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pipx/default.nix
@@ -6,13 +6,12 @@
 , argcomplete
 , packaging
 , importlib-metadata
-, colorama
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "pipx";
-  version = "0.16.1.0";
+  version = "0.16.3";
 
   disabled = pythonOlder "3.6";
 
@@ -21,14 +20,13 @@ buildPythonPackage rec {
     owner = "pipxproject";
     repo = pname;
     rev = version;
-    sha256 = "081raqsaq7i2x4yxhxppv930jhajdwmngin5wazy7vqhiy3xc669";
+    sha256 = "1w5pzn5mgl9rr9zbmqza5is4mvjvcgjps1q9qa1mvbnyvakdkr4c";
   };
 
   propagatedBuildInputs = [
     userpath
     argcomplete
     packaging
-    colorama
   ] ++ lib.optionals (pythonOlder "3.8") [
     importlib-metadata
   ];
@@ -39,9 +37,17 @@ buildPythonPackage rec {
     export HOME=$(mktemp -d)
   '';
 
-  # disable tests, which require internet connection
-  pytestFlagsArray = [ "--ignore=tests/test_install_all_packages.py" ];
+  pytestFlagsArray = [
+    "--ignore=tests/test_install_all_packages.py"
+    # start local pypi server and use in tests
+    "--net-pypiserver"
+  ];
   disabledTests = [
+    # disable tests which are difficult to emulate due to shell manipulations
+    "path_warning"
+    "script_from_internet"
+    "ensure_null_pythonpath"
+    # disable tests, which require internet connection
     "install"
     "inject"
     "ensure_null_pythonpath"
@@ -54,6 +60,7 @@ buildPythonPackage rec {
     "suffix"
     "legacy_venv"
     "determination"
+    "json"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
index 52c371154111..dc832809c28f 100644
--- a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "PlexAPI";
-  version = "4.5.1";
+  version = "4.5.2";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "pkkid";
     repo = "python-plexapi";
     rev = version;
-    sha256 = "sha256-WrjIN6+7ybprnjCv57BdKaQYoQ+HgGVr/XytXcbAmwg=";
+    sha256 = "sha256-9rdpisEuLUO7oO7+7SQb4fXqRG30rf4R7bSFY+QpMhM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pluggy/default.nix b/nixpkgs/pkgs/development/python-modules/pluggy/default.nix
index ecb01f252f43..30fa2e1945b2 100644
--- a/nixpkgs/pkgs/development/python-modules/pluggy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pluggy/default.nix
@@ -1,7 +1,7 @@
 { buildPythonPackage
 , lib
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , importlib-metadata
 }:
 
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   # To prevent infinite recursion with pytest
   doCheck = false;
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ importlib-metadata ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/plugwise/default.nix b/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
index 289f1871f338..d62c2e8bb72b 100644
--- a/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
@@ -1,31 +1,31 @@
 { lib
-, buildPythonPackage
-, fetchFromGitHub
 , aiohttp
 , async-timeout
+, buildPythonPackage
 , crcmod
 , defusedxml
-, pyserial
-, pytz
-, python-dateutil
-, semver
+, fetchFromGitHub
 , jsonpickle
+, munch
 , mypy
+, pyserial
 , pytest-aiohttp
 , pytest-asyncio
-, pytest-cov
 , pytestCheckHook
+, python-dateutil
+, pytz
+, semver
 }:
 
 buildPythonPackage rec {
   pname = "plugwise";
-  version = "0.9.3";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "python-plugwise";
     rev = version;
-    sha256 = "sha256-MZ4R55vGUyWmR0Md83eNerzsgtYMch1vfQ3sqbm12bM=";
+    sha256 = "sha256-5r+Xe3EKLjuR7mPGEPOKzhE7G6OzNEClf847Px9VdWU=";
   };
 
   propagatedBuildInputs = [
@@ -33,9 +33,10 @@ buildPythonPackage rec {
     async-timeout
     crcmod
     defusedxml
+    munch
     pyserial
-    pytz
     python-dateutil
+    pytz
     semver
   ];
 
@@ -44,8 +45,6 @@ buildPythonPackage rec {
     mypy
     pytest-aiohttp
     pytest-asyncio
-    pytest-cov
-    pytest-asyncio
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/poetry/default.nix b/nixpkgs/pkgs/development/python-modules/poetry/default.nix
index 51e95efbee50..ad043e9f59e0 100644
--- a/nixpkgs/pkgs/development/python-modules/poetry/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/poetry/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace pyproject.toml \
      --replace 'importlib-metadata = {version = "^1.6.0", python = "<3.8"}' \
-       'importlib-metadata = {version = ">=1.6,<2", python = "<3.8"}' \
+       'importlib-metadata = {version = ">=1.6", python = "<3.8"}' \
      --replace 'version = "^21.2.0"' 'version = ">=21.2"'
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/pomegranate/default.nix b/nixpkgs/pkgs/development/python-modules/pomegranate/default.nix
index 8f260ad8ccb9..518840d415a9 100644
--- a/nixpkgs/pkgs/development/python-modules/pomegranate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pomegranate/default.nix
@@ -1,19 +1,41 @@
-{ lib, buildPythonPackage, fetchFromGitHub, numpy, scipy, cython, networkx, joblib, nose, pyyaml }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, numpy
+, scipy
+, cython
+, networkx
+, joblib
+, pandas
+, nose
+, pyyaml
+}:
+
 
 buildPythonPackage rec {
   pname = "pomegranate";
-  version = "0.11.2";
+  version = "0.13.5";
 
   src = fetchFromGitHub {
     repo = pname;
     owner = "jmschrei";
     rev = "v${version}";
-    sha256 = "070ciwww1lhjmfwd5n1kcwgxwbgdfvmhjs4l156bnf08z9dlrafl";
+    sha256 = "1hbxchp3daykkf1fa79a9mh34p78bygqcf1nv4qwkql3gw0pd6l7";
   };
 
+  patches = lib.optionals (lib.versionOlder version "13.6") [
+    # Fix compatibility with recent joblib release, will be part of the next
+    # pomegranate release after 0.13.5
+    (fetchpatch {
+      url = "https://github.com/jmschrei/pomegranate/commit/42d14bebc44ffd4a778b2a6430aa845591b7c3b7.patch";
+      sha256 = "0f9cx0fj9xkr3hch7jyrn76zjypilh5bqw734caaw6g2m49lvbff";
+    })
+  ];
+
   propagatedBuildInputs = [ numpy scipy cython networkx joblib pyyaml ];
 
-  checkInputs = [ nose ];
+  checkInputs = [ pandas nose ];  # as of 0.13.5, it depends explicitly on nose, rather than pytest.
 
   meta = with lib; {
     description = "Probabilistic and graphical models for Python, implemented in cython for speed";
diff --git a/nixpkgs/pkgs/development/python-modules/poppler-qt5/default.nix b/nixpkgs/pkgs/development/python-modules/poppler-qt5/default.nix
index 345f092a80fa..4a9fdfa42620 100644
--- a/nixpkgs/pkgs/development/python-modules/poppler-qt5/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/poppler-qt5/default.nix
@@ -1,44 +1,64 @@
-{ buildPythonPackage, fetchPypi, lib, sip, qtbase, pyqt5, poppler, pkg-config, fetchpatch
-, substituteAll
+{ stdenv
+, lib
+, buildPythonPackage
+, isPy3k
+, fetchPypi
+, pythonPackages
+, sip
+, qtbase
+, qmake
+, pyqt5
+, pyqt-builder
+, poppler
+, pkg-config
+, fetchpatch
 }:
 
 buildPythonPackage rec {
   pname = "python-poppler-qt5";
-  version = "0.24.2";
+  version = "21.1.0";
+
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0l69llw1fzwz8y90q0qp9q5pifbrqjjbwii7di54dwghw5fc6w1r";
+    sha256 = "0b82gm4i75q5v19kfbq0h4y0b2vcwr2213zkhxh6l0h45kdndmxd";
   };
 
   patches = [
-    (substituteAll {
-      src = ./poppler-include-dir.patch;
-      poppler_include_dir = "${poppler.dev}/include/poppler";
-    })
+    # Fix for https://github.com/frescobaldi/python-poppler-qt5/issues/43 (from PR #45)
     (fetchpatch {
-      url = "https://github.com/wbsoft/python-poppler-qt5/commit/faf4d1308f89560b0d849671226e3080dfc72e79.patch";
-      sha256 = "18krhh6wzsnpxzlzv02nginb1vralla8ai24zqk10nc4mj6fkj86";
+      url = "https://github.com/frescobaldi/python-poppler-qt5/commit/40e71ad88173d02648bceb2438bc0567e60dacd5.patch";
+      sha256 = "0c93d0k7b1n2s2njl8g92x6vw3z96da1fczah9qx07x08iw8dzi5";
     })
   ];
 
-  setupPyBuildFlags = [
-    "--pyqt-sip-dir ${pyqt5}/share/sip/PyQt5"
-    "--qt-include-dir ${qtbase.dev}/include"
-  ];
+  buildInputs = [ qtbase.dev poppler pyqt-builder ];
+  nativeBuildInputs = [ pkg-config qmake sip ];
+  propagatedBuildInputs = [ pyqt5.dev ];
+
+  format = "pyproject";
+  dontConfigure = true;
+
+  postPatch = ''
+    cat <<EOF >> pyproject.toml
+    sip-include-dirs = ["${pyqt5}/share/sip/PyQt5"]
 
-  buildInputs = [ qtbase.dev poppler ];
-  nativeBuildInputs = [ pkg-config ];
-  propagatedBuildInputs = [ sip pyqt5.dev ];
+    [tool.sip.bindings.Poppler-Qt5]
+    include-dirs = ["${poppler.dev}/include/poppler"]
+    tags = ["${sip.platform_tag}"]
+    EOF
+  '';
 
   # no tests, just bindings for `poppler_qt5`
   doCheck = false;
+  pythonImportsCheck = [ "popplerqt5" ];
 
   dontWrapQtApps = true;
 
   meta = with lib; {
-    homepage = "https://github.com/wbsoft/python-poppler-qt5";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ ];
+    homepage = "https://github.com/frescobaldi/python-poppler-qt5";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ eduardosm ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/poppler-qt5/poppler-include-dir.patch b/nixpkgs/pkgs/development/python-modules/poppler-qt5/poppler-include-dir.patch
deleted file mode 100644
index 7106c1d6352c..000000000000
--- a/nixpkgs/pkgs/development/python-modules/poppler-qt5/poppler-include-dir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 59a75b0..0a73268 100644
---- a/setup.py
-+++ b/setup.py
-@@ -169,6 +169,7 @@ class build_ext(build_ext_base):
-                              'Please specify via --pyqt-sip-flags=')
- 
-         self.include_dirs += (self.qt_include_dir,
-+                              '@poppler_include_dir@',
-                               os.path.join(self.qt_include_dir, 'QtCore'),
-                               os.path.join(self.qt_include_dir, 'QtGui'),
-                               os.path.join(self.qt_include_dir, 'QtXml'))
diff --git a/nixpkgs/pkgs/development/python-modules/portend/default.nix b/nixpkgs/pkgs/development/python-modules/portend/default.nix
index 0429519c2021..da27dd3cd922 100644
--- a/nixpkgs/pkgs/development/python-modules/portend/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/portend/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, setuptools_scm, tempora, pytest-black, pytestcov }:
+, pytest, setuptools-scm, tempora, pytest-black, pytestcov }:
 
 buildPythonPackage rec {
   pname = "portend";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     substituteInPlace pytest.ini --replace "--flake8" ""
   '';
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ tempora ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/powerline-mem-segment/default.nix b/nixpkgs/pkgs/development/python-modules/powerline-mem-segment/default.nix
new file mode 100644
index 000000000000..7bc38f2227ae
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/powerline-mem-segment/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, psutil
+}:
+
+buildPythonPackage rec {
+  pname = "powerline-mem-segment";
+  version = "2.4.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0507zw7g449zk7dcq56adcdp71inbqfdmp6y5yk4x4j7kkp6pii9";
+  };
+
+  propagatedBuildInputs = [ psutil ];
+
+  pythonImportsCheck = [ "powerlinemem" ];
+
+  meta = with lib; {
+    description = "Segment for Powerline showing the current memory usage in percent or absolute values.";
+    homepage = "https://github.com/mKaloer/powerline_mem_segment";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ thomasjm ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ppscore/default.nix b/nixpkgs/pkgs/development/python-modules/ppscore/default.nix
index ad3a393a00d1..43dd1f249ed8 100644
--- a/nixpkgs/pkgs/development/python-modules/ppscore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ppscore/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , isPy27
 , pandas
-, scikitlearn
+, scikit-learn
 , pytestCheckHook
 }:
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     pandas
-    scikitlearn
+    scikit-learn
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/prayer-times-calculator/default.nix b/nixpkgs/pkgs/development/python-modules/prayer-times-calculator/default.nix
new file mode 100644
index 000000000000..9508cd0e435d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/prayer-times-calculator/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "prayer-times-calculator";
+  version = "0.0.5";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "uchagani";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-wm1r0MK6dx0cJvyQ7ulxvGWyIrNiPV2RXJD/IuKP3+E=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "prayer_times_calculator" ];
+
+  meta = with lib; {
+    description = "Python client for the Prayer Times API";
+    homepage = "https://github.com/uchagani/prayer-times-calculator";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/prettytable/1.nix b/nixpkgs/pkgs/development/python-modules/prettytable/1.nix
index 0bd18f0721fc..8191e9b5f579 100644
--- a/nixpkgs/pkgs/development/python-modules/prettytable/1.nix
+++ b/nixpkgs/pkgs/development/python-modules/prettytable/1.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , glibcLocales
-, setuptools_scm
+, setuptools-scm
 , wcwidth
 }:
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "0wcpp1nkicrswb353yn6xd2x535cpif62nw5rgz33c1wj0wzbdvb";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [ glibcLocales ];
 
   propagatedBuildInputs = [ wcwidth ];
diff --git a/nixpkgs/pkgs/development/python-modules/prettytable/default.nix b/nixpkgs/pkgs/development/python-modules/prettytable/default.nix
index d349a58960a1..23702f8e8cfb 100644
--- a/nixpkgs/pkgs/development/python-modules/prettytable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/prettytable/default.nix
@@ -2,8 +2,10 @@
 , buildPythonPackage
 , fetchPypi
 , glibcLocales
-, setuptools_scm
+, setuptools-scm
 , wcwidth
+, importlib-metadata
+, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -15,10 +17,14 @@ buildPythonPackage rec {
     sha256 = "5882ed9092b391bb8f6e91f59bcdbd748924ff556bb7c634089d5519be87baa0";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [ glibcLocales ];
 
-  propagatedBuildInputs = [ wcwidth ];
+  propagatedBuildInputs = [
+    wcwidth
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
+  ];
 
   preCheck = ''
     export LANG="en_US.UTF-8"
diff --git a/nixpkgs/pkgs/development/python-modules/prison/default.nix b/nixpkgs/pkgs/development/python-modules/prison/default.nix
index 941da2bf9afd..95a79ea1896b 100644
--- a/nixpkgs/pkgs/development/python-modules/prison/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/prison/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "prison";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchFromGitHub {
     owner = "betodealmeida";
     repo = "python-rison";
     rev = version;
-    sha256 = "14vb468iznf9416z993bbqihywp9ibyslw5vp67wfr200zyxjwak";
+    sha256 = "sha256-qor40vUQeTdlO3vwug3GGNX5vkNaF0H7EWlRdsY4bvc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/privacyidea/default.nix b/nixpkgs/pkgs/development/python-modules/privacyidea/default.nix
index c28a00901682..11ff6f71af63 100644
--- a/nixpkgs/pkgs/development/python-modules/privacyidea/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/privacyidea/default.nix
@@ -1,10 +1,10 @@
 { lib, buildPythonPackage, fetchFromGitHub, cacert, openssl, python, nixosTests
 
 , cryptography, pyrad, pymysql, python-dateutil, flask-versioned, flask_script
-, defusedxml, croniter, flask_migrate, pyjwt, configobj, sqlsoup, pillow
+, defusedxml, croniter, flask_migrate, pyjwt1, configobj, sqlsoup, pillow
 , python-gnupg, passlib, pyopenssl, beautifulsoup4, smpplib, flask-babel
 , ldap3, huey, pyyaml, qrcode, oauth2client, requests, lxml, cbor2, psycopg2
-, pydash
+, pydash, ecdsa
 
 , mock, pytestCheckHook, responses, testfixtures
 }:
@@ -29,10 +29,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     cryptography pyrad pymysql python-dateutil flask-versioned flask_script
-    defusedxml croniter flask_migrate pyjwt configobj sqlsoup pillow
+    defusedxml croniter flask_migrate pyjwt1 configobj sqlsoup pillow
     python-gnupg passlib pyopenssl beautifulsoup4 smpplib flask-babel
     ldap3 huey pyyaml qrcode oauth2client requests lxml cbor2 psycopg2
-    pydash
+    pydash ecdsa
   ];
 
   passthru.tests = { inherit (nixosTests) privacyidea; };
diff --git a/nixpkgs/pkgs/development/python-modules/psautohint/default.nix b/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
index cfed6dd74cf6..01b249e1c77f 100644
--- a/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
 , fonttools
 , lxml, fs # for fonttools extras
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook, pytestcov, pytest_xdist
 }:
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     sed -i '/setup(/a \     version="${version}",' setup.py
   '';
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ fonttools lxml fs ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/psutil/default.nix b/nixpkgs/pkgs/development/python-modules/psutil/default.nix
index a53005c7426a..ba17c5eca737 100644
--- a/nixpkgs/pkgs/development/python-modules/psutil/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/psutil/default.nix
@@ -15,16 +15,25 @@ buildPythonPackage rec {
     sha256 = "1immnj532bnnrh1qmk5q3lsw3san8qfk9kxy1cpmy0knmfcwp70c";
   };
 
-  # arch doesn't report frequency is the same way
-  # tests segfaults on darwin https://github.com/giampaolo/psutil/issues/1715
-  doCheck = !stdenv.isDarwin && stdenv.isx86_64;
+  # We have many test failures on various parts of the package:
+  #  - segfaults on darwin:
+  #    https://github.com/giampaolo/psutil/issues/1715
+  #  - swap (on linux) might cause test failures if it is fully used:
+  #    https://github.com/giampaolo/psutil/issues/1911
+  #  - some mount paths are required in the build sanbox to make the tests succeed:
+  #    https://github.com/giampaolo/psutil/issues/1912
+  doCheck = false;
   checkInputs = [ pytestCheckHook ]
-    ++ lib.optionals isPy27 [ mock ipaddress unittest2 ];
+  ++ lib.optionals isPy27 [ mock ipaddress unittest2 ];
+  # In addition to the issues listed above there are some that occure due to
+  # our sandboxing which we can work around by disabling some tests:
+  # - cpu_times was flaky on darwin
+  # - the other disabled tests are likely due to sanboxing (missing specific errors)
   pytestFlagsArray = [
     "$out/${python.sitePackages}/psutil/tests/test_system.py"
   ];
-  # disable tests which don't work in sandbox
-  # cpu_times is flakey on darwin
+
+  # Note: $out must be referenced as test import paths are relative
   disabledTests = [
     "user"
     "disk_io_counters"
diff --git a/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix b/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
index 6b05f383ec6f..83dd2f5fae3c 100644
--- a/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pulsectl";
-  version = "21.3.4";
+  version = "21.5.18";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-+qi5M2I3VlmQKY8ghw4T3RZ4pFhoR8paf/Kr8QdS81Y=";
+    sha256 = "0n448nkm2i4gnsq48vbj8sldmyx0b7c7rvzijg8h2pxdrmilbqql";
   };
 
   patches = [
@@ -17,9 +17,15 @@ buildPythonPackage rec {
     })
   ];
 
+  pythonImportsCheck = [
+    "pulsectl"
+  ];
+
   checkInputs = [ pulseaudio ];
+
   checkPhase = ''
-    ${python.interpreter} -m unittest pulsectl.tests.all
+    export HOME=$TMPDIR
+    ${python.interpreter} -m unittest discover
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pur/default.nix b/nixpkgs/pkgs/development/python-modules/pur/default.nix
index 7d79be68b600..d2bc7d5824dc 100644
--- a/nixpkgs/pkgs/development/python-modules/pur/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pur/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "pur";
-  version = "5.4.0";
+  version = "5.4.1";
 
   src = fetchFromGitHub {
     owner = "alanhamlett";
     repo = "pip-update-requirements";
     rev = version;
-    sha256 = "1p2g0kz9l0rb59b3rkclb6wwidc93kwqh2hm4xc22b1w9r946six";
+    sha256 = "sha256-a2wViLJW+UXgHcURxr4irFVkH8STH84AVcwQIkvH+Fg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix b/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
index 6e504951cdbe..c8fde03d79dc 100644
--- a/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, isPy3k, lib, fetchFromGitHub, setuptools_scm, toml, pytest }:
+{ buildPythonPackage, isPy3k, lib, fetchFromGitHub, setuptools-scm, toml, pytest }:
 
 buildPythonPackage rec {
   pname = "pure_eval";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ toml ];
 
   checkInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/puremagic/default.nix b/nixpkgs/pkgs/development/python-modules/puremagic/default.nix
new file mode 100644
index 000000000000..c635cdac186a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/puremagic/default.nix
@@ -0,0 +1,29 @@
+{ lib, buildPythonPackage, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "puremagic";
+  version = "1.10";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "025ih5q1qa40x88j7ngsdr5sf0dp400kwlfzz60i7v6fh0ms1zkg";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace '"argparse"' ""
+  '';
+
+  # test data not included on pypi
+  doCheck = false;
+
+  pythonImportsCheck = [ "puremagic" ];
+
+  meta = with lib; {
+    description = "Pure python implementation of magic file detection";
+    license = licenses.mit;
+    homepage = "https://github.com/cdgriffith/puremagic";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/purl/default.nix b/nixpkgs/pkgs/development/python-modules/purl/default.nix
index 43fd5b71ca6c..aa85ea3965ab 100644
--- a/nixpkgs/pkgs/development/python-modules/purl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/purl/default.nix
@@ -1,22 +1,19 @@
 { lib, buildPythonPackage, fetchFromGitHub
-, nose
-, six
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "purl";
-  version = "1.5";
+  version = "1.6";
 
   src = fetchFromGitHub {
     owner = "codeinthehole";
     repo = "purl";
     rev = version;
-    sha256 = "0vi7xdm2xc1rbqrz5jwpr7x7dnkcrbjf1mb4w1q2c2f8jca0kk0g";
+    sha256 = "sha256-Jb3JRW/PtQ7NlO4eQ9DmTPu/sjvFTg2mztphoIF79gc=";
   };
 
-  propagatedBuildInputs = [ six ];
-
-  checkInputs = [ nose ];
+  checkInputs = [ pytestCheckHook];
 
   meta = with lib; {
     description = "Immutable URL class for easy URL-building and manipulation";
diff --git a/nixpkgs/pkgs/development/python-modules/pushbullet/default.nix b/nixpkgs/pkgs/development/python-modules/pushbullet/default.nix
index 68c9d9180dc8..43cab7db6756 100644
--- a/nixpkgs/pkgs/development/python-modules/pushbullet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pushbullet/default.nix
@@ -1,6 +1,12 @@
-{ lib, buildPythonPackage, fetchPypi
-, requests, websocket_client, python_magic
-, pytest, mock }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, requests
+, websocket_client
+, python_magic
+, cryptography
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "pushbullet.py";
@@ -11,13 +17,17 @@ buildPythonPackage rec {
     sha256 = "917883e1af4a0c979ce46076b391e0243eb8fe0a81c086544bcfa10f53e5ae64";
   };
 
-  propagatedBuildInputs = [ requests websocket_client python_magic ];
+  propagatedBuildInputs = [ cryptography requests websocket_client python_magic ];
 
-  checkInputs = [ pytest mock ];
-
-  checkPhase = ''
-    PUSHBULLET_API_KEY="" py.test -k "not test_e2e and not test_auth"
+  preCheck = ''
+    export PUSHBULLET_API_KEY=""
   '';
+  checkInputs = [ pytestCheckHook ];
+  disabledTests = [
+    "test_auth_fail"
+    "test_auth_success"
+    "test_decryption"
+  ];
 
   meta = with lib; {
     description = "A simple python client for pushbullet.com";
diff --git a/nixpkgs/pkgs/development/python-modules/pwntools/default.nix b/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
index a24e1d5db13e..b9f71de8e94f 100644
--- a/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
@@ -2,14 +2,13 @@
 , buildPythonPackage
 , debugger
 , fetchPypi
-, isPy3k
 , Mako
-, makeWrapper
 , packaging
 , pysocks
 , pygments
 , ROPGadget
 , capstone
+, colored-traceback
 , paramiko
 , pip
 , psutil
@@ -17,28 +16,40 @@
 , pyserial
 , dateutil
 , requests
+, rpyc
 , tox
 , unicorn
 , intervaltree
-, fetchpatch
+, installShellFiles
 }:
 
+let
+  debuggerName = lib.strings.getName debugger;
+in
 buildPythonPackage rec {
-  version = "4.3.1";
+  version = "4.5.0";
   pname = "pwntools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "12ja913kz8wl4afrmpzxh9fx6j7rcwc2vqzkvfr1fxn42gkqhqf4";
+    sha256 = "sha256-IWHMorSASG/po8ib1whS3xPuoUUlD0tbbWI35DI2SIY=";
   };
 
-  # Upstream has set an upper bound on unicorn because of https://github.com/Gallopsled/pwntools/issues/1538,
-  # but since that is a niche use case and it requires extra work to get unicorn 1.0.2rc3 to work we relax
-  # the bound here. Check if this is still necessary when updating!
   postPatch = ''
+    # Upstream has set an upper bound on unicorn because of https://github.com/Gallopsled/pwntools/issues/1538,
+    # but since that is a niche use case and it requires extra work to get unicorn 1.0.2rc3 to work we relax
+    # the bound here. Check if this is still necessary when updating!
     sed -i 's/unicorn>=1.0.2rc1,<1.0.2rc4/unicorn>=1.0.2rc1/' setup.py
+
+    # Upstream hardcoded the check for the command `gdb-multiarch`;
+    # Forcefully use the provided debugger, as `gdb` (hence `pwndbg`) is built with multiarch in `nixpkgs`.
+    sed -i 's/gdb-multiarch/${debuggerName}/' pwnlib/gdb.py
   '';
 
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
   propagatedBuildInputs = [
     Mako
     packaging
@@ -46,6 +57,7 @@ buildPythonPackage rec {
     pygments
     ROPGadget
     capstone
+    colored-traceback
     paramiko
     pip
     psutil
@@ -53,6 +65,7 @@ buildPythonPackage rec {
     pyserial
     dateutil
     requests
+    rpyc
     tox
     unicorn
     intervaltree
@@ -60,9 +73,13 @@ buildPythonPackage rec {
 
   doCheck = false; # no setuptools tests for the package
 
+  postInstall = ''
+    installShellCompletion --bash extra/bash_completion.d/shellcraft
+  '';
+
   postFixup = ''
     mkdir -p "$out/bin"
-    makeWrapper "${debugger}/bin/${lib.strings.getName debugger}" "$out/bin/pwntools-gdb"
+    makeWrapper "${debugger}/bin/${debuggerName}" "$out/bin/pwntools-gdb"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix b/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
index b5ffc1fc0a5d..2f494dcb7002 100644
--- a/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
@@ -1,6 +1,6 @@
 { buildPythonPackage, fetchPypi, flask, isPy27, lib, nixosTests
 , prometheus_client, py-air-control, pytestCheckHook, pytestcov, pytestrunner
-, setuptools_scm }:
+, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "py-air-control-exporter";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "ece2e446273542e5c0352c9d6e80d8279132c6ada3649c59e87a711448801a3b";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   checkInputs = [ pytestCheckHook pytestcov pytestrunner ];
   propagatedBuildInputs = [ flask prometheus_client py-air-control ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/py-canary/default.nix b/nixpkgs/pkgs/development/python-modules/py-canary/default.nix
new file mode 100644
index 000000000000..531624781b40
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/py-canary/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, pytestCheckHook
+, pythonOlder
+, requests
+, requests-mock
+}:
+
+buildPythonPackage rec {
+  pname = "py-canary";
+  version = "0.5.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "snjoetw";
+    repo = pname;
+    rev = version;
+    sha256 = "0j743cc0wv7im3anx1vvdm79zyvw67swhc3zwwc1r8626dgnmxjr";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  checkInputs = [
+    mock
+    pytestCheckHook
+    requests-mock
+  ];
+
+  pythonImportsCheck = [ "canary" ];
+
+  meta = with lib; {
+    description = "Python package for Canary Security Camera";
+    homepage = "https://github.com/snjoetw/py-canary";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/py-cpuinfo/default.nix b/nixpkgs/pkgs/development/python-modules/py-cpuinfo/default.nix
index f9e276b3bb5f..12b9668f1edd 100644
--- a/nixpkgs/pkgs/development/python-modules/py-cpuinfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-cpuinfo/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
 , pytestCheckHook
 , sysctl
@@ -9,28 +8,15 @@
 
 buildPythonPackage rec {
   pname = "py-cpuinfo";
-  version = "7.0.0";
+  version = "8.0.0";
 
   src = fetchFromGitHub {
      owner = "workhorsy";
      repo = pname;
      rev = "v${version}";
-     sha256 = "10qfaibyb2syiwiyv74l7d97vnmlk079qirgnw3ncklqjs0s3gbi";
+     sha256 = "sha256-Mgzj1HTasUNHeHMVwV6d+TeyVqnBNUwCJ1EC3kfovf8=";
   };
 
-  patches = [
-    # Make it detect Apple Silicon, remove after https://github.com/workhorsy/py-cpuinfo/pull/161 is merged.
-    (fetchpatch {
-      url = "https://github.com/workhorsy/py-cpuinfo/commit/54c32da6678f9d75ec5acf4534056cdc85c2a04d.patch";
-      sha256 = "sha256-3R46KrpACAQ1V0CQtz48V5mQXxvplUQrXnACtiE8WqY=";
-    })
-    # Continuation of the patch above
-    (fetchpatch {
-      url = "https://github.com/workhorsy/py-cpuinfo/commit/0d00f4b99750f292c85ff23e1039ea9489cb7ec8.patch";
-      sha256 = "sha256-mHoXoCAEG2v3xpQppRFWzSvhYCp5i9CZkbEgtiLVzMs=";
-    })
-  ];
-
   checkInputs = [
     pytestCheckHook
   ];
@@ -42,17 +28,19 @@ buildPythonPackage rec {
       --replace "_run_and_get_stdout(['sysctl'" "_run_and_get_stdout(['${sysctl}/bin/sysctl'"
   '';
 
-  meta = {
-    description = "Get CPU info with pure Python 2 & 3";
+  pythonImportsCheck = [ "cpuinfo" ];
+
+  meta = with lib; {
+    description = "Get CPU info with pure Python";
     longDescription = ''
       Py-cpuinfo gets CPU info with pure Python and should work without any
       extra programs or libraries, beyond what your OS provides. It does not
       require any compilation (C/C++, assembly, etc.) to use and works with
-      Python 2 and 3.
+      Python.
     '';
-    inherit (src.meta) homepage;
+    homepage = "https://github.com/workhorsy/py-cpuinfo";
     changelog = "https://github.com/workhorsy/py-cpuinfo/blob/v${version}/ChangeLog";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ costrouc ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ costrouc ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/py-desmume/default.nix b/nixpkgs/pkgs/development/python-modules/py-desmume/default.nix
new file mode 100644
index 000000000000..e9cff7eb8243
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/py-desmume/default.nix
@@ -0,0 +1,44 @@
+{ lib, buildPythonPackage, fetchFromGitHub, GitPython
+, libpcap, meson, ninja, pillow, pkg-config, pygobject3, SDL2
+, alsa-lib, soundtouch, openal
+}:
+
+let
+  desmume = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = "desmume";
+    rev = "8e7af8ada883b7e91344985236f7c7c04ee795d7";
+    sha256 = "0svmv2rch9q347gbpbws4agymas8n014gh1ssaf91wx7jwn53842";
+  };
+in
+buildPythonPackage rec {
+  pname = "py-desmume";
+  version = "0.0.3.post2";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "1chsg70k8kqnlasn88b04ww3yl0lay1bjxvz6lhp6s2cvsxv03x1";
+  };
+
+  postPatch = ''
+    cp -R --no-preserve=mode ${desmume} __build_desmume
+  '';
+
+  buildInputs = [ GitPython libpcap SDL2 alsa-lib soundtouch openal ];
+  nativeBuildInputs = [ meson ninja pkg-config ];
+  propagatedBuildInputs = [ pillow pygobject3 ];
+
+  hardeningDisable = [ "format" ];
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "desmume" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/py-desmume";
+    description = "Python library to interface with DeSmuME, the Nintendo DS emulator";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/py-dmidecode/default.nix b/nixpkgs/pkgs/development/python-modules/py-dmidecode/default.nix
new file mode 100644
index 000000000000..e74a8d7ac297
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/py-dmidecode/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildPythonPackage, fetchPypi, dmidecode }:
+
+buildPythonPackage rec {
+  pname = "py-dmidecode";
+  version = "0.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1bv1vmhj8h520kj6slwpz16xfmgp117yjjkfyihkl5ix6mn5zkpa";
+  };
+
+  propagatedBuildInputs = [ dmidecode ];
+
+  # Project has no tests.
+  doCheck = false;
+  pythonImportsCheck = [ "dmidecode" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/zaibon/py-dmidecode/";
+    description = "Python library that parses the output of dmidecode";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ davidtwco ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/py-ubjson/default.nix b/nixpkgs/pkgs/development/python-modules/py-ubjson/default.nix
new file mode 100644
index 000000000000..4efa2b8b6fdb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/py-ubjson/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "py-ubjson";
+  version = "0.16.1";
+
+  src = fetchFromGitHub {
+    owner = "Iotic-Labs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1frn97xfa88zrfmpnvdk1pc03yihlchhph99bhjayvzlfcrhm5v3";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "test/test.py" ];
+
+  pythonImportsCheck = [ "ubjson" ];
+
+  meta = with lib; {
+    description = "Universal Binary JSON draft-12 serializer for Python";
+    homepage = "https://github.com/Iotic-Labs/py-ubjson";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/py/default.nix b/nixpkgs/pkgs/development/python-modules/py/default.nix
index 26afa14c1ef7..ce7abe4dc273 100644
--- a/nixpkgs/pkgs/development/python-modules/py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "py";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   # Circular dependency on pytest
   doCheck = false;
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   pythonImportsCheck = [
     "py"
diff --git a/nixpkgs/pkgs/development/python-modules/py3exiv2/default.nix b/nixpkgs/pkgs/development/python-modules/py3exiv2/default.nix
index 236a38c7e69a..59d0cdb7299f 100644
--- a/nixpkgs/pkgs/development/python-modules/py3exiv2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py3exiv2/default.nix
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   buildInputs = [ exiv2 boost ];
 
   # work around python distutils compiling C++ with $CC (see issue #26709)
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   meta = with lib; {
     homepage = "https://launchpad.net/py3exiv2";
diff --git a/nixpkgs/pkgs/development/python-modules/py3status/default.nix b/nixpkgs/pkgs/development/python-modules/py3status/default.nix
index 9967394d28e0..b41b7ddf320c 100644
--- a/nixpkgs/pkgs/development/python-modules/py3status/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py3status/default.nix
@@ -14,7 +14,7 @@
 , file
 , acpi
 , coreutils
-, alsaUtils
+, alsa-utils
 , i3
 , procps
 , lm_sensors
@@ -40,7 +40,7 @@ buildPythonPackage rec {
     sed -i -e "s|\[\"acpi\"|\[\"${acpi}/bin/acpi\"|" py3status/modules/battery_level.py
     sed -i -e "s|notify-send|${libnotify}/bin/notify-send|" py3status/modules/battery_level.py
     sed -i -e "s|/usr/bin/whoami|${coreutils}/bin/whoami|" py3status/modules/external_script.py
-    sed -i -e "s|'amixer|'${alsaUtils}/bin/amixer|" py3status/modules/volume_status.py
+    sed -i -e "s|'amixer|'${alsa-utils}/bin/amixer|" py3status/modules/volume_status.py
     sed -i -e "s|'i3-nagbar|'${i3}/bin/i3-nagbar|" py3status/modules/pomodoro.py
     sed -i -e "s|'free|'${procps}/bin/free|" py3status/modules/sysdata.py
     sed -i -e "s|'sensors|'${lm_sensors}/bin/sensors|" py3status/modules/sysdata.py
diff --git a/nixpkgs/pkgs/development/python-modules/pyGithub/default.nix b/nixpkgs/pkgs/development/python-modules/pyGithub/default.nix
index c214b375ff38..02656968d682 100644
--- a/nixpkgs/pkgs/development/python-modules/pyGithub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyGithub/default.nix
@@ -3,36 +3,41 @@
 , cryptography
 , deprecated
 , fetchFromGitHub
-, httpretty
-, isPy3k
-, parameterized
+, pynacl
 , pyjwt
-, pytestCheckHook
-, requests }:
+, pythonOlder
+, requests
+}:
 
 buildPythonPackage rec {
   pname = "PyGithub";
-  version = "1.54.1";
-  disabled = !isPy3k;
+  version = "1.55";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "PyGithub";
     repo = "PyGithub";
     rev = "v${version}";
-    sha256 = "1nl74bp5ikdnrc8xq0qr25ryl1mvarf0xi43k8w5jzlrllhq0nkq";
+    sha256 = "sha256-PuGCBFSbM91NtSzuyf0EQUr3LiuHDq90OwkSf53rSyA=";
   };
 
-  checkInputs = [ httpretty parameterized pytestCheckHook ];
-  propagatedBuildInputs = [ cryptography deprecated pyjwt requests ];
+  propagatedBuildInputs = [
+    cryptography
+    deprecated
+    pynacl
+    pyjwt
+    requests
+  ];
 
   # Test suite makes REST calls against github.com
   doCheck = false;
+  pythonImportsCheck = [ "github" ];
 
   meta = with lib; {
+    description = "Python library to access the GitHub API v3";
     homepage = "https://github.com/PyGithub/PyGithub";
-    description = "A Python (2 and 3) library to access the GitHub API v3";
     platforms = platforms.all;
-    license = licenses.gpl3;
+    license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ jhhuh ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyaftership/default.nix b/nixpkgs/pkgs/development/python-modules/pyaftership/default.nix
index e65812cb3133..6253d9511183 100644
--- a/nixpkgs/pkgs/development/python-modules/pyaftership/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyaftership/default.nix
@@ -1,4 +1,13 @@
-{ aiohttp, async-timeout, buildPythonPackage, fetchPypi, isPy3k, lib }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, isPy3k
+, aiohttp
+, async-timeout
+, aresponses
+, pytest-asyncio
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "pyaftership";
@@ -6,16 +15,17 @@ buildPythonPackage rec {
 
   disabled = !isPy3k;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "28b62c323d06492399b60d8135a58d6feaa1d60837eddc14e57ea2b69d356c0a";
+  src = fetchFromGitHub {
+    owner = "ludeeus";
+    repo = pname;
+    rev = version;
+    sha256 = "0jyzgwaijkp80whi58a0hgjzmnlczmd9vwn11z2m0j01kbdwznn5";
   };
 
   propagatedBuildInputs = [ aiohttp async-timeout ];
 
-  # No tests
-  doCheck = false;
-  pythonImportsCheck = [ "pyaftership.tracker" ];
+  checkInputs = [ pytestCheckHook aresponses pytest-asyncio ];
+  pythonImportsCheck = [ "pyaftership" ];
 
   meta = with lib; {
     description = "Python wrapper package for the AfterShip API";
diff --git a/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix b/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
index bcbb672f5c80..65f70efb7c5b 100644
--- a/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pyairvisual";
-  version = "5.0.7";
+  version = "5.0.8";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-r/AJl36dv6+C92tc3kpX4/VzG69qdh4ERCyQxDOHdVU=";
+    sha256 = "sha256-QgMc0O5jk5LgKQg9ZMCZd3dNLv1typm1Rp2u8kSsqYk=";
   };
 
   nativeBuildInputs = [ poetry-core ];
@@ -43,8 +43,8 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  # Ignore the examples as they are prefixed with test_
-  pytestFlagsArray = [ "--ignore examples/" ];
+  disabledTestPaths = [ "examples/" ];
+
   pythonImportsCheck = [ "pyairvisual" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyarrow/default.nix b/nixpkgs/pkgs/development/python-modules/pyarrow/default.nix
index a38d5df50ddf..3a375b8d284b 100644
--- a/nixpkgs/pkgs/development/python-modules/pyarrow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyarrow/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, python, isPy3k, arrow-cpp, cmake, cython, hypothesis, numpy, pandas, pytestCheckHook, pytest-lazy-fixture, pkg-config, setuptools_scm, six }:
+{ lib, buildPythonPackage, python, isPy3k, arrow-cpp, cmake, cython, hypothesis, numpy, pandas, pytestCheckHook, pytest-lazy-fixture, pkg-config, setuptools-scm, six }:
 
 let
   _arrow-cpp = arrow-cpp.override { python3 = python; };
@@ -12,7 +12,7 @@ buildPythonPackage rec {
 
   sourceRoot = "apache-arrow-${version}/python";
 
-  nativeBuildInputs = [ cmake cython pkg-config setuptools_scm ];
+  nativeBuildInputs = [ cmake cython pkg-config setuptools-scm ];
   propagatedBuildInputs = [ numpy six ];
   checkInputs = [ hypothesis pandas pytestCheckHook pytest-lazy-fixture ];
 
@@ -34,12 +34,17 @@ buildPythonPackage rec {
     export PYARROW_PARALLEL=$NIX_BUILD_CORES
   '';
 
-  # Deselect a single test because pyarrow prints a 2-line error message where
-  # only a single line is expected. The additional line of output comes from
-  # the glog library which is an optional dependency of arrow-cpp that is
-  # enabled in nixpkgs.
-  # Upstream Issue: https://issues.apache.org/jira/browse/ARROW-11393
-  pytestFlagsArray = [ "--deselect=pyarrow/tests/test_memory.py::test_env_var" ];
+  pytestFlagsArray = [
+    # Deselect a single test because pyarrow prints a 2-line error message where
+    # only a single line is expected. The additional line of output comes from
+    # the glog library which is an optional dependency of arrow-cpp that is
+    # enabled in nixpkgs.
+    # Upstream Issue: https://issues.apache.org/jira/browse/ARROW-11393
+    "--deselect=pyarrow/tests/test_memory.py::test_env_var"
+    # Deselect the parquet dataset write test because it erroneously fails to find the
+    # pyarrow._dataset module.
+    "--deselect=pyarrow/tests/parquet/test_dataset.py::test_write_to_dataset_filesystem"
+  ];
 
   dontUseSetuptoolsCheck = true;
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix b/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix
index 6bea15df386f..ea6e85221776 100644
--- a/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "pyatmo";
-  version = "4.2.2";
+  version = "4.2.3";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "jabesq";
     repo = "pyatmo";
     rev = "v${version}";
-    sha256 = "sha256-3IxDDLa8KMHVkHAeTmdNVRPc5aKzF3VwL2kKnG8Fp7I=";
+    sha256 = "sha256-hbs+1x/pwv00dhm+1Yj1effddJZHDjs2K3oeBmdCY+k=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyatspi/default.nix b/nixpkgs/pkgs/development/python-modules/pyatspi/default.nix
index 5ae00417b6c0..b566edef64d1 100644
--- a/nixpkgs/pkgs/development/python-modules/pyatspi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyatspi/default.nix
@@ -1,13 +1,13 @@
-{ lib, fetchurl, pkg-config, buildPythonPackage, isPy3k, at-spi2-core, pygobject3, gnome3 }:
+{ lib, fetchurl, pkg-config, buildPythonPackage, isPy3k, at-spi2-core, pygobject3, gnome }:
 
 buildPythonPackage rec {
   pname = "pyatspi";
-  version = "2.38.0";
+  version = "2.38.1";
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "/4CTEv0ML2HhkcGBoaY4owtXm5G2gs+1oFU1pVJltD0=";
+    sha256 = "0lc1p6p296c9q3lffi03v902jlsj34i7yyl3rcyaq94wwbljg7z4";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -20,9 +20,10 @@ buildPythonPackage rec {
   disabled = !isPy3k;
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "python3.pkgs.${pname}";
+      versionPolicy = "odd-unstable";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/pybids/default.nix b/nixpkgs/pkgs/development/python-modules/pybids/default.nix
index 034bdb6363a0..143f578b08d5 100644
--- a/nixpkgs/pkgs/development/python-modules/pybids/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybids/default.nix
@@ -14,12 +14,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.12.4";
+  version = "0.13";
   pname = "pybids";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "830f3f518ab0d2e058e9ba6d6ff9a942792909c874433b3ad58a3339a23f46bf";
+    sha256 = "sha256-zVFaGAKgTP9UiUdmO4+Tut8Qc64xuGyB26cQLRHOqYw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pybind11/default.nix b/nixpkgs/pkgs/development/python-modules/pybind11/default.nix
index 0ae0b26e12db..3bd88368e753 100644
--- a/nixpkgs/pkgs/development/python-modules/pybind11/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybind11/default.nix
@@ -23,6 +23,14 @@ buildPythonPackage rec {
     sha256 = "1lsacpawl2gb5qlh0cawj9swsyfbwhzhwiv6553a7lsigdbadqpy";
   };
 
+  patches = [
+    # fix pybind11Config.cmake
+    (fetchpatch {
+      url = "https://github.com/pybind/pybind11/commit/d9c4e1047a95f023633a7260af5a633307438941.patch";
+      sha256 = "0kran295kj31xfs6mfha5ip132zd0pnj2dl36qzgyc1rpnha5gz4";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ catch ];
diff --git a/nixpkgs/pkgs/development/python-modules/pybindgen/default.nix b/nixpkgs/pkgs/development/python-modules/pybindgen/default.nix
index 9e8174f9b7f7..496ae04876d6 100644
--- a/nixpkgs/pkgs/development/python-modules/pybindgen/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybindgen/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, isPy3k, setuptools_scm, pygccxml }:
+{ lib, fetchPypi, buildPythonPackage, isPy3k, setuptools-scm, pygccxml }:
 buildPythonPackage rec {
   pname = "PyBindGen";
   version = "0.21.0";
@@ -8,7 +8,7 @@ buildPythonPackage rec {
     sha256 = "4501aa3954fdac7bb4c049894f8aa1f0f4e1c1f50cc2303feef9bbe3aecfe364";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
 
   checkInputs = [ pygccxml ];
   doCheck = (!isPy3k); # Fails to import module 'cxxfilt' from pygccxml on Py3k
diff --git a/nixpkgs/pkgs/development/python-modules/pybrowserid/default.nix b/nixpkgs/pkgs/development/python-modules/pybrowserid/default.nix
index 7517de597544..391be3c17bd4 100644
--- a/nixpkgs/pkgs/development/python-modules/pybrowserid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybrowserid/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     description = "Python library for the BrowserID Protocol";
     homepage    = "https://github.com/mozilla/PyBrowserID";
     license     = licenses.mpl20;
-    maintainers = with maintainers; [ worldofpeace ];
+    maintainers = with maintainers; [ ];
   };
 }
 
diff --git a/nixpkgs/pkgs/development/python-modules/pycares/default.nix b/nixpkgs/pkgs/development/python-modules/pycares/default.nix
index 9b3ec94babcf..b01b82eb9673 100644
--- a/nixpkgs/pkgs/development/python-modules/pycares/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycares/default.nix
@@ -1,35 +1,38 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, python
 , c-ares
 , cffi
+, fetchPypi
+, idna
 }:
 
 buildPythonPackage rec {
   pname = "pycares";
-  version = "3.1.1";
+  version = "4.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "18dfd4fd300f570d6c4536c1d987b7b7673b2a9d14346592c5d6ed716df0d104";
+    sha256 = "sha256-0BVPxXU7CIdY++ybwTfhsku4T8DGoJclyLrCWjQjEc0=";
   };
 
-  buildInputs = [ c-ares ];
-
-  propagatedBuildInputs = [ cffi ];
+  buildInputs = [
+    c-ares
+  ];
 
-  checkPhase = ''
-    ${python.interpreter} tests/tests.py
-  '';
+  propagatedBuildInputs = [
+    cffi
+    idna
+  ];
 
-  # requires network access
+  # Requires network access
   doCheck = false;
 
+  pythonImportsCheck = [ "pycares" ];
+
   meta = with lib; {
+    description = "Python interface for c-ares";
     homepage = "https://github.com/saghul/pycares";
-    description = "Interface for c-ares";
     license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pycflow2dot/default.nix b/nixpkgs/pkgs/development/python-modules/pycflow2dot/default.nix
new file mode 100644
index 000000000000..db1ac8fabb2f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pycflow2dot/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cflow
+, graphviz
+, pydot
+, networkx
+, which
+}:
+
+buildPythonPackage rec {
+  pname = "pycflow2dot";
+  version = "0.2.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1zm8x2pd0q6zza0fw7hg9g1qvybfnjq6ql9b8mh2fc45l7l25655";
+  };
+
+  propagatedBuildInputs = [
+    cflow
+    graphviz
+    pydot
+    networkx
+    which
+  ];
+
+  pythonImportsCheck = [ "pycflow2dot" ];
+  checkPhase = ''
+    cd tests
+    export PATH=$out/bin:$PATH
+    make all
+  '';
+
+  meta = with lib; {
+    description = "Layout C call graphs from cflow using GraphViz dot";
+    homepage    = "https://github.com/johnyf/pycflow2dot";
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ evils ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pychannels/default.nix b/nixpkgs/pkgs/development/python-modules/pychannels/default.nix
index 0c5e290334da..8923e5c9c69e 100644
--- a/nixpkgs/pkgs/development/python-modules/pychannels/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pychannels/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "pychannels";
-  version = "1.2.2";
+  version = "1.2.3";
 
   src = fetchFromGitHub {
     owner = "fancybits";
     repo = pname;
     rev = version;
-    sha256 = "0dqc0vhf6c5r3g7nfbpa668x6z2zxrznk6h907s6sxkq4sbqnhqf";
+    sha256 = "sha256-E+VL4mJ2KxS5bJZc3Va+wvyVjT55LJz+1wHkxDRa85s=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyclimacell/default.nix b/nixpkgs/pkgs/development/python-modules/pyclimacell/default.nix
index c9eb0f0353f6..7f5703585c43 100644
--- a/nixpkgs/pkgs/development/python-modules/pyclimacell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyclimacell/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pyclimacell";
-  version = "0.18.0";
+  version = "0.18.2";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "raman325";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0pxlh3lwd1az6v7vbaz9kv6ngqxf34iddp7vr0d0p8apbvinwrha";
+    sha256 = "sha256-jWHjnebg4Aar48gid7bB7XYXOQtSqbmVmASsZd0YoPc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyclipper/default.nix b/nixpkgs/pkgs/development/python-modules/pyclipper/default.nix
index 27a2a1d80844..0fe3998b3e89 100644
--- a/nixpkgs/pkgs/development/python-modules/pyclipper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyclipper/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, setuptools_scm
+, setuptools-scm
 , cython
 }:
 
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
     cython
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pycm/default.nix b/nixpkgs/pkgs/development/python-modules/pycm/default.nix
index b750bd30b0a4..614393cf2d59 100644
--- a/nixpkgs/pkgs/development/python-modules/pycm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycm/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, numpy, pytest }:
+{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, matplotlib, numpy, pytest, seaborn }:
 
 buildPythonPackage rec {
   pname = "pycm";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   '';
 
   checkInputs = [ pytest ];
-  propagatedBuildInputs = [ numpy ];
+  propagatedBuildInputs = [ matplotlib numpy seaborn ];
 
   checkPhase = ''
     pytest Test/
diff --git a/nixpkgs/pkgs/development/python-modules/pycron/default.nix b/nixpkgs/pkgs/development/python-modules/pycron/default.nix
new file mode 100644
index 000000000000..7155ee95723e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pycron/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildPythonPackage, fetchFromGitHub, udatetime, pytz, pendulum, nose
+, delorean, coveralls, arrow
+}:
+
+buildPythonPackage rec {
+  pname = "pycron";
+  version = "3.0.0";
+
+  src = fetchFromGitHub {
+    owner = "kipe";
+    repo = pname;
+    rev = version;
+    sha256 = "12hkqrdfg3jbqkmck8i00ssyaw1c4hhvdhjxkmh2gm9pd99z5bpv";
+  };
+
+  checkInputs = [ arrow coveralls delorean nose pendulum pytz udatetime ];
+
+  checkPhase = ''
+    nosetests
+  '';
+
+  pythonImportsCheck = [ "pycron" ];
+
+  meta = with lib; {
+    description = "Simple cron-like parser for Python, which determines if current datetime matches conditions";
+    license = licenses.mit;
+    homepage = "https://github.com/kipe/pycron";
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pycurl/default.nix b/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
index fe62d1be1ea1..e202d1928f21 100644
--- a/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
@@ -1,11 +1,12 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , isPyPy
 , fetchPypi
 , pythonOlder
 , curl
 , openssl
 , bottle
-, pytest
+, pytestCheckHook
 , nose
 , flaky
 }:
@@ -20,6 +21,11 @@ buildPythonPackage rec {
     sha256 = "8301518689daefa53726b59ded6b48f33751c383cf987b0ccfbbc4ed40281325";
   };
 
+  preConfigure = ''
+    substituteInPlace setup.py --replace '--static-libs' '--libs'
+    export PYCURL_SSL_LIBRARY=openssl
+  '';
+
   buildInputs = [
     curl
     openssl.out
@@ -31,34 +37,48 @@ buildPythonPackage rec {
 
   checkInputs = [
     bottle
-    pytest
+    pytestCheckHook
     nose
     flaky
   ];
 
-  # skip impure or flakey tests
-  # See also:
-  #   * https://github.com/NixOS/nixpkgs/issues/77304
-  checkPhase = ''
-    HOME=$TMPDIR pytest tests -k "not test_ssl_in_static_libs \
-                     and not test_keyfunction \
-                     and not test_keyfunction_bogus_return \
-                     and not test_libcurl_ssl_gnutls \
-                     and not test_libcurl_ssl_nss \
-                     and not test_libcurl_ssl_openssl" \
-                 --ignore=tests/getinfo_test.py \
-                 --ignore=tests/memory_mgmt_test.py \
-                 --ignore=tests/multi_memory_mgmt_test.py \
-                 --ignore=tests/multi_timer_test.py
-  '';
+  pytestFlagsArray = [
+    # don't pick up the tests directory below examples/
+    "tests"
+  ];
 
-  preConfigure = ''
-    substituteInPlace setup.py --replace '--static-libs' '--libs'
-    export PYCURL_SSL_LIBRARY=openssl
+  preCheck = ''
+    export HOME=$TMPDIR
   '';
 
-  meta = {
+  disabledTests = [
+    # libcurl stopped passing the reason phrase from the HTTP status line
+    # https://github.com/pycurl/pycurl/issues/679
+    "test_failonerror"
+    "test_failonerror_status_line_invalid_utf8_python3"
+    # bottle>=0.12.17 escapes utf8 properly, so these test don't work anymore
+    # https://github.com/pycurl/pycurl/issues/669
+    "test_getinfo_content_type_invalid_utf8_python3"
+    "test_getinfo_cookie_invalid_utf8_python3"
+    "test_getinfo_raw_content_type_invalid_utf8"
+    "test_getinfo_raw_cookie_invalid_utf8"
+    # tests that require network access
+    "test_keyfunction"
+    "test_keyfunction_bogus_return"
+    # OSError: tests/fake-curl/libcurl/with_openssl.so: cannot open shared object file: No such file or directory
+    "test_libcurl_ssl_openssl"
+    # OSError: tests/fake-curl/libcurl/with_nss.so: cannot open shared object file: No such file or directory
+    "test_libcurl_ssl_nss"
+    # OSError: tests/fake-curl/libcurl/with_gnutls.so: cannot open shared object file: No such file or directory
+    "test_libcurl_ssl_gnutls"
+    # AssertionError: assert 'crypto' in ['curl']
+    "test_ssl_in_static_libs"
+  ];
+
+  meta = with lib; {
     homepage = "http://pycurl.sourceforge.net/";
     description = "Python wrapper for libcurl";
+    license = licenses.lgpl2Only;
+    maintainers = with maintainers; [];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pydbus/default.nix b/nixpkgs/pkgs/development/python-modules/pydbus/default.nix
index 09f777b01813..aa3a41e2f8c5 100644
--- a/nixpkgs/pkgs/development/python-modules/pydbus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydbus/default.nix
@@ -15,6 +15,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/LEW21/pydbus";
     description = "Pythonic DBus library";
     license = lib.licenses.lgpl2Plus;
-    maintainers = with lib.maintainers; [ gnidorah ];
+    maintainers = with lib.maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix b/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
index 73d989468c55..c202e5df19b5 100644
--- a/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
@@ -3,21 +3,21 @@
 , aioresponses
 , buildPythonPackage
 , fetchFromGitHub
-, pytest-asyncio
+, pytest-aiohttp
 , pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pydeconz";
-  version = "78";
+  version = "79";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Kane610";
     repo = "deconz";
     rev = "v${version}";
-    sha256 = "sha256-uIRuLNGFX7gq59/ntfks9pECiGkX7jjKh2jmjxFRcv4=";
+    sha256 = "sha256-I29UIyHjsIymZxcE084hQoyaEMTXIIQPFcB8lsxY+UI=";
   };
 
   propagatedBuildInputs = [
@@ -26,7 +26,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     aioresponses
-    pytest-asyncio
+    pytest-aiohttp
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pydelijn/default.nix b/nixpkgs/pkgs/development/python-modules/pydelijn/default.nix
new file mode 100644
index 000000000000..08a3bf823611
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pydelijn/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, aiohttp
+, async-timeout
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, pytz
+}:
+
+buildPythonPackage rec {
+  pname = "pydelijn";
+  version = "0.6.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1lwd2f043hy7gf1ly9zpaq1yg947bqw2af8vhwssf48zpisfgc81";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+    pytz
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pydelijn" ];
+
+  meta = with lib; {
+    description = "Python package to retrieve realtime data of passages at stops of De Lijn";
+    homepage = "https://github.com/bollewolle/pydelijn";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pydicom/default.nix b/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
index be3cddc7c14a..a0924fa7f633 100644
--- a/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
 , isPy27
@@ -49,6 +50,12 @@ buildPythonPackage {
   # This test try to remove a dicom inside $HOME/.pydicom/data/ and download it again.
   disabledTests = [
     "test_fetch_data_files"
+  ] ++ lib.optionals stdenv.isAarch64 [
+    # https://github.com/pydicom/pydicom/issues/1386
+    "test_array"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # flaky, hard to reproduce failure outside hydra
+    "test_time_check"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyexcel-xls/default.nix b/nixpkgs/pkgs/development/python-modules/pyexcel-xls/default.nix
index 7e09a21e3627..29d6df409a60 100644
--- a/nixpkgs/pkgs/development/python-modules/pyexcel-xls/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyexcel-xls/default.nix
@@ -30,7 +30,11 @@ buildPythonPackage rec {
     mock
   ];
 
-  checkPhase = "nosetests";
+  postPatch = ''
+    substituteInPlace setup.py --replace "xlrd<2" "xlrd<3"
+  '';
+
+  checkPhase = "nosetests --exclude test_issue_151";
 
   meta = {
     description = "A wrapper library to read, manipulate and write data in xls using xlrd and xlwt";
diff --git a/nixpkgs/pkgs/development/python-modules/pyezviz/default.nix b/nixpkgs/pkgs/development/python-modules/pyezviz/default.nix
index 14f2e55a1f42..323b58e82574 100644
--- a/nixpkgs/pkgs/development/python-modules/pyezviz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyezviz/default.nix
@@ -1,30 +1,37 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, paho-mqtt
 , pandas
+, pycryptodome
 , pythonOlder
 , requests
+, xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "pyezviz";
-  version = "0.1.8.7";
+  version = "0.1.8.9";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "baqs";
     repo = "pyEzviz";
     rev = version;
-    sha256 = "0k7wl9wf5i0yfdds6f9ma78ckz1p4h72z5s3qg0axzra62fvl9xg";
+    sha256 = "sha256-ZjHDha7hSRXy86wm61bMMF8zMi5Lux6RbD0yFD/78J4=";
   };
 
   propagatedBuildInputs = [
+    paho-mqtt
     pandas
+    pycryptodome
     requests
+    xmltodict
   ];
 
   # Project has no tests. test_cam_rtsp.py is more a sample for using the module
   doCheck = false;
+
   pythonImportsCheck = [ "pyezviz" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyface/default.nix b/nixpkgs/pkgs/development/python-modules/pyface/default.nix
index 7ad1fb41526d..3a29fd79f779 100644
--- a/nixpkgs/pkgs/development/python-modules/pyface/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyface/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, buildPythonPackage
-, setuptools, six, traits
+, importlib-metadata, importlib-resources, six, traits
 }:
 
 buildPythonPackage rec {
@@ -11,10 +11,12 @@ buildPythonPackage rec {
     sha256 = "a7031ec4cfff034affc822e47ff5e6c1a0272e576d79465cdbbe25f721740322";
   };
 
-  propagatedBuildInputs = [ setuptools six traits ];
+  propagatedBuildInputs = [ importlib-metadata importlib-resources six traits ];
 
   doCheck = false; # Needs X server
 
+  pythonImportsCheck = [ "pyface" ];
+
   meta = with lib; {
     description = "Traits-capable windowing framework";
     homepage = "https://github.com/enthought/pyface";
diff --git a/nixpkgs/pkgs/development/python-modules/pyflume/default.nix b/nixpkgs/pkgs/development/python-modules/pyflume/default.nix
index 36980ddbadfe..075297794b21 100644
--- a/nixpkgs/pkgs/development/python-modules/pyflume/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyflume/default.nix
@@ -12,16 +12,23 @@
 
 buildPythonPackage rec {
   pname = "pyflume";
-  version = "0.6.4";
+  version = "0.7.0";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ChrisMandich";
     repo = "PyFlume";
     rev = "v${version}";
-    sha256 = "1dm560hh6fl1waiwsq8m31apmvvwhc3y95bfdb7449bs8k96dmxq";
+    sha256 = "129sz33a270v120bzl9l98nmvdzn7ns4cf9w2v18lmzlldbyz2vn";
   };
 
+  prePatch = ''
+    substituteInPlace setup.py --replace 'pyjwt==2.0.1' 'pyjwt>=2.0.1'
+    substituteInPlace setup.py --replace 'ratelimit==2.2.1' 'ratelimit>=2.2.1'
+    substituteInPlace setup.py --replace 'pytz==2019.2' 'pytz>=2019.2'
+    substituteInPlace setup.py --replace 'requests==2.24.0' 'requests>=2.24.0'
+  '';
+
   propagatedBuildInputs = [
     pyjwt
     ratelimit
@@ -34,6 +41,15 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  postPatch = ''
+    # https://github.com/ChrisMandich/PyFlume/issues/18
+    substituteInPlace setup.py \
+      --replace "pyjwt==2.0.1" "pyjwt>=2.0.1" \
+      --replace "ratelimit==2.2.1" "ratelimit>=2.2.1" \
+      --replace "pytz==2019.2" "pytz>=2019.2" \
+      --replace "requests==2.24.0" "requests>=2.24.0"
+  '';
+
   pythonImportsCheck = [ "pyflume" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyfritzhome/default.nix b/nixpkgs/pkgs/development/python-modules/pyfritzhome/default.nix
index b7b4b3cdbcbb..7c0982d490ba 100644
--- a/nixpkgs/pkgs/development/python-modules/pyfritzhome/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyfritzhome/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pyfritzhome";
-  version = "0.6.0";
+  version = "0.6.1";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "hthiery";
     repo = "python-fritzhome";
     rev = version;
-    sha256 = "1wzys84hxrjcg86fcn7f7i2i6979qwcpny2afk5rvwljh8f7bli5";
+    sha256 = "sha256-CEoXb7D/8Iksw4aJYNqANkmfhd0yxIIuabaTdWI3RNc=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix b/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
index 2b46a4ce6825..eb7d9a623d4f 100644
--- a/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyftdi";
-  version = "0.52.9";
+  version = "0.53.1";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "eblot";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07q9wmpl97a6laxfbcjqhv373msbsjppsyf5i77h0f6ccil0q1i6";
+    sha256 = "sha256-lpNe+8DhyfVuClGcjWIA6pnfh+NwdlBGffjRH62K4uw=";
   };
 
   propagatedBuildInputs = [ pyusb pyserial ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix b/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix
index 33479cc66e40..180f5902faca 100644
--- a/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix
@@ -1,22 +1,14 @@
-{ lib, buildPythonPackage, fetchPypi, fetchpatch, pkg-config, fuse3, trio, pytestCheckHook, pytest-trio, which }:
+{ lib, buildPythonPackage, fetchPypi, pkg-config, fuse3, trio, pytestCheckHook, pytest-trio, which }:
 
 buildPythonPackage rec {
   pname = "pyfuse3";
-  version = "3.1.1";
+  version = "3.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9feb42a8639dc4815522ee6af6f7221552cfd2df1c7a7e9df96767be65e18667";
+    sha256 = "45f0053ad601b03a36e2c283a5271403674245a66a0daf50e3deaab0ea4fa82f";
   };
 
-  patches = [
-    # Fixes tests with pytest 6, to be removed in next stable version
-    (fetchpatch {
-      url = "https://github.com/libfuse/pyfuse3/commit/0070eddfc33fc2fba8eb4fe9353a2d2fa1ae575b.patch";
-      sha256 = "0lb4x1j31ihs3qkn61x41k2vqwcjl2fp1c2qx2jg9br6yqhjmg3b";
-    })
-  ];
-
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ fuse3 ];
@@ -36,7 +28,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python 3 bindings for libfuse 3 with async I/O support";
     homepage = "https://github.com/libfuse/pyfuse3";
-    license = licenses.gpl2;
+    license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ nyanloutre ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pygatt/default.nix b/nixpkgs/pkgs/development/python-modules/pygatt/default.nix
new file mode 100644
index 000000000000..9d596e17236e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pygatt/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, nose
+, pexpect
+, pyserial
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pygatt";
+  version = "4.0.5";
+  disabled = pythonOlder "3.5";
+
+  src = fetchFromGitHub {
+    owner = "peplin";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1zdfxidiw0l8n498sy0l33n90lz49n25x889cx6jamjr7frlcihd";
+  };
+
+  propagatedBuildInputs = [
+    pexpect
+    pyserial
+  ];
+
+  checkInputs = [
+    mock
+    nose
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    # Not support for Python < 3.4
+    substituteInPlace setup.py --replace "'enum-compat'" ""
+  '';
+
+  pythonImportsCheck = [ "pygatt" ];
+
+  meta = with lib; {
+    description = "Python wrapper the BGAPI for accessing Bluetooth LE Devices";
+    homepage = "https://github.com/peplin/pygatt";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pygbm/default.nix b/nixpkgs/pkgs/development/python-modules/pygbm/default.nix
index 0d2747c1cb46..5367f622e9b8 100644
--- a/nixpkgs/pkgs/development/python-modules/pygbm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygbm/default.nix
@@ -4,7 +4,7 @@
 , scipy
 , numpy
 , numba
-, scikitlearn
+, scikit-learn
 , pytest
 , pythonOlder
 }:
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     scipy
     numpy
     numba
-    scikitlearn
+    scikit-learn
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pygls/default.nix b/nixpkgs/pkgs/development/python-modules/pygls/default.nix
index edd5d9bc3100..1d08de404f0b 100644
--- a/nixpkgs/pkgs/development/python-modules/pygls/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygls/default.nix
@@ -25,6 +25,6 @@ buildPythonPackage rec {
     description = "Pythonic generic implementation of the Language Server Protocol";
     homepage = "https://github.com/openlawlibrary/pygls";
     license = licenses.asl20;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pygmt/default.nix b/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
index 130be6d44c36..804b33c2f791 100644
--- a/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
@@ -2,12 +2,17 @@
 , pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
+, setuptools-scm
 , gmt
 , numpy
 , netcdf4
 , pandas
 , packaging
 , xarray
+, pytest-mpl
+, ipython
+, ghostscript
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -28,12 +33,14 @@ buildPythonPackage rec {
       --replace "env.get(\"GMT_LIBRARY_PATH\", \"\")" "env.get(\"GMT_LIBRARY_PATH\", \"${gmt}/lib\")"
   '';
 
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ numpy netcdf4 pandas packaging xarray ];
 
-  doCheck = false; # requires network access
-
-  postBuild = "export HOME=$TMP";
-
+  doCheck = false; # the *entire* test suite requires network access
+  checkInputs = [ pytestCheckHook pytest-mpl ghostscript ipython ];
+  postBuild = ''
+    export HOME=$TMP
+  '';
   pythonImportsCheck = [ "pygmt" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pygobject/3.36.nix b/nixpkgs/pkgs/development/python-modules/pygobject/3.36.nix
index ccad57eba1ed..ce9410eaf8b5 100644
--- a/nixpkgs/pkgs/development/python-modules/pygobject/3.36.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygobject/3.36.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, buildPythonPackage, pkg-config, glib, gobject-introspection,
-pycairo, cairo, which, ncurses, meson, ninja, isPy3k, gnome3 }:
+pycairo, cairo, which, ncurses, meson, ninja, isPy3k, gnome }:
 
 buildPythonPackage rec {
   pname = "pygobject";
@@ -23,13 +23,6 @@ buildPythonPackage rec {
                  ++ lib.optionals stdenv.isDarwin [ which ncurses ];
   propagatedBuildInputs = [ pycairo cairo ];
 
-  passthru = {
-    updateScript = gnome3.updateScript {
-      packageName = pname;
-      attrPath = "python3.pkgs.${pname}3";
-    };
-  };
-
   meta = with lib; {
     homepage = "https://pygobject.readthedocs.io/";
     description = "Python bindings for Glib";
diff --git a/nixpkgs/pkgs/development/python-modules/pygobject/3.nix b/nixpkgs/pkgs/development/python-modules/pygobject/3.nix
index 8c26ec6174b2..373577dc4675 100644
--- a/nixpkgs/pkgs/development/python-modules/pygobject/3.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygobject/3.nix
@@ -1,37 +1,66 @@
-{ lib, stdenv, fetchurl, buildPythonPackage, pkg-config, glib, gobject-introspection,
-pycairo, cairo, which, ncurses, meson, ninja, isPy3k, gnome3 }:
+{ lib
+, stdenv
+, fetchurl
+, buildPythonPackage
+, pkg-config
+, glib
+, gobject-introspection
+, pycairo
+, cairo
+, which
+, ncurses
+, meson
+, ninja
+, isPy3k
+, gnome
+}:
 
 buildPythonPackage rec {
   pname = "pygobject";
-  version = "3.38.0";
+  version = "3.40.1";
 
-  disabled = ! isPy3k;
+  outputs = [ "out" "dev" ];
+
+  disabled = !isPy3k;
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "A3LRu5Ei/Bn1AKJJsfOMK7Z0hQAPWIdJe0sgWz5whNU=";
+    sha256 = "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0";
   };
 
-  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    glib
+    gobject-introspection
+  ] ++ lib.optionals stdenv.isDarwin [
+    ncurses
+  ];
 
-  nativeBuildInputs = [ pkg-config meson ninja gobject-introspection ];
-  buildInputs = [ glib gobject-introspection ]
-                 ++ lib.optionals stdenv.isDarwin [ which ncurses ];
-  propagatedBuildInputs = [ pycairo cairo ];
+  propagatedBuildInputs = [
+    pycairo
+    cairo
+  ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "python3.pkgs.${pname}3";
+      versionPolicy = "odd-unstable";
     };
   };
 
   meta = with lib; {
     homepage = "https://pygobject.readthedocs.io/";
     description = "Python bindings for Glib";
-    license = licenses.gpl2;
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pygtfs/default.nix b/nixpkgs/pkgs/development/python-modules/pygtfs/default.nix
new file mode 100644
index 000000000000..735990c09448
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pygtfs/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, docopt
+, fetchPypi
+, nose
+, pytz
+, setuptools-scm
+, six
+, sqlalchemy
+}:
+
+buildPythonPackage rec {
+  pname = "pygtfs";
+  version = "0.1.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0nx2idgza07kmvj7pcgpj3pqhw53v5rq63paw2ly51cjas2fv5pr";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    docopt
+    pytz
+    six
+    sqlalchemy
+  ];
+
+  checkInputs = [
+    nose
+  ];
+
+  pythonImportsCheck = [ "pygtfs" ];
+
+  meta = with lib; {
+    description = "Python module for GTFS";
+    homepage = "https://github.com/jarondl/pygtfs";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pygtkspellcheck/default.nix b/nixpkgs/pkgs/development/python-modules/pygtkspellcheck/default.nix
new file mode 100644
index 000000000000..9dcb2b732ca3
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pygtkspellcheck/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildPythonPackage, fetchPypi, gobject-introspection, gtk3, pyenchant, pygobject3 }:
+
+buildPythonPackage rec {
+  pname = "pygtkspellcheck";
+  version = "4.0.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0pc3xmv1q775hn4kc1kspvpdn4gm7ix3aw6hz9iy3brfcw6ddcl4";
+  };
+
+  nativeBuildInputs = [ gobject-introspection gtk3 ];
+  propagatedBuildInputs = [ pyenchant pygobject3 ];
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "gtkspellcheck" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/koehlma/pygtkspellcheck";
+    description = "A Python spell-checking library for GtkTextViews based on Enchant";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyhaversion/default.nix b/nixpkgs/pkgs/development/python-modules/pyhaversion/default.nix
index ade4c01833c3..efc06ad0c963 100644
--- a/nixpkgs/pkgs/development/python-modules/pyhaversion/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyhaversion/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pyhaversion";
-  version = "21.3.0";
+  version = "21.5.0";
 
   # Only 3.8.0 and beyond are supported
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "ludeeus";
     repo = pname;
     rev = version;
-    sha256 = "sha256-2vW4BN5qwJZYQ8FU3bpSA2v1dX6TOhcHDbHRMDPoRAs=";
+    sha256 = "sha256-/F4UMFUs60o3QazfFYEWgTGHg4z5knzNWolUpk5SIeM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyhomematic/default.nix b/nixpkgs/pkgs/development/python-modules/pyhomematic/default.nix
index 9bfa814894de..2784719ff128 100644
--- a/nixpkgs/pkgs/development/python-modules/pyhomematic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyhomematic/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "pyhomematic";
-  version = "0.1.72";
+  version = "0.1.73";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a1d44103b90418d9c8cde4699a1c671d57d12469be23a45e93bfc00df28ef11b";
+    sha256 = "sha256-KaeheCIJgAqC68rgE71b1sSatSH25phGk662fnuOOsk=";
   };
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyialarm/default.nix b/nixpkgs/pkgs/development/python-modules/pyialarm/default.nix
new file mode 100644
index 000000000000..9603964ca481
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyialarm/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, dicttoxml
+, fetchFromGitHub
+, pythonOlder
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "pyialarm";
+  version = "1.8.1";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "RyuzakiKK";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-Hig1BlgZX2FBh+wx7qz9lmkBIFn/IHActf9FXDU6Yz8=";
+  };
+
+  propagatedBuildInputs = [
+    dicttoxml
+    xmltodict
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pyialarm" ];
+
+  meta = with lib; {
+    description = "Python library to interface with Antifurto365 iAlarm systems";
+    homepage = "https://github.com/RyuzakiKK/pyialarm";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyicu/default.nix b/nixpkgs/pkgs/development/python-modules/pyicu/default.nix
index efb7467e485e..1b01f1904e08 100644
--- a/nixpkgs/pkgs/development/python-modules/pyicu/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyicu/default.nix
@@ -3,20 +3,20 @@
 , fetchPypi
 , pytestCheckHook
 , six
-, icu
+, icu68
 }:
 
 buildPythonPackage rec {
   pname = "PyICU";
-  version = "2.6";
+  version = "2.7.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0wb3v421i2fnnxdywam4ay8hqvnxlz0r2nrpx5lqy3rn6dlbz9d9";
+    sha256 = "1jv1pds94agvn3zs33a8p8f0mk7f5pjwmczmg1s05ri5p0kzk4h8";
   };
 
-  nativeBuildInputs = [ icu ]; # for icu-config
-  buildInputs = [ icu ];
+  nativeBuildInputs = [ icu68 ]; # for icu-config, but should be replaced with pkg-config
+  buildInputs = [ icu68 ];
   checkInputs = [ pytestCheckHook six ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix b/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
index cfe5112ab221..be746ae27937 100644
--- a/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "pyinsteon";
-  version = "1.0.10";
+  version = "1.0.11";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-8b/PvMFHvYGVWw6ycLnL8n972cn+1QW/VTMiblMPam4=";
+    sha256 = "sha256-dT01nKXDjkFSIf2BmrIcC8a9n00hlyd59oPwXn1CBaw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix b/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
index d2775d6e3b9e..34bc7bb5eb66 100644
--- a/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pyiqvia";
-  version = "0.3.3";
+  version = "1.0.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-XYWoHKa/yq7MtGVM6eVgLtR2E3VmqsjX3TNcQcd7dEQ=";
+    sha256 = "sha256-6BbJgRpn2hivm4N3Zpll9NACMSNlIhxj8CF2iVduIro=";
   };
 
   nativeBuildInputs = [ poetry-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyjwt/1.nix b/nixpkgs/pkgs/development/python-modules/pyjwt/1.nix
new file mode 100644
index 000000000000..285e5e2e7600
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyjwt/1.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cryptography
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "PyJWT";
+  version = "1.7.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "15hflax5qkw1v6nssk1r0wkj83jgghskcmn875m3wgvpzdvajncd";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "pytest>=4.0.1,<5.0.0" "pytest"
+
+    # drop coverage
+    sed -i '/pytest-cov/d' setup.py
+    sed -i '/--cov/d' setup.cfg
+  '';
+
+  propagatedBuildInputs = [
+    cryptography
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "JSON Web Token implementation in Python";
+    homepage = "https://github.com/jpadilla/pyjwt";
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyjwt/default.nix b/nixpkgs/pkgs/development/python-modules/pyjwt/default.nix
index c33f2b068087..4617869988f6 100644
--- a/nixpkgs/pkgs/development/python-modules/pyjwt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyjwt/default.nix
@@ -1,28 +1,35 @@
-{ lib, buildPythonPackage, fetchPypi
-, cryptography, ecdsa
-, pytestrunner, pytestcov, pytest }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cryptography
+, ecdsa
+, pytest-cov
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
-  pname = "PyJWT";
-  version = "2.0.1";
+  pname = "pyjwt";
+  version = "2.1.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "a5c70a06e1f33d81ef25eecd50d50bd30e34de1ca8b2b9fa3fe0daaabcf69bf7";
+    pname = "PyJWT";
+    inherit version;
+    sha256 = "sha256-+6ROeJi7yhYKKytQH0koJPyDgkhdOm8Rul0MGTfOYTA=";
   };
 
-  propagatedBuildInputs = [ cryptography ecdsa ];
+  propagatedBuildInputs = [
+    cryptography
+    ecdsa
+  ];
 
-  checkInputs = [ pytestrunner pytestcov pytest ];
+  checkInputs = [
+    pytest-cov
+    pytestCheckHook
+  ];
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "pytest>=4.0.1,<5.0.0" "pytest"
-  '';
-
-  # ecdsa changed internal behavior
-  checkPhase = ''
-    pytest tests -k 'not ec_verify_should_return_false_if_signature_invalid'
-  '';
+  pythonImportsCheck = [ "jwt" ];
 
   meta = with lib; {
     description = "JSON Web Token implementation in Python";
diff --git a/nixpkgs/pkgs/development/python-modules/pykdl/default.nix b/nixpkgs/pkgs/development/python-modules/pykdl/default.nix
index 674a43f5f3e0..9a0431b2b859 100644
--- a/nixpkgs/pkgs/development/python-modules/pykdl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykdl/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, toPythonModule, fetchpatch, cmake, orocos-kdl, python, sip }:
+{ lib, stdenv, toPythonModule, fetchpatch, cmake, orocos-kdl, python, sip_4 }:
 
 toPythonModule (stdenv.mkDerivation {
   pname = "pykdl";
@@ -18,7 +18,7 @@ toPythonModule (stdenv.mkDerivation {
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ orocos-kdl ];
-  propagatedBuildInputs = [ python sip ];
+  propagatedBuildInputs = [ python sip_4 ];
 
   meta = with lib; {
     description = "Kinematics and Dynamics Library (Python bindings)";
diff --git a/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix b/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
index 294e47872fc1..e54a9c6fa20f 100644
--- a/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
@@ -1,15 +1,18 @@
-{ lib, fetchPypi, buildPythonPackage
+{ lib, fetchFromGitHub, buildPythonPackage
 , lxml, pycryptodomex, construct
 , argon2_cffi, dateutil, future
+, python
 }:
 
 buildPythonPackage rec {
   pname   = "pykeepass";
-  version = "4.0.0";
+  version = "4.0.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1b41b3277ea4e044556e1c5a21866ea4dfd36e69a4c0f14272488f098063178f";
+  src = fetchFromGitHub {
+    owner = "libkeepass";
+    repo = "pykeepass";
+    rev = version;
+    sha256 = "sha256-D+loaPBpKdXyiqpdth3ANDjH6IewuKYhj/DzRE2hDn4=";
   };
 
   postPatch = ''
@@ -21,13 +24,15 @@ buildPythonPackage rec {
     argon2_cffi dateutil future
   ];
 
-  # no tests in PyPI tarball
-  doCheck = false;
+  checkPhase = ''
+    ${python.interpreter} -m unittest tests.tests
+  '';
 
-  meta = {
-    homepage = "https://github.com/pschmitt/pykeepass";
+  meta = with lib; {
+    homepage = "https://github.com/libkeepass/pykeepass";
+    changelog = "https://github.com/libkeepass/pykeepass/blob/${version}/CHANGELOG.rst";
     description = "Python library to interact with keepass databases (supports KDBX3 and KDBX4)";
-    license = lib.licenses.gpl3;
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ dotlambda ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pykerberos/default.nix b/nixpkgs/pkgs/development/python-modules/pykerberos/default.nix
index 13d7a4fd2483..fd4c0088b08c 100644
--- a/nixpkgs/pkgs/development/python-modules/pykerberos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykerberos/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pykerberos";
-  version = "1.2.1";
+  version = "1.2.3.dev0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0v47p840myqgc7hr4lir72xshcfpa0w8j9n077h3njpqyn6wlbag";
+    sha256 = "17zjiw6rqgfic32px86qls1i3z7anp15dgb3sprbdvywy98alryn";
   };
 
   nativeBuildInputs = [ krb5 ]; # for krb5-config
@@ -15,6 +15,7 @@ buildPythonPackage rec {
 
   # there are no tests
   doCheck = false;
+  pythonImportsCheck = [ "kerberos" ];
 
   meta = with lib; {
     description = "High-level interface to Kerberos";
diff --git a/nixpkgs/pkgs/development/python-modules/pykmtronic/default.nix b/nixpkgs/pkgs/development/python-modules/pykmtronic/default.nix
index 7a055c1ed3fe..29a3f04e32cb 100644
--- a/nixpkgs/pkgs/development/python-modules/pykmtronic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykmtronic/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "pykmtronic";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9d0301882f06a0c4865c89bb6c2a381c4a1ba6fe2a7a07d56351bdf5f96c9fa5";
+    sha256 = "sha256-8qLyBJp7C93x0PWbgDAtNEDJ5VLNfwZ3DRZfudRCBgo=";
   };
 
   propagatedBuildInputs = [ aiohttp lxml ];
diff --git a/nixpkgs/pkgs/development/python-modules/pykoplenti/default.nix b/nixpkgs/pkgs/development/python-modules/pykoplenti/default.nix
new file mode 100644
index 000000000000..98182ddf68c7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pykoplenti/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, click
+, fetchFromGitHub
+, prompt_toolkit
+, pycryptodome
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pykoplenti";
+  version = "1.0.0";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "stegm";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "12nsyz8a49vhby1jp991vaky82fm93jrgcsjzwa2rixwg1zql4sw";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    click
+    prompt_toolkit
+    pycryptodome
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pykoplenti" ];
+
+  meta = with lib; {
+    description = "Python REST client API for Kostal Plenticore Inverters";
+    homepage = "https://github.com/stegm/pykoplenti/";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pylast/default.nix b/nixpkgs/pkgs/development/python-modules/pylast/default.nix
index b16ea62717a5..5a0a53005bb1 100644
--- a/nixpkgs/pkgs/development/python-modules/pylast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylast/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "pylast";
-  version = "4.2.0";
+  version = "4.2.1";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-w/mkAUUgj7L7Xv+nz1pI1TYKfihH3S3MbxaNQ4VtoH0=";
+    sha256 = "sha256-R1enQk6luuBiobMPDn5x1SXx7zUI/5c8dPtyWkmG/18=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/nixpkgs/pkgs/development/python-modules/pylint-django/default.nix b/nixpkgs/pkgs/development/python-modules/pylint-django/default.nix
index 54b2f65ad975..9d8b36c5ef81 100644
--- a/nixpkgs/pkgs/development/python-modules/pylint-django/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylint-django/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "pylint-django";
-  version = "2.4.2";
+  version = "2.4.3";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "PyCQA";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0535y4sdi521a9s7di8ld0i8aav0afbxmx0956v6sjpyqmqdm6hr";
+    sha256 = "1mybq9jynypxbaxj921s3sx8dph8n3hmipmv4nla1g9h07g9g02z";
   };
 
   propagatedBuildInputs = [
@@ -42,9 +42,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A Pylint plugin to analyze Django applications";
     homepage = "https://github.com/PyCQA/pylint-django";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [
-      kamadorueda
-    ];
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ kamadorueda ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix b/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
index e283cc10d16a..64573a1a5282 100644
--- a/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
@@ -46,6 +46,6 @@ buildPythonPackage rec {
     description = "A bug and style checker for Python";
     platforms = platforms.all;
     license = licenses.gpl1Plus;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pylint/default.nix b/nixpkgs/pkgs/development/python-modules/pylint/default.nix
index 10935d2d8880..6c2702ef3dbe 100644
--- a/nixpkgs/pkgs/development/python-modules/pylint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylint/default.nix
@@ -67,6 +67,6 @@ buildPythonPackage rec {
     homepage = "https://pylint.pycqa.org/";
     description = "A bug and style checker for Python";
     license = licenses.gpl1Plus;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix b/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
index 7aa5bebfaa0a..9390461a2fef 100644
--- a/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pylitterbot";
-  version = "2021.3.1";
+  version = "2021.5.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "natekspencer";
     repo = pname;
     rev = version;
-    sha256 = "sha256-w2iyzCYoma8zQsXGIQnpgijDHNqmlvCnbeyF7PmLz9c=";
+    sha256 = "sha256-EiHdyjGYddtvciiwu2kpIBfUGvIJr38/8oJLFVzoRKE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyls-black/default.nix b/nixpkgs/pkgs/development/python-modules/pyls-black/default.nix
index c59a67606ee6..d10e4930ac0c 100644
--- a/nixpkgs/pkgs/development/python-modules/pyls-black/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyls-black/default.nix
@@ -1,25 +1,27 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, black, toml, pytest, python-language-server, isPy3k
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, black
+, toml
+, pytestCheckHook
+, python-language-server
+, isPy3k
 }:
 
 buildPythonPackage rec {
   pname = "pyls-black";
-  version = "0.4.6";
+  version = "0.4.7";
 
   src = fetchFromGitHub {
     owner = "rupert";
     repo = "pyls-black";
     rev = "v${version}";
-    sha256 = "0cjf0mjn156qp0x6md6mncs31hdpzfim769c2lixaczhyzwywqnj";
+    sha256 = "0bkhfnlik89j3yamr20br4wm8975f20v33wabi2nyxvj10whr5dj";
   };
 
   disabled = !isPy3k;
 
-  checkPhase = ''
-    pytest
-  '';
-
-  checkInputs = [ pytest ];
+  checkInputs = [ pytestCheckHook ];
 
   propagatedBuildInputs = [ black toml python-language-server ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pylutron-caseta/default.nix b/nixpkgs/pkgs/development/python-modules/pylutron-caseta/default.nix
index aa2182c176d3..f71f2f4d52ae 100644
--- a/nixpkgs/pkgs/development/python-modules/pylutron-caseta/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylutron-caseta/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pylutron-caseta";
-  version = "0.9.0";
+  version = "0.11.0";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "gurumitts";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07mz4hn0455qmfqs4xcqlhbf3qvrnmifd0vzpcqlqaqcn009iahq";
+    sha256 = "sha256-2w8kRSZK9Bq3O6r6i0CJgxEXGo8KsWah9bMLlDNzMGk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pylxd/default.nix b/nixpkgs/pkgs/development/python-modules/pylxd/default.nix
index 5d373ada09b5..64232f760faf 100644
--- a/nixpkgs/pkgs/development/python-modules/pylxd/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylxd/default.nix
@@ -1,24 +1,48 @@
-{ lib, buildPythonPackage, fetchPypi, pbr, dateutil, ws4py, requests-unixsocket, requests-toolbelt, mock }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, cryptography
+, python-dateutil
+, requests
+, requests-toolbelt
+, requests-unixsocket
+, ws4py
+, ddt
+, mock-services
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "pylxd";
   version = "2.3.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1db88l55q974fm9z5gllx3i8bkj0jzi25xrr5cs6id3bfy4zp8a7";
+  src = fetchFromGitHub {
+    owner = "lxc";
+    repo = "pylxd";
+    rev = version;
+    sha256 = "144frnlsb21mglgyisms790hyrdfx1l91lcd7incch4m4a1cbpp6";
   };
 
   propagatedBuildInputs = [
-    pbr
-    dateutil
-    ws4py
-    requests-unixsocket
+    cryptography
+    python-dateutil
+    requests
     requests-toolbelt
+    requests-unixsocket
+    ws4py
+  ];
+
+  checkInputs = [
+    ddt
+    mock-services
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    "integration"
+    "migration"
   ];
 
-  # tests require an old version of requests-mock that we do not have a package for
-  doCheck = false;
   pythonImportsCheck = [ "pylxd" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pymata-express/default.nix b/nixpkgs/pkgs/development/python-modules/pymata-express/default.nix
index 1a50a91a3092..69d7585e8a5d 100644
--- a/nixpkgs/pkgs/development/python-modules/pymata-express/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymata-express/default.nix
@@ -2,20 +2,19 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pyserial
-, pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pymata-express";
-  version = "1.19";
+  version = "1.20";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "MrYsLab";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0gfjmqcxwsnfjgll6ql5xd1n3xp4klf4fcaajaivh053i02p0a79";
+    sha256 = "sha256-spYmd+Cb7Ej5FmniuJYAVVmq0mhOz5fu4+2UUXctRWs=";
   };
 
   propagatedBuildInputs = [ pyserial ];
diff --git a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
index 2f39be79821c..894e5c128e9e 100644
--- a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python MAVLink interface and utilities";
     homepage = "https://github.com/ArduPilot/pymavlink";
-    license = with licenses; [ lgpl3Only mit ];
+    license = with licenses; [ lgpl3Plus mit ];
     maintainers = with maintainers; [ lopsided98 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pymazda/default.nix b/nixpkgs/pkgs/development/python-modules/pymazda/default.nix
index 77d4f175273b..f4b9f0b1f01e 100644
--- a/nixpkgs/pkgs/development/python-modules/pymazda/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymazda/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "pymazda";
-  version = "0.1.1";
+  version = "0.1.6";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-Z0sRfLkOxYmPDZiSKqqbd68dcTDU+x8QhPe/Oo43KEA=";
+    sha256 = "sha256-fQcycOMNYCO6bP344DTLxNf/YoliEITyxsnIDyTPO5E=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pymediainfo/default.nix b/nixpkgs/pkgs/development/python-modules/pymediainfo/default.nix
index b04276f1f559..ac054bef9569 100644
--- a/nixpkgs/pkgs/development/python-modules/pymediainfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymediainfo/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchPypi, buildPythonPackage
 , libmediainfo
-, setuptools_scm
+, setuptools-scm
 , pytest, glibcLocales }:
 
 buildPythonPackage rec {
@@ -22,7 +22,7 @@ buildPythonPackage rec {
                 "${libmediainfo}/lib/libmediainfo${stdenv.hostPlatform.extensions.sharedLibrary}.0"
   '';
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [ glibcLocales pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pymeteireann/default.nix b/nixpkgs/pkgs/development/python-modules/pymeteireann/default.nix
new file mode 100644
index 000000000000..7e48a4089a12
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pymeteireann/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, aiohttp
+, async-timeout
+, buildPythonPackage
+, fetchFromGitHub
+, pytz
+, xmltodict
+}:
+
+buildPythonPackage rec {
+  pname = "pymeteireann";
+  version = "0.2";
+
+  src = fetchFromGitHub {
+    owner = "DylanGore";
+    repo = "PyMetEireann";
+    rev = version;
+    sha256 = "1904f8mvv4ghzbniswmdwyj5v71m6y3yn1b4grjvfds05skalm67";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+    pytz
+    xmltodict
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "meteireann" ];
+
+  meta = with lib; {
+    description = "Python module to communicate with the Met Éireann Public Weather Forecast API";
+    homepage = "https://github.com/DylanGore/PyMetEireann/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pymfy/default.nix b/nixpkgs/pkgs/development/python-modules/pymfy/default.nix
index 32483eea7b9a..2c17c0a085d9 100644
--- a/nixpkgs/pkgs/development/python-modules/pymfy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymfy/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pymfy";
-  version = "0.9.4";
+  version = "0.10.1";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "tetienne";
     repo = "somfy-open-api";
     rev = "v${version}";
-    sha256 = "1ml536dvva2xd52jfgrd557h2sr5w6567sxnyq0blhkgpyz4m2av";
+    sha256 = "sha256-xX7vNBQaYPdnsukFcQyEa2G1XIvf9ehADNXbLUUCRoU=";
   };
 
   nativeBuildInputs = [ poetry-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/pymodbus/default.nix b/nixpkgs/pkgs/development/python-modules/pymodbus/default.nix
index 9d524bfe946f..46b60419ad8c 100644
--- a/nixpkgs/pkgs/development/python-modules/pymodbus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymodbus/default.nix
@@ -18,13 +18,13 @@
 
 buildPythonPackage rec {
   pname = "pymodbus";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchFromGitHub {
     owner = "riptideio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-b85jfBZfMZtqtmID+tGBgOe9o0BbmBH83UV71lYAI5c=";
+    sha256 = "sha256-jqVfBAjIdRBB5AYd0ZkMi7qAUR6vSYeBI4OYEv+mKwE=";
   };
 
   # Twisted asynchronous version is not supported due to a missing dependency
diff --git a/nixpkgs/pkgs/development/python-modules/pymorphy2/default.nix b/nixpkgs/pkgs/development/python-modules/pymorphy2/default.nix
new file mode 100644
index 000000000000..8c00975d08bf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pymorphy2/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+, isPy3k
+, dawg-python
+, docopt
+, pymorphy2-dicts-ru
+}:
+
+buildPythonPackage rec {
+  pname = "pymorphy2";
+  version = "0.9.1";
+
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-hsRHFX3uLrI0HvvkU44SgadUdWuhqjLad6iWFMWLVgw=";
+  };
+
+  propagatedBuildInputs = [
+    dawg-python
+    docopt
+    pymorphy2-dicts-ru
+  ];
+
+  pythonImportsCheck = [ "pymorphy2" ];
+
+  meta = with lib; {
+    description = "Morphological analyzer/inflection engine for Russian and Ukrainian";
+    homepage = "https://github.com/kmike/pymorphy2";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pymorphy2/dicts-ru.nix b/nixpkgs/pkgs/development/python-modules/pymorphy2/dicts-ru.nix
new file mode 100644
index 000000000000..bee9dd492479
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pymorphy2/dicts-ru.nix
@@ -0,0 +1,23 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+}:
+
+buildPythonPackage rec {
+  pname = "pymorphy2-dicts-ru";
+  version = "2.4.417127.4579844";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-eMrQOtymBQIavTh6Oy61FchRuG6UaCoe8jVKLHT8wZY=";
+  };
+
+  pythonImportsCheck = [ "pymorphy2_dicts_ru" ];
+
+  meta = with lib; {
+    description = "Russian dictionaries for pymorphy2";
+    homepage = "https://github.com/kmike/pymorphy2-dicts/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pymsteams/default.nix b/nixpkgs/pkgs/development/python-modules/pymsteams/default.nix
index a475d074efd6..b3843a566cef 100644
--- a/nixpkgs/pkgs/development/python-modules/pymsteams/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymsteams/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "pymsteams";
-  version = "0.1.14";
+  version = "0.1.15";
 
   src = fetchFromGitHub {
     owner = "rveachkc";
     repo = pname;
     rev = version;
-    sha256 = "19gnsjzf3kwcwp2rwa30zpqjqgxb9plgcsx7fqbmxnrxgw99fyqx";
+    sha256 = "sha256-PBh6AmKqdiD3WJQnVqUj4DUVv9I0ZZJ6E0McfWQIiwQ=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/nixpkgs/pkgs/development/python-modules/pymumble/default.nix b/nixpkgs/pkgs/development/python-modules/pymumble/default.nix
index 45c193899fe0..d708f5f229b5 100644
--- a/nixpkgs/pkgs/development/python-modules/pymumble/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymumble/default.nix
@@ -11,23 +11,15 @@
 
 buildPythonPackage rec {
   pname = "pymumble";
-  version = "1.6";
+  version = "1.6.1";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "azlux";
     repo = "pymumble";
     rev = version;
-    sha256 = "04nc66d554a98mbmdgzgsg6ncaz0jsn4zdr3mr14w6wnhrxpjkrs";
+    sha256 = "1qbsd2zvwd9ksclgiyrl1z79ms0zximm4527mnmhvq36lykgki7s";
   };
-  patches = [
-    # Compatibility with pycryptodome (which is what our pycrypto really is)
-    # See https://github.com/azlux/pymumble/pull/99
-    (fetchpatch {
-      url = "https://github.com/azlux/pymumble/pull/99/commits/b85548a0e1deaac820954b1c0b308af214311a14.patch";
-      sha256 = "0w9dpc87rny6vmhi634pih1p97b67jm26qajscpa9wp6nphdlxlj";
-    })
-  ];
 
   postPatch = ''
     # Changes all `library==x.y.z` statements to just `library`
@@ -35,11 +27,20 @@ buildPythonPackage rec {
     sed -i 's/\(.*\)==.*/\1/' requirements.txt
   '';
 
-  propagatedBuildInputs = [ opuslib protobuf ];
+  propagatedBuildInputs = [
+    opuslib
+    protobuf
+  ];
 
-  checkInputs = [ pytestCheckHook pycrypto ];
+  checkInputs = [
+    pycrypto
+    pytestCheckHook
+  ];
 
-  pythonImportsCheck = [ "pymumble_py3" ];
+  pythonImportsCheck = [
+    "pymumble_py3"
+    "pymumble_py3.constants"
+  ];
 
   meta = with lib; {
     description = "Python 3 version of pymumble, Mumble library used for multiple uses like making mumble bot.";
diff --git a/nixpkgs/pkgs/development/python-modules/pynacl/default.nix b/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
index 37cf0a9ef10a..ebd6aeb0fee3 100644
--- a/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
@@ -1,16 +1,17 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytest
+, pytestCheckHook
+, pythonOlder
 , libsodium
 , cffi
-, six
 , hypothesis
 }:
 
 buildPythonPackage rec {
   pname = "pynacl";
   version = "1.4.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit version;
@@ -18,15 +19,22 @@ buildPythonPackage rec {
     sha256 = "01b56hxrbif3hx8l6rwz5kljrgvlbj7shmmd2rjh0hn7974a5sal";
   };
 
-  checkInputs = [ pytest hypothesis ];
-  buildInputs = [ libsodium ];
-  propagatedBuildInputs = [ cffi six ];
+  buildInputs = [
+    libsodium
+  ];
+
+  propagatedBuildInputs = [
+    cffi
+  ];
+
+  checkInputs = [
+    hypothesis
+    pytestCheckHook
+  ];
 
   SODIUM_INSTALL = "system";
 
-  checkPhase = ''
-    py.test
-  '';
+  pythonImportsCheck = [ "nacl" ];
 
   meta = with lib; {
     maintainers = with maintainers; [ va1entin ];
diff --git a/nixpkgs/pkgs/development/python-modules/pynest2d/default.nix b/nixpkgs/pkgs/development/python-modules/pynest2d/default.nix
index 7ca72293382d..f3b5b9ba6854 100644
--- a/nixpkgs/pkgs/development/python-modules/pynest2d/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynest2d/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, python3, cmake
-, pythonOlder, libnest2d, sip, clipper }:
+, pythonOlder, libnest2d, sip_4, clipper }:
 
 buildPythonPackage rec {
   version = "4.8.0";
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "18dn92vgr4gvf9scfh93yg9bwrhdjvq62di08rpi7pqjrrvq2nvp";
   };
 
-  propagatedBuildInputs = [ libnest2d sip clipper ];
+  propagatedBuildInputs = [ libnest2d sip_4 clipper ];
   nativeBuildInputs = [ cmake ];
 
   CLIPPER_PATH = "${clipper.out}";
diff --git a/nixpkgs/pkgs/development/python-modules/pynetbox/default.nix b/nixpkgs/pkgs/development/python-modules/pynetbox/default.nix
new file mode 100644
index 000000000000..e81a4b8dd666
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pynetbox/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, requests
+, six
+, pytestCheckHook
+, pyyaml
+}:
+
+buildPythonPackage rec {
+  pname = "pynetbox";
+  version = "6.1.2";
+
+  src = fetchFromGitHub {
+    owner = "netbox-community";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0di07rny3gqdfb0rf7hm3x03rpn7rydpv3lrl7cak2ccpqm0wzhl";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    requests
+    six
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pyyaml
+  ];
+
+  disabledTestPaths = [
+    # requires docker for integration test
+    "tests/integration"
+  ];
+
+  meta = with lib; {
+    description = "API client library for Netbox";
+    homepage = "https://github.com/netbox-community/pynetbox";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pynmea2/default.nix b/nixpkgs/pkgs/development/python-modules/pynmea2/default.nix
index 8bb82fa330a5..4a4fbfd4dc6b 100644
--- a/nixpkgs/pkgs/development/python-modules/pynmea2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynmea2/default.nix
@@ -2,15 +2,17 @@
 
 buildPythonPackage rec {
   pname = "pynmea2";
-  version = "1.17.0";
+  version = "1.18.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0x5xrk51dpzsvky1ncikadm80a44a82j3mjjykmhmx7jddc5qh9d";
+    sha256 = "1b94lhpbgvnknb563dlwvs5vkk7w3ma54sj614ynh2dzgqrd6h73";
   };
 
   checkInputs = [ pytestCheckHook ];
 
+  pythonImportsCheck = [ "pynmea2" ];
+
   meta = {
     homepage = "https://github.com/Knio/pynmea2";
     description = "Python library for the NMEA 0183 protcol";
diff --git a/nixpkgs/pkgs/development/python-modules/pynndescent/default.nix b/nixpkgs/pkgs/development/python-modules/pynndescent/default.nix
index aab8f4e743a2..fa9db26b5e39 100644
--- a/nixpkgs/pkgs/development/python-modules/pynndescent/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynndescent/default.nix
@@ -1,9 +1,8 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
 , nose
-, scikitlearn
+, scikit-learn
 , scipy
 , numba
 , llvmlite
@@ -12,33 +11,25 @@
 
 buildPythonPackage rec {
   pname = "pynndescent";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "74a05a54d13573a38878781d44812ac6df97d8762a56f9bb5dd87a99911820fe";
+    sha256 = "0w87c2v0li2rdbx6qfc2lb6y6bxpdy3jwfgzfs1kcr4d1chj5zfr";
   };
 
-  patches = [
-    # fixes tests, included in 0.5.2
-    (fetchpatch {
-      url = "https://github.com/lmcinnes/pynndescent/commit/ef5d8c3c3bfe976063b6621e3e0734c0c22d813b.patch";
-      sha256 = "sha256-49n3kevs3wpzd4FfZVKmNpF2o1V8pJs4KOx8zCAhR3s=";
-    })
-  ];
-
-  checkInputs = [
-    nose
-  ];
-
   propagatedBuildInputs = [
-    scikitlearn
+    scikit-learn
     scipy
     numba
     llvmlite
     joblib
   ];
 
+  checkInputs = [
+    nose
+  ];
+
   checkPhase = ''
     nosetests
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/pynobo/default.nix b/nixpkgs/pkgs/development/python-modules/pynobo/default.nix
new file mode 100644
index 000000000000..52cada827817
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pynobo/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+}:
+
+buildPythonPackage rec {
+  pname = "pynobo";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "echoromeo";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0f98qm9vp7f0hqaxhihv7y5swciyp60222la44f4936g0rvs005x";
+  };
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pynobo" ];
+
+  meta = with lib; {
+    description = "Python 3 TCP/IP interface for Nobo Hub/Nobo Energy Control devices";
+    homepage = "https://github.com/echoromeo/pynobo";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pynvim/default.nix b/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
index 0910f601dc22..244b366081c0 100644
--- a/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
@@ -4,7 +4,6 @@
 , nose
 , msgpack
 , greenlet
-, trollius ? null
 , pythonOlder
 , isPyPy
 , pytestrunner
@@ -13,6 +12,7 @@
 buildPythonPackage rec {
   pname = "pynvim";
   version = "0.4.3";
+  disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
@@ -28,8 +28,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   propagatedBuildInputs = [ msgpack ]
-    ++ lib.optional (!isPyPy) greenlet
-    ++ lib.optional (pythonOlder "3.4") trollius;
+    ++ lib.optional (!isPyPy) greenlet;
 
   meta = {
     description = "Python client for Neovim";
diff --git a/nixpkgs/pkgs/development/python-modules/pyobihai/default.nix b/nixpkgs/pkgs/development/python-modules/pyobihai/default.nix
new file mode 100644
index 000000000000..79d8363372be
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyobihai/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "pyobihai";
+  version = "1.3.1";
+  disabled = pythonOlder "3.6";
+
+  # GitHub release, https://github.com/dshokouhi/pyobihai/issues/10
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1vvf5if57dfd091a7fb5rvx63hvf0isrx28j72nj2aav1as460qp";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pyobihai" ];
+
+  meta = with lib; {
+    description = "Python package to interact with Obihai devices";
+    homepage = "https://github.com/dshokouhi/pyobihai";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyocr/default.nix b/nixpkgs/pkgs/development/python-modules/pyocr/default.nix
index 8cfce9ba43f1..099c9e237111 100644
--- a/nixpkgs/pkgs/development/python-modules/pyocr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyocr/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitLab, buildPythonPackage, pillow, setuptools_scm,
+{ lib, fetchFromGitLab, buildPythonPackage, pillow, setuptools-scm,
 setuptools-scm-git-archive , tesseract, cuneiform, isPy3k, substituteAll,
 pytest, tox }:
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   })
   ];
 
-  buildInputs = [ setuptools_scm setuptools-scm-git-archive ];
+  buildInputs = [ setuptools-scm setuptools-scm-git-archive ];
   propagatedBuildInputs = [ pillow ];
   checkInputs = [ pytest tox ];
   checkPhase = "pytest";
diff --git a/nixpkgs/pkgs/development/python-modules/pyopencl/default.nix b/nixpkgs/pkgs/development/python-modules/pyopencl/default.nix
index b1e81140a906..d983e2bc14cc 100644
--- a/nixpkgs/pkgs/development/python-modules/pyopencl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyopencl/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , fetchPypi
 , buildPythonPackage
 , Mako
@@ -12,14 +13,18 @@
 , opencl-headers
 , ocl-icd
 , pybind11
+, mesa_drivers
 }:
 
-buildPythonPackage rec {
+let
+  os-specific-buildInputs =
+    if stdenv.isDarwin then [ mesa_drivers.dev ] else [ ocl-icd ];
+in buildPythonPackage rec {
   pname = "pyopencl";
   version = "2021.1.4";
 
   checkInputs = [ pytest ];
-  buildInputs = [ opencl-headers ocl-icd pybind11 ];
+  buildInputs = [ opencl-headers pybind11 ] ++ os-specific-buildInputs;
 
   propagatedBuildInputs = [ numpy cffi pytools decorator appdirs six Mako ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyotgw/default.nix b/nixpkgs/pkgs/development/python-modules/pyotgw/default.nix
new file mode 100644
index 000000000000..b48c190ca1ed
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyotgw/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pyserial-asyncio
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pyotgw";
+  version = "unstable-2021-03-25";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "mvn23";
+    repo = pname;
+    rev = "1854ef4ffb907524ff457ba558e4979ba7fabd02";
+    sha256 = "0zckd85dmzpz0drcgx16ly6kzh1f1slcxb9lrcf81wh1p4q9bcaa";
+  };
+
+  propagatedBuildInputs = [
+    pyserial-asyncio
+  ];
+
+  checkInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "tests" ];
+
+  pythonImportsCheck = [ "pyotgw" ];
+
+  meta = with lib; {
+    description = "Python module to interact the OpenTherm Gateway";
+    homepage = "https://github.com/mvn23/pyotgw";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pypiserver/default.nix b/nixpkgs/pkgs/development/python-modules/pypiserver/default.nix
new file mode 100644
index 000000000000..d1c6fee942ce
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pypiserver/default.nix
@@ -0,0 +1,40 @@
+{ buildPythonPackage, fetchFromGitHub, lib, passlib, pytestCheckHook, setuptools
+, setuptools-git, twine, webtest }:
+
+buildPythonPackage rec {
+  pname = "pypiserver";
+  version = "1.4.2";
+
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1z5rsmqgin98m6ihy1ww42fxxr6jb4hzldn8vlc9ssv7sawdz8vz";
+  };
+
+  nativeBuildInputs = [ setuptools-git ];
+
+  propagatedBuildInputs = [ setuptools ];
+
+  preCheck = ''
+    export HOME=$TMPDIR
+  '';
+
+  checkInputs = [ passlib pytestCheckHook twine webtest ];
+
+  # These tests try to use the network
+  disabledTests = [
+    "test_pipInstall_openOk"
+    "test_pipInstall_authedOk"
+    "test_hash_algos"
+  ];
+
+  pythonImportsCheck = [ "pypiserver" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/pypiserver/pypiserver";
+    description = "Minimal PyPI server for use with pip/easy_install";
+    license = with licenses; [ mit zlib ];
+    maintainers = [ maintainers.austinbutler ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyppeteer/default.nix b/nixpkgs/pkgs/development/python-modules/pyppeteer/default.nix
index 13f1794aebe0..6da76a5cdba5 100644
--- a/nixpkgs/pkgs/development/python-modules/pyppeteer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyppeteer/default.nix
@@ -1,25 +1,94 @@
-{ buildPythonPackage, fetchPypi, lib, urllib3, pyee, tqdm, websockets, appdirs }:
+{ lib
+, appdirs
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, poetry-core
+, pyee
+, pytest-xdist
+, pytestCheckHook
+, pythonOlder
+, syncer
+, tqdm
+, urllib3
+, websockets
+}:
 
 buildPythonPackage rec {
   pname = "pyppeteer";
   version = "0.2.5";
+  disabled = pythonOlder "3.6";
+  format = "pyproject";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "c2974be1afa13b17f7ecd120d265d8b8cd324d536a231c3953ca872b68aba4af";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "1hl4rw8j5yiak0d34vx1l1blr8125bscjd8m46a5m8xzm98csjc7";
   };
 
-  # tests want to write to /homeless-shelter
-  doCheck = false;
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
   propagatedBuildInputs = [
     appdirs
-    websockets
-    tqdm
     pyee
+    tqdm
     urllib3
+    websockets
+  ];
+
+  checkInputs = [
+    syncer
+    pytest-xdist
+    pytestCheckHook
   ];
 
+  patches = [
+    # Switch to poetry-core, https://github.com/pyppeteer/pyppeteer/pull/262
+    (fetchpatch {
+      name = "switch-poetry-core.patch";
+      url = "https://github.com/pyppeteer/pyppeteer/commit/e248baebefcf262fd96f261d940e74ed49ba2df9.patch";
+      sha256 = "03g8n35kn2alqki37s0hf2231fk2zkr4nr1x1g2rfrhps9d6fyvw";
+    })
+  ];
+
+  postPatch = ''
+    # https://github.com/pyppeteer/pyppeteer/pull/252
+    substituteInPlace pyproject.toml \
+      --replace 'websockets = "^8.1"' 'websockets = "*"'
+  '';
+
+  disabledTestPaths = [
+    # Requires network access
+    "tests/test_browser.py"
+    "tests/test_browser_context.py"
+    "tests/test_connection.py"
+    "tests/test_coverage.py"
+    "tests/test_dialog.py"
+    "tests/test_element_handle.py"
+    "tests/test_execution_context.py"
+    "tests/test_frame.py"
+    "tests/test_input.py"
+    "tests/test_launcher.py"
+    "tests/test_network.py"
+    "tests/test_page.py"
+    "tests/test_pyppeteer.py"
+    "tests/test_target.py"
+    "tests/test_tracing.py"
+    "tests/test_worker.py"
+  ];
+
+  disabledTests = [
+    # Requires network access
+    "TestScreenShot"
+    "TestBrowserCrash"
+    "TestPDF"
+  ];
+
+  pythonImportsCheck = [ "pyppeteer" ];
+
   meta = {
     description = "Headless chrome/chromium automation library (unofficial port of puppeteer)";
     homepage = "https://github.com/pyppeteer/pyppeteer";
diff --git a/nixpkgs/pkgs/development/python-modules/pypresence/default.nix b/nixpkgs/pkgs/development/python-modules/pypresence/default.nix
new file mode 100644
index 000000000000..0fa188c0771a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pypresence/default.nix
@@ -0,0 +1,21 @@
+{ lib, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "pypresence";
+  version = "4.2.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1c8r7yxih5zp46qb9anq5s91pw2wr7d9d0nzcfh4l42x10c8lqal";
+  };
+
+  doCheck = false; # tests require internet connection
+  pythonImportsCheck = [ "pypresence" ];
+
+  meta = with lib; {
+    homepage = "https://qwertyquerty.github.io/pypresence/html/index.html";
+    description = "Discord RPC client written in Python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyproj/default.nix b/nixpkgs/pkgs/development/python-modules/pyproj/default.nix
index 2f4f26f03b43..98e3e802c6ee 100644
--- a/nixpkgs/pkgs/development/python-modules/pyproj/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyproj/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "pyproj";
-  version = "3.0.1";
+  version = "3.1.0";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "pyproj4";
     repo = "pyproj";
     rev = version;
-    sha256 = "1q1i1235cp3k32dpb11r7krx5rpqwszb89mrx85rflc1z5acaj58";
+    sha256 = "sha256-UN8cJk5Lgd+d2tKmFuF6QvKr36w1435RKovzGfMXi1E=";
   };
 
   # force pyproj to use ${proj}
diff --git a/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix b/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
index d7f15d966b37..d371fd7bcee7 100644
--- a/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, packaging, sip_5 }:
+{ lib, fetchPypi, buildPythonPackage, packaging, sip }:
 
 buildPythonPackage rec {
   pname = "pyqt-builder";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "0g51yak53zzjs4gpq65i01cmpz7w8cjny9wfyxlgr2vi0wag107v";
   };
 
-  propagatedBuildInputs = [ packaging sip_5 ];
+  propagatedBuildInputs = [ packaging sip ];
 
   pythonImportsCheck = [ "pyqtbuild" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyqt/4.x.nix b/nixpkgs/pkgs/development/python-modules/pyqt/4.x.nix
index 3427438b8a26..2652b5eb00b3 100644
--- a/nixpkgs/pkgs/development/python-modules/pyqt/4.x.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyqt/4.x.nix
@@ -1,13 +1,13 @@
-{ lib, stdenv, fetchurl, buildPythonPackage, python, dbus-python, sip, qt4, pkg-config, lndir, dbus, makeWrapper }:
+{ lib, stdenv, fetchurl, buildPythonPackage, python, dbus-python, sip_4, qt4, pkg-config, lndir, dbus, makeWrapper }:
 
 buildPythonPackage rec {
   pname = "PyQt-x11-gpl";
-  version = "4.12";
+  version = "4.12.3";
   format = "other";
 
   src = fetchurl {
     url = "mirror://sourceforge/pyqt/PyQt4_gpl_x11-${version}.tar.gz";
-    sha256 = "1nw8r88a5g2d550yvklawlvns8gd5slw53yy688kxnsa65aln79w";
+    sha256 = "0wnlasg62rm5d39nq1yw4namcx2ivxgzl93r5f2vb9s0yaz5l3x0";
   };
 
   postPatch = ''
@@ -45,7 +45,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [ pkg-config lndir makeWrapper qt4 ];
   buildInputs = [ qt4 dbus ];
 
-  propagatedBuildInputs = [ sip ];
+  propagatedBuildInputs = [ sip_4 ];
 
   postInstall = ''
     for i in $out/bin/*; do
diff --git a/nixpkgs/pkgs/development/python-modules/pyqt/5.x.nix b/nixpkgs/pkgs/development/python-modules/pyqt/5.x.nix
index 6e4b4d37f289..2671b27a6307 100644
--- a/nixpkgs/pkgs/development/python-modules/pyqt/5.x.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyqt/5.x.nix
@@ -16,9 +16,9 @@ let
   inherit (pythonPackages) buildPythonPackage python isPy3k dbus-python enum34;
 
   sip = if isPy3k then
-    pythonPackages.sip_5
+    pythonPackages.sip
   else
-    (pythonPackages.sip.override { sip-module = "PyQt5.sip"; }).overridePythonAttrs(oldAttrs: {
+    (pythonPackages.sip_4.override { sip-module = "PyQt5.sip"; }).overridePythonAttrs(oldAttrs: {
       # If we install sip in another folder, then we need to create a __init__.py as well
       # if we want to be able to import it with Python 2.
       # Python 3 could rely on it being an implicit namespace package, however,
diff --git a/nixpkgs/pkgs/development/python-modules/pyrituals/default.nix b/nixpkgs/pkgs/development/python-modules/pyrituals/default.nix
index 84bf62ff6d3b..f9f556dba52b 100644
--- a/nixpkgs/pkgs/development/python-modules/pyrituals/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyrituals/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyrituals";
-  version = "0.0.2";
+  version = "0.0.3";
   format = "pyproject";
   disabled = pythonOlder "3.8";
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "milanmeu";
     repo = pname;
     rev = version;
-    sha256 = "0hrwhk3kpvdg78fgnvhmnnh3wprdv10j8jqjm4ly64chr8cdi6f2";
+    sha256 = "sha256-oAxQRGP6GxiidnGshSJZEh2RD3XsZ/7kFGwcqaYaBnM=";
   };
 
   propagatedBuildInputs = [ aiohttp ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyroon/default.nix b/nixpkgs/pkgs/development/python-modules/pyroon/default.nix
new file mode 100644
index 000000000000..c27c70be5895
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroon/default.nix
@@ -0,0 +1,57 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, ifaddr
+, poetry-core
+, pythonOlder
+, requests
+, six
+, websocket_client
+}:
+
+buildPythonPackage rec {
+  pname = "pyroon";
+  version = "0.0.37";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "pavoni";
+    repo = pname;
+    rev = version;
+    sha256 = "1hxr473z9h3kb91m3ygina58pfwfyjsv1yb29spxmnbzvk34rzzz";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    ifaddr
+    requests
+    six
+    websocket_client
+  ];
+
+  patches = [
+    # Switch to poetry-core, https://github.com/pavoni/pyroon/pull/43
+    (fetchpatch {
+      name = "use-peotry-core.patch";
+      url = "https://github.com/pavoni/pyroon/commit/16f890314683a6c2700fa4da5c937559e2e24bea.patch";
+      sha256 = "047bhimr72rwqqyjy7jkfzacdc2ycy81wbmgnvf7xyhgjw1jyvh5";
+    })
+  ];
+
+  # Tests require access to the Roon API
+  doCheck = false;
+
+  pythonImportsCheck = [ "roonapi" ];
+
+  meta = with lib; {
+    description = "Python library to interface with the Roon API";
+    homepage = "https://github.com/pavoni/pyroon";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix
new file mode 100644
index 000000000000..4ee37e4bfed1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-core";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.core";
+    inherit version;
+    sha256 = "04v10rzz844w2wfpy4pkh8fxn6dminjmfm1q7ngg5wvpk5r691rj";
+  };
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.common"
+    "pr2modules.config"
+    "pr2modules.proxy"
+  ];
+
+  meta = with lib; {
+    description = "Core module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix
new file mode 100644
index 000000000000..4e671b4e193f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-ethtool";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.ethtool";
+    inherit version;
+    sha256 = "1gd2vvdkjf6ppiql3znrlzc9xg8c4gsyg2jfm76c2xf329hi66n7";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.ethtool"
+  ];
+
+  meta = with lib; {
+    description = "Ethtool module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix
new file mode 100644
index 000000000000..733988f20f50
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-ipdb";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.ipdb";
+    inherit version;
+    sha256 = "0wnzvy72pjipsdcfnwxpqp0jimg2l3w6gwd3r4b3mhvhackgsvs6";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.ipdb"
+  ];
+
+  meta = with lib; {
+    description = "Ipdb module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix
new file mode 100644
index 000000000000..5ea6c7ce5d4d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-ipset";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.ipset";
+    inherit version;
+    sha256 = "1d5l9f028y7fjfbxpp5wls9ffdgrln24dlz8k4p11b5n445liakx";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.ipset"
+  ];
+
+  meta = with lib; {
+    description = "Ipset module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix
new file mode 100644
index 000000000000..7b34b3d341a3
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-ndb";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.ndb";
+    inherit version;
+    sha256 = "0lzvh0vva8i86h00add0b45s4f5dn6zbgysfvmzrxxasvda7fhlj";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pr2modules.ndb" ];
+
+  meta = with lib; {
+    description = "NDB module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix
new file mode 100644
index 000000000000..594d57cba1bb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-nftables";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.nftables";
+    inherit version;
+    sha256 = "0g93jsjf77sxjxmgmd8pzy8daxnqnzp2fk9gbh9kxk1n1958p100";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.nftables"
+  ];
+
+  meta = with lib; {
+    description = "Nftables module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix
new file mode 100644
index 000000000000..e1076c1d0a05
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-nslink";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.nslink";
+    inherit version;
+    sha256 = "0hjdi863imppirjrwr87xk2mfbw2djcsh7x94cq4xwps7bxmmkwk";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.nslink"
+  ];
+
+  meta = with lib; {
+    description = "Nslink module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix
new file mode 100644
index 000000000000..389ca2ab44d0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pyroute2-core
+}:
+
+buildPythonPackage rec {
+  pname = "pyroute2-protocols";
+  version = "0.6.1";
+
+  src = fetchPypi {
+    pname = "pyroute2.protocols";
+    inherit version;
+    sha256 = "16c22ygyxdn1mhnd2f34q9b2mqa27klk6di91w27ycb3aczmadlm";
+  };
+
+  propagatedBuildInputs = [
+    pyroute2-core
+  ];
+
+  # pyroute2 sub-modules have no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pr2modules.protocols"
+  ];
+
+  meta = with lib; {
+    description = "Protocols module for pyroute2";
+    homepage = "https://github.com/svinota/pyroute2";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
index 00ce008d6cc7..f18bc12caa6a 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
@@ -1,17 +1,36 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, mitogen
+, pyroute2-core
+, pyroute2-ethtool
+, pyroute2-ipdb
+, pyroute2-ipset
+, pyroute2-ndb
+, pyroute2-nftables
+, pyroute2-nslink
 }:
 
 buildPythonPackage rec {
   pname = "pyroute2";
-  version = "0.5.18";
+  version = "0.6.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-CKxAytUsC7Lg8gCHUgWZqpH8zgsiHdJukEIzBCiBC8U=";
+    sha256 = "sha256-nvG1PcuyQoZPrfMS4atsXsvpInjYt1bUIeX6Ol5DsO8=";
   };
 
+  propagatedBuildInputs = [
+    mitogen
+    pyroute2-core
+    pyroute2-ethtool
+    pyroute2-ipdb
+    pyroute2-ipset
+    pyroute2-ndb
+    pyroute2-nftables
+    pyroute2-nslink
+  ];
+
   # Requires root privileges, https://github.com/svinota/pyroute2/issues/778
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyside/shiboken.nix b/nixpkgs/pkgs/development/python-modules/pyside/shiboken.nix
index 21c79c6e9e1c..9bad569806a6 100644
--- a/nixpkgs/pkgs/development/python-modules/pyside/shiboken.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyside/shiboken.nix
@@ -1,8 +1,6 @@
 { lib, fetchFromGitHub, buildPythonPackage
 , cmake
-, isPy35
-, isPy36
-, isPy37
+, fetchurl
 , isPy3k
 , libxml2
 , libxslt
@@ -10,6 +8,7 @@
 , pysideApiextractor
 , pysideGeneratorrunner
 , python
+, pythonAtLeast
 , qt4
 , sphinx
 }:
@@ -39,8 +38,17 @@ buildPythonPackage rec {
       \"$\{GENERATORRUNNER_PLUGIN_DIR}\" lib/generatorrunner/
   '';
 
-  # gcc6 patch was also sent upstream: https://github.com/pyside/Shiboken/pull/86
-  patches = [ ./gcc6.patch ] ++ (lib.optional (isPy35 || isPy36 || isPy37) ./shiboken_py35.patch);
+  patches = [
+    # gcc6 patch was also sent upstream: https://github.com/pyside/Shiboken/pull/86
+    ./gcc6.patch
+    (lib.optional (pythonAtLeast "3.5") ./shiboken_py35.patch)
+    (fetchurl {
+      # https://github.com/pyside/Shiboken/pull/90
+      name = "fix-build-with-python-3.9.patch";
+      url = "https://github.com/pyside/Shiboken/commit/d1c901d4c0af581003553865360ba964cda041e8.patch";
+      sha256 = "1f7slz8n8rps5r67hz3hi4rr82igc3l166shfy6647ivsb2fnxwy";
+    })
+  ];
 
   cmakeFlags = lib.optionals isPy3k [
     "-DUSE_PYTHON3=TRUE"
diff --git a/nixpkgs/pkgs/development/python-modules/pysma/default.nix b/nixpkgs/pkgs/development/python-modules/pysma/default.nix
index 39941242f1d9..55b6b7278450 100644
--- a/nixpkgs/pkgs/development/python-modules/pysma/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysma/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "pysma";
-  version = "0.4.1";
+  version = "0.4.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "da4bed38aba52fa097694bda15c7fd80ca698d9352e71a63bc29092d635de54d";
+    sha256 = "sha256-vriMnJFS7yfTyDT1f4sx1xEBTQjqc4ZHmkdHp1vcd+Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysmappee/default.nix b/nixpkgs/pkgs/development/python-modules/pysmappee/default.nix
index a3517ea87ec0..c053e5592282 100644
--- a/nixpkgs/pkgs/development/python-modules/pysmappee/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysmappee/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pysmappee";
-  version = "0.2.23";
+  version = "0.2.25";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "smappee";
     repo = pname;
     rev = version;
-    sha256 = "sha256-vxCZzkngYnc+hD3gT1x7qAQTFjpmmgRU5F6cusNDNgk=";
+    sha256 = "0ld3pb86dq61fcvr6zigdz1vjjcwf7izzkajyg82nmb508a570d7";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysmf/default.nix b/nixpkgs/pkgs/development/python-modules/pysmf/default.nix
index 25f5fc6a20ca..3b350954eae3 100644
--- a/nixpkgs/pkgs/development/python-modules/pysmf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysmf/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pkg-config, libsmf, glib, pytest }:
+{ lib, buildPythonPackage, fetchPypi, pkg-config, libsmf, glib, pytest, cython }:
 
 buildPythonPackage rec {
   pname = "pysmf";
@@ -9,13 +9,17 @@ buildPythonPackage rec {
     sha256 = "10i7vvvdx6c3gl4afsgnpdanwgzzag087zs0fxvfipnqknazj806";
   };
 
-  nativeBuildInputs = [ pkg-config pytest ];
+  postUnpack = ''
+    rm $sourceRoot/src/smf.c
+  '';
+
+  nativeBuildInputs = [ pkg-config pytest cython ];
   buildInputs = [ libsmf glib ];
 
   meta = with lib; {
     homepage = "http://das.nasophon.de/pysmf/";
     description = "Python extension module for reading and writing Standard MIDI Files, based on libsmf.";
     license = licenses.bsd2;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pysmt/default.nix b/nixpkgs/pkgs/development/python-modules/pysmt/default.nix
index ce5b6b8673a0..4adb96bf2341 100644
--- a/nixpkgs/pkgs/development/python-modules/pysmt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysmt/default.nix
@@ -1,28 +1,21 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
-, nose
-, pytestCheckHook
-, six
+, fetchPypi
 }:
 
 buildPythonPackage rec {
   pname = "pysmt";
-  version = "0.9.0";
+  version = "0.9.1.dev132";
+  format = "wheel"; # dev versions are only distributed as wheels
 
-  src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "051j36kpz11ik9bhvp5jgxzc3h7f18i1pf5ssdhjwyabr0n0zra3";
+  src = fetchPypi {
+    pname = "PySMT";
+    inherit format version;
+    sha256 = "01iqs7yzms3alf1rdv0gnsnmfp7g8plkjcdqbari258zp4llf6x7";
   };
 
-  propagatedBuildInputs = [ six ];
-
-  checkInputs = [
-    nose
-    pytestCheckHook
-  ];
+  # No tests present, only GitHub release which is 0.9.0
+  doCheck = false;
 
   pythonImportsCheck = [ "pysmt" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pysolr/default.nix b/nixpkgs/pkgs/development/python-modules/pysolr/default.nix
index bf56d7ca56e6..a7f34b9c13a1 100644
--- a/nixpkgs/pkgs/development/python-modules/pysolr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysolr/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, requests, mock }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, requests, mock }:
 
 buildPythonPackage rec {
   pname = "pysolr";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "1rj5jmscvxjwcmlfi6hmkj44l4x6n3ln5p7d8d18j566hzmmzw3f";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ requests ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pysonos/default.nix b/nixpkgs/pkgs/development/python-modules/pysonos/default.nix
index 308dd4e7f25b..cdd5291af99d 100644
--- a/nixpkgs/pkgs/development/python-modules/pysonos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysonos/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pysonos";
-  version = "0.0.43";
+  version = "0.0.50";
 
   disabled = !isPy3k;
 
@@ -23,10 +23,14 @@ buildPythonPackage rec {
     owner = "amelchio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OobKlAymXXvQH6m77Uqn2eoTlWgs8EBxYIDFJ5wwMKA=";
+    sha256 = "sha256-iyFdT+RH2dtMtD+jSLFuAVE1DIQn6k9ONLOXNFhpuHs=";
   };
 
-  propagatedBuildInputs = [ ifaddr requests xmltodict ];
+  propagatedBuildInputs = [
+    ifaddr
+    requests
+    xmltodict
+  ];
 
   checkInputs = [
     pytestCheckHook
@@ -38,10 +42,10 @@ buildPythonPackage rec {
     "test_desc_from_uri" # test requires network access
   ];
 
-  meta = {
-    homepage = "https://github.com/amelchio/pysonos";
+  meta = with lib; {
     description = "A SoCo fork with fixes for Home Assistant";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ juaningan ];
+    homepage = "https://github.com/amelchio/pysonos";
+    license = licenses.mit;
+    maintainers = with maintainers; [ juaningan ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyspnego/default.nix b/nixpkgs/pkgs/development/python-modules/pyspnego/default.nix
new file mode 100644
index 000000000000..2f8e775e3404
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyspnego/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, cryptography
+, fetchFromGitHub
+, pytest-mock
+, pytestCheckHook
+, pythonOlder
+, glibcLocales
+}:
+
+buildPythonPackage rec {
+  pname = "pyspnego";
+  version = "0.1.6";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "jborean93";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0pfh2x0539f0k2qi2pbjm64b2fqp64c63xxpinvg1yfaw915kgpb";
+  };
+
+  propagatedBuildInputs = [
+    cryptography
+  ];
+
+  checkInputs = [
+    glibcLocales
+    pytest-mock
+    pytestCheckHook
+  ];
+
+  LC_ALL = "en_US.UTF-8";
+
+  pythonImportsCheck = [ "spnego" ];
+
+  meta = with lib; {
+    description = "Python SPNEGO authentication library";
+    homepage = "Python SPNEGO authentication library";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pystray/default.nix b/nixpkgs/pkgs/development/python-modules/pystray/default.nix
index 9b778f9e216c..45bc2a55e599 100644
--- a/nixpkgs/pkgs/development/python-modules/pystray/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pystray/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub
-, pillow, xlib, six, xvfb_run, sphinx }:
+, pillow, xlib, six, xvfb-run, sphinx }:
 
 buildPythonPackage rec {
   pname = "pystray";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ sphinx ];
   propagatedBuildInputs = [ pillow xlib six ];
-  checkInputs = [ xvfb_run ];
+  checkInputs = [ xvfb-run ];
 
   checkPhase = ''
     rm tests/icon_tests.py # test needs user input
diff --git a/nixpkgs/pkgs/development/python-modules/pysvg-py3/default.nix b/nixpkgs/pkgs/development/python-modules/pysvg-py3/default.nix
new file mode 100644
index 000000000000..6f9ba796132e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pysvg-py3/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "pysvg-py3";
+  version = "0.2.2-post3";
+
+  src = fetchFromGitHub {
+    owner = "alorence";
+    repo = pname;
+    rev = version;
+    sha256 = "1slync0knpcjgl4xpym8w4249iy6vmrwbarpnbjzn9xca8g1h2f0";
+  };
+
+  checkPhase = ''
+    runHook preCheck
+    mkdir testoutput
+    ${python.interpreter} sample/tutorial.py
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [ "pysvg" ];
+
+  meta = {
+    homepage = "https://github.com/alorence/pysvg-py3";
+    description = "Creating SVG with Python";
+    license = lib.licenses.bsd2;
+    maintainers = with lib.maintainers; [ davidak ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pytaglib/default.nix b/nixpkgs/pkgs/development/python-modules/pytaglib/default.nix
index 9155151950a8..bf17988e758c 100644
--- a/nixpkgs/pkgs/development/python-modules/pytaglib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytaglib/default.nix
@@ -3,56 +3,35 @@
 , fetchFromGitHub
 , taglib
 , cython
-, pytest
-, glibcLocales
-, fetchpatch
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
-  pname   = "pytaglib";
-  version = "1.4.5";
+  pname = "pytaglib";
+  version = "1.4.6";
 
   src = fetchFromGitHub {
     owner = "supermihi";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1gvvadlgk8ny8bg76gwvvfcwp1nfgrjphi60h5f9ha7h5ff1g2wb";
+    sha256 = "sha256-UAWXR1MCxEB48n7oQE+L545F+emlU3HErzLX6YTRteg=";
   };
 
-  patches = [
-    # fix tests on python 2.7
-    (fetchpatch {
-      url = "https://github.com/supermihi/pytaglib/commit/0c4ae750fcd5b18d2553975c7e3e183e9dca5bf1.patch";
-      sha256 = "1kv3c68vimx5dc8aacvzphiaq916avmprxddi38wji8p2ql6vngj";
-    })
-
-    # properly install pyprinttags
-    (fetchpatch {
-      url = "https://github.com/supermihi/pytaglib/commit/ba7a1406ddf35ddc41ed57f1c8d1f2bc2ed2c93a.patch";
-      sha256 = "0pi0dcq7db5fd3jnbwnfsfsgxvlhnm07z5yhpp93shk0s7ci2bwp";
-    })
-    (fetchpatch {
-      url = "https://github.com/supermihi/pytaglib/commit/28772f6f94d37f05728071381a0fa04c6a14783a.patch";
-      sha256 = "0h259vzj1l0gpibdf322yclyd10x5rh1anzhsjj2ghm6rj6q0r0m";
-    })
+  buildInputs = [
+    cython
+    taglib
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "'pytest-runner', " ""
-  '';
-
-  buildInputs = [ taglib cython ];
-
-  checkInputs = [ pytest glibcLocales ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
-    LC_ALL=en_US.utf-8 pytest .
-  '';
+  pythonImportsCheck = [ "taglib" ];
 
-  meta = {
+  meta = with lib; {
+    description = "Python bindings for the Taglib audio metadata library";
     homepage = "https://github.com/supermihi/pytaglib";
-    description = "Python 2.x/3.x bindings for the Taglib audio metadata library";
-    license = lib.licenses.gpl3;
-    maintainers = [ lib.maintainers.mrkkrp ];
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ mrkkrp ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-annotate/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-annotate/default.nix
index 68b67f061bb1..22b57f9e7706 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-annotate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-annotate/default.nix
@@ -31,6 +31,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
+    broken = true; # unmaintained and incompatible with pytest>=6.0
     homepage = "https://github.com/kensho-technologies/pytest-annotate";
     description = "Generate PyAnnotate annotations from your pytest tests";
     license = licenses.asl20;
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
index 5d5a0de447d2..3df836ee562b 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
@@ -9,7 +9,7 @@
 , pytest-remotedata
 , pytest-openfiles
 , pytest-arraydiff
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   buildInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-bdd/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-bdd/default.nix
index e71b3e7350a7..b087cd6f4598 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-bdd/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-bdd/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub
+{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch
 , execnet
 , glob2
 , Mako
@@ -7,29 +7,38 @@
 , parse-type
 , py
 , pytest
+, pytestCheckHook
 , six
 }:
 
 buildPythonPackage rec {
   pname = "pytest-bdd";
-  version = "4.0.1";
+  version = "4.0.2";
 
   # tests are not included in pypi tarball
   src = fetchFromGitHub {
     owner = "pytest-dev";
     repo = pname;
     rev = version;
-    sha256 = "1yqzz44as4pxffmg4hk9lijvnvlc2chg1maq1fbj5i4k4jpagvjz";
+    sha256 = "0pxx4c8lm68rw0jshbr09fnadg8zz8j73q0qi49yw9s7yw86bg5l";
   };
 
+  patches = [
+    # Fixed compatibility with pytest > 6.1
+    (fetchpatch {
+      url = "https://github.com/pytest-dev/pytest-bdd/commit/e1dc0cad9a1c1ba563ccfbc24f9993d83ac59293.patch";
+      sha256 = "1p3gavh6nir2a8crd5wdf0prfrg0hmgar9slvn8a21ils3k5pm5y";
+    })
+  ];
+
+
   buildInputs = [ pytest ];
 
   propagatedBuildInputs = [ glob2 Mako parse parse-type py six ];
 
-  # Tests require extra dependencies
-  checkInputs = [ execnet mock pytest ];
-  checkPhase = ''
-    PATH=$PATH:$out/bin pytest
+  checkInputs = [ pytestCheckHook execnet mock ];
+  preCheck = ''
+    export PATH=$PATH:$out/bin
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-black/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-black/default.nix
index 629b4292f86e..918d53c4fa7f 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-black/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-black/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi
 , black
 , pytest
-, setuptools_scm
+, setuptools-scm
 , toml
 }:
 
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "1d339b004f764d6cd0f06e690f6dd748df3d62e6fe1a692d6a5500ac2c5b75a5";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   buildInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
new file mode 100644
index 000000000000..2914b3cf9aac
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, makefun
+, decopatch
+, pythonOlder
+, pytest
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-cases";
+  version = "3.4.6";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "17w4s6622i97q81g15zamqm536ib00grgdfk2f4kk9bw2k7sdlq6";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  buildInputs = [
+    pytest
+  ];
+
+  propagatedBuildInputs = [
+    decopatch
+    makefun
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.cfg --replace "pytest-runner" ""
+  '';
+
+  # Tests have dependencies (pytest-harvest, pytest-steps) which
+  # are not available in Nixpkgs. Most of the packages (decopatch,
+  # makefun, pytest-*) have circular dependecies.
+  doCheck = false;
+
+  pythonImportsCheck = [ "pytest_cases" ];
+
+  meta = with lib; {
+    description = "Separate test code from test cases in pytest";
+    homepage = "https://github.com/smarie/python-pytest-cases";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix
index 414cf1ecc9cb..4b3999ec86b4 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, setuptools_scm }:
+{ lib, buildPythonPackage, fetchPypi }:
 
 buildPythonPackage rec {
   pname = "pytest-celery";
@@ -17,5 +17,6 @@ buildPythonPackage rec {
     description = "pytest plugin for unittest subTest() support and subtests fixture";
     homepage = "https://github.com/pytest-dev/pytest-subtests";
     license = licenses.mit;
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix
new file mode 100644
index 000000000000..aaecd191e93a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, python
+, mock
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-console-scripts";
+  version = "1.2.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "4a2138d7d567bc581fe081b6a5975849a2a36b3925cb0f066d2380103e13741c";
+  };
+  postPatch = ''
+    # setuptools-scm is pinned to <6 because it dropped Python 3.5
+    # support.  That's not something that affects us.
+    substituteInPlace setup.py --replace "'setuptools_scm<6'" "'setuptools_scm'"
+    # Patch the shebang of a script generated during test.
+    substituteInPlace tests/test_run_scripts.py --replace "#!/usr/bin/env python" "#!${python.interpreter}"
+  '';
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  nativeBuildInputs = [ setuptools-scm ];
+
+  checkInputs = [ mock pytestCheckHook ];
+
+  meta = with lib; {
+    description = "Pytest plugin for testing console scripts";
+    longDescription = ''
+      Pytest-console-scripts is a pytest plugin for running python scripts from within tests.
+      It's quite similar to subprocess.run(), but it also has an in-process mode, where the scripts are executed by the interpreter that's running pytest (using some amount of sandboxing).
+    '';
+    homepage = "https://github.com/kvas-it/pytest-console-scripts";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-datadir/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-datadir/default.nix
index 1dc218c08085..26c22dfa388b 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-datadir/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-datadir/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub
-, setuptools_scm, pytest, cmake
+, setuptools-scm, pytest, cmake
 }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "0kwgp6sqnqnmww5r0dkmyfpi0lmw0iwxz3fnwn2fs8w6bvixzznf";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   preBuild = ''
     export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
@@ -27,6 +27,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/gabrielcnr/pytest-datadir";
     description = "pytest plugin for manipulating test data directories and files";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
index bfcda812529e..c147996705e2 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pytest
 , django
-, setuptools_scm
+, setuptools-scm
 , django-configurations
 , pytest_xdist
 , six
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "26f02c16d36fd4c8672390deebe3413678d89f30720c16efb8b2a6bf63b9041f";
   };
 
-  nativeBuildInputs = [ pytest setuptools_scm ];
+  nativeBuildInputs = [ pytest setuptools-scm ];
   checkInputs = [ pytest django-configurations pytest_xdist six ];
   propagatedBuildInputs = [ django ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-doctestplus/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-doctestplus/default.nix
index 335846fc3425..01ec38458c9f 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-doctestplus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-doctestplus/default.nix
@@ -4,7 +4,9 @@
 , isPy27
 , six
 , pytest
+, pytestCheckHook
 , numpy
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -17,7 +19,12 @@ buildPythonPackage rec {
     sha256 = "6fe747418461d7b202824a3486ba8f4fa17a9bd0b1eddc743ba1d6d87f03391a";
   };
 
-  buildInputs = [ pytest ];
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+  buildInputs = [
+    pytest
+  ];
 
   propagatedBuildInputs = [
     six
@@ -25,14 +32,9 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
   ];
 
-  # check_distribution incorrectly pulls pytest version
-  checkPhase = ''
-    pytest -k 'not check_distribution'
-  '';
-
   meta = with lib; {
     description = "Pytest plugin with advanced doctest features";
     homepage = "https://astropy.org";
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
index 67f759cb59f1..148b2c7185fb 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
@@ -5,7 +5,7 @@
 , pytestcov
 , pytest-doctestplus
 , pytestCheckHook
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   buildInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-flask/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-flask/default.nix
index f5fd4c5251d4..5fdd5c757d41 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-flask/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-flask/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, flask, werkzeug, setuptools_scm, isPy27 }:
+{ lib, buildPythonPackage, fetchPypi, pytest, flask, werkzeug, setuptools-scm, isPy27 }:
 
 buildPythonPackage rec {
   pname = "pytest-flask";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     werkzeug
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   meta = with lib; {
     homepage = "https://github.com/pytest-dev/pytest-flask/";
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-forked/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-forked/default.nix
index 0cfb8cd6afc8..cbba86641c13 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-forked/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-forked/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , py
 , pytest
 , pytestCheckHook
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "6aa9ac7e00ad1a539c41bec6d21011332de671e938c7637378ec9710204e37ca";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   buildInputs = [
     pytest
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-helpers-namespace/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
index 43ef2a1339f7..b405afea2154 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
@@ -1,30 +1,28 @@
 { buildPythonPackage
-, fetchFromGitHub
-, pytest
+, fetchPypi
+, pytestCheckHook
+, isPy27
 , lib
+, setuptools
+, setuptools-declarative-requirements
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
   pname = "pytest-helpers-namespace";
   version = "2021.3.24";
+  disabled = isPy27;
 
-  src = fetchFromGitHub {
-    owner = "saltstack";
-    repo = pname;
-    rev = version;
-    sha256 = "0ikwiwp9ycgg7px78nxdkqvg7j97krb6vzqlb8fq8fvbwrj4q4v2";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0pyj2d45zagmzlajzqdnkw5yz8k49pkihbydsqkzm413qnkzb38q";
   };
 
-  buildInputs = [ pytest ];
+  nativeBuildInputs = [ setuptools setuptools-declarative-requirements setuptools-scm ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    pytest
-  '';
-
-  # The tests fail with newest pytest. They passed with pytest_3, which no longer exists
-  doCheck = false;
+  pythonImportsCheck = [ "pytest_helpers_namespace" ];
 
   meta = with lib; {
     homepage = "https://github.com/saltstack/pytest-helpers-namespace";
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix
index 4df30e3f1936..78b2de292f1d 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder
-, pytest, pytest-metadata, setuptools_scm }:
+, pytest, pytest-metadata, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "pytest-html";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "3ee1cf319c913d19fe53aeb0bc400e7b0bc2dbeb477553733db1dad12eb75ee3";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [ pytest ];
   propagatedBuildInputs = [ pytest-metadata ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-httpx/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-httpx/default.nix
index d6f30486f9b2..1773a4b57928 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-httpx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-httpx/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "pytest-httpx";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "Colin-b";
     repo = "pytest_httpx";
     rev = "v${version}";
-    sha256 = "08idd3y6khxjqkn46diqvkjvsl4w4pxhl6z1hspbkrj0pqwf9isi";
+    sha256 = "sha256-Awhsm8jmoCZTBnfrrauLxAEKtpxTzjPMXmx7HR0f/g4=";
   };
 
   buildInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-metadata/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-metadata/default.nix
index 1a03ec2f91d2..9f04cbe407d3 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-metadata/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-metadata/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, setuptools_scm }:
+, pytest, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "pytest-metadata";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "71b506d49d34e539cc3cfdb7ce2c5f072bea5c953320002c95968e0238f8ecf1";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [ pytest ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-mock/2.nix b/nixpkgs/pkgs/development/python-modules/pytest-mock/2.nix
index 3764a05af057..ad1e7f0c3fd3 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-mock/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-mock/2.nix
@@ -5,7 +5,7 @@
 , isPy3k
 , pytest
 , mock
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = lib.optional (!isPy3k) mock;
 
   nativeBuildInputs = [
-   setuptools_scm
+   setuptools-scm
   ];
 
   checkInputs = [
@@ -35,6 +35,6 @@ buildPythonPackage rec {
     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; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-mock/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-mock/default.nix
index 3e044b4fe596..5be8529433fc 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-mock/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-mock/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pytest-asyncio
 , pytestCheckHook
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "1z6r3n78bilfzkbxj083p0ib04ia1bhfgnj2qq9x6q4mmykapqm1";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [
     pytest-asyncio
@@ -28,6 +28,6 @@ buildPythonPackage rec {
     description = "Thin-wrapper around the mock package for easier use with pytest";
     homepage = "https://github.com/pytest-dev/pytest-mock";
     license = with licenses; [ mit ];
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-mypy/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-mypy/default.nix
index 88b8017e1c09..8c52fa2e6988 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-mypy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-mypy/default.nix
@@ -4,7 +4,7 @@
 , filelock
 , pytest
 , mypy
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "1fa55723a4bf1d054fcba1c3bd694215a2a65cc95ab10164f5808afd893f3b11";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   buildInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-openfiles/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-openfiles/default.nix
index baa5438dfa88..573dbf275117 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-openfiles/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-openfiles/default.nix
@@ -5,7 +5,7 @@
 , pytest
 , pytestCheckHook
 , psutil
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "179c2911d8aee3441fee051aba08e0d9b4dab61b829ae4811906d5c49a3b0a58";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   buildInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-ordering/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-ordering/default.nix
index 6cd1ed227976..c5e8a786b5ef 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-ordering/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-ordering/default.nix
@@ -26,6 +26,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/ftobia/pytest-ordering";
     description = "Pytest plugin to run your tests in a specific order";
     license = licenses.mit;
+    broken = true;  # See https://github.com/NixOS/nixpkgs/pull/122264
     maintainers = with maintainers; [ eadwu ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-qt/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-qt/default.nix
index c91c3eae4abe..4add58efbca3 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-qt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-qt/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytest
 , pyqt5
 }:
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-regressions/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-regressions/default.nix
new file mode 100644
index 000000000000..90b72c886eac
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pytest-regressions/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+, pythonOlder
+, matplotlib
+, numpy
+, pandas
+, pillow
+, pytest
+, pytest-datadir
+, pytestCheckHook
+, pyyaml
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-regressions";
+  version = "2.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "15a71f77cb266dd4ca94331abe4c339ad056b2b2175e47442711c98cf6d65716";
+  };
+
+  patches = [
+    # Make pytest-regressions compatible with NumPy 1.20.
+    # Should be part of the next release.
+    (fetchpatch {
+      url = "https://github.com/ESSS/pytest-regressions/commit/ffad2c7fd1d110f420f4e3ca3d39d90cae18a972.patch";
+      sha256 = "sha256-bUna7MnMV6u9oEaZMsFnr4gE28rz/c0O2+Hyk291+l0=";
+    })
+  ];
+
+  nativeBuildInputs = [ setuptools-scm ];
+  buildInputs = [ pytest ];
+  propagatedBuildInputs = [ numpy pandas pillow pytest-datadir pyyaml ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  checkInputs = [ pytestCheckHook matplotlib ];
+  pythonImportsCheck = [ "pytest_regressions" "pytest_regressions.plugin" ];
+
+  meta = with lib; {
+    description = "Pytest fixtures to write regression tests";
+    longDescription = ''
+      pytest-regressions makes it simple to test general data, images,
+      files, and numeric tables by saving expected data in a data
+      directory (courtesy of pytest-datadir) that can be used to verify
+      that future runs produce the same data.
+    '';
+    homepage = "https://github.com/ESSS/pytest-regressions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-repeat/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-repeat/default.nix
index b90e8ebef385..0652bcacbccd 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-repeat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-repeat/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytest
 , fetchpatch
 }:
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-sanic/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-sanic/default.nix
index 84330cfd62e5..81e189c22c57 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-sanic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-sanic/default.nix
@@ -2,7 +2,6 @@
 , aiohttp
 , async_generator
 , buildPythonPackage
-, doCheck ? true
 , fetchFromGitHub
 , httpx
 , pytest
@@ -13,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "pytest-sanic";
-  version = "1.7.0";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     owner = "yunstanford";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1zpgnw1lqbll59chv4hgcn31mdql1nv4gw9crbihky3ly3d3ncqi";
+    sha256 = "sha256-OtyulpSHUWERtcIRT5j3YtHciIxFiIFYKqtlEd1NSFw=";
   };
 
   buildInputs = [ pytest ];
@@ -37,7 +36,20 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  inherit doCheck;
+  disabledTests = [
+    # https://github.com/yunstanford/pytest-sanic/issues/51
+    "test_fixture_sanic_client_get"
+    "test_fixture_sanic_client_post"
+    "test_fixture_sanic_client_put"
+    "test_fixture_sanic_client_delete"
+    "test_fixture_sanic_client_patch"
+    "test_fixture_sanic_client_options"
+    "test_fixture_sanic_client_head"
+    "test_fixture_sanic_client_close"
+    "test_fixture_sanic_client_passing_headers"
+    "test_fixture_sanic_client_context_manager"
+    "test_fixture_test_client_context_manager"
+  ];
 
   pythonImportsCheck = [ "pytest_sanic" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-server-fixtures/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-server-fixtures/default.nix
index ca3c9a37c1a9..7de68cadbb1e 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-server-fixtures/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-server-fixtures/default.nix
@@ -21,6 +21,6 @@ buildPythonPackage rec {
     description = "Extensible server fixures for py.test";
     homepage  = "https://github.com/manahl/pytest-plugins";
     license = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-services/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-services/default.nix
index 70caefea8953..4f2a577bb4db 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-services/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-services/default.nix
@@ -5,7 +5,7 @@
 , requests
 , psutil
 , pytest
-, setuptools_scm
+, setuptools-scm
 , subprocess32 ? null
 , toml
 , zc_lockfile
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
     toml
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-xdist/1.nix b/nixpkgs/pkgs/development/python-modules/pytest-xdist/1.nix
index fa794f94141a..466d86f50f78 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-xdist/1.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-xdist/1.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, buildPythonPackage, execnet, pytest
-, setuptools_scm, pytest-forked, filelock, psutil, six, isPy3k }:
+, setuptools-scm, pytest-forked, filelock, psutil, six, isPy3k }:
 
 buildPythonPackage rec {
   pname = "pytest-xdist";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "1vh4ps32lp5ignch5adbl3pgchvigdfmrl6qpmhxih54wa1qw3il";
   };
 
-  nativeBuildInputs = [ setuptools_scm pytest ];
+  nativeBuildInputs = [ setuptools-scm pytest ];
   checkInputs = [ pytest filelock ];
   propagatedBuildInputs = [ execnet pytest-forked psutil six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-xdist/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-xdist/default.nix
index bbc08fb59df4..f87169a630bd 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-xdist/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-xdist/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook
 , filelock
 , execnet
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "718887296892f92683f6a51f25a3ae584993b06f7076ce1e1fd482e59a8220a2";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [
     pytest
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-xprocess/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-xprocess/default.nix
index 5949840d1e81..0695b49191b4 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-xprocess/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-xprocess/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi
 , psutil
 , pytest
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "59c739edee7f3f2258e7c77989241698e356c552f5efb28bb46b478616888bf6";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   buildInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest/4.nix b/nixpkgs/pkgs/development/python-modules/pytest/4.nix
index f30eec15a0a8..c764b55d1f10 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest/4.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest/4.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, pythonOlder, fetchPypi, attrs, hypothesis, py
-, setuptools_scm, setuptools, six, pluggy, funcsigs, isPy3k, more-itertools
+, setuptools-scm, setuptools, six, pluggy, funcsigs, isPy3k, more-itertools
 , atomicwrites, mock, writeText, pathlib2, wcwidth, packaging, isPyPy
 }:
 buildPythonPackage rec {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ hypothesis mock ];
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ attrs py setuptools six pluggy more-itertools atomicwrites wcwidth packaging ]
     ++ lib.optionals (!isPy3k) [ funcsigs ]
     ++ lib.optionals (pythonOlder "3.6") [ pathlib2 ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest/5.nix b/nixpkgs/pkgs/development/python-modules/pytest/5.nix
index 341d5ac2240d..b3e69578d7eb 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest/5.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest/5.nix
@@ -12,7 +12,7 @@
 , pygments
 , python
 , setuptools
-, setuptools_scm
+, setuptools-scm
 , six
 , toml
 , wcwidth
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ hypothesis pygments ];
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     atomicwrites
     attrs
diff --git a/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix b/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix
index d6203276b827..bea83146c37d 100644
--- a/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, pytest }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, pytest }:
 
 buildPythonPackage rec {
   pname = "pytest-runner";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "96c7e73ead7b93e388c5d614770d2bae6526efd997757d3543fe17b557a0942b";
   };
 
-  nativeBuildInputs = [ setuptools_scm pytest ];
+  nativeBuildInputs = [ setuptools-scm pytest ];
 
   postPatch = ''
     rm pytest.ini
diff --git a/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix b/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix
index 6f68bcd02354..897efebf1dca 100644
--- a/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, pytest }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, pytest }:
 
 buildPythonPackage rec {
   pname = "pytest-runner";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "ca3f58ff4957e8be6c54c55d575b235725cbbcf4dc0d5091c29c6444cfc8a5fe";
   };
 
-  nativeBuildInputs = [ setuptools_scm pytest ];
+  nativeBuildInputs = [ setuptools-scm pytest ];
 
   postPatch = ''
     rm pytest.ini
diff --git a/nixpkgs/pkgs/development/python-modules/python-binance/default.nix b/nixpkgs/pkgs/development/python-modules/python-binance/default.nix
index aea47c7b9e72..cd1e09557ecb 100644
--- a/nixpkgs/pkgs/development/python-modules/python-binance/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-binance/default.nix
@@ -1,25 +1,55 @@
-{ lib, buildPythonPackage, fetchPypi
-, pytest, requests-mock, tox
-, autobahn, certifi, chardet, cryptography, dateparser, pyopenssl, requests, service-identity, twisted }:
+{ lib
+, aiohttp
+, buildPythonPackage
+, dateparser
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, requests
+, requests-mock
+, six
+, ujson
+, websockets
+}:
 
 buildPythonPackage rec {
-  version = "0.7.9";
   pname = "python-binance";
+  version = "1.0.10";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "476459d91f6cfe0a37ccac38911643ea6cca632499ad8682e0957a075f73d239";
+  src = fetchFromGitHub {
+    owner = "sammchardy";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "09pq2blvky1ah4k8yc6zkp2g5nkn3awc52ad3lxvj6m33akfzxiv";
   };
 
-  doCheck = false;  # Tries to test multiple interpreters with tox
-  checkInputs = [ pytest requests-mock tox ];
+  propagatedBuildInputs = [
+    aiohttp
+    dateparser
+    requests
+    six
+    ujson
+    websockets
+  ];
 
-  propagatedBuildInputs = [ autobahn certifi chardet cryptography dateparser pyopenssl requests service-identity twisted ];
+  checkInputs = [
+    pytestCheckHook
+    requests-mock
+  ];
 
-  meta = {
+  disabledTestPaths = [
+    # Tests require network access
+    "tests/test_api_request.py"
+    "tests/test_historical_klines.py"
+  ];
+
+  pythonImportsCheck = [ "binance" ];
+
+  meta = with lib; {
     description = "Binance Exchange API python implementation for automated trading";
     homepage = "https://github.com/sammchardy/python-binance";
-    license = lib.licenses.mit;
-    maintainers = [ lib.maintainers.bhipple ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ bhipple ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/python-engineio/3.nix b/nixpkgs/pkgs/development/python-modules/python-engineio/3.nix
index e4c71782f990..5deeec0bb573 100644
--- a/nixpkgs/pkgs/development/python-modules/python-engineio/3.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-engineio/3.nix
@@ -13,6 +13,7 @@
 , websocket_client
 , websockets
 , pytestCheckHook
+, pythonAtLeast
 }:
 
 buildPythonPackage rec {
@@ -63,5 +64,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/miguelgrinberg/python-engineio/";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ graham33 ];
+    broken = stdenv.isDarwin && (pythonAtLeast "3.9");  # See https://github.com/miguelgrinberg/python-socketio/issues/567
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/python-fontconfig/default.nix b/nixpkgs/pkgs/development/python-modules/python-fontconfig/default.nix
index 88778ff794ea..4aabb208a90c 100644
--- a/nixpkgs/pkgs/development/python-modules/python-fontconfig/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-fontconfig/default.nix
@@ -29,6 +29,6 @@ in buildPythonPackage rec {
     homepage = "https://github.com/Vayn/python-fontconfig";
     description = "Python binding for Fontconfig";
     license = lib.licenses.gpl3;
-    maintainers = with lib.maintainers; [ gnidorah ];
+    maintainers = with lib.maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/python-gitlab/default.nix b/nixpkgs/pkgs/development/python-modules/python-gitlab/default.nix
index 4dc3cfb5693f..b3cb9aaff633 100644
--- a/nixpkgs/pkgs/development/python-modules/python-gitlab/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-gitlab/default.nix
@@ -1,19 +1,36 @@
-{ lib, buildPythonPackage, fetchPypi, requests, mock, httmock, pythonOlder, pytest, responses }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, argcomplete
+, requests
+, requests-toolbelt
+, pyyaml
+}:
 
 buildPythonPackage rec {
   pname = "python-gitlab";
-  version = "2.6.0";
+  version = "2.7.1";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a862c6874524ab585b725a17b2cd2950fc09d6d74205f40a11be2a4e8f2dcaa1";
+    sha256 = "0z4amj5xhx5zc3h2m0zrkardm3z5ba9qpjx5n6dczyz77r527yg1";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    argcomplete
+    pyyaml
+    requests
+    requests-toolbelt
+  ];
 
-  checkInputs = [ mock httmock pytest responses ];
+  # tests rely on a gitlab instance on a local docker setup
+  doCheck = false;
 
-  disabled = pythonOlder "3.6";
+  pythonImportsCheck = [
+    "gitlab"
+  ];
 
   meta = with lib; {
     description = "Interact with GitLab API";
diff --git a/nixpkgs/pkgs/development/python-modules/python-igraph/default.nix b/nixpkgs/pkgs/development/python-modules/python-igraph/default.nix
index 8e90ce5190f6..d196cf6e7478 100644
--- a/nixpkgs/pkgs/development/python-modules/python-igraph/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-igraph/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "python-igraph";
-  version = "0.9.1";
+  version = "0.9.4";
 
   disabled = pythonOlder "3.6";
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "igraph";
     repo = "python-igraph";
     rev = version;
-    sha256 = "1ldyzza25zvwh144lw8x856z76s8gfvnbdm56fcmwkvm7aj81npw";
+    sha256 = "sha256-0iqYzeqVJwBqDL7AllrNaI5c7fmtrVwWpinCnO+ACzo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
index 69fbaa78067e..daab437c9797 100644
--- a/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, isPy27
+{ lib, buildPythonPackage, fetchFromGitHub, pythonAtLeast, pythonOlder, isPy27
 , backports_functools_lru_cache ? null, configparser ? null, futures ? null, future, jedi, pluggy, python-jsonrpc-server, flake8
 , pytestCheckHook, mock, pytestcov, coverage, setuptools, ujson, flaky
 , # Allow building a limited set of providers, e.g. ["pycodestyle"].
@@ -22,6 +22,8 @@ in
 buildPythonPackage rec {
   pname = "python-language-server";
   version = "0.36.2";
+  # https://github.com/palantir/python-language-server/issues/896#issuecomment-752790868
+  disabled = pythonAtLeast "3.9";
 
   src = fetchFromGitHub {
     owner = "palantir";
@@ -30,6 +32,13 @@ buildPythonPackage rec {
     sha256 = "07x6jr4z20jxn03bxblwc8vk0ywha492cgwfhj7q97nb5cm7kx0q";
   };
 
+  postPatch = ''
+    # Reading the changelog I don't expect an API break in pycodestyle and pyflakes
+    substituteInPlace setup.py \
+      --replace "pycodestyle>=2.6.0,<2.7.0" "pycodestyle>=2.6.0,<2.8.0" \
+      --replace "pyflakes>=2.2.0,<2.3.0" "pyflakes>=2.2.0,<2.4.0"
+  '';
+
   propagatedBuildInputs = [ setuptools jedi pluggy future python-jsonrpc-server ujson ]
     ++ lib.optional (withProvider "autopep8") autopep8
     ++ lib.optional (withProvider "mccabe") mccabe
diff --git a/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix b/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
index b851ed6b826f..95208c7b94b6 100644
--- a/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
@@ -8,7 +8,7 @@
 , pytest
 , pytestcov
 , pytestrunner
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -23,11 +23,11 @@ buildPythonPackage rec {
     sha256 = "009c4rbyj4cjb8fznccfpr5wrzdmi56wq990yjh22n0z2qqylmkf";
   };
 
-  nativeBuildInputs = [ setuptools_scm pkgconfig pytestrunner ];
+  nativeBuildInputs = [ setuptools-scm pkgconfig pytestrunner ];
   checkInputs = [ pytest pytestcov psutil ];
   propagatedBuildInputs = lib.optionals (!isPy3k) [ future ];
 
-  # give a hint to setuptools_scm on package version
+  # give a hint to setuptools-scm on package version
   preBuild = ''
     export SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/python-mapnik/default.nix b/nixpkgs/pkgs/development/python-modules/python-mapnik/default.nix
index 36c297358e87..228e0d74ebc2 100644
--- a/nixpkgs/pkgs/development/python-modules/python-mapnik/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-mapnik/default.nix
@@ -35,10 +35,16 @@ in buildPythonPackage rec {
     export BOOST_PYTHON_LIB="boost_python${pythonVersion}"
     export BOOST_THREAD_LIB="boost_thread"
     export BOOST_SYSTEM_LIB="boost_system"
+    export PYCAIRO=true
   '';
 
   nativeBuildInputs = [
     mapnik # for mapnik_config
+    pkgs.pkgconfig
+  ];
+
+  patches = [
+    ./find-pycairo-with-pkg-config.patch
   ];
 
   buildInputs = [
@@ -57,6 +63,8 @@ in buildPythonPackage rec {
   ]);
   propagatedBuildInputs = [ pillow pycairo ];
 
+  pythonImportsCheck = [ "mapnik" ] ;
+
   meta = with lib; {
     description = "Python bindings for Mapnik";
     homepage = "https://mapnik.org";
diff --git a/nixpkgs/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch b/nixpkgs/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch
new file mode 100644
index 000000000000..1f35af36ee82
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch
@@ -0,0 +1,18 @@
+diff --git a/setup.py b/setup.py
+index 82a31d733..1c876a553 100755
+--- a/setup.py
++++ b/setup.py
+@@ -228,10 +228,9 @@ extra_comp_args = list(filter(lambda arg: arg != "-fvisibility=hidden", extra_co
+ if os.environ.get("PYCAIRO", "false") == "true":
+     try:
+         extra_comp_args.append('-DHAVE_PYCAIRO')
+-        print("-I%s/include/pycairo".format(sys.exec_prefix))
+-        extra_comp_args.append("-I{0}/include/pycairo".format(sys.exec_prefix))
+-        #extra_comp_args.extend(check_output(["pkg-config", '--cflags', 'pycairo']).strip().split(' '))
+-        #linkflags.extend(check_output(["pkg-config", '--libs', 'pycairo']).strip().split(' '))
++        pycairo_name = 'py3cairo' if PYTHON3 else 'pycairo'
++        extra_comp_args.extend(check_output(["pkg-config", '--cflags', pycairo_name]).strip().split(' '))
++        linkflags.extend(check_output(["pkg-config", '--libs', pycairo_name]).strip().split(' '))
+     except:
+         raise Exception("Failed to find compiler options for pycairo")
+ 
diff --git a/nixpkgs/pkgs/development/python-modules/python-miio/default.nix b/nixpkgs/pkgs/development/python-modules/python-miio/default.nix
index 1d9025a035f2..2374c6797f2e 100644
--- a/nixpkgs/pkgs/development/python-modules/python-miio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-miio/default.nix
@@ -24,20 +24,19 @@
 
 buildPythonPackage rec {
   pname = "python-miio";
-  version = "0.5.5.2";
+  version = "0.5.6";
   disabled = pythonOlder "3.6";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-lk7egCyj+vSsaXmxuWxlQuom8n3JEs/RIWwCuwTOXeI=";
+    sha256 = "sha256-tmGt50xBDV++/pqyXsuxHdrwv+XbkjvtrzsYBzQh7zE=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace 'croniter = "^0"' 'croniter = "*"' \
-      --replace 'defusedxml = "^0.6"' 'defusedxml = "*"' \
-      --replace 'zeroconf = "^0.28"' 'zeroconf = "*"'
+      --replace 'defusedxml = "^0.6"' 'defusedxml = "*"'
   '';
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-redis-lock/default.nix b/nixpkgs/pkgs/development/python-modules/python-redis-lock/default.nix
index 7a53e73b2b88..49113dfad5ef 100644
--- a/nixpkgs/pkgs/development/python-modules/python-redis-lock/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-redis-lock/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , redis
-, pytest
+, pytestCheckHook
 , process-tests
 , pkgs
 , withDjango ? false, django_redis
@@ -17,15 +17,20 @@ buildPythonPackage rec {
     sha256 = "4265a476e39d476a8acf5c2766485c44c75f3a1bd6cf73bb195f3079153b8374";
   };
 
-  checkInputs = [ pytest process-tests pkgs.redis ];
+  propagatedBuildInputs = [
+    redis
+  ] ++ lib.optional withDjango django_redis;
 
-  checkPhase = ''
-    pytest tests/
-  '';
-
-  propagatedBuildInputs = [ redis ]
-  ++ lib.optional withDjango django_redis;
+  checkInputs = [
+    pytestCheckHook
+    process-tests
+    pkgs.redis
+  ];
 
+  disabledTests = [
+    # https://github.com/ionelmc/python-redis-lock/issues/86
+    "test_no_overlap2"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/ionelmc/python-redis-lock";
diff --git a/nixpkgs/pkgs/development/python-modules/python-rtmidi/default.nix b/nixpkgs/pkgs/development/python-modules/python-rtmidi/default.nix
index aadf75d59f7f..781231749fdf 100644
--- a/nixpkgs/pkgs/development/python-modules/python-rtmidi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-rtmidi/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
-, pkg-config, alsaLib, libjack2, tox, flake8, alabaster
+, pkg-config, alsa-lib, libjack2, tox, flake8, alabaster
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ alsaLib libjack2 ];
+  buildInputs = [ alsa-lib libjack2 ];
   checkInputs = [
     tox
     flake8
diff --git a/nixpkgs/pkgs/development/python-modules/python-simple-hipchat/default.nix b/nixpkgs/pkgs/development/python-modules/python-simple-hipchat/default.nix
index 904437bdcf66..1a7974ecd267 100644
--- a/nixpkgs/pkgs/development/python-modules/python-simple-hipchat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-simple-hipchat/default.nix
@@ -1,5 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi
-, unzip }:
+{ lib, buildPythonPackage, fetchPypi }:
 
 buildPythonPackage rec {
   pname = "python-simple-hipchat";
@@ -10,8 +9,6 @@ buildPythonPackage rec {
     sha256 = "0zy6prrj85jjc4xmxgfg8h94j81k6zhfxfffcbvq9b10jis1rgav";
   };
 
-  nativeBuildInputs = [ unzip ];
-
   meta = with lib; {
     description = "Easy peasy wrapper for HipChat's v1 API";
     homepage = "https://github.com/kurttheviking/simple-hipchat-py";
diff --git a/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix b/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
index d9d1d446d1ef..380b1738964b 100644
--- a/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "python-smarttub";
-  version = "0.0.23";
+  version = "0.0.24";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "mdz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0maqbmk50xjhv9f0zm62ayzyf99kic3c0g5714cqkw3pfp8k75cx";
+    sha256 = "sha256-XWZbfPNZ1cPsDwtJRuOwIPTHmNBMzFSYHDDcbBrXjtk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-snap7/default.nix b/nixpkgs/pkgs/development/python-modules/python-snap7/default.nix
index 05d804bc6770..b494d2e442e6 100644
--- a/nixpkgs/pkgs/development/python-modules/python-snap7/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-snap7/default.nix
@@ -24,7 +24,6 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [
     "snap7"
-    "snap7.six"
     "snap7.util"
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-socks/default.nix b/nixpkgs/pkgs/development/python-modules/python-socks/default.nix
new file mode 100644
index 000000000000..dcf268808275
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python-socks/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, trio, curio, async-timeout, fetchPypi, pythonOlder }:
+
+buildPythonPackage rec {
+  pname = "python-socks";
+  version = "1.2.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx";
+  };
+
+  disabled = pythonOlder "3.6.1";
+
+  propagatedBuildInputs = [ trio curio async-timeout ];
+
+  meta = with lib; {
+    description = "Core proxy client (SOCKS4, SOCKS5, HTTP) functionality for Python";
+    homepage = "https://github.com/romis2012/python-socks";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mjlbach ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix b/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
index b5155fd4bb65..7fc92a2236b1 100644
--- a/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "python-telegram-bot";
-  version = "13.4.1";
+  version = "13.5";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "141w3701jjl460702xddqvi3hswp24jnkl6cakvz2aqrmcyxq7sc";
+    sha256 = "sha256-g9v0zUYyf9gYu2ZV8lCAJKCt5o69s1RNo1xGmtwjvds=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-toolbox/default.nix b/nixpkgs/pkgs/development/python-modules/python-toolbox/default.nix
index bdf09fdf2c79..a310736c7492 100644
--- a/nixpkgs/pkgs/development/python-modules/python-toolbox/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-toolbox/default.nix
@@ -3,8 +3,7 @@
 , docutils
 , fetchFromGitHub
 , isPy27
-, nose
-, pytest
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -21,7 +20,13 @@ buildPythonPackage rec {
 
   checkInputs = [
     docutils
-    pytest
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # file imports 'dummy_threading', which was deprecated since py37
+    # and removed in py39
+    "test_python_toolbox/test_cute_profile/test_cute_profile.py"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/python-velbus/default.nix b/nixpkgs/pkgs/development/python-modules/python-velbus/default.nix
index a02edfdc1f6d..c83ff853f1d5 100644
--- a/nixpkgs/pkgs/development/python-modules/python-velbus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-velbus/default.nix
@@ -6,19 +6,22 @@
 
 buildPythonPackage rec {
   pname = "python-velbus";
-  version = "2.1.2";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "thomasdelaet";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "0dv7dsjp5li87ispdphaz7jd0a9xc328rxwawf2f58b1ii904xr4";
+    rev = version;
+    sha256 = "1z0a7fc9xfrcpwi9xiimxsgbzbp2iwyi1rij6vqd5z47mzi49fv9";
   };
 
-  propagatedBuildInputs = [ pyserial ];
+  propagatedBuildInputs = [
+    pyserial
+  ];
 
   # Project has not tests
   doCheck = false;
+
   pythonImportsCheck = [ "velbus" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/python-vlc/default.nix b/nixpkgs/pkgs/development/python-modules/python-vlc/default.nix
index 6f83f587f588..2690f8ea7ebe 100644
--- a/nixpkgs/pkgs/development/python-modules/python-vlc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-vlc/default.nix
@@ -8,30 +8,33 @@
 
 buildPythonPackage rec {
   pname = "python-vlc";
-  version = "3.0.11115";
+  version = "3.0.12118";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a4d3bdddfce84a8fb1b2d5447193a0239c55c16ca246e5194d48efd59c4e236b";
+    hash = "sha256-Vm8vfDA/aACFHKzAFt8cbu7AlK1j4KSdh9udaYCU8fs=";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
-
   patches = [
+    # Patch path for VLC
     (substituteAll {
       src = ./vlc-paths.patch;
       libvlcPath="${libvlc}/lib/libvlc.so.5";
     })
   ];
 
+  propagatedBuildInputs = [
+    setuptools
+  ];
+
   doCheck = false; # no tests
 
+  pythonImportsCheck = [ "vlc" ];
+
   meta = with lib; {
-    homepage = "https://wiki.videolan.org/PythonBinding";
-    maintainers = with maintainers; [ tbenst ];
     description = "Python bindings for VLC, the cross-platform multimedia player and framework";
+    homepage = "https://wiki.videolan.org/PythonBinding";
     license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ tbenst ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pythonnet/default.nix b/nixpkgs/pkgs/development/python-modules/pythonnet/default.nix
index d0054f7076a1..7387d387dbec 100644
--- a/nixpkgs/pkgs/development/python-modules/pythonnet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pythonnet/default.nix
@@ -2,8 +2,7 @@
 , fetchPypi
 , fetchNuGet
 , buildPythonPackage
-, python
-, pytest
+, pytestCheckHook
 , pycparser
 , psutil
 , pkg-config
@@ -15,29 +14,36 @@
 
 let
 
-  UnmanagedExports127 = fetchNuGet {
-    baseName = "UnmanagedExports";
-    version = "1.2.7";
-    sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
-    outputFiles = [ "*" ];
-  };
-
-  NUnit371 = fetchNuGet {
-    baseName = "NUnit";
-    version = "3.7.1";
-    sha256 = "1yc6dwaam4w2ss1193v735nnl79id78yswmpvmjr1w4bgcbdza4l";
-    outputFiles = [ "*" ];
-  };
+  dotnetPkgs = [
+    (fetchNuGet {
+      baseName = "UnmanagedExports";
+      version = "1.2.7";
+      sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
+      outputFiles = [ "*" ];
+    })
+    (fetchNuGet {
+      baseName = "NUnit";
+      version = "3.12.0";
+      sha256 = "1880j2xwavi8f28vxan3hyvdnph4nlh5sbmh285s4lc9l0b7bdk2";
+      outputFiles = [ "*" ];
+    })
+    (fetchNuGet {
+      baseName = "System.ValueTuple";
+      version = "4.5.0";
+      sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy";
+      outputFiles = [ "*" ];
+    })
+  ];
 
 in
 
 buildPythonPackage rec {
   pname = "pythonnet";
-  version = "2.4.0";
+  version = "2.5.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ach9jic7a9rd3vmc4bphkr9fq01a0qk81f8a7gr9npwzmkqx8x3";
+    sha256 = "1qzdc6jd7i9j7p6bcihnr98y005gv1358xqdr1plpbpnl6078a5p";
   };
 
   postPatch = ''
@@ -50,7 +56,6 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [
-    pytest
     pycparser
 
     pkg-config
@@ -59,13 +64,15 @@ buildPythonPackage rec {
 
     mono
 
-    NUnit371
-    UnmanagedExports127
-  ];
+  ] ++ dotnetPkgs;
 
   buildInputs = [
     glib
     mono
+  ];
+
+  checkInputs = [
+    pytestCheckHook
     psutil # needed for memory leak tests
   ];
 
@@ -73,22 +80,21 @@ buildPythonPackage rec {
     rm -rf packages
     mkdir packages
 
-    ln -s ${NUnit371}/lib/dotnet/NUnit/ packages/NUnit.3.7.1
-    ln -s ${UnmanagedExports127}/lib/dotnet/NUnit/ packages/UnmanagedExports.1.2.7
+    ${builtins.concatStringsSep "\n" (
+        builtins.map (
+            x: ''ln -s ${x}/lib/dotnet/${x.baseName} ./packages/${x.baseName}.${x.version}''
+          ) dotnetPkgs)}
 
     # Setting TERM=xterm fixes an issue with terminfo in mono: System.Exception: Magic number is wrong: 542
     export TERM=xterm
   '';
 
-  checkPhase = ''
-    ${python.interpreter} -m pytest
-  '';
-
   meta = with lib; {
     description = ".Net and Mono integration for Python";
     homepage = "https://pythonnet.github.io";
     license = licenses.mit;
+    # <https://github.com/pythonnet/pythonnet/issues/898>
+    badPlatforms = [ "aarch64-linux" ];
     maintainers = with maintainers; [ jraygauthier ];
-    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytmx/default.nix b/nixpkgs/pkgs/development/python-modules/pytmx/default.nix
index 17c18a96c736..6d88f4b636b1 100644
--- a/nixpkgs/pkgs/development/python-modules/pytmx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytmx/default.nix
@@ -5,20 +5,26 @@
 
 buildPythonPackage rec {
   pname = "pytmx";
-  version = "3.24.0";
+  version = "3.25";
 
   disabled = isPy27;
 
   src = fetchFromGitHub {
-    # The release was not git tagged.
     owner = "bitcraft";
     repo = "PyTMX";
-    rev = "eb96efea30d57b731654b2a167d86b8b553b147d";
-    sha256 = "1g1j4w75zw76p5f8m5v0hdigdlva2flf0ngyk8nvqcwzcl5vq5wc";
+    rev = version;
+    sha256 = "0v07zhvzvl2qcqhjzgfzm8hgayq38gaqcxxkyhlq9n0hlk93nm97";
   };
 
   propagatedBuildInputs = [ pygame pyglet pysdl2 six ];
 
+  pythonImportsCheck = [
+    "pytmx.pytmx"
+    "pytmx.util_pygame"
+    "pytmx.util_pyglet"
+    "pytmx.util_pysdl2"
+  ];
+
   checkPhase = ''
     # Change into the test directory due to a relative resource path.
     cd tests/pytmx
@@ -28,7 +34,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/bitcraft/PyTMX";
     description = "Python library to read Tiled Map Editor's TMX maps";
-    license = licenses.lgpl3;
+    license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ oxzi ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytomlpp/default.nix b/nixpkgs/pkgs/development/python-modules/pytomlpp/default.nix
new file mode 100644
index 000000000000..19edd7057eb4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pytomlpp/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pybind11
+, pytestCheckHook
+, dateutil
+, doxygen
+, python
+, pelican
+, matplotlib
+}:
+
+buildPythonPackage rec {
+  pname = "pytomlpp";
+  version = "0.3.5";
+
+  src = fetchFromGitHub {
+    owner = "bobfang1992";
+    repo = pname;
+    rev = version;
+    fetchSubmodules = true;
+    sha256 = "1h06a2r0f5q4mml485113mn7a7585zmhqsk2p1apcybyydllcqda";
+  };
+
+  buildInputs = [ pybind11 ];
+
+  checkInputs = [
+    pytestCheckHook
+
+    dateutil
+    doxygen
+    python
+    pelican
+    matplotlib
+  ];
+
+  # pelican requires > 2.7
+  doCheck = !pythonOlder "3.6";
+
+  preCheck = ''
+    cd tests
+  '';
+
+  pythonImportsCheck = [ "pytomlpp" ];
+
+  meta = with lib; {
+    description = "A python wrapper for tomlplusplus";
+    homepage = "https://github.com/bobfang1992/pytomlpp";
+    license = licenses.mit;
+    maintainers = with maintainers; [ evils ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch-metric-learning/default.nix b/nixpkgs/pkgs/development/python-modules/pytorch-metric-learning/default.nix
index 285602bce4a8..e340d5eefada 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch-metric-learning/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch-metric-learning/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , isPy27
 , numpy
-, scikitlearn
+, scikit-learn
 , pytestCheckHook
 , pytorch
 , torchvision
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy
     pytorch
-    scikitlearn
+    scikit-learn
     torchvision
     tqdm
   ];
@@ -41,10 +41,16 @@ buildPythonPackage rec {
   disabledTests = [
     # requires FAISS (not in Nixpkgs)
     "test_accuracy_calculator_and_faiss"
+    "test_global_embedding_space_tester"
+    "test_with_same_parent_label_tester"
     # require network access:
     "test_get_nearest_neighbors"
     "test_tuplestoweights_sampler"
     "test_untrained_indexer"
+    "test_metric_loss_only"
+    "test_pca"
+    # flaky
+    "test_distributed_classifier_loss_and_miner"
   ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix b/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
index 1880a0e2bf93..41af9502c0c9 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
@@ -18,7 +18,7 @@ let
   pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
   srcs = import ./binary-hashes.nix version;
   unsupported = throw "Unsupported system";
-  version = "1.8.0";
+  version = "1.8.1";
 in buildPythonPackage {
   inherit version;
 
@@ -64,6 +64,7 @@ in buildPythonPackage {
   meta = with lib; {
     description = "Open source, prototype-to-production deep learning platform";
     homepage = "https://pytorch.org/";
+    changelog = "https://github.com/pytorch/pytorch/releases/tag/v${version}";
     license = licenses.unfree; # Includes CUDA and Intel MKL.
     platforms = platforms.linux;
     maintainers = with maintainers; [ danieldk ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
index bc838597038d..4855d1357106 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
@@ -1,14 +1,17 @@
 version: {
   x86_64-linux-37 = {
-    url = "https://download.pytorch.org/whl/cu102/torch-${version}-cp37-cp37m-linux_x86_64.whl";
-    hash = "sha256-bs29RJS0vy0xok3fvf8yvZlTibyGYqRUvUDT6M4gKQc=";
+    name = "torch-${version}-cp37-cp37m-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torch-${version}%2Bcu111-cp37-cp37m-linux_x86_64.whl";
+    hash = "sha256-lxj066PiB+S88GqQnXKgd9RCiKkMk3mctx/eBieZjAk=";
   };
   x86_64-linux-38 = {
-    url = "https://download.pytorch.org/whl/cu102/torch-${version}-cp38-cp38-linux_x86_64.whl";
-    hash = "sha256-+h45HMo5N9Xeox8xoagKAb1KgGLAOUSMJUu/WljrB4c=";
+    name = "torch-${version}-cp38-cp38-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torch-${version}%2Bcu111-cp38-cp38-linux_x86_64.whl";
+    hash = "sha256-qvTQMLz4CQPgalzUyYwz6rm+ExyWlIzI+FSMQhxM4eM=";
   };
   x86_64-linux-39 = {
-    url = "https://download.pytorch.org/whl/cu102/torch-${version}-cp39-cp39-linux_x86_64.whl";
-    hash = "sha256-Ixj6yGCuc9xkhsDeIiNnTZ72E5/HXxV68r+Nzk/KVSQ=";
+    name = "torch-${version}-cp39-cp39-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torch-${version}%2Bcu111-cp39-cp39-linux_x86_64.whl";
+    hash = "sha256-z0pzEiljU+E2x2SuOEAg86dmVY1iFZSDOCfoOAFhLQo=";
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/default.nix b/nixpkgs/pkgs/development/python-modules/pytorch/default.nix
index 59a8c74f709c..8fae54c84660 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/default.nix
@@ -6,7 +6,7 @@
   cudaArchList ? null,
 
   # Native build inputs
-  cmake, util-linux, linkFarm, symlinkJoin, which,
+  cmake, util-linux, linkFarm, symlinkJoin, which, pybind11,
 
   # Build inputs
   numactl,
@@ -216,6 +216,7 @@ in buildPythonPackage rec {
     util-linux
     which
     ninja
+    pybind11
   ] ++ lib.optionals cudaSupport [ cudatoolkit_joined ];
 
   buildInputs = [ blas blas.provider ]
diff --git a/nixpkgs/pkgs/development/python-modules/pytube/default.nix b/nixpkgs/pkgs/development/python-modules/pytube/default.nix
index 8bcfa8b6c7d9..086c3a8671b1 100644
--- a/nixpkgs/pkgs/development/python-modules/pytube/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytube/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pytube";
-  version = "10.7.2";
+  version = "10.8.3";
 
   disabled = pythonOlder "3.6";
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "pytube";
     repo = "pytube";
     rev = "v${version}";
-    sha256 = "sha256-85pHzfQYyqwX8mQ5msIojM/0FSfeaC12KJw4mXmji3g=";
+    sha256 = "sha256-U/TXA/0y5tsuj0q3kxacHk76wjYG6k8mPX5F3MpADmk=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyturbojpeg/default.nix b/nixpkgs/pkgs/development/python-modules/pyturbojpeg/default.nix
index abfc34e6481b..0011bc69bc56 100644
--- a/nixpkgs/pkgs/development/python-modules/pyturbojpeg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyturbojpeg/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pyturbojpeg";
-  version = "1.4.3";
+  version = "1.5.0";
 
   src = fetchPypi {
     pname = "PyTurboJPEG";
     inherit version;
-    sha256 = "sha256-Q7KVfR9kA32QPQFWgSSCVB5sNOmSF8y5J4dmBc14jvg=";
+    sha256 = "sha256-juy8gVqOXKSGGq+gOBO2BuJEL2RHjjCWJDrwRCvrZIE=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyu2f/default.nix b/nixpkgs/pkgs/development/python-modules/pyu2f/default.nix
index 281511192fe5..cf7b3eb2aeb0 100644
--- a/nixpkgs/pkgs/development/python-modules/pyu2f/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyu2f/default.nix
@@ -1,34 +1,30 @@
-{ stdenv, lib, fetchFromGitHub, buildPythonPackage,
-  six, mock, pyfakefs, unittest2, pytest
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, six
+, mock
+, pyfakefs
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "pyu2f";
-  version = "0.1.4";
+  version = "0.1.5a";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = version;
-    sha256 = "0waxdydvxn05a8ab9j235mz72x7p4pwa59pnxyk1zzbwxnpxb3p9";
+    sha256 = "0mx7bn1p3n0fxyxa82wg3c719hby7vqkxv57fhf7zvhlg2zfnr0v";
   };
 
-  # Platform detection for linux fails
-  postPatch = lib.optionalString stdenv.isLinux ''
-    rm pyu2f/tests/hid/macos_test.py
-  '';
-
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ pytest mock pyfakefs unittest2 ];
-
-  checkPhase = ''
-    pytest pyu2f/tests
-  '';
+  checkInputs = [ mock pyfakefs pytestCheckHook ];
 
   meta = with lib; {
     description = "U2F host library for interacting with a U2F device over USB";
-    homepage = "https://github.com/google/pyu2f/";
+    homepage = "https://github.com/google/pyu2f";
     license = licenses.asl20;
     maintainers = with maintainers; [ prusnak ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix b/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
index 8cd250f6e014..412b032db7f6 100644
--- a/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyupgrade";
-  version = "2.12.0";
+  version = "2.19.1";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "asottile";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pAZszyv7jXEwtQYzEk5Zq2ULP0K2vX0y6IvR6wYsJ9c=";
+    sha256 = "sha256-zDT8VskHEX4uldMvxnb9A+FKMuvZbtEcmdVl5mghTs4=";
   };
 
   checkInputs = [ pytestCheckHook ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyusb/default.nix b/nixpkgs/pkgs/development/python-modules/pyusb/default.nix
index 1ad312dd5d6a..43ae18741e1d 100644
--- a/nixpkgs/pkgs/development/python-modules/pyusb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyusb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchPypi, buildPythonPackage, libusb1, setuptools_scm }:
+{ lib, stdenv, fetchPypi, buildPythonPackage, libusb1, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "pyusb";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   # Fix the USB backend library lookup
diff --git a/nixpkgs/pkgs/development/python-modules/pyvcd/default.nix b/nixpkgs/pkgs/development/python-modules/pyvcd/default.nix
index 3684fee0d22e..09f995412fcd 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvcd/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvcd/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, setuptools_scm
+, setuptools-scm
 , six
 , pytest
 }:
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "071e51a8362908ad5a2a12f078185639b98b20b653a56f01679de169d0fa425d";
   };
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ six ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix b/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
index 393170cfb9f0..1146fe892f59 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "pyvesync";
-  version = "1.3.1";
+  version = "1.4.0";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "02fpbyg46mlpc2c1j4zylw9a1h6bacxvigrl3cndsf6fxlhfx15z";
+    sha256 = "sha256-xvHvZx22orJR94cRMyyXey27Ksh2/ULHRvv7xxXv11k=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
index fa3d2119ae87..cb0547dfe4ce 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
@@ -11,13 +11,17 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.0.6852";
+  version = "9.0.7912";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-O84QErqHIRYQZh9mR71opm+j7kb9a4s5f1yj0WNiJAM=";
+    sha256 = "sha256-KqTfu49Muicr5oJcXcoYpz3S7+0hk7dxbU7GMCDlJQA=";
   };
 
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace vex/Makefile-gcc --replace '/usr/bin/ar' 'ar'
+  '';
+
   propagatedBuildInputs = [
     archinfo
     bitstring
@@ -28,6 +32,7 @@ buildPythonPackage rec {
 
   preBuild = ''
     export CC=${stdenv.cc.targetPrefix}cc
+    substituteInPlace pyvex_c/Makefile --replace 'AR=ar' 'AR=${stdenv.cc.targetPrefix}ar'
   '';
 
   # No tests are available on PyPI, GitHub release has tests
diff --git a/nixpkgs/pkgs/development/python-modules/pyvisa-py/default.nix b/nixpkgs/pkgs/development/python-modules/pyvisa-py/default.nix
new file mode 100644
index 000000000000..0c87af03ecce
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyvisa-py/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, setuptools-scm
+, pyserial
+, pyusb
+, pyvisa
+, typing-extensions
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pyvisa-py";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "pyvisa";
+    repo = "pyvisa-py";
+    rev = version;
+    hash = "sha256-V1BS+BvHVI8h/rynLnOHvQdIR6RwQrNa2p2S6GQug98=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    pyserial
+    pyusb
+    pyvisa
+    typing-extensions
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postConfigure = ''
+    export SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"
+  '';
+
+  meta = with lib; {
+    description = "PyVISA backend that implements a large part of the Virtual Instrument Software Architecture in pure Python";
+    homepage = "https://github.com/pyvisa/pyvisa-py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mvnetbiz ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyvisa/default.nix b/nixpkgs/pkgs/development/python-modules/pyvisa/default.nix
new file mode 100644
index 000000000000..389adfbbb48c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyvisa/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, setuptools-scm
+, setuptools
+, typing-extensions
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pyvisa";
+  version = "1.11.3";
+
+  src = fetchFromGitHub {
+    owner = "pyvisa";
+    repo = "pyvisa";
+    rev = version;
+    hash = "sha256-Qe7W1zPI1aedLDnhkLTDPTa/lsNnCGik5Hu+jLn+meA=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    typing-extensions
+    setuptools
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  # Test can't find cli tool bin path correctly
+  disabledTests = [
+    "test_visa_info"
+  ];
+
+  postConfigure = ''
+    export SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"
+  '';
+
+  meta = with lib; {
+    description = "Python package for support of the Virtual Instrument Software Architecture (VISA)";
+    homepage = "https://github.com/pyvisa/pyvisa";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mvnetbiz ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pywebview/default.nix b/nixpkgs/pkgs/development/python-modules/pywebview/default.nix
index a020517dcce2..e750f234faf5 100644
--- a/nixpkgs/pkgs/development/python-modules/pywebview/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywebview/default.nix
@@ -6,7 +6,7 @@
 , pytest
 , pythonOlder
 , qt5
-, xvfb_run
+, xvfb-run
 }:
 
 buildPythonPackage rec {
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    xvfb_run
+    xvfb-run
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pywemo/default.nix b/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
index ceb190fe753a..7448f1f7f2c7 100644
--- a/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
@@ -47,6 +47,11 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    # https://github.com/NixOS/nixpkgs/issues/124165
+    "test_bridge_getdevicestatus"
+  ];
+
   pythonImportsCheck = [ "pywemo" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pywilight/default.nix b/nixpkgs/pkgs/development/python-modules/pywilight/default.nix
index 4fa4c0fa8542..425cba61ce3f 100644
--- a/nixpkgs/pkgs/development/python-modules/pywilight/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywilight/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "pywilight";
-  version = "0.0.68";
+  version = "0.0.70";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1s1xyw5hkfr4rlni1p9z4941pp1740fsg4a3b23a618hv2p1i4ww";
+    sha256 = "sha256-PLahGx75oEp4NIZB9PVRdA3cLBxhQsHTsnquy7WSEC8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pywizlight/default.nix b/nixpkgs/pkgs/development/python-modules/pywizlight/default.nix
index ba41712c236d..1461a7053022 100644
--- a/nixpkgs/pkgs/development/python-modules/pywizlight/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywizlight/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "pywizlight";
-  version = "0.4.6";
+  version = "0.4.7";
 
   src = fetchFromGitHub {
     owner = "sbidy";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-BCHLd1SbdHWrl7dcLD69t2K5Sa1WtGpMxTmMyDWl9u4=";
+    rev = version;
+    sha256 = "0zagdb90bxmf06fzpljhqgsgzg36zc1yhdibacfrx8bmnx3l657h";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyxb/default.nix b/nixpkgs/pkgs/development/python-modules/pyxb/default.nix
new file mode 100644
index 000000000000..3be79736e555
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyxb/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "PyXB";
+  version = "1.2.6";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1d17pyixbfvjyi2lb0cfp0ch8wwdf44mmg3r5pwqhyyqs66z601a";
+  };
+
+  pythonImportsCheck = [
+    "pyxb"
+  ];
+
+  # tests don't complete
+  # https://github.com/pabigot/pyxb/issues/130
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Python XML Schema Bindings";
+    homepage = "https://github.com/pabigot/pyxb";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyxnat/default.nix b/nixpkgs/pkgs/development/python-modules/pyxnat/default.nix
index 87f6b9756ed3..a72b46037753 100644
--- a/nixpkgs/pkgs/development/python-modules/pyxnat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyxnat/default.nix
@@ -5,6 +5,7 @@
 , nose
 , lxml
 , requests
+, six
 }:
 
 buildPythonPackage rec {
@@ -17,7 +18,11 @@ buildPythonPackage rec {
     sha256 = "22524120d744b50d25ef6bfc7052637e4ead9e2afac92563231ec89848f5adf5";
   };
 
-  propagatedBuildInputs = [ lxml requests ];
+  propagatedBuildInputs = [
+    lxml
+    requests
+    six
+  ];
 
   # future is not used, and pathlib is installed part of python38+
   # w/o an external package
diff --git a/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix b/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix
new file mode 100644
index 000000000000..7d1dcdeb1c7b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix
@@ -0,0 +1,41 @@
+{ buildPythonPackage, lib, fetchPypi, fetchpatch, numpy
+, pydantic, pint,  networkx, pytestrunner, pytestcov, pytest
+} :
+
+buildPythonPackage rec {
+  pname = "qcelemental";
+  version = "0.20.0";
+
+  checkInputs = [ pytestrunner pytestcov pytest ];
+  propagatedBuildInputs = [ numpy pydantic pint networkx ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "141vw36fmacj897q26kq2bl9l0d23lyqjfry6q46aa9087dcs7ni";
+  };
+
+  # FIXME: Fixed upstream but not released yet. Nevertheless critical for correct behaviour.
+  # See https://github.com/MolSSI/QCElemental/pull/265
+  patches = [
+    (fetchpatch {
+      name = "SearchPath1.patch";
+      url = "https://github.com/MolSSI/QCElemental/commit/2211a4e59690bcb14265a60f199a5efe74fe44db.diff";
+      sha256 = "1ibjvmdrc103jdj79xrr11y5yji5hc966rm4ihfhfzgbvfkbjg2l";
+    })
+    (fetchpatch {
+      name = "SearchPath2.patch";
+      url = "https://github.com/MolSSI/QCElemental/commit/5a32ce33e8142047b0a00d0036621fe2750e872a.diff";
+      sha256 = "0gmg70vdps7k6alqclwdlxkli9d8s1fphbdvyl8wy8xrh46jw6rk";
+    })
+  ];
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Periodic table, physical constants, and molecule parsing for quantum chemistry";
+    homepage = "http://docs.qcarchive.molssi.org/projects/qcelemental/en/latest/";
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/qcengine/default.nix b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
new file mode 100644
index 000000000000..847eeb23c9a1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
@@ -0,0 +1,37 @@
+{ buildPythonPackage, lib, fetchPypi, pyyaml, qcelemental, pydantic
+, py-cpuinfo, psutil, pytestrunner, pytest, pytestcov
+} :
+
+buildPythonPackage rec {
+  pname = "qcengine";
+  version = "0.19.0";
+
+  checkInputs = [
+    pytestrunner
+    pytestcov
+    pytest
+  ];
+
+  propagatedBuildInputs = [
+    pyyaml
+    qcelemental
+    pydantic
+    py-cpuinfo
+    psutil
+  ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0lz9r0fh31mcixdhayiwfc69cp8if9b3nkrk7gxdrb6vhbfrxhij";
+  };
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Quantum chemistry program executor and IO standardizer (QCSchema) for quantum chemistry";
+    homepage = "http://docs.qcarchive.molssi.org/projects/qcelemental/en/latest/";
+    license = licenses.bsd3;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-aer/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-aer/default.nix
index 54de098bdc46..89041f7508df 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit-aer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit-aer/default.nix
@@ -2,6 +2,7 @@
 , pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
   # C Inputs
 , blas
 , catch2
@@ -27,7 +28,7 @@
 
 buildPythonPackage rec {
   pname = "qiskit-aer";
-  version = "0.8.0";
+  version = "0.8.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -36,13 +37,30 @@ buildPythonPackage rec {
     owner = "Qiskit";
     repo = "qiskit-aer";
     rev = version;
-    hash = "sha256-CWF3ehLs0HBXnYH11r+2CQwIcxddAfQm3ulAf1agl/o=";
+    hash = "sha256-7NWM7qpMQ3vA6p0dhEPnkBjsPMdhceYTYcAD4tsClf0=";
   };
 
+  patches = [
+    (fetchpatch {
+      # https://github.com/Qiskit/qiskit-aer/pull/1250
+      name = "qiskit-aer-pr-1250-native-cmake_dl_libs.patch";
+      url = "https://github.com/Qiskit/qiskit-aer/commit/2bf04ade3e5411776817706cf82cc67a3b3866f6.patch";
+      sha256 = "0ldwzxxfgaad7ifpci03zfdaj0kqj0p3h94qgshrd2953mf27p6z";
+    })
+  ];
+  # Remove need for cmake python package
+  # pybind11 shouldn't be an install requirement, just build requirement.
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'cmake!=3.17,!=3.17.0'," "" \
+      --replace "'pybind11>=2.6'" ""
+  '';
+
   nativeBuildInputs = [
     cmake
     ninja
     scikit-build
+    pybind11
   ];
 
   buildInputs = [
@@ -58,14 +76,8 @@ buildPythonPackage rec {
     cvxpy
     cython  # generates some cython files at runtime that need to be cython-ized
     numpy
-    pybind11
   ];
 
-  # tries to install pypi cmake package, not needed
-  postPatch = ''
-    substituteInPlace setup.py --replace "'cmake!=3.17,!=3.17.0'," ""
-  '';
-
   # Disable using conan for build
   preBuild = ''
     export DISABLE_CONAN=1
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-aqua/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-aqua/default.nix
index b1cdd7f523cd..7069629470cd 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit-aqua/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit-aqua/default.nix
@@ -10,11 +10,10 @@
 , networkx
 , numpy
 , psutil
-, python
 , qiskit-ignis
 , qiskit-terra
 , quandl
-, scikitlearn
+, scikit-learn
 , yfinance
   # Optional inputs
 , withTorch ? false
@@ -34,7 +33,7 @@
 
 buildPythonPackage rec {
   pname = "qiskit-aqua";
-  version = "0.9.0";
+  version = "0.9.1";
 
   disabled = pythonOlder "3.6";
 
@@ -43,7 +42,7 @@ buildPythonPackage rec {
     owner = "Qiskit";
     repo = "qiskit-aqua";
     rev = version;
-    hash = "sha256-knue9uJih72UQHsvfXZ9AA94mol4ERa9Lo/GMcp+2hA=";
+    hash = "sha256-fptyqPrkUgl3UjtlEmDYORdX/SsONxWozQGEs/EahmU=";
   };
 
   # Optional packages: pyscf (see below NOTE) & pytorch. Can install via pip/nix if needed.
@@ -59,7 +58,7 @@ buildPythonPackage rec {
     qiskit-terra
     qiskit-ignis
     quandl
-    scikitlearn
+    scikit-learn
     yfinance
   ] ++ lib.optionals (withTorch) [ pytorch ]
   ++ lib.optionals (withPyscf) [ pyscf ]
@@ -97,8 +96,6 @@ buildPythonPackage rec {
       >> qiskit/optimization/__init__.py
   '';
 
-  postInstall = "rm -rf $out/${python.sitePackages}/docs";  # Remove docs dir b/c it can cause conflicts.
-
   checkInputs = [
     pytestCheckHook
     ddt
@@ -123,9 +120,6 @@ buildPythonPackage rec {
     "--ignore=test/chemistry/test_bopes_sampler.py"
   ];
   disabledTests = [
-    # Disabled due to missing pyscf
-    "test_validate" # test/chemistry/test_inputparser.py
-
     # Online tests
     "test_exchangedata"
     "test_yahoo"
@@ -163,6 +157,8 @@ buildPythonPackage rec {
     "test_eoh"
     "test_qasm_5"
     "test_uccsd_hf"
+  ] ++ lib.optionals (!withPyscf) [
+    "test_validate" # test/chemistry/test_inputparser.py
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix
index 80f060c66815..aa02de42fb32 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix
@@ -39,7 +39,7 @@ let
 in
 buildPythonPackage rec {
   pname = "qiskit-ibmq-provider";
-  version = "0.12.2";
+  version = "0.13.1";
 
   disabled = pythonOlder "3.6";
 
@@ -47,7 +47,7 @@ buildPythonPackage rec {
     owner = "Qiskit";
     repo = pname;
     rev = version;
-    sha256 = "0yil363mqssq0453nrwxgkjivzk3a4jgbnaf21bp7lwfcl2jdhqm";
+    hash = "sha256-DlHlXncttzGo4uVoh2aQ7urW6krN3ej2sJ/EwuxeF2I=";
   };
 
   propagatedBuildInputs = [
@@ -83,7 +83,9 @@ buildPythonPackage rec {
 
   # Skip tests that rely on internet access (mostly to IBM Quantum Experience cloud).
   # Options defined in qiskit.terra.test.testing_options.py::get_test_options
-  QISKIT_TESTS = "skip_online";
+  preCheck = ''
+    export QISKIT_TESTS=skip_online
+  '';
 
   meta = with lib; {
     description = "Qiskit provider for accessing the quantum devices and simulators at IBMQ";
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-ignis/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-ignis/default.nix
index 403fa0f05a9c..f7ebbee39f80 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit-ignis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit-ignis/default.nix
@@ -1,11 +1,11 @@
 { lib
+, stdenv
 , pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
-, python
 , numpy
 , qiskit-terra
-, scikitlearn
+, scikit-learn
 , scipy
   # Optional package inputs
 , withVisualization ? false
@@ -35,26 +35,21 @@ buildPythonPackage rec {
     hash = "sha256-L5fwCMsN03ojiDvKIyqsGfUnwej1P7bpyHlL6mu7nh0=";
   };
 
-  # hacky, fix https://github.com/Qiskit/qiskit-ignis/issues/532.
-  # TODO: remove on qiskit-ignis v0.5.2
-  postPatch = ''
-    substituteInPlace qiskit/ignis/mitigation/expval/base_meas_mitigator.py --replace "plt.axes" "'plt.axes'"
-  '';
-
   propagatedBuildInputs = [
     numpy
     qiskit-terra
-    scikitlearn
+    scikit-learn
     scipy
   ] ++ lib.optionals (withCvx) [ cvxpy ]
   ++ lib.optionals (withVisualization) [ matplotlib ]
   ++ lib.optionals (withJit) [ numba ];
-  postInstall = "rm -rf $out/${python.sitePackages}/docs"; # this dir can create conflicts
 
   # Tests
   pythonImportsCheck = [ "qiskit.ignis" ];
   dontUseSetuptoolsCheck = true;
-  preCheck = "export HOME=$TMPDIR";
+  preCheck = ''
+    export HOME=$TMPDIR
+  '';
   checkInputs = [
     pytestCheckHook
     ddt
@@ -63,7 +58,8 @@ buildPythonPackage rec {
   ];
   disabledTests = [
     "test_tensored_meas_cal_on_circuit" # Flaky test, occasionally returns result outside bounds
-    "test_qv_fitter" # execution hangs, ran for several minutes
+  ] ++ lib.optionals stdenv.isAarch64 [
+    "test_fitters" # Fails check that arrays are close. Might be due to aarch64 math issues.
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix
index a5faf69f942e..8b83c506808e 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
@@ -56,7 +57,7 @@ in
 
 buildPythonPackage rec {
   pname = "qiskit-terra";
-  version = "0.17.0";
+  version = "0.17.4";
 
   disabled = pythonOlder "3.6";
 
@@ -64,7 +65,7 @@ buildPythonPackage rec {
     owner = "Qiskit";
     repo = pname;
     rev = version;
-    hash = "sha256-LbNbaHAWAVG5YLc9juuwcOlrREBW6OjEl7VPtACfl3I=";
+    hash = "sha256-JyNuke+XPqjLVZbvPud9Y7k0+EmvETVKcOYcDldBiVo=";
   };
 
   nativeBuildInputs = [ cython ];
@@ -106,11 +107,17 @@ buildPythonPackage rec {
     "test/python/classical_function_compiler/"
   ];
   disabledTests = [
+    # Not working on matplotlib >= 3.4.0, checks images match.
+    "test_plot_circuit_layout"
+
     # Flaky tests
     "test_cx_equivalence"
     "test_pulse_limits"
+    "test_1q_random"
   ] ++ lib.optionals (!withClassicalFunctionCompiler) [
     "TestPhaseOracle"
+  ] ++ lib.optionals stdenv.isAarch64 [
+    "test_circuit_init" # failed on aarch64, https://gist.github.com/r-rmcgibbo/c2e173d43ced4f6954811004f6b5b842
   ]
   # Disabling slow tests for build constraints
   ++ [
@@ -155,8 +162,8 @@ buildPythonPackage rec {
     pushd $PACKAGEDIR
   '';
   postCheck = ''
-    rm -rf test
-    rm -rf examples
+    rm -r test
+    rm -r examples
     popd
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit/default.nix
index d2866d41c3ab..6cc24be1958a 100644
--- a/nixpkgs/pkgs/development/python-modules/qiskit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiskit/default.nix
@@ -15,7 +15,7 @@
 buildPythonPackage rec {
   pname = "qiskit";
   # NOTE: This version denotes a specific set of subpackages. See https://qiskit.org/documentation/release_notes.html#version-history
-  version = "0.25.0";
+  version = "0.26.2";
 
   disabled = pythonOlder "3.6";
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "qiskit";
     repo = "qiskit";
     rev = version;
-    hash = "sha256-pJM6d3AyFs9AexvQXG+8QQ4zwpFisJC16iBFR9gNSk0=";
+    hash = "sha256-QYWKKS7e/uCt5puWV4jA9Emp7M4Cyv2RUCxilbChWhw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/qscintilla-qt5/default.nix b/nixpkgs/pkgs/development/python-modules/qscintilla-qt5/default.nix
index dcbe213966f9..05c12c1c62af 100644
--- a/nixpkgs/pkgs/development/python-modules/qscintilla-qt5/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qscintilla-qt5/default.nix
@@ -10,7 +10,7 @@ buildPythonPackage {
   src = qscintilla.src;
   format = "other";
 
-  nativeBuildInputs = [ sip qtbase ];
+  nativeBuildInputs = [ sip_4 qtbase ];
   buildInputs = [ qscintilla ];
   propagatedBuildInputs = [ pyqt5 ];
 
@@ -40,7 +40,7 @@ buildPythonPackage {
       --qsci-libdir=${qscintilla}/lib \
       --pyqt-sipdir=${pyqt5}/share/sip/PyQt5 \
       --qsci-sipdir=$out/share/sip/PyQt5 \
-      --sip-incdir=${sip}/include
+      --sip-incdir=${sip_4}/include
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/radio_beam/default.nix b/nixpkgs/pkgs/development/python-modules/radio_beam/default.nix
index f1f3200bb7b0..58137e3adbdb 100644
--- a/nixpkgs/pkgs/development/python-modules/radio_beam/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/radio_beam/default.nix
@@ -2,9 +2,8 @@
 , fetchPypi
 , buildPythonPackage
 , astropy
-, pytest
-, pytest-astropy
-, astropy-helpers
+, pytestCheckHook
+, pytest-doctestplus
 , scipy
 }:
 
@@ -13,25 +12,18 @@ buildPythonPackage rec {
   version = "0.3.3";
 
   src = fetchPypi {
-    inherit pname version;
+    inherit version;
+    pname = "radio-beam";
     sha256 = "e34902d91713ccab9f450b9d3e82317e292cf46a30bd42f9ad3c9a0519fcddcd";
   };
 
   propagatedBuildInputs = [ astropy ];
 
-  nativeBuildInputs = [ astropy-helpers ];
-
-  # Disable automatic update of the astropy-helper module
-  postPatch = ''
-    substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False"
-  '';
-
-  checkInputs = [ pytest pytest-astropy scipy ];
+  checkInputs = [ pytestCheckHook pytest-doctestplus scipy ];
 
   # Tests must be run in the build directory
-  checkPhase = ''
+  preCheck = ''
     cd build/lib
-    pytest
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/development/python-modules/ramlfications/default.nix b/nixpkgs/pkgs/development/python-modules/ramlfications/default.nix
index c3ae88d1775c..081a3a285718 100644
--- a/nixpkgs/pkgs/development/python-modules/ramlfications/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ramlfications/default.nix
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     description = "A Python RAML parser.";
     homepage    = "https://ramlfications.readthedocs.org";
     license     = licenses.asl20;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     platforms   = platforms.all;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/random2/default.nix b/nixpkgs/pkgs/development/python-modules/random2/default.nix
index 6845a5707da7..cb84d32ef414 100644
--- a/nixpkgs/pkgs/development/python-modules/random2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/random2/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPyPy
+, fetchpatch
 }:
 
 buildPythonPackage rec {
@@ -15,6 +16,14 @@ buildPythonPackage rec {
     sha256 = "34ad30aac341039872401595df9ab2c9dc36d0b7c077db1cea9ade430ed1c007";
   };
 
+  patches = [
+    # Patch test suite for python >= 3.9
+    (fetchpatch {
+      url = "https://github.com/strichter/random2/pull/3/commits/1bac6355d9c65de847cc445d782c466778b94fbd.patch";
+      sha256 = "064137pg1ilv3f9r10123lqbqz45070jca8pjjyp6gpfd0yk74pi";
+    })
+  ];
+
   meta = with lib; {
     homepage = "http://pypi.python.org/pypi/random2";
     description = "Python 3 compatible Python 2 `random` Module";
diff --git a/nixpkgs/pkgs/development/python-modules/reproject/default.nix b/nixpkgs/pkgs/development/python-modules/reproject/default.nix
index 98bed15cfa06..999c68823805 100644
--- a/nixpkgs/pkgs/development/python-modules/reproject/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/reproject/default.nix
@@ -10,7 +10,7 @@
 , scipy
 , pytest
 , pytest-astropy
-, setuptools_scm
+, setuptools-scm
 , cython
 }:
 
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [ numpy astropy astropy-healpix astropy-helpers scipy ];
-  nativeBuildInputs = [ astropy-helpers cython astropy-extension-helpers setuptools_scm ];
+  nativeBuildInputs = [ astropy-helpers cython astropy-extension-helpers setuptools-scm ];
   checkInputs = [ pytest pytest-astropy ];
 
   # Tests must be run in the build directory
diff --git a/nixpkgs/pkgs/development/python-modules/requests-http-signature/default.nix b/nixpkgs/pkgs/development/python-modules/requests-http-signature/default.nix
index 225a8f149e47..7a27055aba2a 100644
--- a/nixpkgs/pkgs/development/python-modules/requests-http-signature/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/requests-http-signature/default.nix
@@ -1,27 +1,40 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, cryptography
 , requests
-, python
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "requests-http-signature";
-  version = "0.1.0";
+  version = "0.2.0";
 
   # .pem files for tests aren't present on PyPI
   src = fetchFromGitHub {
     owner = "pyauth";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0y96wsbci296m1rcxx0ybx8r44rdvyb59p1jl27p7rgz7isr3kx1";
+    sha256 = "1jsplqrxadjsc86f0kb6dgpblgwplxrpi0ql1a714w8pbbz4z3h7";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    cryptography
+    requests
+  ];
 
-  checkPhase = ''
-    ${python.interpreter} test/test.py
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "test/test.py" ];
+
+  disabledTests = [
+    # Test require network access
+    "test_readme_example"
+  ];
+
+  pythonImportsCheck = [ "requests_http_signature" ];
 
   meta = with lib; {
     description = "A Requests auth module for HTTP Signature";
diff --git a/nixpkgs/pkgs/development/python-modules/resolvelib/default.nix b/nixpkgs/pkgs/development/python-modules/resolvelib/default.nix
new file mode 100644
index 000000000000..db3ecbcc86e6
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/resolvelib/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, commentjson
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "resolvelib";
+  version = "0.7.0";
+
+  src = fetchFromGitHub {
+    owner = "sarugaku";
+    repo = "resolvelib";
+    rev = version;
+    sha256 = "0r7cxwrfvpqz4kd7pdf8fsynzlmi6c754jd5hzd6vssc1zlyvvhx";
+  };
+
+  checkInputs = [
+    commentjson
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Resolve abstract dependencies into concrete ones";
+    homepage = "https://github.com/sarugaku/resolvelib";
+    license = licenses.isc;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/respx/default.nix b/nixpkgs/pkgs/development/python-modules/respx/default.nix
index 68da058194bf..0a3fa27a8086 100644
--- a/nixpkgs/pkgs/development/python-modules/respx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/respx/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "respx";
-  version = "0.16.3";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "lundberg";
     repo = pname;
     rev = version;
-    sha256 = "0if9sg83rznl37hsjw6pfk78jpxi421g9p21wd92jcd6073g4nbd";
+    sha256 = "sha256-unGAIsslGXOUHXr0FKzC9bX6+Q3mNGZ9Z/dtjz0gkj4=";
   };
 
   # Coverage is under 100 % due to the excluded tests
diff --git a/nixpkgs/pkgs/development/python-modules/retworkx/default.nix b/nixpkgs/pkgs/development/python-modules/retworkx/default.nix
index c4b7a6323e4d..f4490c72876d 100644
--- a/nixpkgs/pkgs/development/python-modules/retworkx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/retworkx/default.nix
@@ -1,18 +1,23 @@
 { lib
+, stdenv
 , buildPythonPackage
 , pythonOlder
 , rustPlatform
 , fetchFromGitHub
-
+, libiconv
   # Check inputs
 , pytestCheckHook
+, fixtures
+, graphviz
+, matplotlib
 , networkx
 , numpy
+, pydot
 }:
 
 buildPythonPackage rec {
   pname = "retworkx";
-  version = "0.8.0";
+  version = "0.9.0";
   format = "pyproject";
   disabled = pythonOlder "3.6";
 
@@ -20,22 +25,29 @@ buildPythonPackage rec {
     owner = "Qiskit";
     repo = "retworkx";
     rev = version;
-    sha256 = "0plpri6a3d6f1000kmcah9066vq2i37d14bdf8sm96493fhpqhrd";
+    hash = "sha256-1W7DexS+ECAPsxyZAF36xcEguFkjUMX9lDBylNVPqyk=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-+k779gmge8wDdoZrWn9ND47kUqt7pqe75Zuj2Byfefo=";
+    hash = "sha256-y5l7jqrlk3ONHefZPS31IvcaO9ttXWLM7fIUmNVwbco=";
   };
 
   nativeBuildInputs = with rustPlatform; [ cargoSetupHook maturinBuildHook ];
 
-  # Needed b/c need to check AFTER python wheel is installed (using Rust Build, not buildPythonPackage)
-  doCheck = false;
-  doInstallCheck = true;
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
 
-  installCheckInputs = [ pytestCheckHook networkx numpy ];
+  pythonImportsCheck = [ "retworkx" ];
+  checkInputs = [
+    pytestCheckHook
+    fixtures
+    graphviz
+    matplotlib
+    networkx
+    numpy
+    pydot
+  ];
 
   preCheck = ''
     export TESTDIR=$(mktemp -d)
diff --git a/nixpkgs/pkgs/development/python-modules/rfc3339-validator/default.nix b/nixpkgs/pkgs/development/python-modules/rfc3339-validator/default.nix
new file mode 100644
index 000000000000..6294eee7f346
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/rfc3339-validator/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+, pytestCheckHook
+, hypothesis
+, six
+, strict-rfc3339
+}:
+
+buildPythonPackage rec {
+  pname = "rfc3339-validator";
+  version = "0.1.4";
+
+  src = fetchPypi {
+    pname = "rfc3339_validator";
+    inherit version;
+    sha256 = "0srg0b89aikzinw72s433994k5gv5lfyarq1adhas11kz6yjm2hk";
+  };
+
+  propagatedBuildInputs = [ six ];
+
+  checkInputs = [ pytestCheckHook hypothesis strict-rfc3339 ];
+  pythonImportsCheck = [ "rfc3339_validator" ];
+
+  meta = with lib; {
+    description = "RFC 3339 validator for Python";
+    homepage = "https://github.com/naimetti/rfc3339-validator";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/rich/default.nix b/nixpkgs/pkgs/development/python-modules/rich/default.nix
index 52bef42f270f..d292eaa52231 100644
--- a/nixpkgs/pkgs/development/python-modules/rich/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rich/default.nix
@@ -6,7 +6,7 @@
 , colorama
 , dataclasses
 , ipywidgets
-, poetry
+, poetry-core
 , pygments
 , typing-extensions
 , pytestCheckHook
@@ -14,27 +14,33 @@
 
 buildPythonPackage rec {
   pname = "rich";
-  version = "9.13.0";
+  version = "10.1.0";
+  format = "pyproject";
+  disabled = pythonOlder "3.6";
 
-  # tests not included in pypi tarball
   src = fetchFromGitHub {
     owner = "willmcgugan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0si3rzhg8wfxw4aakkp8sr6nbzfa54rl0w92macd1338q90ha4ly";
+    sha256 = "sha256-HH+k9uiK34yoqu83rknCIe2DpoqJRHkcqABuj8zjzqs=";
   };
-  format = "pyproject";
 
-  nativeBuildInputs = [ poetry ];
+  nativeBuildInputs = [ poetry-core ];
+
   propagatedBuildInputs = [
     CommonMark
     colorama
     ipywidgets
     pygments
     typing-extensions
-  ] ++ lib.optional (pythonOlder "3.7") dataclasses;
+  ] ++ lib.optional (pythonOlder "3.7") [
+    dataclasses
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  checkInputs = [ pytestCheckHook ];
   pythonImportsCheck = [ "rich" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/ripser/default.nix b/nixpkgs/pkgs/development/python-modules/ripser/default.nix
index acd017a7a2e8..7bc7df0b8fd5 100644
--- a/nixpkgs/pkgs/development/python-modules/ripser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ripser/default.nix
@@ -5,7 +5,7 @@
 , cython
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , persim
 , pytest
 }:
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     cython
     numpy
     scipy
-    scikitlearn
+    scikit-learn
     persim
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/roombapy/default.nix b/nixpkgs/pkgs/development/python-modules/roombapy/default.nix
index 9c438bde7562..459037d6191e 100644
--- a/nixpkgs/pkgs/development/python-modules/roombapy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/roombapy/default.nix
@@ -1,31 +1,42 @@
-{ buildPythonPackage
+{ lib
+, amqtt
+, buildPythonPackage
 , fetchFromGitHub
-, hbmqtt
-, lib
 , paho-mqtt
-, poetry
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "roombapy";
-  version = "1.6.2-1";
+  version = "1.6.3";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "pschmitt";
     repo = "roombapy";
     rev = version;
-    sha256 = "14k7bys479xwpa4alpdwphzmxm3x8kc48nfqnshn1wj94vyxc425";
+    sha256 = "sha256-GkDfIC2jx4Mpguk/Wu45pZw0czhabJwTz58WYSLCOV8=";
   };
 
-  format = "pyproject";
+  nativeBuildInputs = [ poetry-core ];
 
-  nativeBuildInputs = [ poetry ];
   propagatedBuildInputs = [ paho-mqtt ];
 
-  checkInputs = [ hbmqtt pytest-asyncio pytestCheckHook ];
-  pytestFlagsArray = [ "tests/" "--ignore=tests/test_discovery.py" ];
+  checkInputs = [
+    amqtt
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Requires network access
+    "tests/test_discovery.py"
+  ];
+
   pythonImportsCheck = [ "roombapy" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/rst2ansi/default.nix b/nixpkgs/pkgs/development/python-modules/rst2ansi/default.nix
new file mode 100644
index 000000000000..e161f56d3177
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/rst2ansi/default.nix
@@ -0,0 +1,20 @@
+{ lib, buildPythonPackage, fetchPypi, docutils, }:
+
+buildPythonPackage rec {
+  pname = "rst2ansi";
+  version = "0.1.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-Gxf7mmKNQPV5M60aOqlSNGREvgaUaVCOc+lQYNoz/m8=";
+  };
+
+  propagatedBuildInputs = [ docutils ];
+
+  meta = with lib; {
+    description = "A rst converter to ansi-decorated console output";
+    homepage = "https://github.com/Snaipe/python-rst-to-ansi";
+    license = licenses.mit;
+    maintainers = with maintainers; [ vojta001 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix b/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix
index a1d8102fecc1..e1565fa6c30c 100644
--- a/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, cython, alsaLib }:
+{ lib, buildPythonPackage, fetchPypi, cython, alsa-lib }:
 
 buildPythonPackage rec {
   pname = "rtmidi-python";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [ cython ];
-  buildInputs = [ alsaLib ];
+  buildInputs = [ alsa-lib ];
 
   setupPyBuildFlags = [ "--from-cython" ];
 
@@ -29,6 +29,6 @@ buildPythonPackage rec {
     description = "Python wrapper for RtMidi";
     homepage = "https://github.com/superquadratic/rtmidi-python";
     license = licenses.mit;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/rtoml/default.nix b/nixpkgs/pkgs/development/python-modules/rtoml/default.nix
new file mode 100644
index 000000000000..f50ad558176e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/rtoml/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, setuptools-rust
+, rustPlatform
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "rtoml";
+  version = "0.6.1";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "samuelcolvin";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "07bf30if1wmbqjp5n4ib43n6frx8ybyxc9fndxncq7aylkrhd7hy";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    sha256 = "1q082sdac5vm4l3b45rfjp4vppp9y9qhagdjqqfdz8gdhm1k8yyy";
+  };
+
+  nativeBuildInputs = with rustPlatform; [
+    setuptools-rust
+    rust.rustc
+    rust.cargo
+    cargoSetupHook
+  ];
+
+  pythonImportsCheck = [ "rtoml" ];
+
+  checkInputs = [ pytestCheckHook ];
+  preCheck = ''
+    cd tests
+  '';
+
+  meta = with lib; {
+    description = "Rust based TOML library for python";
+    homepage = "https://github.com/samuelcolvin/rtoml";
+    license = licenses.mit;
+    maintainers = with maintainers; [ evils ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/runway-python/default.nix b/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
index 69b928aad089..9244a94d2357 100644
--- a/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
@@ -1,33 +1,43 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, pythonAtLeast
+, fetchFromGitHub
+, colorcet
+, cryptography
 , flask
 , flask-compress
 , flask-cors
 , flask-sockets
+, gevent
 , imageio
 , numpy
-, scipy
 , pillow
-, gevent
-, wget
+, pyopenssl
+, scipy
 , six
-, colorcet
 , unidecode
 , urllib3
+, wget
+, deepdiff
+, pytestCheckHook
+, pytestcov
+, websocket_client
 }:
 
 buildPythonPackage rec {
   pname = "runway-python";
   version = "0.6.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "66cf1517dd817bf6db3792608920274f964dd0ced8dabecd925b8bc17aa95740";
+  src = fetchFromGitHub {
+    owner = "runwayml";
+    repo = "model-sdk";
+    rev = version;
+    sha256 = "1ww2wai1qnly8i7g42vhkkbs4yp7wi9x4fjdxsg9fl3izjra0zs2";
   };
 
   propagatedBuildInputs = [
     colorcet
+    cryptography
     flask
     flask-compress
     flask-cors
@@ -36,6 +46,7 @@ buildPythonPackage rec {
     imageio
     numpy
     pillow
+    pyopenssl
     scipy
     six
     unidecode
@@ -43,13 +54,30 @@ buildPythonPackage rec {
     wget
   ];
 
-  # tests are not packaged in the released tarball
-  doCheck = false;
-
   pythonImportsCheck = [
     "runway"
   ];
 
+  checkInputs = [
+    deepdiff
+    pytestCheckHook
+    pytestcov
+    websocket_client
+  ];
+
+  disabledTests = [
+    # these tests require network
+    "test_file_deserialization_remote"
+    "test_file_deserialization_absolute_directory"
+    "test_file_deserialization_remote_directory"
+  ] ++ lib.optionals (pythonAtLeast "3.9") [
+     # AttributeError: module 'base64' has no attribute 'decodestring
+     # https://github.com/runwayml/model-sdk/issues/99
+     "test_image_serialize_and_deserialize"
+     "test_segmentation_serialize_and_deserialize_colormap"
+     "test_segmentation_serialize_and_deserialize_labelmap"
+  ];
+
   meta = {
     description = "Helper library for creating Runway models";
     homepage = "https://github.com/runwayml/model-sdk";
diff --git a/nixpkgs/pkgs/development/python-modules/s3fs/default.nix b/nixpkgs/pkgs/development/python-modules/s3fs/default.nix
index 86701865861f..63a9e722f2c1 100644
--- a/nixpkgs/pkgs/development/python-modules/s3fs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/s3fs/default.nix
@@ -1,24 +1,38 @@
-{ lib, buildPythonPackage, fetchPypi, docutils, aiobotocore, fsspec }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, docutils
+, aiobotocore
+, fsspec
+}:
 
 buildPythonPackage rec {
   pname = "s3fs";
-  version = "0.5.2";
+  version = "2021.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "87e5210415db17b9de18c77bcfc4a301570cc9030ee112b77dc47ab82426bae1";
+    sha256 = "sha256-cEJVMIFMaC3E9829ofKTCtgy2/G+40G1yQURxUzBJpA=";
   };
 
-  buildInputs = [ docutils ];
-  propagatedBuildInputs = [ aiobotocore fsspec ];
+  buildInputs = [
+    docutils
+  ];
+
+  propagatedBuildInputs = [
+    aiobotocore
+    fsspec
+  ];
 
   # Depends on `moto` which has a long dependency chain with exact
   # version requirements that can't be made to work with current
   # pythonPackages.
   doCheck = false;
 
+  pythonImportsCheck = [ "s3fs" ];
+
   meta = with lib; {
-    description = "S3FS builds on boto3 to provide a convenient Python filesystem interface for S3.";
+    description = "S3FS builds on boto3 to provide a convenient Python filesystem interface for S3";
     homepage = "https://github.com/dask/s3fs/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ teh ];
diff --git a/nixpkgs/pkgs/development/python-modules/sacn/default.nix b/nixpkgs/pkgs/development/python-modules/sacn/default.nix
index 9b1e935d6ed9..46678504cab6 100644
--- a/nixpkgs/pkgs/development/python-modules/sacn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sacn/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "sacn";
-  version = "1.6.2";
+  version = "1.6.4";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2fea82a1dd83b0a67dc0be68a53b1fef1c44b12f3f018e47ac736bd15b36c068";
+    sha256 = "1abkalzpy8bj2hpx563bxii5h0gv9v89f0yp9clc1l76amyf6dj2";
   };
 
   # no tests
diff --git a/nixpkgs/pkgs/development/python-modules/sanic-auth/default.nix b/nixpkgs/pkgs/development/python-modules/sanic-auth/default.nix
index c78b6f13d152..38d73d461c2d 100644
--- a/nixpkgs/pkgs/development/python-modules/sanic-auth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sanic-auth/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, sanic, pytestCheckHook }:
+{ lib, buildPythonPackage, fetchPypi, sanic, sanic-testing, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "Sanic-Auth";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ sanic ];
 
-  checkInputs = [ pytestCheckHook ];
+  checkInputs = [ pytestCheckHook sanic-testing ];
 
   pythonImportsCheck = [ "sanic_auth" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/sanic-routing/default.nix b/nixpkgs/pkgs/development/python-modules/sanic-routing/default.nix
new file mode 100644
index 000000000000..76eb72dc7086
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sanic-routing/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pytest-asyncio
+}:
+
+buildPythonPackage rec {
+  pname = "sanic-routing";
+  version = "0.6.2";
+
+  src = fetchFromGitHub {
+    owner = "sanic-org";
+    repo = "sanic-routing";
+    rev = "v${version}";
+    hash = "sha256-ZMl8PB9E401pUfUJ4tW7nBx1TgPQQtx9erVni3zP+lo=";
+  };
+
+  checkInputs = [ pytestCheckHook pytest-asyncio ];
+  pythonImportsCheck = [ "sanic_routing" ];
+
+  meta = with lib; {
+    description = "Core routing component for the Sanic web framework";
+    homepage = "https://github.com/sanic-org/sanic-routing";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sanic-testing/default.nix b/nixpkgs/pkgs/development/python-modules/sanic-testing/default.nix
new file mode 100644
index 000000000000..e5194e36bd23
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sanic-testing/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, httpcore
+, httpx
+, pytest-asyncio
+, sanic
+, websockets
+}:
+
+buildPythonPackage rec {
+  pname = "sanic-testing";
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "sanic-org";
+    repo = "sanic-testing";
+    rev = "v${version}";
+    hash = "sha256-hBAq+/BKs0a01M89Nb8HaClqxB+W5PTfjVzef/m9SWs=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'httpx>=0.16, <0.18' 'httpx' \
+      --replace 'httpcore==0.12.*' 'httpcore'
+  '';
+
+  propagatedBuildInputs = [ httpx sanic websockets httpcore ];
+
+  # `sanic` is explicitly set to null when building `sanic` itself
+  # to prevent infinite recursion.  In that case we skip running
+  # the package at all.
+  doCheck = sanic != null;
+  dontUsePythonImportsCheck = sanic == null;
+
+  checkInputs = [ pytestCheckHook pytest-asyncio ];
+  pythonImportsCheck = [ "sanic_testing" ];
+
+  meta = with lib; {
+    description = "Core testing clients for the Sanic web framework";
+    homepage = "https://github.com/sanic-org/sanic-testing";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sanic/default.nix b/nixpkgs/pkgs/development/python-modules/sanic/default.nix
index e5995ed0b1e8..5f610f6feab0 100644
--- a/nixpkgs/pkgs/development/python-modules/sanic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sanic/default.nix
@@ -1,42 +1,50 @@
 { lib, buildPythonPackage, fetchPypi, doCheck ? true
-, aiofiles, httptools, httpx, multidict, ujson, uvloop, websockets
-, pytestCheckHook, beautifulsoup4, gunicorn, httpcore, uvicorn
-, pytest-asyncio, pytest-benchmark, pytest-dependency, pytest-sanic, pytest-sugar, pytestcov
+, aiofiles, httptools, multidict, sanic-routing, ujson, uvloop, websockets
+, pytestCheckHook, beautifulsoup4, gunicorn, uvicorn, sanic-testing
+, pytest-benchmark, pytest-sanic, pytest-sugar, pytestcov
 }:
 
 buildPythonPackage rec {
   pname = "sanic";
-  version = "21.3.2";
+  version = "21.3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "84a04c5f12bf321bed3942597787f1854d15c18f157aebd7ced8c851ccc49e08";
+    sha256 = "1cbd12b9138b3ca69656286b0be91fff02b826e8cb72dd76a2ca8c5eb1288d8e";
   };
 
   postPatch = ''
+    # Loosen dependency requirements.
     substituteInPlace setup.py \
-      --replace '"multidict==5.0.0"' '"multidict"' \
-      --replace '"httpx==0.15.4"' '"httpx"' \
-      --replace '"httpcore==0.3.0"' '"httpcore"' \
-      --replace '"pytest==5.2.1"' '"pytest"'
+      --replace '"pytest==5.2.1"' '"pytest"' \
+      --replace '"gunicorn==20.0.4"' '"gunicorn"' \
+      --replace '"pytest-sanic",' ""
+    # Patch a request headers test to allow brotli encoding
+    # (we build httpx with brotli support, upstream doesn't).
+    substituteInPlace tests/test_headers.py \
+      --replace "deflate\r\n" "deflate, br\r\n"
   '';
 
   propagatedBuildInputs = [
-    aiofiles httptools httpx multidict ujson uvloop websockets
+    sanic-routing httptools uvloop ujson aiofiles websockets multidict
   ];
 
   checkInputs = [
-    pytestCheckHook beautifulsoup4 gunicorn httpcore uvicorn
-    pytest-asyncio pytest-benchmark pytest-dependency pytest-sanic pytest-sugar pytestcov
+    sanic-testing gunicorn pytestcov beautifulsoup4 pytest-sanic pytest-sugar
+    pytest-benchmark pytestCheckHook uvicorn
   ];
 
   inherit doCheck;
 
   disabledTests = [
-    "test_gunicorn" # No "examples" directory in pypi distribution.
-    "test_logo" # Fails to filter out "DEBUG asyncio:selector_events.py:59 Using selector: EpollSelector"
-    "test_zero_downtime" # No "examples.delayed_response.app" module in pypi distribution.
-    "test_reloader_live" # OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 42104)
+    # No "examples" directory in pypi distribution
+    "test_gunicorn"
+    "test_zero_downtime"
+    # flaky
+    "test_keep_alive_client_timeout"
+    "test_check_timeouts_request_timeout"
+    "test_check_timeouts_response_timeout"
+    "test_reloader_live"
   ];
 
   __darwinAllowLocalNetworking = true;
@@ -45,8 +53,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A microframework based on uvloop, httptools, and learnings of flask";
-    homepage = "https://github.com/channelcat/sanic/";
+    homepage = "https://github.com/sanic-org/sanic/";
     license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc AluisioASG ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sapi-python-client/default.nix b/nixpkgs/pkgs/development/python-modules/sapi-python-client/default.nix
index 222b4c60c7f2..58cdfe646c65 100644
--- a/nixpkgs/pkgs/development/python-modules/sapi-python-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sapi-python-client/default.nix
@@ -1,4 +1,4 @@
-{ lib, git, setuptools, setuptools_scm, fetchFromGitHub, requests, boto3, buildPythonPackage, responses }:
+{ lib, git, setuptools, setuptools-scm, fetchFromGitHub, requests, boto3, buildPythonPackage, responses }:
 
 buildPythonPackage rec {
     pname = "sapi-python-client";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
     doCheck = false; # requires API token and an active keboola bucket
 
-    nativeBuildInputs = [ git setuptools_scm ];
+    nativeBuildInputs = [ git setuptools-scm ];
 
     propagatedBuildInputs = [ setuptools requests boto3 responses ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-bio/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-bio/default.nix
index f13fecc08551..d2c32fc138af 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-bio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-bio/default.nix
@@ -12,7 +12,7 @@
 , pandas
 , scipy
 , hdmedians
-, scikitlearn
+, scikit-learn
 , coverage
 , python
 , isPy3k
@@ -30,7 +30,7 @@ buildPythonPackage rec {
 
   buildInputs = [ cython ];
   checkInputs = [ coverage ];
-  propagatedBuildInputs = [ lockfile cachecontrol decorator ipython matplotlib natsort numpy pandas scipy hdmedians scikitlearn ];
+  propagatedBuildInputs = [ lockfile cachecontrol decorator ipython matplotlib natsort numpy pandas scipy hdmedians scikit-learn ];
 
   # cython package not included for tests
   doCheck = false;
@@ -45,6 +45,7 @@ buildPythonPackage rec {
     homepage = "http://scikit-bio.org/";
     description = "Data structures, algorithms and educational resources for bioinformatics";
     license = licenses.bsd3;
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = [ maintainers.costrouc ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix
new file mode 100644
index 000000000000..281564601102
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, fetchFromGitHub
+, pythonAtLeast
+, buildPythonPackage
+, importlib-resources
+, pyyaml
+, requests
+, pytestCheckHook
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "scikit-hep-testdata";
+  version = "0.4.3";
+  format = "pyproject";
+
+  # fetch from github as we want the data files
+  # https://github.com/scikit-hep/scikit-hep-testdata/issues/60
+  src = fetchFromGitHub {
+    owner = "scikit-hep";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-3uy2uZb0Y9nOHlXtsDd9LGALvTXl1ZQ6P3m2dQ2ceHo=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+  propagatedBuildInputs = [
+    pyyaml
+    requests
+  ] ++ lib.optional (!pythonAtLeast "3.9") importlib-resources;
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  SKHEP_DATA = 1; # install the actual root files
+
+  doCheck = false; # tests require networking
+  pythonImportsCheck = [ "skhep_testdata" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/scikit-hep/scikit-hep-testdata";
+    description = "A common package to provide example files (e.g., ROOT) for testing and developing packages against";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/scikitlearn/0.20.nix b/nixpkgs/pkgs/development/python-modules/scikit-learn/0.20.nix
index 81915e83d2dc..81915e83d2dc 100644
--- a/nixpkgs/pkgs/development/python-modules/scikitlearn/0.20.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-learn/0.20.nix
diff --git a/nixpkgs/pkgs/development/python-modules/scikitlearn/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-learn/default.nix
index 7e9e37831e0d..6f4ad1d2bd15 100644
--- a/nixpkgs/pkgs/development/python-modules/scikitlearn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-learn/default.nix
@@ -7,7 +7,8 @@
 , glibcLocales
 , numpy
 , scipy
-, pytest
+, pytestCheckHook
+, pytest-xdist
 , pillow
 , cython
 , joblib
@@ -54,17 +55,50 @@ buildPythonPackage rec {
     joblib
     threadpoolctl
   ];
-  checkInputs = [ pytest ];
+
+  checkInputs = [ pytestCheckHook pytest-xdist ];
 
   LC_ALL="en_US.UTF-8";
 
+  preBuild = ''
+    export SKLEARN_BUILD_PARALLEL=$NIX_BUILD_CORES
+  '';
+
   doCheck = !stdenv.isAarch64;
-  # Skip test_feature_importance_regression - does web fetch
-  checkPhase = ''
+
+  disabledTests = [
+    # Skip test_feature_importance_regression - does web fetch
+    "test_feature_importance_regression"
+
+    # failing on macos
+    "check_regressors_train"
+    "check_classifiers_train"
+    "xfail_ignored_in_check_estimator"
+  ];
+
+  pytestFlagsArray = [
+    # verbose build outputs needed to debug hard-to-reproduce hydra failures
+    "-v"
+    "--pyargs" "sklearn"
+
+    # NuSVC memmap tests causes segmentation faults in certain environments
+    # (e.g. Hydra Darwin machines) related to a long-standing joblib issue
+    # (https://github.com/joblib/joblib/issues/563). See also:
+    # https://github.com/scikit-learn/scikit-learn/issues/17582
+    # Since we are overriding '-k' we need to include the 'disabledTests' from above manually.
+    "-k" "'not (NuSVC and memmap) ${toString (lib.forEach disabledTests (t: "and not ${t}"))}'"
+
+    "-n" "$NIX_BUILD_CORES"
+  ];
+
+  preCheck = ''
     cd $TMPDIR
-    HOME=$TMPDIR OMP_NUM_THREADS=1 pytest -k "not test_feature_importance_regression" --pyargs sklearn
+    export HOME=$TMPDIR
+    export OMP_NUM_THREADS=1
   '';
 
+  pythonImportsCheck = [ "sklearn" ];
+
   meta = with lib; {
     description = "A set of python modules for machine learning and data mining";
     changelog = let
@@ -75,6 +109,6 @@ buildPythonPackage rec {
       "https://scikit-learn.org/stable/whats_new/v${major}.${minor}.html#version-${dashVer}";
     homepage = "https://scikit-learn.org";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ davhau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-optimize/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-optimize/default.nix
index 0a5171f22fbf..3b7106ac4f2b 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-optimize/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-optimize/default.nix
@@ -5,7 +5,7 @@
 , matplotlib
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , pyaml
 , pytestCheckHook
 }:
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     matplotlib
     numpy
     scipy
-    scikitlearn
+    scikit-learn
     pyaml
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-tda/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-tda/default.nix
index f6d573573b9c..bf3e1d1ef469 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-tda/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-tda/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , matplotlib
 , numba
 , umap-learn
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy
     scipy
-    scikitlearn
+    scikit-learn
     matplotlib
     numba
     umap-learn
diff --git a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
index 6887eded3bfd..08a3a5967329 100644
--- a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
@@ -80,6 +80,7 @@ buildPythonPackage rec {
     "test_retry_dns_error"
     "test_custom_asyncio_loop_enabled_true"
     "test_custom_loop_asyncio"
+    "FileFeedStoragePreFeedOptionsTest"  # https://github.com/scrapy/scrapy/issues/5157
   ] ++ lib.optionals stdenv.isDarwin [
     "test_xmliter_encoding"
     "test_download"
diff --git a/nixpkgs/pkgs/development/python-modules/screenlogicpy/default.nix b/nixpkgs/pkgs/development/python-modules/screenlogicpy/default.nix
index 100c487acee6..1713e4c2521f 100644
--- a/nixpkgs/pkgs/development/python-modules/screenlogicpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/screenlogicpy/default.nix
@@ -1,22 +1,32 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pythonOlder
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "screenlogicpy";
-  version = "0.3.0";
+  version = "0.4.1";
   disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0gn2mf2n2g1ffdbijrydgb7dgd60lkvckblx6s86kxlkrp1wqgrq";
+  src = fetchFromGitHub {
+    owner = "dieselrabbit";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rmjxqqbkfcv2xz8ilml799bzffls678fvq784fab2xdv595fndd";
   };
 
-  # Project doesn't publish tests
-  # https://github.com/dieselrabbit/screenlogicpy/issues/8
-  doCheck = false;
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # Tests require network access
+    "test_gateway_discovery"
+    "test_asyncio_gateway_discovery"
+  ];
+
   pythonImportsCheck = [ "screenlogicpy" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/seabreeze/default.nix b/nixpkgs/pkgs/development/python-modules/seabreeze/default.nix
index 7580647f5a12..06802a8a2ce1 100644
--- a/nixpkgs/pkgs/development/python-modules/seabreeze/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/seabreeze/default.nix
@@ -1,8 +1,17 @@
 { lib
 , fetchFromGitHub
 , buildPythonPackage
-, pyusb
+, cython
+, git
+, pkgconfig
+, pytest-runner
+, setuptools-scm
+, future
 , numpy
+, pyusb
+, mock
+, pytestCheckHook
+, zipp
 }:
 
 ## Usage
@@ -18,19 +27,35 @@ buildPythonPackage rec {
     owner = "ap--";
     repo = "python-seabreeze";
     rev = "v${version}";
-    sha256 = "1lna3w1vsci35dhyi7qjvbb99gxvzk23k195c7by7kkrps844q1j";
+    sha256 = "1hm9aalpb9sdp8s7ckn75xvyiacp5678pv9maybm5nz0z2h29ibq";
+    leaveDotGit = true;
   };
 
+  nativeBuildInputs = [
+    cython
+    git
+    pkgconfig
+    pytest-runner
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    future
+    numpy
+    pyusb
+  ];
+
   postInstall = ''
     mkdir -p $out/etc/udev/rules.d
-    cp misc/10-oceanoptics.rules $out/etc/udev/rules.d/10-oceanoptics.rules
+    cp os_support/10-oceanoptics.rules $out/etc/udev/rules.d/10-oceanoptics.rules
   '';
 
-  # underlying c libraries are tested and fail
-  # (c libs are used with anaconda, which we don't care about as we use the alternative path, being that of pyusb).
-  doCheck = false;
-
-  propagatedBuildInputs = [ pyusb numpy ];
+  # few backends enabled, but still some tests
+  checkInputs = [
+    pytestCheckHook
+    mock
+    zipp
+  ];
 
   setupPyBuildFlags = [ "--without-cseabreeze" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/segments/default.nix b/nixpkgs/pkgs/development/python-modules/segments/default.nix
index 00953a8e9090..f1c0ad3bf0ef 100644
--- a/nixpkgs/pkgs/development/python-modules/segments/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/segments/default.nix
@@ -42,6 +42,6 @@ buildPythonPackage rec {
     description = "Unicode Standard tokenization routines and orthography profile segmentation";
     homepage = "https://github.com/cldf/segments";
     license = licenses.asl20;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/selenium/default.nix b/nixpkgs/pkgs/development/python-modules/selenium/default.nix
index 664f84933ed7..370d25489809 100644
--- a/nixpkgs/pkgs/development/python-modules/selenium/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/selenium/default.nix
@@ -6,6 +6,7 @@
 , geckodriver
 , urllib3
 , xorg
+, nixosTests
 }:
 
 
@@ -47,6 +48,10 @@ buildPythonPackage rec {
     cp -v x_ignore_nofocus.so selenium/webdriver/firefox/${if stdenv.is64bit then "amd64" else "x86"}/
   '';
 
+  passthru.tests = {
+    testing-bitwarden = nixosTests.bitwarden;
+  };
+
   meta = with lib; {
     description = "The selenium package is used to automate web browser interaction from Python";
     homepage = "http://www.seleniumhq.org";
diff --git a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
index ba5b37c8d9c7..9526c27eb175 100644
--- a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -29,11 +29,11 @@
 
 buildPythonPackage rec {
   pname = "sentry-sdk";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "71de00c9711926816f750bc0f57ef2abbcb1bfbdf5378c601df7ec978f44857a";
+    sha256 = "sha256-wSJ9ONyjFbo1GCNz8SnD4nIujtmZ5SWE5qyn0oeHBzk=";
   };
 
   checkInputs = [ blinker botocore chalice django flask tornado bottle rq falcon sqlalchemy werkzeug trytond
diff --git a/nixpkgs/pkgs/development/python-modules/seqeval/default.nix b/nixpkgs/pkgs/development/python-modules/seqeval/default.nix
index 15322632ad7d..9ed516e4d5c3 100644
--- a/nixpkgs/pkgs/development/python-modules/seqeval/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/seqeval/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , numpy
-, scikitlearn
+, scikit-learn
 , perl
 , pytestCheckHook
 }:
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     numpy
-    scikitlearn
+    scikit-learn
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools-declarative-requirements/default.nix b/nixpkgs/pkgs/development/python-modules/setuptools-declarative-requirements/default.nix
new file mode 100644
index 000000000000..ba6ff1649e62
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/setuptools-declarative-requirements/default.nix
@@ -0,0 +1,28 @@
+{ buildPythonPackage, fetchPypi, lib, pypiserver, pytestCheckHook
+, setuptools-scm, virtualenv }:
+
+buildPythonPackage rec {
+  pname = "setuptools-declarative-requirements";
+  version = "1.2.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1l8zmcnp9h8sp8hsw7b81djaa1a9yig0y7i4phh5pihqz1gdn7yi";
+  };
+
+  buildInputs = [ setuptools-scm ];
+
+  checkInputs = [ pypiserver pytestCheckHook virtualenv ];
+
+  # Tests use network
+  doCheck = false;
+
+  pythonImportsCheck = [ "declarative_requirements" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/s0undt3ch/setuptools-declarative-requirements";
+    description = "Declarative setuptools Config Requirements Files Support";
+    license = licenses.asl20;
+    maintainers = [ maintainers.austinbutler ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools-scm-git-archive/default.nix b/nixpkgs/pkgs/development/python-modules/setuptools-scm-git-archive/default.nix
index 98795eadfd4d..5dbb8ca2d10f 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptools-scm-git-archive/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptools-scm-git-archive/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools_scm, pytest }:
+{ lib, buildPythonPackage, fetchPypi, setuptools-scm, pytest }:
 
 buildPythonPackage rec {
   pname = "setuptools-scm-git-archive";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "6026f61089b73fa1b5ee737e95314f41cb512609b393530385ed281d0b46c062";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools_scm/2.nix b/nixpkgs/pkgs/development/python-modules/setuptools-scm/2.nix
index 4cf6f16fedfb..4cf6f16fedfb 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptools_scm/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptools-scm/2.nix
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools_scm/default.nix b/nixpkgs/pkgs/development/python-modules/setuptools-scm/default.nix
index a4cff6d056b0..a4cff6d056b0 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptools_scm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptools-scm/default.nix
diff --git a/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix b/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
index bef492e5dbcb..26b8d732be1d 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     description = "Setuptools plugin that makes unit tests execute with trial instead of pyunit.";
     homepage = "https://github.com/rutsky/setuptools-trial";
     license = licenses.bsd2;
-    maintainers = with maintainers; [ ryansydnor nand0p ];
+    maintainers = with maintainers; [ ryansydnor ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/shap/default.nix b/nixpkgs/pkgs/development/python-modules/shap/default.nix
index 5600f4a6aa0f..128dacfd55a8 100644
--- a/nixpkgs/pkgs/development/python-modules/shap/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/shap/default.nix
@@ -5,7 +5,7 @@
 , pytestCheckHook
 , numpy
 , scipy
-, scikitlearn
+, scikit-learn
 , pandas
 , tqdm
 , slicer
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy
     scipy
-    scikitlearn
+    scikit-learn
     pandas
     tqdm
     slicer
diff --git a/nixpkgs/pkgs/development/python-modules/sievelib/default.nix b/nixpkgs/pkgs/development/python-modules/sievelib/default.nix
index 7fd955abd17c..de023377c050 100644
--- a/nixpkgs/pkgs/development/python-modules/sievelib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sievelib/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, fetchpatch, mock
-, future, six, setuptools_scm }:
+, future, six, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "sievelib";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     })
   ];
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ future six ];
   checkInputs = [ mock ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/signedjson/default.nix b/nixpkgs/pkgs/development/python-modules/signedjson/default.nix
index 10de67ba0ef2..8409d9702e7f 100644
--- a/nixpkgs/pkgs/development/python-modules/signedjson/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/signedjson/default.nix
@@ -1,24 +1,36 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
+, fetchPypi
+, fetchpatch
 , canonicaljson
 , unpaddedbase64
 , pynacl
 , typing-extensions
+, setuptools-scm
+, importlib-metadata
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "signedjson";
   version = "1.1.1";
 
-  src = fetchFromGitHub {
-    owner = "matrix-org";
-    repo = "python-${pname}";
-    rev = "v${version}";
-    sha256 = "0y5c9v4vx9hqpnca892gc9b4xgs4gp5xk6l1wma5ciz8zswp9yfs";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0280f8zyycsmd7iy65bs438flm7m8ffs1kcxfbvhi8hbazkqc19m";
   };
 
-  propagatedBuildInputs = [ canonicaljson unpaddedbase64 pynacl typing-extensions ];
+  patches = [
+    # Do not require importlib_metadata on python 3.8
+    (fetchpatch {
+      url = "https://github.com/matrix-org/python-signedjson/commit/c40c83f844fee3c1c7b0c5d1508f87052334b4e5.patch";
+      sha256 = "109f135zn9azg5h1ljw3v94kpvnzmlqz1aiknpl5hsqfa3imjca1";
+    })
+  ];
+
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ canonicaljson unpaddedbase64 pynacl typing-extensions ]
+    ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
 
   meta = with lib; {
     homepage = "https://pypi.org/project/signedjson/";
diff --git a/nixpkgs/pkgs/development/python-modules/simple-salesforce/default.nix b/nixpkgs/pkgs/development/python-modules/simple-salesforce/default.nix
index cd89c1c8aae8..af92f345950b 100644
--- a/nixpkgs/pkgs/development/python-modules/simple-salesforce/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simple-salesforce/default.nix
@@ -1,10 +1,8 @@
 { lib
 , fetchFromGitHub
 , buildPythonPackage
+, authlib
 , requests
-, pyopenssl
-, cryptography
-, idna
 , mock
 , isPy27
 , nose
@@ -24,21 +22,20 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
+    authlib
     requests
-    pyopenssl
-    cryptography
-    idna
   ];
 
   checkInputs = [
     nose
     pytz
     responses
-  ] ++ lib.optionals isPy27 [ mock ];
+  ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "mock==1.0.1" "mock"
+  checkPhase = ''
+    runHook preCheck
+    nosetests -v
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/simpleaudio/default.nix b/nixpkgs/pkgs/development/python-modules/simpleaudio/default.nix
index 948716a9b7cb..4ab18efe332a 100644
--- a/nixpkgs/pkgs/development/python-modules/simpleaudio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simpleaudio/default.nix
@@ -1,4 +1,4 @@
-{ alsaLib, buildPythonPackage, fetchFromGitHub, isPy27, lib }:
+{ alsa-lib, buildPythonPackage, fetchFromGitHub, isPy27, lib }:
 
 buildPythonPackage rec {
   pname = "simpleaudio";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "12nypzb1m14yip4zrbzin5jc5awyp1d5md5y40g5anj4phb4hx1i";
   };
 
-  buildInputs = [ alsaLib ];
+  buildInputs = [ alsa-lib ];
 
   meta = with lib; {
     homepage = "https://github.com/hamiltron/py-simple-audio";
diff --git a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
index 5b8925b0a4c6..9592d37fed0a 100644
--- a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "simplisafe-python";
-  version = "9.6.9";
+  version = "9.6.10";
   format = "pyproject";
   disabled = pythonOlder "3.6";
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "1q5w5pvrgj94bzd5wig79l4hipkfrcdah54rvwyi7b8q46gw77sg";
+    sha256 = "0cc5kxxishxhkg1nqmgbh36yxs8yjfynmimzjnaqkqfrs9iq46mr";
   };
 
   nativeBuildInputs = [ poetry-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/simpy/default.nix b/nixpkgs/pkgs/development/python-modules/simpy/default.nix
index f718b3655f6f..ff139523e1f4 100644
--- a/nixpkgs/pkgs/development/python-modules/simpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simpy/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchPypi, isPy27, lib, setuptools, setuptools_scm
+{ buildPythonPackage, fetchPypi, isPy27, lib, setuptools, setuptools-scm
 , pytestCheckHook }:
 
 buildPythonPackage rec {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "b36542e2faab612f861c5ef4da17220ac1553f5892b3583c67281dbe4faad404";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ setuptools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/sip/4.x.nix b/nixpkgs/pkgs/development/python-modules/sip/4.x.nix
new file mode 100644
index 000000000000..5334d1196344
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sip/4.x.nix
@@ -0,0 +1,44 @@
+{ lib, fetchurl, buildPythonPackage, python, isPyPy, sip-module ? "sip" }:
+
+buildPythonPackage rec {
+  pname = sip-module;
+  version = "4.19.25";
+  format = "other";
+
+  disabled = isPyPy;
+
+  src = fetchurl {
+    url = "https://www.riverbankcomputing.com/static/Downloads/sip/${version}/sip-${version}.tar.gz";
+    sha256 = "04a23cgsnx150xq86w1z44b6vr2zyazysy9mqax0fy346zlr77dk";
+  };
+
+  configurePhase = ''
+    ${python.executable} ./configure.py \
+      --sip-module ${sip-module} \
+      -d $out/${python.sitePackages} \
+      -b $out/bin -e $out/include
+  '';
+
+  enableParallelBuilding = true;
+
+  installCheckPhase = let
+    modules = [
+      sip-module
+      "sipconfig"
+    ];
+    imports = lib.concatMapStrings (module: "import ${module};") modules;
+  in ''
+    echo "Checking whether modules can be imported..."
+    PYTHONPATH=$out/${python.sitePackages}:$PYTHONPATH ${python.interpreter} -c "${imports}"
+  '';
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Creates C++ bindings for Python modules";
+    homepage    = "http://www.riverbankcomputing.co.uk/";
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ lovek323 sander ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sip/5.x.nix b/nixpkgs/pkgs/development/python-modules/sip/5.x.nix
deleted file mode 100644
index cebffd5765bd..000000000000
--- a/nixpkgs/pkgs/development/python-modules/sip/5.x.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib, fetchPypi, buildPythonPackage, packaging, toml }:
-
-buildPythonPackage rec {
-  pname = "sip";
-  version = "5.5.0";
-
-  src = fetchPypi {
-    pname = "sip";
-    inherit version;
-    sha256 = "1idaivamp1jvbbai9yzv471c62xbqxhaawccvskaizihkd0lq0jx";
-  };
-
-  propagatedBuildInputs = [ packaging toml ];
-
-  # There aren't tests
-  doCheck = false;
-
-  pythonImportsCheck = [ "sipbuild" ];
-
-  meta = with lib; {
-    description = "Creates C++ bindings for Python modules";
-    homepage    = "http://www.riverbankcomputing.co.uk/";
-    license     = licenses.gpl3Only;
-    maintainers = with maintainers; [ eduardosm ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/sip/default.nix b/nixpkgs/pkgs/development/python-modules/sip/default.nix
index 0027c1c0ba5f..c15589b77bc8 100644
--- a/nixpkgs/pkgs/development/python-modules/sip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sip/default.nix
@@ -1,44 +1,40 @@
-{ lib, fetchurl, buildPythonPackage, python, isPyPy, sip-module ? "sip" }:
+{ lib, stdenv, fetchPypi, buildPythonPackage, packaging, toml }:
 
 buildPythonPackage rec {
-  pname = sip-module;
-  version = "4.19.24";
-  format = "other";
+  pname = "sip";
+  version = "5.5.0";
 
-  disabled = isPyPy;
-
-  src = fetchurl {
-    url = "https://www.riverbankcomputing.com/static/Downloads/sip/${version}/sip-${version}.tar.gz";
-    sha256 = "1ra15vb5i9gkg2vdvh16cq9x2mmzw1yi3xphxs8q34q1pf83gkgd";
+  src = fetchPypi {
+    pname = "sip";
+    inherit version;
+    sha256 = "1idaivamp1jvbbai9yzv471c62xbqxhaawccvskaizihkd0lq0jx";
   };
 
-  configurePhase = ''
-    ${python.executable} ./configure.py \
-      --sip-module ${sip-module} \
-      -d $out/${python.sitePackages} \
-      -b $out/bin -e $out/include
-  '';
+  propagatedBuildInputs = [ packaging toml ];
 
-  enableParallelBuilding = true;
+  # There aren't tests
+  doCheck = false;
 
-  installCheckPhase = let
-    modules = [
-      sip-module
-      "sipconfig"
-    ];
-    imports = lib.concatMapStrings (module: "import ${module};") modules;
-  in ''
-    echo "Checking whether modules can be imported..."
-    PYTHONPATH=$out/${python.sitePackages}:$PYTHONPATH ${python.interpreter} -c "${imports}"
-  '';
+  pythonImportsCheck = [ "sipbuild" ];
 
-  doCheck = true;
+  # FIXME: Why isn't this detected automatically?
+  # Needs to be specified in pyproject.toml, e.g.:
+  # [tool.sip.bindings.MODULE]
+  # tags = [PLATFORM_TAG]
+  platform_tag =
+    if stdenv.targetPlatform.isLinux then
+      "WS_X11"
+    else if stdenv.targetPlatform.isDarwin then
+      "WS_MACX"
+    else if stdenv.targetPlatform.isWindows then
+      "WS_WIN"
+    else
+      throw "unsupported platform";
 
   meta = with lib; {
     description = "Creates C++ bindings for Python modules";
     homepage    = "http://www.riverbankcomputing.co.uk/";
-    license     = licenses.gpl2Plus;
-    maintainers = with maintainers; [ lovek323 sander ];
-    platforms   = platforms.all;
+    license     = licenses.gpl3Only;
+    maintainers = with maintainers; [ eduardosm ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sipsimple/default.nix b/nixpkgs/pkgs/development/python-modules/sipsimple/default.nix
index 568ce67d1434..838ffd471840 100644
--- a/nixpkgs/pkgs/development/python-modules/sipsimple/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sipsimple/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [ pkgs.pkg-config ];
-  buildInputs = with pkgs; [ alsaLib ffmpeg_3 libv4l sqlite libvpx ];
+  buildInputs = with pkgs; [ alsa-lib ffmpeg_3 libv4l sqlite libvpx ];
   propagatedBuildInputs = [ cython pkgs.openssl dnspython dateutil xcaplib msrplib lxml python-otr ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/sklearn-deap/default.nix b/nixpkgs/pkgs/development/python-modules/sklearn-deap/default.nix
index d973bc70bcdb..2530b9652032 100644
--- a/nixpkgs/pkgs/development/python-modules/sklearn-deap/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sklearn-deap/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, numpy, scipy, deap, scikitlearn, python }:
+{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, numpy, scipy, deap, scikit-learn, python }:
 
 buildPythonPackage rec {
   pname = "sklearn-deap";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     })
   ];
 
-  propagatedBuildInputs = [ numpy scipy deap scikitlearn ];
+  propagatedBuildInputs = [ numpy scipy deap scikit-learn ];
 
   checkPhase = ''
     ${python.interpreter} test.py
diff --git a/nixpkgs/pkgs/development/python-modules/skorch/default.nix b/nixpkgs/pkgs/development/python-modules/skorch/default.nix
index 3504557b5027..db3b8ed4312c 100644
--- a/nixpkgs/pkgs/development/python-modules/skorch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skorch/default.nix
@@ -8,7 +8,7 @@
 , numpy
 , pandas
 , pytorch
-, scikitlearn
+, scikit-learn
 , scipy
 , tabulate
 , tqdm
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     sha256 = "9910f97339e654c8d38e0075d87b735e69e5eb11db59c527fb36705b30c8d0a4";
   };
 
-  propagatedBuildInputs = [ numpy pytorch scikitlearn scipy tabulate tqdm ];
+  propagatedBuildInputs = [ numpy pytorch scikit-learn scipy tabulate tqdm ];
   checkInputs = [ pytest pytestcov flaky pandas pytestCheckHook ];
 
   disabledTests = [
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix
new file mode 100644
index 000000000000..c1a950dc2ae6
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildPythonPackage, fetchFromGitHub, skytemple-files }:
+
+buildPythonPackage rec {
+  pname = "skytemple-dtef";
+  version = "1.1.3";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "0hisg7gq6ph0as9vvx2p1h104bn6x2kx8y477p9zcqc71f3yrx82";
+  };
+
+  propagatedBuildInputs = [ skytemple-files ];
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "skytemple_dtef" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-dtef";
+    description = "A format for standardized rule-based tilesets with 256 adjacency combinations";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-eventserver/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-eventserver/default.nix
new file mode 100644
index 000000000000..123f4ba6d853
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-eventserver/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchFromGitHub }:
+
+buildPythonPackage rec {
+  pname = "skytemple-eventserver";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "1xcf7ljvi5ixhwx9rkg3hnwcyv4wsgd2yb6is11jffbrdp00j2bq";
+  };
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "skytemple_eventserver" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-eventserver";
+    description = "Websocket server that emits SkyTemple UI events";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
new file mode 100644
index 000000000000..cb03d73b4270
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildPythonPackage, fetchFromGitHub, appdirs, explorerscript, ndspy, pillow, setuptools, skytemple-rust, tilequant }:
+
+buildPythonPackage rec {
+  pname = "skytemple-files";
+  version = "1.2.3";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "1vklg4kcj3kb9ryrzrcmywn131b2bp3vy94cd4x4y4s7hkhgwg74";
+  };
+
+  propagatedBuildInputs = [ appdirs explorerscript ndspy pillow setuptools skytemple-rust tilequant ];
+
+  doCheck = false; # requires Pokémon Mystery Dungeon ROM
+  pythonImportsCheck = [ "skytemple_files" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-files";
+    description = "Python library to edit the ROM of Pokémon Mystery Dungeon Explorers of Sky";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-icons/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-icons/default.nix
new file mode 100644
index 000000000000..0bf3659605c9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-icons/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchFromGitHub }:
+
+buildPythonPackage rec {
+  pname = "skytemple-icons";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "036bxy0n3p0ivcdaymj11z0nw555xjxxj15ja0rpjsvq1mqamd80";
+  };
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "skytemple_icons" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-icons";
+    description = "Icons for SkyTemple";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
new file mode 100644
index 000000000000..d22d61099587
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildPythonPackage, fetchFromGitHub, rustPlatform, setuptools-rust }:
+
+buildPythonPackage rec {
+  pname = "skytemple-rust";
+  version = "unstable-2021-05-30"; # Contains build bug fixes, but is otherwise identical to 0.0.1.post0
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = "cff8b2930af6d25d41331fab8c04f56a4fd75e95";
+    sha256 = "18y6wwvzyw062zlv3gcirr1hgld9d97ffyrvy0jvw8nr3b9h9x0i";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    sha256 = "1ypcsf9gbq1bz29kfn7g4kg8741mxg1lfcbb14a0vfhjq4d6pnx9";
+  };
+
+  nativeBuildInputs = [ setuptools-rust ] ++ (with rustPlatform; [ cargoSetupHook rust.cargo rust.rustc ]);
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "skytemple_rust" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-rust";
+    description = "Binary Rust extensions for SkyTemple";
+    license = licenses.mit;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
new file mode 100644
index 000000000000..88ae80f7242a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
@@ -0,0 +1,38 @@
+{ lib, buildPythonPackage, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3
+, wrapGAppsHook, nest-asyncio, pycairo, py-desmume, pygtkspellcheck, setuptools
+, skytemple-files, skytemple-icons
+}:
+
+buildPythonPackage rec {
+  pname = "skytemple-ssb-debugger";
+  version = "1.2.4";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "0jmsli3wg386y0lxwddpwp1xqxsn2bsy4d1f7dyh0jjz8lqiz03i";
+  };
+
+  buildInputs = [ gobject-introspection gtk3 gtksourceview3 ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  propagatedBuildInputs = [
+    nest-asyncio
+    pycairo
+    py-desmume
+    pygtkspellcheck
+    setuptools
+    skytemple-files
+    skytemple-icons
+  ];
+
+  doCheck = false; # requires Pokémon Mystery Dungeon ROM
+  pythonImportsCheck = [ "skytemple_ssb_debugger" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/skytemple-ssb-debugger";
+    description = "Script Engine Debugger for Pokémon Mystery Dungeon Explorers of Sky";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/slimit/default.nix b/nixpkgs/pkgs/development/python-modules/slimit/default.nix
deleted file mode 100644
index 30654bd03f61..000000000000
--- a/nixpkgs/pkgs/development/python-modules/slimit/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, fetchpatch, python, ply }:
-
-buildPythonPackage rec {
-  pname = "slimit";
-  version = "0.8.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "f433dcef899f166b207b67d91d3f7344659cb33b8259818f084167244e17720b";
-  };
-
-  # Some patches from https://github.com/rspivak/slimit/pull/65
-  patches = lib.optionals isPy3k [
-    (fetchpatch {
-      url = "https://github.com/lelit/slimit/commit/a61e12d88cc123c4b7af2abef21d06fd182e561a.patch";
-      sha256 = "0lbhvkgn4l8g9fwvb81rfwjx7hsaq2pid8a5gczdk1ba65wfvdq5";
-    })
-    (fetchpatch {
-      url = "https://github.com/lelit/slimit/commit/e8331659fb89e8a4613c5e4e338c877fead9c551.patch";
-      sha256 = "1hv4ysn09c9bfd5bxhhrp51hsi81hdidmx0y7zcrjjiich9ayrni";
-    })
-  ];
-
-  propagatedBuildInputs = [ ply ];
-
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover -s src/slimit
-  '';
-
-  meta = with lib; {
-    description = "JavaScript minifier";
-    homepage = "https://slimit.readthedocs.org/";
-    license = licenses.mit;
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/slither-analyzer/default.nix b/nixpkgs/pkgs/development/python-modules/slither-analyzer/default.nix
index 43583416bb40..57168b1d9151 100644
--- a/nixpkgs/pkgs/development/python-modules/slither-analyzer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/slither-analyzer/default.nix
@@ -14,26 +14,32 @@
 
 buildPythonPackage rec {
   pname = "slither-analyzer";
-  version = "0.7.0";
-
+  version = "0.7.1";
   disabled = pythonOlder "3.6";
 
-  # No Python tests
-  doCheck = false;
-
   src = fetchPypi {
     inherit pname version;
-    sha256 = "10r479xidgxvas4wb0z6injp59jrn7rfq8d7bxlcalc2dy4mawr0";
+    sha256 = "sha256-v/UuxxgMmkGfP962AfOQU05MI8xJocpD8SkENCZi04I=";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  propagatedBuildInputs = [ crytic-compile prettytable setuptools ];
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  propagatedBuildInputs = [
+    crytic-compile
+    prettytable
+    setuptools
+  ];
 
   postFixup = lib.optionalString withSolc ''
     wrapProgram $out/bin/slither \
       --prefix PATH : "${lib.makeBinPath [ solc ]}"
   '';
 
+  # No Python tests
+  doCheck = false;
+
   meta = with lib; {
     description = "Static Analyzer for Solidity";
     longDescription = ''
@@ -43,6 +49,6 @@ buildPythonPackage rec {
     '';
     homepage = "https://github.com/trailofbits/slither";
     license = licenses.agpl3Plus;
-    maintainers = with maintainers; [ arturcygan ];
+    maintainers = with maintainers; [ arturcygan fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix b/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
index f648905251e2..f28708bdf03b 100644
--- a/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "slixmpp";
-  version = "1.7.0";
+  version = "1.7.1";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-fy7sRKS7ih4JmjOW/noL8qJ1xWVpQLbBbObHnMwT3Bc=";
+    sha256 = "sha256-mvg23FdHJZeIZRcm8GLWmm9DDTBt29jmsUHB/smVSec=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/smart_open/default.nix b/nixpkgs/pkgs/development/python-modules/smart-open/default.nix
index 4f3423b7df32..051d6c97397d 100644
--- a/nixpkgs/pkgs/development/python-modules/smart_open/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/smart-open/default.nix
@@ -12,12 +12,13 @@
 }:
 
 buildPythonPackage rec {
-  pname = "smart_open";
+  pname = "smart-open";
   version = "4.2.0";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "smart_open";
+    inherit version;
     sha256 = "d9f5a0f173ccb9bbae528db5a3804f57145815774f77ef755b9b0f3b4b2a9dcb";
   };
 
@@ -29,9 +30,10 @@ buildPythonPackage rec {
 
   # upstream code requires both boto and boto3
   propagatedBuildInputs = [ boto boto3 bz2file requests ];
+
   meta = {
     license = lib.licenses.mit;
-    description = "smart_open is a Python 2 & Python 3 library for efficient streaming of very large file";
+    description = "Library for efficient streaming of very large file";
     maintainers = with lib.maintainers; [ jyp ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/smbprotocol/default.nix b/nixpkgs/pkgs/development/python-modules/smbprotocol/default.nix
new file mode 100644
index 000000000000..517acd6f9cca
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/smbprotocol/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, cryptography
+, fetchFromGitHub
+, pyspnego
+, pytest-mock
+, pytestCheckHook
+, pythonOlder
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "smbprotocol";
+  version = "1.5.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "jborean93";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1ym0fvljbwgl1h7f63m3psbsvqm64fipsrrmbqb97hrhfdzxqxpa";
+  };
+
+  propagatedBuildInputs = [
+    cryptography
+    pyspnego
+    six
+  ];
+
+  checkInputs = [
+    pytest-mock
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "smbprotocol" ];
+
+  meta = with lib; {
+    description = "Python SMBv2 and v3 Client";
+    homepage = "https://github.com/jborean93/smbprotocol";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/smhi-pkg/default.nix b/nixpkgs/pkgs/development/python-modules/smhi-pkg/default.nix
index 3308697cf549..f6693da46be7 100644
--- a/nixpkgs/pkgs/development/python-modules/smhi-pkg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/smhi-pkg/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "smhi-pkg";
-  version = "1.0.14";
+  version = "1.0.15";
 
   src = fetchFromGitHub {
     owner = "joysoftware";
     repo = "pypi_smhi";
     rev = version;
-    sha256 = "186xwrg3hvr0hszq2kxvygd241q2sp11gfk6mwj9z4zqywwfcbn3";
+    sha256 = "sha256-tBNmfn2hBkS36B9zKDP+TgqeumbgzBVDiJ5L54RaSc8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/snitun/default.nix b/nixpkgs/pkgs/development/python-modules/snitun/default.nix
index 10eada9f0955..f93445a02b00 100644
--- a/nixpkgs/pkgs/development/python-modules/snitun/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/snitun/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "snitun";
-  version = "0.20";
+  version = "0.21.0";
 
   src = fetchFromGitHub {
     owner = "NabuCasa";
     repo = pname;
     rev = version;
-    sha256 = "1nscfwycclfbll709w1q46w6rl0r5c3b85rsc7zwc3ixd1k8aajp";
+    sha256 = "sha256-oZHi/H9HOqGTFuhqPSZXntMzVJ3ZT4zNejezo0cDtqg=";
   };
 
   propagatedBuildInputs = [ attrs cryptography async-timeout ];
diff --git a/nixpkgs/pkgs/development/python-modules/snowflake-connector-python/default.nix b/nixpkgs/pkgs/development/python-modules/snowflake-connector-python/default.nix
index fdf984563ea0..237f36e201b6 100644
--- a/nixpkgs/pkgs/development/python-modules/snowflake-connector-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/snowflake-connector-python/default.nix
@@ -1,5 +1,6 @@
-{ buildPythonPackage
-, isPy27
+{ lib
+, buildPythonPackage
+, pythonOlder
 , asn1crypto
 , azure-storage-blob
 , boto3
@@ -10,7 +11,6 @@
 , idna
 , ijson
 , isPy3k
-, lib
 , oscrypto
 , pyarrow
 , pyasn1-modules
@@ -25,20 +25,14 @@
 
 buildPythonPackage rec {
   pname = "snowflake-connector-python";
-  version = "2.4.1";
-  disabled = isPy27;
+  version = "2.4.3";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5c9180e61202a7beb1df83231688423091ca0a04ee559d2a78ff77f9c727baae";
+    sha256 = "sha256-+jAfUwaofWM5Ef1kk4AEAbBM/UES8/ZzLd4QJfkEQsM=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "'pyOpenSSL>=16.2.0,<20.0.0'," "'pyOpenSSL'," \
-      --replace 'pytz<2021.0' 'pytz'
-  '';
-
   propagatedBuildInputs = [
     azure-storage-blob
     asn1crypto
@@ -55,16 +49,26 @@ buildPythonPackage rec {
     pytz
     requests
     six
-  ] ++ lib.optionals (!isPy3k) [
     pyarrow
     pyasn1-modules
     urllib3
   ];
 
-  # tests require encrypted secrets, see
+  postPatch = ''
+    # https://github.com/snowflakedb/snowflake-connector-python/issues/705
+    substituteInPlace setup.py \
+      --replace "idna>=2.5,<3" "idna" \
+      --replace "chardet>=3.0.2,<4" "chardet"
+  '';
+
+  # Tests require encrypted secrets, see
   # https://github.com/snowflakedb/snowflake-connector-python/tree/master/.github/workflows/parameters
   doCheck = false;
-  pythonImportsCheck = [ "snowflake" "snowflake.connector" ];
+
+  pythonImportsCheck = [
+    "snowflake"
+    "snowflake.connector"
+  ];
 
   meta = with lib; {
     description = "Snowflake Connector for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/snscrape/default.nix b/nixpkgs/pkgs/development/python-modules/snscrape/default.nix
index b7d7f25614d9..a8f565aa3533 100644
--- a/nixpkgs/pkgs/development/python-modules/snscrape/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/snscrape/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , isPy3k
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , setuptools
 , requests
 , lxml
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     snscrape --help
   '';
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ setuptools requests lxml beautifulsoup4 ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/soco/default.nix b/nixpkgs/pkgs/development/python-modules/soco/default.nix
index a72c413c1860..c1db4dd01582 100644
--- a/nixpkgs/pkgs/development/python-modules/soco/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/soco/default.nix
@@ -1,58 +1,32 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , graphviz
 , ifaddr
-, isPy27
-, lib
+, pythonOlder
 , mock
 , nix-update-script
 , pytestCheckHook
 , requests
 , requests-mock
-, sphinx
-, sphinx_rtd_theme
-, toml
 , xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "soco";
-  version = "0.21.2";
-  disabled = isPy27;
+  version = "0.22.3";
+  disabled = pythonOlder "3.6";
 
-  # N.B. We fetch from GitHub because the PyPI tarball doesn't contain the
-  # required files to run the tests.
   src = fetchFromGitHub {
     owner = "SoCo";
     repo = "SoCo";
     rev = "v${version}";
-    sha256 = "sha256-CCgkzUkt9YqTJt9tPBLmYXW6ZuRoMDd7xahYmNXgfM0=";
+    sha256 = "sha256-RCWXXk5aQQYqyxm65M96XBoMS5UlYqyAz3aM/DVghRw=";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://patch-diff.githubusercontent.com/raw/SoCo/SoCo/pull/811.patch";
-      sha256 = "sha256-GBd74c8zc25ROO411SZ9TTa+bi8yXJaaOQqY9FM1qj4=";
-    })
-  ];
-
-  # N.B. These exist because:
-  # 1. Upstream's pinning isn't well maintained, leaving dependency versions no
-  #    longer in nixpkgs.
-  # 2. There is no benefit for us to be running linting and coverage tests.
-  postPatch = ''
-    sed -i "/black/d" ./requirements-dev.txt
-    sed -i "/coveralls/d" ./requirements-dev.txt
-    sed -i "/flake8/d" ./requirements-dev.txt
-    sed -i "/pylint/d" ./requirements-dev.txt
-    sed -i "/pytest-cov/d" ./requirements-dev.txt
-  '';
-
   propagatedBuildInputs = [
     ifaddr
     requests
-    toml
     xmltodict
   ];
 
@@ -61,10 +35,10 @@ buildPythonPackage rec {
     graphviz
     mock
     requests-mock
-    sphinx
-    sphinx_rtd_theme
   ];
 
+  pythonImportsCheck = [ "soco" ];
+
   passthru.updateScript = nix-update-script {
     attrPath = "python3Packages.${pname}";
   };
diff --git a/nixpkgs/pkgs/development/python-modules/solo-python/default.nix b/nixpkgs/pkgs/development/python-modules/solo-python/default.nix
index 8d84ce34eb95..88df4e50fbc4 100644
--- a/nixpkgs/pkgs/development/python-modules/solo-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/solo-python/default.nix
@@ -14,7 +14,7 @@
 
  buildPythonPackage rec {
   pname = "solo-python";
-  version = "0.0.27";
+  version = "0.0.30";
   format = "flit";
   disabled = pythonOlder "3.6"; # only python>=3.6 is supported
 
@@ -22,7 +22,7 @@
     owner = "solokeys";
     repo = pname;
     rev = version;
-    sha256 = "sha256-OCiKa6mnqJGoNCC4KqI+hMw22tzhdN63x9/KujNJqcE=";
+    sha256 = "1i9kybp08qfcdx6m4wl7ij40y1v17mvvhcdg7zglwfakblf69w41";
   };
 
   # replaced pinned fido, with unrestricted fido version
@@ -60,8 +60,5 @@
     homepage = "https://github.com/solokeys/solo-python";
     maintainers = with maintainers; [ wucke13 ];
     license = with licenses; [ asl20 mit ];
-    # solo-python v0.0.27 does not support fido2 >= v0.9
-    # https://github.com/solokeys/solo-python/issues/110
-    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sorl_thumbnail/default.nix b/nixpkgs/pkgs/development/python-modules/sorl_thumbnail/default.nix
index daeca60c1e14..4a6f1c1ae9d7 100644
--- a/nixpkgs/pkgs/development/python-modules/sorl_thumbnail/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sorl_thumbnail/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "fbe6dfd66a1aceb7e0203895ff5622775e50266f8d8cfd841fe1500bd3e19018";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   # Disabled due to an improper configuration error when tested against django. This looks like something broken in the test cases for sorl.
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/spacy-alignments/default.nix b/nixpkgs/pkgs/development/python-modules/spacy-alignments/default.nix
new file mode 100644
index 000000000000..0ac1edfd5034
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy-alignments/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, fetchPypi
+, fetchpatch
+, buildPythonPackage
+, isPy3k
+, rustPlatform
+, setuptools-rust
+, libiconv
+}:
+
+buildPythonPackage rec {
+  pname = "spacy-alignments";
+  version = "0.8.3";
+
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-zrqBjaIjtF6bJMbmw7Zo+BeApN6sxxfLkrzsDjdvC78=";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit patches src;
+    name = "${pname}-${version}";
+    hash = "sha256-YRyG2yflEXKklNqXiDD9oK3J1lq4o704+Eeu2hyY3xI=";
+  };
+
+  patches = [
+    # Add Cargo.lock, from upstream PR:
+    # https://github.com/explosion/spacy-alignments/pull/3
+    (fetchpatch {
+      url = "https://github.com/explosion/spacy-alignments/commit/7b0ba13ff0d245bfbbe344a36fb7bbd311dd4906.diff";
+      sha256 = "sha256-jx97SSC+3z+ByInNs8Uq58H50eCo4fDCwEi6VKxRs2k=";
+      excludes = [ ".gitignore" ];
+    })
+  ];
+
+  nativeBuildInputs = [
+    setuptools-rust
+  ] ++ (with rustPlatform; [
+    cargoSetupHook
+    rust.cargo
+    rust.rustc
+  ]);
+
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+
+  # Fails because spacy_alignments module cannot be loaded correctly.
+  doCheck = false;
+
+  pythonImportsCheck = [ "spacy_alignments" ];
+
+  meta = with lib; {
+    description = "Align tokenizations for spaCy and transformers";
+    homepage = "https://github.com/explosion/spacy-alignments";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/spacy-pkuseg/default.nix b/nixpkgs/pkgs/development/python-modules/spacy-pkuseg/default.nix
new file mode 100644
index 000000000000..670174a057e9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy-pkuseg/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, cython
+, numpy
+, srsly
+}:
+
+buildPythonPackage rec {
+  pname = "spacy-pkuseg";
+  version = "0.0.28";
+
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit version;
+    pname = "spacy_pkuseg";
+    hash = "sha256-mmA/baY9ohvrM41ak5L+G8CUrSQeZCrzmMAoND4X/NI=";
+  };
+
+  # Does not seem to have actual tests, but unittest discover
+  # recognizes some non-tests as tests and fails.
+  doCheck = false;
+
+  nativeBuildInputs = [ cython ];
+
+  propagatedBuildInputs = [ numpy srsly ];
+
+  pythonImportsCheck = [ "spacy_pkuseg" ];
+
+  meta = with lib; {
+    description = "Toolkit for multi-domain Chinese word segmentation (spaCy fork)";
+    homepage = "https://github.com/explosion/spacy-pkuseg";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py b/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py
new file mode 100644
index 000000000000..d0be2d1c335a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py
@@ -0,0 +1,68 @@
+import pytest
+import spacy
+
+en_text = (
+    "When Sebastian Thrun started working on self-driving cars at "
+    "Google in 2007, few people outside of the company took him "
+    "seriously. “I can tell you very senior CEOs of major American "
+    "car companies would shake my hand and turn away because I wasn’t "
+    "worth talking to,” said Thrun, in an interview with Recode earlier "
+    "this week.")
+
+
+@pytest.fixture
+def en_core_web_trf():
+    return spacy.load("en_core_web_trf")
+
+
+@pytest.fixture
+def doc_en_core_web_trf(en_core_web_trf):
+    return en_core_web_trf(en_text)
+
+
+def test_entities(doc_en_core_web_trf):
+    entities = list(map(lambda e: (e.text, e.label_),
+                        doc_en_core_web_trf.ents))
+
+    assert entities == [
+        ('Sebastian Thrun', 'PERSON'),
+        ('Google', 'ORG'),
+        ('2007', 'DATE'),
+        ('American', 'NORP'),
+        ('Thrun', 'PERSON'),
+        ('Recode', 'ORG'),
+        ('earlier this week', 'DATE'),
+    ]
+
+
+def test_nouns(doc_en_core_web_trf):
+    assert [
+        chunk.text for chunk in doc_en_core_web_trf.noun_chunks] == [
+        'Sebastian Thrun',
+        'self-driving cars',
+        'Google',
+        'few people',
+        'the company',
+        'him',
+        'I',
+        'you',
+        'very senior CEOs',
+        'major American car companies',
+        'my hand',
+        'I',
+        'Thrun',
+        'an interview',
+        'Recode']
+
+
+def test_verbs(doc_en_core_web_trf):
+    assert [
+        token.lemma_ for token in doc_en_core_web_trf if token.pos_ == "VERB"] == [
+        'start',
+        'take',
+        'tell',
+        'shake',
+        'turn',
+        'be',
+        'talk',
+        'say']
diff --git a/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix b/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix
new file mode 100644
index 000000000000..11a927a0a627
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, pytest, spacy_models }:
+
+stdenv.mkDerivation {
+  name = "spacy-transformers-annotation-test";
+
+  src = ./.;
+
+  dontConfigure = true;
+  dontBuild = true;
+  doCheck = true;
+
+  checkInputs = [ pytest spacy_models.en_core_web_trf ];
+
+  checkPhase = ''
+    pytest annotate.py
+  '';
+
+  installPhase = ''
+    touch $out
+  '';
+
+  meta.timeout = 60;
+}
diff --git a/nixpkgs/pkgs/development/python-modules/spacy-transformers/default.nix b/nixpkgs/pkgs/development/python-modules/spacy-transformers/default.nix
new file mode 100644
index 000000000000..1d02460167bf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy-transformers/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, callPackage
+, fetchPypi
+, buildPythonPackage
+, pytorch
+, spacy
+, spacy-alignments
+, srsly
+, transformers
+}:
+
+buildPythonPackage rec {
+  pname = "spacy-transformers";
+  version = "1.0.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-AYshH2trMTgeSkAPRb6wRWpm4gA5FaKV2NJd+PhzAy4=";
+  };
+
+  propagatedBuildInputs = [
+    pytorch
+    spacy
+    spacy-alignments
+    srsly
+    transformers
+  ];
+
+  # Test fails due to missing arguments for trfs2arrays().
+  doCheck = false;
+
+  pythonImportsCheck = [ "spacy_transformers" ];
+
+  passthru.tests.annotation = callPackage ./annotation-test { };
+
+  meta = with lib; {
+    description = "spaCy pipelines for pretrained BERT, XLNet and GPT-2";
+    homepage = "https://github.com/explosion/spacy-transformers";
+    license = licenses.mit;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/spacy/annotation-test/annotate.py b/nixpkgs/pkgs/development/python-modules/spacy/annotation-test/annotate.py
index 822eb8ac0743..eb6288084883 100644
--- a/nixpkgs/pkgs/development/python-modules/spacy/annotation-test/annotate.py
+++ b/nixpkgs/pkgs/development/python-modules/spacy/annotation-test/annotate.py
@@ -26,10 +26,11 @@ def test_entities(doc_en_core_web_sm):
 
     assert entities == [
         ('Sebastian Thrun', 'PERSON'),
-        ('Google', 'ORG'), ('2007', 'DATE'),
+        ('2007', 'DATE'),
         ('American', 'NORP'),
-        ('Thrun', 'ORG'),
-        ('earlier this week', 'DATE')
+        ('Thrun', 'PERSON'),
+        ('Recode', 'PERSON'),
+        ('earlier this week', 'DATE'),
     ]
 
 
@@ -60,10 +61,9 @@ def test_verbs(doc_en_core_web_sm):
         'work',
         'drive',
         'take',
-        'can',
         'tell',
-        'would',
         'shake',
         'turn',
+        'be',
         'talk',
         'say']
diff --git a/nixpkgs/pkgs/development/python-modules/spacy/default.nix b/nixpkgs/pkgs/development/python-modules/spacy/default.nix
index 077ac0e6a3bc..3cabc1d6ba20 100644
--- a/nixpkgs/pkgs/development/python-modules/spacy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/spacy/default.nix
@@ -7,42 +7,52 @@
 , blis
 , catalogue
 , cymem
+, jinja2
 , jsonschema
 , murmurhash
 , numpy
 , pathlib
-, plac
 , preshed
 , requests
 , setuptools
 , srsly
+, spacy-legacy
 , thinc
+, typer
 , wasabi
+, packaging
+, pathy
+, pydantic
 }:
 
 buildPythonPackage rec {
   pname = "spacy";
-  version = "3.0.5";
+  version = "3.0.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9f7a09fbad53aac2a3cb7696a902de62b94575a15d249dd5e26a98049328060e";
+    hash = "sha256-ViirifH1aAmciAsSqcN/Ts4pq4kmBmDP33KMAnEYecU=";
   };
 
   propagatedBuildInputs = [
     blis
     catalogue
     cymem
+    jinja2
     jsonschema
     murmurhash
     numpy
-    plac
     preshed
     requests
     setuptools
     srsly
+    spacy-legacy
     thinc
     wasabi
+    packaging
+    pathy
+    pydantic
+    typer
   ] ++ lib.optional (pythonOlder "3.4") pathlib;
 
   checkInputs = [
@@ -57,10 +67,7 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace setup.cfg \
       --replace "blis>=0.4.0,<0.8.0" "blis>=0.4.0,<1.0" \
-      --replace "catalogue>=0.0.7,<1.1.0" "catalogue>=0.0.7,<3.0" \
-      --replace "plac>=0.9.6,<1.2.0" "plac>=0.9.6,<2.0" \
-      --replace "srsly>=1.0.2,<1.1.0" "srsly>=1.0.2,<3.0" \
-      --replace "thinc>=7.4.1,<7.5.0" "thinc>=7.4.1,<8"
+      --replace "pydantic>=1.7.1,<1.8.0" "pydantic>=1.7.1,<1.8.3"
   '';
 
   pythonImportsCheck = [ "spacy" ];
diff --git a/nixpkgs/pkgs/development/python-modules/spacy/legacy.nix b/nixpkgs/pkgs/development/python-modules/spacy/legacy.nix
new file mode 100644
index 000000000000..f8b011d83ccf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/spacy/legacy.nix
@@ -0,0 +1,26 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "spacy-legacy";
+  version = "3.0.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-Uy94rjFllSj622RTzd6UJaQmIniCw4gpeq/X57QcIpA=";
+  };
+
+  # checkInputs = [ pytestCheckHook spacy ];
+  doCheck = false;
+  pythonImportsCheck = [ "spacy_legacy" ];
+
+  meta = with lib; {
+    description = "A Path interface for local and cloud bucket storage";
+    homepage = "https://github.com/justindujardin/pathy";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ melling ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/spacy/models.json b/nixpkgs/pkgs/development/python-modules/spacy/models.json
index 3a427f8932a5..a2989b6da502 100644
--- a/nixpkgs/pkgs/development/python-modules/spacy/models.json
+++ b/nixpkgs/pkgs/development/python-modules/spacy/models.json
@@ -1,264 +1,332 @@
-[{
-  "pname": "da_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "18y1jany1ha27jkwb9563haxsbylm0axkh5c8009lsfxc8y2w9hr",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "da_core_news_md",
-  "version": "2.3.0",
-  "sha256": "06nm5grj5jdx0rja7vw1f91vvd69p6vhafrwpfr1npqk24j6cacb",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "da_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "00byhlrcbg4wxplr473g9b3126pvk4vwy0q34xg0zx4994qb6rgn",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "de_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "0rixhgdz4z7sq6f2b1w3n5cn1645cr37g40hbd9xzlvdzdf5cg6d",
-  "license": "mit"
-},
-{
-  "pname": "de_core_news_md",
-  "version": "2.3.0",
-  "sha256": "0kxir1w000r5fn1kpa38m7688xinkn2mk1m82aiwqlck3r72jdi6",
-  "license": "mit"
-},
-{
-  "pname": "de_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "00cbmrf4njg28laysapdnp4rv4lw4yw03rxkynw1ain5fwb0izl7",
-  "license": "mit"
-},
-{
-  "pname": "el_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "001c19dd1kirlvzbdv2i89zw8nf6c4icv2w0chm7rd6x9m3i13gd",
-  "license": "cc-by-nc-sa-30"
-},
-{
-  "pname": "el_core_news_md",
-  "version": "2.3.0",
-  "sha256": "170x8bzm5nf02mhkxyxjk58yk2639hsjb5b9prcc69500c0vmnp0",
-  "license": "cc-by-nc-sa-30"
-},
-{
-  "pname": "el_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "10mh3za4jvr07rawzk8ps642rp11s3smraj9xvrxflik4fqkz18b",
-  "license": "cc-by-nc-sa-30"
-},
-{
-  "pname": "en_core_web_lg",
-  "version": "2.3.0",
-  "sha256": "0mfa5wz31ya295jhyj489gb4qy806zmpq1zc11bvv5alv2m35if2",
-  "license": "mit"
-},
-{
-  "pname": "en_core_web_md",
-  "version": "2.3.0",
-  "sha256": "1ys8sqkhiap1mq6mhbkbq8bc07lvl68xngbx725xkwvirzl5gabh",
-  "license": "mit"
-},
-{
-  "pname": "en_core_web_sm",
-  "version": "2.3.0",
-  "sha256": "04icv9qf4pj53ll8vqxcjl2a723q1k00i7lifk8wx5saif28g37a",
-  "license": "mit"
-},
-{
-  "pname": "en_vectors_web_lg",
-  "version": "2.3.0",
-  "sha256": "13g012rwh0bcxx3ii5mmygqzyryah1y3zd000zhidnacc1x1g743",
-  "license": "cc-by-sa-30"
-},
-{
-  "pname": "es_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "1r0pr0lzs3j9w7rd5z9nw87iayjm36v7f7gamvaiiphs6bc5p7ls",
-  "license": "gpl3"
-},
-{
-  "pname": "es_core_news_md",
-  "version": "2.3.0",
-  "sha256": "0nz33bmpr3rxqbnv6vb1id8pkfsvh8ii8vqplwgb3b8772kmpzy2",
-  "license": "gpl3"
-},
-{
-  "pname": "es_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "02xqhg4m0gg5r9yibvl02zixkll6w0nsmbdhp07y5yyaqjarc90d",
-  "license": "gpl3"
-},
-{
-  "pname": "fr_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "1yliamws8nqqjhpk9gr2dzlk0dms2mr958zbj21biv8fimbq60ik",
-  "license": "lgpllr"
-},
-{
-  "pname": "fr_core_news_md",
-  "version": "2.3.0",
-  "sha256": "04fk212ksac3bp9dj7dmzsdcnbqmbsgymsic6ddcv9zbfdv5d0db",
-  "license": "lgpllr"
-},
-{
-  "pname": "fr_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "0kldww855z67qfc9maa9z1lsvdf5vj5vc8gj0x3h68kv5n1xr4h0",
-  "license": "lgpllr"
-},
-{
-  "pname": "it_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "192rdmqnwl3ajxzhnw4r1cqv5bkziv0yc2bbzckmzqss64wk7k70",
-  "license": "cc-by-nc-sa-30"
-},
-{
-  "pname": "it_core_news_md",
-  "version": "2.3.0",
-  "sha256": "019ih4vwq1w6j38j0wc8pyyg1an6yy37wxq2w4amwppynmmcnd5w",
-  "license": "cc-by-nc-sa-30"
-},
-{
-  "pname": "it_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "1c3ywqa8li0j7cyvd1xqbb096y61978hd6qv7rc6cxxjdhmkrrds",
-  "license": "cc-by-nc-sa-40"
-},
-{
-  "pname": "lt_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "0hn5w8n7mgv33i6gvnaxl1j44n9gz4j86gg1a9jjlgdw5z98n0p2",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "lt_core_news_md",
-  "version": "2.3.0",
-  "sha256": "1xya79cz2xd5vgzg6qg0ww5j2bmv7kppdk3mdjf6zpwrlzwdbk5d",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "lt_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "0r3rbqgz4897wyhz5jli30lryb45039f4rlvn4q0364cg1pm92g9",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "nb_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "18mblypw3c82004qz5w1p3262iqwn99wl9b781dq7aqwxskr02d6",
-  "license": "mit"
-},
-{
-  "pname": "nb_core_news_md",
-  "version": "2.3.0",
-  "sha256": "0iw97k9glxbar8mrpvnmmcb1nffgdhb83akn99p53pwmqbzxy9p3",
-  "license": "mit"
-},
-{
-  "pname": "nb_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "07b7xri2q3m7fvn9a2gjc1044a3f14231vr32hrw96h7k6vg95h7",
-  "license": "mit"
-},
-{
-  "pname": "nl_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "016166kzpgi0p3m0x3k308a0r60a28yz7npagjvmpl1dfm9lzhnv",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "nl_core_news_md",
-  "version": "2.3.0",
-  "sha256": "1anfhig531k9k14s0cbgsvmvifp3h50qi1h8dhx894kjmq10k2lg",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "nl_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "0alvz7pn7cj0yax8h5gp71vrdblh3mcsmyhzgiddsd44ry35nxnj",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "pl_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "1acchp8pv1h4c6cwvxz07lh4ychn6aw809zfg3mbbsxgsgd2ahjr",
-  "license": "gpl3"
-},
-{
-  "pname": "pl_core_news_md",
-  "version": "2.3.0",
-  "sha256": "19jjjjvbys3ayibkm3cx497b4bh63ll39hfq04wx116rj4ajpwwg",
-  "license": "gpl3"
-},
-{
-  "pname": "pl_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "166mqlfkgiszcc6hwg2mr6sir9y88y22nd81a1nidq0fiif5lfji",
-  "license": "gpl3"
-},
-{
-  "pname": "pt_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "18gvdmfwyy2sbq6206imglhghyagd6a4gb6wcfkwhm7lzbnq714d",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "pt_core_news_md",
-  "version": "2.3.0",
-  "sha256": "1yxnpwby2aq6ydvd35lylc4fs141fisfnzlx8pl88pp2b2gxijvl",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "pt_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "1vcvzdg9f93x0vaafkk9l9xhpmaavfj0cf0l3p06c5kx2d76f9ph",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "ro_core_news_sm",
-  "version": "2.3.0",
-  "sha256": "0lsmbdwsaczv37y5sa1vvgwszy2hs8jp24a0nvc5qm8vb71rxj8w",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "ro_core_news_md",
-  "version": "2.3.0",
-  "sha256": "1igwkz3yd1117gi2g78yilh9ln8n5yrdimas4prfxjgzwid3q8bc",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "ro_core_news_lg",
-  "version": "2.3.0",
-  "sha256": "0id1y32kjfans7llh1i55rgr4n2x6xn208y4qf6yl3pbc17i0n9z",
-  "license": "cc-by-sa-40"
-},
-{
-  "pname": "xx_ent_wiki_sm",
-  "version": "2.3.0",
-  "sha256": "0x3zmmybl5kh4dn5prkfmr4q5j9bh13p40qc3rhdfi0i3jxc11pn",
-  "license": "mit"
-},
-{
-  "pname": "zh_core_web_lg",
-  "version": "2.3.1",
-  "sha256": "17zxk7cz47k07yb3qaigc3sx4dj4zwilr1lsn2jq6w7jc8k2h1ll",
-  "license": "mit"
-},
-{
-  "pname": "zh_core_web_md",
-  "version": "2.3.1",
-  "sha256": "1n4iwxyam4ykn0f9jdzwkhczack8r9c3kkbyga3c4h6iwqsflzcj",
-  "license": "mit"
-},
-{
-  "pname": "zh_core_web_sm",
-  "version": "2.3.1",
-  "sha256": "1lj5nwhx38cpwnvajwxlfkf84dr1xx2h6wwbg3scycsh459i9fpc",
-  "license": "mit"
-}]
+[
+  {
+    "pname": "da_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "0l0wljc1lm9a72ngfd4aa90laz4zcc37ix9nsiaqlw004v01z7wj",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "da_core_news_md",
+    "version": "3.0.0",
+    "sha256": "14h3ym22224aimfk2kj88pmn83hkb57w402i0x6pd7ra86n372lh",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "da_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "05893dpmx76waqnlysnkq8hz9271rkk30xf6hy98gka6244l9a1l",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "de_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "0s7vfpr9gv22pvh697ffg35fppxkjhw23ynf4bpz73hl9jikdqvj",
+    "license": "mit"
+  },
+  {
+    "pname": "de_core_news_md",
+    "version": "3.0.0",
+    "sha256": "09vvlm3rxmyiima81y4bvcyxhn9bjxrqlkbmglzmwhrhxm84nkmx",
+    "license": "mit"
+  },
+  {
+    "pname": "de_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1w5aqfzknnnxpsi9i6kn6bki58j0mp24d4gr2203bf6g5kahiq03",
+    "license": "mit"
+  },
+  {
+    "pname": "de_dep_news_trf",
+    "version": "3.0.0",
+    "sha256": "1snkm911jn73mqfz0y0anr12r6j3gdi6wd8qmd5alwm623x4s6hm",
+    "license": "mit"
+  },
+  {
+    "pname": "el_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "011lqmx3f3laf2vvqp0hxp5y105pn54kwdh1xzw4hs2pj6fac9p5",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "el_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0p75c18sg38j9dj79ykmm5kzcwjxccpgrcw4cjcscb6ad6wwvcjx",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "el_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "0gvisa7yg1w49hpfp79ahy50v64l3rmk56k0k7zkgc8ml1gn892r",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "en_core_web_lg",
+    "version": "3.0.0",
+    "sha256": "0sdb85zvfb12d14k3wy23dfryy3xwc9ag79zq71qnxwpvvygmc8y",
+    "license": "mit"
+  },
+  {
+    "pname": "en_core_web_md",
+    "version": "3.0.0",
+    "sha256": "0c669b1vsp3z28n52lfsijmkn9465r8zjjygjml5rlf9lf1paxa5",
+    "license": "mit"
+  },
+  {
+    "pname": "en_core_web_sm",
+    "version": "3.0.0",
+    "sha256": "0risizvzkicffw7vgrj92z23dfb7zvvzihqgvjcrx8989b7b6wq6",
+    "license": "mit"
+  },
+  {
+    "pname": "en_core_web_trf",
+    "version": "3.0.0",
+    "sha256": "0plmg77rv1spr0swn4jakci16mbqsxm32mz9nnwc9ylynbvgrhmn",
+    "license": "mit"
+  },
+  {
+    "pname": "es_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "0832w8qmg0fp2q8329ndlbbzpfkpbw9v38ny7106a45xaz0rn2xc",
+    "license": "gpl3"
+  },
+  {
+    "pname": "es_core_news_md",
+    "version": "3.0.0",
+    "sha256": "01is980r63a5418jq917scapzkl9xydj56lrsxbr16fya0hh8qnn",
+    "license": "gpl3"
+  },
+  {
+    "pname": "es_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1wgya0f25dgix57pb60fyl4hf2msma16d1f6cf617ypk6g3v80rb",
+    "license": "gpl3"
+  },
+  {
+    "pname": "es_dep_news_trf",
+    "version": "3.0.0",
+    "sha256": "07lim35p0mxb75qiym79wcrak3j7wcan393260haxgwrj29rzpvv",
+    "license": "gpl3"
+  },
+  {
+    "pname": "fr_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "1frg734lb64gkm7pagqp1mj7lqpwsxxj5vyjm10yja0rkdi6kcca",
+    "license": "lgpllr"
+  },
+  {
+    "pname": "fr_core_news_md",
+    "version": "3.0.0",
+    "sha256": "1xshr9r639hdb8vkj5nribk4lkm3a5fb7zrxj3y3p678dr53xalz",
+    "license": "lgpllr"
+  },
+  {
+    "pname": "fr_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "0n23c9rbg1b44c8yjlf6cc0g8ccj6x0rmfjg76ddmpkjaj83jwv1",
+    "license": "lgpllr"
+  },
+  {
+    "pname": "fr_dep_news_trf",
+    "version": "3.0.0",
+    "sha256": "192l6n5yxn1ndc4fk8k759j2d5hryj9mfkpy2aminaxr4dmp2imr",
+    "license": "lgpllr"
+  },
+  {
+    "pname": "it_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "121nki732wrnfyzcflvsv54nvrz3l3hx55hkd72hlhrvjw0kvkv5",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "it_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0m168wrf1p6dz5kc4n5ga2h8c0d6jzxx876i3ndrg6b7z418hhi5",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "it_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "132v06cah8l7q4caxg6n4nw34v9jd8y8cqp20njryx4nirm9c36l",
+    "license": "cc-by-nc-sa-30"
+  },
+  {
+    "pname": "lt_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "034qycqpbdiyzhpzjz92kpnx6z2nai70dddz75r48hylzlw1d92h",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "lt_core_news_md",
+    "version": "3.0.0",
+    "sha256": "18mb2lmrjwnsc7s4yaq3yvdbh8p8p1k0xpm8cqn521hanpr0jqj3",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "lt_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1p998h9lnp16czj3gg8781gywg17dap2h9f8qc6f87daxyc9bdjs",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "mk_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "1fmrpgq9plndid7402wkybidpi0phnybb3031jxppan99ihr3hfj",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "mk_core_news_md",
+    "version": "3.0.0",
+    "sha256": "1mnabkyjxph2xa4g2an5rqp24d4gbq969ln27zpjycyiwxlkz7vl",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "mk_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1ax6pl61n0p4qf4wcd6c7d42zqjrgh3vhlpl6xby57a78547asxr",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "nb_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "07a8nsfswlpb2jc2afzf201bjkl2nlz40kqmjx3dbva8jphj3ljs",
+    "license": "mit"
+  },
+  {
+    "pname": "nb_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0y1vydhhgb6cifq7k4vc7dy4jl6wb1z6pklbv65v6nxl7rhn76fz",
+    "license": "mit"
+  },
+  {
+    "pname": "nb_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1lk1869cb2176j6lvd8lraclfl706p12m1gvvf1ixm99ra8zkxhs",
+    "license": "mit"
+  },
+  {
+    "pname": "nl_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "0iq4ayzh9g9gil4l8kcl5qcm0l16hymavsqgiczf3ddvamciqaxs",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "nl_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0g9dkzwxndcf05bnhkd9fzqj7n614naspyhalg6h9h1kb7v3m2ak",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "nl_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1l4mk3gs15yc5kssy4x4lyab9kmg9y199h4hvizwh8y1ifqbqy03",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "pl_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "14ldch7rps1qxh3ldczh7f29ra3dq2kxaxpfbx7r6f1xpmk5s1rv",
+    "license": "gpl3"
+  },
+  {
+    "pname": "pl_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0fx6ipd8ll2d0w8qwn9cjw0q7w0r3l40467d6mizi4mx93q7m7iw",
+    "license": "gpl3"
+  },
+  {
+    "pname": "pl_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "0p1gcniyrn9qya4wg1qd6ijfchc7lhk0dh4iba8y71mss3n162fs",
+    "license": "gpl3"
+  },
+  {
+    "pname": "pt_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "1vsw1ng364466jz6ffyj9dj3jh4s68gk7csxylc1fj7wac8jxrbj",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "pt_core_news_md",
+    "version": "3.0.0",
+    "sha256": "11laikyd6m9zprk7bnfn0v2lixvkcgvpv95dp0zpc0q2izmky6q8",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "pt_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "12d59q1gvpx8dj48iq17sindd6wid09hnjb4fw0rb00bb28rmqk1",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "ro_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "11mkip5piy6g7rg51ljqjn61s4ydlafl6qp3v29zmm3lghc66h8c",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "ro_core_news_md",
+    "version": "3.0.0",
+    "sha256": "1jyf3khki7xqbp6ir0p4y2p7rdhs36zq2i1960ik4kr2mhnzrblg",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "ro_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "0gc61gdfgji92mjdpznkf30nl1fz7378h9bz8dlhvnc401hjzsky",
+    "license": "cc-by-sa-40"
+  },
+  {
+    "pname": "ru_core_news_lg",
+    "version": "3.0.0",
+    "sha256": "1x1hxvhki62ypj3x0s4syfhz3znlflp36qkp4l2g2sbxjj2qw7n3",
+    "license": "mit"
+  },
+  {
+    "pname": "ru_core_news_md",
+    "version": "3.0.0",
+    "sha256": "0ks0qdyq6627cbg8fbbhvr83d3m8njs2aj8pri540gz9nrbj5479",
+    "license": "mit"
+  },
+  {
+    "pname": "ru_core_news_sm",
+    "version": "3.0.0",
+    "sha256": "1x3bmd7f0fqf03wds01imwpbv4xng1qq9iq61m8rbqvskm5jlzbb",
+    "license": "mit"
+  },
+  {
+    "pname": "xx_ent_wiki_sm",
+    "version": "3.0.0",
+    "sha256": "1115vap4c6snvkwq8bmc8dld1mw5ky0w9n112hadp85pv012ccds",
+    "license": "mit"
+  },
+  {
+    "pname": "xx_sent_ud_sm",
+    "version": "3.0.0",
+    "sha256": "062g3xfb3fp33b56wa4fj84smr5rlc0dbja102khxnqm2aakk99k",
+    "license": "cc-by-sa-30"
+  },
+  {
+    "pname": "zh_core_web_lg",
+    "version": "3.0.0",
+    "sha256": "1ai34fc2wfmb35f1zissddf6jjqpg51wqiyqqq35h03jyf4731jr",
+    "license": "mit"
+  },
+  {
+    "pname": "zh_core_web_md",
+    "version": "3.0.0",
+    "sha256": "10npzl8nvyj4jdn2f9iai9inq5c4x3hxdk0ycgg9wcgqaj09gnxa",
+    "license": "mit"
+  },
+  {
+    "pname": "zh_core_web_sm",
+    "version": "3.0.0",
+    "sha256": "1f9x5lr8vnvb1n8hc59vm2xi6kv2rj78x1vm916z6ic3vg7vwl1h",
+    "license": "mit"
+  },
+  {
+    "pname": "zh_core_web_trf",
+    "version": "3.0.0",
+    "sha256": "178w8dfcvx4aabasid6r0pnwqd5k02cvlq35siqjgfn7j3zb56z0",
+    "license": "mit"
+  }
+]
diff --git a/nixpkgs/pkgs/development/python-modules/spacy/models.nix b/nixpkgs/pkgs/development/python-modules/spacy/models.nix
index 8c57d2e0d262..c34bbdfb83d8 100644
--- a/nixpkgs/pkgs/development/python-modules/spacy/models.nix
+++ b/nixpkgs/pkgs/development/python-modules/spacy/models.nix
@@ -1,4 +1,12 @@
-{ lib, buildPythonPackage, fetchurl, jieba, pkuseg, spacy }:
+{ lib
+, buildPythonPackage
+, fetchurl
+, jieba
+, pymorphy2
+, sentencepiece
+, spacy
+, spacy-pkuseg
+, spacy-transformers }:
 let
   buildModelPackage = { pname, version, sha256, license }:
   let
@@ -12,7 +20,15 @@ let
     };
 
     propagatedBuildInputs = [ spacy ]
-      ++ lib.optionals (lang == "zh") [ jieba pkuseg ];
+      ++ lib.optionals (lang == "zh") [ jieba spacy-pkuseg ]
+      ++ lib.optionals (lib.hasSuffix "_trf" pname) [ spacy-transformers ]
+      ++ lib.optionals (lang == "ru") [ pymorphy2 ]
+      ++ lib.optionals (pname == "fr_dep_news_trf") [ sentencepiece ];
+
+    postPatch = lib.optionals (pname == "fr_dep_news_trf") ''
+      substituteInPlace meta.json \
+        --replace "sentencepiece==0.1.91" "sentencepiece>=0.1.91"
+    '';
 
     pythonImportsCheck = [ pname ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/spectral-cube/default.nix b/nixpkgs/pkgs/development/python-modules/spectral-cube/default.nix
index d2f79c183480..329b225b5769 100644
--- a/nixpkgs/pkgs/development/python-modules/spectral-cube/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/spectral-cube/default.nix
@@ -1,11 +1,12 @@
 { lib
 , fetchPypi
+, fetchpatch
 , buildPythonPackage
 , aplpy
 , joblib
 , astropy
 , radio_beam
-, pytest
+, pytestCheckHook
 , pytest-astropy
 , astropy-helpers
 }:
@@ -20,13 +21,18 @@ buildPythonPackage rec {
     sha256 = "17zisr26syfb8kn89xj17lrdycm0hsmy5yp5zrn236wgd8rjriki";
   };
 
+  patches = [
+    # Fix compatibility with radio_beam >= 0.3.3. Will be included
+    # in the next release of spectral cube > 0.5.0
+    (fetchpatch {
+      url = "https://github.com/radio-astro-tools/spectral-cube/commit/bbe4295ebef7dfa6fe4474275a29acd6cb0cb544.patch";
+    sha256 = "1qddfm3364kc34yf6wd9nd6rxh4qc2v5pqilvz9adwb4a50z28bf";
+    })
+  ];
+
   nativeBuildInputs = [ astropy-helpers ];
   propagatedBuildInputs = [ astropy radio_beam joblib ];
-  checkInputs = [ aplpy pytest pytest-astropy ];
-
-  checkPhase = ''
-    pytest spectral_cube
-  '';
+  checkInputs = [ pytestCheckHook aplpy pytest-astropy ];
 
   meta = {
     description = "Library for reading and analyzing astrophysical spectral data cubes";
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx-autobuild/default.nix b/nixpkgs/pkgs/development/python-modules/sphinx-autobuild/default.nix
index 7d4629be50c7..379dbdd0b3da 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinx-autobuild/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinx-autobuild/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, colorama
 , sphinx
 , livereload
 }:
@@ -14,10 +15,15 @@ buildPythonPackage rec {
     sha256 = "de1ca3b66e271d2b5b5140c35034c89e47f263f2cd5db302c9217065f7443f05";
   };
 
-  propagatedBuildInputs = [ sphinx livereload ];
+  propagatedBuildInputs = [
+    colorama
+    sphinx
+    livereload
+  ];
 
   # No tests included.
   doCheck = false;
+
   pythonImportsCheck = [ "sphinx_autobuild" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx-jinja/default.nix b/nixpkgs/pkgs/development/python-modules/sphinx-jinja/default.nix
index 060d7f14a336..6f721ad1a8f6 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinx-jinja/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinx-jinja/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Sphinx extension to include jinja templates in documentation";
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     license = licenses.mit;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx-markdown-parser/default.nix b/nixpkgs/pkgs/development/python-modules/sphinx-markdown-parser/default.nix
new file mode 100644
index 000000000000..e3ebac0744a7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinx-markdown-parser/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, sphinx
+, markdown
+, CommonMark
+, recommonmark
+, pydash
+, pyyaml
+, unify
+, yapf
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "sphinx-markdown-parser";
+  version = "0.2.4";
+
+  # PyPi release does not include requirements.txt
+  src = fetchFromGitHub {
+    owner = "clayrisser";
+    repo = "sphinx-markdown-parser";
+    # Upstream maintainer currently does not tag releases
+    # https://github.com/clayrisser/sphinx-markdown-parser/issues/35
+    rev = "2fd54373770882d1fb544dc6524c581c82eedc9e";
+    sha256 = "0i0hhapmdmh83yx61lxi2h4bsmhnzddamz95844g2ghm132kw5mv";
+  };
+
+  propagatedBuildInputs = [ sphinx markdown CommonMark pydash pyyaml unify yapf recommonmark ];
+
+  # Avoids running broken tests in test_markdown.py
+  checkPhase = ''
+    ${python.interpreter} -m unittest -v tests/test_basic.py tests/test_sphinx.py
+  '';
+
+  pythonImportsCheck = [ "sphinx_markdown_parser" ];
+
+  meta = with lib; {
+    description = "Write markdown inside of docutils & sphinx projects";
+    homepage = "https://github.com/clayrisser/sphinx-markdown-parser";
+    license = licenses.mit;
+    maintainers = with maintainers; [ FlorianFranzen ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx/2.nix b/nixpkgs/pkgs/development/python-modules/sphinx/2.nix
index 5cf2cecd97f2..0424b9b4c39b 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinx/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinx/2.nix
@@ -77,6 +77,6 @@ buildPythonPackage rec {
     description = "A tool that makes it easy to create intelligent and beautiful documentation for Python projects";
     homepage = "http://sphinx.pocoo.org/";
     license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ nand0p ];
+    maintainers = with lib.maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx/default.nix b/nixpkgs/pkgs/development/python-modules/sphinx/default.nix
index 1c5cc29f4146..5e31b6b19fa1 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinx/default.nix
@@ -1,24 +1,18 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, pytest
-, simplejson
-, mock
-, glibcLocales
-, html5lib
 , pythonOlder
-, enum34
-, python
+, fetchFromGitHub
+# propagatedBuildInputs
+, Babel
+, alabaster
 , docutils
+, imagesize
 , jinja2
+, packaging
 , pygments
-, alabaster
-, Babel
-, snowballstemmer
-, six
-, whoosh
-, imagesize
 , requests
+, setuptools
+, snowballstemmer
 , sphinxcontrib-applehelp
 , sphinxcontrib-devhelp
 , sphinxcontrib-htmlhelp
@@ -26,56 +20,70 @@
 , sphinxcontrib-qthelp
 , sphinxcontrib-serializinghtml
 , sphinxcontrib-websupport
-, typing ? null
-, setuptools
-, packaging
+# check phase
+, html5lib
+, imagemagick
+, pytestCheckHook
+, typed-ast
 }:
 
 buildPythonPackage rec {
   pname = "sphinx";
-  version = "3.3.1";
-  src = fetchPypi {
-    pname = "Sphinx";
-    inherit version;
-    sha256 = "1e8d592225447104d1172be415bc2972bd1357e3e12fdc76edf2261105db4300";
+  version = "3.5.4";
+  disabled = pythonOlder "3.5";
+
+  src = fetchFromGitHub {
+    owner = "sphinx-doc";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1xjii3dl01rq8x2bsxc6zywiy1s7arfgxrg5l8ml54w1748shadd";
   };
-  LC_ALL = "en_US.UTF-8";
 
-  checkInputs = [ pytest ];
-  buildInputs = [ simplejson mock glibcLocales html5lib ] ++ lib.optional (pythonOlder "3.4") enum34;
-  # Disable two tests that require network access.
-  checkPhase = ''
-    cd tests; ${python.interpreter} run.py --ignore py35 -k 'not test_defaults and not test_anchors_ignored'
-  '';
   propagatedBuildInputs = [
+    Babel
+    alabaster
     docutils
+    imagesize
     jinja2
-    pygments
-    alabaster
-    Babel
     packaging
+    pygments
+    requests
     setuptools
     snowballstemmer
-    six
-    whoosh
-    imagesize
-    requests
     sphinxcontrib-applehelp
     sphinxcontrib-devhelp
     sphinxcontrib-htmlhelp
     sphinxcontrib-jsmath
     sphinxcontrib-qthelp
     sphinxcontrib-serializinghtml
+    # extra[docs]
     sphinxcontrib-websupport
-  ] ++ lib.optional (pythonOlder "3.5") typing;
+  ];
+
+  checkInputs = [
+    imagemagick
+    html5lib
+    pytestCheckHook
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typed-ast
+  ];
 
-  # Lots of tests. Needs network as well at some point.
-  doCheck = false;
+  disabledTests = [
+    # requires network access
+    "test_anchors_ignored"
+    "test_defaults"
+    "test_defaults_json"
+    "test_latex_images"
+  ];
 
-  meta = {
-    description = "A tool that makes it easy to create intelligent and beautiful documentation for Python projects";
-    homepage = "http://sphinx.pocoo.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ nand0p ];
+  meta = with lib; {
+    description = "Python documentation generator";
+    longDescription = ''
+      A tool that makes it easy to create intelligent and beautiful
+      documentation for Python projects
+    '';
+    homepage = "https://www.sphinx-doc.org";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-actdiag/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-actdiag/default.nix
new file mode 100644
index 000000000000..81fa98312565
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-actdiag/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, sphinx
+, actdiag
+, blockdiag
+}:
+
+buildPythonPackage rec {
+  pname = "sphinxcontrib-actdiag";
+  version = "2.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-TtuFZOLkig4MULLndDQlrTTx8RiGw34MsjmXoPladMY=";
+  };
+
+  propagatedBuildInputs = [ sphinx actdiag blockdiag ];
+
+  pythonImportsCheck = [ "sphinxcontrib.actdiag" ];
+
+  meta = with lib; {
+    description = "Sphinx actdiag extension";
+    homepage = "https://github.com/blockdiag/sphinxcontrib-actdiag";
+    maintainers = with maintainers; [ davidtwco ];
+    license = licenses.bsd2;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-blockdiag/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-blockdiag/default.nix
index 956e3c033b9b..97e9c7529f23 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-blockdiag/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-blockdiag/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Sphinx blockdiag extension";
     homepage = "https://github.com/blockdiag/sphinxcontrib-blockdiag";
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     license = licenses.bsd2;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-excel-table/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-excel-table/default.nix
new file mode 100644
index 000000000000..e48b24c3644f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-excel-table/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, sphinx
+, openpyxl
+}:
+
+buildPythonPackage rec {
+  pname = "sphinxcontrib-excel-table";
+  version = "1.0.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256:1q79byn3k3ribvwqafbpixwabjhymk46ns8ym0hxcn8vhf5nljzd";
+  };
+
+  propagatedBuildInputs = [ sphinx openpyxl ];
+
+  pythonImportsCheck = [ "sphinxcontrib.excel_table" ];
+
+  # No tests present upstream
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Sphinx excel-table extension";
+    homepage = "https://github.com/hackerain/sphinxcontrib-excel-table";
+    maintainers = with maintainers; [ raboof ];
+    license = licenses.asl20;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-nwdiag/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-nwdiag/default.nix
new file mode 100644
index 000000000000..10963a73a912
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-nwdiag/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, sphinx
+, blockdiag
+, nwdiag
+}:
+
+buildPythonPackage rec {
+  pname = "sphinxcontrib-nwdiag";
+  version = "2.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-bula1DutRv6NwfZRhciZfLHRZmXu42p+qvbeExN/+Fk=";
+  };
+
+  propagatedBuildInputs = [ sphinx blockdiag nwdiag ];
+
+  pythonImportsCheck = [ "sphinxcontrib.nwdiag" ];
+
+  meta = with lib; {
+    description = "Sphinx nwdiag extension";
+    homepage = "https://github.com/blockdiag/sphinxcontrib-nwdiag";
+    maintainers = with maintainers; [ davidtwco ];
+    license = licenses.bsd2;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
index a9548305d3bd..c85d967222e3 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
-, setuptools_scm
+, setuptools-scm
 , m2r
 , pyyaml
 , jsonschema
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "1c1bd10d7653912c59a42f727c62cbb7b75f7905ddd9ccc477ebfd1bc69f0cf3";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ pyyaml jsonschema m2r sphinxcontrib_httpdomain ];
 
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-seqdiag/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-seqdiag/default.nix
new file mode 100644
index 000000000000..c7407300d313
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-seqdiag/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, sphinx
+, blockdiag
+, seqdiag
+}:
+
+buildPythonPackage rec {
+  pname = "sphinxcontrib-seqdiag";
+  version = "2.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-THJ1ra/W2X/lQaDjGbL27VMn0lWPJApwgKMrPhL0JY0=";
+  };
+
+  propagatedBuildInputs = [ sphinx blockdiag seqdiag ];
+
+  pythonImportsCheck = [ "sphinxcontrib.seqdiag" ];
+
+  meta = with lib; {
+    description = "Sphinx seqdiag extension";
+    homepage = "https://github.com/blockdiag/sphinxcontrib-seqdiag";
+    maintainers = with maintainers; [ davidtwco ];
+    license = licenses.bsd2;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
index 2b5beb4df079..35b7cf38aa99 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Sphinx spelling extension";
     homepage = "https://bitbucket.org/dhellmann/sphinxcontrib-spelling";
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     license = licenses.bsd2;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/spidev/default.nix b/nixpkgs/pkgs/development/python-modules/spidev/default.nix
index 0d0fd582363e..90ca839bc1e0 100644
--- a/nixpkgs/pkgs/development/python-modules/spidev/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/spidev/default.nix
@@ -19,6 +19,7 @@ buildPythonPackage rec {
     description = "Python bindings for Linux SPI access through spidev";
     license = licenses.mit;
     maintainers = with maintainers; [ hexa ];
+    platforms = platforms.linux;
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/spyder/default.nix b/nixpkgs/pkgs/development/python-modules/spyder/default.nix
index 0293699a450c..12dd743751f4 100644
--- a/nixpkgs/pkgs/development/python-modules/spyder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/spyder/default.nix
@@ -3,7 +3,7 @@
   keyring, numpydoc, qtconsole, qtawesome, nbconvert, mccabe, pyopengl,
   cloudpickle, pygments, spyder-kernels, qtpy, pyzmq, chardet, qdarkstyle,
   watchdog, python-language-server, pyqtwebengine, atomicwrites, pyxdg,
-  diff-match-patch, three-merge, pyls-black, pyls-spyder, flake8
+  diff-match-patch, three-merge, pyls-black, pyls-spyder, flake8, textdistance
 }:
 
 buildPythonPackage rec {
@@ -20,11 +20,11 @@ buildPythonPackage rec {
   nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ];
 
   propagatedBuildInputs = [
-    intervaltree jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint keyring
+    intervaltree jedi pycodestyle psutil rope numpy scipy matplotlib pylint keyring
     numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle spyder-kernels
     pygments qtpy pyzmq chardet pyqtwebengine qdarkstyle watchdog python-language-server
     atomicwrites pyxdg diff-match-patch three-merge pyls-black pyls-spyder
-    flake8
+    flake8 textdistance
   ];
 
   # There is no test for spyder
@@ -44,9 +44,13 @@ buildPythonPackage rec {
     # remove dependency on pyqtwebengine
     # this is still part of the pyqt 5.11 version we have in nixpkgs
     sed -i /pyqtwebengine/d setup.py
+    # The major version bump in watchdog is due to changes in supported
+    # platforms, not API break.
+    # https://github.com/gorakhargosh/watchdog/issues/761#issuecomment-777001518
     substituteInPlace setup.py \
       --replace "pyqt5<5.13" "pyqt5" \
-      --replace "parso==0.7.0" "parso"
+      --replace "parso==0.7.0" "parso" \
+      --replace "watchdog>=0.10.3,<2.0.0" "watchdog>=0.10.3,<3.0.0"
   '';
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/python-modules/srsly/default.nix b/nixpkgs/pkgs/development/python-modules/srsly/default.nix
index c6db32a15e41..86550f998734 100644
--- a/nixpkgs/pkgs/development/python-modules/srsly/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/srsly/default.nix
@@ -6,20 +6,19 @@
 , catalogue
 , mock
 , numpy
-, pathlib
 , pytest
-, pytz
+, ruamel-yaml
 }:
 
 buildPythonPackage rec {
   pname = "srsly";
-  version = "2.4.0";
+  version = "2.4.1";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e29730be53015970e4a59050e8e9f9be44d762108a617df56c9dfc981b515ab7";
+    hash = "sha256-sPKuwKMp5ufnQqCmDpmnSWjKKb5x81xcTeIh4ygXaSY=";
   };
 
   nativeBuildInputs = [ cython ];
@@ -30,13 +29,9 @@ buildPythonPackage rec {
     mock
     numpy
     pytest
-    pytz
+    ruamel-yaml
   ];
 
-  # TypeError: cannot serialize '_io.BufferedRandom' object
-  # Possibly because of sandbox restrictions.
-  doCheck = false;
-
   pythonImportsCheck = [ "srsly" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/sslyze/default.nix b/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
index 991f85c900ec..5680b4bd36b3 100644
--- a/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
@@ -6,39 +6,44 @@
 , typing-extensions
 , faker
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "sslyze";
-  version = "3.1.0";
+  version = "4.1.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    sha256 = "02p0lgpkfq88dys0dqw0z8bpg9g8pds2lvs9awd9f2w5cb1pwr83";
+    hash = "sha256-oSTKNiECczlPAbv5Azc023PcquFbnlC5O+8tVgNcUW0=";
   };
 
   patchPhase = ''
     substituteInPlace setup.py \
-      --replace "cryptography>=2.6,<3.3" "cryptography>=2.6,<4.0"
+      --replace "cryptography>=2.6,<3.5" "cryptography>=2.6,<4.0"
   '';
 
   checkInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    # Most of the tests are online; hence, applicable tests are listed
-    # explicitly here
-    pytest \
-      tests/test_main.py \
-      tests/test_scanner.py \
-      tests/cli_tests/test_console_output.py \
-      tests/cli_tests/test_json_output.py \
-      tests/cli_tests/test_server_string_parser.py \
-      tests/plugins_tests/test_scan_commands.py \
-      tests/plugins_tests/certificate_info/test_certificate_utils.py \
-      -k "not (TestScanner and test_client_certificate_missing)"
-  '';
+  # Most of the tests are online; hence, applicable tests are listed
+  # explicitly here
+  pytestFlagsArray = [
+    "tests/test_main.py"
+    "tests/test_scanner.py"
+    "tests/cli_tests/test_console_output.py"
+    "tests/cli_tests/test_json_output.py"
+    "tests/cli_tests/test_server_string_parser.py"
+    "tests/plugins_tests/test_scan_commands.py"
+    "tests/plugins_tests/certificate_info/test_certificate_utils.py"
+  ];
+
+  disabledTests = [
+    "test_error_client_certificate_needed"
+  ];
+
   pythonImportsCheck = [ "sslyze" ];
 
   propagatedBuildInputs = [ nassl cryptography typing-extensions faker ];
@@ -47,7 +52,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/nabla-c0d3/sslyze";
     description = "Fast and powerful SSL/TLS scanning library";
     platforms = platforms.linux ++ platforms.darwin;
-    license = licenses.agpl3;
+    license = licenses.agpl3Only;
     maintainers = with maintainers; [ veehaitch ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/stack-data/default.nix b/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
index 71f114e3528b..f529a8a00b00 100644
--- a/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
@@ -8,7 +8,7 @@
 , pure-eval
 , pygments
 , pytestCheckHook
-, setuptools_scm
+, setuptools-scm
 , toml
 , typeguard
 }:
@@ -28,7 +28,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     git
-    setuptools_scm
+    setuptools-scm
     toml
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/staticjinja/default.nix b/nixpkgs/pkgs/development/python-modules/staticjinja/default.nix
index e7f1e442f4d8..1f9a63927bb3 100644
--- a/nixpkgs/pkgs/development/python-modules/staticjinja/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/staticjinja/default.nix
@@ -13,17 +13,15 @@
 
 buildPythonPackage rec {
   pname = "staticjinja";
-  version = "1.0.4";
+  version = "2.0.0";
   format = "pyproject";
 
-  disabled = isPy27; # 0.4.0 drops python2 support
-
   # No tests in pypi
   src = fetchFromGitHub {
     owner = "staticjinja";
     repo = pname;
     rev = version;
-    sha256 = "1saz6f71s693gz9c2k3bq2di2mrkj65mgmfdg86jk0z0zzjk90y1";
+    sha256 = "0z5y4l4sv4c7zmp6pj1ws3psq7i87xqbcmk648bmsa1d6prr1hil";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/stem/default.nix b/nixpkgs/pkgs/development/python-modules/stem/default.nix
index 32e4bab5afcc..c607d45e1706 100644
--- a/nixpkgs/pkgs/development/python-modules/stem/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stem/default.nix
@@ -12,6 +12,8 @@ buildPythonPackage rec {
   postPatch = ''
     rm test/unit/installation.py
     sed -i "/test.unit.installation/d" test/settings.cfg
+    # https://github.com/torproject/stem/issues/56
+    sed -i '/MOCK_VERSION/d' run_tests.py
   '';
 
   checkInputs = [ mock ];
diff --git a/nixpkgs/pkgs/development/python-modules/stytra/default.nix b/nixpkgs/pkgs/development/python-modules/stytra/default.nix
index 80eefc0a639e..fba544789a81 100644
--- a/nixpkgs/pkgs/development/python-modules/stytra/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stytra/default.nix
@@ -8,7 +8,6 @@
 , pandas
 , tables
 , git
-, ffmpeg_3
 , scikitimage
 , matplotlib
 , qdarkstyle
@@ -59,7 +58,6 @@ buildPythonPackage rec {
     pandas
     tables
     git
-    ffmpeg_3
     scikitimage
     matplotlib
     qdarkstyle
@@ -79,7 +77,7 @@ buildPythonPackage rec {
   meta = {
     homepage = "https://github.com/portugueslab/stytra";
     description = "A modular package to control stimulation and track behaviour";
-    license = lib.licenses.gpl3;
+    license = lib.licenses.gpl3Plus;
     maintainers = with lib.maintainers; [ tbenst ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/subliminal/default.nix b/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
index 77ddb125a94b..cedbb7bcf786 100644
--- a/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
@@ -1,7 +1,6 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, isPy3k
 , guessit
 , babelfish
 , enzyme
@@ -16,7 +15,6 @@
 , appdirs
 , rarfile
 , pytz
-, futures
 , sympy
 , vcrpy
 , pytest
@@ -38,7 +36,7 @@ buildPythonPackage rec {
     guessit babelfish enzyme beautifulsoup4 requests
     click dogpile_cache stevedore chardet pysrt six
     appdirs rarfile pytz
-  ] ++ lib.optional (!isPy3k) futures;
+  ];
 
   checkInputs = [
     sympy vcrpy pytest pytest-flakes
@@ -47,6 +45,7 @@ buildPythonPackage rec {
 
   # https://github.com/Diaoul/subliminal/pull/963
   doCheck = false;
+  pythonImportsCheck = [ "subliminal" ];
 
   meta = with lib; {
     homepage = "https://github.com/Diaoul/subliminal";
diff --git a/nixpkgs/pkgs/development/python-modules/sumo/default.nix b/nixpkgs/pkgs/development/python-modules/sumo/default.nix
index 9ba073df9228..cc47eafd1afa 100644
--- a/nixpkgs/pkgs/development/python-modules/sumo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sumo/default.nix
@@ -1,37 +1,44 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy27
+{ lib, buildPythonPackage, fetchFromGitHub
+, pythonOlder
 , h5py
 , matplotlib
 , numpy
 , phonopy
 , pymatgen
-, pytest
 , scipy
 , seekpath
 , spglib
+, castepxbin
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "sumo";
-  version = "2.2.1";
+  version = "2.2.4";
+
+  disabled = pythonOlder "3.6";
 
   # No tests in Pypi tarball
   src = fetchFromGitHub {
     owner = "SMTG-UCL";
     repo = "sumo";
     rev = "v${version}";
-    sha256 = "0r88f5w33h9b0mv7shlqc4przwvas5ycgndvl91wqjnm3b2s3ix0";
+    sha256 = "051353gsxmh4qnabshfnc00mmzdbh1fgk1xdfnsfgcnijxgw25bb";
   };
 
-  propagatedBuildInputs = [ numpy scipy spglib pymatgen h5py matplotlib seekpath phonopy ];
-
-  checkInputs = [ pytest ];
-
-  checkPhase = ''
-    pytest .
-  '';
+  propagatedBuildInputs = [
+    spglib
+    numpy
+    scipy
+    h5py
+    pymatgen
+    phonopy
+    matplotlib
+    seekpath
+    castepxbin
+  ];
 
-  # tests have type annotations, can only run on 3.5+
-  doCheck = (!isPy27);
+  checkInputs = [ pytestCheckHook ];
 
   meta = with lib; {
     description = "Toolkit for plotting and analysis of ab initio solid-state calculation data";
diff --git a/nixpkgs/pkgs/development/python-modules/sunpy/default.nix b/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
index 65eb6abb0468..2de1e3fd5ffa 100644
--- a/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
@@ -11,6 +11,7 @@
 , beautifulsoup4
 , drms
 , glymur
+, h5netcdf
 , hypothesis
 , matplotlib
 , numpy
@@ -50,6 +51,7 @@ buildPythonPackage rec {
     pandas
     astropy
     astropy-helpers
+    h5netcdf
     parfive
     sqlalchemy
     scikitimage
diff --git a/nixpkgs/pkgs/development/python-modules/surepy/default.nix b/nixpkgs/pkgs/development/python-modules/surepy/default.nix
index dd071b5cf08f..ff2b588e4702 100644
--- a/nixpkgs/pkgs/development/python-modules/surepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/surepy/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "surepy";
-  version = "0.5.0";
+  version = "0.6.0";
   format = "pyproject";
   disabled = pythonOlder "3.8";
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "benleb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1adsnjya142bxdhfxqsi2qa35ylvdcibigs1wafjlxazlxs3mg0j";
+    sha256 = "sha256-XoYiZPBc9SybyKocui1HqSA+YPiPpbupJWMCfmQT5RU=";
   };
 
   nativeBuildInputs = [ poetry-core ];
@@ -43,11 +43,6 @@ buildPythonPackage rec {
     rich
   ];
 
-  postPatch = ''
-    # halo is out-dated, https://github.com/benleb/surepy/pull/7
-    substituteInPlace pyproject.toml --replace "^0.0.30" "^0.0.31"
-  '';
-
   # Project has no tests
   doCheck = false;
   pythonImportsCheck = [ "surepy" ];
diff --git a/nixpkgs/pkgs/development/python-modules/syncer/default.nix b/nixpkgs/pkgs/development/python-modules/syncer/default.nix
new file mode 100644
index 000000000000..cd3bbf699de2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/syncer/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "syncer";
+  version = "1.3.0";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "miyakogi";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "13y8jllix1ipkcg9lxa4nxk8kj24vivxfizf4d02cdrha9dw500v";
+  };
+
+  # Tests require an not maintained package (xfail)
+  doCheck = false;
+
+  pythonImportsCheck = [ "syncer" ];
+
+  meta = with lib; {
+    description = "Python async to sync converter";
+    homepage = "https://github.com/miyakogi/syncer";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/tables/default.nix b/nixpkgs/pkgs/development/python-modules/tables/default.nix
index fe49ab4d9ed6..34e9ef087a9b 100644
--- a/nixpkgs/pkgs/development/python-modules/tables/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tables/default.nix
@@ -1,9 +1,26 @@
-{ lib, fetchPypi, python, buildPythonPackage, isPy38
-, cython, bzip2, lzo, numpy, numexpr, hdf5, six, c-blosc, mock }:
+{ lib
+, fetchPypi
+, fetchurl
+, fetchpatch
+, buildPythonPackage
+, pythonOlder
+, python
+, bzip2
+, c-blosc
+, cython
+, hdf5
+, lzo
+, numpy
+, numexpr
+, setuptools
+  # Test inputs
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
-  version = "3.6.1";
   pname = "tables";
+  version = "3.6.1";
+  disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
@@ -12,12 +29,33 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ cython ];
 
-  buildInputs = [ hdf5 bzip2 lzo c-blosc ];
-  propagatedBuildInputs = [ numpy numexpr six mock ];
+  buildInputs = [
+    bzip2
+    c-blosc
+    hdf5
+    lzo
+  ];
+  propagatedBuildInputs = [
+    numpy
+    numexpr
+    setuptools  # uses pkg_resources at runtime
+  ];
 
+  patches = [
+    (fetchpatch {
+      # Needed for numpy >= 1.20.0
+      name = "tables-pr-862-use-lowercase-numpy-dtypes.patch";
+      url = "https://github.com/PyTables/PyTables/commit/93a3272b8fe754095637628b4d312400e24ae654.patch";
+      sha256 = "00czgxnm1dxp9763va9xw1nc7dd7kxh9hjcg9klim52519hkbhi4";
+    })
+  ];
   # When doing `make distclean`, ignore docs
   postPatch = ''
     substituteInPlace Makefile --replace "src doc" "src"
+    # Force test suite to error when unittest runner fails
+    substituteInPlace tables/tests/test_suite.py \
+      --replace "return 0" "assert result.wasSuccessful(); return 0" \
+      --replace "return 1" "assert result.wasSuccessful(); return 1"
   '';
 
   # Regenerate C code with Cython
@@ -25,44 +63,29 @@ buildPythonPackage rec {
     make distclean
   '';
 
-  # 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
+
+  checkInputs = [ pytestCheckHook ];
+  preCheck = ''
+    cd ..
   '';
+  # Runs the test suite as one single test via unittest. The whole "heavy" test suite supposedly takes ~5 hours to run.
+  pytestFlagsArray = [
+    "--pyargs"
+    "tables.tests.test_suite"
+  ];
 
-  # Disable tests until the failure described above is fixed.
-  doCheck = false;
+  pythonImportsCheck = [ "tables" ];
 
   meta = with lib; {
     description = "Hierarchical datasets for Python";
-    homepage = "http://www.pytables.org/";
+    homepage = "https://www.pytables.org/";
     license = licenses.bsd2;
+    maintainers = with maintainers; [ drewrisinger ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/tablib/default.nix b/nixpkgs/pkgs/development/python-modules/tablib/default.nix
index 5216fc7d0d92..b6754e15ad5d 100644
--- a/nixpkgs/pkgs/development/python-modules/tablib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tablib/default.nix
@@ -2,6 +2,7 @@
 , odfpy
 , openpyxl
 , pandas
+, setuptools-scm
 , pytest
 , pytestcov
 , pyyaml
@@ -20,6 +21,7 @@ buildPythonPackage rec {
     sha256 = "f83cac08454f225a34a305daa20e2110d5e6335135d505f93bc66583a5f9c10d";
   };
 
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ xlwt openpyxl pyyaml xlrd odfpy ];
   checkInputs = [ pytest pytestcov unicodecsv pandas ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/tappy/default.nix b/nixpkgs/pkgs/development/python-modules/tappy/default.nix
new file mode 100644
index 000000000000..9e0b83bc925d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/tappy/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "tap.py";
+  version = "3.0";
+
+  disabled = pythonOlder "3.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-9e7u6/1k5T0yZhdSu0wohYmjuru5bbPzkaTsKfE1nHA=";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "tap" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/python-tap/tappy";
+    description = "A set of tools for working with the Test Anything Protocol (TAP) in Python";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ sfrijters ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/telfhash/default.nix b/nixpkgs/pkgs/development/python-modules/telfhash/default.nix
index a7aca8866ed7..ddb265bf033a 100644
--- a/nixpkgs/pkgs/development/python-modules/telfhash/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/telfhash/default.nix
@@ -17,6 +17,8 @@ buildPythonPackage {
     sha256 = "jNu6qm8Q/UyJVaCqwFOPX02xAR5DwvCK3PaH6Fvmakk=";
   };
 
+  patches = [ ./telfhash-new-tlsh-hash.patch ];
+
   # The tlsh library's name is just "tlsh"
   postPatch = ''
     substituteInPlace requirements.txt --replace "python-tlsh" "tlsh"
diff --git a/nixpkgs/pkgs/development/python-modules/telfhash/telfhash-new-tlsh-hash.patch b/nixpkgs/pkgs/development/python-modules/telfhash/telfhash-new-tlsh-hash.patch
new file mode 100644
index 000000000000..3984a4c1e810
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/telfhash/telfhash-new-tlsh-hash.patch
@@ -0,0 +1,30 @@
+diff --git a/telfhash/grouping.py b/telfhash/grouping.py
+index c62f8d9..4ee9f0b 100644
+--- a/telfhash/grouping.py
++++ b/telfhash/grouping.py
+@@ -32,10 +32,10 @@ import tlsh
+ def get_combination(telfhash_data):
+ 
+     #
+-    # TLSH hash is 70 characters long. if the telfhash is not 70
++    # The new TLSH hash is 72 characters long. if the telfhash is not 72
+     # characters in length, exclude from the list
+     #
+-    files_list = [x for x in list(telfhash_data.keys()) if telfhash_data[x]["telfhash"] is not None and len(telfhash_data[x]["telfhash"]) == 70]
++    files_list = [x for x in list(telfhash_data.keys()) if telfhash_data[x]["telfhash"] is not None and len(telfhash_data[x]["telfhash"]) == 72]
+ 
+     #
+     # get the combination of all the possible pairs of filenames
+diff --git a/telfhash/telfhash.py b/telfhash/telfhash.py
+index f2bbd25..c6e346c 100755
+--- a/telfhash/telfhash.py
++++ b/telfhash/telfhash.py
+@@ -132,7 +132,7 @@ def get_hash(symbols_list):
+     symbol_string = ",".join(symbols_list)
+     encoded_symbol_string = symbol_string.encode("ascii")
+ 
+-    return tlsh.forcehash(encoded_symbol_string).lower()
++    return tlsh.forcehash(encoded_symbol_string)
+ 
+ 
+ def elf_get_imagebase(elf):
diff --git a/nixpkgs/pkgs/development/python-modules/tempora/default.nix b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
index 0536b0f2ccd4..734bfc645027 100644
--- a/nixpkgs/pkgs/development/python-modules/tempora/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools_scm, pytest, pytest-freezegun, freezegun, backports_unittest-mock
+, setuptools-scm, pytest, pytest-freezegun, freezegun, backports_unittest-mock
 , six, pytz, jaraco_functools, pythonOlder
 , pytest-flake8, pytestcov, pytest-black, pytest-mypy
 }:
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   disabled = pythonOlder "3.2";
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ six pytz jaraco_functools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/tenacity/default.nix b/nixpkgs/pkgs/development/python-modules/tenacity/default.nix
index c1c0abcec241..4591677cdf9e 100644
--- a/nixpkgs/pkgs/development/python-modules/tenacity/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tenacity/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy27, isPy3k
-, pbr, six, futures ? null, monotonic ? null, typing ? null, setuptools_scm
+, pbr, six, futures ? null, monotonic ? null, typing ? null, setuptools-scm
 , pytest, sphinx, tornado, typeguard
 }:
 
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "5bd16ef5d3b985647fe28dfa6f695d343aa26479a04e8792b9d3c8f49e361ae1";
   };
 
-  nativeBuildInputs = [ pbr setuptools_scm ];
+  nativeBuildInputs = [ pbr setuptools-scm ];
   propagatedBuildInputs = [ six ]
     ++ lib.optionals isPy27 [ futures monotonic typing ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow/bin.nix b/nixpkgs/pkgs/development/python-modules/tensorflow/bin.nix
index 7b9cbf1f9900..f5960f0e29ec 100644
--- a/nixpkgs/pkgs/development/python-modules/tensorflow/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow/bin.nix
@@ -30,6 +30,10 @@
 , keras-applications
 , keras-preprocessing
 , addOpenGLRunpath
+, astunparse
+, flatbuffers
+, h5py
+, typing-extensions
 }:
 
 # We keep this binary build for two reasons:
@@ -48,13 +52,14 @@ let
 
   variant = if cudaSupport then "-gpu" else "";
   pname = "tensorflow${variant}";
-
+  metadataPatch = ./relax-dependencies-metadata.patch;
+  patch = ./relax-dependencies.patch;
 in buildPythonPackage {
   inherit pname;
   inherit (packages) version;
   format = "wheel";
 
-  disabled = pythonAtLeast "3.8";
+  disabled = pythonAtLeast "3.9";
 
   src = let
     pyVerNoDot = lib.strings.stringAsChars (x: if x == "." then "" else x) python.pythonVersion;
@@ -64,6 +69,9 @@ in buildPythonPackage {
   in fetchurl packages.${key};
 
   propagatedBuildInputs = [
+    astunparse
+    flatbuffers
+    typing-extensions
     protobuf
     numpy
     scipy
@@ -80,6 +88,7 @@ in buildPythonPackage {
     tensorflow-tensorboard_2
     keras-applications
     keras-preprocessing
+    h5py
   ] ++ lib.optional (!isPy3k) mock
     ++ lib.optionals (pythonOlder "3.4") [ backports_weakref ];
 
@@ -93,24 +102,15 @@ in buildPythonPackage {
 
     pushd dist
 
-    # Unpack the wheel file.
     wheel unpack --dest unpacked ./*.whl
-
-    # Tensorflow wheels tightly constrain the versions of gast, tensorflow-estimator and scipy.
-    # This code relaxes these requirements:
-    substituteInPlace ./unpacked/tensorflow*/tensorflow_core/tools/pip_package/setup.py \
-      --replace "tensorflow_estimator >= 2.1.0rc0, < 2.2.0" "tensorflow_estimator" \
-      --replace "tensorboard >= 2.1.0, < 2.2.0" "tensorboard" \
-      --replace "gast == 0.2.2" "gast"  \
-      --replace "scipy == 1.2.2" "scipy"
-
-    substituteInPlace ./unpacked/tensorflow*/tensorflow*.dist-info/METADATA  \
-      --replace "gast (==0.2.2)" "gast" \
-      --replace "tensorflow-estimator (<2.2.0,>=2.1.0rc0)" "tensorflow_estimator" \
-      --replace "tensorboard (<2.2.0,>=2.1.0)" "tensorboard" \
-      --replace "scipy (==1.4.1)" "scipy"
-
-    # Pack the wheel file back up.
+    (
+      cd unpacked/tensorflow*
+      # relax too strict versions in setup.py
+      patch -p 1 < ${patch}
+      cd *.dist-info
+      # relax too strict versions in *.dist-info/METADATA
+      patch -p 3 < ${metadataPatch}
+    )
     wheel pack ./unpacked/tensorflow*
 
     popd
@@ -143,14 +143,19 @@ in buildPythonPackage {
       # TODO: Create this list programmatically, and remove paths that aren't
       # actually needed.
       rrPathArr=(
-        "$out/${python.sitePackages}/tensorflow_core/"
-        "$out/${python.sitePackages}/tensorflow_core/compiler/tf2tensorrt/"
-        "$out/${python.sitePackages}/tensorflow_core/compiler/tf2xla/ops/"
-        "$out/${python.sitePackages}/tensorflow_core/lite/experimental/microfrontend/python/ops/"
-        "$out/${python.sitePackages}/tensorflow_core/lite/python/interpreter_wrapper/"
-        "$out/${python.sitePackages}/tensorflow_core/lite/python/optimize/"
-        "$out/${python.sitePackages}/tensorflow_core/python/"
-        "$out/${python.sitePackages}/tensorflow_core/python/framework/"
+        "$out/${python.sitePackages}/tensorflow/"
+        "$out/${python.sitePackages}/tensorflow/core/kernels"
+        "$out/${python.sitePackages}/tensorflow/compiler/tf2tensorrt/"
+        "$out/${python.sitePackages}/tensorflow/compiler/tf2xla/ops/"
+        "$out/${python.sitePackages}/tensorflow/lite/experimental/microfrontend/python/ops/"
+        "$out/${python.sitePackages}/tensorflow/lite/python/interpreter_wrapper/"
+        "$out/${python.sitePackages}/tensorflow/lite/python/optimize/"
+        "$out/${python.sitePackages}/tensorflow/python/"
+        "$out/${python.sitePackages}/tensorflow/python/framework/"
+        "$out/${python.sitePackages}/tensorflow/python/autograph/impl/testing"
+        "$out/${python.sitePackages}/tensorflow/python/data/experimental/service"
+        "$out/${python.sitePackages}/tensorflow/python/framework"
+        "$out/${python.sitePackages}/tensorflow/python/profiler/internal"
         "${rpath}"
       )
 
@@ -189,8 +194,5 @@ in buildPythonPackage {
     license = licenses.asl20;
     maintainers = with maintainers; [ jyp abbradar cdepillabout ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    # Python 2.7 build uses different string encoding.
-    # See https://github.com/NixOS/nixpkgs/pull/37044#issuecomment-373452253
-    broken = stdenv.isDarwin && !isPy3k;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/tensorflow/binary-hashes.nix
index 90848e93273f..4485e2b61451 100644
--- a/nixpkgs/pkgs/development/python-modules/tensorflow/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow/binary-hashes.nix
@@ -1,51 +1,39 @@
 {
-version = "2.1.0";
-linux_py_27_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.1.0-cp27-cp27mu-manylinux2010_x86_64.whl";
-  sha256 = "17lnhr7vdrls68c79n3sah5rpd0q1x2v5m84azvlyxxh2wpypfmb";
-};
-linux_py_27_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.1.0-cp27-cp27mu-manylinux2010_x86_64.whl";
-  sha256 = "10lz3i4pcpgqrcbjmxm0n7k1gsqlpna3kdid902j2fy060cpi93z";
+version = "2.4.0";
+linux_py_36_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp36-cp36m-manylinux2010_x86_64.whl";
+  sha256 = "0pn0cjf50q0xsv6k0vihrz22kr392anznvdhxv80gk52c6lcgmsc";
 };
-linux_py_35_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.1.0-cp35-cp35m-manylinux2010_x86_64.whl";
-  sha256 = "09s081n08dpmflwgir3zwzfijfpmahbh2gy5fn5bv5ll86g1szsy";
+linux_py_37_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp37-cp37m-manylinux2010_x86_64.whl";
+  sha256 = "0mdd83c0invqfy58qmpa3hk4yml5ic7wlwggyd5wpikadlv8vq89";
 };
-linux_py_35_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.1.0-cp35-cp35m-manylinux2010_x86_64.whl";
-  sha256 = "1aa7v9fnvx03hqvhl3x3xcn41qy6qxw5xybg54ifjvvicp455c8l";
+linux_py_38_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.4.0-cp38-cp38-manylinux2010_x86_64.whl";
+  sha256 = "1mm1yz9aj3v6fxfpxh7wy37rvsncr0b5y6glqlcxmhr6mqfp8k6d";
 };
 linux_py_36_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl";
-  sha256 = "1dqp080ljbl9v3115vjp63ls0fimiwym6zxyanyhrlk8kwsq20zc";
-};
-linux_py_36_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl";
-  sha256 = "133z8anx7xm9rr5i9s9dwnp1wf06nr6s7q1lbs4lxpk6kn9nl480";
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp36-cp36m-manylinux2010_x86_64.whl";
+  sha256 = "113iygiq2kmj97g0glhcqng6rhl3rrj1iqw5xj1d5hla8xjy8cfv";
 };
 linux_py_37_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl";
-  sha256 = "0yabl3xmcpr67w0zksqs3qc68nl9ax0vcd7w7b35nq8f65xl0ghy";
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp37-cp37m-manylinux2010_x86_64.whl";
+  sha256 = "19ap8xx2j5nbmnqv5rzf1ryfvw2fbs6bm0fxjqrvhc3jxys6yqqs";
 };
-linux_py_37_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl";
-  sha256 = "04gngbngyg7p1gwx1q89my0cl8j7lq4kknqh51s2ynrix71zvsy6";
-};
-mac_py_27_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.1.0-cp27-cp27m-macosx_10_9_x86_64.whl";
-  sha256 = "1mprp72w5kk0lyjm2mh4lf57827xk3wsg28c4gizwm00ydfgacg6";
-};
-mac_py_35_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.1.0-cp35-cp35m-macosx_10_6_intel.whl";
-  sha256 = "1as7brf5ai6r7v1di9646jfrbnirpk2b0d1g29mn3shavb62kw8w";
+linux_py_38_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.4.0-cp38-cp38-manylinux2010_x86_64.whl";
+  sha256 = "0ly3cinzj6j3b547sw8bd3p774khn3b14cgrj7nvfrz668d3f89x";
 };
 mac_py_36_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.1.0-cp36-cp36m-macosx_10_9_x86_64.whl";
-  sha256 = "1v1rw9kjrskhcq1yas4ly2yfnzf2i1pjh6qg6zixfbkpkw7sw3wc";
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp36-cp36m-macosx_10_14_x86_64.whl";
+  sha256 = "1b5ld1wj48l1i5s3vk8db5m578zdg4xfl0m1lc8w5lx1vi4cwsjp";
 };
 mac_py_37_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.1.0-cp37-cp37m-macosx_10_9_x86_64.whl";
-  sha256 = "1hh4n0d97mrq35cmmsrnlmcv9vlswsyjy368lj3pda3y9dvck3rf";
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp37-cp37m-macosx_10_14_x86_64.whl";
+  sha256 = "1mgfyjgcwvx5jzawrpfnbch5sqw7kpnzp35rfxj22kwdsl28r47r";
+};
+mac_py_38_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.4.0-cp38-cp38-macosx_10_14_x86_64.whl";
+  sha256 = "034qh0nk786wxzma58179g086x479c3pd9vi8v8p26grs6f2fm0p";
 };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow/default.nix b/nixpkgs/pkgs/development/python-modules/tensorflow/default.nix
index 0216c05eeacf..bbdecc8bdcdf 100644
--- a/nixpkgs/pkgs/development/python-modules/tensorflow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow/default.nix
@@ -72,7 +72,7 @@ let
 
   tfFeature = x: if x then "1" else "0";
 
-  version = "2.4.0";
+  version = "2.4.1";
   variant = if cudaSupport then "-gpu" else "";
   pname = "tensorflow${variant}";
 
@@ -110,7 +110,7 @@ let
       owner = "tensorflow";
       repo = "tensorflow";
       rev = "v${version}";
-      sha256 = "0yl06aypfxrcs35828xf04mkidz1x0j89v0q5h4d2xps1cb5rv3f";
+      sha256 = "sha256-J62QfP45g5nxN9Nqa1tAGyc4vD2JKh50ddHLrd6/qsY=";
     };
 
     patches = [
@@ -288,9 +288,9 @@ let
     fetchAttrs = {
       # cudaSupport causes fetch of ncclArchive, resulting in different hashes
       sha256 = if cudaSupport then
-        "1i7z2a7bc2q1vn1h9nx1xc6g1r1cby2xvbcs20fj9h6c2fgaw9j4"
+        "10m6qj3kchgxfgb6qh59vc51knm9r9pkng8bf90h00dnggvv8234"
       else
-        "0s8q5rxq8abr50c5jpwv96ncfc0k8jw7w70ri8viqy031g9v9v45";
+        "04a98yrp09nd0p17k0jbzkgjppxs0yma7m5zkfrwgvr4g0w71v68";
     };
 
     buildAttrs = {
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow/prefetcher.sh b/nixpkgs/pkgs/development/python-modules/tensorflow/prefetcher.sh
index abb0faac2834..8b22affa17a8 100755
--- a/nixpkgs/pkgs/development/python-modules/tensorflow/prefetcher.sh
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow/prefetcher.sh
@@ -1,23 +1,22 @@
 #!/usr/bin/env bash
 
-version=2.1.0
+version="2.4.0"
+
+bucket="https://storage.googleapis.com/tensorflow"
 
 # List of binary wheels for Tensorflow.  The most recent versions can be found
 # on the following page:
 # https://www.tensorflow.org/install/pip?lang=python3#package-location
 url_and_key_list=(
-  "linux_py_27_gpu https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-${version}-cp27-cp27mu-manylinux2010_x86_64.whl"
-  "linux_py_27_cpu https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-${version}-cp27-cp27mu-manylinux2010_x86_64.whl"
-  "linux_py_35_gpu https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-${version}-cp35-cp35m-manylinux2010_x86_64.whl"
-  "linux_py_35_cpu https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-${version}-cp35-cp35m-manylinux2010_x86_64.whl"
-  "linux_py_36_gpu https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-${version}-cp36-cp36m-manylinux2010_x86_64.whl"
-  "linux_py_36_cpu https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-${version}-cp36-cp36m-manylinux2010_x86_64.whl"
-  "linux_py_37_gpu https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-${version}-cp37-cp37m-manylinux2010_x86_64.whl"
-  "linux_py_37_cpu https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-${version}-cp37-cp37m-manylinux2010_x86_64.whl"
-  "mac_py_27_cpu https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-${version}-cp27-cp27m-macosx_10_9_x86_64.whl"
-  "mac_py_35_cpu https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-${version}-cp35-cp35m-macosx_10_6_intel.whl"
-  "mac_py_36_cpu https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-${version}-cp36-cp36m-macosx_10_9_x86_64.whl"
-  "mac_py_37_cpu https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-${version}-cp37-cp37m-macosx_10_9_x86_64.whl"
+"linux_py_36_cpu $bucket/linux/cpu/tensorflow_cpu-${version}-cp36-cp36m-manylinux2010_x86_64.whl"
+"linux_py_37_cpu $bucket/linux/cpu/tensorflow_cpu-${version}-cp37-cp37m-manylinux2010_x86_64.whl"
+"linux_py_38_cpu $bucket/linux/cpu/tensorflow_cpu-${version}-cp38-cp38-manylinux2010_x86_64.whl"
+"linux_py_36_gpu $bucket/linux/gpu/tensorflow_gpu-${version}-cp36-cp36m-manylinux2010_x86_64.whl"
+"linux_py_37_gpu $bucket/linux/gpu/tensorflow_gpu-${version}-cp37-cp37m-manylinux2010_x86_64.whl"
+"linux_py_38_gpu $bucket/linux/gpu/tensorflow_gpu-${version}-cp38-cp38-manylinux2010_x86_64.whl"
+"mac_py_36_cpu $bucket/mac/cpu/tensorflow-${version}-cp36-cp36m-macosx_10_14_x86_64.whl"
+"mac_py_37_cpu $bucket/mac/cpu/tensorflow-${version}-cp37-cp37m-macosx_10_14_x86_64.whl"
+"mac_py_38_cpu $bucket/mac/cpu/tensorflow-${version}-cp38-cp38-macosx_10_14_x86_64.whl"
 )
 
 hashfile=binary-hashes.nix
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow/relax-dependencies-metadata.patch b/nixpkgs/pkgs/development/python-modules/tensorflow/relax-dependencies-metadata.patch
new file mode 100644
index 000000000000..1be4fd5bc7d5
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow/relax-dependencies-metadata.patch
@@ -0,0 +1,46 @@
+diff -ur unpacked/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA unpacked.new/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA
+--- unpacked/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA	2021-05-06 23:51:40.298995191 -0700
++++ unpacked.new/tensorflow-2.4.0/tensorflow-2.4.0.dist-info/METADATA	2021-05-07 00:03:49.856882153 -0700
+@@ -27,24 +27,24 @@
+ Classifier: Topic :: Software Development :: Libraries
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
+ Description-Content-Type: text/markdown
+-Requires-Dist: absl-py (~=0.10)
+-Requires-Dist: astunparse (~=1.6.3)
+-Requires-Dist: flatbuffers (~=1.12.0)
+-Requires-Dist: google-pasta (~=0.2)
+-Requires-Dist: h5py (~=2.10.0)
+-Requires-Dist: keras-preprocessing (~=1.1.2)
+-Requires-Dist: numpy (~=1.19.2)
+-Requires-Dist: opt-einsum (~=3.3.0)
+-Requires-Dist: protobuf (>=3.9.2)
+-Requires-Dist: six (~=1.15.0)
+-Requires-Dist: termcolor (~=1.1.0)
+-Requires-Dist: typing-extensions (~=3.7.4)
+-Requires-Dist: wheel (~=0.35)
+-Requires-Dist: wrapt (~=1.12.1)
+-Requires-Dist: gast (==0.3.3)
+-Requires-Dist: tensorboard (~=2.4)
+-Requires-Dist: tensorflow-estimator (<2.5.0,>=2.4.0rc0)
+-Requires-Dist: grpcio (~=1.32.0)
++Requires-Dist: absl-py
++Requires-Dist: astunparse
++Requires-Dist: flatbuffers
++Requires-Dist: google-pasta
++Requires-Dist: h5py
++Requires-Dist: keras-preprocessing
++Requires-Dist: numpy
++Requires-Dist: opt-einsum
++Requires-Dist: protobuf
++Requires-Dist: six
++Requires-Dist: termcolor
++Requires-Dist: typing-extensions
++Requires-Dist: wheel
++Requires-Dist: wrapt
++Requires-Dist: gast
++Requires-Dist: tensorboard
++Requires-Dist: tensorflow-estimator
++Requires-Dist: grpcio
+ 
+ [![Python](https://img.shields.io/pypi/pyversions/tensorflow.svg?style=plastic)](https://badge.fury.io/py/tensorflow)
+ [![PyPI](https://badge.fury.io/py/tensorflow.svg)](https://badge.fury.io/py/tensorflow)
\ No newline at end of file
diff --git a/nixpkgs/pkgs/development/python-modules/tern/0001-Replace-debut-with-debian-inspector.patch b/nixpkgs/pkgs/development/python-modules/tern/0001-Replace-debut-with-debian-inspector.patch
new file mode 100644
index 000000000000..c9cb8b4a5281
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/tern/0001-Replace-debut-with-debian-inspector.patch
@@ -0,0 +1,40 @@
+From d944d8fa6cb6d1667f3e4c4e0cff4c4b2a7c0a30 Mon Sep 17 00:00:00 2001
+From: Cole Helbling <cole.e.helbling@outlook.com>
+Date: Fri, 7 May 2021 11:00:46 -0700
+Subject: [PATCH] Replace `debut` with `debian-inspector`
+
+---
+ requirements.in        | 2 +-
+ tern/analyze/common.py | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/requirements.in b/requirements.in
+index edd90ab..5135841 100644
+--- a/requirements.in
++++ b/requirements.in
+@@ -12,6 +12,6 @@ requests
+ stevedore
+ pbr
+ dockerfile-parse
+-debut
++debian-inspector
+ regex
+ GitPython
+diff --git a/tern/analyze/common.py b/tern/analyze/common.py
+index 6962404..0f5e77d 100644
+--- a/tern/analyze/common.py
++++ b/tern/analyze/common.py
+@@ -19,8 +19,8 @@ from tern.utils import cache
+ from tern.utils import constants
+ from tern.utils import general
+ from tern.utils import rootfs
+-from debut import debcon
+-from debut import copyright as debut_copyright
++from debian_inspector import debcon
++from debian_inspector import copyright as debut_copyright
+ 
+ # global logger
+ logger = logging.getLogger(constants.logger_name)
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/python-modules/tern/default.nix b/nixpkgs/pkgs/development/python-modules/tern/default.nix
index 6247087dd670..7eb889c873a8 100644
--- a/nixpkgs/pkgs/development/python-modules/tern/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tern/default.nix
@@ -7,7 +7,7 @@
 , requests
 , stevedore
 , pbr
-, debut
+, debian-inspector
 , regex
 , GitPython
 , prettytable
@@ -22,6 +22,14 @@ buildPythonPackage rec {
     sha256 = "606c62944991b2cbcccf3f5353be693305d6d7d318c3865b9ecca49dbeab2727";
   };
 
+  patches = [
+    # debut was renamed to debian-inspector
+    # https://github.com/tern-tools/tern/pull/962
+    # NOTE: Has to be in-tree because the upstream patch doesn't apply cleanly
+    # to the PyPi source.
+    ./0001-Replace-debut-with-debian-inspector.patch
+  ];
+
   preBuild = ''
     cp requirements.{in,txt}
   '';
@@ -36,7 +44,7 @@ buildPythonPackage rec {
     dockerfile-parse
     requests
     stevedore
-    debut
+    debian-inspector
     regex
     GitPython
     prettytable
diff --git a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
index 59af2b33d2b9..750b070804c3 100644
--- a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
@@ -1,10 +1,12 @@
 { lib
 , aiohttp
+, authcaptureproxy
 , backoff
 , beautifulsoup4
 , buildPythonPackage
 , fetchFromGitHub
 , fetchpatch
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
 , wrapt
@@ -12,24 +14,22 @@
 
 buildPythonPackage rec {
   pname = "teslajsonpy";
-  version = "0.11.5";
+  version = "0.18.3";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "zabuldon";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-s0IZ1UNldYddaR3zJoYS6ey8Kjxd1fr4fOwf0gNNbow=";
+    sha256 = "1hdc5gm6dg1vw6qfs3z6mg2m94scrvjphj0lin6pi8n3zqj1h26k";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "dont-use-dummpy-module-bs4.patch";
-      url = "https://github.com/zabuldon/teslajsonpy/pull/138/commits/f5a788e47d8338c8ebb06d954f802ba1ec614db3.patch";
-      sha256 = "0rws7fhxmca8d5w0bkygx8scvzah3yvb3yfhn05qmp73mn3pmcb3";
-    })
+  nativeBuildInputs = [
+    poetry-core
   ];
 
   propagatedBuildInputs = [
+    authcaptureproxy
     aiohttp
     backoff
     beautifulsoup4
diff --git a/nixpkgs/pkgs/development/python-modules/textacy/default.nix b/nixpkgs/pkgs/development/python-modules/textacy/default.nix
index 31b02e3f2641..5c8928a385d4 100644
--- a/nixpkgs/pkgs/development/python-modules/textacy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/textacy/default.nix
@@ -1,59 +1,67 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
+{ lib
+, buildPythonPackage
 , cachetools
 , cytoolz
+, fetchPypi
 , jellyfish
+, joblib
 , matplotlib
 , networkx
 , numpy
 , pyemd
 , pyphen
-, pytest
+, pytestCheckHook
+, pythonOlder
 , requests
-, scikitlearn
+, scikit-learn
 , scipy
 , spacy
-, srsly
+, tqdm
 }:
 
 buildPythonPackage rec {
   pname = "textacy";
-  version = "0.10.1";
-  disabled = isPy27;
+  version = "0.11.0";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ff72adc6dbb85db6981324e226fff77830da57d7fe7e4adb2cafd9dc2a8bfa7d";
+    sha256 = "sha256-d/tyTCewoERA15iBv4H2LORFzgco15fnnN1sneeGuF4=";
   };
 
   propagatedBuildInputs = [
     cachetools
     cytoolz
     jellyfish
+    joblib
     matplotlib
     networkx
     numpy
     pyemd
     pyphen
     requests
-    scikitlearn
+    scikit-learn
     scipy
     spacy
-    srsly
+    tqdm
   ];
 
-  checkInputs = [ pytest ];
-  # almost all tests have to deal with downloading a dataset, only test pure tests
-  checkPhase = ''
-    pytest tests/test_text_utils.py \
-      tests/test_utils.py \
-      tests/preprocessing \
-      tests/datasets/test_base_dataset.py
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [
+    # Almost all tests have to deal with downloading a dataset, only test pure tests
+    "tests/test_constants.py"
+    "tests/preprocessing/test_normalize.py"
+    "tests/similarity/test_edits.py"
+    "tests/preprocessing/test_resources.py"
+    "tests/preprocessing/test_replace.py"
+  ];
+
+  pythonImportsCheck = [ "textacy" ];
 
   meta = with lib; {
-    # scikit-learn in pythonPackages is too new for textacy
-    # remove as soon as textacy support scikit-learn >= 0.24
-    broken = true;
     description = "Higher-level text processing, built on spaCy";
     homepage = "https://textacy.readthedocs.io/";
     license = licenses.asl20;
diff --git a/nixpkgs/pkgs/development/python-modules/textdistance/default.nix b/nixpkgs/pkgs/development/python-modules/textdistance/default.nix
new file mode 100644
index 000000000000..d4a71dd99628
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/textdistance/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "textdistance";
+  version = "4.2.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "114j3ignw4y9yq1cp08p4bfw518vyr3p0h8ba2mikwy74qxxzy26";
+  };
+
+  # There aren't tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "textdistance" ];
+
+  meta = with lib; {
+    description = "Python library for comparing distance between two or more sequences";
+    homepage = "https://github.com/life4/textdistance";
+    license = licenses.mit;
+    maintainers = with maintainers; [ eduardosm ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/thinc/default.nix b/nixpkgs/pkgs/development/python-modules/thinc/default.nix
index a92d349e9928..4aac0d756d46 100644
--- a/nixpkgs/pkgs/development/python-modules/thinc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/thinc/default.nix
@@ -24,11 +24,11 @@
 
 buildPythonPackage rec {
   pname = "thinc";
-  version = "8.0.2";
+  version = "8.0.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "20f033b3d9fbd02389d8f828cebcd3a42aee3e17ed4c2d56c6d5163af83a9cee";
+    hash = "sha256-w3CnpG0BtYjY1fmdjV42s8usRRJjg1b6Qw9/Urs6iJc=";
   };
 
   buildInputs = [ cython ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
diff --git a/nixpkgs/pkgs/development/python-modules/tiledb/default.nix b/nixpkgs/pkgs/development/python-modules/tiledb/default.nix
index ddfa83e30f58..bdd6ad241158 100644
--- a/nixpkgs/pkgs/development/python-modules/tiledb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tiledb/default.nix
@@ -8,7 +8,7 @@
 , numpy
 , wheel
 , isPy3k
-, setuptools_scm
+, setuptools-scm
 , psutil
 , pandas
 }:
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     cython
     pybind11
-    setuptools_scm
+    setuptools-scm
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/tilequant/default.nix b/nixpkgs/pkgs/development/python-modules/tilequant/default.nix
new file mode 100644
index 000000000000..90caab8ebef8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/tilequant/default.nix
@@ -0,0 +1,38 @@
+{ lib, buildPythonPackage, fetchFromGitHub, GitPython, click, ordered-set, pillow, sortedcollections }:
+
+let
+  aikku93-tilequant = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = "aikku93-tilequant";
+    rev = "6604e0906edff384b6c8d4cde03e6601731f66fd";
+    sha256 = "0w19h3n2i0xriqsy0b0rifjgbv4hqd7gl78fw0cappkrdykij5r1";
+  };
+in
+buildPythonPackage rec {
+  pname = "tilequant";
+  version = "0.4.0.post0";
+
+  src = fetchFromGitHub {
+    owner = "SkyTemple";
+    repo = pname;
+    rev = version;
+    sha256 = "189af203iay3inj1bbgm3hh1fshn879bcm28ypbvfp27fy7j5b25";
+  };
+
+  postPatch = ''
+    cp -R --no-preserve=mode ${aikku93-tilequant} __aikku93_tilequant
+  '';
+
+  buildInputs = [ GitPython ];
+  propagatedBuildInputs = [ click ordered-set pillow sortedcollections ];
+
+  doCheck = false; # there are no tests
+  pythonImportsCheck = [ "skytemple_tilequant" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/SkyTemple/tilequant";
+    description = "Tool for quantizing image colors using tile-based palette restrictions";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ xfix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/timeago/default.nix b/nixpkgs/pkgs/development/python-modules/timeago/default.nix
new file mode 100644
index 000000000000..0c2a688f674e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/timeago/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "timeago";
+  version = "1.0.15";
+
+  src = fetchFromGitHub {
+    owner = "hustcc";
+    repo = pname;
+    rev = version;
+    sha256 = "03vm7c02l4g2d1x33w382i1psk8i3an7xchk69yinha33fjj1cag";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "test/testcase.py" ];
+
+  pythonImportsCheck = [ "timeago" ];
+
+  meta = with lib; {
+    description = "Python module to format past datetime output";
+    homepage = "https://github.com/hustcc/timeago";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/tld/default.nix b/nixpkgs/pkgs/development/python-modules/tld/default.nix
index 13f23edaad15..ed601a2620c8 100644
--- a/nixpkgs/pkgs/development/python-modules/tld/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tld/default.nix
@@ -26,6 +26,12 @@ buildPythonPackage rec {
     tox
   ];
 
+  # these tests require network access, but disabledTestPaths doesn't work.
+  # the file needs to be `import`ed by another python test file, so it
+  # can't simply be removed.
+  preCheck = ''
+    echo > src/tld/tests/test_commands.py
+  '';
   pythonImportsCheck = [ "tld" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix b/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
index 5b6bfe6a0e28..ad35fe501282 100644
--- a/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
@@ -1,5 +1,5 @@
 { lib
-, isPy27
+, pythonOlder
 , fetchFromGitHub
 , buildPythonPackage
 , pytestCheckHook
@@ -8,7 +8,7 @@
 buildPythonPackage rec {
   pname = "tls-parser";
   version = "1.2.2";
-  disabled = isPy27;
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
@@ -19,6 +19,8 @@ buildPythonPackage rec {
 
   checkInputs = [ pytestCheckHook ];
 
+  pythonImportsCheck = [ "tls_parser" ];
+
   meta = with lib; {
     homepage = "https://github.com/nabla-c0d3/tls_parser";
     description = "Small library to parse TLS records";
diff --git a/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix b/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
index d7eece650026..d8225e7031ea 100644
--- a/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
@@ -1,54 +1,41 @@
-{ lib, buildPythonPackage, fetchPypi, pythonAtLeast, pythonOlder
-, click
-, click-completion
-, factory_boy
-, faker
-, inquirer
-, notify-py
-, pbr
-, pendulum
-, ptable
-, pytest
-, pytestcov
-, pytest-mock
-, requests
-, twine
-, validate-email
-}:
-
+{ lib, buildPythonPackage, fetchPypi, pythonAtLeast, pythonOlder, click
+, click-completion, factory_boy, faker, inquirer, notify-py, pbr, pendulum
+, ptable, pytestCheckHook, pytestcov, pytest-mock, requests, twine
+, validate-email }:
 
 buildPythonPackage rec {
   pname = "toggl-cli";
-  version = "2.4.1";
+  version = "2.4.2";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     pname = "togglCli";
     inherit version;
-    sha256 = "19lry8adcznzmzbvghyid3yl4j05db6931bw38af5vrkkyzyf62i";
+    sha256 = "1wgh231r16jyvaj1ch1pajvl9szflb4srs505pfdwdlqvz7rzww8";
   };
 
   postPatch = ''
-   substituteInPlace requirements.txt \
-     --replace "inquirer==2.6.3" "inquirer>=2.6.3" \
-     --replace "notify-py==0.2.2" "notify-py>=0.2.2"
+    substituteInPlace requirements.txt \
+      --replace "notify-py==0.3.1" "notify-py>=0.3.1"
   '';
 
   nativeBuildInputs = [ pbr twine ];
-  checkInputs = [ pbr pytest pytestcov pytest-mock faker factory_boy ];
+  checkInputs = [ pbr pytestCheckHook pytestcov pytest-mock faker factory_boy ];
 
   preCheck = ''
     export TOGGL_API_TOKEN=your_api_token
     export TOGGL_PASSWORD=toggl_password
     export TOGGL_USERNAME=user@example.com
-    '';
-
-  checkPhase = ''
-   runHook preCheck
-   pytest -k "not premium and not TestDateTimeType and not TestDateTimeField" tests/unit --maxfail=20
-   runHook postCheck
   '';
 
+  disabledTests = [
+    "integration"
+    "premium"
+    "test_parsing"
+    "test_type_check"
+    "test_now"
+  ];
+
   propagatedBuildInputs = [
     click
     click-completion
diff --git a/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix b/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix
new file mode 100644
index 000000000000..ac614d53fd5a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestrunner
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "token-bucket";
+  version = "0.2.0";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "falconry";
+    repo = pname;
+    rev = version;
+    sha256 = "0kv8j2ab4knvzik2di66bgjwjxdslm2i0hjy35kn9z0dazni585s";
+  };
+
+  nativeBuildInputs = [
+    pytestrunner
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Token Bucket Implementation for Python Web Apps";
+    homepage = "https://github.com/falconry/token-bucket";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/tokenizers/default.nix b/nixpkgs/pkgs/development/python-modules/tokenizers/default.nix
index 348302a59c55..544dbf1beafc 100644
--- a/nixpkgs/pkgs/development/python-modules/tokenizers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tokenizers/default.nix
@@ -49,19 +49,19 @@ let
   };
 in buildPythonPackage rec {
   pname = "tokenizers";
-  version = "0.10.1";
+  version = "0.10.3";
 
   src = fetchFromGitHub {
     owner = "huggingface";
     repo = pname;
     rev = "python-v${version}";
-    hash = "sha256-N/dKjQwHKmJnB76q8ISQ3cjuW0Z4GqGavnFFx/w9JRQ=";
+    hash = "sha256-X7aUiJJjB2ZDlE8LbK7Pn/15SLTZbP8kb4l9ED7/xvU=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src sourceRoot;
     name = "${pname}-${version}";
-    hash = "sha256-3ICSjtiRfLOj+PXu6mcuDoAtod5uXAcabYWTLxEgI18=";
+    hash = "sha256-gRqxlL6q87sGC0birDhCmGF+CVbfxwOxW6Tl6+5mGoo=";
   };
 
   sourceRoot = "source/bindings/python";
@@ -76,15 +76,12 @@ in buildPythonPackage rec {
     numpy
   ];
 
-  installCheckInputs = [
+  checkInputs = [
     datasets
     pytestCheckHook
     requests
   ];
 
-  doCheck = false;
-  doInstallCheck = true;
-
   postUnpack = ''
     # Add data files for tests, otherwise tests attempt network access.
     mkdir $sourceRoot/tests/data
diff --git a/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix b/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix
new file mode 100644
index 000000000000..62980dcca8c4
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix
@@ -0,0 +1,59 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchurl
+, isPy37
+, isPy38
+, isPy39
+, patchelf
+, pillow
+, python
+, pytorch-bin
+}:
+
+let
+  pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
+  srcs = import ./binary-hashes.nix version;
+  unsupported = throw "Unsupported system";
+  version = "0.9.1";
+in buildPythonPackage {
+  inherit version;
+
+  pname = "torchvision";
+
+  format = "wheel";
+
+  src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;
+
+  disabled = !(isPy37 || isPy38 || isPy39);
+
+  nativeBuildInputs = [
+    patchelf
+  ];
+
+  propagatedBuildInputs = [
+    pillow
+    pytorch-bin
+  ];
+
+  pythonImportsCheck = [ "torchvision" ];
+
+  postFixup = let
+    rpath = lib.makeLibraryPath [ stdenv.cc.cc.lib ];
+  in ''
+    # Note: after patchelf'ing, libcudart can still not be found. However, this should
+    #       not be an issue, because PyTorch is loaded before torchvision and brings
+    #       in the necessary symbols.
+    patchelf --set-rpath "${rpath}:${pytorch-bin}/${python.sitePackages}/torch/lib:" \
+      "$out/${python.sitePackages}/torchvision/_C.so"
+  '';
+
+  meta = with lib; {
+    description = "PyTorch vision library";
+    homepage = "https://pytorch.org/";
+    changelog = "https://github.com/pytorch/vision/releases/tag/v${version}";
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ danieldk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix
new file mode 100644
index 000000000000..b9a991e24abb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix
@@ -0,0 +1,22 @@
+# Warning: use the same CUDA version as pytorch-bin.
+#
+# Precompiled wheels can be found at:
+# https://download.pytorch.org/whl/torch_stable.html
+
+version: {
+  x86_64-linux-37 = {
+    name = "torchvision-${version}-cp37-cp37m-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torchvision-${version}%2Bcu111-cp37-cp37m-linux_x86_64.whl";
+    hash = "sha256-7EMVB8KZg2I3P4RqnIVk/7OOAPA1OWOipns58cSCUrw=";
+  };
+  x86_64-linux-38 = {
+    name = "torchvision-${version}-cp38-cp38-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torchvision-${version}%2Bcu111-cp38-cp38-linux_x86_64.whl";
+    hash = "sha256-VjsCBW9Lusr4aDQLqaFh5dpV/5ZJ5PDs7nY4CbCHDTA=";
+  };
+  x86_64-linux-39 = {
+    name = "torchvision-${version}-cp39-cp39-linux_x86_64.whl";
+    url = "https://download.pytorch.org/whl/cu111/torchvision-${version}%2Bcu111-cp39-cp39-linux_x86_64.whl";
+    hash = "sha256-pzR7TBE+WcAmozskoeOVBuMkGJf9tvsaXsUkTcu86N8=";
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/tox/default.nix b/nixpkgs/pkgs/development/python-modules/tox/default.nix
index 0fc0ffbf2e72..a90b3dcfdf14 100644
--- a/nixpkgs/pkgs/development/python-modules/tox/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tox/default.nix
@@ -6,7 +6,7 @@
 , py
 , six
 , virtualenv
-, setuptools_scm
+, setuptools-scm
 , toml
 , filelock
 }:
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   pname = "tox";
   version = "3.23.0";
 
-  buildInputs = [ setuptools_scm ];
+  buildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ packaging pluggy py six virtualenv toml filelock ];
 
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/tqdm/default.nix b/nixpkgs/pkgs/development/python-modules/tqdm/default.nix
index ae89b3ee0b07..b941727189ea 100644
--- a/nixpkgs/pkgs/development/python-modules/tqdm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tqdm/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook
 , pytest-asyncio
 , pytest-timeout
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/treq/default.nix b/nixpkgs/pkgs/development/python-modules/treq/default.nix
index ec648281c89a..8bfbd534f578 100644
--- a/nixpkgs/pkgs/development/python-modules/treq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/treq/default.nix
@@ -51,6 +51,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/twisted/treq";
     description = "A requests-like API built on top of twisted.web's Agent";
     license = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/trollius/default.nix b/nixpkgs/pkgs/development/python-modules/trollius/default.nix
deleted file mode 100644
index 019326c54217..000000000000
--- a/nixpkgs/pkgs/development/python-modules/trollius/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, isPy3k, mock, unittest2, six, futures }:
-
-buildPythonPackage rec {
-  pname = "trollius";
-  version = "2.2.post1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "06s44k6pcq35vl5j4i2pgkpb848djal818qypcvx44gyn4azjrqn";
-  };
-
-  checkInputs = [ mock ] ++ lib.optional (!isPy3k) unittest2;
-
-  propagatedBuildInputs = [ six ] ++ lib.optional (!isPy3k) futures;
-
-  patches = [
-    ./tests.patch
-  ];
-
-  disabled = isPy3k;
-
-  postPatch = ''
-    # Overrides PYTHONPATH causing dependencies not to be found
-    sed -i -e "s|test_env_var_debug|skip_test_env_var_debug|g" tests/test_tasks.py
-  '' + lib.optionalString stdenv.isDarwin ''
-    # Some of the tests fail on darwin with `error: AF_UNIX path too long'
-    # because of the *long* path names for sockets
-    sed -i -e "s|test_create_ssl_unix_connection|skip_test_create_ssl_unix_connection|g" tests/test_events.py
-    sed -i -e "s|test_create_unix_connection|skip_test_create_unix_connection|g" tests/test_events.py
-    sed -i -e "s|test_create_unix_server_existing_path_nonsock|skip_test_create_unix_server_existing_path_nonsock|g" tests/test_unix_events.py
-    sed -i -e "s|test_create_unix_server_existing_path_sock|skip_test_create_unix_server_existing_path_sock|g" tests/test_unix_events.py
-    sed -i -e "s|test_create_unix_server_ssl_verified|skip_test_create_unix_server_ssl_verified|g" tests/test_events.py
-    sed -i -e "s|test_create_unix_server_ssl_verify_failed|skip_test_create_unix_server_ssl_verify_failed|g" tests/test_events.py
-    sed -i -e "s|test_create_unix_server_ssl|skip_test_create_unix_server_ssl|g" tests/test_events.py
-    sed -i -e "s|test_create_unix_server|skip_test_create_unix_server|g" tests/test_events.py
-    sed -i -e "s|test_open_unix_connection_error|skip_test_open_unix_connection_error|g" tests/test_streams.py
-    sed -i -e "s|test_open_unix_connection_no_loop_ssl|skip_test_open_unix_connection_no_loop_ssl|g" tests/test_streams.py
-    sed -i -e "s|test_open_unix_connection|skip_test_open_unix_connection|g" tests/test_streams.py
-    sed -i -e "s|test_pause_reading|skip_test_pause_reading|g" tests/test_subprocess.py
-    sed -i -e "s|test_read_pty_output|skip_test_read_pty_output|g" tests/test_events.py
-    sed -i -e "s|test_start_unix_server|skip_test_start_unix_server|g" tests/test_streams.py
-    sed -i -e "s|test_unix_sock_client_ops|skip_test_unix_sock_client_ops|g" tests/test_events.py
-    sed -i -e "s|test_write_pty|skip_test_write_pty|g" tests/test_events.py
-  '';
-
-  meta = with lib; {
-    description = "Port of the asyncio project to Python 2.7";
-    homepage = "https://github.com/vstinner/trollius";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/trollius/tests.patch b/nixpkgs/pkgs/development/python-modules/trollius/tests.patch
deleted file mode 100644
index 4923bded9493..000000000000
--- a/nixpkgs/pkgs/development/python-modules/trollius/tests.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git i/tests/test_asyncio.py w/tests/test_asyncio.py
-index 39d9e1a..05b7e6f 100644
---- i/tests/test_asyncio.py
-+++ w/tests/test_asyncio.py
-@@ -69,7 +69,7 @@ class AsyncioTests(test_utils.TestCase):
-             def step_future():
-                 future = asyncio.Future()
-                 self.loop.call_soon(future.set_result, "asyncio.Future")
--                return (yield from future)
-+                return (yield From(future))
- 
-             # test in release mode
-             trollius.coroutines._DEBUG = False
diff --git a/nixpkgs/pkgs/development/python-modules/ttp/default.nix b/nixpkgs/pkgs/development/python-modules/ttp/default.nix
new file mode 100644
index 000000000000..6a557a1eff53
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ttp/default.nix
@@ -0,0 +1,96 @@
+{ lib
+, buildPythonPackage
+, callPackage
+, fetchFromGitHub
+, cerberus
+, configparser
+, deepdiff
+, geoip2
+, jinja2
+, openpyxl
+, tabulate
+, yangson
+, pytestCheckHook
+, pyyaml
+}:
+
+let
+  ttp_templates = callPackage ./templates.nix { };
+in
+buildPythonPackage rec {
+  pname = "ttp";
+  version = "0.7.1";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "dmulyalin";
+    repo = pname;
+    rev = version;
+    sha256 = "1fmg5gz297bpr550s4vfq6vs7j042bp1mrdmqz1b7nz29c2khbz6";
+  };
+
+  propagatedBuildInputs = [
+    # https://github.com/dmulyalin/ttp/blob/master/docs/source/Installation.rst#additional-dependencies
+    cerberus
+    configparser
+    deepdiff
+    geoip2
+    jinja2
+    # n2g unpackaged
+    # netmiko unpackaged
+    # nornir unpackaged
+    openpyxl
+    tabulate
+    yangson
+  ];
+
+  pythonImportsCheck = [
+    "ttp"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pyyaml
+    ttp_templates
+  ];
+
+  disabledTestPaths = [
+    # missing package n2g
+    "test/pytest/test_N2G_formatter.py"
+  ];
+
+  disabledTests = [
+    # data structure mismatches
+    "test_yangson_validate"
+    "test_yangson_validate_yang_lib_in_output_tag_data"
+    "test_yangson_validate_multiple_inputs_mode_per_input_with_yang_lib_in_file"
+    "test_yangson_validate_multiple_inputs_mode_per_template"
+    "test_yangson_validate_multiple_inputs_mode_per_input_with_yang_lib_in_file_to_xml"
+    "test_yangson_validate_multiple_inputs_mode_per_template_to_xml"
+    "test_adding_data_from_files"
+    "test_lookup_include_csv"
+    "test_inputs_with_template_base_path"
+    "test_group_inputs"
+    "test_inputs_url_filters_extensions"
+    # ValueError: dictionary update sequence element #0 has length 1; 2 is required
+    "test_include_attribute_with_yaml_loader"
+    # TypeError: string indices must be integers
+    "test_lookup_include_yaml"
+    # Missing .xslx files *shrug*
+    "test_excel_formatter_update"
+    "test_excel_formatter_update_using_result_kwargs"
+    # missing package n2g
+    "test_n2g_formatter"
+  ];
+
+  pytestFlagsArray = [
+    "test/pytest"
+  ];
+
+  meta = with lib; {
+    description = "Template Text Parser";
+    homepage = "https://github.com/dmulyalin/ttp";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ttp/templates.nix b/nixpkgs/pkgs/development/python-modules/ttp/templates.nix
new file mode 100644
index 000000000000..835548d07842
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ttp/templates.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "ttp-templates";
+  version = "0.1.1";
+  format = "setuptools";
+
+  src = fetchPypi {
+    pname = "ttp_templates";
+    inherit version;
+    sha256 = "0vg7k733i8jqnfz8mpq8kzr2l7b7drk29zkzik91029f6w7li007";
+  };
+
+  # drop circular dependency on ttp
+  postPatch = ''
+    substituteInPlace setup.py --replace '"ttp>=0.6.0"' ""
+  '';
+
+  # circular dependency on ttp
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Template Text Parser Templates";
+    homepage = "https://github.com/dmulyalin/ttp_templates";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/twine/default.nix b/nixpkgs/pkgs/development/python-modules/twine/default.nix
index 9a246faff51c..b78f38c46cf8 100644
--- a/nixpkgs/pkgs/development/python-modules/twine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twine/default.nix
@@ -6,7 +6,7 @@
 , readme_renderer
 , requests
 , requests_toolbelt
-, setuptools_scm
+, setuptools-scm
 , tqdm
 , colorama
 , rfc3986
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     sha256 = "a56c985264b991dc8a8f4234eb80c5af87fa8080d0c224ad8f2cd05a2c22e83b";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [
     importlib-metadata
     keyring
diff --git a/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix b/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
index 316709c20413..b45218219c53 100644
--- a/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "twitterapi";
-  version = "2.7.2";
+  version = "2.7.3";
 
   src = fetchFromGitHub {
     owner = "geduldig";
     repo = "TwitterAPI";
     rev = "v${version}";
-    sha256 = "sha256-kSL+zAWn/6itBu4T1OcIbg4k5Asatgz/dqzbnlcsqkg=";
+    sha256 = "sha256-82TOVrC7wX7E9lKsx3iGxaEEjHSzf5uZwePBvAw3hDk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/txaio/default.nix b/nixpkgs/pkgs/development/python-modules/txaio/default.nix
index c2f2c9451bdc..074e7b8d5091 100644
--- a/nixpkgs/pkgs/development/python-modules/txaio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/txaio/default.nix
@@ -1,30 +1,55 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, mock, six, twisted, isPy37, isPy27 }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, mock
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, six
+, twisted
+, zope_interface
+}:
 
 buildPythonPackage rec {
   pname = "txaio";
   version = "21.2.1";
-  disabled = isPy27;
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "7d6f89745680233f1c4db9ddb748df5e88d2a7a37962be174c0fd04c8dba1dc8";
+    sha256 = "sha256-fW+JdFaAIz8cTbndt0jfXojSp6N5Yr4XTA/QTI26Hcg=";
   };
 
-  checkInputs = [ pytest mock ];
+  propagatedBuildInputs = [
+    six
+    twisted
+    zope_interface
+  ];
 
-  propagatedBuildInputs = [ six twisted ];
+  checkInputs = [
+    mock
+    pytest-asyncio
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
-    py.test -k "not test_sdist"
-  '';
+  disabledTests = [
+    # No real value
+    "test_sdist"
+    # Some tests seems out-dated and require additional data
+    "test_as_future"
+    "test_errback"
+    "test_create_future"
+    "test_callback"
+    "test_immediate_result"
+    "test_cancel"
+  ];
 
-  # Needs some fixing
-  doCheck = false;
+  pythonImportsCheck = [ "txaio" ];
 
   meta = with lib; {
-    description = "Utilities to support code that runs unmodified on Twisted and asyncio.";
-    homepage    = "https://github.com/crossbario/txaio";
-    license     = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    description = "Utilities to support code that runs unmodified on Twisted and asyncio";
+    homepage = "https://github.com/crossbario/txaio";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/txgithub/default.nix b/nixpkgs/pkgs/development/python-modules/txgithub/default.nix
index 09af476e94df..45e366764980 100644
--- a/nixpkgs/pkgs/development/python-modules/txgithub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/txgithub/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     description = "GitHub API client implemented using Twisted.";
     homepage    = "https://github.com/tomprince/txgithub";
     license     = licenses.mit;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/txrequests/default.nix b/nixpkgs/pkgs/development/python-modules/txrequests/default.nix
index be32dc4a7387..cf3bee52c590 100644
--- a/nixpkgs/pkgs/development/python-modules/txrequests/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/txrequests/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     description = "Asynchronous Python HTTP for Humans.";
     homepage    = "https://github.com/tardyp/txrequests";
     license     = licenses.asl20;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix b/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix
new file mode 100644
index 000000000000..9791c2b04688
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptoolsBuildHook
+, attrs
+, toml
+, pytestCheckHook
+, click
+}:
+
+buildPythonPackage rec {
+  pname = "typed-settings";
+  version = "0.9.2";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "203c1c6ec73dd1eb0fecd4981b31f8e05042f0dda16443190ac9ade1113ff53d";
+  };
+
+  nativeBuildInputs = [
+    setuptoolsBuildHook
+    pytestCheckHook
+  ];
+
+  propagatedBuildInputs = [
+    attrs
+    toml
+  ];
+
+  checkInputs = [
+    click
+  ];
+
+  meta = {
+    description = "Typed settings based on attrs classes";
+    homepage = "https://gitlab.com/sscherfke/typed-settings";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ fridh ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/uamqp/default.nix b/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
index 05bc653b0591..8e4abc5bd0e3 100644
--- a/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
@@ -16,11 +16,11 @@
 
 buildPythonPackage rec {
   pname = "uamqp";
-  version = "1.2.13";
+  version = "1.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-zDUFe/yMCThn+qJqDekMrUHEf1glGxBw4pioExLLoqg=";
+    sha256 = "sha256-XzfiLzRK1/DCmnxPW/H+KqnBuCbpYPawS2JnTQq+Vbw=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/uc-micro-py/default.nix b/nixpkgs/pkgs/development/python-modules/uc-micro-py/default.nix
new file mode 100644
index 000000000000..9b20e2251165
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/uc-micro-py/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "uc-micro-py";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "tsutsu3";
+    repo = "uc.micro-py";
+    rev = "v${version}";
+    hash = "sha256-23mKwoRGjtxpCOC26V8bAN5QEHLDOoSqPeTlUuIrxZ0=";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "uc_micro" ];
+
+  meta = with lib; {
+    description = "Micro subset of unicode data files for linkify-it-py";
+    homepage = "https://github.com/tsutsu3/uc.micro-py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ AluisioASG ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/udatetime/default.nix b/nixpkgs/pkgs/development/python-modules/udatetime/default.nix
new file mode 100644
index 000000000000..457020af6457
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/udatetime/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchpatch
+}:
+
+buildPythonPackage rec {
+  pname = "udatetime";
+  version = "0.0.16";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "09vlcskvaxnfk73l9w5xgl2ks9l62g1b24yrm0xxb7gn93qxglw2";
+  };
+
+  patches = [
+    # fix build with python 3.9
+    (fetchpatch {
+      url = "https://github.com/freach/udatetime/pull/33.patch";
+      sha256 = "02wm7ivkv1viqn2wflgd10dgpddfqfrwacmrldigb1mwb79n554j";
+    })
+  ];
+
+  # tests not included on pypi
+  doCheck = false;
+
+  pythonImportsCheck = [ "udatetime" ];
+
+  meta = with lib; {
+    description = "Fast RFC3339 compliant Python date-time library";
+    homepage = "https://github.com/freach/udatetime";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ globin ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ufonormalizer/default.nix b/nixpkgs/pkgs/development/python-modules/ufonormalizer/default.nix
index e2790482a3c4..357c09ab4e8d 100644
--- a/nixpkgs/pkgs/development/python-modules/ufonormalizer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ufonormalizer/default.nix
@@ -1,18 +1,18 @@
-{ lib, buildPythonPackage, fetchPypi, pythonOlder, setuptools_scm }:
+{ lib, buildPythonPackage, fetchPypi, pythonOlder, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "ufonormalizer";
-  version = "0.5.3";
+  version = "0.5.4";
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ijc697nv9rff9j1nhbf5vnyaryxlndq13msi94px8aq9gzxfrbi";
+    sha256 = "11l8475p3nq7azim35l5lck8vrgjgd01plnji6gg1hf9ckswr2pb";
     extension = "zip";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   meta = with lib; {
     description = "Script to normalize the XML and other data inside of a UFO";
diff --git a/nixpkgs/pkgs/development/python-modules/ufoprocessor/default.nix b/nixpkgs/pkgs/development/python-modules/ufoprocessor/default.nix
index b0f5b11ad3a4..540aadd90132 100644
--- a/nixpkgs/pkgs/development/python-modules/ufoprocessor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ufoprocessor/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi
 , defcon, fonttools, lxml, fs
 , mutatormath, fontmath, fontparts
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     extension = "zip";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [
     defcon
diff --git a/nixpkgs/pkgs/development/python-modules/ujson/2.nix b/nixpkgs/pkgs/development/python-modules/ujson/2.nix
index 36aa5a020c35..d9ec65c2392e 100644
--- a/nixpkgs/pkgs/development/python-modules/ujson/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/ujson/2.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytestCheckHook
 }:
 
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "18z9gb9ggy1r464b9q1gqs078mqgrkj6dys5a47529rqk3yfybdx";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [
     pytestCheckHook
diff --git a/nixpkgs/pkgs/development/python-modules/ujson/default.nix b/nixpkgs/pkgs/development/python-modules/ujson/default.nix
index d93ee9f5af70..ab1f3e2b7cab 100644
--- a/nixpkgs/pkgs/development/python-modules/ujson/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ujson/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , isPy3k
 , isPyPy
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "c615a9e9e378a7383b756b7e7a73c38b22aeb8967a8bfbffd4741f7ffd043c4d";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   meta = with lib; {
     homepage = "https://pypi.python.org/pypi/ujson";
diff --git a/nixpkgs/pkgs/development/python-modules/umap-learn/default.nix b/nixpkgs/pkgs/development/python-modules/umap-learn/default.nix
index b9abe2bb7682..fcf96a715f15 100644
--- a/nixpkgs/pkgs/development/python-modules/umap-learn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/umap-learn/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , nose
 , numpy
-, scikitlearn
+, scikit-learn
 , scipy
 , numba
 , pynndescent
@@ -13,29 +13,29 @@
 
 buildPythonPackage rec {
   pname = "umap-learn";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "lmcinnes";
     repo = "umap";
     rev = version;
-    sha256 = "sha256-2Z5RDi4bz8hh8zMwkcCQY9NrGaVd1DJEBOmrCl2oSvM=";
+    sha256 = "0favphngcz5jvyqs06x07hk552lvl9qx3vka8r4x0xmv88gsg349";
   };
 
-  checkInputs = [
-    nose
-    tensorflow
-    pytestCheckHook
-  ];
-
   propagatedBuildInputs = [
     numpy
-    scikitlearn
+    scikit-learn
     scipy
     numba
     pynndescent
   ];
 
+  checkInputs = [
+    nose
+    tensorflow
+    pytestCheckHook
+  ];
+
   preCheck = ''
     export HOME=$TMPDIR
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/unpaddedbase64/default.nix b/nixpkgs/pkgs/development/python-modules/unpaddedbase64/default.nix
index 96b27127cc60..b5ff5be20616 100644
--- a/nixpkgs/pkgs/development/python-modules/unpaddedbase64/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/unpaddedbase64/default.nix
@@ -1,19 +1,25 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, poetry-core
 }:
 
 buildPythonPackage rec {
   pname = "unpaddedbase64";
-  version = "1.1.0";
+  version = "2.1.0";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "python-${pname}";
     rev = "refs/tags/v${version}";
-    sha256 = "0if3fjfxga0bwdq47v77fs9hrcqpmwdxry2i2a7pdqsp95258nxd";
+    sha256 = "1n6har8pxv0mqb96lanzihp1xf76aa17jw3977drb1fgz947pnmz";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   meta = with lib; {
     homepage = "https://github.com/matrix-org/python-unpaddedbase64";
     description = "Unpadded Base64";
diff --git a/nixpkgs/pkgs/development/python-modules/uproot/default.nix b/nixpkgs/pkgs/development/python-modules/uproot/default.nix
new file mode 100644
index 000000000000..8a687534005e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/uproot/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, awkward
+, numpy
+, lz4
+, xxhash
+, zstandard
+, pytestCheckHook
+, scikit-hep-testdata
+}:
+
+buildPythonPackage rec {
+  pname = "uproot";
+  version = "4.0.8";
+
+  # fetch from github for tests
+  src = fetchFromGitHub {
+    owner = "scikit-hep";
+    repo = "uproot4";
+    rev = version;
+    sha256 = "sha256-E9BRgyMz+3Xl8Q1zsnVtvW44FXTqs29U1oK4te0myq4=";
+  };
+
+  propagatedBuildInputs = [
+    awkward
+    numpy
+    lz4
+    xxhash
+    zstandard
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    scikit-hep-testdata
+  ];
+  preCheck = ''
+    export HOME="$(mktemp -d)"
+  '';
+  disabledTests = [
+    # tests that try to download files
+    "test_http"
+    "test_no_multipart"
+    "test_fallback"
+    "test_pickle_roundtrip_http"
+  ];
+  disabledTestPaths = [
+    # tests that try to download files
+    "tests/test_0066-fix-http-fallback-freeze.py"
+    "tests/test_0088-read-with-http.py"
+    "tests/test_0220-contiguous-byte-ranges-in-http.py"
+  ];
+  pythonImportsCheck = [ "uproot" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/scikit-hep/uproot4";
+    description = "ROOT I/O in pure Python and Numpy";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/userpath/default.nix b/nixpkgs/pkgs/development/python-modules/userpath/default.nix
index 8366a56158dd..d619cba0649d 100644
--- a/nixpkgs/pkgs/development/python-modules/userpath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/userpath/default.nix
@@ -2,19 +2,18 @@
 , buildPythonPackage
 , fetchPypi
 , click
-, distro
 }:
 
 buildPythonPackage rec {
   pname = "userpath";
-  version = "1.4.1";
+  version = "1.6.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256="0mfjmvx286z1dmnrc7bm65x8gj8qrmkcyagl0vf5ywfq0bm48591";
+    sha256="1xpgdmdvhmmmdlivsqlzx1xvyj0gcnfp0j2ba5izmv3q2k5abfdj";
   };
 
-  propagatedBuildInputs = [ click distro ];
+  propagatedBuildInputs = [ click ];
 
   # test suite is difficult to emulate in sandbox due to shell manipulation
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/uvloop/default.nix b/nixpkgs/pkgs/development/python-modules/uvloop/default.nix
index 3ba9dcb5f144..125850a080f3 100644
--- a/nixpkgs/pkgs/development/python-modules/uvloop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/uvloop/default.nix
@@ -44,8 +44,15 @@ buildPythonPackage rec {
     "--assert=plain"
     "--strict"
     "--tb=native"
+  ] ++ lib.optionals (stdenv.isAarch64) [
+    # test gets stuck in epoll_pwait on hydras aarch64 builders
+    # https://github.com/MagicStack/uvloop/issues/412
+    "--deselect" "tests/test_tcp.py::Test_AIO_TCPSSL::test_remote_shutdown_receives_trailing_data"
+  ];
+
+  disabledTestPaths = [
     # ignore code linting tests
-    "--ignore=tests/test_sourcecode.py"
+    "tests/test_sourcecode.py"
   ];
 
   # force using installed/compiled uvloop vs source by moving tests to temp dir
diff --git a/nixpkgs/pkgs/development/python-modules/variants/default.nix b/nixpkgs/pkgs/development/python-modules/variants/default.nix
index 3a45230720e2..a9345b374a7e 100644
--- a/nixpkgs/pkgs/development/python-modules/variants/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/variants/default.nix
@@ -2,7 +2,7 @@
 , isPy27
 , fetchPypi
 , pytestrunner
-, setuptools_scm
+, setuptools-scm
 , singledispatch ? null
 , pytest
 , lib
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     pytestrunner
-    setuptools_scm
+    setuptools-scm
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/vdf/default.nix b/nixpkgs/pkgs/development/python-modules/vdf/default.nix
index 846aa7a13dfc..70ddf7bec97a 100644
--- a/nixpkgs/pkgs/development/python-modules/vdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vdf/default.nix
@@ -1,24 +1,28 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, pytest, pytestcov, mock }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "vdf";
-  version = "3.3";
+  version = "3.4";
 
   src = fetchFromGitHub {
     owner = "ValvePython";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0d9bhxdznry7kzyma00cxwjn6rqnd6vw8v5ym68k6qswgfzb569i";
+    hash = "sha256-6ozglzZZNKDtADkHwxX2Zsnkh6BE8WbcRcC9HkTTgPU=";
   };
 
-  checkInputs = [ pytest pytestcov mock ];
-  checkPhase = "make test";
+  checkInputs = [ mock pytestCheckHook ];
+  pythonImportsCheck = [ "vdf" ];
 
   meta = with lib; {
     description = "Library for working with Valve's VDF text format";
     homepage = "https://github.com/ValvePython/vdf";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix b/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
index 1f7642bfe347..eb720c7f2066 100644
--- a/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , isPy27
 , click
 , click-log
@@ -13,7 +14,7 @@
 , pytestCheckHook
 , pytest-localserver
 , pytest-subtesthack
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -35,7 +36,7 @@ buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   checkInputs = [
@@ -45,6 +46,14 @@ buildPythonPackage rec {
     pytest-subtesthack
   ];
 
+  patches = [
+    (fetchpatch {
+      name = "update-usage-deprecated-method.patch";
+      url = "https://github.com/pimutils/vdirsyncer/commit/7577fa21177442aacc2d86640ef28cebf1c4aaef.patch";
+      sha256 = "0inkr1wfal20kssij8l5myhpjivxg8wlvhppqc3lvml9d1i75qbh";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace setup.py --replace "click>=5.0,<6.0" "click"
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/virtualenv/default.nix b/nixpkgs/pkgs/development/python-modules/virtualenv/default.nix
index bcd672601534..b25f162baefb 100644
--- a/nixpkgs/pkgs/development/python-modules/virtualenv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/virtualenv/default.nix
@@ -16,7 +16,7 @@
 , pytest-timeout
 , pytestCheckHook
 , pythonOlder
-, setuptools_scm
+, setuptools-scm
 , six
 , stdenv
 }:
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/vispy/default.nix b/nixpkgs/pkgs/development/python-modules/vispy/default.nix
index 6dd32508befa..5524258a7e82 100644
--- a/nixpkgs/pkgs/development/python-modules/vispy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vispy/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, substituteAll, stdenv,
   fetchPypi, numpy, cython, freetype-py, fontconfig, libGL,
-  setuptools_scm, setuptools-scm-git-archive
+  setuptools-scm, setuptools-scm-git-archive
   }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [
-    cython setuptools_scm setuptools-scm-git-archive
+    cython setuptools-scm setuptools-scm-git-archive
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/vowpalwabbit/default.nix b/nixpkgs/pkgs/development/python-modules/vowpalwabbit/default.nix
index da13ad21026d..c48221132043 100644
--- a/nixpkgs/pkgs/development/python-modules/vowpalwabbit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vowpalwabbit/default.nix
@@ -11,7 +11,7 @@
 , pygments
 , numpy
 , scipy
-, scikitlearn }:
+, scikit-learn }:
 
 buildPythonPackage rec {
   pname = "vowpalwabbit";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     numpy
-    scikitlearn
+    scikit-learn
     scipy
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/watchdog/default.nix b/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
index df9586fc8e00..441630fe6f66 100644
--- a/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
@@ -5,17 +5,18 @@
 , argh
 , pathtools
 , pyyaml
+, pytest-timeout
 , pytestCheckHook
 , CoreServices
 }:
 
 buildPythonPackage rec {
   pname = "watchdog";
-  version = "2.0.3";
+  version = "2.1.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-QojTqYQyTbSS5XqhaWZiOKJXjwr1oIFoVSZgj7n2vWE=";
+    sha256 = "sha256-AjfbTZAkhZvqJ9DvtZ/nXu8pCDP9mIuOrXqHmwMIwts=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
@@ -27,6 +28,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    pytest-timeout
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/watchgod/default.nix b/nixpkgs/pkgs/development/python-modules/watchgod/default.nix
new file mode 100644
index 000000000000..5bb842586422
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/watchgod/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "watchgod";
+  version = "0.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0aagm0n5fkpzdsfgl0r21gkz5qaicgq3f4rqz2fdvsgbn1i0s528";
+  };
+
+  # no tests in release
+  doCheck = false;
+
+  pythonImportsCheck = [ "watchgod" ];
+
+  meta = with lib; {
+    description = "Simple, modern file watching and code reload in python";
+    homepage = "https://github.com/samuelcolvin/watchgod";
+    license = licenses.mit;
+    maintainers = with maintainers; [ globin ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/development/python-modules/webssh/default.nix b/nixpkgs/pkgs/development/python-modules/webssh/default.nix
new file mode 100644
index 000000000000..00aff794372d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/webssh/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, fetchPypi, tornado, paramiko }:
+
+buildPythonPackage rec {
+  pname = "webssh";
+  version = "1.5.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-Au6PE8jYm8LkEp0B1ymW//ZkrkcV0BauwufQmrHLEU4=";
+  };
+
+  propagatedBuildInputs = [ tornado paramiko ];
+
+  pythonImportsCheck = [ "webssh" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/huashengdun/webssh/";
+    description = "Web based ssh client";
+    license = licenses.mit;
+    maintainers = with maintainers; [ davidtwco ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/whoosh/default.nix b/nixpkgs/pkgs/development/python-modules/whoosh/default.nix
index d3ff703f694a..e31d97a07d92 100644
--- a/nixpkgs/pkgs/development/python-modules/whoosh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/whoosh/default.nix
@@ -25,6 +25,6 @@ buildPythonPackage rec {
 checking library.";
     homepage    = "https://bitbucket.org/mchaput/whoosh";
     license     = licenses.bsd2;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/word2vec/default.nix b/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
index 259566c8fc26..b078231c9429 100644
--- a/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
@@ -4,9 +4,9 @@
 , fetchzip
 , cython
 , numpy
-, scikitlearn
+, scikit-learn
 , six
-, setuptools_scm
+, setuptools-scm
 , gcc
 , pytest
 , pytestcov
@@ -28,9 +28,9 @@ buildPythonPackage rec {
     sha256 = "222d8ffb47f385c43eba45e3f308e605fc9736b2b7137d74979adf1a31e7c8b4";
   };
 
-  nativeBuildInputs = [ setuptools_scm gcc ];
+  nativeBuildInputs = [ setuptools-scm gcc ];
 
-  propagatedBuildInputs = [ cython numpy scikitlearn six ];
+  propagatedBuildInputs = [ cython numpy scikit-learn six ];
 
   checkInputs = [ pytest pytestcov ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/wordfreq/default.nix b/nixpkgs/pkgs/development/python-modules/wordfreq/default.nix
index d687ffd2d0b9..6aa8599653b1 100644
--- a/nixpkgs/pkgs/development/python-modules/wordfreq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wordfreq/default.nix
@@ -6,38 +6,43 @@
 , msgpack
 , mecab-python3
 , jieba
-, pytest
-, pythonOlder
+, pytestCheckHook
+, isPy27
 , fetchFromGitHub
 }:
 
 buildPythonPackage rec {
   pname = "wordfreq";
-  version = "2.3.2";
-  disabled = pythonOlder "3";
+  version = "2.5";
+  disabled = isPy27;
 
    src = fetchFromGitHub {
     owner = "LuminosoInsight";
     repo = "wordfreq";
-    # upstream don't tag by version
     rev = "v${version}";
-    sha256 = "078657iiksrqzcc2wvwhiilf3xxq5vlinsv0kz03qzqr1qyvbmas";
+    sha256 = "09wzraddbdw3781pk2sxlz8knax9jrcl24ymz54wx6sk0gvq95i7";
    };
 
-  propagatedBuildInputs = [ regex langcodes ftfy msgpack mecab-python3 jieba ];
+  propagatedBuildInputs = [
+    regex
+    langcodes
+    ftfy
+    msgpack
+    mecab-python3
+    jieba
+  ];
 
-  # patch to relax version requirements for regex
-  # dependency to prevent break in upgrade
   postPatch = ''
     substituteInPlace setup.py --replace "regex ==" "regex >="
   '';
 
-  checkInputs = [ pytest ];
-
-  checkPhase = ''
-    # These languages require additional dictionaries
-    pytest tests -k 'not test_japanese and not test_korean and not test_languages and not test_french_and_related'
-  '';
+  checkInputs = [ pytestCheckHook ];
+  disabledTests = [
+    # These languages require additional dictionaries that aren't packaged
+    "test_languages"
+    "test_japanese"
+    "test_korean"
+  ];
 
   meta = with lib; {
     description = "A library for looking up the frequencies of words in many languages, based on many sources of data";
diff --git a/nixpkgs/pkgs/development/python-modules/xdg/default.nix b/nixpkgs/pkgs/development/python-modules/xdg/default.nix
index e47a91fb993b..2ea4e5bedf8b 100644
--- a/nixpkgs/pkgs/development/python-modules/xdg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xdg/default.nix
@@ -5,7 +5,7 @@
 }:
 
 buildPythonPackage rec {
-  version = "5.0.1";
+  version = "5.0.2";
   pname = "xdg";
   disabled = isPy27;
   format = "pyproject";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     owner = "srstevenson";
     repo = pname;
     rev = version;
-    sha256 = "sha256-WMY9Hs9SbErTp8hVBoCWTz4dLQhuzqTRpXFEyE7+woo=";
+    sha256 = "sha256-wZfihMrq83Bye5CE5p7bTlI9Z7CsCkSd8Art5ws4vsY=";
   };
 
   nativeBuildInputs = [ poetry-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/xdot/default.nix b/nixpkgs/pkgs/development/python-modules/xdot/default.nix
index 7dbbd89e781b..e28deaf07d64 100644
--- a/nixpkgs/pkgs/development/python-modules/xdot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xdot/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, python3, xvfb_run
+{ lib, buildPythonPackage, fetchPypi, isPy3k, python3, xvfb-run
 , wrapGAppsHook, gobject-introspection, pygobject3, graphviz, gtk3, numpy }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   disabled = !isPy3k;
   nativeBuildInputs = [ wrapGAppsHook ];
   propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 numpy ];
-  checkInputs = [ xvfb_run ];
+  checkInputs = [ xvfb-run ];
 
   checkPhase = ''
     xvfb-run -s '-screen 0 800x600x24' ${python3.interpreter} nix_run_setup test
diff --git a/nixpkgs/pkgs/development/python-modules/xgboost/default.nix b/nixpkgs/pkgs/development/python-modules/xgboost/default.nix
index 81a8d05f5bf0..1045b86a4441 100644
--- a/nixpkgs/pkgs/development/python-modules/xgboost/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xgboost/default.nix
@@ -1,8 +1,9 @@
-{ buildPythonPackage
-, pytest
-, nose
+{ lib
+, buildPythonPackage
+, pytestCheckHook
+, cmake
 , scipy
-, scikitlearn
+, scikit-learn
 , stdenv
 , xgboost
 , substituteAll
@@ -10,28 +11,57 @@
 , matplotlib
 , graphviz
 , datatable
+, hypothesis
 }:
 
 buildPythonPackage {
   pname = "xgboost";
   inherit (xgboost) version src meta;
 
-  patches = [
-    (substituteAll {
-      src = ./lib-path-for-python.patch;
-      libpath = "${xgboost}/lib";
-      extention = stdenv.hostPlatform.extensions.sharedLibrary;
-    })
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ xgboost ];
+  propagatedBuildInputs = [ scipy ];
+  checkInputs = [
+    pytestCheckHook
+    scikit-learn
+    pandas
+    matplotlib
+    graphviz
+    datatable
+    hypothesis
   ];
 
-  postPatch = "cd python-package";
+  # Override existing logic for locating libxgboost.so which is not appropriate for Nix
+  prePatch = let
+    libPath = "${xgboost}/lib/libxgboost${stdenv.hostPlatform.extensions.sharedLibrary}";
+  in ''
+    echo 'find_lib_path = lambda: ["${libPath}"]' > python-package/xgboost/libpath.py
+  '';
 
-  propagatedBuildInputs = [ scipy ];
-  buildInputs = [ xgboost ];
-  checkInputs = [ nose pytest scikitlearn pandas matplotlib graphviz datatable ];
+  dontUseCmakeConfigure = true;
 
-  checkPhase = ''
+  postPatch = ''
+    cd python-package
+  '';
+
+  preCheck = ''
     ln -sf ../demo .
-    nosetests ../tests/python
+    ln -s ${xgboost}/bin/xgboost ../xgboost
   '';
+
+  pytestFlagsArray = ["../tests/python"];
+  disabledTestPaths = [
+    # Requires internet access: https://github.com/dmlc/xgboost/blob/03cd087da180b7dff21bd8ef34997bf747016025/tests/python/test_ranking.py#L81
+    "../tests/python/test_ranking.py"
+  ];
+  disabledTests = [
+    "test_cli_binary_classification"
+    "test_model_compatibility"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # fails to connect to the com.apple.fonts daemon in sandboxed mode
+    "test_plotting"
+    "test_sklearn_plotting"
+  ];
+
+  __darwinAllowLocalNetworking = true;
 }
diff --git a/nixpkgs/pkgs/development/python-modules/xgboost/lib-path-for-python.patch b/nixpkgs/pkgs/development/python-modules/xgboost/lib-path-for-python.patch
deleted file mode 100644
index c9252c12fed1..000000000000
--- a/nixpkgs/pkgs/development/python-modules/xgboost/lib-path-for-python.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/python-package/xgboost/libpath.py b/python-package/xgboost/libpath.py
-index d87922c0..859a30fb 100644
---- a/python-package/xgboost/libpath.py
-+++ b/python-package/xgboost/libpath.py
-@@ -19,32 +19,4 @@ def find_lib_path():
-     lib_path: list(string)
-        List of all found library path to xgboost
-     """
--    curr_path = os.path.dirname(os.path.abspath(os.path.expanduser(__file__)))
--    # make pythonpack hack: copy this directory one level upper for setup.py
--    dll_path = [curr_path, os.path.join(curr_path, '../../lib/'),
--                os.path.join(curr_path, './lib/'),
--                os.path.join(sys.prefix, 'xgboost')]
--    if sys.platform == 'win32':
--        if platform.architecture()[0] == '64bit':
--            dll_path.append(os.path.join(curr_path, '../../windows/x64/Release/'))
--            # hack for pip installation when copy all parent source directory here
--            dll_path.append(os.path.join(curr_path, './windows/x64/Release/'))
--        else:
--            dll_path.append(os.path.join(curr_path, '../../windows/Release/'))
--            # hack for pip installation when copy all parent source directory here
--            dll_path.append(os.path.join(curr_path, './windows/Release/'))
--        dll_path = [os.path.join(p, 'xgboost.dll') for p in dll_path]
--    elif sys.platform.startswith('linux') or sys.platform.startswith('freebsd'):
--        dll_path = [os.path.join(p, 'libxgboost.so') for p in dll_path]
--    elif sys.platform == 'darwin':
--        dll_path = [os.path.join(p, 'libxgboost.dylib') for p in dll_path]
--
--    lib_path = [p for p in dll_path if os.path.exists(p) and os.path.isfile(p)]
--
--    # From github issues, most of installation errors come from machines w/o compilers
--    if not lib_path and not os.environ.get('XGBOOST_BUILD_DOC', False):
--        raise XGBoostLibraryNotFound(
--            'Cannot find XGBoost Library in the candidate path, ' +
--            'did you install compilers and run build.sh in root path?\n'
--            'List of candidates:\n' + ('\n'.join(dll_path)))
--    return lib_path
-+    return ["@libpath@/libxgboost@extention@"]
diff --git a/nixpkgs/pkgs/development/python-modules/xkcdpass/default.nix b/nixpkgs/pkgs/development/python-modules/xkcdpass/default.nix
index e372a843cf84..233f77613fe8 100644
--- a/nixpkgs/pkgs/development/python-modules/xkcdpass/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xkcdpass/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "xkcdpass";
-  version = "1.17.6";
+  version = "1.19.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ghsjs5bxl996pap910q9s21nywb26mfpjd92rbfywbnj8f2k2cy";
+    sha256 = "sha256-F7977Tb8iu/pRy6YhginJgK0N0G3CjPpHjomLTFf1F8=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/nixpkgs/pkgs/development/python-modules/xknx/default.nix b/nixpkgs/pkgs/development/python-modules/xknx/default.nix
index aefe3ed2b95c..2d565c0eac48 100644
--- a/nixpkgs/pkgs/development/python-modules/xknx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xknx/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "xknx";
-  version = "0.18.1";
+  version = "0.18.3";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "XKNX";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Zf7Od3v54LxMofm67XHeRM4Yeg1+KQLRhFl1BihAxGc=";
+    sha256 = "sha256-IXzmVAxxFOfU8ptixZLeyM64Fm1xSIlEDbR09f77JKM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/xlib/default.nix b/nixpkgs/pkgs/development/python-modules/xlib/default.nix
index 1819fd5a5124..cfb72680fa8b 100644
--- a/nixpkgs/pkgs/development/python-modules/xlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xlib/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , six
-, setuptools_scm
+, setuptools-scm
 , xorg
 , python
 , mock
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   '';
 
   checkInputs = [ mock nose util-linux /* mcookie */ xorg.xauth xorg.xorgserver /* xvfb */ ];
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
   buildInputs = [ xorg.libX11 ];
   propagatedBuildInputs = [ six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix b/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
index 6f7726da68d7..47576e6ee60a 100644
--- a/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
@@ -13,10 +13,9 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    homepage = "https://github.com/bitprophet/alabaster";
+    homepage = "https://github.com/dilshod/xlsx2csv";
     description = "Convert xlsx to csv";
     license = licenses.bsd3;
     maintainers = with maintainers; [ jb55 ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix b/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
index 58d50d7b6cf3..7008814ba287 100644
--- a/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
@@ -5,25 +5,20 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.5.3";
+  version = "1.6.2";
   pname = "xmlschema";
 
   src = fetchFromGitHub {
     owner = "sissaschool";
     repo = "xmlschema";
     rev = "v${version}";
-    sha256 = "0pv8zdz03wjnjwrgjr5pc3q69h7zh51h0iwgwxwl65qi1r6ydk54";
+    sha256 = "sha256-GL2PlHxKDSEsZwHPBAy+tjBSbKyvlbXUWwXakKPmzSs=";
   };
 
   propagatedBuildInputs = [ elementpath ];
 
   checkInputs = [ lxml pytest ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "elementpath~=2.0.0" "elementpath~=2.0"
-  '';
-
   # Ignore broken fixtures, and tests for files which don't exist.
   # For darwin, we need to explicity say we can't reach network
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/xmlsec/default.nix b/nixpkgs/pkgs/development/python-modules/xmlsec/default.nix
index 82f4a968ba6e..b8c60f1b6425 100644
--- a/nixpkgs/pkgs/development/python-modules/xmlsec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xmlsec/default.nix
@@ -16,11 +16,11 @@
 
 buildPythonPackage rec {
   pname = "xmlsec";
-  version = "1.3.9";
+  version = "1.3.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1c4k42zv3plm6v65p7z6l5rxyf50h40d02nhc16vq7cjrfvdf4rx";
+    sha256 = "sha256-zS6q/38xeEoH3ZnOgfp2cxPfO6GDT6pBQ+4sBwAMrHo=";
   };
 
   # https://github.com/mehcode/python-xmlsec/issues/84#issuecomment-632930116
@@ -38,6 +38,8 @@ buildPythonPackage rec {
   checkInputs = [ pytestCheckHook hypothesis ];
   disabledTestPaths = [ "tests/test_doc_examples.py" ];
 
+  pythonImportsCheck = [ "xmlsec" ];
+
   meta = with lib; {
     description = "Python bindings for the XML Security Library";
     homepage = "https://github.com/mehcode/python-xmlsec";
diff --git a/nixpkgs/pkgs/development/python-modules/yalesmartalarmclient/default.nix b/nixpkgs/pkgs/development/python-modules/yalesmartalarmclient/default.nix
index a4ca97e27ac0..ce0dc34c0b40 100644
--- a/nixpkgs/pkgs/development/python-modules/yalesmartalarmclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yalesmartalarmclient/default.nix
@@ -1,4 +1,5 @@
 { lib
+, backoff
 , buildPythonPackage
 , fetchFromGitHub
 , requests
@@ -6,16 +7,19 @@
 
 buildPythonPackage rec {
   pname = "yalesmartalarmclient";
-  version = "0.3.1";
+  version = "0.3.4";
 
   src = fetchFromGitHub {
     owner = "domwillcode";
     repo = "yale-smart-alarm-client";
     rev = "v${version}";
-    sha256 = "0fscp9n66h8a8khvjs2rjgm95xsdckpknadnyxqdmhw3hlj0aw6h";
+    sha256 = "sha256-waWi3QnH7xQZh5iYklISCvfAaBdH5k+Y10huZuTNlSc=";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    backoff
+    requests
+  ];
 
   # Project has no tests
   doCheck = false;
@@ -23,7 +27,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python module to interface with Yale Smart Alarm Systems";
-    homepage = "https://github.com/mampfes/python-wiffi";
+    homepage = "https://github.com/domwillcode/yale-smart-alarm-client";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
index c65c88b88d5b..e20536b30eb8 100644
--- a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "yalexs";
-  version = "1.1.10";
+  version = "1.1.11";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "bdraco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1qmxiafqmh51i3l30pajaqj5h0kziq4d37fn6hl58429bb85dpp9";
+    sha256 = "sha256-fVUYrzIcW4jbxdhS/Bh8eu+aJPFOqj0LXjoQKw+FZdg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/yangson/default.nix b/nixpkgs/pkgs/development/python-modules/yangson/default.nix
new file mode 100644
index 000000000000..44ac6cf9fe1e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/yangson/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools-scm
+, pyxb
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "yangson";
+  version = "1.4.8";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "11w4aq0w2rnkz1axgmw003z2snd4kc49dil6kp1ajlqnfh1pcx8m";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    pyxb
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "yangson"
+  ];
+
+  meta = with lib; {
+    description = "Library for working with data modelled in YANG";
+    homepage = "https://github.com/CZ-NIC/yangson";
+    license = with licenses; [
+      gpl3Plus
+      lgpl3Plus
+    ];
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/yeelight/default.nix b/nixpkgs/pkgs/development/python-modules/yeelight/default.nix
index 9d435c1cce6b..888708e799c7 100644
--- a/nixpkgs/pkgs/development/python-modules/yeelight/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yeelight/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "yeelight";
-  version = "0.6.1";
+  version = "0.6.3";
   disabled = pythonOlder "3.4";
 
   src = fetchFromGitLab {
     owner = "stavros";
     repo = "python-yeelight";
     rev = "v${version}";
-    sha256 = "sha256-LB7A8E22hyqhVBElrOwtC3IPNkyQkU7ZJ1ScqaXQ6zs=";
+    sha256 = "sha256-71ncPGcqTRSldWVhJ2uZ2AEgkv1KO2i6UtAUTcJcru8=";
   };
 
   propagatedBuildInputs = [
@@ -35,7 +35,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python library for controlling YeeLight RGB bulbs";
     homepage = "https://gitlab.com/stavros/python-yeelight/";
-    license = licenses.asl20;
+    license = licenses.bsd2;
     maintainers = with maintainers; [ nyanloutre ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/yfinance/default.nix b/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
index bceac92d79ed..81250f98a64d 100644
--- a/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "yfinance";
-  version = "0.1.56";
+  version = "0.1.59";
 
   # GitHub source releases aren't tagged
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a6d4c7b939fdd48d983556501f5b387e20aaef86afc8e6ba6f91a49a7e22d2dd";
+    sha256 = "fe4dc46807eceadc6604bf51ece7297b752dc5402a38a87385094fbfc7565fa0";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix b/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
index 4728da51a64b..daba39eb224d 100644
--- a/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "ytmusicapi";
-  version = "0.16.0";
+  version = "0.17.3";
 
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/94/taeBI6xZ3uN/wfMnk/NPmk+j0+aaH8CAZBEsK10=";
+    sha256 = "sha256-miScxT79ZAgDT0AamkN1JyqbM56Otk86LnE6HM0G1Vs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zarr/default.nix b/nixpkgs/pkgs/development/python-modules/zarr/default.nix
index 3d21bbb3fe39..5c43494d28d7 100644
--- a/nixpkgs/pkgs/development/python-modules/zarr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zarr/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , isPy27
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , asciitree
 , numpy
 , fasteners
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools_scm
+    setuptools-scm
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zeep/default.nix b/nixpkgs/pkgs/development/python-modules/zeep/default.nix
index 50dda4c8edbd..7c72d2500346 100644
--- a/nixpkgs/pkgs/development/python-modules/zeep/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zeep/default.nix
@@ -1,85 +1,85 @@
-{ fetchPypi
-, lib
-, fetchpatch
-, buildPythonPackage
-, isPy3k
+{ lib
+, aiohttp
+, aioresponses
 , appdirs
 , attrs
+, buildPythonPackage
 , cached-property
 , defusedxml
+, fetchFromGitHub
+, freezegun
+, httpx
 , isodate
 , lxml
-, requests
-, requests_toolbelt
-, six
-, pytz
-, tornado
-, aiohttp
-# test dependencies
-, freezegun
 , mock
 , pretend
-, pytest
-, pytestcov
+, pytest-asyncio
+, pytest-httpx
+, pytestCheckHook
+, pythonOlder
+, pytz
+, requests
+, requests_toolbelt
+, requests-file
 , requests-mock
-, aioresponses
+, xmlsec
 }:
 
 buildPythonPackage rec {
   pname = "zeep";
-  version = "3.4.0";
+  version = "4.0.0";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0e98669cfeb60756231ae185498f9ae21b30b2681786b8de58ed34c3b93e41dd";
+  src = fetchFromGitHub {
+    owner = "mvantellingen";
+    repo = "python-zeep";
+    rev = version;
+    sha256 = "1rwmwk47fxs8dxwv5dr6gbnbiyilznifb47fhbxgzj231w0y82cm";
   };
 
-  patches = [
-    ( fetchpatch {
-        url = "https://github.com/mvantellingen/python-zeep/pull/1006/commits/ba7edd6bf2b31023b31e8f17c161e1d6d5af3d29.patch";
-        sha256 = "1j0jd5hmh457im9sbawaqf6pnfy36fhr9wqdim8wk5da9ixr0ajs";
-     })
-  ];
-
   propagatedBuildInputs = [
     appdirs
     attrs
     cached-property
     defusedxml
+    httpx
     isodate
     lxml
+    pytz
     requests
     requests_toolbelt
-    six
-    pytz
-
-    # optional requirements
-    tornado
-  ] ++ lib.optional isPy3k aiohttp;
+    requests-file
+    xmlsec
+  ];
 
   checkInputs = [
+    aiohttp
+    aioresponses
     freezegun
     mock
     pretend
-    pytestcov
-    pytest
+    pytest-asyncio
+    pytest-httpx
+    pytestCheckHook
     requests-mock
-  ] ++ lib.optional isPy3k aioresponses;
+    xmlsec
+  ];
 
-  checkPhase = ''
-    runHook preCheck
-    # fix compatibility with pytest 4
-    substituteInPlace tests/conftest.py \
-       --replace 'request.node.get_marker("requests")' 'request.node.get_closest_marker("requests")'
-    # ignored tests requires xmlsec python module
-    HOME=$(mktemp -d) pytest tests --ignore tests/test_wsse_signature.py
-    runHook postCheck
+  preCheck = ''
+    export HOME=$(mktemp -d);
   '';
 
+  disabledTests = [
+    # lxml.etree.XMLSyntaxError: Extra content at the end of the document, line 2, column 64
+    "test_mime_content_serialize_text_xml"
+  ];
+
+  pythonImportsCheck = [ "zeep" ];
+
   meta = with lib; {
+    description = "Python SOAP client";
     homepage = "http://docs.python-zeep.org";
     license = licenses.mit;
-    description = "A modern/fast Python SOAP client based on lxml / requests";
     maintainers = with maintainers; [ rvl ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
index 5105cbfff021..313f121510e1 100644
--- a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "zeroconf";
-  version = "0.29.0";
+  version = "0.31.0";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-eu+7ZYtFKx/X5REkNk+TjG9eQtbqiT+iVXvqjAbFQK8=";
+    sha256 = "sha256-U6GAJIRxxvgb0f/8vOA+2T19jq8QkFyRIaweqZbRmEQ=";
   };
 
   propagatedBuildInputs = [ ifaddr ];
@@ -25,6 +25,7 @@ buildPythonPackage rec {
 
   disabledTests = [
     # disable tests that expect some sort of networking in the build container
+    "test_close_multiple_times"
     "test_launch_and_close"
     "test_launch_and_close_v4_v6"
     "test_launch_and_close_v6_only"
diff --git a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
index d9c42910e649..34335c65e1a1 100644
--- a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "zha-quirks";
-  version = "0.0.56";
+  version = "0.0.57";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "zha-device-handlers";
     rev = version;
-    sha256 = "1jss5pnxdjlp0kplqxgr09vv1zq9n7l9w08hsywy2vglqmd67a66";
+    sha256 = "sha256-ajdluj6UIzjJUK30GtoM+e5lsMQRKnn3FPNEg+RS/DM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix b/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
index 2543d0675852..894539a3e2e0 100644
--- a/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
@@ -3,32 +3,34 @@
 , asynctest
 , buildPythonPackage
 , coloredlogs
-, coveralls
 , fetchFromGitHub
+, jsonschema
 , pyserial
 , pyserial-asyncio
 , pytest-asyncio
 , pytest-mock
 , pytest-timeout
-, pytestcov
 , pytestCheckHook
+, pythonOlder
 , voluptuous
-, zigpy }:
+, zigpy
+}:
 
 buildPythonPackage rec {
   pname = "zigpy-znp";
-  version = "0.4.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
-    owner = "zha-ng";
-    repo = "zigpy-znp";
+    owner = "zigpy";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1g5jssdnibhb4i4k1js9iy9w40cipf1gdnyp847x0bv6wblzx8rl";
+    sha256 = "152d803jfrvkj4namni41fnbbnq85wd7zsqjhmkwrrmn2gvqjiln";
   };
 
   propagatedBuildInputs = [
     async-timeout
     coloredlogs
+    jsonschema
     pyserial
     pyserial-asyncio
     voluptuous
@@ -36,18 +38,19 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    asynctest
-    coveralls
     pytest-asyncio
     pytest-mock
     pytest-timeout
-    pytestcov
     pytestCheckHook
+  ]  ++ lib.optionals (pythonOlder "3.8") [
+    asynctest
   ];
 
+  pythonImportsCheck = [ "zigpy_znp" ];
+
   meta = with lib; {
-    description = "A library for zigpy which communicates with TI ZNP radios";
-    homepage = "https://github.com/zha-ng/zigpy-znp";
+    description = "Python library for zigpy which communicates with TI ZNP radios";
+    homepage = "https://github.com/zigpy/zigpy-znp";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ mvnetbiz ];
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/development/python-modules/zipp/1.nix b/nixpkgs/pkgs/development/python-modules/zipp/1.nix
index 0de729928d0f..ab9603926770 100644
--- a/nixpkgs/pkgs/development/python-modules/zipp/1.nix
+++ b/nixpkgs/pkgs/development/python-modules/zipp/1.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytest
 , pytest-flake8
 , more-itertools
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "0v3qayhqv7vyzydpydwcp51bqciw8p2ajddw68x5k8zppc0vx3yk";
   };
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ more-itertools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/zipp/default.nix b/nixpkgs/pkgs/development/python-modules/zipp/default.nix
index ccb916a147a7..7ef26dbd7606 100644
--- a/nixpkgs/pkgs/development/python-modules/zipp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zipp/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptools_scm
+, setuptools-scm
 , pytest
 , pytest-flake8
 , more-itertools
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "3607921face881ba3e026887d8150cca609d517579abe052ac81fc5aeffdbd76";
   };
 
-  nativeBuildInputs = [ setuptools_scm toml ];
+  nativeBuildInputs = [ setuptools-scm toml ];
 
   propagatedBuildInputs = [ more-itertools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/zipstream/default.nix b/nixpkgs/pkgs/development/python-modules/zipstream/default.nix
index ec885c6df0f4..00c291a1c510 100644
--- a/nixpkgs/pkgs/development/python-modules/zipstream/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zipstream/default.nix
@@ -15,6 +15,6 @@ buildPythonPackage rec {
     description = "A zip archive generator";
     homepage = "https://github.com/allanlei/python-zipstream";
     license = lib.licenses.gpl3Plus;
-    maintainers = with lib.maintainers; [ primeos ];
+    maintainers = with lib.maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/zulip/default.nix b/nixpkgs/pkgs/development/python-modules/zulip/default.nix
index ed2276623c3a..66033fcce311 100644
--- a/nixpkgs/pkgs/development/python-modules/zulip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zulip/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "zulip";
-  version = "0.7.1";
+  version = "0.8.0";
 
   disabled = !isPy3k;
 
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "zulip";
     repo = "python-zulip-api";
     rev = version;
-    sha256 = "0da1ki1v252avy27j6d7snnc0gyq0xa9fypm3qdmxhw2w79d6q36";
+    sha256 = "sha256-gJ+YRJC6wmQzPakApOqytyPy34cS/jjzEZhRIvWUBIQ=";
   };
   sourceRoot = "source/zulip";
 
diff --git a/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix b/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix
index 61dba04a79e1..f11ff6bece47 100644
--- a/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "zwave-js-server-python";
-  version = "0.23.1";
+  version = "0.25.0";
   disabled = pythonOlder "3.8";
 
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = pname;
     rev = version;
-    sha256 = "0kmmhn357k22ana0ysd8jlz1fyfaqlc8k74ryaik0rrw7nmn1n11";
+    sha256 = "sha256-frhmyla3neFVZILDy7HnKloMqNLRjm3gxS88xZdu29w=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/r-modules/default.nix b/nixpkgs/pkgs/development/r-modules/default.nix
index ae23b32b71a2..254dfbb1788b 100644
--- a/nixpkgs/pkgs/development/r-modules/default.nix
+++ b/nixpkgs/pkgs/development/r-modules/default.nix
@@ -276,6 +276,7 @@ let
     jqr = [ pkgs.jq.dev ];
     KFKSDS = [ pkgs.gsl_1 ];
     kza = [ pkgs.fftw.dev ];
+    lwgeom = [ pkgs.gdal pkgs.geos pkgs.proj ];
     magick = [ pkgs.imagemagick.dev ];
     ModelMetrics = lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
     mvabund = [ pkgs.gsl_1 ];
@@ -374,11 +375,13 @@ let
     affyio = [ pkgs.zlib.dev ];
     VariantAnnotation = [ pkgs.zlib.dev pkgs.curl.dev ];
     snpStats = [ pkgs.zlib.dev ];
+    hdf5r = [ pkgs.hdf5.dev ];
   };
 
   packagesWithBuildInputs = {
     # sort -t '=' -k 2
     gam = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
+    RcppArmadillo = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
     quantreg = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
     rmutil = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
     robustbase = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
@@ -405,6 +408,7 @@ let
     gdtools = [ pkgs.pkg-config ];
     jqr = [ pkgs.jq.lib ];
     kza = [ pkgs.pkg-config ];
+    lwgeom = [ pkgs.pkg-config pkgs.proj.dev pkgs.sqlite.dev ];
     magick = [ pkgs.pkg-config ];
     mwaved = [ pkgs.pkg-config ];
     odbc = [ pkgs.pkg-config ];
diff --git a/nixpkgs/pkgs/development/r-modules/generic-builder.nix b/nixpkgs/pkgs/development/r-modules/generic-builder.nix
index 1e96a64a5e28..7201bab40e12 100644
--- a/nixpkgs/pkgs/development/r-modules/generic-builder.nix
+++ b/nixpkgs/pkgs/development/r-modules/generic-builder.nix
@@ -1,14 +1,14 @@
-{ stdenv, lib, R, libcxx, xvfb_run, util-linux, Cocoa, Foundation, gettext, gfortran }:
+{ stdenv, lib, R, libcxx, xvfb-run, util-linux, Cocoa, Foundation, gettext, gfortran }:
 
 { name, buildInputs ? [], requireX ? false, ... } @ attrs:
 
 stdenv.mkDerivation ({
   buildInputs = buildInputs ++ [R gettext] ++
-                lib.optionals requireX [util-linux xvfb_run] ++
+                lib.optionals requireX [util-linux xvfb-run] ++
                 lib.optionals stdenv.isDarwin [Cocoa Foundation gfortran];
 
   NIX_CFLAGS_COMPILE =
-    lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";
+    lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
   configurePhase = ''
     runHook preConfigure
@@ -29,7 +29,7 @@ stdenv.mkDerivation ({
   rCommand = if requireX then
     # Unfortunately, xvfb-run has a race condition even with -a option, so that
     # we acquire a lock explicitly.
-    "flock ${xvfb_run} xvfb-run -a -e xvfb-error R"
+    "flock ${xvfb-run} xvfb-run -a -e xvfb-error R"
   else
     "R";
 
diff --git a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
index d0d67bff21d1..5f054e6b9962 100644
--- a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
@@ -528,6 +528,14 @@ in
       "--with-libvirt-include=${libvirt}/include"
       "--with-libvirt-lib=${libvirt}/lib"
     ];
+    dontBuild = false;
+    postPatch = ''
+      # https://gitlab.com/libvirt/libvirt-ruby/-/commit/43543991832c9623c00395092bcfb9e178243ba4
+      substituteInPlace ext/libvirt/common.c \
+        --replace 'st.h' 'ruby/st.h'
+      substituteInPlace ext/libvirt/domain.c \
+        --replace 'st.h' 'ruby/st.h'
+    '';
   };
 
   ruby-lxc = attrs: {
@@ -547,13 +555,9 @@ in
       cd "$(cat $out/nix-support/gem-meta/install-path)"
 
       substituteInPlace lib/vips.rb \
-        --replace "glib-2.0" "${glib.out}/lib/libglib-2.0${stdenv.hostPlatform.extensions.sharedLibrary}"
-
-      substituteInPlace lib/vips.rb \
-        --replace "gobject-2.0" "${glib.out}/lib/libgobject-2.0${stdenv.hostPlatform.extensions.sharedLibrary}"
-
-      substituteInPlace lib/vips.rb \
-        --replace "vips_libname = 'vips'" "vips_libname = '${lib.getLib vips}/lib/libvips${stdenv.hostPlatform.extensions.sharedLibrary}'"
+        --replace 'library_name("vips", 42)' '"${lib.getLib vips}/lib/libvips${stdenv.hostPlatform.extensions.sharedLibrary}"' \
+        --replace 'library_name("glib-2.0", 0)' '"${glib.out}/lib/libglib-2.0${stdenv.hostPlatform.extensions.sharedLibrary}"' \
+        --replace 'library_name("gobject-2.0", 0)' '"${glib.out}/lib/libgobject-2.0${stdenv.hostPlatform.extensions.sharedLibrary}"'
     '';
   };
 
diff --git a/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix b/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix
index e95fb1573dd2..356224c02309 100644
--- a/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix
@@ -11,6 +11,6 @@ bundlerApp {
     description = "A Ruby language server";
     homepage = "https://solargraph.org/";
     license = licenses.mit;
-    maintainers = with maintainers; [ worldofpeace nicknovitski angristan ];
+    maintainers = with maintainers; [ nicknovitski angristan ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/air/default.nix b/nixpkgs/pkgs/development/tools/air/default.nix
index 28cb6bf7a46c..1950b969d66d 100644
--- a/nixpkgs/pkgs/development/tools/air/default.nix
+++ b/nixpkgs/pkgs/development/tools/air/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "air";
-  version = "1.27.2";
+  version = "1.27.3";
 
   src = fetchFromGitHub {
     owner = "cosmtrek";
     repo = "air";
     rev = "v${version}";
-    sha256 = "sha256-VQymiDge42JBQwAHfHMF8imBC90uPout0fZRuQVOP5w=";
+    sha256 = "sha256-QO3cPyr2FqCdoiax/V0fe7kRwT61T3efnfO8uWp8rRM=";
   };
 
   vendorSha256 = "sha256-B7AgUFjiW3P1dU88u3kswbCQJ7Qq7rgPlX+b+3Pq1L4=";
diff --git a/nixpkgs/pkgs/development/tools/altair-graphql-client/default.nix b/nixpkgs/pkgs/development/tools/altair-graphql-client/default.nix
new file mode 100644
index 000000000000..46ef678b5ba2
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/altair-graphql-client/default.nix
@@ -0,0 +1,38 @@
+{ lib, appimageTools, fetchurl, gsettings-desktop-schemas, gtk3 }:
+
+let
+  pname = "altair";
+  version = "4.0.2";
+  name = "${pname}-v${version}";
+
+  src = fetchurl {
+    url = "https://github.com/imolorhe/altair/releases/download/v${version}/altair_${version}_x86_64_linux.AppImage";
+    sha256 = "sha256-HCoK+ljcTmyBZSCDe6u2x2urqrQfi3DIlXfCqGWvl3E=";
+  };
+
+  appimageContents = appimageTools.extract { inherit name src; };
+in
+appimageTools.wrapType2 {
+  inherit src name;
+
+  profile = ''
+    export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
+  '';
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/${pname}
+
+    install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
+    substituteInPlace $out/share/applications/${pname}.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+  '';
+
+  meta = with lib; {
+    description = "A feature-rich GraphQL Client IDE";
+    homepage = "https://github.com/imolorhe/altair";
+    license = licenses.mit;
+    maintainers = with maintainers; [ evalexpr ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/ameba/default.nix b/nixpkgs/pkgs/development/tools/ameba/default.nix
index 9a8cc799bf27..24760051b28c 100644
--- a/nixpkgs/pkgs/development/tools/ameba/default.nix
+++ b/nixpkgs/pkgs/development/tools/ameba/default.nix
@@ -2,13 +2,13 @@
 
 crystal.buildCrystalPackage rec {
   pname = "ameba";
-  version = "0.14.2";
+  version = "0.14.3";
 
   src = fetchFromGitHub {
     owner = "crystal-ameba";
     repo = "ameba";
     rev = "v${version}";
-    sha256 = "sha256-wtUWmvAm7iTiP8eYgPiRasYjzeCIJCQd3D+8f1kMONA=";
+    sha256 = "sha256-oZdaHV+vnYUiCXNMrSuHvZzDYDgFZsoD715DE3tJ2bE=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/analysis/bingrep/default.nix b/nixpkgs/pkgs/development/tools/analysis/bingrep/default.nix
index 338bc3e189c1..d354b71fc9f3 100644
--- a/nixpkgs/pkgs/development/tools/analysis/bingrep/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/bingrep/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-ayA3aEidZPa5GJgbbm5K3X2Xgd5Eb6TgUU80Gw/p07w=";
   };
 
-  cargoSha256 = "sha256-3eGYU5O7HSpawIL/8OVmROCzXfdnoMAnIujjrIp00xg=";
+  cargoSha256 = "sha256-XcXllex7UEufV5URhH7aqln1tNxwaiAETO3fUKmHf7s=";
 
   meta = with lib; {
     description = "Greps through binaries from various OSs and architectures, and colors them";
diff --git a/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index a0f251bfe910..66f2db280685 100644
--- a/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   ];
   buildInputs = [ openssl ];
 
-  cargoSha256 = "0pn9xgryfb7f0plx50v9i7hsv1wib87pi0fl43cv6hgqyrdb52ny";
+  cargoSha256 = "1hpi9aifn3g19yqkb58lphyw8cbsqllhg5dzbqx15hcfvrb7ip4k";
   #checkFlags = [ "--test-threads" "1" ];
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix b/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
index 06c366529df3..8750b61c48fa 100644
--- a/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
@@ -28,7 +28,7 @@ in
 python3.pkgs.buildPythonPackage rec {
   inherit pname version disabled src;
 
-  nativeBuildInputs = with python3.pkgs; [ setuptools_scm ];
+  nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
 
   propagatedBuildInputs = with python3.pkgs; [
     pytest
diff --git a/nixpkgs/pkgs/development/tools/analysis/checkstyle/default.nix b/nixpkgs/pkgs/development/tools/analysis/checkstyle/default.nix
index 563119f6b3ab..ae95157a8e5e 100644
--- a/nixpkgs/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  version = "8.41.1";
+  version = "8.42";
   pname = "checkstyle";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "sha256-zW6gjRu5YEH04xCbsW20FeFfmBg+i+aW3WpViBQigXI=";
+    sha256 = "sha256-SYLr6qQp/kHzviwzCaXEnYTHHuH3j5ZzRLi8gs8xAao=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/analysis/codeql/default.nix b/nixpkgs/pkgs/development/tools/analysis/codeql/default.nix
index abcd947fa318..25d61d2393e5 100644
--- a/nixpkgs/pkgs/development/tools/analysis/codeql/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/codeql/default.nix
@@ -3,7 +3,7 @@
 , zlib
 , xorg
 , freetype
-, alsaLib
+, alsa-lib
 , jdk11
 , curl
 , lttng-ust
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "codeql";
-  version = "2.5.2";
+  version = "2.5.5";
 
   dontConfigure = true;
   dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
-    sha256 = "sha256-/Pl9qDzFSL67lBEyHPqy3QfNCXzR510SgM0U8f55Dqg=";
+    sha256 = "sha256-M5O2NEGIVPWYKl11yxMMVreEtDO1VqcMkiGGrjNmk3A=";
   };
 
   nativeBuildInputs = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     xorg.libXtst
     xorg.libXrender
     freetype
-    alsaLib
+    alsa-lib
     jdk11
     stdenv.cc.cc.lib
     curl
diff --git a/nixpkgs/pkgs/development/tools/analysis/dotenv-linter/default.nix b/nixpkgs/pkgs/development/tools/analysis/dotenv-linter/default.nix
index b05f9b944400..f477da365d75 100644
--- a/nixpkgs/pkgs/development/tools/analysis/dotenv-linter/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/dotenv-linter/default.nix
@@ -14,7 +14,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-3Lj5GtWGyWDkZPhxYQu7UWzmh7TO5wk1UJ0lek1jTto=";
   };
 
-  cargoSha256 = "sha256-zdvIC+VUASjhrlyRts+JJeh5xdcdpX6Ixle6HhbMJJU=";
+  cargoSha256 = "sha256-FDkxJuZPzDrgLJgefkRUPS+0Ys3DaBOD3XAuS/Z6TtI=";
 
   meta = with lib; {
     description = "Lightning-fast linter for .env files. Written in Rust";
diff --git a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
index 8c8ea1a5ffca..ea1aee669c54 100644
--- a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.149.0";
+  version = "0.152.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "sha256-/pNCEsCKfYh/jo+3x7usRyPNBRJB4gDu2TAgosSw37c=";
+    sha256 = "1af9z6xah3rk99pv984nikkpq8jzl5r0fccb1gdhmi7y5a6y6g1m";
   };
 
   installPhase = ''
@@ -16,13 +16,13 @@ stdenv.mkDerivation rec {
     install -Dm644 resources/shell/bash-completion $out/share/bash-completion/completions/flow
   '';
 
-  buildInputs = (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml-migrate-parsetree dtoa core_kernel sedlex_2 ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec ppx_tools_versioned visitors wtf8 ])
+  buildInputs = (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml-migrate-parsetree-2-1 dtoa core_kernel sedlex_2 ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec ppx_tools_versioned visitors wtf8 ])
     ++ lib.optionals stdenv.isDarwin [ CoreServices ];
 
   meta = with lib; {
     description = "A static type checker for JavaScript";
     homepage = "https://flow.org/";
-    changelog = "https://github.com/facebook/flow/releases/tag/v${version}";
+    changelog = "https://github.com/facebook/flow/raw/v${version}/Changelog.md";
     license = licenses.mit;
     platforms = ocamlPackages.ocaml.meta.platforms;
     maintainers = with maintainers; [ marsam puffnfresh ];
diff --git a/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix b/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
index 394bd6558fbf..a10d015e9ff1 100644
--- a/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
@@ -11,7 +11,7 @@ let
     biniou
     camlzip
     easy-format
-    menhir
+    menhirLib
     mlgmpidl
     num
     ocamlgraph
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoconf wrapGAppsHook ];
 
   buildInputs = with ocamlPackages; [
-    ncurses ocaml findlib ltl2ba ocamlgraph yojson menhir camlzip
+    ncurses ocaml findlib ltl2ba ocamlgraph yojson menhirLib camlzip
     lablgtk coq graphviz zarith apron why3 mlgmpidl doxygen
     gdk-pixbuf
   ];
diff --git a/nixpkgs/pkgs/development/tools/analysis/include-what-you-use/default.nix b/nixpkgs/pkgs/development/tools/analysis/include-what-you-use/default.nix
index db1cf9c6ead5..8ba381bc5443 100644
--- a/nixpkgs/pkgs/development/tools/analysis/include-what-you-use/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/include-what-you-use/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchurl, cmake, llvmPackages, python2 }:
+{ lib, stdenv, fetchurl, cmake, llvmPackages, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "include-what-you-use";
   # Also bump llvmPackages in all-packages.nix to the supported version!
-  version = "0.14";
+  version = "0.16";
 
   src = fetchurl {
-    sha256 = "1vq0c8jqspvlss8hbazml44fi0mbslgnp2i9wcr0qrjpvfbl6623";
+    sha256 = "sha256-jW/JslU0O8Hl7EWeOVEt8dUcYOA1YpheAHYDYRn/Whw=";
     url = "${meta.homepage}/downloads/${pname}-${version}.src.tar.gz";
   };
 
-  buildInputs = with llvmPackages; [ clang-unwrapped llvm python2 ];
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = with llvmPackages; [ cmake llvm.dev llvm python3];
+  buildInputs = with llvmPackages; [ libclang clang-unwrapped ];
 
   cmakeFlags = [ "-DIWYU_LLVM_ROOT_PATH=${llvmPackages.clang-unwrapped}" ];
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/kcov/default.nix b/nixpkgs/pkgs/development/tools/analysis/kcov/default.nix
index 4b294bf8adaf..a708c88ee9ee 100644
--- a/nixpkgs/pkgs/development/tools/analysis/kcov/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/kcov/default.nix
@@ -1,38 +1,84 @@
-{lib, stdenv, fetchFromGitHub, cmake, pkg-config, zlib, curl, elfutils, python3, libiberty, libopcodes}:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, zlib
+, curl
+, elfutils
+, python3
+, libiberty
+, libopcodes
+, runCommand
+, gcc
+, rustc
+}:
 
-stdenv.mkDerivation rec {
-  pname = "kcov";
-  version = "36";
+let
+  self =
+    stdenv.mkDerivation rec {
+      pname = "kcov";
+      version = "38";
 
-  src = fetchFromGitHub {
-    owner = "SimonKagstrom";
-    repo = "kcov";
-    rev = "v${version}";
-    sha256 = "1q1mw5mxz041lr6qc2v4280rmx13pg1bx5r3bxz9bzs941r405r3";
-  };
+      src = fetchFromGitHub {
+        owner = "SimonKagstrom";
+        repo = "kcov";
+        rev = "v${version}";
+        sha256 = "sha256-6LoIo2/yMUz8qIpwJVcA3qZjjF+8KEM1MyHuyHsQD38=";
+      };
 
-  preConfigure = "patchShebangs src/bin-to-c-source.py";
-  nativeBuildInputs = [ cmake pkg-config python3 ];
+      preConfigure = "patchShebangs src/bin-to-c-source.py";
+      nativeBuildInputs = [ cmake pkg-config python3 ];
 
-  buildInputs = [ curl zlib elfutils libiberty libopcodes ];
+      buildInputs = [ curl zlib elfutils libiberty libopcodes ];
 
-  strictDeps = true;
+      strictDeps = true;
 
-  meta = with lib; {
-    description = "Code coverage tester for compiled programs, Python scripts and shell scripts";
+      passthru.tests = {
+        works-on-c = runCommand "works-on-c" {} ''
+          set -ex
+          cat - > a.c <<EOF
+          int main() {}
+          EOF
+          ${gcc}/bin/gcc a.c -o a.out
+          ${self}/bin/kcov /tmp/kcov ./a.out
+          test -e /tmp/kcov/index.html
+          touch $out
+          set +x
+        '';
 
-    longDescription = ''
-      Kcov is a code coverage tester for compiled programs, Python
-      scripts and shell scripts. It allows collecting code coverage
-      information from executables without special command-line
-      arguments, and continuosly produces output from long-running
-      applications.
-    '';
+        works-on-rust = runCommand "works-on-rust" {} ''
+          set -ex
+          cat - > a.rs <<EOF
+          fn main() {}
+          EOF
+          # Put gcc in the path so that `cc` is found
+          PATH=${gcc}/bin:$PATH ${rustc}/bin/rustc a.rs -o a.out
+          ${self}/bin/kcov /tmp/kcov ./a.out
+          test -e /tmp/kcov/index.html
+          touch $out
+          set +x
+        '';
+      };
 
-    homepage = "http://simonkagstrom.github.io/kcov/index.html";
-    license = licenses.gpl2;
+      meta = with lib; {
+        description = "Code coverage tester for compiled programs, Python scripts and shell scripts";
 
-    maintainers = with maintainers; [ gal_bolle ekleog ];
-    platforms = platforms.linux;
-  };
-}
+        longDescription = ''
+          Kcov is a code coverage tester for compiled programs, Python
+          scripts and shell scripts. It allows collecting code coverage
+          information from executables without special command-line
+          arguments, and continuosly produces output from long-running
+          applications.
+        '';
+
+        homepage = "http://simonkagstrom.github.io/kcov/index.html";
+        license = licenses.gpl2;
+        changelog = "https://github.com/SimonKagstrom/kcov/blob/master/ChangeLog";
+
+        maintainers = with maintainers; [ gal_bolle ekleog ];
+        platforms = platforms.linux;
+      };
+    };
+in
+self
diff --git a/nixpkgs/pkgs/development/tools/analysis/massif-visualizer/default.nix b/nixpkgs/pkgs/development/tools/analysis/massif-visualizer/default.nix
index c2f0236ed0b4..78f8bbeb683e 100644
--- a/nixpkgs/pkgs/development/tools/analysis/massif-visualizer/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/massif-visualizer/default.nix
@@ -25,6 +25,6 @@ mkDerivation rec {
     description = "Tool that visualizes massif data generated by valgrind";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ lethalman zraexy ];
+    maintainers = with maintainers; [ zraexy ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/analysis/nix-linter/default.nix b/nixpkgs/pkgs/development/tools/analysis/nix-linter/default.nix
index dea2fd895f15..279a69327fa6 100644
--- a/nixpkgs/pkgs/development/tools/analysis/nix-linter/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/nix-linter/default.nix
@@ -17,6 +17,7 @@
 , containers
 , hnix
 , bytestring
+, fetchpatch
 }:
 
 mkDerivation rec {
@@ -36,10 +37,13 @@ mkDerivation rec {
   executableHaskellDepends = [ streamly mtl path pretty-terminal text base aeson cmdargs containers hnix bytestring path-io ];
   testHaskellDepends = [ tasty tasty-hunit tasty-th ];
 
-  # Relax upper bound on hnix https://github.com/Synthetica9/nix-linter/pull/46
-  postPatch = ''
-    substituteInPlace nix-linter.cabal --replace "hnix >=0.8 && < 0.11" "hnix >=0.8"
-  '';
+  patches = [
+    # Fix compatibility with hnix≥0.13.0 https://github.com/Synthetica9/nix-linter/pull/51
+    (fetchpatch {
+      url = "https://github.com/Synthetica9/nix-linter/commit/f73acacd8623dc25c9a35f8e04e4ff33cc596af8.patch";
+      sha256 = "139fm21hdg3vcw8hv35kxj4awd52bjqbb76mpzx191hzi9plj8qc";
+    })
+  ];
 
   description = "Linter for Nix(pkgs), based on hnix";
   homepage = "https://github.com/Synthetica9/nix-linter";
diff --git a/nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix b/nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix
index f7f933392ab4..500ca632fcf0 100644
--- a/nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix
@@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
 
   dontWrapQtApps = true;
 
-  cargoSha256 = "1hdsn011y9invfy7can8c02zwa7birj9y1rxhrj7wyv4gh3659i0";
+  cargoSha256 = "0vhcb3kw1zgchx3nrk8lyrz8p5071y99vsysxvi71klv7dcvn0am";
   doCheck = false;
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/tools/analysis/qcachegrind/default.nix b/nixpkgs/pkgs/development/tools/analysis/qcachegrind/default.nix
index 5e321db01aa4..75729d1eea47 100644
--- a/nixpkgs/pkgs/development/tools/analysis/qcachegrind/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/qcachegrind/default.nix
@@ -17,7 +17,7 @@ in stdenv.mkDerivation {
   postInstall = ''
      mkdir -p $out/bin
      cp -p converters/dprof2calltree $out/bin/dprof2calltree
-     cp -p converters/hotshot2calltree.cmake $out/bin/hotshot2calltree
+     cp -p converters/hotshot2calltree.in $out/bin/hotshot2calltree
      cp -p converters/memprof2calltree $out/bin/memprof2calltree
      cp -p converters/op2calltree $out/bin/op2calltree
      cp -p converters/pprof2calltree $out/bin/pprof2calltree
diff --git a/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix b/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
index e59c48f91d30..f51f0f9368d1 100644
--- a/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
@@ -28,13 +28,13 @@
 
 stdenv.mkDerivation rec {
   pname = "radare2";
-  version = "5.2.1";
+  version = "5.3.0";
 
   src = fetchFromGitHub {
     owner = "radare";
     repo = "radare2";
     rev = version;
-    sha256 = "0n3k190qjhdlj10fjqijx6ismz0g7fk28i83j0480cxdqgmmlbxc";
+    sha256 = "sha256-xndnRVlqTB/NH1ROo7xkftLP7DufsJu4CCA9MCOEeng=";
   };
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/tools/analysis/rizin/cutter.nix b/nixpkgs/pkgs/development/tools/analysis/rizin/cutter.nix
index a4c2d0d45c1f..c1d8ab99063c 100644
--- a/nixpkgs/pkgs/development/tools/analysis/rizin/cutter.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/rizin/cutter.nix
@@ -11,13 +11,13 @@
 
 mkDerivation rec {
   pname = "cutter";
-  version = "2.0.1";
+  version = "2.0.2";
 
   src = fetchFromGitHub {
     owner = "rizinorg";
     repo = "cutter";
     rev = "v${version}";
-    sha256 = "sha256-IQCJOUgefSdMSa27E6I/CL35Kx5pHq/u+5Q0FHUAR1E=";
+    sha256 = "sha256-CVVUXx6wt9vH3B7NrrlRGnOIrhXQPjV7GmX3O+KtMSM=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
index 20184ac53a15..4e9543ef371d 100644
--- a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rizin";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchurl {
     url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz";
-    sha256 = "sha256-CGHeo247syha+rVtiAQz0XkEYK9p4DHTnLK2FhBOvE8=";
+    sha256 = "sha256-lxVsPI+qLenZ0pelvxtHlQ6fhWdQeqoEEHrUGZ5Rdmg=";
   };
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/development/tools/analysis/svlint/default.nix b/nixpkgs/pkgs/development/tools/analysis/svlint/default.nix
index a562a1baeeeb..dc38728a44a2 100644
--- a/nixpkgs/pkgs/development/tools/analysis/svlint/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/svlint/default.nix
@@ -14,7 +14,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-p002oWwTQxesWLgLq8oKKzuZKXUdO4C1TZ7lR/Mh1PA=";
   };
 
-  cargoSha256 = "sha256-M0hng1JcR5Q829bVOaTASl0Eq6fFm8mUFsS5zx1JX94=";
+  cargoSha256 = "sha256-1WEPJpU/hLn+qjU+ETkmbfZIJTORe3OUdyl605JnYmU=";
 
   meta = with lib; {
     description = "SystemVerilog linter";
diff --git a/nixpkgs/pkgs/development/tools/analysis/tflint/default.nix b/nixpkgs/pkgs/development/tools/analysis/tflint/default.nix
index 9f4efe396c61..137b3c2c1a1a 100644
--- a/nixpkgs/pkgs/development/tools/analysis/tflint/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/tflint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.28.0";
+  version = "0.29.0";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1d746016iyswb9kw7gprg32vj5rcfa2y9j11r2hsp61hsjfvmg8c";
+    sha256 = "1ciwr2bwbxnw8366wvgl5ga3y2qj46i0h3yp3av1x9n2r8rddrlh";
   };
 
-  vendorSha256 = "0whd0b9rll0s42hrr2fqp412d5frzmrnqnynpq75wda5rqzmaf8r";
+  vendorSha256 = "0k8v49sr0jmljfl4fa5pnvzd5k3pg865h201114l6cs257sdkczk";
 
   doCheck = false;
 
@@ -20,7 +20,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Terraform linter focused on possible errors, best practices, and so on";
     homepage = "https://github.com/terraform-linters/tflint";
-    changelog = "https://github.com/terraform-linters/tflint/blob/v${version}/CHANGELOG.md";
+    changelog = "https://github.com/terraform-linters/tflint/raw/v${version}/CHANGELOG.md";
     license = licenses.mpl20;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/nixpkgs/pkgs/development/tools/async-profiler/0001-Fix-darwin-build.patch b/nixpkgs/pkgs/development/tools/async-profiler/0001-Fix-darwin-build.patch
new file mode 100644
index 000000000000..bfb636bf562a
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/async-profiler/0001-Fix-darwin-build.patch
@@ -0,0 +1,27 @@
+From e54c17899118ea940c36bc17a48d8ff759243f16 Mon Sep 17 00:00:00 2001
+From: Uri Baghin <uri@canva.com>
+Date: Sat, 8 May 2021 09:49:18 +1000
+Subject: [PATCH] Fix darwin build.
+
+---
+ src/itimer.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/itimer.cpp b/src/itimer.cpp
+index 08c46d1..52628ef 100644
+--- a/src/itimer.cpp
++++ b/src/itimer.cpp
+@@ -52,8 +52,8 @@ Error ITimer::start(Arguments& args) {
+ 
+     OS::installSignalHandler(SIGPROF, signalHandler);
+ 
+-    long sec = _interval / 1000000000;
+-    long usec = (_interval % 1000000000) / 1000;
++    time_t sec = _interval / 1000000000;
++    suseconds_t usec = (_interval % 1000000000) / 1000;
+     struct itimerval tv = {{sec, usec}, {sec, usec}};
+     
+     if (setitimer(ITIMER_PROF, &tv, NULL) != 0) {
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/tools/async-profiler/default.nix b/nixpkgs/pkgs/development/tools/async-profiler/default.nix
index d271528de7ef..66177d3a34f3 100644
--- a/nixpkgs/pkgs/development/tools/async-profiler/default.nix
+++ b/nixpkgs/pkgs/development/tools/async-profiler/default.nix
@@ -22,6 +22,11 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  patches = [
+    # https://github.com/jvm-profiling-tools/async-profiler/pull/428
+    ./0001-Fix-darwin-build.patch
+  ];
+
   fixupPhase = ''
     substituteInPlace $out/bin/async-profiler \
       --replace 'JATTACH=$SCRIPT_DIR/build/jattach' \
diff --git a/nixpkgs/pkgs/development/tools/async/default.nix b/nixpkgs/pkgs/development/tools/async/default.nix
index a45e93ab151e..ffff8af8b661 100644
--- a/nixpkgs/pkgs/development/tools/async/default.nix
+++ b/nixpkgs/pkgs/development/tools/async/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "19ypflbayi5l0mb8yw7w0a4bq9a3w8nl9jsxapp9m3xggzmsvrxx";
   };
 
-  cargoSha256 = "1zgds5rjjikvaj0rxc7slyvkjn067s0v8vdnxn3vsv819q5yd707";
+  cargoSha256 = "0y2q46i838gha58p95vcv5r5i14il1kv86k35s30ncfibijgp0lc";
 
   meta = with lib; {
     description = "A tool to parallelize shell commands";
diff --git a/nixpkgs/pkgs/development/tools/ats-acc/default.nix b/nixpkgs/pkgs/development/tools/ats-acc/default.nix
new file mode 100644
index 000000000000..73e475da3942
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/ats-acc/default.nix
@@ -0,0 +1,22 @@
+{ lib, stdenv, fetchFromGitHub, ats2 }:
+
+stdenv.mkDerivation rec {
+  pname = "ats-acc";
+  version = "unstable-2018-10-21";
+
+  src = fetchFromGitHub {
+    owner = "sparverius";
+    repo = pname;
+    rev = "2d49f4e76d0fe1f857ceb70deba4aed13c306dcb";
+    sha256 = "sha256-Wp39488YNL40GKp4KaJwhi75PsYP+gMtrZqAvs4Q/sw=";
+  };
+
+  nativeBuildInputs = [ ats2 ];
+
+  meta = with lib; {
+    description = "Pretty-print error messages of the ATS Compiler";
+    homepage = "https://github.com/sparverius/ats-acc";
+    maintainers = with maintainers; [ fortuneteller2k ];
+    license = licenses.unfree; # Upstream has no license
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix b/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
index 1429fcab4c68..3837e2e37076 100644
--- a/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
@@ -5,11 +5,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "aws-sam-cli";
-  version = "1.14.0";
+  version = "1.23.0";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "E+xIS0Z3M/ilBswH8XwXWnGb9gbDRuuKKE39qau9fFc=";
+    sha256 = "0j0q6p08c3l9z0yc2cggw797k47cjh6ljpchiqgg0fh6mk32215f";
   };
 
   # Tests are not included in the PyPI package
@@ -40,10 +40,8 @@ python3.pkgs.buildPythonApplication rec {
   # fix over-restrictive version bounds
   postPatch = ''
     substituteInPlace requirements/base.txt \
-      --replace "boto3~=1.14.23" "boto3~=1.14" \
       --replace "dateparser~=0.7" "dateparser>=0.7" \
       --replace "docker~=4.2.0" "docker>=4.2.0" \
-      --replace "python-dateutil~=2.6, <2.8.1" "python-dateutil~=2.6" \
       --replace "requests==2.23.0" "requests~=2.24" \
       --replace "watchdog==0.10.3" "watchdog"
   '';
diff --git a/nixpkgs/pkgs/development/tools/b4/default.nix b/nixpkgs/pkgs/development/tools/b4/default.nix
index 8210f7c409a5..30d38aac2ae0 100644
--- a/nixpkgs/pkgs/development/tools/b4/default.nix
+++ b/nixpkgs/pkgs/development/tools/b4/default.nix
@@ -11,7 +11,8 @@ python3Packages.buildPythonApplication rec {
 
   preConfigure = ''
     substituteInPlace setup.py \
-      --replace 'requests~=2.24' 'requests~=2.25'
+      --replace 'requests~=2.24.0' 'requests~=2.25' \
+      --replace 'dnspython~=2.0.0' 'dnspython~=2.1'
   '';
 
   # tests make dns requests and fails
diff --git a/nixpkgs/pkgs/development/tools/backblaze-b2/default.nix b/nixpkgs/pkgs/development/tools/backblaze-b2/default.nix
index 446d54f90ca4..fd1cc241195a 100644
--- a/nixpkgs/pkgs/development/tools/backblaze-b2/default.nix
+++ b/nixpkgs/pkgs/development/tools/backblaze-b2/default.nix
@@ -1,21 +1,41 @@
 { fetchFromGitHub, lib, python3Packages }:
 
+let
+  python3Packages2 = python3Packages.override {
+    overrides = self: super: {
+      arrow = self.callPackage ../../python-modules/arrow/2.nix { };
+    };
+  };
+in
+let
+  python3Packages = python3Packages2; # two separate let … in to avoid infinite recursion
+in
 python3Packages.buildPythonApplication rec {
   pname = "backblaze-b2";
-  version = "2.1.0";
+  version = "2.4.0";
 
-  src = fetchFromGitHub {
-    owner = "Backblaze";
-    repo = "B2_Command_Line_Tool";
-    rev = "v${version}";
-    sha256 = "1kkpvxqgh5pw4kr8lh5gy9d7960hv9zvajbjiqhj6xgykwbpbgmq";
+  src = python3Packages.fetchPypi {
+    inherit version;
+    pname = "b2";
+    sha256 = "sha256-nNQDdSjUolj3PjWRn1fPBAEtPlgeent2PxzHqwH1Z6s=";
   };
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'setuptools_scm<6.0' 'setuptools_scm'
+  '';
+
   propagatedBuildInputs = with python3Packages; [
     b2sdk
     class-registry
     phx-class-registry
     setuptools
+    docutils
+    rst2ansi
+  ];
+
+  nativeBuildInputs = with python3Packages; [
+    setuptools-scm
   ];
 
   checkInputs = with python3Packages; [ pytestCheckHook ];
diff --git a/nixpkgs/pkgs/development/tools/bacon/default.nix b/nixpkgs/pkgs/development/tools/bacon/default.nix
new file mode 100644
index 000000000000..1cf066e6b494
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/bacon/default.nix
@@ -0,0 +1,24 @@
+{ lib, stdenv, rustPlatform, fetchFromGitHub, CoreServices }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "bacon";
+  version = "1.1.5";
+
+  src = fetchFromGitHub {
+    owner = "Canop";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wyx216q9q7y60bnnw4cbpv9zlbnjm2hwq0llkjw60fp3qalj9am";
+  };
+
+  cargoSha256 = "1pii5ajl3xgylrm20pkwbd1lk7gv0pshl1cxjfna0l63q56v7f21";
+
+  buildInputs = lib.optional stdenv.isDarwin CoreServices;
+
+  meta = with lib; {
+    description = "Background rust code checker";
+    homepage = "https://github.com/Canop/bacon";
+    license = licenses.agpl3Only;
+    maintainers = [ maintainers.FlorianFranzen ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix b/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix
index 657704a653c7..e10a455c0906 100644
--- a/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix
+++ b/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix
@@ -56,7 +56,7 @@ buildBazelPackage rec {
       sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
     '';
 
-    sha256 = "0rwwjjj6zaj4hdcbsbp0di53xn6203r2vgpddhdrp8iph9ab60cg";
+    sha256 = "1j175z3d4fbi4pl35py7yjq7ywrvwin6id131jv32hx0ck4g1m46";
   };
 
   buildAttrs = {
diff --git a/nixpkgs/pkgs/development/tools/bazelisk/default.nix b/nixpkgs/pkgs/development/tools/bazelisk/default.nix
index ab73b8cd8f31..5bfe83def088 100644
--- a/nixpkgs/pkgs/development/tools/bazelisk/default.nix
+++ b/nixpkgs/pkgs/development/tools/bazelisk/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "bazelisk";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-bD04wqmtBgdNlPGXz7/4kYQ97r9EthFfGExxOjt8u7k=";
+    sha256 = "sha256-APHRNCJNQ4cheY+wBB8q4fcOOL6SFeg5SflvnrxjYhI=";
   };
 
-  vendorSha256 = "sha256-IkW13y51NhKflAeHLu8k7DxRqYVnfMHSnfFuT6H/flo=";
+  vendorSha256 = "sha256-+B+5GQTEiCwLCoGB5uIIJEWJRjylgt9txcsJCXcOAQs=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/boomerang/default.nix b/nixpkgs/pkgs/development/tools/boomerang/default.nix
index 4ac9159520fb..b37ab9a2d3f9 100644
--- a/nixpkgs/pkgs/development/tools/boomerang/default.nix
+++ b/nixpkgs/pkgs/development/tools/boomerang/default.nix
@@ -1,8 +1,11 @@
-{ mkDerivation, lib, fetchFromGitHub, cmake, qtbase, capstone, bison, flex }:
+{ mkDerivation, lib, fetchFromGitHub, fetchpatch, cmake, qtbase, capstone, bison, flex }:
 
 mkDerivation rec {
   pname = "boomerang";
   version = "0.5.2";
+  # NOTE: When bumping version beyond 0.5.2, you likely need to remove
+  #       the cstdint.patch below. The patch does a fix that has already
+  #       been done upstream but is not yet part of a release
 
   src = fetchFromGitHub {
     owner = "BoomerangDecompiler";
@@ -13,6 +16,13 @@ mkDerivation rec {
 
   nativeBuildInputs = [ cmake bison flex ];
   buildInputs = [ qtbase capstone ];
+  patches = [
+    (fetchpatch {
+      name = "include-missing-cstdint.patch";
+      url = "https://github.com/BoomerangDecompiler/boomerang/commit/3342b0eac6b7617d9913226c06c1470820593e74.patch";
+      sha256 = "sha256-941IydcV3mqj7AWvXTM6GePW5VgawEcL0wrBCXqeWvc=";
+    })
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/BoomerangDecompiler/boomerang";
diff --git a/nixpkgs/pkgs/development/tools/boost-build/darwin-default-toolset.patch b/nixpkgs/pkgs/development/tools/boost-build/darwin-default-toolset.patch
new file mode 100644
index 000000000000..ebe3f8d2e1ea
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/boost-build/darwin-default-toolset.patch
@@ -0,0 +1,12 @@
+diff --git a/src/build-system.jam b/src/build-system.jam
+index 60425c54..c6842217 100644
+--- a/src/build-system.jam
++++ b/src/build-system.jam
+@@ -644,7 +644,7 @@ local rule should-clean-project ( project )
+             }
+             else if [ os.name ] = MACOSX
+             {
+-                default-toolset = darwin ;
++                default-toolset = clang-darwin ;
+             }
+         }
diff --git a/nixpkgs/pkgs/development/tools/boost-build/default.nix b/nixpkgs/pkgs/development/tools/boost-build/default.nix
index a821e661a604..5016aa590b5f 100644
--- a/nixpkgs/pkgs/development/tools/boost-build/default.nix
+++ b/nixpkgs/pkgs/development/tools/boost-build/default.nix
@@ -15,6 +15,11 @@ stdenv.mkDerivation rec {
     sha256 = "1r4rwlq87ydmsdqrik4ly5iai796qalvw7603mridg2nwcbbnf54";
   };
 
+  patches = [
+    # Upstream defaults to gcc on darwin, but we use clang.
+    ./darwin-default-toolset.patch
+  ];
+
   nativeBuildInputs = [
     bison
   ];
diff --git a/nixpkgs/pkgs/development/tools/buf/default.nix b/nixpkgs/pkgs/development/tools/buf/default.nix
index fc232d55da6d..8d76b8925dc7 100644
--- a/nixpkgs/pkgs/development/tools/buf/default.nix
+++ b/nixpkgs/pkgs/development/tools/buf/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "buf";
-  version = "0.40.0";
+  version = "0.41.0";
 
   src = fetchFromGitHub {
     owner = "bufbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-N6o+1cfer8rgKJ3+CL25axJSjGV/YSG1sLIHXJzsC6o=";
+    sha256 = "sha256-f1UcvsXWW+fMAgTRtHkEXmUN/DTrJ/Xd+9HbR2FjFog=";
   };
 
   patches = [
@@ -25,7 +25,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ protobuf ];
 
-  vendorSha256 = "sha256-vl+WqtpegoAvylx/lcyfJk8DAOub8U4Lx3Pe3eW4M/E=";
+  vendorSha256 = "sha256-XMGXVsSLEzuzujX5Fg3LLkgzyJY+nIBJEO9iI2t9eGc=";
 
   meta = with lib; {
     description = "Create consistent Protobuf APIs that preserve compatibility and comply with design best-practices";
diff --git a/nixpkgs/pkgs/development/tools/build-managers/apache-maven/default.nix b/nixpkgs/pkgs/development/tools/build-managers/apache-maven/default.nix
index 3a1866e0b399..9e0103170e9f 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/apache-maven/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/apache-maven/default.nix
@@ -2,16 +2,15 @@
 
 assert jdk != null;
 
-let version = "3.6.3"; in
 stdenv.mkDerivation rec {
   pname = "apache-maven";
-  inherit version;
+  version = "3.8.1";
 
   builder = ./builder.sh;
 
   src = fetchurl {
     url = "mirror://apache/maven/maven-3/${version}/binaries/${pname}-${version}-bin.tar.gz";
-    sha256 = "1i9qlj3vy4j1yyf22nwisd0pg88n9qzp9ymfhwqabadka7br3b96";
+    sha256 = "00pgmc9v2s2970wgl2ksvpqy4lxx17zhjm9fgd10fkamxc2ik2mr";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
index 1dfe784ec254..711b971c2d88 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
@@ -1,85 +1,22 @@
-{ buildBazelPackage
-, cacert
+{ buildGoModule
 , fetchFromGitHub
-, git
-, go
 , lib
-, stdenv
 }:
 
-buildBazelPackage rec {
+buildGoModule rec {
   pname = "bazel-remote";
-  version = "1.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "buchgr";
-    repo = "bazel-remote";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "1fpdw139d5q1377qnqbgkahmdr4mdaa17d2m10wkyvyvijwm4r2m";
+    sha256 = "193amcx4nk7mr51jcawym46gizqmfkvksjxm64pf7s3wraf00v01";
   };
 
-  nativeBuildInputs = [ go git ];
+  vendorSha256 = "1sxv9mya8plkn3hpjgfpzgwlh4m3cbhpywqv86brj2h9i4ad0gl5";
 
-  bazelTarget = "//:bazel-remote";
-
-  removeRulesCC = false;
-
-  # this is to work around `test -f` failing when called by gazelle
-  # https://github.com/bazelbuild/bazel-gazelle/blob/v0.19.1/internal/go_repository.bzl#L135
-  patches = [ ./disable_build_file_generation.patch ];
-
-  fetchAttrs = {
-    preBuild = ''
-      patchShebangs .
-
-      # tell rules_go to use the Go binary found in the PATH
-      sed -e 's:go_register_toolchains():go_register_toolchains(go_version = "host"):g' -i WORKSPACE
-
-      # tell rules_go to invoke GIT with custom CAINFO path
-      export GIT_SSL_CAINFO="${cacert}/etc/ssl/certs/ca-bundle.crt"
-
-      # force gazelle to use the nix go cache rather than its own
-      # export GO_REPOSITORY_USE_HOST_CACHE=1
-    '';
-
-    preInstall = ''
-      # Remove the go_sdk (it's just a copy of the go derivation) and all
-      # references to it from the marker files. Bazel does not need to download
-      # this sdk because we have patched the WORKSPACE file to point to the one
-      # currently present in PATH. Without removing the go_sdk from the marker
-      # file, the hash of it will change anytime the Go derivation changes and
-      # that would lead to impurities in the marker files which would result in
-      # a different sha256 for the fetch phase.
-      rm -rf $bazelOut/external/{go_sdk,\@go_sdk.marker}
-      sed -e '/^FILE:@go_sdk.*/d' -i $bazelOut/external/\@*.marker
-
-      # Remove the gazelle repository cache as it contains built binaries
-      chmod -R u+w $bazelOut/external/bazel_gazelle_go_repository_cache
-      rm -rf $bazelOut/external/{bazel_gazelle_go_repository_cache,\@bazel_gazelle_go_repository_cache.marker}
-      sed -e '/^FILE:@bazel_gazelle_go_repository_cache.*/d' -i $bazelOut/external/\@*.marker
-
-      # Remove the gazelle tools, they contain go binaries that are built
-      # non-deterministically. As long as the gazelle version matches the tools
-      # should be equivalent.
-      rm -rf $bazelOut/external/{bazel_gazelle_go_repository_tools,\@bazel_gazelle_go_repository_tools.marker}
-      sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
-    '';
-
-    sha256 = "1vijh3nl30n8k6xlx6in92pzs70x15akbqiqalk8apgvphvdz8vy";
-  };
-
-  buildAttrs = {
-    preBuild = ''
-      patchShebangs .
-
-      # tell rules_go to use the Go binary found in the PATH
-      sed -e 's:go_register_toolchains():go_register_toolchains(go_version = "host"):g' -i WORKSPACE
-    '';
-
-    installPhase = ''
-      install -Dm755 bazel-bin/*_pure_stripped/bazel-remote $out/bin/bazel-remote
-    '';
-  };
+  doCheck = false;
 
   meta = with lib; {
     homepage = "https://github.com/buchgr/bazel-remote";
@@ -87,6 +24,5 @@ buildBazelPackage rec {
     license = licenses.asl20;
     maintainers = [ maintainers.uri-canva ];
     platforms = platforms.darwin ++ platforms.linux;
-    broken = stdenv.isDarwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
index 5b20ece76803..fd29102b7e58 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
@@ -371,7 +371,7 @@ stdenv.mkDerivation rec {
 
       # libcxx includes aren't added by libcxx hook
       # https://github.com/NixOS/nixpkgs/pull/41589
-      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${lib.getDev libcxx}/include/c++/v1"
 
       # don't use system installed Xcode to run clang, use Nix clang instead
       sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
index 31dbc2779cde..6cd378492e32 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
@@ -27,12 +27,12 @@
 }:
 
 let
-  version = "4.0.0";
+  version = "4.1.0";
   sourceRoot = ".";
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "1lfdx54dpzwrqysg5ngqhq7a0i01xk981crd4pdk4jb5f07ghl6k";
+    sha256 = "1svf9n345m0ag05hlcw3cwsl6bw2imcn4da25yyzcl3ar5axfxzk";
   };
 
   # Update with `eval $(nix-build -A bazel.updater)`,
@@ -52,8 +52,8 @@ let
       srcs.io_bazel_rules_sass
       srcs.platforms
       (if stdenv.hostPlatform.isDarwin
-       then srcs."java_tools_javac11_darwin-v10.5.zip"
-       else srcs."java_tools_javac11_linux-v10.5.zip")
+       then srcs."java_tools_javac11_darwin-v10.6.zip"
+       else srcs."java_tools_javac11_linux-v10.6.zip")
       srcs."coverage_output_generator-v2.5.zip"
       srcs.build_bazel_rules_nodejs
       srcs."android_tools_pkg-0.19.0rc3.tar.gz"
@@ -120,7 +120,7 @@ let
   remote_java_tools = stdenv.mkDerivation {
     name = "remote_java_tools_${system}";
 
-    src = srcDepsSet."java_tools_javac11_${system}-v10.5.zip";
+    src = srcDepsSet."java_tools_javac11_${system}-v10.6.zip";
 
     nativeBuildInputs = [ autoPatchelfHook unzip ];
     buildInputs = [ gcc-unwrapped ];
@@ -128,12 +128,20 @@ let
     sourceRoot = ".";
 
     buildPhase = ''
+      runHook preBuild
+
       mkdir $out;
+
+      runHook postBuild
     '';
 
     installPhase = ''
+      runHook preInstall
+
       cp -Ra * $out/
       touch $out/WORKSPACE
+
+      runHook postInstall
     '';
   };
 
@@ -318,7 +326,11 @@ stdenv.mkDerivation rec {
     nativeBuildInputs = [ unzip ];
     inherit sourceRoot;
     installPhase = ''
+      runHook preInstall
+
       cp -r . "$out"
+
+      runHook postInstall
     '';
   };
   # update the list of workspace dependencies
@@ -388,7 +400,7 @@ stdenv.mkDerivation rec {
 
       # libcxx includes aren't added by libcxx hook
       # https://github.com/NixOS/nixpkgs/pull/41589
-      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${lib.getDev libcxx}/include/c++/v1"
 
       # don't use system installed Xcode to run clang, use Nix clang instead
       sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
@@ -430,7 +442,7 @@ stdenv.mkDerivation rec {
         --replace '"#!/usr/bin/env " + pythonExecutableName' "\"#!${python3}/bin/python\""
 
       # substituteInPlace is rather slow, so prefilter the files with grep
-      grep -rlZ /bin src/main/java/com/google/devtools | while IFS="" read -r -d "" path; do
+      grep -rlZ /bin/ src/main/java/com/google/devtools | while IFS="" read -r -d "" path; do
         # If you add more replacements here, you must change the grep above!
         # Only files containing /bin are taken into account.
         # We default to python3 where possible. See also `postFixup` where
@@ -540,6 +552,8 @@ stdenv.mkDerivation rec {
   # Needed to build fish completion
   propagatedBuildInputs = [ python3.pkgs.absl-py ];
   buildPhase = ''
+    runHook preBuild
+
     # Increasing memory during compilation might be necessary.
     # export BAZEL_JAVAC_OPTS="-J-Xmx2g -J-Xms200m"
 
@@ -567,9 +581,13 @@ stdenv.mkDerivation rec {
     export HOME=$(mktemp -d)
     ./output/bazel build  src/tools/execlog:parser_deploy.jar
     cd -
+
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin
 
     # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
@@ -632,6 +650,8 @@ stdenv.mkDerivation rec {
 
     # second call succeeds because it defers to $out/bin/bazel-{version}-{os_arch}
     hello_test
+
+    runHook postInstall
   '';
 
   # Save paths to hardcoded dependencies so Nix can detect them.
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json
index 43ad41003152..3027183aef39 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json
+++ b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json
@@ -23,14 +23,6 @@
             "https://github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz"
         ]
     },
-    "46993efdd33b73649796c5fc5c9efb193ae19d51.zip": {
-        "name": "46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
-        "sha256": "66184688debeeefcc2a16a2f80b03f514deac8346fe888fb7e691a52c023dd88",
-        "urls": [
-            "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
-            "https://github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip"
-        ]
-    },
     "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip": {
         "name": "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
         "sha256": "bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598",
@@ -159,11 +151,11 @@
         "generator_function": "grpc_deps",
         "generator_name": "boringssl",
         "name": "boringssl",
-        "sha256": "81333e496d7b74a60aa6fa622c028ba382a0a6b9c815cc6ccb221042383b9a9b",
-        "strip_prefix": "boringssl-412844d75b14b9090b58423fd5f5ed8c2fd80212",
+        "sha256": "cb0fd3eda612d4ae4be21108938800a19b015717a7627ea7f530e3469d207707",
+        "strip_prefix": "boringssl-88aeb757f1a415c71fb4cbf5af936ecae4bc8179",
         "urls": [
-            "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/412844d75b14b9090b58423fd5f5ed8c2fd80212.tar.gz",
-            "https://github.com/google/boringssl/archive/412844d75b14b9090b58423fd5f5ed8c2fd80212.tar.gz"
+            "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/88aeb757f1a415c71fb4cbf5af936ecae4bc8179.tar.gz",
+            "https://github.com/google/boringssl/archive/88aeb757f1a415c71fb4cbf5af936ecae4bc8179.tar.gz"
         ]
     },
     "build_bazel_apple_support": {
@@ -246,13 +238,13 @@
             "-p1"
         ],
         "patches": [
-            "//third_party/grpc:grpc_1.32.0.patch"
+            "//third_party/grpc:grpc_1.33.1.patch"
         ],
-        "sha256": "f880ebeb2ccf0e47721526c10dd97469200e40b5f101a0d9774eb69efa0bd07a",
-        "strip_prefix": "grpc-1.32.0",
+        "sha256": "58eaee5c0f1bd0b92ebe1fa0606ec8f14798500620e7444726afcaf65041cb63",
+        "strip_prefix": "grpc-1.33.1",
         "urls": [
-            "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.32.0.tar.gz",
-            "https://github.com/grpc/grpc/archive/v1.32.0.tar.gz"
+            "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.33.1.tar.gz",
+            "https://github.com/grpc/grpc/archive/v1.33.1.tar.gz"
         ]
     },
     "com_google_absl": {
@@ -364,11 +356,11 @@
         "generator_function": "grpc_deps",
         "generator_name": "envoy_api",
         "name": "envoy_api",
-        "sha256": "9150f920abd3e710e0e58519cd769822f13d7a56988f2c34c2008815ec8d9c88",
-        "strip_prefix": "data-plane-api-8dcc476be69437b505af181a6e8b167fdb101d7e",
+        "sha256": "466585f253471259ce17641348149f458270316e81ec6702fdd8bf0b1b681256",
+        "strip_prefix": "data-plane-api-9997e1137cdb59e622af13e57ca915a2f3c9f84f",
         "urls": [
-            "https://storage.googleapis.com/grpc-bazel-mirror/github.com/envoyproxy/data-plane-api/archive/8dcc476be69437b505af181a6e8b167fdb101d7e.tar.gz",
-            "https://github.com/envoyproxy/data-plane-api/archive/8dcc476be69437b505af181a6e8b167fdb101d7e.tar.gz"
+            "https://storage.googleapis.com/grpc-bazel-mirror/github.com/envoyproxy/data-plane-api/archive/9997e1137cdb59e622af13e57ca915a2f3c9f84f.tar.gz",
+            "https://github.com/envoyproxy/data-plane-api/archive/9997e1137cdb59e622af13e57ca915a2f3c9f84f.tar.gz"
         ]
     },
     "futures": {
@@ -428,25 +420,25 @@
             "https://github.com/census-instrumentation/opencensus-cpp/archive/c9a4da319bc669a772928ffc55af4a61be1a1176.tar.gz"
         ]
     },
-    "java_tools_javac11_darwin-v10.5.zip": {
-        "name": "java_tools_javac11_darwin-v10.5.zip",
-        "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
+    "java_tools_javac11_darwin-v10.6.zip": {
+        "name": "java_tools_javac11_darwin-v10.6.zip",
+        "sha256": "d15b05d2061382748f779dc566537ea567a46bcba6fa34b56d7cb6e6d668adab",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_darwin-v10.6.zip"
         ]
     },
-    "java_tools_javac11_linux-v10.5.zip": {
-        "name": "java_tools_javac11_linux-v10.5.zip",
-        "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
+    "java_tools_javac11_linux-v10.6.zip": {
+        "name": "java_tools_javac11_linux-v10.6.zip",
+        "sha256": "085c0ba53ba764e81d4c195524f3c596085cbf9cdc01dd8e6d2ae677e726af35",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_linux-v10.6.zip"
         ]
     },
-    "java_tools_javac11_windows-v10.5.zip": {
-        "name": "java_tools_javac11_windows-v10.5.zip",
-        "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
+    "java_tools_javac11_windows-v10.6.zip": {
+        "name": "java_tools_javac11_windows-v10.6.zip",
+        "sha256": "873f1e53d1fa9c8e46b717673816cd822bb7acc474a194a18ff849fd8fa6ff00",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_windows-v10.6.zip"
         ]
     },
     "java_tools_langtools_javac11": {
@@ -673,6 +665,16 @@
             "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.7.0.tar"
         ]
     },
+    "openjdk11_darwin_aarch64_archive": {
+        "build_file_content": "\njava_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
+        "name": "openjdk11_darwin_aarch64_archive",
+        "sha256": "3dcc636e64ae58b922269c2dc9f20f6f967bee90e3f6847d643c4a566f1e8d8a",
+        "strip_prefix": "zulu11.45.27-ca-jdk11.0.10-macosx_aarch64",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz",
+            "https://cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz"
+        ]
+    },
     "openjdk11_darwin_archive": {
         "build_file_content": "\njava_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
         "name": "openjdk11_darwin_archive",
@@ -727,6 +729,16 @@
             "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-win_x64.zip"
         ]
     },
+    "openjdk15_darwin_aarch64_archive": {
+        "build_file_content": "\njava_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
+        "name": "openjdk15_darwin_aarch64_archive",
+        "sha256": "2613c3f15eef6b6ecd0fd102da92282b985e4573905dc902f1783d8059c1efc5",
+        "strip_prefix": "zulu15.29.15-ca-jdk15.0.2-macosx_aarch64",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.29.15-ca-jdk15.0.2-macosx_aarch64.tar.gz",
+            "https://cdn.azul.com/zulu/bin/zulu15.29.15-ca-jdk15.0.2-macosx_aarch64.tar.gz"
+        ]
+    },
     "openjdk15_darwin_archive": {
         "build_file_content": "\njava_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
         "name": "openjdk15_darwin_archive",
@@ -823,25 +835,50 @@
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
         ]
     },
-    "openjdk_macos": {
+    "openjdk_macos_aarch64": {
+        "downloaded_file_path": "zulu-macos-aarch64.tar.gz",
+        "name": "openjdk_macos_aarch64",
+        "sha256": "a900ef793cb34b03ac5d93ea2f67291b6842e99d500934e19393a8d8f9bfa6ff",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.45.27-ca-jdk11.0.10/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64-allmodules-1611665569.tar.gz"
+        ]
+    },
+    "openjdk_macos_aarch64_minimal": {
+        "downloaded_file_path": "zulu-macos-aarch64-minimal.tar.gz",
+        "name": "openjdk_macos_aarch64_minimal",
+        "sha256": "f4f606926e6deeaa8b8397e299313d9df87642fe464b0ccf1ed0432aeb00640b",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.45.27-ca-jdk11.0.10/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64-minimal-1611665562.tar.gz"
+        ]
+    },
+    "openjdk_macos_aarch64_vanilla": {
+        "downloaded_file_path": "zulu-macos-aarch64-vanilla.tar.gz",
+        "name": "openjdk_macos_aarch64_vanilla",
+        "sha256": "3dcc636e64ae58b922269c2dc9f20f6f967bee90e3f6847d643c4a566f1e8d8a",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz",
+            "https://cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz"
+        ]
+    },
+    "openjdk_macos_x86_64": {
         "downloaded_file_path": "zulu-macos.tar.gz",
-        "name": "openjdk_macos",
+        "name": "openjdk_macos_x86_64",
         "sha256": "8e283cfd23c7555be8e17295ed76eb8f00324c88ab904b8de37bbe08f90e569b",
         "urls": [
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64-allmodules-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689066.tar.gz"
         ]
     },
-    "openjdk_macos_minimal": {
+    "openjdk_macos_x86_64_minimal": {
         "downloaded_file_path": "zulu-macos-minimal.tar.gz",
-        "name": "openjdk_macos_minimal",
+        "name": "openjdk_macos_x86_64_minimal",
         "sha256": "1bacb1c07035d4066d79f0b65b4ea0ebd1954f3662bdfe3618da382ac8fd23a6",
         "urls": [
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64-minimal-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689063.tar.gz"
         ]
     },
-    "openjdk_macos_vanilla": {
+    "openjdk_macos_x86_64_vanilla": {
         "downloaded_file_path": "zulu-macos-vanilla.tar.gz",
-        "name": "openjdk_macos_vanilla",
+        "name": "openjdk_macos_x86_64_vanilla",
         "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
         "urls": [
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
@@ -873,11 +910,18 @@
     },
     "platforms": {
         "name": "platforms",
-        "sha256": "66184688debeeefcc2a16a2f80b03f514deac8346fe888fb7e691a52c023dd88",
-        "strip_prefix": "platforms-46993efdd33b73649796c5fc5c9efb193ae19d51",
+        "sha256": "079945598e4b6cc075846f7fd6a9d0857c33a7afc0de868c2ccb96405225135d",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/platforms/releases/download/0.0.4/platforms-0.0.4.tar.gz",
+            "https://github.com/bazelbuild/platforms/releases/download/0.0.4/platforms-0.0.4.tar.gz"
+        ]
+    },
+    "platforms-0.0.4.tar.gz": {
+        "name": "platforms-0.0.4.tar.gz",
+        "sha256": "079945598e4b6cc075846f7fd6a9d0857c33a7afc0de868c2ccb96405225135d",
         "urls": [
-            "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
-            "https://github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip"
+            "https://mirror.bazel.build/github.com/bazelbuild/platforms/releases/download/0.0.4/platforms-0.0.4.tar.gz",
+            "https://github.com/bazelbuild/platforms/releases/download/0.0.4/platforms-0.0.4.tar.gz"
         ]
     },
     "remote_coverage_tools": {
@@ -922,10 +966,10 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
+        "sha256": "d15b05d2061382748f779dc566537ea567a46bcba6fa34b56d7cb6e6d668adab",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
-            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_darwin-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_darwin-v10.6.zip",
+            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.6/java_tools_javac11_darwin-v10.6.zip"
         ]
     },
     "remote_java_tools_javac11_test_darwin": {
@@ -938,9 +982,9 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
+        "sha256": "d15b05d2061382748f779dc566537ea567a46bcba6fa34b56d7cb6e6d668adab",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_darwin-v10.6.zip"
         ]
     },
     "remote_java_tools_javac11_test_linux": {
@@ -953,9 +997,9 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
+        "sha256": "085c0ba53ba764e81d4c195524f3c596085cbf9cdc01dd8e6d2ae677e726af35",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_linux-v10.6.zip"
         ]
     },
     "remote_java_tools_javac11_test_windows": {
@@ -968,9 +1012,9 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
+        "sha256": "873f1e53d1fa9c8e46b717673816cd822bb7acc474a194a18ff849fd8fa6ff00",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_windows-v10.6.zip"
         ]
     },
     "remote_java_tools_linux": {
@@ -993,10 +1037,10 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
+        "sha256": "085c0ba53ba764e81d4c195524f3c596085cbf9cdc01dd8e6d2ae677e726af35",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
-            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_linux-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_linux-v10.6.zip",
+            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.6/java_tools_javac11_linux-v10.6.zip"
         ]
     },
     "remote_java_tools_windows": {
@@ -1019,10 +1063,10 @@
         "patch_cmds_win": [
             "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
         ],
-        "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
+        "sha256": "873f1e53d1fa9c8e46b717673816cd822bb7acc474a194a18ff849fd8fa6ff00",
         "urls": [
-            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
-            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_windows-v10.5.zip"
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_windows-v10.6.zip",
+            "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.6/java_tools_javac11_windows-v10.6.zip"
         ]
     },
     "remotejdk11_linux": {
@@ -1152,6 +1196,24 @@
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
         ]
     },
+    "remotejdk11_macos_aarch64_for_testing": {
+        "build_file": "@local_jdk//:BUILD.bazel",
+        "name": "remotejdk11_macos_aarch64_for_testing",
+        "patch_cmds": [
+            "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
+            "echo >> BUILD.bazel",
+            "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
+        ],
+        "patch_cmds_win": [
+            "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
+        ],
+        "sha256": "3dcc636e64ae58b922269c2dc9f20f6f967bee90e3f6847d643c4a566f1e8d8a",
+        "strip_prefix": "zulu11.45.27-ca-jdk11.0.10-macosx_aarch64",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz",
+            "https://cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz"
+        ]
+    },
     "remotejdk11_macos_for_testing": {
         "build_file": "@local_jdk//:BUILD.bazel",
         "name": "remotejdk11_macos_for_testing",
@@ -1299,6 +1361,24 @@
             "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz"
         ]
     },
+    "remotejdk15_macos_aarch64_for_testing": {
+        "build_file": "@local_jdk//:BUILD.bazel",
+        "name": "remotejdk15_macos_aarch64_for_testing",
+        "patch_cmds": [
+            "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
+            "echo >> BUILD.bazel",
+            "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
+        ],
+        "patch_cmds_win": [
+            "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
+        ],
+        "sha256": "2613c3f15eef6b6ecd0fd102da92282b985e4573905dc902f1783d8059c1efc5",
+        "strip_prefix": "zulu15.29.15-ca-jdk15.0.2-macosx_aarch64",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.29.15-ca-jdk15.0.2-macosx_aarch64.tar.gz",
+            "https://cdn.azul.com/zulu/bin/zulu15.29.15-ca-jdk15.0.2-macosx_aarch64.tar.gz"
+        ]
+    },
     "remotejdk15_macos_for_testing": {
         "build_file": "@local_jdk//:BUILD.bazel",
         "name": "remotejdk15_macos_for_testing",
@@ -1439,12 +1519,12 @@
             "https://github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz"
         ]
     },
-    "v1.32.0.tar.gz": {
-        "name": "v1.32.0.tar.gz",
-        "sha256": "f880ebeb2ccf0e47721526c10dd97469200e40b5f101a0d9774eb69efa0bd07a",
+    "v1.33.1.tar.gz": {
+        "name": "v1.33.1.tar.gz",
+        "sha256": "58eaee5c0f1bd0b92ebe1fa0606ec8f14798500620e7444726afcaf65041cb63",
         "urls": [
-            "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.32.0.tar.gz",
-            "https://github.com/grpc/grpc/archive/v1.32.0.tar.gz"
+            "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.33.1.tar.gz",
+            "https://github.com/grpc/grpc/archive/v1.33.1.tar.gz"
         ]
     },
     "v3.13.0.tar.gz": {
@@ -1494,5 +1574,12 @@
         "urls": [
             "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"
         ]
+    },
+    "zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz": {
+        "name": "zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz",
+        "sha256": "3dcc636e64ae58b922269c2dc9f20f6f967bee90e3f6847d643c4a566f1e8d8a",
+        "urls": [
+            "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu11.45.27-ca-jdk11.0.10-macosx_aarch64.tar.gz"
+        ]
     }
 }
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bmake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/bmake/default.nix
index e79e06a71f4e..a93de053c446 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bmake/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/bmake/default.nix
@@ -1,23 +1,82 @@
-{ lib, stdenv, fetchurl
-, getopt
+{ lib, stdenv, fetchurl, fetchpatch
+, getopt, tzdata
 }:
 
 stdenv.mkDerivation rec {
   pname = "bmake";
-  version = "20200902";
+  version = "20210420";
 
   src = fetchurl {
     url    = "http://www.crufty.net/ftp/pub/sjg/${pname}-${version}.tar.gz";
-    sha256 = "1v1v81llsiy8qbpy38nml1x08dhrihwh040pqgwbwb9zy1108b08";
+    sha256 = "1ajq8v5rq3pl5y9h1hlscs83007fsyk3lhcp87z09ma370lm3ra7";
   };
 
+  # Make tests work with musl
+  # * Disable deptgt-delete_on_error test (alpine does this too)
+  # * Fix test failing due to different strerror(3) output for musl and glibc
+  postPatch = lib.optionalString (stdenv.hostPlatform.libc == "musl") ''
+    sed -i unit-tests/Makefile -e '/deptgt-delete_on_error/d'
+    substituteInPlace unit-tests/opt-chdir.exp --replace "File name" "Filename"
+  '';
+
   nativeBuildInputs = [ getopt ];
 
   patches = [
+    # make bootstrap script aware of the prefix in /nix/store
     ./bootstrap-fix.patch
+    # preserve PATH from build env in unit tests
     ./fix-unexport-env-test.patch
+    # Fix localtime tests without global /etc/zoneinfo directory
+    ./fix-localtime-test.patch
+    # decouple tests from build phase
+    (fetchpatch {
+      name = "separate-tests.patch";
+      url = "https://raw.githubusercontent.com/alpinelinux/aports/2a36f7b79df44136c4d2b8e9512f908af65adfee/community/bmake/separate-tests.patch";
+      sha256 = "00s76jwyr83c6rkvq67b1lxs8jhm0gj2rjgy77xazqr5400slj9a";
+    })
+    # add a shebang to bmake's install(1) replacement
+    (fetchpatch {
+      name = "install-sh.patch";
+      url = "https://raw.githubusercontent.com/alpinelinux/aports/34cd8c45397c63c041cf3cbe1ba5232fd9331196/community/bmake/install-sh.patch";
+      sha256 = "0z8icd6akb96r4cksqnhynkn591vbxlmrrs4w6wil3r6ggk6mwa6";
+    })
+  ];
+
+  # The generated makefile is a small wrapper for calling ./boot-strap
+  # with a given op. On a case-insensitive filesystem this generated
+  # makefile clobbers a distinct, shipped, Makefile and causes
+  # infinite recursion during tests which eventually fail with
+  # "fork: Resource temporarily unavailable"
+  configureFlags = [
+    "--without-makefile"
   ];
 
+  buildPhase = ''
+    runHook preBuild
+
+    ./boot-strap --prefix=$out -o . op=build
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    ./boot-strap --prefix=$out -o . op=install
+
+    runHook postInstall
+  '';
+
+  doCheck = true;
+  checkInputs = [ tzdata ];
+  checkPhase = ''
+    runHook preCheck
+
+    ./boot-strap -o . op=test
+
+    runHook postCheck
+  '';
+
   setupHook = ./setup-hook.sh;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-localtime-test.patch b/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-localtime-test.patch
new file mode 100644
index 000000000000..b377292cce28
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-localtime-test.patch
@@ -0,0 +1,23 @@
+--- bmake/unit-tests/Makefile.orig	2021-05-30 14:24:38.822484317 +0200
++++ bmake/unit-tests/Makefile	2021-05-31 13:25:21.645751428 +0200
+@@ -455,7 +455,8 @@
+ ENV.varmisc=		FROM_ENV=env
+ ENV.varmisc+=		FROM_ENV_BEFORE=env
+ ENV.varmisc+=		FROM_ENV_AFTER=env
+-ENV.varmod-localtime+=	TZ=Europe/Berlin
++# Set absolute path to tz file since musl doesn't support TZDIR
++ENV.varmod-localtime+=	TZDIR=${TZDIR} TZ=:${TZDIR}/Europe/Berlin
+ ENV.varname-vpath+=	VPATH=varname-vpath.dir:varname-vpath.dir2
+ 
+ # Override make flags for some of the tests; default is -k.
+--- bmake/unit-tests/varmod-localtime.mk.orig	2021-05-30 14:30:34.397986246 +0200
++++ bmake/unit-tests/varmod-localtime.mk	2021-05-31 13:24:41.430906606 +0200
+@@ -3,7 +3,7 @@
+ # Tests for the :localtime variable modifier, which formats a timestamp
+ # using strftime(3) in local time.
+ 
+-.if ${TZ} != "Europe/Berlin"	# see unit-tests/Makefile
++.if ${TZ} != ":${TZDIR}/Europe/Berlin"	# see unit-tests/Makefile
+ .  error
+ .endif
+ 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch b/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch
index 339348f37c32..fbf7225a6d6f 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch
+++ b/nixpkgs/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch
@@ -1,13 +1,13 @@
---- bmake/unit-tests/unexport-env.mk.orig       2019-02-19 10:24:14.356713136 -0800
-+++ bmake/unit-tests/unexport-env.mk    2019-02-19 10:25:43.838775388 -0800
-@@ -3,8 +3,8 @@
- # pick up a bunch of exported vars
+--- bmake/unit-tests/unexport-env.mk.orig	2021-05-27 14:44:45.263392298 +0200
++++ bmake/unit-tests/unexport-env.mk	2021-05-27 14:46:46.188881996 +0200
+@@ -4,8 +4,8 @@
+ FILTER_CMD=	grep ^UT_
  .include "export.mk"
  
 -# an example of setting up a minimal environment.
--PATH = /bin:/usr/bin:/sbin:/usr/sbin
+-PATH=	/bin:/usr/bin:/sbin:/usr/sbin
 +# preserve PATH so commands used in the "all" target are still available
-+PATH := ${PATH}
++PATH :=	${PATH}
  
  # now clobber the environment to just PATH and UT_TEST
- UT_TEST = unexport-env
+ UT_TEST=	unexport-env
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bmake/setup-hook.sh b/nixpkgs/pkgs/development/tools/build-managers/bmake/setup-hook.sh
index ae8f78ec90fa..c5ca27dd9105 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bmake/setup-hook.sh
+++ b/nixpkgs/pkgs/development/tools/build-managers/bmake/setup-hook.sh
@@ -1,3 +1,13 @@
+addMakeFlags() {
+    export prefix="$out"
+    export MANDIR="${!outputMan}/share/man"
+    export MANTARGET=man
+    export BINOWN=
+    export STRIP_FLAG=
+}
+
+preConfigureHooks+=(addMakeFlags)
+
 bmakeBuildPhase() {
     runHook preBuild
 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
index d14605074660..702652db878b 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
@@ -7,19 +7,15 @@
 , useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin)
 , useOpenSSL ? !isBootstrap, openssl
 , useNcurses ? false, ncurses
-, useQt4 ? false, qt4
 , withQt5 ? false, qtbase
+, buildDocs ? (!isBootstrap && (useNcurses || withQt5)), sphinx, texinfo
 }:
 
-assert withQt5 -> useQt4 == false;
-assert useQt4 -> withQt5 == false;
-
 stdenv.mkDerivation (rec {
   pname = "cmake"
           + lib.optionalString isBootstrap "-boot"
           + lib.optionalString useNcurses "-cursesUI"
-          + lib.optionalString withQt5 "-qt5UI"
-          + lib.optionalString useQt4 "-qt4UI";
+          + lib.optionalString withQt5 "-qt5UI";
   version = "3.19.7";
 
   src = fetchurl {
@@ -40,20 +36,21 @@ stdenv.mkDerivation (rec {
 
   ] ++ lib.optional stdenv.isCygwin ./3.2.2-cygwin.patch;
 
-  outputs = [ "out" ];
+  outputs = [ "out" ]
+    ++ lib.optionals buildDocs [ "man" "info" ];
   setOutputFlags = false;
 
   setupHook = ./setup-hook.sh;
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
-  nativeBuildInputs = [ setupHook pkg-config ];
+  nativeBuildInputs = [ setupHook pkg-config ]
+    ++ lib.optionals buildDocs [ texinfo ];
 
   buildInputs = []
     ++ lib.optionals useSharedLibraries [ bzip2 curlMinimal expat libarchive xz zlib libuv rhash ]
     ++ lib.optional useOpenSSL openssl
     ++ lib.optional useNcurses ncurses
-    ++ lib.optional useQt4 qt4
     ++ lib.optional withQt5 qtbase;
 
   propagatedBuildInputs = lib.optional stdenv.isDarwin ps;
@@ -73,7 +70,12 @@ stdenv.mkDerivation (rec {
   configureFlags = [
     "--docdir=share/doc/${pname}${version}"
   ] ++ (if useSharedLibraries then [ "--no-system-jsoncpp" "--system-libs" ] else [ "--no-system-libs" ]) # FIXME: cleanup
-    ++ lib.optional (useQt4 || withQt5) "--qt-gui"
+    ++ lib.optional withQt5 "--qt-gui"
+    ++ lib.optionals buildDocs [
+      "--sphinx-build=${sphinx}/bin/sphinx-build"
+      "--sphinx-man"
+      "--sphinx-info"
+    ]
     # Workaround https://gitlab.kitware.com/cmake/cmake/-/issues/20568
     ++ lib.optionals stdenv.hostPlatform.is32bit [
       "CFLAGS=-D_FILE_OFFSET_BITS=64"
@@ -124,7 +126,7 @@ stdenv.mkDerivation (rec {
       configuration files, and generate native makefiles and workspaces that
       can be used in the compiler environment of your choice.
     '';
-    platforms = if useQt4 then qt4.meta.platforms else platforms.all;
+    platforms = platforms.all;
     maintainers = with maintainers; [ ttuegel lnl7 ];
     license = licenses.bsd3;
   };
diff --git a/nixpkgs/pkgs/development/tools/build-managers/conan/default.nix b/nixpkgs/pkgs/development/tools/build-managers/conan/default.nix
index 0ec9d3ea93e6..9c3e99e23ad6 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/conan/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/conan/default.nix
@@ -28,6 +28,17 @@ let newPython = python3.override {
         sha256 = "18hpzh1am1dqx81fypn57r2wk565fi4g14292qrc5jm1h9dalzld";
       };
     });
+    # https://github.com/conan-io/conan/issues/8876
+    pyjwt = super.pyjwt.overridePythonAttrs (oldAttrs: rec {
+      version = "1.7.1";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96";
+      };
+      disabledTests = [
+        "test_ec_verify_should_return_false_if_signature_invalid"
+      ];
+    });
   };
 };
 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix b/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
index 601f7ea9fea0..0d62642e032c 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
@@ -14,7 +14,7 @@ rustPlatform.buildRustPackage rec {
   # workaround for missing Cargo.lock file
   cargoPatches = [ ./cargo-lock.patch ];
 
-  cargoSha256 = "0hjfq61y1ikdcajr2k514k7fad2zxbwq7yb5nk1wx38f1524709q";
+  cargoSha256 = "033wif3wwm3912ppw0gshsyjxipilg9hhvkijw29zmjfm6074b21";
 
   # fac includes a unit test called ls_files_works which assumes it's
   # running in a git repo. Nix's sandbox runs cargo build outside git,
diff --git a/nixpkgs/pkgs/development/tools/build-managers/leiningen/default.nix b/nixpkgs/pkgs/development/tools/build-managers/leiningen/default.nix
index 51b97b242d5c..90b17ed9bba9 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -3,17 +3,17 @@
 
 stdenv.mkDerivation rec {
   pname = "leiningen";
-  version = "2.9.5";
+  version = "2.9.6";
 
   src = fetchurl {
     url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg";
-    sha256 = "12kv3286a2vkm3qpm2msiks87mkspxddgl7bwiacdias9dfda09n";
+    sha256 = "0a8lq0yalar8szw155cxa8kywnk6yvakwi3xmxm1ahivn7i5hjq9";
   };
 
   jarsrc = fetchurl {
     # NOTE: This is actually a .jar, Github has issues
     url = "https://github.com/technomancy/leiningen/releases/download/${version}/${pname}-${version}-standalone.zip";
-    sha256 = "1shyvg1471sc3bv4h3ax51626xw8a8w05f43bny6gmp8pyc0qjfz";
+    sha256 = "1f3hb57rqp9qkh5n2wf65dvxraf21y15s3g643f2fhzc7vvl7ia1";
   };
 
   JARNAME = "${pname}-${version}-standalone.jar";
diff --git a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
index 4538c212da58..4fbd0365af95 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchurl {
     url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}";
-    sha256 = "142vr40p60mapvvb5amn8hz6a8930kxsz510baql40hai4yhga7z";
+    sha256 = "sha256-cAhcTmSPkV5z5ryuCNrpxy9/1iWvvminiVYul9c/DwM=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
index c2b10d823a30..9be3d232fb89 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
@@ -1,137 +1,139 @@
 { lib, stdenv, fetchFromGitHub,
-  fetchHex, erlang,
-  tree }:
+  fetchHex, erlang, makeWrapper,
+  writeScript, common-updater-scripts, coreutils, git, gnused, nix, rebar3-nix }:
 
 let
-  version = "3.14.4";
-
-  # Dependencies should match the ones in:
-  # https://github.com/erlang/rebar3/blob/${version}/rebar.lock
-  # `sha256` could also be taken from https://hex.pm - Checksum
-
-  bbmustache = fetchHex {
-    pkg = "bbmustache";
-    version = "1.10.0";
-    sha256 = "1vp27jqnq65a8iqp7j4z8nw9ad29dhky5agmg8aj75dvshzzmvs3";
-  };
-  certifi = fetchHex {
-    pkg = "certifi";
-    version = "2.5.3";
-    sha256 = "040w1scglvqhcvc1ifdnlcyrbwr0smi00w4xi8h03c99775nllgd";
-  };
-  cf = fetchHex {
-    pkg = "cf";
-    version = "0.3.1";
-    sha256 = "0wknz4xkqkhgvlx4vx5619p8m65v7g87lfgsvfy04jrsgm28spii";
-  };
-  cth_readable = fetchHex {
-    pkg = "cth_readable";
-    version = "1.5.0";
-    sha256 = "0z58b6frqdnhyzrmbdf6x78l3izbbh5z5i3am8hqc253r7xwv0dx";
+  version = "3.16.1";
+  owner = "erlang";
+  deps = import ./rebar-deps.nix { inherit fetchFromGitHub fetchHex; };
+  rebar3 = stdenv.mkDerivation rec {
+    pname = "rebar3";
+    inherit version erlang;
+
+    # How to obtain `sha256`:
+    # nix-prefetch-url --unpack https://github.com/erlang/rebar3/archive/${version}.tar.gz
+    src = fetchFromGitHub {
+      inherit owner;
+      repo = pname;
+      rev = version;
+      sha256 = "0dhwlx7zykf9y3znk2k8fxrq5j43jy3c3gd76k74q34p1xbajgzr";
+    };
+
+    buildInputs = [ erlang ];
+
+    postPatch = ''
+      mkdir -p _checkouts _build/default/lib/
+
+      ${toString (lib.mapAttrsToList (k: v: ''
+        cp -R --no-preserve=mode ${v} _checkouts/${k}
+      '') deps)}
+
+      # Bootstrap script expects the dependencies in _build/default/lib
+      # TODO: Make it accept checkouts?
+      for i in _checkouts/* ; do
+          ln -s $(pwd)/$i $(pwd)/_build/default/lib/
+      done
+    '';
+
+    buildPhase = ''
+      HOME=. escript bootstrap
+    '';
+
+    checkPhase = ''
+      HOME=. escript ./rebar3 ct
+    '';
+
+    doCheck = true;
+
+    installPhase = ''
+      mkdir -p $out/bin
+      cp rebar3 $out/bin/rebar3
+    '';
+
+    meta = {
+      homepage = "https://github.com/rebar/rebar3";
+      description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases";
+
+      longDescription = ''
+        rebar is a self-contained Erlang script, so it's easy to distribute or
+        even embed directly in a project. Where possible, rebar uses standard
+        Erlang/OTP conventions for project structures, thus minimizing the amount
+        of build configuration work. rebar also provides dependency management,
+        enabling application writers to easily re-use common libraries from a
+        variety of locations (hex.pm, git, hg, and so on).
+        '';
+
+      platforms = lib.platforms.unix;
+      maintainers = lib.teams.beam.members;
+      license = lib.licenses.asl20;
+    };
+
+    passthru.updateScript = writeScript "update.sh" ''
+      #!${stdenv.shell}
+      set -ox errexit
+      PATH=${
+        lib.makeBinPath [
+          common-updater-scripts
+          coreutils
+          git
+          gnused
+          nix
+          (rebar3WithPlugins { globalPlugins = [rebar3-nix]; })
+        ]
+      }
+      latest=$(list-git-tags https://github.com/${owner}/${pname}.git | sed -n '/[\d\.]\+/p' | sort -V | tail -1)
+      if [ "$latest" != "${version}" ]; then
+        nixpkgs="$(git rev-parse --show-toplevel)"
+        nix_path="$nixpkgs/pkgs/development/tools/build-managers/rebar3"
+        update-source-version rebar3 "$latest" --version-key=version --print-changes --file="$nix_path/default.nix"
+        tmpdir=$(mktemp -d)
+        cp -R $(nix-build $nixpkgs --no-out-link -A rebar3.src)/* "$tmpdir"
+        (cd "$tmpdir" && rebar3 nix lock -o "$nix_path/rebar-deps.nix")
+      else
+        echo "rebar3 is already up-to-date"
+      fi
+    '';
   };
-  erlware_commons = fetchHex {
-    pkg = "erlware_commons";
-    version = "1.4.0";
-    sha256 = "1rp2vkgzqm6sax7fc13rh9x6qzxsgg718dnv7l0kmarvyifcyphq";
-  };
-  eunit_formatters = fetchHex {
-    pkg = "eunit_formatters";
-    version = "0.5.0";
-    sha256 = "1jb3hzb216r29x2h4pcjwfmx1k81431rgh5v0mp4x5146hhvmj6n";
-  };
-  getopt = fetchHex {
-    pkg = "getopt";
-    version = "1.0.1";
-    sha256 = "53e1ab83b9ceb65c9672d3e7a35b8092e9bdc9b3ee80721471a161c10c59959c";
-  };
-  parse_trans = fetchHex {
-    pkg = "parse_trans";
-    version = "3.3.1";
-    sha256 = "12w8ai6b5s6b4hnvkav7hwxd846zdd74r32f84nkcmjzi1vrbk87";
-  };
-
-  providers = fetchHex {
-    pkg = "providers";
-    version = "1.8.1";
-    sha256 = "183b9128l4af60rs40agqh6kc6db33j4027ad6jajxn4x6nlamz4";
-  };
-
-  relx = fetchHex {
-    pkg = "relx";
-    version = "4.3.0";
-    sha256 = "0h044arh41sr92r1nlg176shavlv7pvw17alwklhszgwlr4hk3kk";
-  };
-
-  ssl_verify_fun = fetchHex {
-    pkg = "ssl_verify_fun";
-    version = "1.1.6";
-    sha256 = "1026l1z1jh25z8bfrhaw0ryk5gprhrpnirq877zqhg253x3x5c5x";
-  };
-in
-stdenv.mkDerivation rec {
-  pname = "rebar3";
-  inherit version erlang;
-
-  # How to obtain `sha256`:
-  # nix-prefetch-url --unpack https://github.com/erlang/rebar3/archive/${version}.tar.gz
-  src = fetchFromGitHub {
-    owner = "erlang";
-    repo = pname;
-    rev = version;
-    sha256 = "09bnqwli93sq1pcz4h88ks7qg7k8yrjy9fd46yyp8xdl7i4irwy2";
-  };
-
-  bootstrapper = ./rebar3-nix-bootstrap;
-
-  buildInputs = [ erlang tree ];
-
-  postPatch = ''
-    mkdir -p _checkouts
-    mkdir -p _build/default/lib/
-
-    cp --no-preserve=mode -R ${bbmustache} _checkouts/bbmustache
-    cp --no-preserve=mode -R ${certifi} _checkouts/certifi
-    cp --no-preserve=mode -R ${cf} _checkouts/cf
-    cp --no-preserve=mode -R ${cth_readable} _checkouts/cth_readable
-    cp --no-preserve=mode -R ${erlware_commons} _checkouts/erlware_commons
-    cp --no-preserve=mode -R ${eunit_formatters} _checkouts/eunit_formatters
-    cp --no-preserve=mode -R ${getopt} _checkouts/getopt
-    cp --no-preserve=mode -R ${parse_trans} _checkouts/parse_trans
-    cp --no-preserve=mode -R ${providers} _checkouts/providers
-    cp --no-preserve=mode -R ${relx} _checkouts/relx
-    cp --no-preserve=mode -R ${ssl_verify_fun} _checkouts/ssl_verify_fun
-
-    # Bootstrap script expects the dependencies in _build/default/lib
-    # TODO: Make it accept checkouts?
-    for i in _checkouts/* ; do
-        ln -s $(pwd)/$i $(pwd)/_build/default/lib/
-    done
-  '';
-
-  buildPhase = ''
-    HOME=. escript bootstrap
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp rebar3 $out/bin/rebar3
-  '';
-
-  meta = {
-    homepage = "https://github.com/rebar/rebar3";
-    description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases";
-
-    longDescription = ''
-      rebar is a self-contained Erlang script, so it's easy to distribute or
-      even embed directly in a project. Where possible, rebar uses standard
-      Erlang/OTP conventions for project structures, thus minimizing the amount
-      of build configuration work. rebar also provides dependency management,
-      enabling application writers to easily re-use common libraries from a
-      variety of locations (hex.pm, git, hg, and so on).
+  rebar3WithPlugins = { plugins ? [ ], globalPlugins ? [ ] }:
+    let
+      pluginLibDirs = map (p: "${p}/lib/erlang/lib") (lib.unique (plugins ++ globalPlugins));
+      globalPluginNames = lib.unique (map (p: p.packageName) globalPlugins);
+      rebar3Patched = (rebar3.overrideAttrs (old: {
+
+        # skip-plugins.patch is necessary because otherwise rebar3 will always
+        # try to fetch plugins if they are not already present in _build.
+        #
+        # global-deps.patch makes it possible to use REBAR_GLOBAL_PLUGINS to
+        # instruct rebar3 to always load a certain plugin. It is necessary since
+        # REBAR_GLOBAL_CONFIG_DIR doesn't seem to work for this.
+        patches = [ ./skip-plugins.patch ./global-plugins.patch ];
+
+        # our patches cause the tests to fail
+        doCheck = false;
+      }));
+    in stdenv.mkDerivation {
+      pname = "rebar3-with-plugins";
+      inherit (rebar3) version;
+      nativeBuildInputs = [ erlang makeWrapper ];
+      unpackPhase = "true";
+
+      # Here we extract the rebar3 escript (like `rebar3_prv_local_install.erl`) and
+      # add plugins to the code path.
+
+      installPhase = ''
+        erl -noshell -eval '
+          {ok, Escript} = escript:extract("${rebar3Patched}/bin/rebar3", []),
+          {archive, Archive} = lists:keyfind(archive, 1, Escript),
+          {ok, _} = zip:extract(Archive, [{cwd, "'$out/lib'"}]),
+          init:stop(0)
+        '
+        cp ${./rebar_ignore_deps.erl} rebar_ignore_deps.erl
+        erlc -o $out/lib/rebar/ebin rebar_ignore_deps.erl
+        mkdir -p $out/bin
+        makeWrapper ${erlang}/bin/erl $out/bin/rebar3 \
+          --set REBAR_GLOBAL_PLUGINS "${toString globalPluginNames} rebar_ignore_deps" \
+          --suffix-each ERL_LIBS ":" "$out/lib ${toString pluginLibDirs}" \
+          --add-flags "+sbtu +A1 -noshell -boot start_clean -s rebar3 main -extra"
       '';
-
-    platforms = lib.platforms.unix;
-    maintainers = lib.teams.beam.members;
-    license = lib.licenses.asl20;
-  };
-}
+    };
+in { inherit rebar3 rebar3WithPlugins; }
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/global-plugins.patch b/nixpkgs/pkgs/development/tools/build-managers/rebar3/global-plugins.patch
new file mode 100644
index 000000000000..9a8bb48f988a
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/global-plugins.patch
@@ -0,0 +1,14 @@
+diff --git a/src/rebar_plugins.erl b/src/rebar_plugins.erl
+index f2d22233..bee2cf18 100644
+--- a/src/rebar_plugins.erl
++++ b/src/rebar_plugins.erl
+@@ -30,7 +30,8 @@ project_plugins_install(State) ->
+ top_level_install(State) ->
+     Profiles = rebar_state:current_profiles(State),
+     lists:foldl(fun(Profile, StateAcc) ->
+-                        Plugins = rebar_state:get(State, {plugins, Profile}, []),
++                        Plugins = rebar_state:get(State, {plugins, Profile}, [])
++                            ++ [list_to_atom(P) || P <- string:lexemes(os:getenv("REBAR_GLOBAL_PLUGINS", ""), " ")],
+                         handle_plugins(Profile, Plugins, StateAcc)
+                 end, State, Profiles).
+ 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix
new file mode 100644
index 000000000000..34c4821aaeca
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix
@@ -0,0 +1,118 @@
+# Generated by rebar3_nix
+let fetchOnly = { src, ... }: src;
+in { builder ? fetchOnly, fetchHex, fetchFromGitHub, overrides ? (x: y: { }) }:
+let
+  self = packages // (overrides self packages);
+  packages = with self; {
+    ssl_verify_fun = builder {
+      name = "ssl_verify_fun";
+      version = "1.1.6";
+      src = fetchHex {
+        pkg = "ssl_verify_fun";
+        version = "1.1.6";
+        sha256 = "sha256-vbDSRx9FPIj/OQjnaG+G+b4yfQZcwewW+kVAGX6gRoA=";
+      };
+      beamDeps = [ ];
+    };
+    relx = builder {
+      name = "relx";
+      version = "4.4.0";
+      src = fetchHex {
+        pkg = "relx";
+        version = "4.4.0";
+        sha256 = "sha256-VcDtY7tdVeuYOhnrlNfzB1320Sbb3/QxAqZmCpH86SU=";
+      };
+      beamDeps = [ bbmustache ];
+    };
+    providers = builder {
+      name = "providers";
+      version = "1.8.1";
+      src = fetchHex {
+        pkg = "providers";
+        version = "1.8.1";
+        sha256 = "sha256-5FdFrenEdqmkaeoIQOQYqxk2DcRPAaIzME4RikRIa6A=";
+      };
+      beamDeps = [ getopt ];
+    };
+    getopt = builder {
+      name = "getopt";
+      version = "1.0.1";
+      src = fetchHex {
+        pkg = "getopt";
+        version = "1.0.1";
+        sha256 = "sha256-U+Grg7nOtlyWctPno1uAkum9ybPugHIUcaFhwQxZlZw=";
+      };
+      beamDeps = [ ];
+    };
+    eunit_formatters = builder {
+      name = "eunit_formatters";
+      version = "0.5.0";
+      src = fetchHex {
+        pkg = "eunit_formatters";
+        version = "0.5.0";
+        sha256 = "sha256-1si6ITQklE5uBbvAl8MgAc3Qq+OSXQJFTyKbINaHY8k=";
+      };
+      beamDeps = [ ];
+    };
+    erlware_commons = builder {
+      name = "erlware_commons";
+      version = "1.5.0";
+      src = fetchHex {
+        pkg = "erlware_commons";
+        version = "1.5.0";
+        sha256 = "sha256-PnxvsrpMKbDdXf6dAxtmRJ4giOzsGoFGW9n94F7X0Ns=";
+      };
+      beamDeps = [ cf ];
+    };
+    cth_readable = builder {
+      name = "cth_readable";
+      version = "1.5.1";
+      src = fetchHex {
+        pkg = "cth_readable";
+        version = "1.5.1";
+        sha256 = "sha256-aGVBoi7+bKWkGgR7OVFsLdKPs8reXySi8ZFFs5Z/nYA=";
+      };
+      beamDeps = [ cf ];
+    };
+    cf = builder {
+      name = "cf";
+      version = "0.3.1";
+      src = fetchHex {
+        pkg = "cf";
+        version = "0.3.1";
+        sha256 = "sha256-MV6NRH06SwK82/o5etA7u5iKbgqm9E063Q9OPDv5dnI=";
+      };
+      beamDeps = [ ];
+    };
+    certifi = builder {
+      name = "certifi";
+      version = "2.6.1";
+      src = fetchHex {
+        pkg = "certifi";
+        version = "2.6.1";
+        sha256 = "sha256-UkyXtJkbOEndXBemMSI4licsawr0RneLpGdaHf9Tu34=";
+      };
+      beamDeps = [ ];
+    };
+    bbmustache = builder {
+      name = "bbmustache";
+      version = "1.10.0";
+      src = fetchHex {
+        pkg = "bbmustache";
+        version = "1.10.0";
+        sha256 = "sha256-Q+/6P9S7lSMVevWp4idsSTSVuEWfyHNxRKoYbLE84u4=";
+      };
+      beamDeps = [ ];
+    };
+    meck = builder {
+      name = "meck";
+      version = "0.8.13";
+      src = fetchHex {
+        pkg = "meck";
+        version = "0.8.13";
+        sha256 = "sha256-008BPBVttRrVfMVWiRuXIOahwd9f4uFa+ZnITWzr6xo=";
+      };
+      beamDeps = [ ];
+    };
+  };
+in self
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap b/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap
deleted file mode 100755
index f1deed1df352..000000000000
--- a/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap
+++ /dev/null
@@ -1,267 +0,0 @@
-#!/usr/bin/env escript
-%% -*- erlang-indent-level: 4;indent-tabs-mode: nil -*-
-%%! -smp enable
-%%% ---------------------------------------------------------------------------
-%%% @doc
-%%% The purpose of this command is to prepare a rebar3 project so that
-%%% rebar3 understands that the dependencies are all already
-%%% installed. If you want a hygienic build on nix then you must run
-%%% this command before running rebar3. I suggest that you add a
-%%% `Makefile` to your project and have the bootstrap command be a
-%%% dependency of the build commands. See the nix documentation for
-%%% more information.
-%%%
-%%% This command designed to have as few dependencies as possible so
-%%% that it can be a dependency of root level packages like rebar3. To
-%%% that end it does many things in a fairly simplistic way. That is
-%%% by design.
-%%%
-%%% ### Assumptions
-%%%
-%%% This command makes the following assumptions:
-%%%
-%%% * It is run in a nix-shell or nix-build environment
-%%% * that all dependencies have been added to the ERL_LIBS
-%%%   Environment Variable
-
--record(data, {version
-              , debug_info = false
-              , compile_ports
-              , erl_libs
-              , plugins
-              , root
-              , name}).
-
--define(HEX_REGISTRY_PATH, ".cache/rebar3/hex/default/registry").
-
-main(Args) ->
-    {ok, ArgData} = parse_args(Args),
-    {ok, RequiredData} = gather_required_data_from_the_environment(ArgData),
-    do_the_bootstrap(RequiredData).
-
--spec do_the_bootstrap(#data{}) -> ok.
-do_the_bootstrap(RequiredData) ->
-    ok = bootstrap_configs(RequiredData),
-    ok = bootstrap_plugins(RequiredData),
-    ok = bootstrap_libs(RequiredData).
-
-%% @doc
-%% Argument parsing is super simple only because we want to keep the
-%% dependencies minimal. For now there can be one entry on the
-%% command line: "debug-info"
--spec parse_args([string()]) -> #data{}.
-parse_args(Args0) ->
-    PossibleArgs = sets:from_list(["debug-info"]),
-    Args1 = sets:from_list(Args0),
-    Result = sets:subtract(Args1, PossibleArgs),
-    case sets:to_list(Result) of
-        [] ->
-            {ok, #data{debug_info = sets:is_element("debug-info", Args1)}};
-        UnknownArgs ->
-            io:format("Unexpected command line arguments passed in: ~p~n",
-                      [UnknownArgs]),
-            erlang:halt(120)
-    end.
-
-
--spec bootstrap_configs(#data{}) -> ok.
-bootstrap_configs(RequiredData)->
-    io:format("Boostrapping app and rebar configurations~n"),
-    ok = if_single_app_project_update_app_src_version(RequiredData),
-    ok = if_compile_ports_add_pc_plugin(RequiredData),
-    ok = if_debug_info_add(RequiredData).
-
--spec bootstrap_plugins(#data{}) -> ok.
-bootstrap_plugins(#data{plugins = Plugins}) ->
-    io:format("Bootstrapping rebar3 plugins~n"),
-    Target = "_build/default/plugins/",
-    Paths = string:tokens(Plugins, " "),
-    CopiableFiles =
-        lists:foldl(fun(Path, Acc) ->
-                            gather_dependency(Path) ++ Acc
-                    end, [], Paths),
-    lists:foreach(fun (Path) ->
-                          ok = link_app(Path, Target)
-                  end, CopiableFiles).
-
--spec bootstrap_libs(#data{}) -> ok.
-bootstrap_libs(#data{erl_libs = ErlLibs}) ->
-    io:format("Bootstrapping dependent libraries~n"),
-    Target = "_build/default/lib/",
-    Paths = string:tokens(ErlLibs, ":"),
-    CopiableFiles =
-        lists:foldl(fun(Path, Acc) ->
-                            gather_directory_contents(Path) ++ Acc
-                    end, [], Paths),
-    lists:foreach(fun (Path) ->
-                          ok = link_app(Path, Target)
-                  end, CopiableFiles).
-
--spec gather_dependency(string()) -> [{string(), string()}].
-gather_dependency(Path) ->
-    FullLibrary = filename:join(Path, "lib/erlang/lib/"),
-    case filelib:is_dir(FullLibrary) of
-        true ->
-            gather_directory_contents(FullLibrary);
-        false ->
-            [raw_hex(Path)]
-    end.
-
--spec raw_hex(string()) -> {string(), string()}.
-raw_hex(Path) ->
-    [_, Name] = re:split(Path, "-hex-source-"),
-    {Path, erlang:binary_to_list(Name)}.
-
--spec gather_directory_contents(string()) -> [{string(), string()}].
-gather_directory_contents(Path) ->
-    {ok, Names} = file:list_dir(Path),
-    lists:map(fun(AppName) ->
-                 {filename:join(Path, AppName), fixup_app_name(AppName)}
-              end, Names).
-
-%% @doc
-%% Makes a symlink from the directory pointed at by Path to a
-%% directory of the same name in Target. So if we had a Path of
-%% {`foo/bar/baz/bash`, `baz`} and a Target of `faz/foo/foos`, the symlink
-%% would be `faz/foo/foos/baz`.
--spec link_app({string(), string()}, string()) -> ok.
-link_app({Path, TargetFile}, TargetDir) ->
-    Target = filename:join(TargetDir, TargetFile),
-    make_symlink(Path, Target).
-
--spec make_symlink(string(), string()) -> ok.
-make_symlink(Path, TargetFile) ->
-    file:delete(TargetFile),
-    ok = filelib:ensure_dir(TargetFile),
-    io:format("Making symlink from ~s to ~s~n", [Path, TargetFile]),
-    ok = file:make_symlink(Path, TargetFile).
-
-%% @doc
-%% This takes an app name in the standard OTP <name>-<version> format
-%% and returns just the app name. Why? Because rebar doesn't
-%% respect OTP conventions in some cases.
--spec fixup_app_name(string()) -> string().
-fixup_app_name(FileName) ->
-    case string:tokens(FileName, "-") of
-        [Name] -> Name;
-        [Name, _Version] -> Name;
-        [Name, _Version, _Tag] -> Name
-    end.
-
--spec gather_required_data_from_the_environment(#data{}) -> {ok, #data{}}.
-gather_required_data_from_the_environment(ArgData) ->
-    {ok, ArgData#data{ version = guard_env("version")
-                     , erl_libs = get_env("ERL_LIBS", [])
-                     , plugins = get_env("buildPlugins", [])
-                     , root = code:root_dir()
-                     , name = guard_env("name")
-                     , compile_ports = nix2bool(get_env("compilePorts", ""))}}.
-
--spec nix2bool(any()) -> boolean().
-nix2bool("1") ->
-    true;
-nix2bool("") ->
-    false.
-
-get_env(Name) ->
-    os:getenv(Name).
-get_env(Name, Def) ->
-    case get_env(Name) of
-        false -> Def;
-        Val ->   Val
-    end.
-
--spec guard_env(string()) -> string().
-guard_env(Name) ->
-    case get_env(Name) of
-        false ->
-            stderr("Expected Environment variable ~s! Are you sure you are "
-                   "running in a Nix environment? Either a nix-build, "
-                   "nix-shell, etc?~n", [Name]),
-            erlang:halt(1);
-        Variable ->
-            Variable
-    end.
-
-%% @doc
-%% If debug info is set we need to add debug info to the list of compile options
-%%
--spec if_debug_info_add(#data{}) -> ok.
-if_debug_info_add(#data{debug_info = true}) ->
-    ConfigTerms = add_debug_info(read_rebar_config()),
-    Text = lists:map(fun(Term) -> io_lib:format("~tp.~n", [Term]) end,
-                     ConfigTerms),
-    file:write_file("rebar.config", Text);
-if_debug_info_add(_) ->
-    ok.
-
--spec add_debug_info([term()]) -> [term()].
-add_debug_info(Config) ->
-    ExistingOpts = case lists:keysearch(erl_opts, 1, Config) of
-                       {value, {erl_opts, ExistingOptsList}} -> ExistingOptsList;
-                       _ -> []
-                   end,
-    case lists:member(debug_info, ExistingOpts) of
-        true ->
-            Config;
-        false ->
-            lists:keystore(erl_opts, 1, Config,
-                           {erl_opts, [debug_info | ExistingOpts]})
-    end.
-
-
-%% @doc
-%% If the compile ports flag is set, rewrite the rebar config to
-%% include the 'pc' plugin.
--spec if_compile_ports_add_pc_plugin(#data{}) -> ok.
-if_compile_ports_add_pc_plugin(#data{compile_ports = true}) ->
-    ConfigTerms = add_pc_to_plugins(read_rebar_config()),
-    Text = lists:map(fun(Term) -> io_lib:format("~tp.~n", [Term]) end,
-                     ConfigTerms),
-    file:write_file("rebar.config", Text);
-if_compile_ports_add_pc_plugin(_) ->
-    ok.
-
--spec add_pc_to_plugins([term()]) -> [term()].
-add_pc_to_plugins(Config) ->
-    PluginList = case lists:keysearch(plugins, 1, Config) of
-                     {value, {plugins, ExistingPluginList}} -> ExistingPluginList;
-                     _ -> []
-                 end,
-    lists:keystore(plugins, 1, Config, {plugins, [pc | PluginList]}).
-
--spec read_rebar_config() -> [term()].
-read_rebar_config() ->
-    case file:consult("rebar.config") of
-        {ok, Terms} ->
-            Terms;
-        _ ->
-            stderr("Unable to read rebar config!", []),
-            erlang:halt(1)
-    end.
-
-
--spec if_single_app_project_update_app_src_version(#data{}) -> ok.
-if_single_app_project_update_app_src_version(#data{name = Name,
-                                                   version = Version}) ->
-    SrcFile = filename:join("src",
-                            lists:concat([Name, ".app.src"])),
-
-    case filelib:is_file(SrcFile) of
-        true ->
-            update_app_src_with_version(SrcFile, Version);
-        false ->
-            ok
-    end.
-
--spec update_app_src_with_version(string(), string()) -> ok.
-update_app_src_with_version(SrcFile, Version) ->
-    {ok, [{application, Name, Details}]} = file:consult(SrcFile),
-    NewDetails = lists:keyreplace(vsn, 1, Details, {vsn, Version}),
-    ok = file:write_file(SrcFile, io_lib:fwrite("~p.\n", [{application, Name, NewDetails}])).
-
-%% @doc
-%% Write the result of the format string out to stderr.
--spec stderr(string(), [term()]) -> ok.
-stderr(FormatStr, Args) ->
-    io:put_chars(standard_error, io_lib:format(FormatStr, Args)).
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar_ignore_deps.erl b/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar_ignore_deps.erl
new file mode 100644
index 000000000000..3e0ae67c4539
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/rebar_ignore_deps.erl
@@ -0,0 +1,43 @@
+%% This module, when loaded as a plugin, overrides the default `install_deps`
+%% provider and erases the dependencies from the rebar3 state, when
+%% REBAR_IGNORE_DEPS is true.
+
+-module(rebar_ignore_deps).
+
+-export([init/1, do/1, format_error/1]).
+
+init(State0) ->
+    case os:getenv("REBAR_IGNORE_DEPS", "") of
+        "" ->
+            {ok, State0};
+        _ ->
+            do_init(State0)
+    end.
+
+do_init(State0) ->
+    State1 = rebar_state:allow_provider_overrides(State0, true),
+    Provider = providers:create(
+                 [
+                  {name, install_deps}, %% override the default install_deps provider
+                  {module, ?MODULE},
+                  {bare, false},
+                  {deps, [app_discovery]},
+                  {example, undefined},
+                  {opts, []},
+                  {short_desc, ""},
+                  {desc, ""}
+                 ]),
+    State2 = rebar_state:add_provider(State1, Provider),
+    {ok, rebar_state:allow_provider_overrides(State2, false)}.
+
+do(State0) ->
+    io:format("Ignoring deps...~n"),
+    Profiles = rebar_state:current_profiles(State0),
+    State = lists:foldl(fun(P, Acc0) ->
+                                 Acc = rebar_state:set(Acc0, {deps, P}, []),
+                                 rebar_state:set(Acc, {parsed_deps, P}, [])
+                         end, State0, Profiles),
+    {ok, State}.
+
+format_error(Reason) ->
+    io_lib:format("~p", [Reason]).
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/skip-plugins.patch b/nixpkgs/pkgs/development/tools/build-managers/rebar3/skip-plugins.patch
new file mode 100644
index 000000000000..3ee1656c9ede
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/skip-plugins.patch
@@ -0,0 +1,54 @@
+diff --git a/src/rebar_plugins.erl b/src/rebar_plugins.erl
+index f2d22233..c61fa553 100644
+--- a/src/rebar_plugins.erl
++++ b/src/rebar_plugins.erl
+@@ -106,31 +106,9 @@ handle_plugins(Profile, Plugins, State, Upgrade) ->
+     State3 = rebar_state:set(State2, deps_dir, DepsDir),
+     rebar_state:lock(State3, Locks).
+ 
+-handle_plugin(Profile, Plugin, State, Upgrade) ->
++handle_plugin(_Profile, Plugin, State, _Upgrade) ->
+     try
+-        {Apps, State2} = rebar_prv_install_deps:handle_deps_as_profile(Profile, State, [Plugin], Upgrade),
+-        {no_cycle, Sorted} = rebar_prv_install_deps:find_cycles(Apps),
+-        ToBuild = rebar_prv_install_deps:cull_compile(Sorted, []),
+-
+-        %% Add already built plugin deps to the code path
+-        ToBuildPaths = [rebar_app_info:ebin_dir(A) || A <- ToBuild],
+-        PreBuiltPaths = [Ebin || A <- Apps,
+-                                 Ebin <- [rebar_app_info:ebin_dir(A)],
+-                                 not lists:member(Ebin, ToBuildPaths)],
+-        code:add_pathsa(PreBuiltPaths),
+-
+-        %% Build plugin and its deps
+-        build_plugins(ToBuild, Apps, State2),
+-
+-        %% Add newly built deps and plugin to code path
+-        State3 = rebar_state:update_all_plugin_deps(State2, Apps),
+-        NewCodePaths = [rebar_app_info:ebin_dir(A) || A <- ToBuild],
+-
+-        %% Store plugin code paths so we can remove them when compiling project apps
+-        State4 = rebar_state:update_code_paths(State3, all_plugin_deps, PreBuiltPaths++NewCodePaths),
+-        rebar_paths:set_paths([plugins], State4),
+-
+-        {plugin_providers(Plugin), State4}
++        {plugin_providers(Plugin), State}
+     catch
+         ?WITH_STACKTRACE(C,T,S)
+             ?DEBUG("~p ~p ~p", [C, T, S]),
+@@ -138,15 +116,6 @@ handle_plugin(Profile, Plugin, State, Upgrade) ->
+             {[], State}
+     end.
+ 
+-build_plugins(MustBuildApps, AllApps, State) ->
+-    State1 = rebar_state:deps_to_build(State, MustBuildApps),
+-    State2 = rebar_state:all_deps(State1, AllApps),
+-    State3 = rebar_state:set(State2, deps_dir, ?DEFAULT_PLUGINS_DIR),
+-    {Args, Extra} = rebar_state:command_parsed_args(State),
+-    State4 = rebar_state:command_parsed_args(State3, {[{deps_only, true}|Args], Extra}),
+-    rebar_prv_compile:do(State4),
+-    ok.
+-
+ plugin_providers({Plugin, _, _, _}) when is_atom(Plugin) ->
+     validate_plugin(Plugin);
+ plugin_providers({Plugin, _, _}) when is_atom(Plugin) ->
diff --git a/nixpkgs/pkgs/development/tools/build-managers/sbt-extras/default.nix b/nixpkgs/pkgs/development/tools/build-managers/sbt-extras/default.nix
index b49e5f7558a9..76548e427d23 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/sbt-extras/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/sbt-extras/default.nix
@@ -3,14 +3,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt-extras";
-  rev = "a76f1f15e6ec39d886f8bf07d5bdfaf70cdc62d8";
-  version = "2021-04-06";
+  rev = "e5a5442acf36f047a75b397d7349e6fe6835ef24";
+  version = "2021-04-26";
 
   src = fetchFromGitHub {
     owner = "paulp";
     repo = "sbt-extras";
     inherit rev;
-    sha256 = "0zmhn8nvzrbw047g5z4q2slp0wdg6pvfh2pqnpwcq1hscf7dvz8f";
+    sha256 = "0g7wyh0lhhdch7d6p118lwywy1lcdr1z631q891qhv624jnb1477";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix b/nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix
index 7b9c6bca7e2b..89628b81fbc2 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.5.1";
+  version = "1.5.3";
 
   src = fetchurl {
     url = "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz";
-    sha256 = "0dsbqipr549awv584fyl227s1gknlpsf5krp990w7w3bbxl3avb7";
+    sha256 = "10kIQNy+3V1SD4uEZs/BJ4E6bTCRV3wjBN8gw9jr9VQ=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/tools/build-managers/scons/common.nix b/nixpkgs/pkgs/development/tools/build-managers/scons/common.nix
index 8b5b608fdf39..6af302851234 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/scons/common.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/scons/common.nix
@@ -43,6 +43,6 @@ python3Packages.buildPythonApplication rec {
     changelog = "https://raw.githubusercontent.com/SConsProject/scons/rel_${version}/src/CHANGES.txt";
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = [ maintainers.primeos ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/build-managers/tup/default.nix b/nixpkgs/pkgs/development/tools/build-managers/tup/default.nix
index 85bf919f778f..403adaff89ed 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/tup/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/tup/default.nix
@@ -4,37 +4,41 @@ let
   fuse = if stdenv.isDarwin then macfuse-stubs else fuse3;
 in stdenv.mkDerivation rec {
   pname = "tup";
-  version = "0.7.10";
+  version = "0.7.11";
   outputs = [ "bin" "man" "out" ];
 
   src = fetchFromGitHub {
     owner = "gittup";
     repo = "tup";
     rev = "v${version}";
-    sha256 = "1qd07h4wi0743l7z2vybfvhwp61g2p2pc5qhl40672ryl24nvd1d";
+    hash = "sha256-Q2Y5ErcfhLChi9Wezn8+7eNXYX2UXW1fBOqEclmgzOo=";
   };
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ fuse pcre ];
 
   configurePhase = ''
-    sed -i 's/`git describe`/v${version}/g' src/tup/link.sh
-    sed -i 's/pcre-confg/pkg-config pcre/g' Tupfile Tuprules.tup
+    substituteInPlace  src/tup/link.sh --replace '`git describe' '`echo ${version}'
+    substituteInPlace Tuprules.tup --replace 'pcre-config' 'pkg-config libpcre'
   '';
 
   # Regular tup builds require fusermount to have suid, which nix cannot
   # currently provide in a build environment, so we bootstrap and use 'tup
   # generate' instead
   buildPhase = ''
+    runHook preBuild
     ./build.sh
     ./build/tup init
     ./build/tup generate script.sh
     ./script.sh
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
     install -D tup -t $bin/bin/
     install -D tup.1 -t $man/share/man/man1/
+    runHook postInstall
   '';
 
   setupHook = ./setup-hook.sh;
diff --git a/nixpkgs/pkgs/development/tools/buildah/default.nix b/nixpkgs/pkgs/development/tools/buildah/default.nix
index b1491bfa481a..e3828eb7f14c 100644
--- a/nixpkgs/pkgs/development/tools/buildah/default.nix
+++ b/nixpkgs/pkgs/development/tools/buildah/default.nix
@@ -14,21 +14,17 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.20.1";
+  version = "1.21.1";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    sha256 = "sha256-nlZblUPS0678dR0hyp+V9uH/nHL9YH81+O1Zzq8T8Pw=";
+    sha256 = "sha256-Wes52lTcv3Jb6gJeUS6fmf4Nee3qEcc3SibaTFvQ8sQ=";
   };
 
   outputs = [ "out" "man" ];
 
-  patches = [
-    ../../../applications/virtualization/podman/remove-unconfigured-runtime-warn.patch
-  ];
-
   vendorSha256 = null;
 
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/buildkit/default.nix b/nixpkgs/pkgs/development/tools/buildkit/default.nix
index 806eb7c5b0ed..f6eb7aef1ed5 100644
--- a/nixpkgs/pkgs/development/tools/buildkit/default.nix
+++ b/nixpkgs/pkgs/development/tools/buildkit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "buildkit";
-  version = "0.8.2";
+  version = "0.8.3";
 
   goPackagePath = "github.com/moby/buildkit";
   subPackages = [ "cmd/buildctl" ] ++ lib.optionals stdenv.isLinux [ "cmd/buildkitd" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "moby";
     repo = "buildkit";
     rev = "v${version}";
-    sha256 = "sha256-aPVroqpR4ynfHhjJ6jJX6y5cdgmoUny3A8GBhnooOeo=";
+    sha256 = "sha256-dHtGxugTtxHcfZHMIHinlcH05ss7zT/+Ll1WboAhw9o=";
   };
 
   buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/version.Version=${version} -X ${goPackagePath}/version.Revision=${src.rev}" ];
diff --git a/nixpkgs/pkgs/development/tools/bunyan-rs/default.nix b/nixpkgs/pkgs/development/tools/bunyan-rs/default.nix
new file mode 100644
index 000000000000..12ced94c81b7
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/bunyan-rs/default.nix
@@ -0,0 +1,25 @@
+{ rustPlatform
+, fetchFromGitHub
+, lib
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "bunyan-rs";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "LukeMathWalker";
+    repo = "bunyan";
+    rev = "v${version}";
+    sha256 = "sha256-Rj0VoJMcl8UBuVNu88FwTNF1GBx8IEXxwLL8sGz9kVM=";
+  };
+
+  cargoSha256 = "sha256-UZAiXLbRhr2J7QFf7x+JbEjc6p2AoVHYMgyARuwaB7E=";
+
+  meta = with lib; {
+    description = "A CLI to pretty print logs in bunyan format (Rust port of the original JavaScript bunyan CLI)";
+    homepage = "https://github.com/LukeMathWalker/bunyan";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ netcrns ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/cargo-flamegraph/default.nix b/nixpkgs/pkgs/development/tools/cargo-flamegraph/default.nix
index 3bdbb086d1dd..65a49551035d 100644
--- a/nixpkgs/pkgs/development/tools/cargo-flamegraph/default.nix
+++ b/nixpkgs/pkgs/development/tools/cargo-flamegraph/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-IpmvFUWNaFQ1ls7u625vvj1TnRYXR+X1mAGdBcwRFLk=";
   };
 
-  cargoSha256 = "sha256-2YHkEQZqjKEvg4h9kIVhqmgq+SMF1c3r8UbSQivZh7w=";
+  cargoSha256 = "sha256-ccy5ZFS2Gp4Dwo8gsS6vzHHO1siicOp7uZTsCh6SKsM=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ];
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/tools/cargo-web/default.nix b/nixpkgs/pkgs/development/tools/cargo-web/default.nix
index c85ef52564a4..2c35e951cda1 100644
--- a/nixpkgs/pkgs/development/tools/cargo-web/default.nix
+++ b/nixpkgs/pkgs/development/tools/cargo-web/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1dl5brj5fnmxmwl130v36lvy4j64igdpdvjwmxw3jgg2c6r6b7cd";
   };
 
-  cargoSha256 = "0i9xp7vd1rp6xgkbbrspm3qq4hxwfwa00di3k73z1x64d3d8r5fm";
+  cargoSha256 = "0q7yxvvngfvn4s889qzp1qnsw2c6qy2ryv9vz9cxhmqidx4dg4va";
 
   nativeBuildInputs = [ openssl perl pkg-config ];
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices Security ];
diff --git a/nixpkgs/pkgs/development/tools/castxml/default.nix b/nixpkgs/pkgs/development/tools/castxml/default.nix
index f3d9b74181aa..a233288a28e8 100644
--- a/nixpkgs/pkgs/development/tools/castxml/default.nix
+++ b/nixpkgs/pkgs/development/tools/castxml/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, clang-unwrapped
 , cmake
 , libclang
 , libffi
@@ -26,22 +25,22 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake
-    llvm
+    llvm.dev
   ] ++ lib.optionals (withManual || withHTML) [
     sphinx
   ];
 
   cmakeFlags = [
-    "-DCLANG_RESOURCE_DIR=${clang-unwrapped}/lib/clang/${lib.getVersion clang-unwrapped}/"
+    "-DCLANG_RESOURCE_DIR=${libclang.dev}/"
     "-DSPHINX_HTML=${if withHTML then "ON" else "OFF"}"
     "-DSPHINX_MAN=${if withManual then "ON" else "OFF"}"
   ];
 
   buildInputs = [
-    clang-unwrapped
     libffi
     libxml2
     zlib
+    libclang
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/tools/chit/default.nix b/nixpkgs/pkgs/development/tools/chit/default.nix
index ac8f15a41588..dd37efb506d6 100644
--- a/nixpkgs/pkgs/development/tools/chit/default.nix
+++ b/nixpkgs/pkgs/development/tools/chit/default.nix
@@ -15,7 +15,7 @@ buildRustPackage rec {
     sha256 = "0iixczy3cad44j2d7zzj8f3lnmp4jwnb0snmwfgiq3vj9wrn28pz";
   };
 
-  cargoSha256 = "1w25k3bqmmcrhpkw510vbwph0rfmrzi2wby0z2rz1q4k1f9k486m";
+  cargoSha256 = "1y6k24p4m67v5773rzid2r0jwxp9piggrp0462z446hbcam2r4gd";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
   buildInputs = []
diff --git a/nixpkgs/pkgs/development/tools/clang-tools/default.nix b/nixpkgs/pkgs/development/tools/clang-tools/default.nix
index 498310d4324f..ba829f2c41df 100644
--- a/nixpkgs/pkgs/development/tools/clang-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/clang-tools/default.nix
@@ -1,22 +1,22 @@
 { lib, stdenv, llvmPackages }:
 
 let
-  clang = llvmPackages.clang-unwrapped;
+  unwrapped = llvmPackages.clang-unwrapped;
 
 in stdenv.mkDerivation {
   pname = "clang-tools";
-  version = lib.getVersion clang;
+  version = lib.getVersion unwrapped;
 
   dontUnpack = true;
 
+  clang = llvmPackages.clang;
+  inherit unwrapped;
+
   installPhase = ''
     runHook preInstall
 
     mkdir -p $out/bin
-    export libc_includes="${lib.getDev stdenv.cc.libc}/include"
-    export libcpp_includes="${llvmPackages.libcxx}/include/c++/v1"
 
-    export clang=${clang}
     substituteAll ${./wrapper} $out/bin/clangd
     chmod +x $out/bin/clangd
     for tool in \
@@ -32,7 +32,7 @@ in stdenv.mkDerivation {
     runHook postInstall
   '';
 
-  meta = clang.meta // {
+  meta = unwrapped.meta // {
     description = "Standalone command line tools for C++ development";
     maintainers = with lib.maintainers; [ aherrmann ];
   };
diff --git a/nixpkgs/pkgs/development/tools/clang-tools/wrapper b/nixpkgs/pkgs/development/tools/clang-tools/wrapper
index 53c99a67f2d3..eebc152d11b1 100644..100755
--- a/nixpkgs/pkgs/development/tools/clang-tools/wrapper
+++ b/nixpkgs/pkgs/development/tools/clang-tools/wrapper
@@ -1,20 +1,27 @@
 #!/bin/sh
 
 buildcpath() {
-  local path
+  local path after
   while (( $# )); do
     case $1 in
         -isystem)
             shift
             path=$path${path:+':'}$1
+            ;;
+        -idirafter)
+            shift
+            after=$after${after:+':'}$1
+            ;;
     esac
     shift
   done
-  echo $path
+  echo $path${after:+':'}$after
 }
 
-export CPATH=${CPATH}${CPATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE})
-export CPATH=${CPATH}${CPATH:+':'}@libc_includes@
-export CPLUS_INCLUDE_PATH=${CPATH}${CPATH:+':'}@libcpp_includes@
+export CPATH=${CPATH}${CPATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE} \
+                                               $(<@clang@/nix-support/libc-cflags))
+export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}${CPLUS_INCLUDE_PATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE} \
+                                                                                      $(<@clang@/nix-support/libcxx-cxxflags) \
+                                                                                      $(<@clang@/nix-support/libc-cflags))
 
-exec -a "$0" @clang@/bin/$(basename $0) "$@"
+exec -a "$0" @unwrapped@/bin/$(basename $0) "$@"
diff --git a/nixpkgs/pkgs/development/tools/clog-cli/default.nix b/nixpkgs/pkgs/development/tools/clog-cli/default.nix
index c3b477e3ea36..395cd7979d61 100644
--- a/nixpkgs/pkgs/development/tools/clog-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/clog-cli/default.nix
@@ -13,7 +13,7 @@ buildRustPackage rec {
     sha256 = "1wxglc4n1dar5qphhj5pab7ps34cjr7jy611fwn72lz0f6c7jp3z";
   };
 
-  cargoSha256 = "1s7g9mcjyp0pjjxma1mb290fi7fk54qy2khh1zksxhr4d3mciv08";
+  cargoSha256 = "0xcgzlcmlk5ycw4kklprm8lzs72j2zp8xm3dcpy606z4r9qn0c6a";
 
   meta = {
     description = "Generate changelogs from local git metadata";
diff --git a/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix b/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
index 6254ec0a2c21..b947fc1ebfe2 100644
--- a/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
+++ b/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloud-nuke";
-  version = "0.1.29";
+  version = "0.1.30";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RPlEFajIjEBKdL97xjQP6r3AAcCQlxw2Il8nkSjxa+k=";
+    sha256 = "sha256-uQj14arxDPc8/k1Cvp3T6hqjln30NFk9MzvYy8tAiJ8=";
   };
 
   vendorSha256 = "sha256-pl3dLisu4Oc77kgfuteKbsZaDzrHo1wUigZEkM4081Q=";
diff --git a/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix b/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix
new file mode 100644
index 000000000000..8de2bc1aeed2
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix
@@ -0,0 +1,43 @@
+{ python3
+, lib
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "cloudsmith-cli";
+  version = "0.26.0";
+
+  format = "wheel";
+
+  src = python3.pkgs.fetchPypi {
+    pname = "cloudsmith_cli";
+    inherit format version;
+    sha256 = "c2W5+z+X4oRZxlNhB6for4mN4NeBX9MtEtmXhU5sz4A=";
+  };
+
+  propagatedBuildInputs = with python3.pkgs; [
+    click
+    click-configfile
+    click-didyoumean
+    click-spinner
+    cloudsmith-api
+    colorama
+    future
+    requests
+    requests_toolbelt
+    semver
+    simplejson
+    six
+    setuptools # needs pkg_resources
+  ];
+
+  # Wheels have no tests
+  doCheck = false;
+
+  meta = {
+    homepage = "https://help.cloudsmith.io/docs/cli/";
+    description = "Cloudsmith Command Line Interface";
+    maintainers = with lib.maintainers; [ jtojnar ];
+    license = lib.licenses.asl20;
+    platforms = with lib.platforms; unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/clpm/default.nix b/nixpkgs/pkgs/development/tools/clpm/default.nix
index ae2e1011ae25..9d3ddace37eb 100644
--- a/nixpkgs/pkgs/development/tools/clpm/default.nix
+++ b/nixpkgs/pkgs/development/tools/clpm/default.nix
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
   buildPhase = ''
     runHook preBuild
 
-    ln -s ${openssl.out}/lib/libcrypto.so.* .
-    ln -s ${openssl.out}/lib/libssl.so.* .
+    ln -s ${openssl.out}/lib/libcrypto*${stdenv.hostPlatform.extensions.sharedLibrary}* .
+    ln -s ${openssl.out}/lib/libssl*${stdenv.hostPlatform.extensions.sharedLibrary}* .
     common-lisp.sh --script scripts/build.lisp
 
     runHook postBuild
diff --git a/nixpkgs/pkgs/development/tools/cmake-language-server/default.nix b/nixpkgs/pkgs/development/tools/cmake-language-server/default.nix
index 2c85890e70bf..0540e5785f6e 100644
--- a/nixpkgs/pkgs/development/tools/cmake-language-server/default.nix
+++ b/nixpkgs/pkgs/development/tools/cmake-language-server/default.nix
@@ -16,11 +16,15 @@ buildPythonApplication rec {
     sha256 = "0vz7bjxkk0phjhz3h9kj6yr7wnk3g7lqmkqraa0kw12mzcfck837";
   };
 
-  # can be removed after v0.1.2
-  patches = lib.optional stdenv.isDarwin (fetchpatch {
-    url = "https://github.com/regen100/cmake-language-server/commit/0ec120f39127f25898ab110b43819e3e9becb8a3.patch";
-    sha256 = "1xbmarvsvzd61fnlap4qscnijli2rw2iqr7cyyvar2jd87z6sfp0";
-  });
+  patches = [
+    ./disable-test-timeouts.patch
+  ] ++ lib.optionals stdenv.isDarwin [
+    # can be removed after v0.1.2
+    (fetchpatch {
+      url = "https://github.com/regen100/cmake-language-server/commit/0ec120f39127f25898ab110b43819e3e9becb8a3.patch";
+      sha256 = "1xbmarvsvzd61fnlap4qscnijli2rw2iqr7cyyvar2jd87z6sfp0";
+    })
+  ];
 
   postPatch = ''
     substituteInPlace pyproject.toml \
@@ -38,6 +42,6 @@ buildPythonApplication rec {
     homepage = "https://github.com/regen100/cmake-language-server";
     description = "CMake LSP Implementation";
     license = licenses.mit;
-    maintainers = with maintainers; [ metadark ];
+    maintainers = with maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch b/nixpkgs/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch
new file mode 100644
index 000000000000..febe7cf77e71
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cmake-language-server/disable-test-timeouts.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/test_server.py b/tests/test_server.py
+index c0777f5..1184fb3 100644
+--- a/tests/test_server.py
++++ b/tests/test_server.py
+@@ -11,7 +11,7 @@ from pygls.types import (CompletionContext, CompletionParams,
+                          InitializeParams, Position, TextDocumentIdentifier,
+                          TextDocumentItem, TextDocumentPositionParams)
+ 
+-CALL_TIMEOUT = 2
++CALL_TIMEOUT = None
+ 
+ 
+ def _init(client: LanguageServer, root: Path):
diff --git a/nixpkgs/pkgs/development/tools/conftest/default.nix b/nixpkgs/pkgs/development/tools/conftest/default.nix
index 4c6cbbbe6b04..833f2f84b058 100644
--- a/nixpkgs/pkgs/development/tools/conftest/default.nix
+++ b/nixpkgs/pkgs/development/tools/conftest/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "conftest";
-  version = "0.24.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "conftest";
     rev = "v${version}";
-    sha256 = "sha256-iFxRZq/8TW7Df+aAc5IN+FAXU4kvbDiHWiFOlWMmCY0=";
+    sha256 = "sha256-pxPqBUOsXbP9giaV5NS3a6Z6auN4vUTIrIKcNh8xURU=";
   };
 
-  vendorSha256 = "sha256-LvaSs1y1CEP+cJc0vqTh/8MezmtuFAbfMgqloAjLZl8=";
+  vendorSha256 = "sha256-y8DRrthaUzMKxFbdbASvqsRMT+jex7jMJA6g7YF/VxI=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index 4a402111b086..a8d35a44bb96 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -1,17 +1,18 @@
 { fetchFromGitHub, lib, buildGoModule,
-  makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }:
+  makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep,
+  nixosTests }:
 buildGoModule rec {
   name = "buildkite-agent-${version}";
-  version = "3.28.1";
+  version = "3.30.0";
 
   src = fetchFromGitHub {
     owner = "buildkite";
     repo = "agent";
     rev = "v${version}";
-    sha256 = "sha256-5YOXYOAh/0fOagcqdK2IEwm5XDCxyfTeTzwBGtsQRCs=";
+    sha256 = "sha256-U2UnT41IpICy08jPQkr25wjAL1kBxiQCD4lysYnLAPk=";
   };
 
-  vendorSha256 = "sha256-3UXZxeiL0WO4X/3/hW8ubL1TormGbn9X/k0PX+/cLuM=";
+  vendorSha256 = "sha256-n3XRxpEKjHf7L7fcGscWTVKBtot9waZbLoS9cG0kHfI=";
 
   postPatch = ''
     substituteInPlace bootstrap/shell/shell.go --replace /bin/bash ${bash}/bin/bash
@@ -30,6 +31,10 @@ buildGoModule rec {
       --prefix PATH : '${lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}'
   '';
 
+  passthru.tests = {
+    smoke-test = nixosTests.buildkite-agents;
+  };
+
   meta = with lib; {
     description = "Build runner for buildkite.com";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/fly/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/fly/default.nix
index 76f0d86ae5c4..a4769b10b352 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/fly/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/fly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "fly";
-  version = "7.2.0";
+  version = "7.3.1";
 
   src = fetchFromGitHub {
     owner = "concourse";
     repo = "concourse";
     rev = "v${version}";
-    sha256 = "sha256-uKzN5h2gJqsD25ETgfYqu4ijC2b0ZLGdMGTiliFOatA=";
+    sha256 = "sha256-JtzJDbln+n05oJjA/ydZWaH4dIPLL/ZsNg+Gr+YBcng=";
   };
 
-  vendorSha256 = "sha256-2PvXylOPVA0/mIQhhKv8o65bfAxkvKP6FPunzTWwVtI=";
+  vendorSha256 = "sha256-30rrRkPIH0sr8koKRLs1Twe6Z55+lr9gkgUDrY+WOTw=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index d03d59edb1fc..ce3264e1adde 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl }:
 
 let
-  version = "13.11.0";
+  version = "13.12.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-x86_64.tar.xz";
-    sha256 = "1vmj7vxz1a4js9kqz7mm6xgnkmb37c1jbx2lwsq2qkrybkxfcw8k";
+    sha256 = "0m0r295520jy45wn8jw3jzhiixl4c6yrfx7gvgbd4c1v4y8ivrci";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz";
-    sha256 = "1c1pywz7ylaysplvq1m15v7rf1sgdkh9scbqklzcm55fjk128lif";
+    sha256 = "0syfggplp19bbmhhpyc17h0f1dii9hc6n04q483l0xdk7sv39fwx";
   };
 in
 buildGoPackage rec {
@@ -30,7 +30,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "07jqsxac50xwmhlv0nbnn098290nkpsmrxw872yh67n1s9gqfd27";
+    sha256 = "01ajl7zka5fnph5zcnp3z6ir8xr81wzkam69gxazwjb3nbs642an";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix
index ccb8b4eba656..bc464c2024e4 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix
@@ -1,4 +1,4 @@
-{ gnutar, gzip, git, haskell, haskellPackages, lib, makeWrapper, runc, stdenv }:
+{ gnutar, gzip, git, haskell, haskellPackages, lib, makeWrapper, nixos, runc, stdenv }:
 let
   inherit (haskell.lib) overrideCabal addBuildDepends;
   inherit (lib) makeBinPath;
@@ -16,8 +16,16 @@ let
           makeWrapper $out/libexec/hercules-ci-agent $out/bin/hercules-ci-agent --prefix PATH : ${makeBinPath bundledBins}
         '';
       });
-in pkg // {
-    meta = pkg.meta // {
+in pkg.overrideAttrs (o: {
+    meta = o.meta // {
       position = toString ./default.nix + ":1";
     };
-  }
+    passthru = o.passthru // {
+      # Does not test the package, but evaluation of the related NixOS module.
+      tests.nixos-minimal-config = nixos {
+        boot.loader.grub.enable = false;
+        fileSystems."/".device = "bogus";
+        services.hercules-ci-agent.enable = true;
+      };
+    };
+  })
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 5373b2d359ba..415b22894cbe 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jenkins";
-  version = "2.277.3";
+  version = "2.289.1";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "1awixb55bkpqcvf2s59aph3kxdd70g9x1a5s5kly33kwrplcf8iy";
+    sha256 = "1wkm1y2bj245b9i51vhns9qfxc6xm44hg60vhgmswndcy5pwrybh";
   };
 
   buildCommand = ''
diff --git a/nixpkgs/pkgs/development/tools/convco/default.nix b/nixpkgs/pkgs/development/tools/convco/default.nix
index c152197358c9..44445f86752a 100644
--- a/nixpkgs/pkgs/development/tools/convco/default.nix
+++ b/nixpkgs/pkgs/development/tools/convco/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-eWe7oTWl7QfIqq3GfMILi5S8zUi03ER1Mzfr8hqUvgw=";
   };
 
-  cargoSha256 = "sha256-hAUg2mh4VyyjkBRBs5YWi14yeGlMXxt+cdoz5xOS+1A=";
+  cargoSha256 = "sha256-RuClZ+ChP7d40e9nr1Lg8R0F7rbFbBse79V9Y1AQn3o=";
 
   nativeBuildInputs = [ openssl perl pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/cue/default.nix b/nixpkgs/pkgs/development/tools/cue/default.nix
index c974286ab99f..5170297a4330 100644
--- a/nixpkgs/pkgs/development/tools/cue/default.nix
+++ b/nixpkgs/pkgs/development/tools/cue/default.nix
@@ -2,28 +2,28 @@
 
 buildGoModule rec {
   pname = "cue";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchgit {
     url = "https://cue.googlesource.com/cue";
     rev = "v${version}";
-    sha256 = "1h3809xgmn7dr57i3cnifr7r555i3zh3kfsv0gxa9nd7068w19xm";
+    sha256 = "sha256-rcGEl+CMFyxZKsOKhVimhv5/ONo3xS6FjgKModZGR2o=";
   };
 
-  vendorSha256 = "10kvss23a8a6q26a7h1bqc3i0nskm2halsvc9wdv9zf9qsz7zjkp";
+  vendorSha256 = "sha256-eSKVlBgnHR1R0j1lNwtFoIgRuj8GqoMbvuBl/N1SanY=";
 
   doCheck = false;
 
   subPackages = [ "cmd/cue" ];
 
   buildFlagsArray = [
-    "-ldflags=-X cuelang.org/go/cmd/cue/cmd.version=${version}"
+    "-ldflags=-s -w -X cuelang.org/go/cmd/cue/cmd.version=${version}"
   ];
 
   meta = {
     description = "A data constraint language which aims to simplify tasks involving defining and using data";
     homepage = "https://cuelang.org/";
-    maintainers = with lib.maintainers; [ solson ];
+    maintainers = [];
     license = lib.licenses.asl20;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/database/liquibase/default.nix b/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
index 32ab88bf4128..c4393821b7de 100644
--- a/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "liquibase";
-  version = "4.3.2";
+  version = "4.3.5";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-sc/W4N+pd1bhLiyQLqm0j2o/RviT8iKzBZcD0GRDqqE=";
+    sha256 = "sha256-XOYq+p76XFt7j4oxMClZox5wsaXuV5ovcB6kZJhMBlU=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/database/movine/default.nix b/nixpkgs/pkgs/development/tools/database/movine/default.nix
new file mode 100644
index 000000000000..fd5debcb9a20
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/database/movine/default.nix
@@ -0,0 +1,54 @@
+{ rustPlatform
+, fetchFromGitHub
+, lib
+, stdenv
+, pkg-config
+, postgresql
+, sqlite
+, openssl
+, Security
+, libiconv
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "movine";
+  version = "0.11.0";
+
+  src = fetchFromGitHub {
+    owner = "byronwasti";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0rms8np8zd23xzrd5avhp2q1ndhdc8f49lfwpff9h0slw4rnzfnj";
+  };
+
+  cargoSha256 = "sha256-4ghfenwmauR4Ft9n7dvBflwIMXPdFq1vh6FpIegHnZk=";
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ postgresql sqlite ] ++ (
+    if !stdenv.isDarwin then [ openssl ] else [ Security libiconv ]
+  );
+
+  meta = with lib; {
+    description = "A migration manager written in Rust, that attempts to be smart yet minimal";
+    homepage = "https://github.com/byronwasti/movine";
+    license = licenses.mit;
+    longDescription = ''
+      Movine is a simple database migration manager that aims to be compatible
+      with real-world migration work. Many migration managers get confused
+      with complicated development strategies for migrations. Oftentimes
+      migration managers do not warn you if the SQL saved in git differs from
+      what was actually run on the database. Movine solves this issue by
+      keeping track of the unique hashes for the <literal>up.sql</literal> and
+      <literal>down.sql</literal> for each migration, and provides tools for
+      fixing issues. This allows users to easily keep track of whether their
+      local migration history matches the one on the database.
+
+      This project is currently in early stages.
+
+      Movine does not aim to be an ORM.
+      Consider <link xling:href="https://diesel.rs/">diesel</link> instead if
+      you want an ORM.
+    '';
+    maintainers = with maintainers; [ netcrns ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/database/pgsync/Gemfile.lock b/nixpkgs/pkgs/development/tools/database/pgsync/Gemfile.lock
index 5ee736430af5..d147a5a74546 100644
--- a/nixpkgs/pkgs/development/tools/database/pgsync/Gemfile.lock
+++ b/nixpkgs/pkgs/development/tools/database/pgsync/Gemfile.lock
@@ -3,12 +3,12 @@ GEM
   specs:
     parallel (1.20.1)
     pg (1.2.3)
-    pgsync (0.6.6)
+    pgsync (0.6.7)
       parallel
       pg (>= 0.18.2)
       slop (>= 4.8.2)
       tty-spinner
-    slop (4.8.2)
+    slop (4.9.0)
     tty-cursor (0.7.1)
     tty-spinner (0.9.3)
       tty-cursor (~> 0.7)
diff --git a/nixpkgs/pkgs/development/tools/database/pgsync/gemset.nix b/nixpkgs/pkgs/development/tools/database/pgsync/gemset.nix
index 18a833970722..0240300ff052 100644
--- a/nixpkgs/pkgs/development/tools/database/pgsync/gemset.nix
+++ b/nixpkgs/pkgs/development/tools/database/pgsync/gemset.nix
@@ -25,20 +25,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wjvcfsgm7xxhb2lxil19qjxvvihqxbjd2ykmm5d43p0h2l9wvxr";
+      sha256 = "0kn7cf048zwbap0mifdpzz8if1ah803vgzbx09dfgjwgvfx5w5w6";
       type = "gem";
     };
-    version = "0.6.6";
+    version = "0.6.7";
   };
   slop = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05d1xv8r9cmd0mmlqpa853yzd7xhcyha063w1g8dpf84scxbxmd3";
+      sha256 = "09n6sj4p3b43qq6jmghr9zhgny6719bpca8j6rxnlbq9bsnrd8rj";
       type = "gem";
     };
-    version = "4.8.2";
+    version = "4.9.0";
   };
   tty-cursor = {
     groups = ["default"];
diff --git a/nixpkgs/pkgs/development/tools/database/webdis/default.nix b/nixpkgs/pkgs/development/tools/database/webdis/default.nix
index 042f5a1aa6d6..226fc049e081 100644
--- a/nixpkgs/pkgs/development/tools/database/webdis/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/webdis/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "webdis";
-  version = "0.1.12";
+  version = "0.1.15";
 
   src = fetchFromGitHub {
     owner = "nicolasff";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pppA/Uyz1ge7UOG1PrqpTQC5sSGMWPw0J+CtaoZpOCM=";
+    sha256 = "sha256-ViU/CKkmBY8WwQq/oJ2/qETqr2k8JNFtNPhozw5BmEc=";
   };
 
   buildInputs = [ hiredis http-parser jansson libevent ];
diff --git a/nixpkgs/pkgs/development/tools/delve/default.nix b/nixpkgs/pkgs/development/tools/delve/default.nix
index f0926e23aa73..9a0d19840e46 100644
--- a/nixpkgs/pkgs/development/tools/delve/default.nix
+++ b/nixpkgs/pkgs/development/tools/delve/default.nix
@@ -1,8 +1,8 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoPackage, fetchFromGitHub, makeWrapper }:
 
 buildGoPackage rec {
   pname = "delve";
-  version = "1.6.0";
+  version = "1.6.1";
 
   goPackagePath = "github.com/go-delve/delve";
   excludedPackages = "\\(_fixtures\\|scripts\\|service/test\\)";
@@ -11,9 +11,19 @@ buildGoPackage rec {
     owner = "go-delve";
     repo = "delve";
     rev = "v${version}";
-    sha256 = "sha256-krNCS5GaEMuwQ9XS8w0myL+xZX6goNNNBgUiRVoZPIU=";
+    sha256 = "sha256-bTVCasemE8Vyjcs8wZBiiXEsW3UBndjpPQ5bi+4vQkw=";
   };
 
+  subPackages = [ "cmd/dlv" ];
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    # fortify source breaks build since delve compiles with -O0
+    wrapProgram $out/bin/dlv \
+      --prefix disableHardening " " fortify
+  '';
+
   meta = with lib; {
     description = "debugger for the Go programming language";
     homepage = "https://github.com/derekparker/delve";
diff --git a/nixpkgs/pkgs/development/tools/devpi-client/default.nix b/nixpkgs/pkgs/development/tools/devpi-client/default.nix
index 5bca87337714..11fa78f1f02e 100644
--- a/nixpkgs/pkgs/development/tools/devpi-client/default.nix
+++ b/nixpkgs/pkgs/development/tools/devpi-client/default.nix
@@ -49,6 +49,8 @@ buildPythonApplication rec {
 
   LC_ALL = "en_US.UTF-8";
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     homepage = "http://doc.devpi.net";
     description = "Client for devpi, a pypi index server and packaging meta tool";
diff --git a/nixpkgs/pkgs/development/tools/devpi-server/default.nix b/nixpkgs/pkgs/development/tools/devpi-server/default.nix
index 8a484a23349c..b5ddda9f08b1 100644
--- a/nixpkgs/pkgs/development/tools/devpi-server/default.nix
+++ b/nixpkgs/pkgs/development/tools/devpi-server/default.nix
@@ -55,6 +55,8 @@ python3Packages.buildPythonApplication rec {
     "TestMirrorIndexThings"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib;{
     homepage = "http://doc.devpi.net";
     description = "Github-style pypi index server and packaging meta tool";
diff --git a/nixpkgs/pkgs/development/tools/diesel-cli/default.nix b/nixpkgs/pkgs/development/tools/diesel-cli/default.nix
index 8a976f44bf72..a2c1af2607d1 100644
--- a/nixpkgs/pkgs/development/tools/diesel-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/diesel-cli/default.nix
@@ -46,7 +46,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
   cargoPatches = [ ./cargo-lock.patch ];
-  cargoSha256 = "1vkwp861vm20agj0lkhnnxgg4vwg4d5clvvyzxrmm4y4yw46cdl2";
+  cargoSha256 = "060r90dvdi0s5v3kjagsrrdb4arzzbkin8v5563rdpv0sq1pi3bm";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/dockle/default.nix b/nixpkgs/pkgs/development/tools/dockle/default.nix
index f0d8a5ac6e07..55869b022952 100644
--- a/nixpkgs/pkgs/development/tools/dockle/default.nix
+++ b/nixpkgs/pkgs/development/tools/dockle/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dockle";
-  version = "0.3.13";
+  version = "0.3.14";
 
   src = fetchFromGitHub {
     owner = "goodwithtech";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-U0nIGuQ4QjBaCck0Kg1RTS2IQwfivN3VI5vxh8lxAYE=";
+    sha256 = "sha256-Xe5qgM0yPBVtH9S4OSiNnkKxcH0W89aABJF6PVRBEhQ=";
   };
 
-  vendorSha256 = "sha256-uHHm4AgnjTdPgpu3OpXXIRzrGhkpOoRY8qynfl7DO6w=";
+  vendorSha256 = "sha256-h+2AcppNUJ7zjHeBzDy1iWoR3i7a2v0Pc7vOfoUqPOw=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ btrfs-progs lvm2 ];
diff --git a/nixpkgs/pkgs/development/tools/doctl/default.nix b/nixpkgs/pkgs/development/tools/doctl/default.nix
index 83256efd5faf..9ebc04ca63a0 100644
--- a/nixpkgs/pkgs/development/tools/doctl/default.nix
+++ b/nixpkgs/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.59.0";
+  version = "1.61.0";
 
   vendorSha256 = null;
 
@@ -32,7 +32,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-mkFKYWPUEHVtQi9eUPxvWYxNCfVrKdjo2bH2DEwL1d0=";
+    sha256 = "sha256-Z6G80Xg2DSoUj8vhxkDr3W/wh3fecRwxm0oly2GYDdg=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix b/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
index 06de11fde592..2218b441476e 100644
--- a/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
+++ b/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitLab
-, fetchpatch
 , meson
 , ninja
 , python3
@@ -8,68 +7,18 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gi-docgen";
-  version = "2021.2";
+  version = "2021.5";
 
   format = "other";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
-    owner = "ebassi";
+    owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "17swx4s60anfyyb6dcsl8fq3s0j9cy54qcw0ciq4qj59d4039w5h";
+    sha256 = "1fz6r6mkp4fw1mn6gn9745wcdcqg7696bbwvdcnmhinlhrcnaiz6";
   };
 
-  patches = [
-    # Add pkg-config file so that Meson projects can find this.
-    # https://gitlab.gnome.org/ebassi/gi-docgen/merge_requests/26
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/jtojnar/gi-docgen/commit/d65ed2e4827c4129d26e3c1df9a48054b4e72c50.patch";
-      sha256 = "BEefcHiAd/HTW5zo39J2WtfQjGXUkNFB6MDJj8/Ge80=";
-    })
-
-    # Name generated devhelp files correctly.
-    # https://gitlab.gnome.org/ebassi/gi-docgen/merge_requests/27
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/ebassi/gi-docgen/commit/7c4de72f55cbce5670c3a6a1451548e97e5f07f7.patch";
-      sha256 = "ov/PvrZzKmCzw7nHJkbeLCnhtUVw1UbZQjFrWT3AtVg=";
-    })
-
-    # Fix broken link in Devhelp TOC.
-    # https://gitlab.gnome.org/ebassi/gi-docgen/merge_requests/28
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/ebassi/gi-docgen/commit/56f0e6f8b4bb9c92d635df60aa5d68f55b036711.patch";
-      sha256 = "5gFGiO9jPpkyZBL4qtWEotE5jY3sCGFGUGN/Fb6jZ+0=";
-    })
-
-    # Devhelp does not like subsections without links.
-    # https://gitlab.gnome.org/GNOME/devhelp/-/issues/28
-    (fetchpatch {
-      # Only visual but needed for the other two to apply.
-      # https://gitlab.gnome.org/ebassi/gi-docgen/merge_requests/28
-      url = "https://gitlab.gnome.org/ebassi/gi-docgen/commit/7f67fad5107b73489cb7bffca49177d9ad78e422.patch";
-      sha256 = "OKbC690nJsl1ckm/y9eeKDYX6AEClsNvIFy7DK+JYEc=";
-    })
-    # Add links to index.
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/ebassi/gi-docgen/commit/f891cc5fd481bc4180eec144d14f32c15c91833b.patch";
-      sha256 = "Fcnvdgxei+2ulGoWoCZ8WFrNy01tlNXMkHru3ArGHVQ=";
-    })
-    # Use different link for each symbol type name.
-    # https://gitlab.gnome.org/ebassi/gi-docgen/merge_requests/29
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/jtojnar/gi-docgen/commit/08dcc31f62be1a5af9bd9f8f702f321f4b5cffde.patch";
-      sha256 = "vAT8s7zQ9zCoZWK+6PsxcD5/48ZAfIOl4RSNljRCGWQ=";
-    })
-    # make DevHelp sections & index.json have stable ordering
-    # already merged upstream, so patch can removed when we update
-    # beyond 2021.2
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gi-docgen/-/commit/cc21241d4386d4f78dbcb087fd9a92899935cb5c.patch";
-      sha256 = "0wna8mzrlbsv7f3bc7ndqll9l105kp8kdmhbbjhbdhzzzyvh6vcw";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
@@ -94,7 +43,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Documentation generator for GObject-based libraries";
-    homepage = "https://gitlab.gnome.org/ebassi/gi-docgen";
+    homepage = "https://gitlab.gnome.org/GNOME/gi-docgen";
     license = licenses.asl20; # OR GPL-3.0-or-later
     maintainers = teams.gnome.members;
   };
diff --git a/nixpkgs/pkgs/development/tools/documentation/gnome-doc-utils/default.nix b/nixpkgs/pkgs/development/tools/documentation/gnome-doc-utils/default.nix
index d031145a9977..b536dc940670 100644
--- a/nixpkgs/pkgs/development/tools/documentation/gnome-doc-utils/default.nix
+++ b/nixpkgs/pkgs/development/tools/documentation/gnome-doc-utils/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, pkg-config, libxml2Python, libxslt, intltool, gnome3
+{ lib, fetchurl, pkg-config, libxml2Python, libxslt, intltool, gnome
 , python2Packages }:
 
 python2Packages.buildPythonApplication rec {
@@ -24,7 +24,7 @@ python2Packages.buildPythonApplication rec {
   propagatedBuildInputs = [ libxml2Python ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix b/nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix
index e74a6b9c3c6a..5951c8d71fd5 100644
--- a/nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix
+++ b/nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix
@@ -8,7 +8,7 @@
 , docbook-xsl-nons
 , libxslt
 , gettext
-, gnome3
+, gnome
 , withDblatex ? false, dblatex
 }:
 
@@ -32,6 +32,13 @@ python3.pkgs.buildPythonApplication rec {
     passthru.respect_xml_catalog_files_var_patch
   ];
 
+  strictDeps = true;
+
+  depsBuildBuild = [
+    python3
+    pkg-config
+  ];
+
   nativeBuildInputs = [
     pkg-config
     gettext
@@ -70,7 +77,7 @@ python3.pkgs.buildPythonApplication rec {
   passthru = {
     # Consumers are expected to copy the m4 files to their source tree, let them reuse the patch
     respect_xml_catalog_files_var_patch = ./respect-xml-catalog-files-var.patch;
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/tools/documentation/mdsh/default.nix b/nixpkgs/pkgs/development/tools/documentation/mdsh/default.nix
index 68be931aa444..e9bf37345133 100644
--- a/nixpkgs/pkgs/development/tools/documentation/mdsh/default.nix
+++ b/nixpkgs/pkgs/development/tools/documentation/mdsh/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1ki6w3qf8ipcf7ch5120mj16vs7yan8k9zjd25v8x6vbsd1iccgy";
   };
 
-  cargoSha256 = "10iqypz8hfyzy1xd78r39z2waa728d97kfnf1bbx8fr4a4pzan7y";
+  cargoSha256 = "0x5fd47rjmzzmwgj14gbj0rbxwbphd7f63mis4ivwlwc9ikjxdxb";
 
   meta = with lib; {
     description = "Markdown shell pre-processor";
diff --git a/nixpkgs/pkgs/development/tools/dot-http/default.nix b/nixpkgs/pkgs/development/tools/dot-http/default.nix
index b156847870d8..d5a507d4ebba 100644
--- a/nixpkgs/pkgs/development/tools/dot-http/default.nix
+++ b/nixpkgs/pkgs/development/tools/dot-http/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1s2q4kdldhb5gd14g2h6vzrbjgbbbs9zp2dgmna0rhk1h4qv0mml";
   };
 
-  cargoSha256 = "0an3hskq1k2j4gdn8wvhfb9pqsc34ibs5bv7sjznkp5jma6fdr9w";
+  cargoSha256 = "013jyp2bgmssj1c18lm8jkb6q6jlhdrqzmyri6k5lgmfmb9dvkii";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/dt-schema/default.nix b/nixpkgs/pkgs/development/tools/dt-schema/default.nix
index 7f439d9b59e8..9ba53881bf35 100644
--- a/nixpkgs/pkgs/development/tools/dt-schema/default.nix
+++ b/nixpkgs/pkgs/development/tools/dt-schema/default.nix
@@ -6,7 +6,7 @@
 , jsonschema
 , rfc3987
 , setuptools
-, setuptools_scm
+, setuptools-scm
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "d9f88f069068dc5dc7e895785d7172d260cbbc34cab3b52704b20e89b80c6de8";
   };
 
-  nativeBuildInputs = [ setuptools_scm git ];
+  nativeBuildInputs = [ setuptools-scm git ];
   propagatedBuildInputs = [
     setuptools
     ruamel_yaml
diff --git a/nixpkgs/pkgs/development/tools/earthly/default.nix b/nixpkgs/pkgs/development/tools/earthly/default.nix
new file mode 100644
index 000000000000..82f59817b221
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/earthly/default.nix
@@ -0,0 +1,41 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "earthly";
+  version = "0.5.15";
+
+  src = fetchFromGitHub {
+    owner = "earthly";
+    repo = "earthly";
+    rev = "v${version}";
+    sha256 = "sha256-3hiiCcCgbWxSfG8XCcoKdNJsQoP2L2G4g4zFQkFtzQI=";
+  };
+
+  vendorSha256 = "sha256-q3dDV0eop2NxXHFrlppWsZrO2Hz1q5xhs1DnB6PvG9g=";
+
+  buildFlagsArray = ''
+    -ldflags=
+      -s -w
+      -X main.Version=v${version}
+      -X main.DefaultBuildkitdImage=earthly/buildkitd:v${version}
+      -extldflags -static
+  '';
+
+  BUILDTAGS = "dfrunmount dfrunsecurity dfsecrets dfssh dfrunnetwork";
+  preBuild = ''
+    makeFlagsArray+=(BUILD_TAGS="${BUILDTAGS}")
+  '';
+
+  postInstall = ''
+    mv $out/bin/debugger $out/bin/earthly-debugger
+    mv $out/bin/shellrepeater $out/bin/earthly-shellrepeater
+  '';
+
+  meta = with lib; {
+    description = "Build automation for the container era";
+    homepage = "https://earthly.dev/";
+    changelog = "https://github.com/earthly/earthly/releases/tag/v${version}";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ mdsp ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/ecpdap/default.nix b/nixpkgs/pkgs/development/tools/ecpdap/default.nix
new file mode 100644
index 000000000000..3bb12c40e355
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/ecpdap/default.nix
@@ -0,0 +1,37 @@
+{ lib, stdenv, fetchFromGitHub, rustPlatform, pkg-config, libusb1, AppKit }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "ecpdap";
+  version = "0.1.6";
+
+  src = fetchFromGitHub {
+    owner = "adamgreig";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1va96hxm22a2lfy141x1sv5f5g8f6mp965an4jsff9qzi55kfv2g";
+  };
+
+  cargoSha256 = "1dk6x2f36c546qr415kzmqr2r4550iwdmj4chrb46p3hr64jddhd";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ libusb1 ]
+    ++ lib.optional stdenv.isDarwin AppKit;
+
+  postInstall = ''
+    mkdir -p $out/etc/udev/rules.d
+    cp drivers/*.rules $out/etc/udev/rules.d
+  '';
+
+  meta = with lib; {
+    description = "A tool to program ECP5 FPGAs";
+    longDescription = ''
+      ECPDAP allows you to program ECP5 FPGAs and attached SPI flash
+      using CMSIS-DAP probes in JTAG mode.
+    '';
+    homepage = "https://github.com/adamgreig/ecpdap";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ expipiplus1 ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/tools/electron/default.nix b/nixpkgs/pkgs/development/tools/electron/default.nix
index ddd51f268e27..0b2cdbe9c045 100644
--- a/nixpkgs/pkgs/development/tools/electron/default.nix
+++ b/nixpkgs/pkgs/development/tools/electron/default.nix
@@ -22,7 +22,7 @@ let
 in
 rec {
 
-  electron = electron_12;
+  electron = electron_13;
 
   electron_3 = mkElectron "3.1.13" {
     x86_64-linux = "1psmbplz6jhnnf6hmfhxbmmhn4n1dpnhzbc12pxn645xhfpk9ark";
@@ -86,30 +86,42 @@ rec {
     headers = "0yx8mkrm15ha977hzh7g2sc5fab9sdvlk1bk3yxignhxrqqbw885";
   };
 
-  electron_10 = mkElectron "10.4.3" {
-    x86_64-linux = "48793fc6c6d3bfb8df81cd29f6c52e68c8c6b901693c6ba4ed505799fa673e9f";
-    x86_64-darwin = "28cbacf51e0528e0d4ba30a2c56efd6a8e7f836104786733aae0c5fc99dc2615";
-    i686-linux = "b9b7fd9b91630350dafe97a31c918f941ab15b044f0b4e9b2a705482447fe78f";
-    armv7l-linux = "b1e1b4d0620eae647915c95d21656d21c00efe89f44198938d9fd9fba045e39c";
-    aarch64-linux = "aa9177becf787920cef4cde27a6ed08e2e23976678162a3cd6b77615b1582c05";
-    headers = "0phv08myxq226blrqzg3fza3mh3ivgfmcja98b7377pc3x7bv76g";
+  electron_10 = mkElectron "10.4.7" {
+    x86_64-linux = "e3ea75fcedce588c6b59cfa3a6e46ba67b789e14dc2e5b9dfe1ddf3f82b0f995";
+    x86_64-darwin = "8f01e020563b7fce68dc2e3d4bbf419320d13b088e89eb64f9645e9d73ad88fb";
+    i686-linux = "dd7fde9b3993538333ec701101554050b27d0b680196d0883ab563e8e696fc79";
+    armv7l-linux = "56f11ed14f8a620650d31c21ebd095ce59ef4286c98276802b18f9cc85560ddd";
+    aarch64-linux = "0550584518c8e98fe1113706c10fd7456ec519f7aa6867fbff17c8913327d758";
+    headers = "01x6a0r2jawjpl09ixgzap3g0z6znj34hsnnhzanavkbds0ri4k6";
   };
 
-  electron_11 = mkElectron "11.4.3" {
-    x86_64-linux = "222e7aa51d5516796d532f784c574f07315bad4bf29efb0ce687014f93ba5fa5";
-    x86_64-darwin = "6cccbaf8dca7eb3819b0ac3044686f6705c5d51c88ee1361d8573c2b83c8dc0a";
-    i686-linux = "1910729fd6088e9c914db9fdd6c42ce6747fcb048947dd83fa2cdf564c786353";
-    armv7l-linux = "e0e1375bdb79a6917467490683e49bb59da9260b73d7b710a5e4e4535c1c5e80";
-    aarch64-linux = "9fb287ed8bcc7782775bd615fe1c31db4a8b6d548209fd15ef5312ac72a04d07";
-    headers = "00gln9jlb621gvxx1z7s212wakjbdigdqv02vx1pjvkg62aazg8j";
+  electron_11 = mkElectron "11.4.7" {
+    x86_64-linux = "05005d351a1b08a550a8186efba6f4fdd96842355a634934d9a9d7d31c2cd539";
+    x86_64-darwin = "e6445ad3d7e851fc3227785788d0706d58c9c8ea3821afa7f871c6254c463043";
+    i686-linux = "5473f36eb2a9772da7e4f1a162a724b4a5335e8f78fb51d585bac3bd50ff12fc";
+    armv7l-linux = "0de0d74b1206f7ffd9e4c75754bbf6fdf27c83a0ce6b4cd8a6b5af81d7a20ba7";
+    aarch64-linux = "f2261dde71197c358aff85d7a320cbd2315a5adf228218fd9a2f5c8561589323";
+    aarch64-darwin = "a2abc83c21402e30f4f42f4615cccc4369884faa2f2fa576d71f423834988622";
+    headers = "1dqkx861vfq6xbzdlbgza6h4j7bib8p3xahllrnfc0s65y8gf0ry";
   };
 
-  electron_12 = mkElectron "12.0.4" {
-    x86_64-linux = "6419716f614f396954981e6432afe77277dff2b64ecb84e2bbd6d740362ea01c";
-    x86_64-darwin = "3072f1854eb5b91d5f24e03a313583bb85d696cda48381bdf3e40ee2c93dfe34";
-    i686-linux = "fa241874aacca8fe4b4f940fa9133fe65fdcf9ef0847322332f0c67ee7b42aa0";
-    armv7l-linux = "8d88d13bf117820bc3b46501d34004f18ebf402f2817836a2a7ba4fc60433653";
-    aarch64-linux = "c5cbcbb5b397407e45e682480b30da4fcf94154ac92d8f6eea4c79a50d56626a";
-    headers = "121falvhz0bfxc2h7wwvyfqdagr3aznida4f4phzqp0ja3rznxf3";
+  electron_12 = mkElectron "12.0.10" {
+    x86_64-linux = "b5383b5818062de42536a7966df875ae781433a7ee991da34643bc6fda4ad038";
+    x86_64-darwin = "3d4111280bf50dbfb141b46551974b0e4e39eb0d1f8ef789d71f7d3295a8e24f";
+    i686-linux = "6fd10db8d896ef82ac8f2a1d796942dc56f5b41e504c86121d83eababa0cccb8";
+    armv7l-linux = "5820ac7e70488507417122aaa0381439f929da1819c2c710ba74569a609cc972";
+    aarch64-linux = "022ff009969d9f270704e918fe2dda6cd395c3e9d9e9515e99eca628d996a503";
+    aarch64-darwin = "d2af4870a79866621469043e44a2a0e995abc5530d4aaf1add567b00eb286b01";
+    headers = "1vl3cnhf2j5g4xhk17rag0vzbxwba5fq54mhvv0hp3hqbiqhdds6";
+  };
+
+  electron_13 = mkElectron "13.1.0" {
+    x86_64-linux = "6681078971d2e99e9f8b3c598de65869d3596356af901bbbabcc4860c0496bb4";
+    x86_64-darwin = "d62a561e80fcbcb0f249e74c487313192451046f288478add65be997793831de";
+    i686-linux = "e4d8cc19689b1f9c00894bb776083f8543abeba9203d3297268c1644f1300355";
+    armv7l-linux = "ac5a19e31fd83db5775a2af57f742c7b3e5fc4528958329ec3c81f82e7bd611a";
+    aarch64-linux = "0ed0cc3afae5cc7e1e6c6204866a1cecdf97e0ab658789e8951842bd0d28e1bb";
+    aarch64-darwin = "6da46d2861011263af2953a3e0186735e54708c01c50967ff5f8ed71b73f7fea";
+    headers = "1h4saavsy97kmbfaw6xcya5l0iybr37vyw7bv539c7a064kam07b";
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/electron/generic.nix b/nixpkgs/pkgs/development/tools/electron/generic.nix
index 7d4593dee3c5..def103f6e567 100644
--- a/nixpkgs/pkgs/development/tools/electron/generic.nix
+++ b/nixpkgs/pkgs/development/tools/electron/generic.nix
@@ -26,7 +26,8 @@ let
     homepage = "https://github.com/electron/electron";
     license = licenses.mit;
     maintainers = with maintainers; [ travisbhartwell manveru prusnak ];
-    platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ];
+    platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ]
+      ++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ];
     knownVulnerabilities = optional (versionOlder version "6.0.0") "Electron version ${version} is EOL";
   };
 
@@ -46,6 +47,7 @@ let
     armv7l-linux = "linux-armv7l";
     aarch64-linux = "linux-arm64";
     x86_64-darwin = "darwin-x64";
+    aarch64-darwin = "darwin-arm64";
   };
 
   get = as: platform: as.${platform.system} or
diff --git a/nixpkgs/pkgs/development/tools/electron/print-hashes.sh b/nixpkgs/pkgs/development/tools/electron/print-hashes.sh
index d6c5d94ec41e..48c8f0412e10 100755
--- a/nixpkgs/pkgs/development/tools/electron/print-hashes.sh
+++ b/nixpkgs/pkgs/development/tools/electron/print-hashes.sh
@@ -17,6 +17,7 @@ SYSTEMS=(
     [armv7l-linux]=linux-armv7l
     [aarch64-linux]=linux-arm64
     [x86_64-darwin]=darwin-x64
+    [aarch64-darwin]=darwin-arm64
 )
 
 hashfile="$(nix-prefetch-url --print-path "https://github.com/electron/electron/releases/download/v${VERSION}/SHASUMS256.txt" 2>/dev/null | tail -n1)"
@@ -27,8 +28,10 @@ headers="$(nix-prefetch-url "https://atom.io/download/electron/v${VERSION}/node-
 echo "  electron_${VERSION%%.*} = mkElectron \"${VERSION}\" {"
 
 for S in "${!SYSTEMS[@]}"; do
-  hash="$(grep " *electron-v${VERSION}-${SYSTEMS[$S]}.zip$" "$hashfile"|cut -f1 -d' ')"
-  echo "    $S = \"$hash\";"
+  hash="$(grep " *electron-v${VERSION}-${SYSTEMS[$S]}.zip$" "$hashfile"|cut -f1 -d' ' || :)"
+  if [[ -n $hash ]]; then
+    echo "    $S = \"$hash\";"
+  fi
 done
 
 echo "    headers = \"$headers\";"
diff --git a/nixpkgs/pkgs/development/tools/erlang/cuter/default.nix b/nixpkgs/pkgs/development/tools/erlang/cuter/default.nix
deleted file mode 100644
index 44ed61ac1d5f..000000000000
--- a/nixpkgs/pkgs/development/tools/erlang/cuter/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ lib, stdenv, autoreconfHook, which, writeText, makeWrapper, fetchFromGitHub, erlang
-, z3, python }:
-
-stdenv.mkDerivation rec {
-  pname = "cuter";
-  version = "0.1";
-
-  src = fetchFromGitHub {
-    owner = "aggelgian";
-    repo = "cuter";
-    rev = "v${version}";
-    sha256 = "1ax1pj6ji4w2mg3p0nh2lzmg3n9mgfxk4cf07pll51yrcfpfrnfv";
-  };
-
-  setupHook = writeText "setupHook.sh" ''
-    addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
-  '';
-
-  nativeBuildInputs = [ autoreconfHook makeWrapper which ];
-  buildInputs = [ python python.pkgs.setuptools z3.python erlang ];
-
-  buildFlags = [ "PWD=$(out)/lib/erlang/lib/cuter-${version}" "cuter_target" ];
-  configurePhase = ''
-    autoconf
-    ./configure --prefix $out
-  '';
-
-  installPhase = ''
-    mkdir -p "$out/lib/erlang/lib/cuter-${version}"
-    mkdir -p "$out/bin"
-    cp -r * "$out/lib/erlang/lib/cuter-${version}"
-    cp cuter "$out/bin/cuter"
-    wrapProgram $out/bin/cuter \
-      --prefix PATH : "${python}/bin" \
-      --suffix PYTHONPATH : "${z3}/${python.sitePackages}" \
-      --suffix ERL_LIBS : "$out/lib/erlang/lib"
-  '';
-
-  meta = {
-    description = "A concolic testing tool for the Erlang functional programming language";
-    license = lib.licenses.gpl3;
-    homepage = "https://github.com/aggelgian/cuter";
-    maintainers = with lib.maintainers; [ ericbmerritt ];
-    platforms = with lib.platforms; unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/erlang/relx-exe/default.nix b/nixpkgs/pkgs/development/tools/erlang/relx-exe/default.nix
deleted file mode 100644
index 0f9d973e6773..000000000000
--- a/nixpkgs/pkgs/development/tools/erlang/relx-exe/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ fetchHex, fetchRebar3Deps, rebar3Relx }:
-
-rebar3Relx rec {
-  name = "relx-exe";
-  version = "3.32.1";
-  releaseType = "escript";
-
-  src = fetchHex {
-    pkg = "relx";
-    sha256 = "0693k8ac7hvpm9jd3ysbdn8bk97d68ini22p1fsqdsi9qv9f7nq7";
-    inherit version;
-  };
-
-  checkouts = fetchRebar3Deps {
-    inherit name version;
-    src = "${src}/rebar.lock";
-    sha256 = "0l7r3x7zwcz49013zv8z5v2i06p7wqkgzdyzrl8jk0hglscvhpf6";
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/esbuild/default.nix b/nixpkgs/pkgs/development/tools/esbuild/default.nix
index 47f8b217bc5f..894168145aee 100644
--- a/nixpkgs/pkgs/development/tools/esbuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/esbuild/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "esbuild";
-  version = "0.11.14";
+  version = "0.12.7";
 
   src = fetchFromGitHub {
     owner = "evanw";
     repo = "esbuild";
     rev = "v${version}";
-    sha256 = "0qxylzc7lzpsp5hm3dl5jvy9aca8azn8dmbjz9z5n5rkdmm8vd9p";
+    sha256 = "sha256-LHM3dlVfwgA1HJPg/77Er/RWEDVmmQuuhrS5KzTAtV0=";
   };
 
-  vendorSha256 = "1n5538yik72x94vzfq31qaqrkpxds5xys1wlibw2gn2am0z5c06q";
+  vendorSha256 = "sha256-2ABWPqhK2Cf4ipQH7XvRrd+ZscJhYPc3SV2cGT0apdg=";
 
   meta = with lib; {
     description = "An extremely fast JavaScript bundler";
diff --git a/nixpkgs/pkgs/development/tools/evans/default.nix b/nixpkgs/pkgs/development/tools/evans/default.nix
new file mode 100644
index 000000000000..dfc9d34b5ac5
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/evans/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "evans";
+  version = "0.9.3";
+
+  src = fetchFromGitHub {
+    owner = "ktr0731";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-q8HWDZpUWaitdZcWkvKEWWbIWCj9VmWCxxhAdcYZx8s=";
+  };
+
+  subPackages = [ "." ];
+
+  vendorSha256 = "sha256-ntRlrbsQjZmVxEg9361Q+f6Wb/R393+sbOKOEh5VKPk=";
+
+  meta = with lib; {
+    description = "More expressive universal gRPC client";
+    homepage = "https://evans.syfm.me/";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ diogox ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/f2c/default.nix b/nixpkgs/pkgs/development/tools/f2c/default.nix
new file mode 100644
index 000000000000..f235296308fc
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/f2c/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchurl }:
+
+stdenv.mkDerivation {
+  pname = "f2c";
+  version = "20200916";
+
+  src = fetchurl {
+    url = "https://www.netlib.org/f2c/src.tgz";
+    sha256 = "0d8xfbv6dk4dz95qds7sd44b5hvara07f2g2c5g4xiwim9b7916l";
+  };
+
+  makeFlags = [ "-f" "makefile.u" ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share/man/man1
+    install -m755 f2c $out/bin
+    install -m755 xsum $out/bin
+    install f2c.1t $out/share/man/man1
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Convert Fortran 77 source code to C";
+    homepage = "https://www.netlib.org/f2c/";
+    license = licenses.mit;
+    maintainers = [ maintainers.markuskowa ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/flatpak-builder/default.nix b/nixpkgs/pkgs/development/tools/flatpak-builder/default.nix
index 75aa8a00f00c..cc1a46c834b5 100644
--- a/nixpkgs/pkgs/development/tools/flatpak-builder/default.nix
+++ b/nixpkgs/pkgs/development/tools/flatpak-builder/default.nix
@@ -46,13 +46,13 @@ let
   installed_test_metadir = "${placeholder "installedTests"}/share/installed-tests/flatpak-builder";
 in stdenv.mkDerivation rec {
   pname = "flatpak-builder";
-  version = "1.0.12";
+  version = "1.0.14";
 
   outputs = [ "out" "doc" "man" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/flatpak/flatpak-builder/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-R4DBuOCDj/tk6WOb14AUF5ZP2BjHxtXpr8pNVRHe0sg=";
+    sha256 = "sha256-abZa9PY4BBJ1GMVFGE+d/JqTWM3tqr7yseUGI64rjYs=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/tools/flip-link/default.nix b/nixpkgs/pkgs/development/tools/flip-link/default.nix
new file mode 100644
index 000000000000..697e4fb35369
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/flip-link/default.nix
@@ -0,0 +1,24 @@
+{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "flip-link";
+  version = "0.1.3";
+
+  src = fetchFromGitHub {
+    owner = "knurling-rs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0x6l5aps0aryf3iqiyk969zrq77bm95jvm6f0f5vqqqizxjd3yfl";
+  };
+
+  cargoSha256 = "13rgpbwaz2b928rg15lbaszzjymph54pwingxpszp5paihx4iayr";
+
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
+
+  meta = with lib; {
+    description = "Adds zero-cost stack overflow protection to your embedded programs";
+    homepage = "https://github.com/knurling-rs/flip-link";
+    license = with licenses; [ asl20 mit ];
+    maintainers = [ maintainers.FlorianFranzen ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/frugal/default.nix b/nixpkgs/pkgs/development/tools/frugal/default.nix
new file mode 100644
index 000000000000..c8339fe6d851
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/frugal/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "frugal";
+  version = "3.14.4";
+
+  src = fetchFromGitHub {
+    owner = "Workiva";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-RFVn5aL5MqsB7heDPVUci3Eyq6F/qo3RmdEaZbsC+Ng=";
+  };
+
+  subPackages = [ "." ];
+
+  vendorSha256 = "sha256-hyupBMRKuw77SJNIk3mEUixV0LV5mEmZx8M70qGmYJY=";
+
+  meta = with lib; {
+    description = "Thrift improved";
+    homepage = "https://github.com/Workiva/frugal";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ diogox ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/ghp-import/default.nix b/nixpkgs/pkgs/development/tools/ghp-import/default.nix
deleted file mode 100644
index 4c258d6154ba..000000000000
--- a/nixpkgs/pkgs/development/tools/ghp-import/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ python3, glibcLocales, lib }:
-
-with python3.pkgs;
-
-buildPythonApplication rec {
-  version = "0.5.5";
-  pname = "ghp-import";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1mvmpi7lqflw2lr0g0y5f9s0d1pv9cav4gbmaqnziqg442klx4iy";
-  };
-
-  disabled = isPyPy;
-  buildInputs = [ glibcLocales ];
-
-  LC_ALL="en_US.UTF-8";
-
-  # No tests available
-  doCheck = false;
-
-  meta = {
-    description = "Copy your docs directly to the gh-pages branch";
-    homepage = "https://github.com/davisp/ghp-import";
-    license = "Tumbolia Public License";
-    maintainers = with lib.maintainers; [ ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/ginkgo/default.nix b/nixpkgs/pkgs/development/tools/ginkgo/default.nix
index e5883501f819..833f87e4a028 100644
--- a/nixpkgs/pkgs/development/tools/ginkgo/default.nix
+++ b/nixpkgs/pkgs/development/tools/ginkgo/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ginkgo";
-  version = "1.16.1";
+  version = "1.16.2";
 
   src = fetchFromGitHub {
     owner = "onsi";
     repo = "ginkgo";
     rev = "v${version}";
-    sha256 = "sha256-nlNft9jOp8V8ks32LOb4wUTkRrXJ5K49gbHuRmCKz/0=";
+    sha256 = "sha256-u2roJsZZ5oG2dHo4kmSsoySjm1HRQJ659+D2M+LezCc=";
   };
   vendorSha256 = "sha256-tS8YCGVOsfQp02vY6brmE3pxi70GG9DYcp1JDkcVG9Y=";
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/gir/default.nix b/nixpkgs/pkgs/development/tools/gir/default.nix
index c88ffef4df12..856cd44e26c0 100644
--- a/nixpkgs/pkgs/development/tools/gir/default.nix
+++ b/nixpkgs/pkgs/development/tools/gir/default.nix
@@ -2,16 +2,17 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gir";
-  version = "2019-10-16";
+  version = "unstable-2021-05-05";
 
   src = fetchFromGitHub {
     owner = "gtk-rs";
     repo = "gir";
-    rev = "241d790085a712db7436c5c25b210ccb7d1a08d5";
-    sha256 = "1kn5kgdma9j6dwpmv6jmydak7ajlgdkw9sfkh3q7h8c2a8yikvxr";
+    rev = "c148542ce89b0bf7cbb9f5ef4179c96a45d022df";
+    sha256 = "0vy366ipwnn0cpp14l1v5g3dpnsr3hd8mjp3333lp0946igfqsy5";
+    leaveDotGit = true; # required for build.rs
   };
 
-  cargoSha256 = "048qhlc4f5khxi7dnakgqkhgww44r6h3mlx2fm7y2wqivr3rj8p1";
+  cargoSha256 = "11as1v88zf0f7l2ngllg5zqycvd05nb4vrsyl1dlarjvbq7fhvv8";
 
   meta = with lib; {
     description = "Tool to generate rust bindings and user API for glib-based libraries";
diff --git a/nixpkgs/pkgs/development/tools/git-aggregator/default.nix b/nixpkgs/pkgs/development/tools/git-aggregator/default.nix
new file mode 100644
index 000000000000..a6599c667c86
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/git-aggregator/default.nix
@@ -0,0 +1,40 @@
+{ git, lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "git-aggregator";
+  version = "1.8.1";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    hash = "sha256-LLsyhyhPmOOvPzwEEJwkhrDfBMFueA7kuDlnrqwr08k=";
+  };
+
+  nativeBuildInputs = with python3Packages; [
+    setuptools-scm
+  ];
+  propagatedBuildInputs = with python3Packages; [
+    argcomplete
+    colorama
+    git
+    kaptan
+    requests
+  ];
+
+  checkInputs = [
+    git
+  ];
+
+  preCheck = ''
+    export HOME=`mktemp -d`
+    git config --global user.name John
+    git config --global user.email john@localhost
+  '';
+
+  meta = with lib; {
+    description = "Manage the aggregation of git branches from different remotes to build a consolidated one.";
+    homepage = "https://github.com/acsone/git-aggregator";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ lourkeur ];
+    mainProgram = "gitaggregate";
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/git-quick-stats/default.nix b/nixpkgs/pkgs/development/tools/git-quick-stats/default.nix
index 7f0db1f712c4..548fca369b92 100644
--- a/nixpkgs/pkgs/development/tools/git-quick-stats/default.nix
+++ b/nixpkgs/pkgs/development/tools/git-quick-stats/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-quick-stats";
-  version = "2.1.8";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     repo = "git-quick-stats";
     owner = "arzzen";
     rev = version;
-    sha256 = "sha256-sK8HOfeiV0xn540bU7inZl/hV6uzitJ4Szqk96a8DMc=";
+    sha256 = "sha256-cE9eo8FUUNlhmBrHalFDTFK2LIQUaWFy7Gj/E2F15t4=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/git-series/default.nix b/nixpkgs/pkgs/development/tools/git-series/default.nix
index 0f7677c7aa26..752cefad3c27 100644
--- a/nixpkgs/pkgs/development/tools/git-series/default.nix
+++ b/nixpkgs/pkgs/development/tools/git-series/default.nix
@@ -15,7 +15,7 @@ buildRustPackage rec {
     sha256 = "07mgq5h6r1gf3jflbv2khcz32bdazw7z1s8xcsafdarnm13ps014";
   };
 
-  cargoSha256 = "0ijgx8fksg2najb336dhddxlqfzc338f9ylydkpw6b39k72mm00d";
+  cargoSha256 = "0870f4rd98fbmyl8524ivfg3xf4qpzb1x68q1idnl47mmf68pyx8";
 
   cargoPatches = [
     (fetchpatch {
diff --git a/nixpkgs/pkgs/development/tools/glade/default.nix b/nixpkgs/pkgs/development/tools/glade/default.nix
index d77772c32db6..3e5c7b0438fd 100644
--- a/nixpkgs/pkgs/development/tools/glade/default.nix
+++ b/nixpkgs/pkgs/development/tools/glade/default.nix
@@ -15,7 +15,7 @@
 , libxml2
 , docbook-xsl-nons
 , docbook_xml_dtd_42
-, gnome3
+, gnome
 , gdk-pixbuf
 , libxslt
 , gsettings-desktop-schemas
@@ -54,11 +54,11 @@ stdenv.mkDerivation rec {
     python3.pkgs.pygobject3
     gsettings-desktop-schemas
     gdk-pixbuf
-    gnome3.adwaita-icon-theme
+    gnome.adwaita-icon-theme
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
     };
   };
diff --git a/nixpkgs/pkgs/development/tools/go-mockery/default.nix b/nixpkgs/pkgs/development/tools/go-mockery/default.nix
index a65a9276add4..347bfeb116a4 100644
--- a/nixpkgs/pkgs/development/tools/go-mockery/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-mockery/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "go-mockery";
-  version = "2.7.4";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "vektra";
     repo = "mockery";
     rev = "v${version}";
-    sha256 = "sha256-St8QgUZUU7THM9H8i7Z+bgKu9LhXhUqH/B14LGmDCn0=";
+    sha256 = "sha256-sOZig47KKKGJmV9QNCa+TwYCxemeVl6xssfExSaaFjY=";
   };
 
   vendorSha256 = "sha256-//V3ia3YP1hPgC1ipScURZ5uXU4A2keoG6dGuwaPBcA=";
diff --git a/nixpkgs/pkgs/development/tools/go-task/default.nix b/nixpkgs/pkgs/development/tools/go-task/default.nix
index e97819c4343f..58a986e813e1 100644
--- a/nixpkgs/pkgs/development/tools/go-task/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-task/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "go-task";
-  version = "3.4.2";
+  version = "3.4.3";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "task";
     rev = "v${version}";
-    sha256 = "sha256-632ISkBIZJBJpybuiuRHOV3CAJg1rSe3hK+W7hmW2cM=";
+    sha256 = "sha256-hI6x3DOB7pP+umnEFqL0sIx+6qN74sooLdkR2pC74D8=";
   };
 
-  vendorSha256 = "sha256-qKjCGZnCts4GfBafSRXR7xTvfJdqK8zjpu01eiyITkU=";
+  vendorSha256 = "sha256-bsVzV2M31BA7X6aq8na7v56uGYgne4OwR5kz/utmQHI=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/go-toml/default.nix b/nixpkgs/pkgs/development/tools/go-toml/default.nix
index 9a0fa54fb2d5..fee8d94f754b 100644
--- a/nixpkgs/pkgs/development/tools/go-toml/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-toml/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "go-toml";
-  version = "1.9.0";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "pelletier";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-m8VgjfNDxSX6fRG2/gEJlVc9hCnua+o79ttrd8P20kU=";
+    sha256 = "sha256-x740f6I+szhq4mEsed4bsXcC8PvzF6PKFJNJ9SKMGIE=";
   };
 
   goPackagePath = "github.com/pelletier/go-toml";
diff --git a/nixpkgs/pkgs/development/tools/go-tools/default.nix b/nixpkgs/pkgs/development/tools/go-tools/default.nix
index 2bf5093e5e36..69059578e273 100644
--- a/nixpkgs/pkgs/development/tools/go-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-tools/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "go-tools";
-  version = "2020.2.3";
+  version = "2021.1";
 
   src = fetchFromGitHub {
     owner = "dominikh";
     repo = "go-tools";
     rev = version;
-    sha256 = "17li8jbw3cpn59kpcl3j3r2an4wkx3fc81xn0j4xgbjpkxh9493n";
+    sha256 = "sha256-QhTjzrERhbhCSkPzyLQwFyxrktNoGL9ris+XfE7n5nQ=";
   };
 
-  vendorSha256 = "081p008sb3lkc8j6sa6n42qi04za4a631kihrd4ca6aigwkgl3ak";
+  vendorSha256 = "sha256-EjCOMdeJ0whp2pHZvm4VV2K78UNKzl98Z/cQvGhWSyY=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/godot/default.nix b/nixpkgs/pkgs/development/tools/godot/default.nix
index d5eb7a9b0e01..5e457227c8da 100644
--- a/nixpkgs/pkgs/development/tools/godot/default.nix
+++ b/nixpkgs/pkgs/development/tools/godot/default.nix
@@ -1,28 +1,31 @@
-{ stdenv, lib, fetchFromGitHub, scons, pkg-config, libX11, libXcursor
-, libXinerama, libXrandr, libXrender, libpulseaudio ? null
-, libXi ? null, libXext, libXfixes, freetype, openssl
-, alsaLib, libGLU, zlib, yasm ? null }:
+{ stdenv, lib, fetchFromGitHub, scons, pkg-config, udev, libX11
+, libXcursor , libXinerama, libXrandr, libXrender, libpulseaudio
+, libXi, libXext, libXfixes, freetype, openssl
+, alsa-lib, libGLU, zlib, yasm
+, withUdev ? true
+}:
 
 let
   options = {
     touch = libXi != null;
     pulseaudio = false;
+    udev = withUdev;
   };
 in stdenv.mkDerivation rec {
   pname = "godot";
-  version = "3.2.3";
+  version = "3.3.2";
 
   src = fetchFromGitHub {
     owner  = "godotengine";
     repo   = "godot";
     rev    = "${version}-stable";
-    sha256 = "19vrp5lhyvxbm6wjxzn28sn3i0s8j08ca7nani8l1nrhvlc8wi0v";
+    sha256 = "0rfm6sbbwzvsn76a8aqagd7cqdzmk8qxphgl89k7y982l9a5sz50";
   };
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    scons libX11 libXcursor libXinerama libXrandr libXrender
-    libXi libXext libXfixes freetype openssl alsaLib libpulseaudio
+    scons udev libX11 libXcursor libXinerama libXrandr libXrender
+    libXi libXext libXfixes freetype openssl alsa-lib libpulseaudio
     libGLU zlib yasm
   ];
 
diff --git a/nixpkgs/pkgs/development/tools/godot/dont_clobber_environment.patch b/nixpkgs/pkgs/development/tools/godot/dont_clobber_environment.patch
index b7c1d3d62335..74e1241513ba 100644
--- a/nixpkgs/pkgs/development/tools/godot/dont_clobber_environment.patch
+++ b/nixpkgs/pkgs/development/tools/godot/dont_clobber_environment.patch
@@ -1,18 +1,19 @@
 diff --git a/SConstruct b/SConstruct
-index b3d033dc90..04b8dcc832 100644
+index d138c7b250..c925bf908e 100644
 --- a/SConstruct
 +++ b/SConstruct
-@@ -62,10 +62,9 @@ elif platform_arg == "javascript":
-     custom_tools = ["cc", "c++", "ar", "link", "textfile", "zip"]
- 
+@@ -65,10 +65,10 @@ elif platform_arg == "javascript":
+ # want to have to pull in manually.
+ # Then we prepend PATH to make it take precedence, while preserving SCons' own entries.
  env_base = Environment(tools=custom_tools)
--if "TERM" in os.environ:
+-env_base.PrependENVPath("PATH", os.getenv("PATH"))
+-env_base.PrependENVPath("PKG_CONFIG_PATH", os.getenv("PKG_CONFIG_PATH"))
+-if "TERM" in os.environ:  # Used for colored output.
 -    env_base["ENV"]["TERM"] = os.environ["TERM"]
--env_base.AppendENVPath("PATH", os.getenv("PATH"))
--env_base.AppendENVPath("PKG_CONFIG_PATH", os.getenv("PKG_CONFIG_PATH"))
 +for k in ("TERM", "PATH", "PKG_CONFIG_PATH"):
 +    if (k in os.environ):
 +        env_base["ENV"][k] = os.environ[k]
++
+
  env_base.disabled_modules = []
  env_base.use_ptrcall = False
- env_base.module_version_string = ""
diff --git a/nixpkgs/pkgs/development/tools/godot/pkg_config_additions.patch b/nixpkgs/pkgs/development/tools/godot/pkg_config_additions.patch
index 9e2e5c3536db..f5ab667f1808 100644
--- a/nixpkgs/pkgs/development/tools/godot/pkg_config_additions.patch
+++ b/nixpkgs/pkgs/development/tools/godot/pkg_config_additions.patch
@@ -1,11 +1,11 @@
 diff --git a/platform/x11/detect.py b/platform/x11/detect.py
-index 5674e78350..7051d8e73c 100644
+index 91652aad55..d12389f9f2 100644
 --- a/platform/x11/detect.py
 +++ b/platform/x11/detect.py
-@@ -201,6 +201,11 @@ def configure(env):
+@@ -218,6 +218,11 @@ def configure(env):
      env.ParseConfig("pkg-config xrender --cflags --libs")
      env.ParseConfig("pkg-config xi --cflags --libs")
- 
+
 +    env.ParseConfig("pkg-config xext --cflags --libs")
 +    env.ParseConfig("pkg-config xfixes --cflags --libs")
 +    env.ParseConfig("pkg-config glu --cflags --libs")
@@ -13,13 +13,20 @@ index 5674e78350..7051d8e73c 100644
 +
      if env["touch"]:
          env.Append(CPPDEFINES=["TOUCH_ENABLED"])
- 
-@@ -299,7 +304,7 @@ def configure(env):
+
+@@ -323,6 +328,7 @@ def configure(env):
          print("Enabling ALSA")
+         env["alsa"] = True
          env.Append(CPPDEFINES=["ALSA_ENABLED", "ALSAMIDI_ENABLED"])
-         # Don't parse --cflags, we don't need to add /usr/include/alsa to include path
--        env.ParseConfig("pkg-config alsa --libs")
 +        env.ParseConfig("pkg-config alsa --cflags --libs")
      else:
          print("ALSA libraries not found, disabling driver")
- 
+
+@@ -340,6 +346,7 @@ def configure(env):
+             if os.system("pkg-config --exists libudev") == 0:  # 0 means found
+                 print("Enabling udev support")
+                 env.Append(CPPDEFINES=["UDEV_ENABLED"])
++                env.ParseConfig("pkg-config libudev --cflags --libs")
+             else:
+                 print("libudev development libraries not found, disabling udev support")
+     else:
diff --git a/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix b/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix
index 0fd45598a837..659532e04e01 100644
--- a/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix
+++ b/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gojsontoyaml";
-  version = "unstable-2020-06-02";
+  version = "unstable-2020-12-16";
 
   src = fetchFromGitHub {
     owner = "brancz";
     repo = "gojsontoyaml";
-    rev = "3697ded27e8cfea8e547eb082ebfbde36f1b5ee6";
-    sha256 = "07sisadpfnzbylzirs5ski8wl9fl18dm7xhbv8imw6ksxq4v467a";
+    rev = "202f76bf8c1f8fb74941a845b349941064603185";
+    sha256 = "sha256-N49iHQh28nAZBGJnLKG/aZPdn5fwPKQpdrXXtX28yss=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/golangci-lint/default.nix b/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
index 83bc3f473d32..2019c7cb3e22 100644
--- a/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
+++ b/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.39.0";
+  version = "1.40.1";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    sha256 = "0c9yka27k4v1waijk7mn7k31l5a373sclykypflchy7xnlrsa18v";
+    sha256 = "sha256-5OtXfDPpdwVMnI5Pttr+XQPgJXI7YexPtBhIDeS1CXk=";
   };
 
-  vendorSha256 = "1685iv1lsal462c8xqvs76x9dwvbwazrak902j0p12s0fyb66lpl";
+  vendorSha256 = "sha256-8SPUOQ88RkU0dkyNccf+POKitXHlCRaxrIugV91gDZQ=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/gosec/default.nix b/nixpkgs/pkgs/development/tools/gosec/default.nix
index 5f0f2da2daaa..a24ec1050146 100644
--- a/nixpkgs/pkgs/development/tools/gosec/default.nix
+++ b/nixpkgs/pkgs/development/tools/gosec/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "gosec";
-  version = "2.7.0";
+  version = "2.8.0";
 
   subPackages = [ "cmd/gosec" ];
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "securego";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-U7+0wXnuIDlATpVRVknwaPxib36+iYvvYUVM6d7Xf6I=";
+    sha256 = "sha256-AC3NHW7LYbpZGA+iaM9eXFLothhqZuvRJM1ehBByhpk=";
   };
 
-  vendorSha256 = "sha256-nr1rx6GM+ETcfLreYT081xNzUz2exloogJ+gcwF2u2o=";
+  vendorSha256 = "sha256-QfbElEjkYdmzYhQ8TOFIb2jfG2xzbW1UL2eLxROsBfw=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix b/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
index b857b910f0a5..3ebbc9b03396 100644
--- a/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
+++ b/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
@@ -1,13 +1,13 @@
-{ mkDerivation, base, containers, fetchgit, hedgehog
-, optparse-applicative, parsec, lib, template-haskell, text
+{ mkDerivation, base, containers, fetchgit, hedgehog, lib
+, optparse-applicative, parsec, template-haskell, text
 }:
 mkDerivation {
   pname = "dconf2nix";
-  version = "0.0.7";
+  version = "0.0.8";
   src = fetchgit {
     url = "https://github.com/gvolpe/dconf2nix.git";
-    sha256 = "04p8di1ckv5fkfa61pjg5xp8vcw091lz1kw39lh4w8ks2zjwaha1";
-    rev = "34c523e920b79208c3b4c0ad371900b0948799f7";
+    sha256 = "19jk3p0ys3lbqk21lm37a7alkg2vhnmkvcffjqfxrw8p4737hxid";
+    rev = "6bf3d7d4ca9f553a9e1ba4a70a65640114d230b2";
     fetchSubmodules = true;
   };
   isLibrary = true;
diff --git a/nixpkgs/pkgs/development/tools/haskell/hyper-haskell/default.nix b/nixpkgs/pkgs/development/tools/haskell/hyper-haskell/default.nix
index 6b1399046166..2b3fb76903e5 100644
--- a/nixpkgs/pkgs/development/tools/haskell/hyper-haskell/default.nix
+++ b/nixpkgs/pkgs/development/tools/haskell/hyper-haskell/default.nix
@@ -1,35 +1,37 @@
-{ lib, stdenv, fetchFromGitHub, jshon, electron_3
+{ lib, stdenvNoCC, fetchFromGitHub, jshon, electron_10
 , runtimeShell, hyper-haskell-server, extra-packages ? [] }:
 
 let
   binPath = lib.makeBinPath ([ hyper-haskell-server ] ++ extra-packages);
-  electron = electron_3;
-in stdenv.mkDerivation rec {
+  electron = electron_10;
+in stdenvNoCC.mkDerivation rec {
   pname = "hyper-haskell";
-  version = "0.1.0.2";
+  version = "0.2.3.0";
 
   src = fetchFromGitHub {
     owner = "HeinrichApfelmus";
     repo = "hyper-haskell";
     rev = "v${version}";
-    sha256 = "1k38h7qx12z7463z8466pji0nwfkp4qkg7q83kns2mzmwmw5jnmb";
+    sha256 = "1nmkry4wh6a2dy98fcs81mq2p7zhxp1k0f4m3szr6fm3j1zwrd43";
   };
 
   propagatedBuildInputs = extra-packages;
 
-  buildCommand = ''
+  dontBuild = true;
+
+  installPhase = ''
     mkdir -p $out/bin $out/share/hyper-haskell/worksheets $out/share/applications $out/share/icons/hicolor/scalable/apps $out/share/mime/packages
 
     # Electron app
-    cp -R $src/app $out
+    cp -R app $out
 
     # Desktop Launcher
-    cp $src/resources/hyper-haskell.desktop $out/share/applications/hyper-haskell.desktop
-    cp $src/resources/icons/icon.svg $out/share/icons/hicolor/scalable/apps/hyper-haskell.svg
-    cp $src/resources/shared-mime-info.xml $out/share/mime/packages/hyper-haskell.xml
+    cp resources/hyper-haskell.desktop $out/share/applications/hyper-haskell.desktop
+    cp resources/icons/icon.svg $out/share/icons/hicolor/scalable/apps/hyper-haskell.svg
+    cp resources/shared-mime-info.xml $out/share/mime/packages/hyper-haskell.xml
 
     # install example worksheets with backend set to nix
-    for worksheet in "$src/worksheets/"*.hhs; do
+    for worksheet in "worksheets/"*.hhs; do
       ${jshon}/bin/jshon -e settings -s nix -i packageTool -p < $worksheet > $out/share/hyper-haskell/worksheets/`basename $worksheet`
     done
 
diff --git a/nixpkgs/pkgs/development/tools/haskell/ihaskell/wrapper.nix b/nixpkgs/pkgs/development/tools/haskell/ihaskell/wrapper.nix
index 875d5a8a4a8d..4a8482314108 100644
--- a/nixpkgs/pkgs/development/tools/haskell/ihaskell/wrapper.nix
+++ b/nixpkgs/pkgs/development/tools/haskell/ihaskell/wrapper.nix
@@ -2,9 +2,8 @@
 let
   ihaskellEnv = ghcWithPackages (self: [
     self.ihaskell
-    (haskell.lib.doJailbreak self.ihaskell-blaze)
-    (haskell.lib.doJailbreak self.ihaskell-diagrams)
-    (haskell.lib.doJailbreak self.ihaskell-display)
+    self.ihaskell-blaze
+    self.ihaskell-diagrams
   ] ++ packages self);
   ihaskellSh = writeScriptBin "ihaskell-notebook" ''
     #! ${stdenv.shell}
diff --git a/nixpkgs/pkgs/development/tools/hobbes/default.nix b/nixpkgs/pkgs/development/tools/hobbes/default.nix
index 667997ddff4d..f4741a390ed1 100644
--- a/nixpkgs/pkgs/development/tools/hobbes/default.nix
+++ b/nixpkgs/pkgs/development/tools/hobbes/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, llvm_6, ncurses, readline, zlib }:
+{ lib, stdenv, fetchFromGitHub, cmake, llvm_6, ncurses, readline, zlib, libxml2 }:
 
 stdenv.mkDerivation {
   name = "hobbes";
@@ -20,6 +20,7 @@ stdenv.mkDerivation {
     ncurses
     readline
     zlib
+    libxml2
   ];
 
   doCheck = false; # Running tests in NixOS hangs. See https://git.io/JvK7R.
diff --git a/nixpkgs/pkgs/development/tools/ijq/default.nix b/nixpkgs/pkgs/development/tools/ijq/default.nix
index 0b0af79301ef..f3c0b6c7b1b8 100644
--- a/nixpkgs/pkgs/development/tools/ijq/default.nix
+++ b/nixpkgs/pkgs/development/tools/ijq/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "ijq";
-  version = "0.2.3";
+  version = "0.3.4";
 
   src = fetchgit {
     url = "https://git.sr.ht/~gpanders/ijq";
     rev = "v${version}";
-    sha256 = "14n54jh5387jf97zhc7aidn7w60zp5624xbvq4jdbsh96apg3bk1";
+    sha256 = "ZKxEK6SPxEC0S5yXSzITPn0HhpJa4Bcf9X8/N+ZZAeA=";
   };
 
-  vendorSha256 = "0xbni6lk6y3ig7pj2234fv7ra6b8qv0k8m3bvh59wwans8xpihzb";
+  vendorSha256 = "04KlXE2I8ZVDbyo9tBnFskLB6fo5W5/lPzSpo8KGqUU=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/development/tools/irony-server/default.nix b/nixpkgs/pkgs/development/tools/irony-server/default.nix
index 2f8afb176e6e..2a7a7b1a16a3 100644
--- a/nixpkgs/pkgs/development/tools/irony-server/default.nix
+++ b/nixpkgs/pkgs/development/tools/irony-server/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   pname = "irony-server";
   inherit (irony) src version;
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake llvmPackages.llvm.dev ];
   buildInputs = [ llvmPackages.libclang llvmPackages.llvm ];
 
   dontUseCmakeBuildDir = true;
diff --git a/nixpkgs/pkgs/development/tools/java/visualvm/default.nix b/nixpkgs/pkgs/development/tools/java/visualvm/default.nix
index 4425071cb140..c0082f463057 100644
--- a/nixpkgs/pkgs/development/tools/java/visualvm/default.nix
+++ b/nixpkgs/pkgs/development/tools/java/visualvm/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchzip, lib, makeWrapper, makeDesktopItem, jdk, gawk }:
 
 stdenv.mkDerivation rec {
-  version = "2.0.6";
+  version = "2.0.7";
   pname = "visualvm";
 
   src = fetchzip {
     url = "https://github.com/visualvm/visualvm.src/releases/download/${version}/visualvm_${builtins.replaceStrings ["."] [""]  version}.zip";
-    sha256 = "sha256-HoDV8Z024+WnECw1ZVwA3dEfbKtuTd4he40UwQnpiGQ=";
+    sha256 = "sha256-IbiyrP3rIj3VToav1bhKnje0scEPSyLwsyclpW7nB+U=";
   };
 
   desktopItem = makeDesktopItem {
@@ -27,9 +27,6 @@ stdenv.mkDerivation rec {
       --replace "#visualvm_jdkhome=" "visualvm_jdkhome=" \
       --replace "/path/to/jdk" "${jdk.home}" \
 
-    substituteInPlace platform/lib/nbexec \
-      --replace /usr/bin/\''${awk} ${gawk}/bin/awk
-
     cp -r . $out
   '';
 
diff --git a/nixpkgs/pkgs/development/tools/just/default.nix b/nixpkgs/pkgs/development/tools/just/default.nix
index 5b3f966399f9..dbd10772a626 100644
--- a/nixpkgs/pkgs/development/tools/just/default.nix
+++ b/nixpkgs/pkgs/development/tools/just/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "0.9.0";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-orHUovyFFOPRvbfLKQhkfZzM0Gs2Cpe1uJg/6+P8HKY=";
+    sha256 = "sha256-C0W5oMnKlQ5hg/0YLKZKiQfLghJ7yAJYW6k0G6eOFQE=";
   };
 
-  cargoSha256 = "sha256-YDIGZRbszhgWM7iAc2i89jyndZvZZsg63ADQfqFxfXw=";
+  cargoSha256 = "sha256-TqvUunBFpKIog0pG85M/JLz8orncgbRqnQolseXYSo4=";
 
   nativeBuildInputs = [ installShellFiles ];
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
@@ -31,23 +31,30 @@ rustPlatform.buildRustPackage rec {
     # USER must not be empty
     export USER=just-user
     export USERNAME=just-user
+    export JUST_CHOOSER="${coreutils}/bin/cat"
+
+    # Prevent string.rs from being changed
+    cp tests/string.rs $TMPDIR/string.rs
 
     sed -i src/justfile.rs \
         -i tests/*.rs \
         -e "s@/bin/echo@${coreutils}/bin/echo@g" \
-        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
-        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g" \
-        -e "s@#!/usr/bin/env bash@#!${bash}/bin/sh@g"
+        -e "s@/usr/bin/env@${coreutils}/bin/env@g"
+
+    # Return unchanged string.rs
+    cp $TMPDIR/string.rs tests/string.rs
   '';
 
-  # Skip "edit" when running "cargo test", since this test case needs "cat".
-  # Skip "choose" when running "cargo test", since this test case needs "fzf".
-  checkFlags = [ "--skip=choose" "--skip=edit" ];
+  checkFlags = [
+    "--skip=edit" # trying to run "vim" fails as there's no /usr/bin/env or which in the sandbox to find vim and the dependency is not easily patched
+    "--skip=run_shebang" # test case very rarely fails with "Text file busy"
+  ];
 
   meta = with lib; {
-    description = "A handy way to save and run project-specific commands";
     homepage = "https://github.com/casey/just";
+    changelog = "https://github.com/casey/just/blob/v${version}/CHANGELOG.md";
+    description = "A handy way to save and run project-specific commands";
     license = licenses.cc0;
-    maintainers = with maintainers; [ xrelkd ];
+    maintainers = with maintainers; [ xrelkd jk ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/kgt/default.nix b/nixpkgs/pkgs/development/tools/kgt/default.nix
new file mode 100644
index 000000000000..94f72ceac10b
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/kgt/default.nix
@@ -0,0 +1,81 @@
+{ lib, stdenv, fetchFromGitHub, bmake, cleanPackaging }:
+
+stdenv.mkDerivation {
+  pname = "kgt";
+  version = "2021-04-07";
+
+  src = fetchFromGitHub {
+    owner = "katef";
+    repo = "kgt";
+    # 2021-04-07, no version tags (yet)
+    rev = "a7cbc52d368e413a3f1212c0fafccc05b2a42606";
+    sha256 = "1x6q30xb8ihxi26rzk3s2hqd827fim4l4wn3qq252ibrwcq6lqyj";
+    fetchSubmodules = true;
+  };
+
+  outputs = [ "bin" "doc" "out" ];
+
+  nativeBuildInputs = [ bmake ];
+  enableParallelBuilding = true;
+
+  makeFlags = [ "-r" "PREFIX=$(bin)" ];
+
+  installPhase = ''
+    runHook preInstall
+
+    ${cleanPackaging.commonFileActions {
+        docFiles = [
+          "README.md"
+          "LICENCE"
+          "examples"
+          # TODO: this is just a docbook file, not a mangpage yet
+          # https://github.com/katef/kgt/issues/50
+          "man"
+          "examples"
+          "doc"
+        ];
+        noiseFiles = [
+          "build/src"
+          "build/lib"
+          "Makefile"
+          "src/**/*.c"
+          "src/**/*.h"
+          "src/**/Makefile"
+          "src/**/lexer.lx"
+          "src/**/parser.sid"
+          "src/**/parser.act"
+          "share/git"
+          "share/css"
+          "share/xsl"
+          ".gitignore"
+          ".gitmodules"
+          ".gitattributes"
+          ".github"
+        ];
+      }} $doc/share/doc/kgt
+
+    install -Dm755 build/bin/kgt $bin/bin/kgt
+    rm build/bin/kgt
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    ${cleanPackaging.checkForRemainingFiles}
+  '';
+
+  meta = with lib; {
+    description = "BNF wrangling and railroad diagrams";
+    longDescription = ''
+      KGT: Kate's Grammar Tool
+
+      Input: Various BNF-like syntaxes
+      Output: Various BNF-like syntaxes, AST dumps, and Railroad Syntax Diagrams
+    '';
+    homepage    = "https://github.com/katef/kgt";
+    license     = licenses.bsd2;
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ Profpatsch ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/development/tools/kind/default.nix b/nixpkgs/pkgs/development/tools/kind/default.nix
index 47b23ae2342d..88bc30943c38 100644
--- a/nixpkgs/pkgs/development/tools/kind/default.nix
+++ b/nixpkgs/pkgs/development/tools/kind/default.nix
@@ -4,16 +4,16 @@ with lib;
 
 buildGoModule rec {
   pname = "kind";
-  version = "0.10.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "kubernetes-sigs";
     repo   = "kind";
-    sha256 = "1pp2x4bfqsd15siahyv9xkdyswsipmp9n86iwavrd0xhliqxlsa7";
+    sha256 = "sha256-pjg52ONseKNw06EOBzD6Elge+Cz+C3llPvjJPHkn1cw=";
   };
 
-  vendorSha256 = "0c0j4s8kfzk2b3hy0d2g5bp1zr60l6vnwnpynsg6ksv8spwnpl5m";
+  vendorSha256 = "sha256-HiVdekSZrC/RkMSvcwm1mv6AE4bA5kayUsMdVCbckiE=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/knightos/mkrom/default.nix b/nixpkgs/pkgs/development/tools/knightos/mkrom/default.nix
index 2e067e92d919..21caa5b8b32a 100644
--- a/nixpkgs/pkgs/development/tools/knightos/mkrom/default.nix
+++ b/nixpkgs/pkgs/development/tools/knightos/mkrom/default.nix
@@ -1,25 +1,27 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libxslt, asciidoc }:
+{ lib, stdenv, fetchFromGitHub, libxslt, asciidoc }:
 
 stdenv.mkDerivation rec {
   pname = "mkrom";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "KnightOS";
     repo = "mkrom";
     rev = version;
-    sha256 = "0xgvanya40mdwy35j94j61hsp80dm5b440iphmr5ng3kjgchvpx2";
+    sha256 = "sha256-YFrh0tOGiM90uvU9ZWopW1+9buHDQtetuOtPDSYYaXw=";
   };
 
   strictDeps = true;
-  nativeBuildInputs = [ asciidoc cmake libxslt.bin ];
+  nativeBuildInputs = [ asciidoc libxslt.bin ];
 
-  hardeningDisable = [ "format" ];
+  installFlags = [ "DESTDIR=$(out)" ];
+  installTargets = [ "install" "install_man" ];
 
   meta = with lib; {
     homepage    = "https://knightos.org/";
     description = "Packages KnightOS distribution files into a ROM";
     license     = licenses.mit;
     maintainers = with maintainers; [ siraben ];
+    platforms   = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/knightos/scas/default.nix b/nixpkgs/pkgs/development/tools/knightos/scas/default.nix
index ceb8212cf7f9..255ecf798d86 100644
--- a/nixpkgs/pkgs/development/tools/knightos/scas/default.nix
+++ b/nixpkgs/pkgs/development/tools/knightos/scas/default.nix
@@ -2,14 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "scas";
-
-  version = "0.5.3";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "KnightOS";
     repo = "scas";
     rev = version;
-    sha256 = "0z6r07cl92kq860ddas5p88l990ih9cfqlzy5y4mk5hrmjzya60j";
+    sha256 = "sha256-JGQE+orVDKKJsTt8sIjPX+3yhpZkujISroQ6g19+MzU=";
   };
 
   cmakeFlags = [ "-DSCAS_LIBRARY=1" ];
diff --git a/nixpkgs/pkgs/development/tools/krankerl/default.nix b/nixpkgs/pkgs/development/tools/krankerl/default.nix
index b771fe6bfc5c..8697f81a9da6 100644
--- a/nixpkgs/pkgs/development/tools/krankerl/default.nix
+++ b/nixpkgs/pkgs/development/tools/krankerl/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "krankerl";
-  version = "0.13.0";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "ChristophWurst";
     repo = "krankerl";
     rev = "v${version}";
-    sha256 = "1gp8b2m8kcz2f16zv9xwv4n1zki6imvz9z31kixh6amdj6fif3d1";
+    sha256 = "sha256-uIFcWHdW8887CDkFxZznh9akYs+vxsE9Bc9g1hKi7Kc=";
   };
 
-  cargoSha256 = "sha256:01hcxs14wwhhvr08x816wa3jcm4zvm6g7vais793cgijipyv00rc";
+  cargoSha256 = "sha256-6joHwz0HIVbta8ALvsJLMvmeDh9IFPR4Cx36H63MliI=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/nixpkgs/pkgs/development/tools/kubie/default.nix b/nixpkgs/pkgs/development/tools/kubie/default.nix
index c00304c1ec52..c563d9bef096 100644
--- a/nixpkgs/pkgs/development/tools/kubie/default.nix
+++ b/nixpkgs/pkgs/development/tools/kubie/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kubie";
-  version = "0.13.4";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "sbstp";
     repo = "kubie";
-    sha256 = "sha256-ZD63Xtnw7qzTrzFxzzZ37N177/PnRaMEzBbhz7h/zCY=";
+    sha256 = "sha256-uNlKxcU1iCR4JzNfBatEeKMMdu9ZqvOqna0sGrcwK30=";
   };
 
-  cargoSha256 = "sha256-c6veaasuwRtaO8TwHS0tNxjbBfekQOa52I9INcE1Jn0=";
+  cargoSha256 = "sha256-4Xo17HlYvJLf90R0gS9EFJSJKmNHClXqAJTx9mY29KA=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/development/tools/kustomize/default.nix b/nixpkgs/pkgs/development/tools/kustomize/default.nix
index b5b0c8b81bf8..489b62891b65 100644
--- a/nixpkgs/pkgs/development/tools/kustomize/default.nix
+++ b/nixpkgs/pkgs/development/tools/kustomize/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "kustomize";
-  version = "4.0.5";
+  version = "4.1.3";
   # rev is the commit of the tag, mainly for kustomize version command output
   rev = "9e8e7a7fe99ec9fbf801463e8607928322fc5245";
 
@@ -17,7 +17,7 @@ buildGoModule rec {
     owner = "kubernetes-sigs";
     repo = pname;
     rev = "kustomize/v${version}";
-    sha256 = "sha256-rv65sDr6V6hEYgIRxS1OSu9txmW75F7/YGAy/zRXGyY=";
+    sha256 = "sha256-NPWKInDHOoelWqDrUn/AlRItI4e8J6dbBxgLW078ecs=";
   };
 
   # TODO: Remove once https://github.com/kubernetes-sigs/kustomize/pull/3708 got merged.
@@ -26,7 +26,7 @@ buildGoModule rec {
   # avoid finding test and development commands
   sourceRoot = "source/kustomize";
 
-  vendorSha256 = "sha256-lLUi0vD7uyfDR4HjDiosoTU0NbfQTY7ewZGm38ZT9nU=";
+  vendorSha256 = "sha256-6maEpEPEV436NrVnVlvWV1q6YywGVILXbxn8Z8Ku/hs=";
 
   meta = with lib; {
     description = "Customization of kubernetes YAML configurations";
diff --git a/nixpkgs/pkgs/development/tools/kustomize/kustomize-sops.nix b/nixpkgs/pkgs/development/tools/kustomize/kustomize-sops.nix
index e471489e7095..7753556a4ea5 100644
--- a/nixpkgs/pkgs/development/tools/kustomize/kustomize-sops.nix
+++ b/nixpkgs/pkgs/development/tools/kustomize/kustomize-sops.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kustomize-sops";
-  version = "2.5.2";
+  version = "2.5.5";
 
   src = fetchFromGitHub {
     owner = "viaduct-ai";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-c8v9O3ufTZ7/rWwLNoak0ITlEVlOg9MvheRjQIxPwKc=";
+    sha256 = "sha256-lNC8TwX462Lnt/uiKWt9hNa81g3tdenvvuNQJNkj7hM=";
   };
 
-  vendorSha256 = "sha256-kJtJ2ut+yhgNoPIY5i3dKmQV0g+8RvcGnxCyay7wy2A=";
+  vendorSha256 = "sha256-uStmUhiZuUguxUx2L8ifSNnbMCs7Jk+6tq7qZdACjag=";
 
   installPhase = ''
     mkdir -p $out/lib/viaduct.ai/v1/ksops-exec/
diff --git a/nixpkgs/pkgs/development/tools/lazygit/default.nix b/nixpkgs/pkgs/development/tools/lazygit/default.nix
index 7038b7c1eb03..af33938c1a6f 100644
--- a/nixpkgs/pkgs/development/tools/lazygit/default.nix
+++ b/nixpkgs/pkgs/development/tools/lazygit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "lazygit";
-  version = "0.28.1";
+  version = "0.28.2";
 
   src = fetchFromGitHub {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-tan8ksSyMIeDL7oRAWd3Qtz/sKbhAAfY7IknfwjyvgQ=";
+    sha256 = "sha256-s5Ou0FhL9+2/xm7lKMG/3ya5P8idI0cgtJ28cV37pJQ=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/luaformatter/default.nix b/nixpkgs/pkgs/development/tools/luaformatter/default.nix
index 991f1a377170..064ef8453d25 100644
--- a/nixpkgs/pkgs/development/tools/luaformatter/default.nix
+++ b/nixpkgs/pkgs/development/tools/luaformatter/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "luaformatter";
-  version = "1.3.4";
+  version = "1.3.6";
 
   src = fetchFromGitHub {
     owner = "koihik";
     repo = "luaformatter";
     rev = version;
-    sha256 = "163190g37r6npg5k5mhdwckdhv9nwy2gnfp5jjk8p0s6cyvydqjw";
+    sha256 = "0440kdab5i0vhlk71sbprdrhg362al8jqpy7w2vdhcz1fpi5cm0b";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/tools/metals/default.nix b/nixpkgs/pkgs/development/tools/metals/default.nix
index d686067e633c..b85ca99a9e60 100644
--- a/nixpkgs/pkgs/development/tools/metals/default.nix
+++ b/nixpkgs/pkgs/development/tools/metals/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "metals";
-  version = "0.10.2";
+  version = "0.10.4";
 
   deps = stdenv.mkDerivation {
     name = "${pname}-deps-${version}";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "1yck935pcj9cg3qxzrmvgd16afsckz8wgmzf2rlmii2c1glrbq9c";
+    outputHash     = "0pjgnm5argmc92872vblsz0pw2wniggvkw4w2346ps09ybdv9r3q";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/misc/act/default.nix b/nixpkgs/pkgs/development/tools/misc/act/default.nix
index 3b9cc67bc2c3..8c01aea284eb 100644
--- a/nixpkgs/pkgs/development/tools/misc/act/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/act/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "act";
-  version = "0.2.21";
+  version = "0.2.22";
 
   src = fetchFromGitHub {
     owner = "nektos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-XDxG7F+oBatlb4ROBryt2Fop402riKmYoqZLJrUzBUQ=";
+    sha256 = "sha256-a+yw7QSLNX3hO2GnFCifYMbPWYwtleUZS1AqPsxw9t8=";
   };
 
-  vendorSha256 = "sha256-PwVDMSl36m+6ISJQvyrkCjaL3xp5VkaZtfxyMpNn+KI=";
+  vendorSha256 = "sha256-6jD+gY/TmO/Ot507IlTLNdWv7G4BHYlk/E9rVoRD65A=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/misc/autoconf/default.nix b/nixpkgs/pkgs/development/tools/misc/autoconf/default.nix
index ae8fc2d90619..3b70e819c899 100644
--- a/nixpkgs/pkgs/development/tools/misc/autoconf/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/autoconf/default.nix
@@ -6,11 +6,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "autoconf-2.70";
+  name = "autoconf-2.71";
 
   src = fetchurl {
     url = "mirror://gnu/autoconf/${name}.tar.xz";
-    sha256 = "1ipckz0wr2mvhj9n3ys54fmf2aksin6bhqvzl304bn6rc1w257ps";
+    sha256 = "197sl23irn6s9pd54rxj5vcp5y8dv65jb9yfqgr2g56cxg7q6k7i";
   };
 
   nativeBuildInputs = [ m4 perl ];
diff --git a/nixpkgs/pkgs/development/tools/misc/autogen/default.nix b/nixpkgs/pkgs/development/tools/misc/autogen/default.nix
index c6eb6916d1ec..75c6471eb4c6 100644
--- a/nixpkgs/pkgs/development/tools/misc/autogen/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/autogen/default.nix
@@ -62,7 +62,9 @@ stdenv.mkDerivation rec {
       # the configure check for regcomp wants to run a host program
       "libopts_cv_with_libregex=yes"
       #"MAKEINFO=${buildPackages.texinfo}/bin/makeinfo"
-    ]);
+    ])
+    # See: https://sourceforge.net/p/autogen/bugs/187/
+    ++ lib.optionals stdenv.isDarwin [ "ac_cv_func_utimensat=no" ];
 
   #doCheck = true; # not reliable
 
diff --git a/nixpkgs/pkgs/development/tools/misc/binutils/default.nix b/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
index 995f3f7430cc..8042655a859d 100644
--- a/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
@@ -107,8 +107,7 @@ stdenv.mkDerivation {
 
   hardeningDisable = [ "format" "pie" ];
 
-  # TODO(@Ericson2314): Always pass "--target" and always targetPrefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   configureFlags =
     (if enableShared then [ "--enable-shared" "--disable-static" ]
@@ -126,7 +125,19 @@ stdenv.mkDerivation {
     # RUNPATH instead of RPATH on binaries.  This is important because
     # RUNPATH can be overriden using LD_LIBRARY_PATH at runtime.
     "--enable-new-dtags"
-  ] ++ lib.optionals gold [ "--enable-gold" "--enable-plugins" ];
+
+    # force target prefix. Some versions of binutils will make it empty
+    # if `--host` and `--target` are too close, even if Nixpkgs thinks
+    # the platforms are different (e.g. because not all the info makes
+    # the `config`). Other versions of binutils will always prefix if
+    # `--target` is passed, even if `--host` and `--target` are the same.
+    # The easiest thing for us to do is not leave it to chance, and force
+    # the program prefix to be what we want it to be.
+    "--program-prefix=${targetPrefix}"
+  ] ++ lib.optionals gold [
+    "--enable-gold"
+    "--enable-plugins"
+  ];
 
   doCheck = false; # fails
 
diff --git a/nixpkgs/pkgs/development/tools/misc/ccache/default.nix b/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
index 4128118decf6..94fca742b6d3 100644
--- a/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
@@ -7,26 +7,25 @@
 , cmake
 , perl
 , zstd
+, bashInteractive
 , xcodebuild
 , makeWrapper
 }:
 
 let ccache = stdenv.mkDerivation rec {
   pname = "ccache";
-  version = "4.2.1";
+  version = "4.3";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-AmgJpW7AGCSggbHp1fLO5yhXS9LIm7O77nQdDERJYAA=";
+    hash = "sha256-ZBxDTMUZiZJLIYbvACTFwvlss+IZiMjiL0khfM5hFCM=";
   };
 
-  patches = [
-    # test/run use compgen to get environment variable names, but
-    # compgen isn't available in non-interactive bash.
-    ./env-instead-of-compgen.patch
+  outputs = [ "out" "man" ];
 
+  patches = [
     # When building for Darwin, test/run uses dwarfdump, whereas on
     # Linux it uses objdump. We don't have dwarfdump packaged for
     # Darwin, so this patch updates the test to also use objdump on
@@ -38,18 +37,22 @@ let ccache = stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ asciidoc cmake perl ];
-
   buildInputs = [ zstd ];
 
-  outputs = [ "out" "man" ];
-
   doCheck = true;
-  checkInputs = lib.optional stdenv.isDarwin xcodebuild;
+  checkInputs = [
+    # test/run requires the compgen function which is available in
+    # bashInteractive, but not bash.
+    bashInteractive
+  ] ++ lib.optional stdenv.isDarwin xcodebuild;
+
   checkPhase = ''
+    runHook preCheck
     export HOME=$(mktemp -d)
     ctest --output-on-failure ${lib.optionalString stdenv.isDarwin ''
       -E '^(test.nocpp2|test.basedir|test.multi_arch)$'
     ''}
+    runHook postCheck
   '';
 
   passthru = {
@@ -99,7 +102,7 @@ let ccache = stdenv.mkDerivation rec {
     homepage = "https://ccache.dev";
     downloadPage = "https://ccache.dev/download.html";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ metadark r-burns ];
+    maintainers = with maintainers; [ kira-bruneau r-burns ];
     platforms = platforms.unix;
   };
 };
diff --git a/nixpkgs/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch b/nixpkgs/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch
deleted file mode 100644
index 313de0fa58c3..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/test/run b/test/run
-index cbdd98f0..bc930200 100755
---- a/test/run
-+++ b/test/run
-@@ -346,11 +346,11 @@ expect_perm() {
- }
- 
- reset_environment() {
--    while IFS= read -r name; do
-+    while IFS='=' read -r name value; do
-         if [[ $name =~ ^CCACHE_[A-Z0-9_]*$ ]]; then
-             unset $name
-         fi
--    done < <(compgen -e)
-+    done < <(env)
- 
-     unset GCC_COLORS
-     unset TERM
diff --git a/nixpkgs/pkgs/development/tools/misc/ccls/default.nix b/nixpkgs/pkgs/development/tools/misc/ccls/default.nix
index 06f3723509f5..bd753016fc8b 100644
--- a/nixpkgs/pkgs/development/tools/misc/ccls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ccls/default.nix
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-jipSipgD0avd7XODlpxnqjHK3s6nacaxbIQIddix7X8=";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = with llvmPackages; [ clang-unwrapped llvm rapidjson ];
+  nativeBuildInputs = [ cmake llvmPackages.llvm.dev ];
+  buildInputs = with llvmPackages; [ libclang llvm rapidjson ];
 
   cmakeFlags = [ "-DCCLS_VERSION=${version}" ];
 
@@ -21,17 +21,11 @@ stdenv.mkDerivation rec {
     cmakeFlagsArray+=(-DCMAKE_CXX_FLAGS="-fvisibility=hidden -fno-rtti")
   '';
 
+  clang = llvmPackages.clang;
   shell = runtimeShell;
-  postFixup = ''
-    # We need to tell ccls where to find the standard library headers.
-
-    standard_library_includes="\\\"-isystem\\\", \\\"${lib.getDev stdenv.cc.libc}/include\\\""
-    standard_library_includes+=", \\\"-isystem\\\", \\\"${llvmPackages.libcxx}/include/c++/v1\\\""
-    export standard_library_includes
-
-    wrapped=".ccls-wrapped"
-    export wrapped
 
+  postFixup = ''
+    export wrapped=".ccls-wrapped"
     mv $out/bin/ccls $out/bin/$wrapped
     substituteAll ${./wrapper} $out/bin/ccls
     chmod --reference=$out/bin/$wrapped $out/bin/ccls
diff --git a/nixpkgs/pkgs/development/tools/misc/ccls/wrapper b/nixpkgs/pkgs/development/tools/misc/ccls/wrapper
index 155e6d4f6474..c92bc6b40d1a 100644
--- a/nixpkgs/pkgs/development/tools/misc/ccls/wrapper
+++ b/nixpkgs/pkgs/development/tools/misc/ccls/wrapper
@@ -1,12 +1,9 @@
 #! @shell@ -e
 
-initString="--init={\"clang\":{\"extraArgs\": [@standard_library_includes@"
-
-if [ "${NIX_CFLAGS_COMPILE}" != "" ]; then
-  read -a cflags_array <<< ${NIX_CFLAGS_COMPILE}
-  initString+=$(printf ', \"%s\"' "${cflags_array[@]}")
-fi
-
-initString+="]}}"
+printf -v extraArgs ',\"%s\"' \
+  $(cat @clang@/nix-support/libc-cflags \
+        @clang@/nix-support/libcxx-cxxflags) \
+  ${NIX_CFLAGS_COMPILE}
+initString="--init={\"clang\":{\"extraArgs\":[${extraArgs:1}]}}"
 
 exec -a "$0" "@out@/bin/@wrapped@" "${initString}" "$@"
diff --git a/nixpkgs/pkgs/development/tools/misc/cli11/default.nix b/nixpkgs/pkgs/development/tools/misc/cli11/default.nix
index d62ad413e1ac..dbab7c880efb 100644
--- a/nixpkgs/pkgs/development/tools/misc/cli11/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cli11/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     description = "Command line parser for C++11";
     homepage = "https://github.com/CLIUtils/CLI11";
     platforms = platforms.unix;
-    maintainers = with maintainers; [ nand0p ];
+    maintainers = with maintainers; [ ];
     license = licenses.bsd3;
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix b/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
index 40a22f18203b..8534f1e2d85a 100644
--- a/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
@@ -2,36 +2,20 @@
 
 stdenv.mkDerivation rec {
   pname = "coccinelle";
-  version = "1.0.6";
+  version = "1.1.0";
 
   src = fetchurl {
-    url = "http://coccinelle.lip6.fr/distrib/${pname}-${version}.tgz";
-    sha256 = "02g9hmwkvfl838zz690yra5jzrqjg6y6ffxkrfcsx790bhkfsll4";
+    url = "https://coccinelle.gitlabpages.inria.fr/website/distrib/${pname}-${version}.tar.gz";
+    sha256 = "0k0x4qnxzj8fymkp6y9irggcah070hj7hxq8l6ddj8ccpmjbhnsb";
   };
 
   buildInputs = with ocamlPackages; [
     ocaml findlib menhir
-    ocaml_pcre pycaml
+    ocaml_pcre parmap stdcompat
     python ncurses pkg-config
   ];
 
-  doCheck = !stdenv.isDarwin;
-
-  # The build system builds two versions of spgen:
-  # 'spgen' with ocamlc -custom (bytecode specially linked)
-  # and 'spgen.opt' using ocamlopt.
-  # I'm not sure of the intentions here, but the way
-  # the 'spgen' binary is produced results in an
-  # invalid/incorrect interpreter path (/lib/ld-linux*).
-  # We could patch it, but without knowing why it's
-  # finding the wrong path it seems safer to use
-  # the .opt version that is built correctly.
-  # All that said, our fix here is simple: remove 'spgen'.
-  # The bin/spgen entrypoint is really a bash script
-  # and will use spgen.opt if 'spgen' doesn't exist.
-  postInstall = ''
-    rm $out/lib/coccinelle/spgen/spgen
-  '';
+  doCheck = false;
 
   meta = {
     description = "Program to apply semantic patches to C code";
diff --git a/nixpkgs/pkgs/development/tools/misc/creduce/default.nix b/nixpkgs/pkgs/development/tools/misc/creduce/default.nix
index 75234fde6ca5..0ae900060b97 100644
--- a/nixpkgs/pkgs/development/tools/misc/creduce/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/creduce/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, cmake, makeWrapper
-, llvm, clang-unwrapped
+, llvm, libclang
 , flex
 , zlib
 , perlPackages
@@ -15,12 +15,12 @@ stdenv.mkDerivation rec {
     sha256 = "1b833z0g1hich68kzbkpfc26xb8w2phfl5savy8c6ir9ihwy1a8w";
   };
 
-  nativeBuildInputs = [ cmake makeWrapper ];
+  nativeBuildInputs = [ cmake makeWrapper llvm.dev ];
   buildInputs = [
     # Ensure stdenv's CC is on PATH before clang-unwrapped
     stdenv.cc
     # Actual deps:
-    llvm clang-unwrapped
+    llvm libclang
     flex zlib
   ] ++ (with perlPackages; [ perl ExporterLite FileWhich GetoptTabular RegexpCommon TermReadKey ]);
 
diff --git a/nixpkgs/pkgs/development/tools/misc/ctags/default.nix b/nixpkgs/pkgs/development/tools/misc/ctags/default.nix
index 90825db2a549..fde7307b27dc 100644
--- a/nixpkgs/pkgs/development/tools/misc/ctags/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ctags/default.nix
@@ -15,6 +15,13 @@ stdenv.mkDerivation rec {
   # don't use $T(E)MP which is set to the build directory
   configureFlags= [ "--enable-tmpdir=/tmp" ];
 
+  patches = [
+    # Library defines an `__unused__` which is a reserved name, and may
+    # conflict with the standard library definition. One such conflict is with
+    # macOS headers.
+    ./unused-collision.patch
+  ];
+
   meta = with lib; {
     description = "A tool for fast source code browsing (exuberant ctags)";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/tools/misc/ctags/unused-collision.patch b/nixpkgs/pkgs/development/tools/misc/ctags/unused-collision.patch
new file mode 100644
index 000000000000..595f67a01b5a
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/ctags/unused-collision.patch
@@ -0,0 +1,246 @@
+--- a/c.c	(revision 816)
++++ b/c.c	(working copy)
+@@ -619,7 +619,7 @@
+ 	return name;
+ }
+ 
+-static void __unused__ pt (tokenInfo *const token)
++static void UNUSED pt (tokenInfo *const token)
+ {
+ 	if (isType (token, TOKEN_NAME))
+ 		printf ("type: %-12s: %-13s   line: %lu\n",
+@@ -634,7 +634,7 @@
+ 			tokenString (token->type), token->lineNumber);
+ }
+ 
+-static void __unused__ ps (statementInfo *const st)
++static void UNUSED ps (statementInfo *const st)
+ {
+ 	unsigned int i;
+ 	printf ("scope: %s   decl: %s   gotName: %s   gotParenName: %s\n",
+--- a/eiffel.c	(revision 816)
++++ b/eiffel.c	(working copy)
+@@ -807,7 +807,7 @@
+ 
+ static boolean parseType (tokenInfo *const token);
+ 
+-static void parseGeneric (tokenInfo *const token, boolean declaration __unused__)
++static void parseGeneric (tokenInfo *const token, boolean declaration UNUSED)
+ {
+ 	unsigned int depth = 0;
+ #ifdef TYPE_REFERENCE_TOOL
+--- a/general.h	(revision 816)
++++ b/general.h	(working copy)
+@@ -57,10 +57,10 @@
+  *  to prevent warnings about unused variables.
+  */
+ #if (__GNUC__ > 2  ||  (__GNUC__ == 2  &&  __GNUC_MINOR__ >= 7)) && !defined (__GNUG__)
+-# define __unused__  __attribute__((unused))
++# define UNUSED  __attribute__((unused))
+ # define __printf__(s,f)  __attribute__((format (printf, s, f)))
+ #else
+-# define __unused__
++# define UNUSED
+ # define __printf__(s,f)
+ #endif
+ 
+--- a/lregex.c	(revision 816)
++++ b/lregex.c	(working copy)
+@@ -538,11 +538,11 @@
+ #endif  /* HAVE_REGEX */
+ 
+ extern void addTagRegex (
+-		const langType language __unused__,
+-		const char* const regex __unused__,
+-		const char* const name __unused__,
+-		const char* const kinds __unused__,
+-		const char* const flags __unused__)
++		const langType language UNUSED,
++		const char* const regex UNUSED,
++		const char* const name UNUSED,
++		const char* const kinds UNUSED,
++		const char* const flags UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	Assert (regex != NULL);
+@@ -564,10 +564,10 @@
+ }
+ 
+ extern void addCallbackRegex (
+-		const langType language __unused__,
+-		const char* const regex __unused__,
+-		const char* const flags __unused__,
+-		const regexCallback callback __unused__)
++		const langType language UNUSED,
++		const char* const regex UNUSED,
++		const char* const flags UNUSED,
++		const regexCallback callback UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	Assert (regex != NULL);
+@@ -581,7 +581,7 @@
+ }
+ 
+ extern void addLanguageRegex (
+-		const langType language __unused__, const char* const regex __unused__)
++		const langType language UNUSED, const char* const regex UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	if (! regexBroken)
+@@ -602,7 +602,7 @@
+ */
+ 
+ extern boolean processRegexOption (const char *const option,
+-								   const char *const parameter __unused__)
++								   const char *const parameter UNUSED)
+ {
+ 	boolean handled = FALSE;
+ 	const char* const dash = strchr (option, '-');
+@@ -624,7 +624,7 @@
+ 	return handled;
+ }
+ 
+-extern void disableRegexKinds (const langType language __unused__)
++extern void disableRegexKinds (const langType language UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	if (language <= SetUpper  &&  Sets [language].count > 0)
+@@ -639,8 +639,8 @@
+ }
+ 
+ extern boolean enableRegexKind (
+-		const langType language __unused__,
+-		const int kind __unused__, const boolean mode __unused__)
++		const langType language UNUSED,
++		const int kind UNUSED, const boolean mode UNUSED)
+ {
+ 	boolean result = FALSE;
+ #ifdef HAVE_REGEX
+@@ -660,7 +660,7 @@
+ 	return result;
+ }
+ 
+-extern void printRegexKinds (const langType language __unused__, boolean indent __unused__)
++extern void printRegexKinds (const langType language UNUSED, boolean indent UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	if (language <= SetUpper  &&  Sets [language].count > 0)
+--- a/lua.c	(revision 816)
++++ b/lua.c	(working copy)
+@@ -37,7 +37,7 @@
+ */
+ 
+ /* for debugging purposes */
+-static void __unused__ print_string (char *p, char *q)
++static void UNUSED print_string (char *p, char *q)
+ {
+ 	for ( ; p != q; p++)
+ 		fprintf (errout, "%c", *p);
+--- a/main.c	(revision 816)
++++ b/main.c	(working copy)
+@@ -522,7 +522,7 @@
+  *		Start up code
+  */
+ 
+-extern int main (int __unused__ argc, char **argv)
++extern int main (int UNUSED argc, char **argv)
+ {
+ 	cookedArgs *args;
+ #ifdef VMS
+--- a/options.c	(revision 816)
++++ b/options.c	(working copy)
+@@ -730,7 +730,7 @@
+ }
+ 
+ static void processExcludeOption (
+-		const char *const option __unused__, const char *const parameter)
++		const char *const option UNUSED, const char *const parameter)
+ {
+ 	const char *const fileName = parameter + 1;
+ 	if (parameter [0] == '\0')
+@@ -867,7 +867,7 @@
+ }
+ 
+ static void processFilterTerminatorOption (
+-		const char *const option __unused__, const char *const parameter)
++		const char *const option UNUSED, const char *const parameter)
+ {
+ 	freeString (&Option.filterTerminator);
+ 	Option.filterTerminator = stringCopy (parameter);
+@@ -930,8 +930,8 @@
+ }
+ 
+ static void processHelpOption (
+-		const char *const option __unused__,
+-		const char *const parameter __unused__)
++		const char *const option UNUSED,
++		const char *const parameter UNUSED)
+ {
+ 	printProgramIdentification ();
+ 	putchar ('\n');
+@@ -1139,8 +1139,8 @@
+ }
+ 
+ static void processLicenseOption (
+-		const char *const option __unused__,
+-		const char *const parameter __unused__)
++		const char *const option UNUSED,
++		const char *const parameter UNUSED)
+ {
+ 	printProgramIdentification ();
+ 	puts ("");
+@@ -1166,8 +1166,8 @@
+ }
+ 
+ static void processListMapsOption (
+-		const char *const __unused__ option,
+-		const char *const __unused__ parameter)
++		const char *const UNUSED option,
++		const char *const UNUSED parameter)
+ {
+ 	if (parameter [0] == '\0' || strcasecmp (parameter, "all") == 0)
+ 	    printLanguageMaps (LANG_AUTO);
+@@ -1183,8 +1183,8 @@
+ }
+ 
+ static void processListLanguagesOption (
+-		const char *const option __unused__,
+-		const char *const parameter __unused__)
++		const char *const option UNUSED,
++		const char *const parameter UNUSED)
+ {
+ 	printLanguageList ();
+ 	exit (0);
+@@ -1358,8 +1358,8 @@
+ }
+ 
+ static void processVersionOption (
+-		const char *const option __unused__,
+-		const char *const parameter __unused__)
++		const char *const option UNUSED,
++		const char *const parameter UNUSED)
+ {
+ 	printProgramIdentification ();
+ 	exit (0);
+--- a/parse.c	(revision 816)
++++ b/parse.c	(working copy)
+@@ -376,7 +376,7 @@
+ */
+ 
+ extern void processLanguageDefineOption (
+-		const char *const option, const char *const parameter __unused__)
++		const char *const option, const char *const parameter UNUSED)
+ {
+ #ifdef HAVE_REGEX
+ 	if (parameter [0] == '\0')
+--- a/routines.c	(revision 816)
++++ b/routines.c	(working copy)
+@@ -526,7 +526,7 @@
+ 
+ #if ! defined (HAVE_STAT_ST_INO)
+ 
+-static void canonicalizePath (char *const path __unused__)
++static void canonicalizePath (char *const path UNUSED)
+ {
+ #if defined (MSDOS_STYLE_PATH)
+ 	char *p;
diff --git a/nixpkgs/pkgs/development/tools/misc/cvise/default.nix b/nixpkgs/pkgs/development/tools/misc/cvise/default.nix
index fe33df530cfd..e24c133e8b90 100644
--- a/nixpkgs/pkgs/development/tools/misc/cvise/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cvise/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonApplication, fetchFromGitHub, cmake, flex
-, clang-unwrapped, llvm, unifdef
+, libclang, llvm, unifdef
 , pebble, psutil, pytestCheckHook, pytest-flake8
 }:
 
@@ -19,8 +19,8 @@ buildPythonApplication rec {
     ./unifdef.patch
   ];
 
-  nativeBuildInputs = [ cmake flex ];
-  buildInputs = [ clang-unwrapped llvm unifdef ];
+  nativeBuildInputs = [ cmake flex llvm.dev ];
+  buildInputs = [ libclang llvm llvm.dev unifdef ];
   propagatedBuildInputs = [ pebble psutil ];
   checkInputs = [ pytestCheckHook pytest-flake8 unifdef ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix b/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
index 5c130a99c926..a44b5ed8c767 100644
--- a/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
@@ -7,7 +7,7 @@
 , gtk3
 , python3
 , wrapGAppsHook
-, gnome3
+, gnome
 , libwnck3
 , gobject-introspection
 , gettext
@@ -16,13 +16,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "d-feet";
-  version = "0.3.15";
+  version = "0.3.16";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/d-feet/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1cgxgpj546jgpyns6z9nkm5k48lid8s36mvzj8ydkjqws2d19zqz";
+    sha256 = "hzPOS5qaVOwYWx2Fv02p2dEQUogqiAdg/2D5d5stHMs=";
   };
 
   nativeBuildInputs = [
@@ -38,7 +38,7 @@ python3.pkgs.buildPythonApplication rec {
 
   buildInputs = [
     glib
-    gnome3.adwaita-icon-theme
+    gnome.adwaita-icon-theme
     gtk3
     libwnck3
   ];
@@ -61,7 +61,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "dfeet";
       versionPolicy = "none";
diff --git a/nixpkgs/pkgs/development/tools/misc/distcc/default.nix b/nixpkgs/pkgs/development/tools/misc/distcc/default.nix
index 38ddc1ff4312..6de12a84522e 100644
--- a/nixpkgs/pkgs/development/tools/misc/distcc/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/distcc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, popt, avahi, pkg-config, python3, gtk2, runCommand
+{ lib, stdenv, fetchFromGitHub, popt, avahi, pkg-config, python3, gtk3, runCommand
 , gcc, autoconf, automake, which, procps, libiberty_static
 , runtimeShell
 , sysconfDir ? ""   # set this parameter to override the default value $out/etc
@@ -7,18 +7,18 @@
 
 let
   name    = "distcc";
-  version = "2016-02-24";
+  version = "2021-03-11";
   distcc = stdenv.mkDerivation {
     name = "${name}-${version}";
     src = fetchFromGitHub {
       owner = "distcc";
       repo = "distcc";
-      rev = "b2fa4e21b4029e13e2c33f7b03ca43346f2cecb8";
-      sha256 = "1vj31wcdas8wy52hy6749mlrca9v6ynycdiigx5ay8pnya9z73c6";
+      rev = "de21b1a43737fbcf47967a706dab4c60521dbbb1";
+      sha256 = "0zjba1090awxkmgifr9jnjkxf41zhzc4f6mrnbayn3v6s77ca9x4";
     };
 
   nativeBuildInputs = [ pkg-config ];
-    buildInputs = [popt avahi pkg-config python3 gtk2 autoconf automake which procps libiberty_static];
+    buildInputs = [popt avahi pkg-config python3 gtk3 autoconf automake which procps libiberty_static];
     preConfigure =
     ''
       export CPATH=$(ls -d ${gcc.cc}/lib/gcc/*/${gcc.cc.version}/plugin/include)
@@ -30,7 +30,7 @@ let
                             ${if static then "LDFLAGS=-static" else ""}
                             --with${if static == true || popt == null then "" else "out"}-included-popt
                             --with${if avahi != null then "" else "out"}-avahi
-                            --with${if gtk2 != null then "" else "out"}-gtk
+                            --with${if gtk3 != null then "" else "out"}-gtk
                             --without-gnome
                             --enable-rfc2553
                             --disable-Werror   # a must on gcc 4.6
diff --git a/nixpkgs/pkgs/development/tools/misc/drush/default.nix b/nixpkgs/pkgs/development/tools/misc/drush/default.nix
index 32d9975e332b..70e7f42c5c22 100644
--- a/nixpkgs/pkgs/development/tools/misc/drush/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/drush/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, php73, which, makeWrapper, bash, coreutils, ncurses }:
+{ lib, stdenv, fetchurl, php, which, makeWrapper, bash, coreutils, ncurses }:
 
 stdenv.mkDerivation rec {
   name = "drush-6.1.0";
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     mkdir -p "$out"
     cp -r . "$out/src"
     mkdir "$out/bin"
-    wrapProgram "$out/src/drush" --prefix PATH : "${lib.makeBinPath [ which php73 bash coreutils ncurses ]}"
+    wrapProgram "$out/src/drush" --prefix PATH : "${lib.makeBinPath [ which php bash coreutils ncurses ]}"
     ln -s "$out/src/drush" "$out/bin/drush"
   '';
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/fswatch/default.nix b/nixpkgs/pkgs/development/tools/misc/fswatch/default.nix
index 47716b5ea9e8..5eb252a9c0e4 100644
--- a/nixpkgs/pkgs/development/tools/misc/fswatch/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/fswatch/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fswatch";
-  version = "1.15.0";
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     owner = "emcrisostomo";
     repo = "fswatch";
     rev = version;
-    sha256 = "11479ac436g8bwk0lfnmdms0cirv9k11pdvfrrg9jwkki1j1abkk";
+    sha256 = "sha256-EKbo5gkrWuijLJgYsNBDtxy0ioXu/yHxnPPeOpk620g=";
   };
 
   nativeBuildInputs = [ autoreconfHook makeWrapper ] ++ lib.optionals stdenv.isDarwin [ CoreServices ];
diff --git a/nixpkgs/pkgs/development/tools/misc/gdb/default.nix b/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
index 6f9237789750..ffe1fa3662f8 100644
--- a/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
@@ -26,11 +26,11 @@ assert pythonSupport -> python3 != null;
 
 stdenv.mkDerivation rec {
   pname = targetPrefix + basename;
-  version = "10.1";
+  version = "10.2";
 
   src = fetchurl {
     url = "mirror://gnu/gdb/${basename}-${version}.tar.xz";
-    sha256 = "1h32dckz1y8fnyxh22iyw8h3hnhxr79v1ng85px3ljn1xv71wbzq";
+    sha256 = "0aag1c0fw875pvhjg1qp7x8pf6gf92bjv5gcic5716scacyj58da";
   };
 
   postPatch = if stdenv.isDarwin then ''
@@ -61,8 +61,7 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-Wno-format-nonliteral";
 
-  # TODO(@Ericson2314): Always pass "--target" and always prefix.
-  configurePlatforms = [ "build" "host" ] ++ lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target";
+  configurePlatforms = [ "build" "host" "target" ];
 
   # GDB have to be built out of tree.
   preConfigure = ''
@@ -72,6 +71,13 @@ stdenv.mkDerivation rec {
   configureScript = "../configure";
 
   configureFlags = with lib; [
+    # Set the program prefix to the current targetPrefix.
+    # This ensures that the prefix always conforms to
+    # nixpkgs' expectations instead of relying on the build
+    # system which only receives `config` which is merely a
+    # subset of the platform description.
+    "--program-prefix=${targetPrefix}"
+
     "--enable-targets=all" "--enable-64-bit-bfd"
     "--disable-install-libbfd"
     "--disable-shared" "--enable-static"
diff --git a/nixpkgs/pkgs/development/tools/misc/global/default.nix b/nixpkgs/pkgs/development/tools/misc/global/default.nix
index 7ace6f857c8b..739615a841c7 100644
--- a/nixpkgs/pkgs/development/tools/misc/global/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/global/default.nix
@@ -6,11 +6,11 @@ let
   pygments = python3Packages.pygments;
 in stdenv.mkDerivation rec {
   pname = "global";
-  version = "6.6.5";
+  version = "6.6.6";
 
   src = fetchurl {
     url = "mirror://gnu/global/${pname}-${version}.tar.gz";
-    sha256 = "10vvsgx8v54whb4j9mk5qqyb5h3rdd9da0il3wir8pcpksyk0dww";
+    sha256 = "sha256-dYB4r/+Y1MBRxYeFx62j7Rl3+rt3+Il/9le3HMYtTV0=";
   };
 
   nativeBuildInputs = [ libtool makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/misc/gob2/default.nix b/nixpkgs/pkgs/development/tools/misc/gob2/default.nix
index b78c111ccbf8..06487845fb3d 100644
--- a/nixpkgs/pkgs/development/tools/misc/gob2/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gob2/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, bison, flex, gnome3 }:
+{ lib, stdenv, fetchurl, pkg-config, glib, bison, flex, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gob2";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib bison flex ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/tools/misc/hydra-cli/default.nix b/nixpkgs/pkgs/development/tools/misc/hydra-cli/default.nix
index 9160a3366811..1332885bbdbe 100644
--- a/nixpkgs/pkgs/development/tools/misc/hydra-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/hydra-cli/default.nix
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
     rev = "v${version}";
     sha256 = "1fd3swdjx249971ak1bgndm5kh6rlzbfywmydn122lhfi6ry6a03";
   };
-  cargoSha256 = "1fjzcgayyha270bdxl5p6c337nq8zj4h81rk4ih9czyz3yaxga3f";
+  cargoSha256 = "16446ppkvc6l8087x5m5kyy5gk4f7inyj7rzrfysriw4fvqxjsf3";
 
   buildInputs = [ openssl ]
                 ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
diff --git a/nixpkgs/pkgs/development/tools/misc/hydra/common.nix b/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
index 0cc7769d3c50..9ad8295c9b9d 100644
--- a/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
+++ b/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
@@ -37,6 +37,8 @@ let
         CatalystViewTT
         CatalystXScriptServerStarman
         CatalystXRoleApplicator
+        CryptPassphrase
+        CryptPassphraseArgon2
         CryptRandPasswd
         DBDPg
         DBDSQLite
@@ -61,6 +63,7 @@ let
         SQLSplitStatement
         SetScalar
         Starman
+        StringCompareConstantTime
         SysHostnameLong
         TermSizeAny
         TextDiff
diff --git a/nixpkgs/pkgs/development/tools/misc/hydra/default.nix b/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
index 40a480a09098..a124b4a5c6e2 100644
--- a/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
@@ -1,15 +1,15 @@
-{ fetchFromGitHub, nixStable, callPackage, nixFlakes, nixosTests }:
+{ fetchFromGitHub, nixStable, callPackage, nixUnstable, nixosTests }:
 
 {
   hydra-unstable = callPackage ./common.nix {
-    version = "2021-03-29";
+    version = "2021-05-03";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "hydra";
-      rev = "9bb04ed97af047968196bad1728f927f7a6d905f";
-      sha256 = "sha256-gN/zNI2hGDMnYUjeGnU7SAuXP4KCmNqG+AYOVfINaQE=";
+      rev = "886e6f85e45a1f757e9b77d2a9e4539fbde29468";
+      sha256 = "t7Qb57Xjc0Ou+VDGC1N5u9AmeODW6MVOwKSrYRJq5f0=";
     };
-    nix = nixFlakes;
+    nix = nixUnstable;
 
     tests = {
       basic = nixosTests.hydra.hydra-unstable;
diff --git a/nixpkgs/pkgs/development/tools/misc/itm-tools/default.nix b/nixpkgs/pkgs/development/tools/misc/itm-tools/default.nix
index 32c32b536d9d..0abdd0179013 100644
--- a/nixpkgs/pkgs/development/tools/misc/itm-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/itm-tools/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoPatches = [ ./cargo-lock.patch ];
 
-  cargoSha256 = "0rl2ph5igwjl7rwpwcf6afnxly5av7cd6va6wn82lxm606giyq75";
+  cargoSha256 = "1hqv530x8k4rf9zzyl5p5z58bymk1p4qwrcxs21gr0zm2hqjlxy4";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/jiq/default.nix b/nixpkgs/pkgs/development/tools/misc/jiq/default.nix
new file mode 100644
index 000000000000..c52a9ae4c030
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/jiq/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildGoModule, fetchFromGitHub, jq, makeWrapper }:
+
+buildGoModule rec {
+  pname = "jiq";
+  version = "0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "fiatjaf";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-EPhnfgmn0AufuxwcwRrEEQk+RD97akFJSzngkTl4LmY=";
+  };
+
+  vendorSha256 = "sha256-ZUmOhPGy+24AuxdeRVF0Vnu8zDGFrHoUlYiDdfIV5lc=";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  checkInputs = [ jq ];
+
+  postInstall = ''
+    wrapProgram $out/bin/jiq \
+      --prefix PATH : ${lib.makeBinPath [ jq ]}
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/fiatjaf/jiq";
+    license = licenses.mit;
+    description = "jid on jq - interactive JSON query tool using jq expressions";
+    maintainers = with maintainers; [ ma27 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix b/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
index 217cbe5e0296..dbcb8d52f1b7 100644
--- a/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
@@ -1,4 +1,4 @@
-{ autoconf, fetchurl, makedepend, perl, python3, lib, stdenv, unzip, zip }:
+{ autoconf, fetchurl, makedepend, perl, python3, lib, stdenv, zip }:
 
 stdenv.mkDerivation rec {
   name = "jscoverage-0.5.1";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     ./jsfalse_to_null.patch
   ];
 
-  nativeBuildInputs = [ unzip perl python3 zip ];
+  nativeBuildInputs = [ perl python3 zip ];
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/tools/misc/libtool/libtool2-macos11.patch b/nixpkgs/pkgs/development/tools/misc/libtool/libtool2-macos11.patch
new file mode 100644
index 000000000000..1552ae7a949f
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/libtool/libtool2-macos11.patch
@@ -0,0 +1,32 @@
+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
+---
+ m4/libtool.m4 | 13 ++++---------
+ 1 file changed, 4 insertions(+), 9 deletions(-)
+
+diff --git a/m4/libtool.m4 b/m4/libtool.m4
+index f2d1f398..b971e8e7 100644
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -1067,16 +1067,11 @@ _LT_EOF
+       _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
+     darwin1.*)
+       _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+-    darwin*) # darwin 5.x on
+-      # if running on 10.5 or later, the deployment target defaults
+-      # to the OS version, if on x86, and 10.4, the deployment
+-      # target defaults to 10.4. Don't you love it?
+-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+-	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+-	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+-	10.[[012]][[,.]]*)
++    darwin*)
++      case ${MACOSX_DEPLOYMENT_TARGET},$host in
++	10.[[012]],*|,*powerpc*)
+ 	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+-	10.*)
++	*)
+ 	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+       esac
+     ;;
+-- 
+2.24.3 (Apple Git-128)
diff --git a/nixpkgs/pkgs/development/tools/misc/libtool/libtool2.nix b/nixpkgs/pkgs/development/tools/misc/libtool/libtool2.nix
index 6d7c4a9087f4..44e4c8665c83 100644
--- a/nixpkgs/pkgs/development/tools/misc/libtool/libtool2.nix
+++ b/nixpkgs/pkgs/development/tools/misc/libtool/libtool2.nix
@@ -1,6 +1,11 @@
-{ lib, stdenv, fetchurl, m4, perl, help2man
+{ lib, stdenv, fetchurl, fetchpatch, autoconf, automake, m4, perl, help2man
 }:
 
+# Note: this package is used for bootstrapping fetchurl, and thus
+# cannot use fetchpatch! All mutable patches (generated by GitHub or
+# cgit) that are needed here should be included directly in Nixpkgs as
+# files.
+
 stdenv.mkDerivation rec {
   pname = "libtool";
   version = "2.4.6";
@@ -12,7 +17,26 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "lib" ];
 
-  nativeBuildInputs = [ perl help2man m4 ];
+  patches = [
+    # Suport macOS version 11.0
+    # https://lists.gnu.org/archive/html/libtool-patches/2020-06/msg00001.html
+    ./libtool2-macos11.patch
+  ];
+
+  # Normally we'd use autoreconfHook, but that includes libtoolize.
+  postPatch = ''
+    aclocal -I m4
+    automake
+    autoconf
+
+    pushd libltdl
+    aclocal -I ../m4
+    automake
+    autoconf
+    popd
+  '';
+
+  nativeBuildInputs = [ perl help2man m4 ] ++ [ autoconf automake ];
   propagatedBuildInputs = [ m4 ];
 
   # Don't fixup "#! /bin/sh" in Libtool, otherwise it will use the
diff --git a/nixpkgs/pkgs/development/tools/misc/mdctags/default.nix b/nixpkgs/pkgs/development/tools/misc/mdctags/default.nix
index ac6170216012..7d8992b4e201 100644
--- a/nixpkgs/pkgs/development/tools/misc/mdctags/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/mdctags/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage {
     sha256 = "14gryhgh9czlkfk75ml0620c6v8r74i6h3ykkkmc7gx2z8h1jxrb";
   };
 
-  cargoSha256 = "01ap2w755vbr01nfqc5185mr2w9y32g0d4ahc3lw2x3m8qv0bh6x";
+  cargoSha256 = "1kdbrcpvxiq91m5vq33vzjhsp4j3flzrpbj5hmxf0k3al1a7qk1g";
 
   meta = {
     description = "tags for markdown file";
diff --git a/nixpkgs/pkgs/development/tools/misc/msitools/default.nix b/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
index 96ce9d405914..ab196ebc5b34 100644
--- a/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
@@ -14,7 +14,7 @@
 , libgsf
 , gcab
 , bzip2
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/tools/misc/nimlsp/default.nix b/nixpkgs/pkgs/development/tools/misc/nimlsp/default.nix
index 7f73fb9a1bc3..b1d59c9450ac 100644
--- a/nixpkgs/pkgs/development/tools/misc/nimlsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/nimlsp/default.nix
@@ -16,13 +16,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "nimlsp";
-  version = "0.2.6";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "PMunch";
     repo = "nimlsp";
     rev = "v${version}";
-    sha256 = "13kw3zjh0iqymwqxwhyj8jz6hgswwahf1rjd6iad7c6gcwrrg6yl";
+    sha256 = "1lm823nvpp3bj9527jd8n1jxh6y8p8ngkfkj91p94m7ffai6jazq";
   };
 
   nativeBuildInputs = [ nim ];
diff --git a/nixpkgs/pkgs/development/tools/misc/opengrok/default.nix b/nixpkgs/pkgs/development/tools/misc/opengrok/default.nix
index 01f2ced1f4bb..0a2bbc30fb52 100644
--- a/nixpkgs/pkgs/development/tools/misc/opengrok/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/opengrok/default.nix
@@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
     description = "Source code search and cross reference engine";
     homepage = "https://opengrok.github.io/OpenGrok/";
     license = licenses.cddl;
-    maintainers = [ maintainers.lethalman ];
+    maintainers = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/ptags/default.nix b/nixpkgs/pkgs/development/tools/misc/ptags/default.nix
index 8406ecf298f8..b8be0ee3dc6d 100644
--- a/nixpkgs/pkgs/development/tools/misc/ptags/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ptags/default.nix
@@ -1,8 +1,9 @@
 { fetchFromGitHub
 , cargo
+, ctags
 , lib
+, makeWrapper
 , rustPlatform
-
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -16,7 +17,15 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1xr1szh4dfrcmi6s6dj791k1ix2zbv75rqkqbyb1lmh5548kywkg";
   };
 
-  cargoSha256 = "1rsnb4kzfb577xw7jk0939n42sv94vvspvbz783bmpy9vl53i38k";
+  cargoSha256 = "1pz5hvn1iq26i8c2cmqavhnri8h0sn40khrxvcdkj9q47nsj5wcx";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    # `ctags` must be accessible in `PATH` for `ptags` to work.
+    wrapProgram "$out/bin/ptags" \
+      --prefix PATH : "${lib.makeBinPath [ ctags ]}"
+  '';
 
   # Sanity check.
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/tools/misc/rtss/default.nix b/nixpkgs/pkgs/development/tools/misc/rtss/default.nix
index 505e6d23ef70..36ef4c349e9e 100644
--- a/nixpkgs/pkgs/development/tools/misc/rtss/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/rtss/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1936w161mkbcwicrxn51b42pgir5yjiw85s74lbfq70nddw18nyn";
   };
 
-  cargoSha256 = "0nll5gg7fjh6sz3cscarknb0gaivmzkcxhwdb2li47r74rcbrj36";
+  cargoSha256 = "1b1xiaaxbw6y80pkzd594dikm372l1mmymf1wn2acmlz979nmas8";
 
   meta = with lib; {
     description = "Annotate output with relative durations between lines";
diff --git a/nixpkgs/pkgs/development/tools/misc/sccache/default.nix b/nixpkgs/pkgs/development/tools/misc/sccache/default.nix
index 4379efd5071b..cbdee69ce2ce 100644
--- a/nixpkgs/pkgs/development/tools/misc/sccache/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/sccache/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1kygk7ilv7la36kv4jdn1ird7f3896wgr88kyqf0iagfqkzb2vsb";
   };
 
-  cargoSha256 = "1cfdwf00jgwsv0f72427asid1xr57s56jk5xj489dgppvgy7wdbj";
+  cargoSha256 = "1f42cqaqnjwi9k4ihqil6z2dqh5dnf76x54gk7mndzkrfg3rl573";
 
   cargoBuildFlags = lib.optionals (!stdenv.isDarwin) [ "--features=dist-client,dist-server" ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/stlink/default.nix b/nixpkgs/pkgs/development/tools/misc/stlink/default.nix
index 5bad6493c49e..2fbb60a0ddcc 100644
--- a/nixpkgs/pkgs/development/tools/misc/stlink/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/stlink/default.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libusb1 }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, libusb1
+, gtk3
+, pkg-config
+, wrapGAppsHook
+, withGUI ? false
+}:
 
 let
   # The Darwin build of stlink explicitly refers to static libusb.
@@ -18,8 +27,17 @@ in stdenv.mkDerivation rec {
     sha256 = "03xypffpbp4imrczbxmq69vgkr7mbp0ps9dk815br5wwlz6vgygl";
   };
 
-  buildInputs = [ libusb1' ];
-  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    libusb1'
+  ] ++ lib.optionals withGUI [
+    gtk3
+  ];
+  nativeBuildInputs = [
+    cmake
+  ] ++ lib.optionals withGUI [
+    pkg-config
+    wrapGAppsHook
+  ];
 
   cmakeFlags = [
     "-DSTLINK_MODPROBED_DIR=${placeholder "out"}/etc/modprobe.d"
diff --git a/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix b/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix
index 3b754e4c91bb..bca4f87f9a55 100644
--- a/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix
@@ -1,52 +1,57 @@
-{ lib, stdenv, requireFile, makeDesktopItem, libicns, imagemagick, jre, fetchzip }:
-
+{ lib, stdenv, makeDesktopItem, copyDesktopItems, icoutils, fdupes, imagemagick, jdk11, fetchzip }:
+# TODO: JDK16 causes STM32CubeMX to crash right now, so we fixed the version to JDK11
+# This may be fixed in a future version of STM32CubeMX. This issue has been reported to ST:
+# https://community.st.com/s/question/0D53W00000jnOzPSAU/stm32cubemx-crashes-on-launch-with-openjdk16
+# If you're updating this derivation, check the link above to see if it's been fixed upstream
+# and try replacing all occurrences of jdk11 with jre and test whether it works.
 let
-  version = "6.0.1";
-  desktopItem = makeDesktopItem {
-    name = "stm32CubeMX";
-    exec = "stm32cubemx";
-    desktopName = "STM32CubeMX";
-    categories = "Development;";
-    icon = "stm32cubemx";
-  };
+  iconame = "STM32CubeMX";
 in
 stdenv.mkDerivation rec {
   pname = "stm32cubemx";
-  inherit version;
-
+  version = "6.2.1";
 
   src = fetchzip {
-    url = "https://sw-center.st.com/packs/resource/library/stm32cube_mx_v${builtins.replaceStrings ["."] [""] version}.zip";
-    sha256 = "15vxca1pgpgxgiz4wisrw0lylffdwnn4n46z9n0q37f8hmzlrk8f";
-    stripRoot= false;
+    url = "https://sw-center.st.com/packs/resource/library/stm32cube_mx_v${builtins.replaceStrings ["."] [""] version}-lin.zip";
+    sha256 = "0m5h01iq0mgrr9svj4gmykfi9lsyjpqzrkvlizff26c8dqad59c5";
+    stripRoot = false;
   };
 
-  nativeBuildInputs = [ libicns imagemagick ];
+  nativeBuildInputs = [ icoutils fdupes imagemagick copyDesktopItems];
+  desktopItems = [
+    (makeDesktopItem {
+      name = "stm32CubeMX";
+      exec = "stm32cubemx";
+      desktopName = "STM32CubeMX";
+      categories = "Development;";
+      comment = "STM32Cube initialization code generator";
+      icon = "stm32cubemx";
+    })
+  ];
 
   buildCommand = ''
-    mkdir -p $out/{bin,opt/STM32CubeMX,share/applications}
-    cp -r $src/. $out/opt/STM32CubeMX/
-    chmod +rx $out/opt/STM32CubeMX/STM32CubeMX.exe
+    mkdir -p $out/{bin,opt/STM32CubeMX}
+    cp -r $src/MX/. $out/opt/STM32CubeMX/
+    chmod +rx $out/opt/STM32CubeMX/STM32CubeMX
     cat << EOF > $out/bin/${pname}
     #!${stdenv.shell}
-    ${jre}/bin/java -jar $out/opt/STM32CubeMX/STM32CubeMX.exe
+    ${jdk11}/bin/java -jar $out/opt/STM32CubeMX/STM32CubeMX
     EOF
     chmod +x $out/bin/${pname}
 
-    icns2png --extract $out/opt/STM32CubeMX/${pname}.icns
+    icotool --extract $out/opt/STM32CubeMX/help/${iconame}.ico
+    fdupes -dN . > /dev/null
     ls
     for size in 16 24 32 48 64 128 256; do
       mkdir -pv $out/share/icons/hicolor/"$size"x"$size"/apps
-      if [ -e ${pname}_"$size"x"$size"x32.png ]; then
-        mv ${pname}_"$size"x"$size"x32.png \
+      if [ $size -eq 256 ]; then
+        mv ${iconame}_*_"$size"x"$size"x32.png \
           $out/share/icons/hicolor/"$size"x"$size"/apps/${pname}.png
       else
-        convert -resize "$size"x"$size" ${pname}_256x256x32.png \
+        convert -resize "$size"x"$size" ${iconame}_*_256x256x32.png \
           $out/share/icons/hicolor/"$size"x"$size"/apps/${pname}.png
       fi
     done;
-
-    ln -s ${desktopItem}/share/applications/* $out/share/applications
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/misc/strace/default.nix b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
index f36b1cf4495b..4da1a2cba09b 100644
--- a/nixpkgs/pkgs/development/tools/misc/strace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
@@ -1,22 +1,20 @@
 { lib, stdenv, fetchurl, perl, libunwind, buildPackages }:
 
-# libunwind does not have the supportsHost attribute on darwin, thus
-# when this package is evaluated it causes an evaluation error
-assert stdenv.isLinux;
-
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "5.11";
+  version = "5.12";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-/+NAsQwUWg+Fc0Jx6czlZFfSPyGn6lkxqzL4z055OHk=";
+    sha256 = "sha256-KRce350lL4nJiKTDQN/exmL0WMuMY9hUMdZLq1kR58Q=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
   nativeBuildInputs = [ perl ];
 
-  buildInputs = [ perl.out ] ++ lib.optional libunwind.supportsHost libunwind; # support -k
+  # On RISC-V platforms, LLVM's libunwind implementation is unsupported by strace.
+  # The build will silently fall back and -k will not work on RISC-V.
+  buildInputs = [ perl.out libunwind ]; # support -k
 
   postPatch = "patchShebangs --host strace-graph";
 
@@ -27,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "A system call tracer for Linux";
     license =  with licenses; [ lgpl21Plus gpl2Plus ]; # gpl2Plus is for the test suite
     platforms = platforms.linux;
-    maintainers = with maintainers; [ globin ma27 ];
+    maintainers = with maintainers; [ globin ma27 qyliss ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/svls/default.nix b/nixpkgs/pkgs/development/tools/misc/svls/default.nix
index 6af24ed5d10b..13b529147995 100644
--- a/nixpkgs/pkgs/development/tools/misc/svls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/svls/default.nix
@@ -14,7 +14,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-+/4D0pRZs1Gy6DJnsDZA8wWi1FKhr7gRS0oq1TyWpuE=";
   };
 
-  cargoSha256 = "sha256-o6/L/4QcIei4X1pHYjV72hcEmTMp+pvJkwbb+niqWP8=";
+  cargoSha256 = "sha256-xkRlUXlkXQwvzIuhExf+tSSBi+8BZv58btvln05UI+k=";
 
   meta = with lib; {
     description = "SystemVerilog language server";
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
index 54adb5f8296f..0c52a89229da 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "terraform-ls";
-  version = "0.15.0";
+  version = "0.16.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/g62LSlaIK67oY6dI8S3Lni85eBBI6piqP2Fsq3HXWQ=";
+    sha256 = "sha256-5+h1fyTCp1jUZeKRCeDhfqAA11SMyR5nw2Y2x6JyIwY=";
   };
-  vendorSha256 = "sha256-U0jVdyY4SifPWkOkq3ohY/LvfGcYm4rI+tW1QEm39oo=";
+  vendorSha256 = "sha256-m5ddUwuTX0mSihkoGIMQKidptwUL8Bao5HgHJBWX0os=";
 
   # tests fail in sandbox mode because of trying to download stuff from releases.hashicorp.com
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
index 9a661f276772..0cfd63ffa283 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "terraform-lsp";
-  version = "0.0.10";
+  version = "0.0.12";
 
   src = fetchFromGitHub {
     owner = "juliosueiras";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1j69j1pkd0q6bds1c6pcaars5hl3hk93q2p31mymkzmy640k8zfn";
+    sha256 = "111350jbq0dp0qhk48j12hrlisd1fwzqpcv357igrbqf6ki7r78q";
   };
 
   goPackagePath = "github.com/juliosueiras/terraform-lsp";
diff --git a/nixpkgs/pkgs/development/tools/misc/texlab/default.nix b/nixpkgs/pkgs/development/tools/misc/texlab/default.nix
index 480c7cfd5561..2fcda04cb434 100644
--- a/nixpkgs/pkgs/development/tools/misc/texlab/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/texlab/default.nix
@@ -3,34 +3,46 @@
 , rustPlatform
 , fetchFromGitHub
 , installShellFiles
+, libiconv
 , Security
+, CoreServices
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "texlab";
-  version = "2.2.2";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "latex-lsp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "06x7j4ppgw24xbsnyj1icaksngqbvq6mk8wfcqikzmvmifjspx9m";
+    hash = "sha256-h08RRcuQG1IjuCA6Xk71+MXKprZ/w5+H2edbG3rtVSY=";
   };
 
-  cargoSha256 = "0gzxylpn2hps0kxczd6wwcqhnvm6ir971bfvpgjr6rxi12hs47ky";
+  cargoHash = "sha256-78S9Bmq6TIMiAV3HpMC8jK9fH+0Y+jXAW9V1Druyfg8=";
+
+  outputs = [ "out" "man" ];
 
   nativeBuildInputs = [ installShellFiles ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security CoreServices ];
 
   postInstall = ''
     installManPage texlab.1
+
+    # Remove generated dylib of html2md dependency. TexLab statically
+    # links to the generated rlib and doesn't reference the dylib. I
+    # couldn't find any way to prevent building this by passing cargo flags.
+    # See https://gitlab.com/Kanedias/html2md/-/blob/0.2.10/Cargo.toml#L20
+    rm "$out/lib/libhtml2md${stdenv.hostPlatform.extensions.sharedLibrary}"
+    rmdir "$out/lib"
   '';
 
   meta = with lib; {
     description = "An implementation of the Language Server Protocol for LaTeX";
     homepage = "https://texlab.netlify.app";
     license = licenses.mit;
-    maintainers = with maintainers; [ doronbehar metadark ];
+    maintainers = with maintainers; [ doronbehar kira-bruneau ];
+    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix b/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix
index 4618906038eb..06a8c3e98712 100644
--- a/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix
@@ -28,7 +28,7 @@ with python3Packages; buildPythonApplication rec {
     pyusb
   ];
 
-  nativeBuildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools-scm ];
 
   preBuild = ''
     export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
diff --git a/nixpkgs/pkgs/development/tools/misc/tockloader/default.nix b/nixpkgs/pkgs/development/tools/misc/tockloader/default.nix
index 3aff6c6d36cc..8924cbf2fae5 100644
--- a/nixpkgs/pkgs/development/tools/misc/tockloader/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/tockloader/default.nix
@@ -1,27 +1,37 @@
-{ lib, python3Packages }:
+{ lib
+, python3Packages
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "tockloader";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "11k4ppwq845lnj265ydfr0cn1rrym5amx2i19x1h3ccbxc3gsy3x";
+    sha256 = "1aqkj1nplcw3gmklrhq6vxy6v9ad5mqiw4y1svasak2zkqdk1wyc";
   };
 
   propagatedBuildInputs = with python3Packages; [
     argcomplete
     colorama
     crcmod
-    pytoml
     pyserial
+    pytoml
+    tqdm
   ];
 
+  # has no test suite
+  checkPhase = ''
+    runHook preCheck
+    $out/bin/tockloader --version | grep -q ${version}
+    runHook postCheck
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/tock/tockloader";
     license = licenses.mit;
     description = "Tool for programming Tock onto hardware boards";
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
   };
 }
 
diff --git a/nixpkgs/pkgs/development/tools/misc/tokei/default.nix b/nixpkgs/pkgs/development/tools/misc/tokei/default.nix
index 557ff4fa967c..e87f07067561 100644
--- a/nixpkgs/pkgs/development/tools/misc/tokei/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/tokei/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-jqDsxUAMD/MCCI0hamkGuCYa8rEXNZIR8S+84S8FbgI=";
   };
 
-  cargoSha256 = "sha256-iUDc54E8AiLMJw9h99kg/3VmaSi8GqfQyrPwa9nJ994=";
+  cargoSha256 = "sha256-U7Bode8qwDsNf4FVppfEHA9uiOFz74CtKgXG6xyYlT8=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     libiconv Security
diff --git a/nixpkgs/pkgs/development/tools/misc/unused/default.nix b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
index 1a5f3efe0e6a..58e4ba0bc98e 100644
--- a/nixpkgs/pkgs/development/tools/misc/unused/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ cmake ];
 
-  cargoSha256 = "1c0gj2wp0nydv0binxj3ikm5sm6y5z3pklp5b06dgvq02licz57a";
+  cargoSha256 = "0y7vsba4r4v2lwf02i2dxwicnhknajbbzsdlnn5srvg6nvl3kspi";
 
   meta = with lib; {
     description = "A tool to identify potentially unused code";
diff --git a/nixpkgs/pkgs/development/tools/misc/wishbone-tool/default.nix b/nixpkgs/pkgs/development/tools/misc/wishbone-tool/default.nix
index d900d14e33c2..0465fb74aa1a 100644
--- a/nixpkgs/pkgs/development/tools/misc/wishbone-tool/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/wishbone-tool/default.nix
@@ -19,7 +19,7 @@ rustPlatform.buildRustPackage {
   cargoDepsHook = ''
     ln -s wishbone-tool source
   '';
-  cargoSha256 = "0d5kcwy0cgxqfxf2xysw65ng84q4knhp4fgvh6dwqhf0nsca9gvs";
+  cargoSha256 = "1b12wpmzv7wxidc4hd8hmp8iwqhqlycxh8bdv3rf701sqsazkc5x";
 
   buildInputs = [ libusb-compat-0_1 ];
 
diff --git a/nixpkgs/pkgs/development/tools/mix2nix/default.nix b/nixpkgs/pkgs/development/tools/mix2nix/default.nix
new file mode 100644
index 000000000000..21520d9dbe3d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/mix2nix/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, fetchFromGitHub, elixir, erlang }:
+
+stdenv.mkDerivation rec {
+  pname = "mix2nix";
+  version = "0.1.4";
+
+  src = fetchFromGitHub {
+    owner = "ydlr";
+    repo = "mix2nix";
+    rev = version;
+    sha256 = "0q4yq8glrdj72j7b9xnwb6j3cli3cccimh9sb7acb4npaiivvf69";
+  };
+
+  nativeBuildInputs = [ elixir ];
+  buildInputs = [ erlang ];
+
+  buildPhase = "mix escript.build";
+  installPhase = "install -Dt $out/bin mix2nix";
+
+  meta = with lib; {
+    description = "Generate nix expressions from mix.lock file.";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ydlr ] ++ teams.beam.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/nemiver/default.nix b/nixpkgs/pkgs/development/tools/nemiver/default.nix
index 58c0f2ed28b1..7894dfe797d6 100644
--- a/nixpkgs/pkgs/development/tools/nemiver/default.nix
+++ b/nixpkgs/pkgs/development/tools/nemiver/default.nix
@@ -2,7 +2,7 @@
 , fetchurl
 , fetchpatch
 , pkg-config
-, gnome3
+, gnome
 , gtk3
 , libxml2
 , intltool
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = "nemiver";
       versionPolicy = "none";
     };
diff --git a/nixpkgs/pkgs/development/tools/node-webkit/nw12.nix b/nixpkgs/pkgs/development/tools/node-webkit/nw12.nix
index 475c08eb169f..f5276510e612 100644
--- a/nixpkgs/pkgs/development/tools/node-webkit/nw12.nix
+++ b/nixpkgs/pkgs/development/tools/node-webkit/nw12.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, buildEnv, makeWrapper
-, xorg, alsaLib, dbus, glib, gtk2, atk, pango, freetype, fontconfig
+, xorg, alsa-lib, dbus, glib, gtk2, atk, pango, freetype, fontconfig
 , gdk-pixbuf, cairo, nss, nspr, gconf, expat, systemd, libcap
 , libnotify}:
 let
@@ -10,7 +10,7 @@ let
     name = "nwjs-env";
     paths = [
       xorg.libX11 xorg.libXrender glib gtk2 atk pango cairo gdk-pixbuf
-      freetype fontconfig xorg.libXcomposite alsaLib xorg.libXdamage
+      freetype fontconfig xorg.libXcomposite alsa-lib xorg.libXdamage
       xorg.libXext xorg.libXfixes nss nspr gconf expat dbus
       xorg.libXtst xorg.libXi xorg.libXcursor xorg.libXrandr libcap
       libnotify
diff --git a/nixpkgs/pkgs/development/tools/nsis/default.nix b/nixpkgs/pkgs/development/tools/nsis/default.nix
index 2d3f54bbf75b..4820d8bb4b7d 100644
--- a/nixpkgs/pkgs/development/tools/nsis/default.nix
+++ b/nixpkgs/pkgs/development/tools/nsis/default.nix
@@ -1,8 +1,11 @@
-{ lib, stdenv
+{ lib
+, stdenv
+, symlinkJoin
 , fetchurl
 , fetchzip
 , sconsPackages
 , zlib
+, libiconv
 }:
 
 stdenv.mkDerivation rec {
@@ -28,20 +31,34 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
-  buildInputs = [ zlib ];
+  buildInputs = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
+
+  CPPPATH = symlinkJoin {
+     name = "nsis-includes";
+     paths = [ zlib.dev ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
+  };
+
+  LIBPATH = symlinkJoin {
+    name = "nsis-libs";
+    paths = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
+  };
 
   sconsFlags = [
     "SKIPSTUBS=all"
     "SKIPPLUGINS=all"
     "SKIPUTILS=all"
     "SKIPMISC=all"
-    "APPEND_CPPPATH=${zlib.dev}/include"
-    "APPEND_LIBPATH=${zlib}/lib"
     "NSIS_CONFIG_CONST_DATA=no"
-  ];
+  ] ++ lib.optional stdenv.isDarwin "APPEND_LINKFLAGS=-liconv";
 
   preBuild = ''
-    sconsFlagsArray+=("PATH=$PATH")
+    sconsFlagsArray+=(
+      "PATH=$PATH"
+      "CC=$CC"
+      "CXX=$CXX"
+      "APPEND_CPPPATH=$CPPPATH/include"
+      "APPEND_LIBPATH=$LIBPATH/lib"
+    )
   '';
 
   prefixKey = "PREFIX=";
@@ -51,7 +68,7 @@ stdenv.mkDerivation rec {
     description = "A free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge";
     homepage = "https://nsis.sourceforge.io/";
     license = licenses.zlib;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ pombeirp ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/nwjs/default.nix b/nixpkgs/pkgs/development/tools/nwjs/default.nix
index 1356bc46ced8..7d0175ac912a 100644
--- a/nixpkgs/pkgs/development/tools/nwjs/default.nix
+++ b/nixpkgs/pkgs/development/tools/nwjs/default.nix
@@ -1,9 +1,9 @@
 { stdenv, lib, fetchurl, buildEnv, makeWrapper
 
-, xorg, alsaLib, dbus, glib, gtk3, atk, pango, freetype, fontconfig
+, xorg, alsa-lib, dbus, glib, gtk3, atk, pango, freetype, fontconfig
 , gdk-pixbuf, cairo, nss, nspr, gconf, expat, systemd, libcap
 , libnotify
-, ffmpeg_3, libxcb, cups
+, ffmpeg, libxcb, cups
 , sqlite, udev
 , libuuid
 , sdk ? false
@@ -16,13 +16,13 @@ let
     name = "nwjs-env";
     paths = [
       xorg.libX11 xorg.libXrender glib /*gtk2*/ gtk3 atk pango cairo gdk-pixbuf
-      freetype fontconfig xorg.libXcomposite alsaLib xorg.libXdamage
+      freetype fontconfig xorg.libXcomposite alsa-lib xorg.libXdamage
       xorg.libXext xorg.libXfixes nss nspr gconf expat dbus
       xorg.libXtst xorg.libXi xorg.libXcursor xorg.libXrandr
       xorg.libXScrnSaver cups
       libcap libnotify
       # libnw-specific (not chromium dependencies)
-      ffmpeg_3 libxcb
+      ffmpeg libxcb
       # chromium runtime deps (dlopen’d)
       sqlite udev
       libuuid
diff --git a/nixpkgs/pkgs/development/tools/ocaml/dune/1.nix b/nixpkgs/pkgs/development/tools/ocaml/dune/1.nix
index a16b3ab23f22..ad908787911b 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/dune/1.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/dune/1.nix
@@ -2,7 +2,7 @@
 
 if !lib.versionAtLeast ocaml.version "4.02"
 || lib.versionAtLeast ocaml.version "4.12"
-then throw "dune is not available for OCaml ${ocaml.version}"
+then throw "dune 1 is not available for OCaml ${ocaml.version}"
 else
 
 stdenv.mkDerivation rec {
diff --git a/nixpkgs/pkgs/development/tools/ocaml/dune/2.nix b/nixpkgs/pkgs/development/tools/ocaml/dune/2.nix
index f1365792fbca..2acc7e5bdf32 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/dune/2.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/dune/2.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, ocaml, findlib }:
 
 if lib.versionOlder ocaml.version "4.08"
-then throw "dune is not available for OCaml ${ocaml.version}"
+then throw "dune 2 is not available for OCaml ${ocaml.version}"
 else
 
 stdenv.mkDerivation rec {
diff --git a/nixpkgs/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/nixpkgs/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index 12306d2a305a..6965d5fa0abb 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -1,6 +1,6 @@
 { lib, fetchurl, buildDunePackage
 , ocaml, cmdliner, cppo, yojson, ppxlib
-, menhir
+, menhir, menhirLib
 }:
 
 buildDunePackage rec {
@@ -14,7 +14,7 @@ buildDunePackage rec {
   };
 
   nativeBuildInputs = [ cppo menhir ];
-  buildInputs = [ cmdliner ];
+  buildInputs = [ cmdliner menhirLib ];
 
   configurePlatforms = [];
   propagatedBuildInputs = [ yojson ppxlib ];
diff --git a/nixpkgs/pkgs/development/tools/ocaml/merlin/4.x.nix b/nixpkgs/pkgs/development/tools/ocaml/merlin/4.x.nix
index 77595169565f..76ef33f7947d 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/merlin/4.x.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/merlin/4.x.nix
@@ -10,6 +10,8 @@
 , dot-merlin-reader
 , jq
 , menhir
+, menhirLib
+, menhirSdk
 }:
 
 let
@@ -66,6 +68,8 @@ buildDunePackage {
   checkInputs = [
     jq
     menhir
+    menhirLib
+    menhirSdk
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix
index 223ac39c6aa2..6f3ce218713e 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix
@@ -25,8 +25,10 @@ let src =
     }."${version}";
   };
   ocamlPackages =
-  if lib.versionAtLeast version "0.14.3"
+  if lib.versionAtLeast version "0.17.0"
   then ocaml-ng.ocamlPackages
+  else if lib.versionAtLeast version "0.14.3"
+  then ocaml-ng.ocamlPackages_4_10
   else ocaml-ng.ocamlPackages_4_07
 ; in
 
@@ -56,6 +58,8 @@ buildDunePackage {
       uutf
       fix
       menhir
+      menhirLib
+      menhirSdk
       dune-build-info
       ocaml-version
       # Changed since 0.16.0:
@@ -73,6 +77,8 @@ buildDunePackage {
       uutf
       fix
       menhir
+      menhirLib
+      menhirSdk
       dune-build-info
       ocaml-version
       # Changed since 0.16.0:
@@ -91,6 +97,8 @@ buildDunePackage {
       uutf
       fix
       menhir
+      menhirLib
+      menhirSdk
       (ppxlib.override { version = "0.18.0"; })
       dune-build-info # lib.versionAtLeast version "0.16.0"
       ocaml-version # lib.versionAtLeast version "0.16.0"
@@ -108,6 +116,8 @@ buildDunePackage {
       uutf
       fix
       menhir
+      menhirLib
+      menhirSdk
     ] else [
       base
       cmdliner
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocp-build/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocp-build/default.nix
index 655f7b4d4c2f..a1d0b76eb1ff 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocp-build/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocp-build/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ocaml, findlib, ncurses, cmdliner, re }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, ncurses, cmdliner, re }:
 let
   version = "1.99.21";
 in
@@ -13,6 +13,14 @@ stdenv.mkDerivation {
     sha256 = "1641xzik98c7xnjwxpacijd6d9jzx340fmdn6i372z8h554jjlg9";
   };
 
+  patches = [
+    # Fix compilation with OCaml 4.12
+    (fetchpatch {
+      url = "https://github.com/OCamlPro/ocp-build/commit/104e4656ca6dba9edb03b62539c9f1e10abcaae8.patch";
+      sha256 = "0sbyi4acig9q8x1ky4hckfg5pm2nad6zasi51ravaf1spgl148c2";
+    })
+  ];
+
   buildInputs = [ ocaml findlib cmdliner re ];
   propagatedBuildInputs = [ ncurses ];
   preInstall = "mkdir -p $out/bin";
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
index 51f731c9431f..e0710079b62a 100644
--- a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , fetchurl
-, mono6
+, mono
 , msbuild
 , dotnet-sdk
 , makeWrapper
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     chmod -R u+w $out/src
     mv $out/src/.msbuild/Current/{bin,Bin}
 
-    makeWrapper ${mono6}/bin/mono $out/bin/omnisharp \
+    makeWrapper ${mono}/bin/mono $out/bin/omnisharp \
     --add-flags "$out/src/OmniSharp.exe"
   '';
 
diff --git a/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix b/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
index a73907cd2579..739a562227a8 100644
--- a/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "open-policy-agent";
-  version = "0.27.1";
+  version = "0.29.4";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "opa";
     rev = "v${version}";
-    sha256 = "sha256-IiPUmLgkD50LxOT+ZEf/UZJ0192GYOy9xk8U94Q0BWc=";
+    sha256 = "sha256-AjNr+t30ftF92+cEfvt8iHBDVD/SO52ojJRLAkYF9l4=";
   };
 
   vendorSha256 = null;
@@ -28,6 +28,8 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
+    homepage = "https://www.openpolicyagent.org";
+    changelog = "https://github.com/open-policy-agent/opa/blob/v${version}/CHANGELOG.md";
     description = "General-purpose policy engine";
     longDescription = ''
       The Open Policy Agent (OPA, pronounced "oh-pa") is an open source, general-purpose policy engine that unifies
@@ -35,7 +37,6 @@ buildGoModule rec {
       as code and simple APIs to offload policy decision-making from your software. You can use OPA to enforce policies
       in microservices, Kubernetes, CI/CD pipelines, API gateways, and more.
     '';
-    homepage = "https://www.openpolicyagent.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ lewo jk ];
   };
diff --git a/nixpkgs/pkgs/development/tools/packet-cli/default.nix b/nixpkgs/pkgs/development/tools/packet-cli/default.nix
index ff0dead13e4e..fbe5c879fca9 100644
--- a/nixpkgs/pkgs/development/tools/packet-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/packet-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "packet-cli";
-  version = "0.3.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "packethost";
     repo = pname;
     rev = version;
-    sha256 = "sha256-P1Bn6vli0d/MroHUsioTWBrjWN+UZmSo3qmzo+fCDwM=";
+    sha256 = "0dlcx186l8kh6w3i4dvj7v90lhjkgvq1xkjb2vijy6399z41grw2";
   };
 
-  vendorSha256 = "sha256-PjKiUdhN87guPAa0loZrWYuwbl0HaspuIjmKgyq4Zp8=";
+  vendorSha256 = "1y1c369gsaf5crkdvv5g8d9p2g5602x2gcj8zy1q3wjx9lwhl0i6";
 
   postInstall = ''
     ln -s $out/bin/packet-cli $out/bin/packet
@@ -23,6 +23,6 @@ buildGoModule rec {
     description = "Official Packet CLI";
     homepage = "https://github.com/packethost/packet-cli";
     license = licenses.mit;
-    maintainers = with maintainers; [ Br1ght0ne ];
+    maintainers = with maintainers; [ Br1ght0ne nshalman ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/pactorio/default.nix b/nixpkgs/pkgs/development/tools/pactorio/default.nix
index d29e12443781..3790440f1b8b 100644
--- a/nixpkgs/pkgs/development/tools/pactorio/default.nix
+++ b/nixpkgs/pkgs/development/tools/pactorio/default.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, installShellFiles, lib, rustPlatform }:
+{ fetchFromGitHub, installShellFiles, lib, stdenv, rustPlatform, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "pactorio";
@@ -11,9 +11,10 @@ rustPlatform.buildRustPackage rec {
     sha256 = "07h9hywz0pc29411myhxjq6pks4p6q6czbqjv7fxf3xkb1mg9grq";
   };
 
-  cargoSha256 = "1m7bvi6i52xqvssjx5fr2dz25ny7hkmb8w8p23pczpdmpd2y0r7r";
+  cargoSha256 = "1rac2s36j88vm231aji8d0ndfbaa2gzxwsrxrvsi0zp9cqisc6rh";
 
   nativeBuildInputs = [ installShellFiles ];
+  buildInputs = lib.optional stdenv.isDarwin Security;
 
   preFixup = ''
     completions=($releaseDir/build/pactorio-*/out/completions)
diff --git a/nixpkgs/pkgs/development/tools/parinfer-rust/default.nix b/nixpkgs/pkgs/development/tools/parinfer-rust/default.nix
index ce733b8a2131..59253a4f7da2 100644
--- a/nixpkgs/pkgs/development/tools/parinfer-rust/default.nix
+++ b/nixpkgs/pkgs/development/tools/parinfer-rust/default.nix
@@ -11,11 +11,11 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0hj5in5h7pj72m4ag80ing513fh65q8xlsf341qzm3vmxm3y3jgd";
   };
 
-  cargoSha256 = "16ylk125p368mcz8nandmfqlygrqjlf8mqaxlbpixqga378saidl";
+  cargoSha256 = "1lam4gwzcj6w0pyxf61l2cpbvvf5gmj2gwi8dangnhd60qhlnvrx";
 
   nativeBuildInputs = [ llvmPackages.clang ];
   buildInputs = [ llvmPackages.libclang ];
-  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
   postInstall = ''
     mkdir -p $out/share/kak/autoload/plugins
diff --git a/nixpkgs/pkgs/development/tools/parsing/byacc/default.nix b/nixpkgs/pkgs/development/tools/parsing/byacc/default.nix
index 4f6f00e968ef..756d99c6e7f4 100644
--- a/nixpkgs/pkgs/development/tools/parsing/byacc/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/byacc/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "byacc";
-  version = "20200910";
+  version = "20210109";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz"
     ];
-    sha256 = "0c6gbvlgzi6yflri22w7fa2w3k5m3jk0xb5a43f3vwpa783hcn8a";
+    sha256 = "sha256-nn13aFhxQed4RJJhXf78cKjgBBAEO2OQHv7cG1DBm5c=";
   };
 
   configureFlags = [
diff --git a/nixpkgs/pkgs/development/tools/parsing/flex/default.nix b/nixpkgs/pkgs/development/tools/parsing/flex/default.nix
index 42b007300a95..0bc26db57504 100644
--- a/nixpkgs/pkgs/development/tools/parsing/flex/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/flex/default.nix
@@ -34,8 +34,8 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ m4 ];
 
   preConfigure = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
-    "ac_cv_func_malloc_0_nonnull=yes"
-    "ac_cv_func_realloc_0_nonnull=yes"
+    "export ac_cv_func_malloc_0_nonnull=yes"
+    "export ac_cv_func_realloc_0_nonnull=yes"
   ];
 
   postConfigure = lib.optionalString (stdenv.isDarwin || stdenv.isCygwin) ''
diff --git a/nixpkgs/pkgs/development/tools/parsing/re2c/default.nix b/nixpkgs/pkgs/development/tools/parsing/re2c/default.nix
index ebba9903a47c..a945f3bdde03 100644
--- a/nixpkgs/pkgs/development/tools/parsing/re2c/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/re2c/default.nix
@@ -1,48 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "re2c";
-  version = "1.3";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner  = "skvadrik";
     repo   = "re2c";
     rev    = version;
-    sha256 = "0aqlf2h6i2m3dq11dkq89p4w4c9kp4x66s5rhp84gmpz5xqv1x5h";
+    sha256 = "06nvk5sf4vrc2bvpj4vi2xwy3ggv548sn530drz5fi67nhzgga26";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "CVE-2018-21232-part1.patch";
-      url = "https://github.com/skvadrik/re2c/commit/fd634998f813340768c333cdad638498602856e5.patch";
-      sha256 = "1blyg5lyhqd4ymisih65xl0g36ig71ijia4skkkd59rdvj78aiw6";
-    })
-
-    (fetchpatch {
-      name = "CVE-2018-21232-part2.patch";
-      url = "https://github.com/skvadrik/re2c/commit/7b5643476bd99c994c4f51b8143f942982d85521.patch";
-      sha256 = "0rhmgqrinpk49r9x75ygrs14lz72aw5ad5kr6qp9bdyl8gs082qp";
-    })
-
-    (fetchpatch {
-      name = "CVE-2018-21232-part3.patch";
-      url = "https://github.com/skvadrik/re2c/commit/4d9c809355b574f2a58eac119f5e076c48e4d1e2.patch";
-      sha256 = "0k86wg9icw1gkqpf7rq2w6xsq4caxw3rc0zfxf39liwa35027rai";
-    })
-
-    (fetchpatch {
-      name = "CVE-2018-21232-part4.patch";
-      url = "https://github.com/skvadrik/re2c/commit/89be91f3df00657261870adbc590209fdb2bc405.patch";
-      sha256 = "1aygy9va7jwby93chlskwg7z90fn07x5hym0gziwlkx8k900p3a3";
-    })
-
-    (fetchpatch {
-      name = "CVE-2020-11958.patch";
-      url = "https://github.com/skvadrik/re2c/commit/c4603ba5ce229db83a2a4fb93e6d4b4e3ec3776a.patch";
-      sha256 = "1d95ahxk92g7k87sda9gxgmr3blyfzwd2y7h9jxj8zkd74knd9zh";
-    })
-  ];
-
   nativeBuildInputs = [ autoreconfHook ];
 
   doCheck = true;
@@ -54,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Tool for writing very fast and very flexible scanners";
-    homepage    = "http://re2c.org";
+    homepage    = "https://re2c.org";
     license     = licenses.publicDomain;
     platforms   = platforms.all;
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
index 293b8bb095a7..6ab1463917c8 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -28,9 +28,9 @@ let
   # 1) change all these hashes
   # 2) nix-build -A tree-sitter.updater.update-all-grammars
   # 3) run the ./result script that is output by that (it updates ./grammars)
-  version = "0.19.3";
-  sha256 = "0zd1p9x32bwdc5cdqr0x8i9fpcykk1zczb8zdjawrrr92465d26y";
-  cargoSha256 = "0mlrbl85x1x2ynwrps94mxn95rjj1r7gb3vdivfaxqv1xvp25m41";
+  version = "0.19.5";
+  sha256 = "1qmb0sva28zv6r3c3j7xs9pc8bpwwhkb9vxxndw2zbdn9wkvmbmn";
+  cargoSha256 = "0hnjik3pymb1s7frhfpfzvd6w2k3lgpsmh6milpriwxmqsmkwdzz";
 
   src = fetchFromGitHub {
     owner = "tree-sitter";
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
index 5ca381e6d2ff..93e1cb3804fb 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
@@ -1,5 +1,7 @@
 { stdenv
 , tree-sitter
+, libcxx
+, lib
 }:
 
 # Build a parser grammar and put the resulting shared object in `$out/parser`
@@ -27,6 +29,7 @@ stdenv.mkDerivation {
       "${source}/${location}"
   ;
 
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
   buildInputs = [ tree-sitter ];
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
index d9d5fa46badc..e5eb3029c868 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -29,7 +29,10 @@
   tree-sitter-scala = (builtins.fromJSON (builtins.readFile ./tree-sitter-scala.json));
   tree-sitter-svelte = (builtins.fromJSON (builtins.readFile ./tree-sitter-svelte.json));
   tree-sitter-swift = (builtins.fromJSON (builtins.readFile ./tree-sitter-swift.json));
+  tree-sitter-toml = (builtins.fromJSON (builtins.readFile ./tree-sitter-toml.json));
+  tree-sitter-tsq = (builtins.fromJSON (builtins.readFile ./tree-sitter-tsq.json));
   tree-sitter-typescript = (builtins.fromJSON (builtins.readFile ./tree-sitter-typescript.json));
   tree-sitter-verilog = (builtins.fromJSON (builtins.readFile ./tree-sitter-verilog.json));
   tree-sitter-yaml = (builtins.fromJSON (builtins.readFile ./tree-sitter-yaml.json));
+  tree-sitter-zig = (builtins.fromJSON (builtins.readFile ./tree-sitter-zig.json));
 }
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c-sharp.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c-sharp.json
index dd6a3a380bc6..148004de4657 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c-sharp.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c-sharp.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-c-sharp",
-  "rev": "09749b7b5428e770cc2ebdf2e90029c0f4a2d411",
-  "date": "2021-04-13T07:05:48+01:00",
-  "path": "/nix/store/w99nivk866bglvijxb5m0c789qh99x1m-tree-sitter-c-sharp",
-  "sha256": "17n7r1j1ib3gzjf0qw88512flzamjrvilksbf1p15dqa17rmwyq1",
+  "rev": "5b6bfbdcdbdda7da4839d7163ce579ed98410282",
+  "date": "2021-05-21T15:22:56+02:00",
+  "path": "/nix/store/msyjbgxf3y3rj6m3w2apd65cvr9x523r-tree-sitter-c-sharp",
+  "sha256": "0ls2qic3jb20zv4m5pdrc3ikfb66afay3krvc6gsq1fi9hbxrmvv",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
index 6783d4381f6d..69d4869010f4 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-go",
-  "rev": "2a83dfdd759a632651f852aa4dc0af2525fae5cd",
-  "date": "2021-03-09T16:11:33-05:00",
-  "path": "/nix/store/2jk1bacllxsii8nlbc5lyi3k376ylf3q-tree-sitter-go",
-  "sha256": "001p8kb8g4vghn78690bnav42inkypld2k1mbd5pbmd5svvacfav",
+  "rev": "eb306e6e60f393df346cfc8cbfaf52667a37128a",
+  "date": "2021-05-04T14:03:16-07:00",
+  "path": "/nix/store/xgi4w5by155m1zqhqf2s7hmngy6sxdq3-tree-sitter-go",
+  "sha256": "03x3nkjxdfck9a4z2i50wq065vixqqk4v5w6fnd870q63v0zrc7c",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
index c3e5cb9d20f2..0856320ef59b 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-java",
-  "rev": "ee8e358637e05188f9f65d8d1ad88a4412c975ce",
-  "date": "2021-04-20T10:40:14-04:00",
-  "path": "/nix/store/8612qackwqdsvbfc03lzc5vds6mvqwxf-tree-sitter-java",
-  "sha256": "19qxfimy8w49gqc97siknd27kvkz73qp2v2118pvdbdz7c5dv27r",
+  "rev": "2efe37f92d2e6aeb25186e9da07455bb4a30163c",
+  "date": "2021-05-04T14:05:05-07:00",
+  "path": "/nix/store/bzljwaraqj6zqpq85cz9xb0vwh7c10yj-tree-sitter-java",
+  "sha256": "09v3xg1356ghc2n0yi8iqkp80lbkav0jpfgz8iz2j1sl7ihbvkyw",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
index 351a0f262cb0..c0411d15fb69 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-javascript",
-  "rev": "a263a8f53266f8f0e47e21598e488f0ef365a085",
-  "date": "2021-04-20T10:37:09-04:00",
-  "path": "/nix/store/y6qbdzdx4g1g1sa2rb7dnk9snjs6lhpp-tree-sitter-javascript",
-  "sha256": "04s1jb9c96kwq0nrh6516idlh58d2b1k66amqa2sl5kk32pl9pmm",
+  "rev": "6c8cfae935f67dd9e3a33982e5e06be0ece6399a",
+  "date": "2021-05-11T09:51:32-07:00",
+  "path": "/nix/store/dhh1gz45l3h3p31jfg5fgy1kns1lbw6d-tree-sitter-javascript",
+  "sha256": "1mw6miw4yp6s1i0b08hflamfvrjdim4fnnj6fy461n05jp1s1i78",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
index d90f09348cad..ef319a1e33d7 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-julia",
-  "rev": "0ba7a24b062b671263ae08e707e9e94383b25bb7",
-  "date": "2021-03-04T14:52:13-08:00",
-  "path": "/nix/store/2ni8p1cgyrkn1mcccl4zqdpkfm63a10m-tree-sitter-julia",
-  "sha256": "1pbnmvhy2gq4vg1b0sjzmjm4s2gsgdjh7h01yj8qrrqbcl29c463",
+  "rev": "12ea597262125fc22fd2e91aa953ac69b19c26ca",
+  "date": "2021-05-03T17:44:45-07:00",
+  "path": "/nix/store/lbz23r698hn7cha09qq0dbfay7dh74gg-tree-sitter-julia",
+  "sha256": "0rmd7k3rv567psxrlqv17gvckijs19xs6mxni045rpayxmk441sk",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
index eb97bb46f685..ff638a08baf0 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/cstrahan/tree-sitter-nix",
-  "rev": "d5287aac195ab06da4fe64ccf93a76ce7c918445",
-  "date": "2021-04-21T19:11:29-05:00",
-  "path": "/nix/store/6labzn2qd3wyn4k2ddb09z2avpgqwbp1-tree-sitter-nix",
-  "sha256": "0mapqdqrinskdxlarrrvyd55mjg97gbd6jm9vbjmdm4xi2hhzvxa",
+  "rev": "50f38ceab667f9d482640edfee803d74f4edeba5",
+  "date": "2021-04-27T17:21:51-05:00",
+  "path": "/nix/store/fhf3mvxg17g0xli59cgmmwqy4g21fbzj-tree-sitter-nix",
+  "sha256": "11gifb9b7x9v223hsrcb6wlkqpxbc4p5v4ny9aixzi9k8g0jhb3d",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
index 941a96646843..fe6b149e0409 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-ocaml",
-  "rev": "2f962cf4eb0bee87bba755347a79ee501cd58313",
-  "date": "2021-03-11T02:13:42+01:00",
-  "path": "/nix/store/pwf6di3pdghsnb83c87vvm3w0d5aanvp-tree-sitter-ocaml",
-  "sha256": "1dfan7kbs7i0nz9dkxv8ipn0b341j1fr9fn0a2zfqsx6xxkra56r",
+  "rev": "0348562f385bc2bd67ecf181425e1afd6d454192",
+  "date": "2021-05-07T21:05:16+02:00",
+  "path": "/nix/store/s2499rsi28k0nrwx8wl2idsp86zsx2iz-tree-sitter-ocaml",
+  "sha256": "0iqmwcz3c2ai4gyx4xli1rhn6hi6a0f60dn20f8jas9ham9dc2df",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-php.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-php.json
index a536d54b651c..4ff38790b6f7 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-php.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-php.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-php",
-  "rev": "4dcc061668fbc68b79421c72eb8a8baeeb0f3693",
-  "date": "2021-04-19T12:44:47-04:00",
-  "path": "/nix/store/2i80zds4dbynrdim9ngc8yp6yn825byb-tree-sitter-php",
-  "sha256": "0hs6dfw9n6sp7vbp7zfid0f0sxydyya3dyp5ghckz7al069g3vx2",
+  "rev": "6a271f4075e11815e787df9055a950fb844ee63b",
+  "date": "2021-05-13T12:41:22+02:00",
+  "path": "/nix/store/n6hycd1scxa990xchk5h09ilxi7w18f5-tree-sitter-php",
+  "sha256": "1ijxc6brd0d35hr89ic8k5ispc6sj4mxln7bznd9n6zrgjvfdjqb",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-toml.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-toml.json
new file mode 100644
index 000000000000..a3d9bedd133b
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-toml.json
@@ -0,0 +1,10 @@
+{
+  "url": "https://github.com/ikatyang/tree-sitter-toml",
+  "rev": "8bd2056818b21860e3d756b5a58c4f6e05fb744e",
+  "date": "2021-05-11T12:47:32+08:00",
+  "path": "/nix/store/isgpadcxmgkb14w9yg67pb8lx7wlfhnn-tree-sitter-toml",
+  "sha256": "0yasw5fp4mq6vzrdwlc3dxlss8a94bsffv4mzrfp0b3iw0s1dlyg",
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tsq.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tsq.json
new file mode 100644
index 000000000000..918e87b38a42
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tsq.json
@@ -0,0 +1,10 @@
+{
+  "url": "https://github.com/tree-sitter/tree-sitter-tsq",
+  "rev": "b665659d3238e6036e22ed0e24935e60efb39415",
+  "date": "2021-05-18T15:57:40-04:00",
+  "path": "/nix/store/j59y4s3bsv6d5nbmhhdgb043hmk8157k-tree-sitter-tsq",
+  "sha256": "03bch2wp2jwxk69zjplvm0gbyw06qqdy7il9qkiafvhrbh03ayd9",
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json
index a59dd9a0004a..04ad785f76f9 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-typescript",
-  "rev": "82916165120f840164f11119f268a4de819ea90b",
-  "date": "2021-04-19T18:16:19-07:00",
-  "path": "/nix/store/0c0kkiiamms3yl3mf1clyrqcjwp5j920-tree-sitter-typescript",
-  "sha256": "1jnf0hn6hmn4x2cvy29mk8g1wlp0afs8immp461by3q5hcq8fzb4",
+  "rev": "28e757a2f498486931b3cb13a100a1bcc9261456",
+  "date": "2021-05-04T14:04:30-07:00",
+  "path": "/nix/store/d90hgv5g374a6mrwhq9vcxk6d6lp2ags-tree-sitter-typescript",
+  "sha256": "0dxy5h68hhypzq0z15q8iawjgw3kx7dlpw76zv6xkxh25idqgxqh",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-yaml.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-yaml.json
index c8544d7dbec3..8959c80f9f48 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-yaml.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-yaml.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/ikatyang/tree-sitter-yaml",
-  "rev": "6129a83eeec7d6070b1c0567ec7ce3509ead607c",
-  "date": "2021-04-18T14:25:59+08:00",
-  "path": "/nix/store/8wrwm71z9flfk00phrh9aaxpvsrw1m67-tree-sitter-yaml",
-  "sha256": "1bimf5fq85wn8dwlk665w15n2bj37fma5rsfxrph3i9yb0lvzi3q",
+  "rev": "0e36bed171768908f331ff7dff9d956bae016efb",
+  "date": "2021-05-11T12:47:24+08:00",
+  "path": "/nix/store/7d7m4zs4ydnwbn3xnfm3pvpy7gvkrmg8-tree-sitter-yaml",
+  "sha256": "0wyvjh62zdp5bhd2y8k7k7x4wz952l55i1c8d94rhffsbbf9763f",
   "fetchSubmodules": false,
   "deepClone": false,
   "leaveDotGit": false
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json
new file mode 100644
index 000000000000..97774bc58f61
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json
@@ -0,0 +1,10 @@
+{
+  "url": "https://github.com/GrayJack/tree-sitter-zig",
+  "rev": "41bbc7f7b94bde3e948e41e4d42673945238ff03",
+  "date": "2021-03-30T12:55:10-03:00",
+  "path": "/nix/store/av4xgzr3c1rhr7v4fa9mm68krd2qv1lg-tree-sitter-zig",
+  "sha256": "0gjxac43qpqc4332bp3mpdbvh7rqv0q3hvw8834b30ml5q0r0qr0",
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
index c55858b5ff15..168c9a0a403d 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -35,6 +35,7 @@ let
     "tree-sitter-jsdoc"
     "tree-sitter-ql"
     "tree-sitter-embedded-template"
+    "tree-sitter-tsq"
   ];
   knownTreeSitterOrgGrammarReposJson = jsonFile "known-tree-sitter-org-grammar-repos" knownTreeSitterOrgGrammarRepos;
 
@@ -60,6 +61,8 @@ let
     "tree-sitter.github.io"
     # not maintained
     "tree-sitter-razor"
+    # rust library for constructing arbitrary graph structures from source code
+    "tree-sitter-graph"
   ];
   ignoredTreeSitterOrgReposJson = jsonFile "ignored-tree-sitter-org-repos" ignoredTreeSitterOrgRepos;
 
@@ -91,6 +94,14 @@ let
       orga = "ikatyang";
       repo = "tree-sitter-yaml";
     };
+    "tree-sitter-toml" = {
+      orga = "ikatyang";
+      repo = "tree-sitter-toml";
+    };
+    "tree-sitter-zig" = {
+      orga = "GrayJack";
+      repo = "tree-sitter-zig";
+    };
   };
 
   allGrammars =
diff --git a/nixpkgs/pkgs/development/tools/pax-rs/default.nix b/nixpkgs/pkgs/development/tools/pax-rs/default.nix
index ff4219ad09c6..248a137c49f6 100644
--- a/nixpkgs/pkgs/development/tools/pax-rs/default.nix
+++ b/nixpkgs/pkgs/development/tools/pax-rs/default.nix
@@ -36,5 +36,5 @@ buildRustPackage rec {
       cp ${cargo-lock} $out/Cargo.lock
     '';
 
-  cargoSha256 = "0wx5x7ll21bb6v34csk63kkvxdk3as720hdkaj0izdkpy0xf1knr";
+  cargoSha256 = "0d6g52hjflnw2zvlx10pz78527vh7mw5n43yi8q6dwr3pkbds1fs";
 }
diff --git a/nixpkgs/pkgs/development/tools/picotool/default.nix b/nixpkgs/pkgs/development/tools/picotool/default.nix
new file mode 100644
index 000000000000..d4a6f1c409b1
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/picotool/default.nix
@@ -0,0 +1,31 @@
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libusb1, pico-sdk }:
+
+stdenv.mkDerivation rec {
+  pname = "picotool";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "raspberrypi";
+    repo = pname;
+    rev = version;
+    sha256 = "1k5j742sj91akdrgnd3wa5csqb638dgaz0c09zsr22fcqz0qhzig";
+  };
+
+  buildInputs = [ libusb1 pico-sdk ];
+  nativeBuildInputs = [ cmake pkg-config ];
+  cmakeFlags = [ "-DPICO_SDK_PATH=${pico-sdk}/lib/pico-sdk" ];
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm755 ./picotool -t $out/bin
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/raspberrypi/picotool";
+    description = "Tool for interacting with a RP2040 device in BOOTSEL mode, or with a RP2040 binary";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ musfay ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/default.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
index 62063ff09947..3971a7631d46 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
@@ -5,7 +5,7 @@
 }:
 let
   # Poetry2nix version
-  version = "1.16.1";
+  version = "1.17.1";
 
   inherit (poetryLib) isCompatible readTOML moduleName;
 
@@ -163,7 +163,7 @@ lib.makeScope pkgs.newScope (self: {
       compatible = partitions.right;
       incompatible = partitions.wrong;
 
-      # Create an overriden version of pythonPackages
+      # Create an overridden version of pythonPackages
       #
       # We need to avoid mixing multiple versions of pythonPackages in the same
       # closure as python can only ever have one version of a dependency
@@ -209,12 +209,12 @@ lib.makeScope pkgs.newScope (self: {
                   poetry-core = if __isBootstrap then null else poetryPkg.passthru.python.pkgs.poetry-core;
                   poetry = if __isBootstrap then null else poetryPkg;
 
-                  # The canonical name is setuptools-scm
-                  setuptools-scm = super.setuptools_scm;
-
                   __toPluginAble = toPluginAble self;
 
                   inherit (hooks) pipBuildHook removePathDependenciesHook poetry2nixFixupHook wheelUnpackHook;
+                } // lib.optionalAttrs (! super ? setuptools-scm) {
+                  # The canonical name is setuptools-scm
+                  setuptools-scm = super.setuptools_scm;
                 }
             )
             # Null out any filtered packages, we don't want python.pkgs from nixpkgs
@@ -229,7 +229,12 @@ lib.makeScope pkgs.newScope (self: {
 
       inputAttrs = mkInputAttrs { inherit py pyProject; attrs = { }; includeBuildSystem = false; };
 
-      storePackages = builtins.foldl' (acc: v: acc ++ v) [ ] (lib.attrValues inputAttrs);
+      requiredPythonModules = python.pkgs.requiredPythonModules;
+      /* Include all the nested dependencies which are required for each package.
+         This guarantees that using the "poetryPackages" attribute will return
+         complete list of dependencies for the poetry project to be portable.
+      */
+      storePackages = requiredPythonModules (builtins.foldl' (acc: v: acc ++ v) [ ] (lib.attrValues inputAttrs));
     in
     {
       python = py;
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh
index 97f54b23416d..e56dee6849b2 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-wheel.sh
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh
@@ -9,12 +9,12 @@ curl="curl            \
  --cookie-jar cookies \
  --insecure           \
  --speed-time 5       \
- -#                   \
+ --progress-bar       \
  --fail               \
  $curlOpts            \
  $NIX_CURL_FLAGS"
 
-echo "Trying to fetch wheel with predicted URL: $predictedURL"
+echo "Trying to fetch with predicted URL: $predictedURL"
 
 $curl $predictedURL --output $out && exit 0
 
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py
new file mode 100644
index 000000000000..5931d4c92708
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py
@@ -0,0 +1,72 @@
+# Some repositories (such as Devpi) expose the Pypi legacy API
+# (https://warehouse.pypa.io/api-reference/legacy.html).
+#
+# Note it is not possible to use pip
+# https://discuss.python.org/t/pip-download-just-the-source-packages-no-building-no-metadata-etc/4651/12
+
+import sys
+from urllib.parse import urlparse
+from html.parser import HTMLParser
+import urllib.request
+import shutil
+import ssl
+import os
+
+
+# Parse the legacy index page to extract the href and package names
+class Pep503(HTMLParser):
+    def __init__(self):
+        super().__init__()
+        self.sources = {}
+        self.url = None
+        self.name = None
+
+    def handle_data(self, data):
+        if self.url is not None:
+            self.name = data
+
+    def handle_starttag(self, tag, attrs):
+        if tag == "a":
+            for name, value in attrs:
+                if name == "href":
+                    self.url = value
+
+    def handle_endtag(self, tag):
+        if self.url is not None:
+            self.sources[self.name] = self.url
+        self.url = None
+
+
+url = sys.argv[1]
+package_name = sys.argv[2]
+index_url = url + "/" + package_name
+package_filename = sys.argv[3]
+
+print("Reading index %s" % index_url)
+
+response = urllib.request.urlopen(
+    index_url,
+    context=ssl.CERT_NONE)
+index = response.read()
+
+parser = Pep503()
+parser.feed(str(index))
+if package_filename not in parser.sources:
+    print("The file %s has not be found in the index %s" % (
+        package_filename, index_url))
+    exit(1)
+
+package_file = open(package_filename, "wb")
+# Sometimes the href is a relative path
+if urlparse(parser.sources[package_filename]).netloc == '':
+    package_url = index_url + "/" + parser.sources[package_filename]
+else:
+    package_url = parser.sources[package_filename]
+print("Downloading %s" % package_url)
+
+response = urllib.request.urlopen(
+    package_url,
+    context=ssl.CERT_NONE)
+
+with response as r:
+    shutil.copyfileobj(r, package_file)
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
index 6af37b395e0c..cb1cd8af1316 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
@@ -93,17 +93,19 @@ let
   );
 
 
-  # Fetch the wheels from the PyPI index.
-  # We need to first get the proper URL to the wheel.
+  # Fetch from the PyPI index.
+  # At first we try to fetch the predicated URL but if that fails we
+  # will use the Pypi API to determine the correct URL.
   # Args:
   #   pname: package name
   #   file: filename including extension
+  #   version: the version string of the dependency
   #   hash: SRI hash
   #   kind: Language implementation and version tag
-  fetchWheelFromPypi = lib.makeOverridable (
-    { pname, file, hash, kind, curlOpts ? "" }:
+  fetchFromPypi = lib.makeOverridable (
+    { pname, file, version, hash, kind, curlOpts ? "" }:
     let
-      version = builtins.elemAt (builtins.split "-" file) 2;
+      predictedURL = predictURLFromPypi { inherit pname file hash kind; };
     in
     (pkgs.stdenvNoCC.mkDerivation {
       name = file;
@@ -111,7 +113,7 @@ let
         pkgs.curl
         pkgs.jq
       ];
-      isWheel = true;
+      isWheel = lib.strings.hasSuffix "whl" file;
       system = "builtin";
 
       preferLocalBuild = true;
@@ -119,36 +121,35 @@ let
         "NIX_CURL_FLAGS"
       ];
 
-      predictedURL = predictURLFromPypi { inherit pname file hash kind; };
-      inherit pname file version curlOpts;
+      inherit pname file version curlOpts predictedURL;
 
-      builder = ./fetch-wheel.sh;
+      builder = ./fetch-from-pypi.sh;
 
       outputHashMode = "flat";
       outputHashAlgo = "sha256";
       outputHash = hash;
+
+      passthru = {
+        urls = [ predictedURL ]; # retain compatibility with nixpkgs' fetchurl
+      };
     })
   );
 
-  # Fetch the artifacts from the PyPI index. Since we get all
-  # info we need from the lock file we don't use nixpkgs' fetchPyPi
-  # as it modifies casing while not providing anything we don't already
-  # have.
-  #
-  # Args:
-  #   pname: package name
-  #   file: filename including extension
-  #   hash: SRI hash
-  #   kind: Language implementation and version tag https://www.python.org/dev/peps/pep-0427/#file-name-convention
-  fetchFromPypi = lib.makeOverridable (
-    { pname, file, hash, kind }:
-    if lib.strings.hasSuffix "whl" file then fetchWheelFromPypi { inherit pname file hash kind; }
-    else
-      pkgs.fetchurl {
-        url = predictURLFromPypi { inherit pname file hash kind; };
-        inherit hash;
-      }
+  fetchFromLegacy = lib.makeOverridable (
+    { python, pname, url, file, hash }:
+    pkgs.runCommand file
+      {
+        nativeBuildInputs = [ python ];
+        impureEnvVars = lib.fetchers.proxyImpureEnvVars;
+        outputHashMode = "flat";
+        outputHashAlgo = "sha256";
+        outputHash = hash;
+      } ''
+      python ${./fetch_from_legacy.py} ${url} ${pname} ${file}
+      mv ${file} $out
+    ''
   );
+
   getBuildSystemPkgs =
     { pythonPackages
     , pyProject
@@ -215,7 +216,7 @@ in
 {
   inherit
     fetchFromPypi
-    fetchWheelFromPypi
+    fetchFromLegacy
     getManyLinuxDeps
     isCompatible
     readTOML
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
index bb7b4e39b037..b403e9941f34 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
@@ -28,7 +28,7 @@ pythonPackages.callPackage
     }@args:
     let
       inherit (pkgs) stdenv;
-      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromPypi moduleName;
+      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromLegacy fetchFromPypi moduleName;
 
       inherit (import ./pep425.nix {
         inherit lib poetryLib python;
@@ -37,7 +37,7 @@ pythonPackages.callPackage
         ;
       fileCandidates =
         let
-          supportedRegex = ("^.*?(" + builtins.concatStringsSep "|" supportedExtensions + ")");
+          supportedRegex = ("^.*(" + builtins.concatStringsSep "|" supportedExtensions + ")");
           matchesVersion = fname: builtins.match ("^.*" + builtins.replaceStrings [ "." ] [ "\\." ] version + ".*$") fname != null;
           hasSupportedExtension = fname: builtins.match supportedRegex fname != null;
           isCompatibleEgg = fname: ! lib.strings.hasSuffix ".egg" fname || lib.strings.hasSuffix "py${python.pythonVersion}.egg" fname;
@@ -48,6 +48,7 @@ pythonPackages.callPackage
       isGit = isSource && source.type == "git";
       isUrl = isSource && source.type == "url";
       isLocal = isSource && source.type == "directory";
+      isLegacy = isSource && source.type == "legacy";
       localDepPath = toPath source.url;
 
       buildSystemPkgs =
@@ -171,10 +172,19 @@ pythonPackages.callPackage
             }
         else if isLocal then
           (poetryLib.cleanPythonSources { src = localDepPath; })
+        else if isLegacy then
+          fetchFromLegacy
+            {
+              pname = name;
+              inherit python;
+              inherit (fileInfo) file hash;
+              inherit (source) url;
+            }
         else
           fetchFromPypi {
             pname = name;
             inherit (fileInfo) file hash kind;
+            inherit version;
           };
     }
   )
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
index aa58864fed78..787513855772 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
@@ -8,7 +8,13 @@ self: super:
 {
   automat = super.automat.overridePythonAttrs (
     old: rec {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.m2r ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.m2r ];
+    }
+  );
+
+  aiohttp-swagger3 = super.aiohttp-swagger3.overridePythonAttrs (
+    old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
     }
   );
 
@@ -21,7 +27,7 @@ self: super:
 
       # Inputs copied from nixpkgs as ansible doesn't specify it's dependencies
       # in a correct manner.
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         self.pycrypto
         self.paramiko
         self.jinja2
@@ -170,7 +176,7 @@ self: super:
   dictdiffer = super.dictdiffer.overridePythonAttrs (
     old: {
       buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.setuptools ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
     }
   );
 
@@ -178,7 +184,7 @@ self: super:
     super.django.overridePythonAttrs (
       old: {
         propagatedNativeBuildInputs = (old.propagatedNativeBuildInputs or [ ])
-          ++ [ pkgs.gettext ];
+          ++ [ pkgs.gettext self.pytest-runner ];
       }
     )
   );
@@ -193,6 +199,36 @@ self: super:
     }
   );
 
+  django-cors-headers = super.django-cors-headers.overridePythonAttrs (
+    old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
+    }
+  );
+
+  django-hijack = super.django-hijack.overridePythonAttrs (
+    old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
+    }
+  );
+
+  django-prometheus = super.django-prometheus.overridePythonAttrs (
+    old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
+    }
+  );
+
+  django-rosetta = super.django-rosetta.overridePythonAttrs (
+    old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
+    }
+  );
+
+  django-stubs-ext = super.django-stubs-ext.overridePythonAttrs (
+    old: {
+      prePatch = (old.prePatch or "") + "touch ../LICENSE.txt";
+    }
+  );
+
   dlib = super.dlib.overridePythonAttrs (
     old: {
       # Parallel building enabled
@@ -227,6 +263,16 @@ self: super:
     '';
   };
 
+  # remove eth-hash dependency because eth-hash also depends on eth-utils causing a cycle.
+  eth-utils = super.eth-utils.overridePythonAttrs (old: {
+    propagatedBuildInputs =
+      builtins.filter (i: i.pname != "eth-hash") old.propagatedBuildInputs;
+    preConfigure = ''
+      ${old.preConfigure or ""}
+      sed -i '/eth-hash/d' setup.py
+    '';
+  });
+
   faker = super.faker.overridePythonAttrs (
     old: {
       buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
@@ -244,6 +290,10 @@ self: super:
     }
   );
 
+  fastecdsa = super.fastecdsa.overridePythonAttrs (old: {
+    buildInputs = old.buildInputs ++ [ pkgs.gmp.dev ];
+  });
+
   fastparquet = super.fastparquet.overridePythonAttrs (
     old: {
       buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
@@ -313,11 +363,11 @@ self: super:
           nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkg-config ];
           buildInputs =
             (old.buildInputs or [ ])
-            ++ [ pkgs.hdf5 self.pkg-config self.cython ]
+            ++ [ pkgs.hdf5 self.pkgconfig self.cython ]
             ++ lib.optional mpiSupport mpi
           ;
           propagatedBuildInputs =
-            old.propagatedBuildInputs
+            (old.propagatedBuildInputs or [ ])
             ++ lib.optionals mpiSupport [ self.mpi4py self.openssh ]
           ;
           preBuild = if mpiSupport then "export CC=${mpi}/bin/mpicc" else "";
@@ -333,9 +383,25 @@ self: super:
       ) else old
   );
 
+  hid = super.hid.overridePythonAttrs (
+    old: {
+      postPatch = ''
+        found=
+        for name in libhidapi-hidraw libhidapi-libusb libhidapi-iohidmanager libhidapi; do
+          full_path=${pkgs.hidapi.out}/lib/$name${pkgs.stdenv.hostPlatform.extensions.sharedLibrary}
+          if test -f $full_path; then
+            found=t
+            sed -i -e "s|'$name\..*'|'$full_path'|" hid/__init__.py
+          fi
+        done
+        test -n "$found" || { echo "ERROR: No known libraries found in ${pkgs.hidapi.out}/lib, please update/fix this build expression."; exit 1; }
+      '';
+    }
+  );
+
   horovod = super.horovod.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.mpi ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ pkgs.mpi ];
     }
   );
 
@@ -399,7 +465,10 @@ self: super:
   # importlib-metadata has an incomplete dependency specification
   importlib-metadata = super.importlib-metadata.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ lib.optional self.python.isPy2 self.pathlib2;
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ lib.optional self.python.isPy2 self.pathlib2;
+
+      # disable the removal of pyproject.toml, required because of setuptools_scm
+      dontPreferSetupPy = true;
     }
   );
 
@@ -411,7 +480,7 @@ self: super:
 
   isort = super.isort.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.setuptools ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
     }
   );
 
@@ -453,7 +522,7 @@ self: super:
   );
 
   jsonslicer = super.jsonslicer.overridePythonAttrs (old: {
-    nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkg-config ];
+    nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkgconfig ];
     buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.yajl ];
   });
 
@@ -487,7 +556,7 @@ self: super:
 
   lap = super.lap.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         self.numpy
       ];
     }
@@ -523,13 +592,13 @@ self: super:
 
   lockfile = super.lockfile.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pbr ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.pbr ];
     }
   );
 
   lxml = super.lxml.overridePythonAttrs (
     old: {
-      nativeBuildInputs = with pkgs; (old.nativeBuildInputs or [ ]) ++ [ pkg-config libxml2.dev libxslt.dev ];
+      nativeBuildInputs = with pkgs; (old.nativeBuildInputs or [ ]) ++ [ pkg-config libxml2.dev libxslt.dev ] ++ lib.optionals stdenv.isDarwin [ xcodebuild ];
       buildInputs = with pkgs; (old.buildInputs or [ ]) ++ [ libxml2 libxslt ];
     }
   );
@@ -567,10 +636,14 @@ self: super:
         cat > setup.cfg <<EOF
         [libs]
         system_freetype = True
+      '' + lib.optionalString stdenv.isDarwin ''
+        # LTO not working in darwin stdenv, see NixOS/nixpkgs/pull/19312
+        enable_lto = false
+      '' + ''
         EOF
       '';
 
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         pkgs.libpng
         pkgs.freetype
       ]
@@ -650,7 +723,7 @@ self: super:
       };
     in
     {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.mpi ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ pkgs.mpi ];
       enableParallelBuilding = true;
       preBuild = ''
         ln -sf ${cfg} mpi.cfg
@@ -670,8 +743,15 @@ self: super:
     }
   );
 
+  mypy = super.mypy.overridePythonAttrs (
+    old: {
+      MYPY_USE_MYPYC = pkgs.stdenv.buildPlatform.is64bit;
+    }
+  );
+
   mysqlclient = super.mysqlclient.overridePythonAttrs (
     old: {
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.libmysqlclient ];
       buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.libmysqlclient ];
     }
   );
@@ -682,7 +762,7 @@ self: super:
         self.cython
       ];
 
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         pkgs.zlib
         pkgs.netcdf
         pkgs.hdf5
@@ -769,7 +849,7 @@ self: super:
     in
     {
       buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.sqlite ];
-      propagatedBuildInputs = old.propagatedBuildInputs or [ ]
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ])
         ++ lib.optional withPostgres self.psycopg2
         ++ lib.optional withMysql self.mysql-connector;
     }
@@ -777,7 +857,7 @@ self: super:
 
   pillow = super.pillow.overridePythonAttrs (
     old: {
-      nativeBuildInputs = [ pkgs.pkg-config ] ++ (old.nativeBuildInputs or [ ]);
+      nativeBuildInputs = [ pkgs.pkg-config self.pytest-runner ] ++ (old.nativeBuildInputs or [ ]);
       buildInputs = with pkgs; [ freetype libjpeg zlib libtiff libwebp tcl lcms2 ] ++ (old.buildInputs or [ ]);
     }
   );
@@ -924,7 +1004,7 @@ self: super:
           pkgs.pkg-config
         ];
 
-        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+        propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
           pkgs.cairo
           pkgs.xlibsWrapper
         ];
@@ -1028,6 +1108,16 @@ self: super:
     }
   );
 
+  pyproject-flake8 = super.pyproject-flake8.overridePythonAttrs (
+    old: {
+      buildInputs = (old.buildInputs or [ ]) ++ [ self.flit-core ];
+    }
+  );
+
+  pytezos = super.pytezos.override (old: {
+    buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.libsodium ];
+  });
+
   python-bugzilla = super.python-bugzilla.overridePythonAttrs (
     old: {
       nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
@@ -1214,6 +1304,12 @@ self: super:
     }
   );
 
+  python-snappy = super.python-snappy.overridePythonAttrs (
+    old: {
+      buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.snappy ];
+    }
+  );
+
   ffmpeg-python = super.ffmpeg-python.overridePythonAttrs (
     old: {
       buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
@@ -1228,10 +1324,20 @@ self: super:
     }
   );
 
+  pyusb = super.pyusb.overridePythonAttrs (
+    old: {
+      postPatch = ''
+        libusb=${pkgs.libusb1.out}/lib/libusb-1.0${pkgs.stdenv.hostPlatform.extensions.sharedLibrary}
+        test -f $libusb || { echo "ERROR: $libusb doesn't exist, please update/fix this build expression."; exit 1; }
+        sed -i -e "s|find_library=None|find_library=lambda _:\"$libusb\"|" usb/backend/libusb1.py
+      '';
+    }
+  );
+
   pyzmq = super.pyzmq.overridePythonAttrs (
     old: {
       nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkg-config ];
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.zeromq ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ pkgs.zeromq ];
     }
   );
 
@@ -1298,7 +1404,7 @@ self: super:
     old:
     if old.format != "wheel" then {
       nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.gfortran ];
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pybind11 ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.pybind11 ];
       setupPyBuildFlags = [ "--fcompiler='gnu95'" ];
       enableParallelBuilding = true;
       buildInputs = (old.buildInputs or [ ]) ++ [ self.numpy.blas ];
@@ -1329,6 +1435,17 @@ self: super:
     }
   );
 
+  secp256k1 = super.secp256k1.overridePythonAttrs (old: {
+    nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkgconfig pkgs.autoconf pkgs.automake pkgs.libtool ];
+    buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
+    doCheck = false;
+    # Local setuptools versions like "x.y.post0" confuse an internal check
+    postPatch = ''
+      substituteInPlace setup.py \
+        --replace 'setuptools_version.' '"${self.setuptools.version}".'
+    '';
+  });
+
   shapely = super.shapely.overridePythonAttrs (
     old: {
       buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.geos self.cython ];
@@ -1387,6 +1504,14 @@ self: super:
     }
   );
 
+  # The tokenizers build requires a complex rust setup (cf. nixpkgs override)
+  #
+  # Instead of providing a full source build, we use a wheel to keep
+  # the complexity manageable for now.
+  tokenizers = super.tokenizers.override {
+    preferWheel = true;
+  };
+
   torch = lib.makeOverridable
     ({ enableCuda ? false
      , cudatoolkit ? pkgs.cudatoolkit_10_1
@@ -1415,11 +1540,34 @@ self: super:
         propagatedBuildInputs = [
           self.numpy
           self.future
+          self.typing-extensions
         ];
       })
     )
     { };
 
+  torchvision = lib.makeOverridable
+    ({ enableCuda ? false
+     , cudatoolkit ? pkgs.cudatoolkit_10_1
+     , pkg ? super.torchvision
+     }: pkg.overrideAttrs (old: {
+
+      # without that autoPatchelfHook will fail because cudatoolkit is not in LD_LIBRARY_PATH
+      autoPatchelfIgnoreMissingDeps = true;
+      buildInputs = (old.buildInputs or [ ])
+        ++ [ self.torch ]
+        ++ lib.optionals enableCuda [
+        cudatoolkit
+      ];
+      preConfigure =
+        if (enableCuda) then ''
+          export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${self.torch}/${self.python.sitePackages}/torch/lib:${lib.makeLibraryPath [ cudatoolkit "${cudatoolkit}" ]}"
+        '' else ''
+          export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${self.torch}/${self.python.sitePackages}/torch/lib"
+        '';
+    }))
+    { };
+
   typeguard = super.typeguard.overridePythonAttrs (old: {
     postPatch = ''
       substituteInPlace setup.py \
@@ -1427,12 +1575,18 @@ self: super:
     '';
   });
 
+  typed_ast = super.typed-ast.overridePythonAttrs (old: {
+    nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
+      self.pytest-runner
+    ];
+  });
+
   # nix uses a dash, poetry uses an underscore
   typing_extensions = super.typing_extensions or self.typing-extensions;
 
   urwidtrees = super.urwidtrees.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         self.urwid
       ];
     }
@@ -1476,6 +1630,7 @@ self: super:
   weasyprint = super.weasyprint.overridePythonAttrs (
     old: {
       inherit (pkgs.python3.pkgs.weasyprint) patches;
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
       buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
     }
   );
@@ -1524,7 +1679,7 @@ self: super:
       ) else super.zipp
   ).overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         self.toml
       ];
     }
@@ -1551,9 +1706,38 @@ self: super:
     }
   );
 
+  psutil = super.psutil.overridePythonAttrs (
+    old: {
+      buildInputs = (old.buildInputs or [ ]) ++
+        lib.optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.IOKit;
+    }
+  );
+
+  sentencepiece = super.sentencepiece.overridePythonAttrs (
+    old: {
+      dontUseCmakeConfigure = true;
+      nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
+        pkgs.pkg-config
+        pkgs.cmake
+        pkgs.gperftools
+      ];
+      buildInputs = (old.buildInputs or [ ]) ++ [
+        pkgs.sentencepiece
+      ];
+    }
+  );
+
+  sentence-transformers = super.sentence-transformers.overridePythonAttrs (
+    old: {
+      buildInputs =
+        (old.buildInputs or [ ])
+        ++ [ self.typing-extensions ];
+    }
+  );
+
   supervisor = super.supervisor.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [
         self.meld3
         self.setuptools
       ];
@@ -1562,7 +1746,7 @@ self: super:
 
   cytoolz = super.cytoolz.overridePythonAttrs (
     old: {
-      propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.toolz ];
+      propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.toolz ];
     }
   );
 
@@ -1607,5 +1791,52 @@ self: super:
     }
   );
 
+  wxpython = super.wxpython.overridePythonAttrs (old:
+    let
+      localPython = self.python.withPackages (ps: with ps; [
+        setuptools
+        numpy
+        six
+      ]);
+    in
+    {
+      DOXYGEN = "${pkgs.doxygen}/bin/doxygen";
+
+      nativeBuildInputs = with pkgs; [
+        which
+        doxygen
+        gtk3
+        pkg-config
+        autoPatchelfHook
+      ] ++ (old.nativeBuildInputs or [ ]);
+
+      buildInputs = with pkgs; [
+        gtk3
+        webkitgtk
+        ncurses
+        SDL2
+        xorg.libXinerama
+        xorg.libSM
+        xorg.libXxf86vm
+        xorg.libXtst
+        xorg.xorgproto
+        gst_all_1.gstreamer
+        gst_all_1.gst-plugins-base
+        libGLU
+        libGL
+        libglvnd
+        mesa
+      ] ++ old.buildInputs;
+
+      buildPhase = ''
+        ${localPython.interpreter} build.py -v build_wx
+        ${localPython.interpreter} build.py -v dox etg --nodoc sip
+        ${localPython.interpreter} build.py -v build_py
+      '';
+
+      installPhase = ''
+        ${localPython.interpreter} setup.py install --skip-build --prefix=$out
+      '';
+    });
 
 }
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
index dc9cd2936d06..a5ec51a1345b 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
@@ -129,7 +129,7 @@ let
         if exprs.type == "expr" then
           (
             let
-              mVal = ''[a-zA-Z0-9\'"_\. ]+'';
+              mVal = ''[a-zA-Z0-9\'"_\. \-]+'';
               mOp = "in|[!=<>]+";
               e = stripStr exprs.value;
               m = builtins.map stripStr (builtins.match ''^(${mVal}) *(${mOp}) *(${mVal})$'' e);
diff --git a/nixpkgs/pkgs/development/tools/pqrs/default.nix b/nixpkgs/pkgs/development/tools/pqrs/default.nix
index fb91709bde03..24efea2036a6 100644
--- a/nixpkgs/pkgs/development/tools/pqrs/default.nix
+++ b/nixpkgs/pkgs/development/tools/pqrs/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1vx952ki1rhwfmr3faxs363m9fh61b37b0bkbs57ggn9r44sk1z2";
   };
 
-  cargoSha256 = "1c482y83gzpvazdsxsx5n509mkqmyz640s18y4yg928mmqbsz9c4";
+  cargoSha256 = "0mjwazsnryhlfyzcik8052q0imz5f104x86k6b5rncbbbjaj17q1";
 
   meta = with lib; {
     description = "CLI tool to inspect Parquet files";
diff --git a/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix b/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
index a9443eeadf6e..2d33dedbdd25 100644
--- a/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = sysprof.meta // {
     description = "Static library for Sysprof capture data generation";
+    license = lib.licenses.bsd2Patent;
     platforms = lib.platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix b/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
index 9e749adea209..6ceda016045b 100644
--- a/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
@@ -5,6 +5,7 @@
 , gettext
 , glib
 , gtk3
+, json-glib
 , itstool
 , libdazzle
 , libxml2
@@ -15,18 +16,18 @@
 , shared-mime-info
 , systemd
 , wrapGAppsHook
-, gnome3
+, gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "sysprof";
-  version = "3.38.1";
+  version = "3.40.1";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1z2i9187f2jx456l7h07wy8m9a0p7pj3xiv1aji3snq7rjb1lkj0";
+    sha256 = "0dvlzjwi3a4g37cpyhqpf41f5hypf0gim1jw9wqlv30flbb00l62";
   };
 
   nativeBuildInputs = [
@@ -39,17 +40,27 @@ stdenv.mkDerivation rec {
     pkg-config
     shared-mime-info
     wrapGAppsHook
-    gnome3.adwaita-icon-theme
+    gnome.adwaita-icon-theme
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    json-glib
+    pango
+    polkit
+    systemd
+    libdazzle
   ];
-  buildInputs = [ glib gtk3 pango polkit systemd.dev (lib.getLib systemd) libdazzle ];
 
   mesonFlags = [
     "-Dsystemdunitdir=lib/systemd/system"
   ];
 
   passthru = {
-    updateScript = gnome3.updateScript {
+    updateScript = gnome.updateScript {
       packageName = pname;
+      versionPolicy = "odd-unstable";
     };
   };
 
@@ -65,6 +76,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.gpl2Plus;
     maintainers = teams.gnome.members;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix b/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
index 40aa45a30085..6fd939d00237 100644
--- a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
+++ b/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
@@ -24,6 +24,5 @@ buildGoPackage rec {
     description = "The Go language implementation of gRPC. HTTP/2 based RPC";
     license = licenses.asl20;
     maintainers = [ maintainers.raboof ];
-    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/protoc-gen-twirp/default.nix b/nixpkgs/pkgs/development/tools/protoc-gen-twirp/default.nix
index 6ca016f8e6bd..5db843e6f61f 100644
--- a/nixpkgs/pkgs/development/tools/protoc-gen-twirp/default.nix
+++ b/nixpkgs/pkgs/development/tools/protoc-gen-twirp/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "protoc-gen-twirp";
-  version = "7.2.0";
+  version = "8.0.0";
 
   src = fetchFromGitHub {
     owner = "twitchtv";
     repo = "twirp";
     rev = "v${version}";
-    sha256 = "sha256-W7t36F1St0YLPowHaZSboVNnvX7E2Lg5tPWeyeUSabA=";
+    sha256 = "sha256-lwozRwH96nh4Zlf6ggOF+FuUEfxkN38wxygg5HXw/M0=";
   };
 
   goPackagePath = "github.com/twitchtv/twirp";
diff --git a/nixpkgs/pkgs/development/tools/purescript/spago/spago.nix b/nixpkgs/pkgs/development/tools/purescript/spago/spago.nix
index ed8da83e30a5..0bd33f19f8e9 100644
--- a/nixpkgs/pkgs/development/tools/purescript/spago/spago.nix
+++ b/nixpkgs/pkgs/development/tools/purescript/spago/spago.nix
@@ -1,37 +1,38 @@
+# This has been automatically generated by the script
+# ./update.sh.  This should not be changed by hand.
 { mkDerivation, aeson, aeson-pretty, ansi-terminal, async-pool
-, base, bower-json, bytestring, Cabal, containers, cryptonite
-, dhall, directory, either, extra, fetchgit, file-embed, filepath
-, foldl, fsnotify, generic-lens, Glob, hpack, hspec, hspec-discover
+, base, bower-json, bytestring, containers, cryptonite, dhall
+, directory, either, extra, fetchgit, file-embed, filepath, foldl
+, fsnotify, generic-lens, Glob, hspec, hspec-discover
 , hspec-megaparsec, http-client, http-conduit, http-types
 , lens-family-core, lib, megaparsec, mtl, network-uri, open-browser
 , optparse-applicative, prettyprinter, process, QuickCheck, retry
-, rio, rio-orphans, safe, semver-range, stm, stringsearch
-, tar, template-haskell, temporary, text, time, transformers
-, turtle, unliftio, unordered-containers, utf8-string, versions
-, with-utf8, zlib
+, rio, rio-orphans, safe, semver-range, stm, stringsearch, tar
+, template-haskell, temporary, text, time, transformers, turtle
+, unliftio, unordered-containers, utf8-string, versions, with-utf8
+, zlib
 }:
 mkDerivation {
   pname = "spago";
-  version = "0.20.1";
+  version = "0.20.2";
   src = fetchgit {
     url = "https://github.com/purescript/spago.git";
-    sha256 = "1j2yi6zz9m0k0298wllin39h244v8b2rx87yxxgdbjg77kn96vxg";
-    rev = "41ad739614f4f2c2356ac921308f9475a5a918f4";
+    sha256 = "11jh3bszvl8zfi4xcabpx43jply28dxdywd6fadxspaa05jdxxn2";
+    rev = "0f38c9153e46f30e9d87963e181f5c1a595f4b64";
     fetchSubmodules = true;
   };
   isLibrary = true;
   isExecutable = true;
   libraryHaskellDepends = [
     aeson aeson-pretty ansi-terminal async-pool base bower-json
-    bytestring Cabal containers cryptonite dhall directory either
-    file-embed filepath foldl fsnotify generic-lens Glob http-client
-    http-conduit http-types lens-family-core megaparsec mtl network-uri
-    open-browser optparse-applicative prettyprinter process retry rio
-    rio-orphans safe semver-range stm stringsearch tar template-haskell
-    temporary text time transformers turtle unliftio
-    unordered-containers utf8-string versions with-utf8 zlib
+    bytestring containers cryptonite dhall directory either file-embed
+    filepath foldl fsnotify generic-lens Glob http-client http-conduit
+    http-types lens-family-core megaparsec mtl network-uri open-browser
+    optparse-applicative prettyprinter process retry rio rio-orphans
+    safe semver-range stm stringsearch tar template-haskell temporary
+    text time transformers turtle unliftio unordered-containers
+    utf8-string versions with-utf8 zlib
   ];
-  libraryToolDepends = [ hpack ];
   executableHaskellDepends = [
     ansi-terminal base text turtle with-utf8
   ];
@@ -40,7 +41,6 @@ mkDerivation {
     process QuickCheck temporary text turtle versions
   ];
   testToolDepends = [ hspec-discover ];
-  prePatch = "hpack";
   homepage = "https://github.com/purescript/spago#readme";
   license = lib.licenses.bsd3;
 }
diff --git a/nixpkgs/pkgs/development/tools/purescript/spago/update.sh b/nixpkgs/pkgs/development/tools/purescript/spago/update.sh
index 74bc01050662..12595885df3c 100755
--- a/nixpkgs/pkgs/development/tools/purescript/spago/update.sh
+++ b/nixpkgs/pkgs/development/tools/purescript/spago/update.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p cabal2nix curl jq
+#!nix-shell -i bash -p cabal2nix curl jq haskellPackages.cabal2nix-unstable -I nixpkgs=.
 #
 # This script will update the spago derivation to the latest version using
 # cabal2nix.
@@ -25,7 +25,10 @@ new_version=$(curl --silent "https://api.github.com/repos/purescript/spago/relea
 echo "Updating spago from old version $old_version to new version $new_version."
 echo "Running cabal2nix and outputting to ${spago_derivation_file}..."
 
-cabal2nix --revision "$new_version" "https://github.com/purescript/spago.git" > "$spago_derivation_file"
+echo "# This has been automatically generated by the script" > "$spago_derivation_file"
+echo "# ./update.sh.  This should not be changed by hand." >> "$spago_derivation_file"
+
+cabal2nix --revision "$new_version" "https://github.com/purescript/spago.git" >> "$spago_derivation_file"
 
 # TODO: This should ideally also automatically update the docsSearchVersion
 # from pkgs/development/haskell/configuration-nix.nix.
diff --git a/nixpkgs/pkgs/development/tools/py-spy/default.nix b/nixpkgs/pkgs/development/tools/py-spy/default.nix
index 89480f53a375..94c706c02106 100644
--- a/nixpkgs/pkgs/development/tools/py-spy/default.nix
+++ b/nixpkgs/pkgs/development/tools/py-spy/default.nix
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
 
   checkInputs = [ python3 ];
 
-  cargoSha256 = "sha256-GFH8RzyAMtdfoHPcCV3pKf24fKU65vhMLQfLtkhD0Ns=";
+  cargoSha256 = "sha256-hmqrVGNu3zb109TQfhLI3wvGVnlc4CfbkrIKMfRSn7M=";
 
   meta = with lib; {
     description = "Sampling profiler for Python programs";
diff --git a/nixpkgs/pkgs/development/tools/pypi2nix/default.nix b/nixpkgs/pkgs/development/tools/pypi2nix/default.nix
index 980aa0f09ea5..04d61995d3f7 100644
--- a/nixpkgs/pkgs/development/tools/pypi2nix/default.nix
+++ b/nixpkgs/pkgs/development/tools/pypi2nix/default.nix
@@ -20,4 +20,6 @@ pkgs.buildPythonApplication rec {
     toml
     jsonschema
   ];
+  # https://github.com/nix-community/pypi2nix/issues/460
+  meta.broken = true;
 }
diff --git a/nixpkgs/pkgs/development/tools/qtcreator/default.nix b/nixpkgs/pkgs/development/tools/qtcreator/default.nix
index dc5699ed3739..2b0227407da2 100644
--- a/nixpkgs/pkgs/development/tools/qtcreator/default.nix
+++ b/nixpkgs/pkgs/development/tools/qtcreator/default.nix
@@ -64,7 +64,7 @@ mkDerivation rec {
 
     # Fix paths to libclang library.
     substituteInPlace src/shared/clang/clang_installation.pri \
-      --replace 'LIBCLANG_LIBS = -L$${LLVM_LIBDIR}' 'LIBCLANG_LIBS = -L${llvmPackages_8.libclang}/lib' \
+      --replace 'LIBCLANG_LIBS = -L$${LLVM_LIBDIR}' 'LIBCLANG_LIBS = -L${llvmPackages_8.libclang.lib}/lib' \
       --replace 'LIBCLANG_LIBS += $${CLANG_LIB}' 'LIBCLANG_LIBS += -lclang' \
       --replace 'LIBTOOLING_LIBS = -L$${LLVM_LIBDIR}' 'LIBTOOLING_LIBS = -L${clang_qt_vendor}/lib' \
       --replace 'LLVM_CXXFLAGS ~= s,-gsplit-dwarf,' '${lib.concatStringsSep "\n" ["LLVM_CXXFLAGS ~= s,-gsplit-dwarf," "    LLVM_CXXFLAGS += -fno-rtti"]}'
diff --git a/nixpkgs/pkgs/development/tools/react-native-debugger/default.nix b/nixpkgs/pkgs/development/tools/react-native-debugger/default.nix
index ae1ac3e39f3e..1db72dc1c8ff 100644
--- a/nixpkgs/pkgs/development/tools/react-native-debugger/default.nix
+++ b/nixpkgs/pkgs/development/tools/react-native-debugger/default.nix
@@ -1,5 +1,5 @@
-{ lib, stdenv, fetchurl, unzip, cairo, xorg, gdk-pixbuf, fontconfig, pango, gnome3, atk, at-spi2-atk, at-spi2-core
-, gtk3, glib, freetype, dbus, nss, nspr, alsaLib, cups, expat, udev, makeDesktopItem
+{ lib, stdenv, fetchurl, unzip, cairo, xorg, gdk-pixbuf, fontconfig, pango, gnome, atk, at-spi2-atk, at-spi2-core
+, gtk3, glib, freetype, dbus, nss, nspr, alsa-lib, cups, expat, udev, makeDesktopItem
 }:
 
 let
@@ -16,7 +16,7 @@ let
     dbus
     nss
     nspr
-    alsaLib
+    alsa-lib
     cups
     expat
     udev
diff --git a/nixpkgs/pkgs/development/tools/rebazel/default.nix b/nixpkgs/pkgs/development/tools/rebazel/default.nix
index 73a58ee100bf..5dee0a1b9e86 100644
--- a/nixpkgs/pkgs/development/tools/rebazel/default.nix
+++ b/nixpkgs/pkgs/development/tools/rebazel/default.nix
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-v84ZXhtJpejQmP61NmP06+qrtMu/0yb7UyD7U12xlME=";
   };
 
-  cargoSha256 = "sha256-2FmtbvtNfNoocj3Ly553KBLfOgBAa/eAxOrfZ3NGzzw=";
+  cargoSha256 = "sha256-cBAm8LyNKEVJkhZJ+QZU5XtQutb1oNvad8xH70Bi2LM=";
 
   meta = with lib; {
     description = "tool for expediting bazel build workflows";
diff --git a/nixpkgs/pkgs/development/tools/rep/default.nix b/nixpkgs/pkgs/development/tools/rep/default.nix
index bc73c3927771..0b1294abd1ef 100644
--- a/nixpkgs/pkgs/development/tools/rep/default.nix
+++ b/nixpkgs/pkgs/development/tools/rep/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rep";
-  version = "0.2.1";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "eraserhd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1p0dbaj7f4irzzw1m44x3b3j3jjij9i4rs83wkrpiamlq61077di";
+    sha256 = "pqmISVm3rYGxRuwKieVpRwXE8ufWnBHEA6h2hrob51s=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/tools/rgp/default.nix b/nixpkgs/pkgs/development/tools/rgp/default.nix
index 3cfd608e2258..7b49a83b1ccf 100644
--- a/nixpkgs/pkgs/development/tools/rgp/default.nix
+++ b/nixpkgs/pkgs/development/tools/rgp/default.nix
@@ -19,15 +19,15 @@
 }:
 
 let
-  buildNum = "2020-11-19-376";
+  buildNum = "2021-03-31-696";
 in
 stdenv.mkDerivation rec {
   pname = "rgp";
-  version = "1.9";
+  version = "1.10";
 
   src = fetchurl {
     url = "https://gpuopen.com/download/radeon-developer-tool-suite/RadeonDeveloperToolSuite-${buildNum}.tgz";
-    sha256 = "f71ibuMerd0SmXKSDjaTj7xtyy1dWzkZ5s0PlGtQ1+k=";
+    sha256 = "1GUV75KpYbeq7KkE86QqTfGnf/t3VEgviaAsbg/LWJI=";
   };
 
   nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
@@ -59,6 +59,9 @@ stdenv.mkDerivation rec {
     mkdir -p $out/opt/rgp $out/bin
     cp -r . $out/opt/rgp/
 
+    chmod +x $out/opt/rgp/scripts/*
+    patchShebangs $out/opt/rgp/scripts
+
     for prog in RadeonDeveloperPanel RadeonDeveloperService RadeonDeveloperServiceCLI RadeonGPUAnalyzer RadeonGPUProfiler rga rtda; do
       # makeWrapper is needed so that executables are started from the opt
       # directory, where qt.conf and other tools are
diff --git a/nixpkgs/pkgs/development/tools/richgo/default.nix b/nixpkgs/pkgs/development/tools/richgo/default.nix
index 81a912171f33..f36c84c1ee09 100644
--- a/nixpkgs/pkgs/development/tools/richgo/default.nix
+++ b/nixpkgs/pkgs/development/tools/richgo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "richgo";
-  version = "0.3.3";
+  version = "0.3.6";
 
   src = fetchFromGitHub {
     owner = "kyoh86";
     repo = "richgo";
     rev = "v${version}";
-    sha256 = "07ipa54c4mzm6yizgvkm6x5yim1xgv3f0xdxg35qziacdfcwd6m4";
+    sha256 = "sha256-ehhrJlB0XzLHkspvP6vL8MtrjE12baBFkbqWMD41/Sg=";
   };
 
-  vendorSha256 = "1nvk3akjwfcbvif1w4cglsqplcajlwq3mnvk9b75nmn9qaqfbfjf";
+  vendorSha256 = "sha256-986Abeeb1MHB/0yN1oud6t8wHD5B5MisRHKZcwOq4tU=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/rnix-lsp/default.nix b/nixpkgs/pkgs/development/tools/rnix-lsp/default.nix
index e938526ecbfb..98670e9e1845 100644
--- a/nixpkgs/pkgs/development/tools/rnix-lsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/rnix-lsp/default.nix
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0fy620c34kxl27sd62x9mj0555bcdmnmbsxavmyiwb497z1m9wnn";
   };
 
-  cargoSha256 = "0xmaa7rds7hlagfxj65pv9vgflcv4nwbwbw4g7cyj88cbb1kbxxj";
+  cargoSha256 = "1akapxrh38g44531r25dgik8y5qyy9y6zb031hg8v61px2ajs39s";
 
   meta = with lib; {
     description = "A work-in-progress language server for Nix, with syntax checking and basic completion";
diff --git a/nixpkgs/pkgs/development/tools/roswell/default.nix b/nixpkgs/pkgs/development/tools/roswell/default.nix
new file mode 100644
index 000000000000..98445ea875a4
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/roswell/default.nix
@@ -0,0 +1,38 @@
+{ lib, stdenv, fetchFromGitHub, curl, autoconf, automake, makeWrapper, sbcl }:
+
+stdenv.mkDerivation rec {
+  pname = "roswell";
+  version = "21.01.14.108";
+
+  src = fetchFromGitHub {
+    owner = "roswell";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1hj9q3ig7naky3pb3jkl9yjc9xkg0k7js3glxicv0aqffx9hkp3p";
+  };
+
+  preConfigure = ''
+    sh bootstrap
+  '';
+
+  configureFlags = [ "--prefix=${placeholder "out"}" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/ros \
+      --add-flags 'lisp=sbcl-bin/system sbcl-bin.version=system' \
+      --prefix PATH : ${lib.makeBinPath [ sbcl ]} --argv0 ros
+  '';
+
+  nativeBuildInputs = [ autoconf automake makeWrapper ];
+
+  buildInputs = [ sbcl curl ];
+
+  meta = with lib; {
+    description = "Roswell is a Lisp implementation installer/manager, launcher, and much more";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hiro98 ];
+    platforms = platforms.linux;
+    homepage = "https://github.com/roswell/roswell";
+    mainProgram = "ros";
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rq/default.nix b/nixpkgs/pkgs/development/tools/rq/default.nix
index 838740d1fd0e..7d222e03bc97 100644
--- a/nixpkgs/pkgs/development/tools/rq/default.nix
+++ b/nixpkgs/pkgs/development/tools/rq/default.nix
@@ -11,13 +11,20 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0km9d751jr6c5qy4af6ks7nv3xfn13iqi03wq59a1c73rnf0zinp";
   };
 
-  cargoSha256 = "0c5vwy3c5ji602dj64z6jqvcpi2xff03zvjbnwihb3ydqwnb3v67";
+  cargoSha256 = "0071q08f75qrxdkbx1b9phqpbj15r79jbh391y32acifi7hr35hj";
 
-  buildInputs = [ llvmPackages.clang-unwrapped v8 ]
+  buildInputs = [ llvmPackages.libclang v8 ]
   ++ lib.optionals stdenv.isDarwin [ libiconv ];
 
+  postPatch = ''
+    # Remove #[deny(warnings)] which is equivalent to -Werror in C.
+    # Prevents build failures when upgrading rustc, which may give more warnings.
+    substituteInPlace src/lib.rs \
+      --replace "#![deny(warnings)]" ""
+  '';
+
   configurePhase = ''
-    export LIBCLANG_PATH="${llvmPackages.clang-unwrapped}/lib"
+    export LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"
     export V8_SOURCE="${v8}"
   '';
 
diff --git a/nixpkgs/pkgs/development/tools/rtags/default.nix b/nixpkgs/pkgs/development/tools/rtags/default.nix
index e5da0ddf59ac..6ecbe058328f 100644
--- a/nixpkgs/pkgs/development/tools/rtags/default.nix
+++ b/nixpkgs/pkgs/development/tools/rtags/default.nix
@@ -3,8 +3,8 @@
 stdenv.mkDerivation rec {
   pname = "rtags";
   version = "2.38";
-  nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ llvmPackages.llvm openssl emacs ]
+  nativeBuildInputs = [ cmake pkg-config llvmPackages.llvm.dev ];
+  buildInputs = [ llvmPackages.llvm llvmPackages.libclang openssl emacs ]
     ++ lib.optionals stdenv.cc.isGNU [ llvmPackages.clang-unwrapped ]
     ++ lib.optionals stdenv.isDarwin [ apple_sdk.libs.xpc apple_sdk.frameworks.CoreServices ];
 
diff --git a/nixpkgs/pkgs/development/tools/rubocop/Gemfile b/nixpkgs/pkgs/development/tools/rubocop/Gemfile
deleted file mode 100644
index 18a39cab1c3e..000000000000
--- a/nixpkgs/pkgs/development/tools/rubocop/Gemfile
+++ /dev/null
@@ -1,2 +0,0 @@
-source 'https://rubygems.org'
-gem 'rubocop'
diff --git a/nixpkgs/pkgs/development/tools/rubocop/Gemfile.lock b/nixpkgs/pkgs/development/tools/rubocop/Gemfile.lock
deleted file mode 100644
index 61792b3ec580..000000000000
--- a/nixpkgs/pkgs/development/tools/rubocop/Gemfile.lock
+++ /dev/null
@@ -1,32 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    ast (2.4.2)
-    parallel (1.20.1)
-    parser (3.0.0.0)
-      ast (~> 2.4.1)
-    rainbow (3.0.0)
-    regexp_parser (2.1.1)
-    rexml (3.2.4)
-    rubocop (1.12.1)
-      parallel (~> 1.10)
-      parser (>= 3.0.0.0)
-      rainbow (>= 2.2.2, < 4.0)
-      regexp_parser (>= 1.8, < 3.0)
-      rexml
-      rubocop-ast (>= 1.2.0, < 2.0)
-      ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 3.0)
-    rubocop-ast (1.4.1)
-      parser (>= 2.7.1.5)
-    ruby-progressbar (1.11.0)
-    unicode-display_width (2.0.0)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  rubocop
-
-BUNDLED WITH
-   2.1.4
diff --git a/nixpkgs/pkgs/development/tools/rubocop/default.nix b/nixpkgs/pkgs/development/tools/rubocop/default.nix
deleted file mode 100644
index 2122236af5ee..000000000000
--- a/nixpkgs/pkgs/development/tools/rubocop/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ lib, bundlerEnv, ruby, bundlerUpdateScript }:
-
-bundlerEnv {
-  pname = "rubocop";
-
-  inherit ruby;
-
-  gemdir = ./.;
-
-  passthru.updateScript = bundlerUpdateScript "rubocop";
-
-  meta = with lib; {
-    description = "Automatic Ruby code style checking tool";
-    homepage = "https://rubocop.org/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ marsam leemachin ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/rubocop/gemset.nix b/nixpkgs/pkgs/development/tools/rubocop/gemset.nix
deleted file mode 100644
index a97937496280..000000000000
--- a/nixpkgs/pkgs/development/tools/rubocop/gemset.nix
+++ /dev/null
@@ -1,105 +0,0 @@
-{
-  ast = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
-      type = "gem";
-    };
-    version = "2.4.2";
-  };
-  parallel = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0055br0mibnqz0j8wvy20zry548dhkakws681bhj3ycb972awkzd";
-      type = "gem";
-    };
-    version = "1.20.1";
-  };
-  parser = {
-    dependencies = ["ast"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1jixakyzmy0j5c1rb0fjrrdhgnyryvrr6vgcybs14jfw09akv5ml";
-      type = "gem";
-    };
-    version = "3.0.0.0";
-  };
-  rainbow = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
-      type = "gem";
-    };
-    version = "3.0.0";
-  };
-  regexp_parser = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0vg7imjnfcqjx7kw94ccj5r78j4g190cqzi1i59sh4a0l940b9cr";
-      type = "gem";
-    };
-    version = "2.1.1";
-  };
-  rexml = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
-      type = "gem";
-    };
-    version = "3.2.4";
-  };
-  rubocop = {
-    dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0hi2c3a6alya9yx07nirnjzlc0mvmidnx67874njp6wf7d5xqqr9";
-      type = "gem";
-    };
-    version = "1.12.1";
-  };
-  rubocop-ast = {
-    dependencies = ["parser"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0gkf1p8yal38nlvdb39qaiy0gr85fxfr09j5dxh8qvrgpncpnk78";
-      type = "gem";
-    };
-    version = "1.4.1";
-  };
-  ruby-progressbar = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
-      type = "gem";
-    };
-    version = "1.11.0";
-  };
-  unicode-display_width = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1bilbnc8j6jkb59lrf177i3p1pdyxll0n8400hzqr35vl3r3kv2m";
-      type = "gem";
-    };
-    version = "2.0.0";
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/rust/bindgen/default.nix b/nixpkgs/pkgs/development/tools/rust/bindgen/default.nix
index 962e8c562c74..598d01a8af5f 100644
--- a/nixpkgs/pkgs/development/tools/rust/bindgen/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/bindgen/default.nix
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-0d8+Rkb4h1DoFUQ7u2/kPR/fUUz0YvI+hNT4iXL3mxY=";
   };
 
-  cargoSha256 = "sha256-cUDOi3QwjEJaBXGSQZQ76gZ702QLNok8fr6U2q+tVao=";
+  cargoSha256 = "0r60smhlx1992a1s1k5sxjpdqllb2xsqcimgx3ldp5fdkfphk3cw";
 
   #for substituteAll
   libclang = llvmPackages.libclang.lib;
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage rec {
   propagatedBuildInputs = [ clang ]; # to populate NIX_CXXSTDLIB_COMPILE
 
   configurePhase = ''
-    export LIBCLANG_PATH="${libclang}/lib"
+    export LIBCLANG_PATH="${libclang.lib}/lib"
   '';
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-asm/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-asm/default.nix
index f453955a5c71..cd657967e9a0 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-asm/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-asm/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1f6kzsmxgdms9lq5z9ynnmxymk9k2lzlp3caa52wqjvdw1grw0rb";
   };
 
-  cargoSha256 = "0d797cisiydblh64vqpfdjf37wmxrvs77phdrqh582lbrvnfhx2j";
+  cargoSha256 = "1c22aal3i7zbyxr2c41fimfx13fwp9anmhh641951yd7cqb8xij2";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-binutils/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-binutils/default.nix
index 8b40d9b686d9..f499512ce532 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-binutils/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-binutils/default.nix
@@ -5,23 +5,28 @@ rustPlatform.buildRustPackage rec {
   version = "0.3.3";
 
   # Upstream doesn't commit `Cargo.lock`, see https://github.com/rust-embedded/cargo-binutils/pull/99
-  src = let
-    repo = fetchFromGitHub {
-      owner = "rust-embedded";
-      repo = pname;
-      rev = "v${version}";
-      sha256 = "sha256-Dgn+f4aSsDSh+RC8yvt3ydkdtwib5jEVsnZkod5c7Vo=";
-    };
-  in runCommand "source" { } ''
-    cp -R ${repo} $out
-    chmod -R +w $out
-    cp ${./Cargo.lock} $out/Cargo.lock
-  '';
+  src =
+    let
+      repo = fetchFromGitHub {
+        owner = "rust-embedded";
+        repo = pname;
+        rev = "v${version}";
+        sha256 = "sha256-Dgn+f4aSsDSh+RC8yvt3ydkdtwib5jEVsnZkod5c7Vo=";
+      };
+    in
+    runCommand "source" { } ''
+      cp -R ${repo} $out
+      chmod -R +w $out
+      cp ${./Cargo.lock} $out/Cargo.lock
+    '';
 
-  cargoSha256 = "sha256-Zrl269PacPi81TrGTIDzmVndgGY5i5lYyspiOj43rpw=";
+  cargoSha256 = "sha256-6du86HxkDQAeIXScXBKuv0j4YZiG4O6IwVIXZnJgTO8=";
 
   meta = with lib; {
-    description = "Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain";
+    description = "Cargo subcommands to invoke the LLVM tools shipped with the Rust toolchain.";
+    longDescription = ''
+      In order for this to work, you either need to run `rustup component add llvm-tools-preview` or install the `llvm-tools-preview` component using your Nix library (e.g. nixpkgs-mozilla, or rust-overlay)
+    '';
     homepage = "https://github.com/rust-embedded/cargo-binutils";
     license = with licenses; [ asl20 mit ];
     maintainers = with maintainers; [ stupremee ];
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch b/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch
new file mode 100644
index 000000000000..6a4967e96054
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch
@@ -0,0 +1,56 @@
+diff --git a/src/toolchains.rs b/src/toolchains.rs
+index 4d85e7c..b1353c6 100644
+--- a/src/toolchains.rs
++++ b/src/toolchains.rs
+@@ -259,6 +259,8 @@ impl Toolchain {
+             .map_err(InstallError::Download)?;
+         }
+
++        nix_patchelf(tmpdir.path().to_path_buf())
++            .expect("failed to patch toolchain for NixOS");
+         fs::rename(tmpdir.into_path(), dest).map_err(InstallError::Move)?;
+
+         Ok(())
+@@ -557,3 +559,42 @@ pub(crate) fn download_tarball(
+     }
+     download_tar_gz(client, name, &format!("{}.gz", url,), strip_prefix, dest)
+ }
++
++fn nix_patchelf(mut toolchain_path: PathBuf) -> Result<(), Error> {
++    toolchain_path.push("bin");
++
++    for entry in toolchain_path.read_dir()? {
++        let entry = entry?;
++        if !entry.file_type()?.is_file() {
++            continue;
++        }
++
++        eprintln!("info: you seem to be running NixOS. Attempting to patch {}",
++                  entry.path().to_str().unwrap());
++        let _ = ::std::process::Command::new("@patchelf@/bin/patchelf")
++            .arg("--set-interpreter")
++            .arg("@dynamicLinker@")
++            .arg(entry.path())
++            .output();
++    }
++
++    toolchain_path.pop();
++    toolchain_path.push("lib");
++
++    for entry in toolchain_path.read_dir()? {
++        let entry = entry?;
++        if !entry.file_type()?.is_file() {
++            continue;
++        }
++
++        eprintln!("info: you seem to be running NixOS. Attempting to patch {}",
++                  entry.path().to_str().unwrap());
++        let _ = ::std::process::Command::new("@patchelf@/bin/patchelf")
++            .arg("--set-rpath")
++            .arg("@libPath@")
++            .arg(entry.path())
++            .output();
++    }
++
++    Ok(())
++}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
new file mode 100644
index 000000000000..7eef0ce66299
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
@@ -0,0 +1,56 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, rustPlatform
+, pkg-config
+, openssl
+, runCommand
+, patchelf
+, zlib
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-bisect-rustc";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "rust-lang";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-LEmILWVU6hbh2FmdnQVV1Ob2MQvj+/lCr1hdRoTIOkI=";
+  };
+
+  patches =
+    let
+      patchelfPatch = runCommand "0001-dynamically-patchelf-binaries.patch" {
+        CC = stdenv.cc;
+        patchelf = patchelf;
+        libPath = "$ORIGIN/../lib:${lib.makeLibraryPath [ zlib ]}";
+      }
+      ''
+        export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
+        substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
+          --subst-var patchelf \
+          --subst-var dynamicLinker \
+          --subst-var libPath
+      '';
+    in
+    lib.optionals stdenv.isLinux [ patchelfPatch ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    Security
+  ];
+
+  cargoSha256 = "Ls51DQ0yScRhpkuEInCfR45+/WeaUoG935w4BJvwSRk=";
+
+  meta = with lib; {
+    description = "Bisects rustc, either nightlies or CI artifacts";
+    homepage = "https://github.com/rust-lang/${pname}";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ davidtwco ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-bitbake/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-bitbake/default.nix
new file mode 100644
index 000000000000..ee29976eb985
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-bitbake/default.nix
@@ -0,0 +1,26 @@
+{ lib, pkg-config, rustPlatform, fetchFromGitHub, openssl }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-bitbake";
+  version = "0.3.15";
+
+  src = fetchFromGitHub {
+    owner = "meta-rust";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1ffjkwaqvmyz374azrv6gna19z2fcg82is2k2n2gm50isbxw2aa5";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ openssl ];
+
+  cargoSha256 = "0mm6059wjh5p8923dwz55dpwi55gq2bcmpx7kn40pq5ppkiqjiw9";
+
+  meta = with lib; {
+    description = "Cargo extension that can generate BitBake recipes utilizing the classes from meta-rust";
+    homepage = "https://github.com/meta-rust/cargo-bitbake";
+    license = with licenses; [ mit asl20 ];
+    maintainers = with maintainers; [ rvarago ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-bloat/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-bloat/default.nix
index 51d19f5ad6fd..c0baf9f39645 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-bloat/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-bloat/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0bqzzh8vfqm7dpnb0fv4calnhsg9p3c5j06ycvg621p4zp4fydh2";
   };
 
-  cargoSha256 = "1323lcl8fa21pgx3jhwl4w9f8qz3jjxb5qdvib9jdzqxnnw320xs";
+  cargoSha256 = "0f7hmwrs99qdvhn4lvs8cqva68w2y04fy3ca1xlhk7ncdmclcc4g";
 
   meta = with lib; {
     description = "A tool and Cargo subcommand that helps you find out what takes most of the space in your executable";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-c/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-c/default.nix
index 8d12da30a6f2..9458cb030a7c 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-c/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-c/default.nix
@@ -28,7 +28,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "1rmhg9xhljgd5yq3xs0fzw1b0bgz7jfpf5mr2gviwqahl5vxvfiq";
+  cargoSha256 = "0pxakfiidxfczh3harnjhb1zv340r812jxzwam8z2kyw3mkyhh8z";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ]
@@ -45,6 +45,6 @@ rustPlatform.buildRustPackage rec {
     changelog = "https://github.com/lu-zero/cargo-c/releases/tag/v${version}";
     license = licenses.mit;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-cache/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-cache/default.nix
index 71d4646c1a11..092a0a10b1a0 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-cache/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-cache/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-cache";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "matthiaskrgr";
     repo = pname;
     rev = version;
-    sha256 = "sha256-qRwyNSAYuAnU17o/5zqKuvixQw7xfA6wNVzN6QRbZlY=";
+    sha256 = "sha256-/xP6TQcLyY1XC8r5SCkwej/I6fMaV5PqNNuvK1WbmeM=";
   };
 
-  cargoSha256 = "sha256-OpqVP097GYiARq7gbsMGFFGkFaQz3qeux12aMJj7W3Y=";
+  cargoSha256 = "sha256-1ZNbqydRsXmMGLhqPrgNAE8bhpZCMAJO/YQbOvtiS/s=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
index 57866918f07e..9e95ee4430cc 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-crev";
-  version = "0.19.2";
+  version = "0.19.4";
 
   src = fetchFromGitHub {
     owner = "crev-dev";
     repo = "cargo-crev";
     rev = "v${version}";
-    sha256 = "sha256-aqvdAljAJsYtmxz/WtMrrnmJJRXDpqDjUn1LusoM8ns=";
+    sha256 = "sha256-XwwzMo06TdyOtGE9Z48mkEr6DnB/89wtMrW+UWr0G/Q=";
   };
 
-  cargoSha256 = "sha256-KwnZmehh0vdR1eSPBrY6yHJR6r7mhIEgfN4soEBDTjU=";
+  cargoSha256 = "sha256-gA2Fg4CCi0W+GqJoNPZWw/OjNYh2U2UsC6eMZ9W1QN8=";
 
   nativeBuildInputs = [ perl pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-criterion/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-criterion/default.nix
index 664f3688eaf3..38723bbf3c1c 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-criterion/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-criterion/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-NiuK+PexfF2wmA8drqqkv/RQlVwYLT3q2QWvV0ghJwg=";
   };
 
-  cargoSha256 = "sha256-A6Kkm/4MSAEJfehA6zSQJU+JwVIhKPcfMZCO9S6Zyx4=";
+  cargoSha256 = "sha256-5Z9Oz8jjyM3+cHAZ++thRDdNlb0Kj54Mg7JjF9JrLdw=";
 
   meta = with lib; {
     description = "Cargo extension for running Criterion.rs benchmarks";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-cross/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-cross/default.nix
index f7ce0283f6ff..276d6e50eeed 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-cross/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-cross/default.nix
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256:1py5w4kf612x4qxi190ilsrx0zzwdzk9i47ppvqblska1s47qa2w";
   };
 
-  cargoSha256 = "sha256-3xSuTBcWRGn5HH7LnvwioeRWjehaPW1HCPjN5SUUVfo=";
+  cargoSha256 = "sha256-zk6cbN4iSHnyoeWupufVf2yQK6aq3S99uk9lqpjCw4c=";
 
   cargoPatches = [
     (fetchpatch {
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-embed/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-embed/default.nix
index 989885e99a74..4fb994b3ee2e 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-embed/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-embed/default.nix
@@ -1,22 +1,24 @@
 { lib
 , rustPlatform, fetchFromGitHub
-, libusb1, pkg-config, rustfmt }:
+, libusb1, libftdi1, pkg-config, rustfmt }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-embed";
-  version = "0.8.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "probe-rs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0klkgl7c42vhqxj6svw26lcr7rccq89bl17jn3p751x6281zvr35";
+    sha256 = "1z8n883cb4jca3phi9x2kwl01xclyr00l8jxgiyd28l2jik78i5k";
   };
 
-  cargoSha256 = "0w21q2fpr077m8jr24ld3qjimwk1m4fy9dh14fq9nv5xd4f5s8n8";
+  cargoSha256 = "1ir9qngxmja6cm42m40jqbga9mlfjllm23ca26wyigjv3025pi6i";
 
   nativeBuildInputs = [ pkg-config rustfmt ];
-  buildInputs = [ libusb1 ];
+  buildInputs = [ libusb1 libftdi1 ];
+
+  cargoBuildFlags = [ "--features=ftdi" ];
 
   meta = with lib; {
     description = "A cargo extension for working with microcontrollers";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-expand/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-expand/default.nix
index 934976f73866..390850c9afa7 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-expand/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -1,17 +1,19 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchFromGitHub, stdenv, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-expand";
-  version = "1.0.6";
+  version = "1.0.7";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    sha256 = "sha256-6FjFG4RYvmsV/W7OMxj1ZWvruwUeP9Nvsdiv8toZmTk=";
+    sha256 = "sha256-8YppfgYa5Sd/3nPCMCgaM3A93ND0vU5eUoCW02uDkiM=";
   };
 
-  cargoSha256 = "sha256-1+A+n5VQS8zJULiR8IWLGo+RnFuVjg6ist8G3eCsXJM=";
+  cargoSha256 = "sha256-0lrz8awAtLuLWE6Prmi07iGfYVmNZIETv3QL55CPYHQ=";
+
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
 
   meta = with lib; {
     description =
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-feature/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-feature/default.nix
index 94b5000b9b62..062cb9f027d6 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-feature/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-feature/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchFromGitHub, stdenv, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-feature";
@@ -11,7 +11,9 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0n5kzh756ghfs3cydlcn9mfvpgwy1cjg41h0nd9dbi5cr1fp9x1n";
   };
 
-  cargoSha256 = "0nvl5smibl81b826xcsrjx8p89lcfpj7wqdsvywnj7jd3p5ag03n";
+  cargoSha256 = "1jh1h6v4mxx03b4diw9325ga0k3js0czs504lx07hvbx8yai1wkq";
+
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
 
   meta = with lib; {
     description = "Allows conveniently modify features of crate";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-flash/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-flash/default.nix
index 39b56c2d656d..a2679b53c4b0 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-flash/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-flash/default.nix
@@ -1,22 +1,29 @@
 { lib
-, rustPlatform, fetchFromGitHub
-, libusb1, pkg-config, rustfmt }:
+, stdenv
+, rustPlatform
+, fetchFromGitHub
+, libusb1
+, openssl
+, pkg-config
+, rustfmt
+, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-flash";
-  version = "0.8.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "probe-rs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1bcpv1r4pdpp22w7za7kdy7jl487x3nlwxiz6sqq3iq6wq3j9zj0";
+    sha256 = "sha256-aQ5647woODs/A4fcxSsQoQHL6YQ0TpfQFegtXETqlHk=";
   };
 
-  cargoSha256 = "1pf117fgw9x9diksqv58cw7i0kzmp25yj73y5ll69sk46b6z4j90";
+  cargoSha256 = "sha256-P7xyg9I1MhmiKlyAI9cvABcYKNxB6TSvTgMsMk5KxAQ=";
 
   nativeBuildInputs = [ pkg-config rustfmt ];
-  buildInputs = [ libusb1 ];
+  buildInputs = [ libusb1 openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
 
   meta = with lib; {
     description = "A cargo extension for working with microcontrollers";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-fund/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-fund/default.nix
index 70a2e6feca64..43655fd6a89e 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-fund/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-fund/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1jim5bgq3fc33391qpa1q1csbzqf4hk1qyfzwxpcs5pb4ixb6vgk";
   };
 
-  cargoSha256 = "181gcmaw2w5a6ah8a2ahsnc1zkadpmx1azkwh2a6x8myhzw2dxsj";
+  cargoSha256 = "1c2zryxn1bbg3ksp8azk9xmwfgwr6663hlmdv9c358hzqdfp9hli";
 
   # The tests need a GitHub API token.
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix
index ced5d7cd583c..56a2962f0c92 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix
@@ -1,17 +1,19 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib, fetchFromGitHub, rustPlatform, stdenv, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-fuzz";
-  version = "0.10.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "rust-fuzz";
     repo = "cargo-fuzz";
     rev = version;
-    sha256 = "sha256-kBbwE4ToUud5BDDlGoey2qpp2imzO6t3FcIbV3NTFa8=";
+    sha256 = "sha256-txlHXboQi3Z8AMIJJBZsBrCA7xggF0zGDpKqcD8UxMo=";
   };
 
-  cargoSha256 = "sha256-zqRlB2Kck4icMKzhaeeakEnn6O7zhoKPa5ZWbGooWIg=";
+  cargoSha256 = "sha256-eEfry6Q2YiIkNEHu6C8p17pUTF43eS1/iTP2oATZ/F8=";
+
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix
index 3b2702c66f64..bd71a14b4a04 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1z920p8i3gkjadyd6bqjk4i5yr5ds3m3sbcnf7plcqr69dsjr4b8";
   };
 
-  cargoSha256 = "1zh6fjfynkn4kgk1chigzd0sh4x1bagizyn7x6qyxgzc57a49bp7";
+  cargoSha256 = "1wf9758gyaxgyajjzy5phirg922n9wv0qmy67zjmxj56ayf0l9lm";
 
   checkPhase = ''
     ${cargo-insta}/bin/cargo-insta test
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-generate/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-generate/default.nix
index e4eb2965fd6f..040109da3adb 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-generate/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-generate/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-RrDwq5VufMDsPlqRmBP3x2RUWU740L0L18noByO1IDY=";
   };
 
-  cargoSha256 = "sha256-W6+RGzCYJF9f44QaFDOI414/vCfKIuIOXoH+GYY0GwY=";
+  cargoSha256 = "sha256-/0pxEQFhovPRI4Knv5xq6+PHRuGN6+tF8CdK5X30LKI=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-inspect/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-inspect/default.nix
index 9339660388b5..1644929074bb 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-inspect/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-inspect/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "1ryi5qi1zz2yljyj4rn84q9zkzafc9w4nw3zc01hlzpnb1sjw5sw";
+  cargoSha256 = "069i8ydrp1pssnjq7d6mydwr7xh2cmcpzpf8bzd6nfjr6xx1pipr";
 
   meta = with lib; {
     description = "See what Rust is doing behind the curtains";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-insta/cargo-lock.patch b/nixpkgs/pkgs/development/tools/rust/cargo-insta/cargo-lock.patch
deleted file mode 100644
index 96f7d9ffb660..000000000000
--- a/nixpkgs/pkgs/development/tools/rust/cargo-insta/cargo-lock.patch
+++ /dev/null
@@ -1,780 +0,0 @@
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -0,0 +1,777 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+[[package]]
-+name = "addr2line"
-+version = "0.12.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a49806b9dadc843c61e7c97e72490ad7f7220ae249012fbda9ad0609457c0543"
-+dependencies = [
-+ "gimli",
-+]
-+
-+[[package]]
-+name = "adler32"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
-+
-+[[package]]
-+name = "aho-corasick"
-+version = "0.7.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
-+dependencies = [
-+ "memchr",
-+]
-+
-+[[package]]
-+name = "ansi_term"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-+dependencies = [
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "atty"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-+dependencies = [
-+ "hermit-abi",
-+ "libc",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "autocfg"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
-+
-+[[package]]
-+name = "backtrace"
-+version = "0.3.49"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
-+dependencies = [
-+ "addr2line",
-+ "cfg-if",
-+ "libc",
-+ "miniz_oxide",
-+ "object",
-+ "rustc-demangle",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-+dependencies = [
-+ "byteorder",
-+]
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-+
-+[[package]]
-+name = "block-buffer"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-+dependencies = [
-+ "block-padding",
-+ "byte-tools",
-+ "byteorder",
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "block-padding"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
-+dependencies = [
-+ "byte-tools",
-+]
-+
-+[[package]]
-+name = "bstr"
-+version = "0.2.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "31accafdb70df7871592c058eca3985b71104e15ac32f64706022c58867da931"
-+dependencies = [
-+ "memchr",
-+]
-+
-+[[package]]
-+name = "byte-tools"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
-+
-+[[package]]
-+name = "cargo-insta"
-+version = "0.16.0"
-+dependencies = [
-+ "clap",
-+ "console",
-+ "difference",
-+ "glob",
-+ "insta",
-+ "proc-macro2",
-+ "serde",
-+ "serde_json",
-+ "structopt",
-+ "syn",
-+ "walkdir",
-+]
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+
-+[[package]]
-+name = "clap"
-+version = "2.33.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
-+dependencies = [
-+ "ansi_term",
-+ "atty",
-+ "bitflags",
-+ "strsim",
-+ "textwrap",
-+ "unicode-width",
-+ "vec_map",
-+]
-+
-+[[package]]
-+name = "clicolors-control"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "90082ee5dcdd64dc4e9e0d37fbf3ee325419e39c0092191e0393df65518f741e"
-+dependencies = [
-+ "atty",
-+ "lazy_static",
-+ "libc",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "console"
-+version = "0.10.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2586208b33573b7f76ccfbe5adb076394c88deaf81b84d7213969805b0a952a7"
-+dependencies = [
-+ "clicolors-control",
-+ "encode_unicode",
-+ "lazy_static",
-+ "libc",
-+ "regex",
-+ "terminal_size",
-+ "termios",
-+ "unicode-width",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "crossbeam-utils"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-+dependencies = [
-+ "autocfg",
-+ "cfg-if",
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "difference"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
-+
-+[[package]]
-+name = "digest"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-+dependencies = [
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "dtoa"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
-+
-+[[package]]
-+name = "encode_unicode"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
-+
-+[[package]]
-+name = "fake-simd"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-+
-+[[package]]
-+name = "fnv"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-+
-+[[package]]
-+name = "generic-array"
-+version = "0.12.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
-+dependencies = [
-+ "typenum",
-+]
-+
-+[[package]]
-+name = "gimli"
-+version = "0.21.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bcc8e0c9bce37868955864dbecd2b1ab2bdf967e6f28066d65aaac620444b65c"
-+
-+[[package]]
-+name = "glob"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-+
-+[[package]]
-+name = "globset"
-+version = "0.4.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7ad1da430bd7281dde2576f44c84cc3f0f7b475e7202cd503042dff01a8c8120"
-+dependencies = [
-+ "aho-corasick",
-+ "bstr",
-+ "fnv",
-+ "log",
-+ "regex",
-+]
-+
-+[[package]]
-+name = "globwalk"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "178270263374052c40502e9f607134947de75302c1348d1a0e31db67c1691446"
-+dependencies = [
-+ "bitflags",
-+ "ignore",
-+ "walkdir",
-+]
-+
-+[[package]]
-+name = "heck"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
-+dependencies = [
-+ "unicode-segmentation",
-+]
-+
-+[[package]]
-+name = "hermit-abi"
-+version = "0.1.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b9586eedd4ce6b3c498bc3b4dd92fc9f11166aa908a914071953768066c67909"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "ignore"
-+version = "0.4.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "22dcbf2a4a289528dbef21686354904e1c694ac642610a9bff9e7df730d9ec72"
-+dependencies = [
-+ "crossbeam-utils",
-+ "globset",
-+ "lazy_static",
-+ "log",
-+ "memchr",
-+ "regex",
-+ "same-file",
-+ "thread_local",
-+ "walkdir",
-+ "winapi-util",
-+]
-+
-+[[package]]
-+name = "insta"
-+version = "0.16.0"
-+dependencies = [
-+ "backtrace",
-+ "console",
-+ "difference",
-+ "globwalk",
-+ "lazy_static",
-+ "pest",
-+ "pest_derive",
-+ "ron",
-+ "serde",
-+ "serde_json",
-+ "serde_yaml",
-+]
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.71"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9457b06509d27052635f90d6466700c65095fdf75409b3fbdd903e988b886f49"
-+
-+[[package]]
-+name = "linked-hash-map"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a"
-+
-+[[package]]
-+name = "log"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-+dependencies = [
-+ "cfg-if",
-+]
-+
-+[[package]]
-+name = "maplit"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-+
-+[[package]]
-+name = "memchr"
-+version = "2.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
-+
-+[[package]]
-+name = "miniz_oxide"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
-+dependencies = [
-+ "adler32",
-+]
-+
-+[[package]]
-+name = "object"
-+version = "0.20.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
-+
-+[[package]]
-+name = "opaque-debug"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-+
-+[[package]]
-+name = "pest"
-+version = "2.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
-+dependencies = [
-+ "ucd-trie",
-+]
-+
-+[[package]]
-+name = "pest_derive"
-+version = "2.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0"
-+dependencies = [
-+ "pest",
-+ "pest_generator",
-+]
-+
-+[[package]]
-+name = "pest_generator"
-+version = "2.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55"
-+dependencies = [
-+ "pest",
-+ "pest_meta",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "pest_meta"
-+version = "2.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d"
-+dependencies = [
-+ "maplit",
-+ "pest",
-+ "sha-1",
-+]
-+
-+[[package]]
-+name = "proc-macro-error"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "98e9e4b82e0ef281812565ea4751049f1bdcdfccda7d3f459f2e138a40c08678"
-+dependencies = [
-+ "proc-macro-error-attr",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "proc-macro-error-attr"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4f5444ead4e9935abd7f27dc51f7e852a0569ac888096d5ec2499470794e2e53"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "syn-mid",
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
-+dependencies = [
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
-+dependencies = [
-+ "proc-macro2",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
-+dependencies = [
-+ "aho-corasick",
-+ "memchr",
-+ "regex-syntax",
-+ "thread_local",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
-+
-+[[package]]
-+name = "ron"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2ece421e0c4129b90e4a35b6f625e472e96c552136f5093a2f4fa2bbb75a62d5"
-+dependencies = [
-+ "base64",
-+ "bitflags",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-+
-+[[package]]
-+name = "same-file"
-+version = "1.0.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-+dependencies = [
-+ "winapi-util",
-+]
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.112"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "736aac72d1eafe8e5962d1d1c3d99b0df526015ba40915cb3c49d042e92ec243"
-+dependencies = [
-+ "serde_derive",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.112"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bf0343ce212ac0d3d6afd9391ac8e9c9efe06b533c8d33f660f6390cc4093f57"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "1.0.55"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ec2c5d7e739bc07a3e73381a39d61fdb5f671c60c1df26a130690665803d8226"
-+dependencies = [
-+ "itoa",
-+ "ryu",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "serde_yaml"
-+version = "0.8.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ae3e2dd40a7cdc18ca80db804b7f461a39bb721160a85c9a1fa30134bf3c02a5"
-+dependencies = [
-+ "dtoa",
-+ "linked-hash-map",
-+ "serde",
-+ "yaml-rust",
-+]
-+
-+[[package]]
-+name = "sha-1"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df"
-+dependencies = [
-+ "block-buffer",
-+ "digest",
-+ "fake-simd",
-+ "opaque-debug",
-+]
-+
-+[[package]]
-+name = "strsim"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-+
-+[[package]]
-+name = "structopt"
-+version = "0.3.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
-+dependencies = [
-+ "clap",
-+ "lazy_static",
-+ "structopt-derive",
-+]
-+
-+[[package]]
-+name = "structopt-derive"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
-+dependencies = [
-+ "heck",
-+ "proc-macro-error",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.31"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b5304cfdf27365b7585c25d4af91b35016ed21ef88f17ced89c7093b43dba8b6"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "syn-mid"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "terminal_size"
-+version = "0.1.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8038f95fc7a6f351163f4b964af631bd26c9e828f7db085f2a84aca56f70d13b"
-+dependencies = [
-+ "libc",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "termios"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6f0fcee7b24a25675de40d5bb4de6e41b0df07bc9856295e7e2b3a3600c400c2"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "textwrap"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-+dependencies = [
-+ "unicode-width",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
-+dependencies = [
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "typenum"
-+version = "1.12.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
-+
-+[[package]]
-+name = "ucd-trie"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
-+
-+[[package]]
-+name = "unicode-segmentation"
-+version = "1.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
-+
-+[[package]]
-+name = "vec_map"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.9.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
-+
-+[[package]]
-+name = "walkdir"
-+version = "2.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d"
-+dependencies = [
-+ "same-file",
-+ "winapi",
-+ "winapi-util",
-+]
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu",
-+ "winapi-x86_64-pc-windows-gnu",
-+]
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-+
-+[[package]]
-+name = "winapi-util"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-+dependencies = [
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-+
-+[[package]]
-+name = "yaml-rust"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "39f0c922f1a334134dc2f7a8b67dc5d25f0735263feec974345ff706bcf20b0d"
-+dependencies = [
-+ "linked-hash-map",
-+]
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-insta/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-insta/default.nix
index e621fa9b9724..0c3773933545 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-insta/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-insta/default.nix
@@ -1,22 +1,19 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchFromGitHub, libiconv, stdenv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-insta";
-  version = "0.16.0";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     owner = "mitsuhiko";
     repo = "insta";
     rev = version;
-    sha256 = "1lcbdzh139lhmpz3pyik8nbgrbfc42z9ydz2hkg2lzjdpfdsz3ag";
+    sha256 = "1qzzkhailxjqwp3rmdcpp112wn3x0gfi788vwj77pfdyclhpj0a7";
   };
 
-  cargoPatches = [ ./cargo-lock.patch ];
-  cargoSha256 = "0qjzbcaznnmb0p0r23s82jjbfs5mhhkacg26lf8fq4vvlkr1hsqf";
-
-  patches = [ ./ignore-rustfmt-test.patch ];
-
-  cargoBuildFlags = [ "-p cargo-insta" ];
+  sourceRoot = "source/cargo-insta";
+  cargoSha256 = "01fj2j7ibrk5dyrfkmc610lh1p6f6bgzbgivq3dsd64vslhqmabw";
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
 
   meta = with lib; {
     description = "A Cargo subcommand for snapshot testing";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-insta/ignore-rustfmt-test.patch b/nixpkgs/pkgs/development/tools/rust/cargo-insta/ignore-rustfmt-test.patch
deleted file mode 100644
index 6c38158d5964..000000000000
--- a/nixpkgs/pkgs/development/tools/rust/cargo-insta/ignore-rustfmt-test.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/runtime.rs
-+++ b/src/runtime.rs
-@@ -85,6 +85,7 @@ fn format_rust_expression(value: &str) -> Cow<'_, str> {
- }
- 
- #[test]
-+#[ignore]
- fn test_format_rust_expression() {
-     use crate::assert_snapshot;
-     assert_snapshot!(format_rust_expression("vec![1,2,3]"), @"vec![1, 2, 3]");
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-limit/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-limit/default.nix
index 3ebe5ef13046..76f766685ab4 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-limit/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-limit/default.nix
@@ -2,20 +2,24 @@
 , rustPlatform
 , fetchFromGitHub
 , nix-update-script
+, stdenv
+, libiconv
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-limit";
-  version = "0.0.7";
+  version = "0.0.8";
 
   src = fetchFromGitHub {
     owner = "alopatindev";
     repo = "cargo-limit";
     rev = version;
-    sha256 = "sha256-8HsYhWYeRhCPTxVnU8hOJKLXvza8i9KvKTLL6yLo0+c=";
+    sha256 = "sha256-OHBxQcXhZkJ1F6xLc7/sPpJhJzuJXb91IUjAtyC3XP8=";
   };
 
-  cargoSha256 = "sha256-8uA4oFExrzDMeMV5MacbtE0Awdfx+jUUkrKd7ushOHo=";
+  cargoSha256 = "sha256-LxqxRtMKUKZeuvk1caoYy8rv1bkEOQBM8i5SXMF4GXc=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
 
   passthru = {
     updateScript = nix-update-script {
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
index 4300719147dd..2f20c66bbe25 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
@@ -13,11 +13,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.32.17";
+  version = "0.33.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-D/8fjJIyHCRzkomRsYUnGjDMCusjNX8ZYmLjowCYgcM=";
+    sha256 = "sha256-OnCSWAGcxQsLq5aQmd/15lAQmdsCGPqLeRYWXQG0oG0=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration libiconv ];
 
-  cargoSha256 = "sha256-Upegh3W31sTaXl0iHZ3HiYs9urgXH/XhC0vQBAWvDIc=";
+  cargoSha256 = "sha256-BsE5+0bL9ctsdZ/PM1d6TfrXuzNMYHejoqA3bgH8140=";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-msrv/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-msrv/default.nix
new file mode 100644
index 000000000000..74c2d9e680f0
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-msrv/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, nix-update-script
+, pkg-config
+, openssl
+, stdenv
+, libiconv
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-msrv";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "foresterre";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-DpgZrKy2rEKnI0/t4l3sDtNUhAwwFFSzq4CdRFqAkzY=";
+  };
+
+  cargoSha256 = "sha256-ny8EA3dkirxEiFYiSFRxHnjf3mVO2LCWVR8fPHX87Ek=";
+
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = pname;
+    };
+  };
+
+  # Integration tests fail
+  doCheck = false;
+
+  buildInputs = if stdenv.isDarwin
+    then [ libiconv Security ]
+    else [ openssl ];
+
+  nativeBuildInputs = [ pkg-config ];
+
+  meta = with lib; {
+    description = "Cargo subcommand \"msrv\": assists with finding your minimum supported Rust version (MSRV)";
+    homepage = "https://github.com/foresterre/cargo-msrv";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ otavio ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-play/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-play/default.nix
index 5e12c1cae1d2..f5faed06faf9 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-play/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-play/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "01r00akfmvpzp924yqqybd9s0pwiwxy8vklsg4m9ypzljc3nlv02";
   };
 
-  cargoSha256 = "0fvsdyivq5991ka6avh12aqdkjx0myk61kmzlr19p2vlfpg70q07";
+  cargoSha256 = "1xkscd9ci9vlkmbsaxvavrna1xpi16xcf9ri879lw8bdh7sa3nx8";
 
   # some tests require internet access
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-raze/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-raze/default.nix
index 2e75c08b42bb..0299fe516d94 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-raze/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-raze/default.nix
@@ -19,7 +19,9 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ curl libgit2 openssl ]
     ++ lib.optional stdenv.isDarwin Security;
 
-  doCheck = true;
+  # thread 'main' panicked at 'Cannot ping mock server.: "cannot send request to mock server: cannot send request to mock server: failed to resolve host name"'
+  # __darwinAllowLocalNetworking does not fix the panic
+  doCheck = !stdenv.isDarwin;
 
   meta = with lib; {
     description = "Generate Bazel BUILD files from Cargo dependencies";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-readme/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-readme/default.nix
index 358c58bef4d4..fb45763b50be 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-readme/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-readme/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-/ufHHM13L83M3UYi6mjdhIjgXx7bZgzvR/X02Zsx7Fw=";
   };
 
-  cargoSha256 = "sha256-QVRl6xCvztWi5zAs3PXYR4saTqO5nTBPIjdlMiMXFTM=";
+  cargoSha256 = "sha256-Isd05qOuVBNfXOI5qsaDOhjF7QIKAG5xrZsBFK2PpQQ=";
 
   patches = [
     (fetchpatch {
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-rr/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-rr/default.nix
new file mode 100644
index 000000000000..47d58e9b92ac
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-rr/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, nix-update-script
+, makeWrapper
+, rr
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-rr";
+  version = "0.1.3";
+
+  src = fetchFromGitHub {
+    owner = "danielzfranklin";
+    repo = pname;
+    rev = version;
+    sha256 = "01m8fdz9as2fxnzs9csvbc76qxzbb98a66dh7w4a5q855v38g0zy";
+  };
+
+  cargoSha256 = "0fjs76n6bbbv83s213h2dgsszgxy4hbjsclyk9m81b3bfbmmb9sa";
+
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = pname;
+    };
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    wrapProgram $out/bin/cargo-rr --prefix PATH : ${lib.makeBinPath [ rr ]}
+  '';
+
+  meta = with lib; {
+    description = "Cargo subcommand \"rr\": a light wrapper around rr, the time-travelling debugger";
+    homepage = "https://github.com/danielzfranklin/cargo-rr";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ otavio ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-sweep/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-sweep/default.nix
index f20bdb9cc174..9efa337f1b19 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-sweep/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-sweep/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-sweep";
-  version = "0.5.0";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "holmgr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0zwdrh4z5x79qs8cwmwh3phzy4brw0ggv2qyf6pylv99vha5acyf";
+    sha256 = "sha256-tumcGnYqY/FGP8UWA0ccfdAK49LBcT8qH6SshrDXNAI=";
   };
 
-  cargoSha256 = "1sxjc64g8h77a3dvzb99f1f72zrak1nh4jgfjfkw4yc4dhkpyrmz";
+  cargoSha256 = "sha256-fcosKyGOy0SKrHbsKdxQJimelt1ByAM4YKo7WpHV8CA=";
 
   meta = with lib; {
     description = "A Cargo subcommand for cleaning up unused build files generated by Cargo";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-sync-readme/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-sync-readme/default.nix
index 54f21ab46270..07c51c3163cb 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-sync-readme/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-sync-readme/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1c38q87fyfmj6nlwdpavb1xxpi26ncywkgqcwbvblad15c6ydcyc";
   };
 
-  cargoSha256 = "1x15q6wv5278hm3ns2wmw4i8602g35y1jyv1b8wa5i4dnh52dj83";
+  cargoSha256 = "0vrbgs49ghhl4z4ljhghcs9fnbf7qx1an9kwbrgv9wng8m1dccah";
 
   meta = with lib; {
     description = "A cargo plugin that generates a Markdown section in your README based on your Rust documentation";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-udeps/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-udeps/default.nix
index 9fadea3f31cf..968a6ce457f1 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-udeps/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-udeps/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-udeps";
-  version = "0.1.20";
+  version = "0.1.21";
 
   src = fetchFromGitHub {
     owner = "est31";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-1gAkc8x9rl80xkFWR2iKYOjkHplWUPWQZDbE8U5gkOM=";
+    sha256 = "sha256-Voei7j3WRDu70NkcJvjqPJ4ikOUupOhvFNEHHRyF6/Q=";
   };
 
-  cargoSha256 = "sha256-APUQYqC0MYNeeuehkQvxQsjOnXBgvEMNBqfoUy2KH0U=";
+  cargoSha256 = "sha256-zMya7bEehNKIfwQtJ252sflg06P4Ra8/lgBjn4UUqRg=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-valgrind/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-valgrind/default.nix
index 3cfea7274355..e1f26dc02b2e 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-valgrind/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-valgrind/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-PltYUU2O/D1PrU+K8JN4+aUVLzHCeNyIsXMU6HLodXE=";
   };
 
-  cargoSha256 = "sha256-zR826fFSCSsJxGKSc7ugrLwMDvsjRBjs4eotKTfhGqI=";
+  cargoSha256 = "sha256-XiQGkZ6pfyGkNPjpcPoY66qBl7ABTcRHCBjgmXSRrL0=";
 
   passthru = {
     updateScript = nix-update-script {
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
index 43f13b2e9955..017fb7d484d4 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, lib, rustPlatform, fetchFromGitHub, CoreServices, rust }:
+{ stdenv, lib, rustPlatform, fetchFromGitHub, CoreServices, rust, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-watch";
-  version = "7.6.1";
+  version = "7.8.0";
 
   src = fetchFromGitHub {
     owner = "passcod";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-vjX8xfwv/DOogji+OQCB9l5ebGBNoLW722TGpZ5Wg80=";
+    sha256 = "sha256-ZbVBwSg3roIMA+5LVP3omtTgbAJ7HAdJDXyAybWuRLw=";
   };
 
-  cargoSha256 = "sha256-ku+tI0DIofV0EZ413sPjbJDUSqwTxiT8NWBeURrJW1k=";
+  cargoSha256 = "sha256-6aoi/CLla/yKa5RuVgn8RJ9AK1j1wtZeBn+6tpXrJvA=";
 
-  buildInputs = lib.optional stdenv.isDarwin CoreServices;
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices libiconv ];
 
   # `test with_cargo` tries to call cargo-watch as a cargo subcommand
   # (calling cargo-watch with command `cargo watch`)
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-whatfeatures/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
index 34440ce93058..7041f0ebd6cd 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0vki37pxngg15za9c1z61dc6sqk0j59s0qhcf9hplnym4ib5kqx1";
   };
 
-  cargoSha256 = "sha256-nNV7UXjKZNFmTqW4H0qsNuBW9XOP2V9nfotewtI9mYE";
+  cargoSha256 = "sha256-ZEkSj/JzXXTHjaxBVS5RDk/ECvOPPjzH4eS3CmlQA9I=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-wipe/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-wipe/default.nix
index c4c079c523b1..a59a124317b9 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-wipe/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-wipe/default.nix
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-sVekfGHg2wspP5/zJzXTXupspwJr4hQBucY5+8iUjUQ=";
   };
 
-  cargoSha256 = "sha256-IzEurJcPoM/JMQlSL7N84wzZddNpynrsjQEOUNms2YQ=";
+  cargoSha256 = "sha256-EoXgsWg1Rh7C+fIqvefkLdck4Yj3kox2ZAU3kn6nH8Q=";
 
   passthru = {
     updateScript = nix-update-script {
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-xbuild/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-xbuild/default.nix
index 8aa701779bc0..e8d62c9252f3 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-xbuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-xbuild/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "01whdjryz6zjsk4149h72w5xdjnkpcn5daf0xnsb59b0q38hjgg9";
   };
 
-  cargoSha256 = "1gcixzxca1yi4rvy55s986my6j0vx7n6fm1g5r4v4w0zgzlz4d89";
+  cargoSha256 = "036a50shzl6wdjk5wypkacx1kjwbyb4x1aqhbzgjgpxxxrf0lj16";
 
   meta = with lib; {
     description = "Automatically cross-compiles the sysroot crates core, compiler_builtins, and alloc";
diff --git a/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix b/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
index 5dad37d08168..c1bc2fb4c07b 100644
--- a/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-cbindgen";
-  version = "0.18.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "eqrion";
     repo = "cbindgen";
     rev = "v${version}";
-    sha256 = "sha256-S3t1hv/mRn6vwyzT78DPIacqiJV3CnjGdOKsdSyYs8g=";
+    sha256 = "0753dklr5lm1dmk6hy5khh8k3xyr5srfsq11l07685h71j7z0r00";
   };
 
-  cargoSha256 = "sha256-uaeJmGEQHVSuILlYlJOHmRWWdN6FPvrHu6CbJyb60MY=";
+  cargoSha256 = "0qyw0iqin7i31kk23ddsmywk7z0xxpd5n4q6dr6mf44y35a8krm8";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/development/tools/rust/crate2nix/default.nix b/nixpkgs/pkgs/development/tools/rust/crate2nix/default.nix
index b5a3486da71f..e68eea50ff3d 100644
--- a/nixpkgs/pkgs/development/tools/rust/crate2nix/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/crate2nix/default.nix
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage rec {
 
   sourceRoot = "source/crate2nix";
 
-  cargoSha256 = "sha256-6V0ifH63/s5XLo4BCexPtvlUH0UQPHFW8YHF8OCH3ik=";
+  cargoSha256 = "sha256-shWhzCaH8ZttUcq82tA7T1hwNl6F1XJy7ansA5lt+Mw=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/maturin/default.nix b/nixpkgs/pkgs/development/tools/rust/maturin/default.nix
index 28aeca4a0af1..5ab47c8aa8de 100644
--- a/nixpkgs/pkgs/development/tools/rust/maturin/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/maturin/default.nix
@@ -5,26 +5,27 @@
 , rustPlatform
 , pkg-config
 , dbus
+, libiconv
 , Security
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "maturin";
-  version = "0.9.4";
+  version = "0.10.6";
 
   src = fetchFromGitHub {
     owner = "PyO3";
     repo = "maturin";
     rev = "v${version}";
-    hash = "sha256-9emrBajFd0eLHcsd9Uf6MLCWqZFqxmZdWPBLGIYc2kU=";
+    hash = "sha256-qWDrdS1zxe5woQSKLHhDSGJ1KF4SHk1mhaQApJXCCO4=";
   };
 
-  cargoHash = "sha256-poMMEj+zrlU+v5axJbZai2kv36stEKgaciF4zd9A6Qg=";
+  cargoHash = "sha256-NEXgb7yWQkqbbofd3oYQ5n+CmfaM2cWj8HwufrcRKkc=";
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = lib.optional stdenv.isLinux dbus
-    ++ lib.optional stdenv.isDarwin Security;
+  buildInputs = lib.optionals stdenv.isLinux [ dbus ]
+    ++ lib.optionals stdenv.isDarwin [ Security libiconv ];
 
   # Requires network access, fails in sandbox.
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/rust/maturin/pyo3-test/generic.nix b/nixpkgs/pkgs/development/tools/rust/maturin/pyo3-test/generic.nix
index 41175ad8538a..a5713d944a80 100644
--- a/nixpkgs/pkgs/development/tools/rust/maturin/pyo3-test/generic.nix
+++ b/nixpkgs/pkgs/development/tools/rust/maturin/pyo3-test/generic.nix
@@ -27,7 +27,7 @@ python.pkgs.buildPythonPackage rec {
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src patches;
     name = "${pname}-${version}";
-    hash = "sha256-//TmozgWy9zrSpMKX92XdHj4fw/T1Elfgn4YhhR7ot0=";
+    hash = "sha256-u3L9nXHKILznyZTgxdvZyOCQZFZhuADrtI7zXYQzrbE=";
   };
 
   patches = [ ./Cargo.lock.patch ];
diff --git a/nixpkgs/pkgs/development/tools/rust/probe-run/default.nix b/nixpkgs/pkgs/development/tools/rust/probe-run/default.nix
index c4dc0c341078..262d8c4945eb 100644
--- a/nixpkgs/pkgs/development/tools/rust/probe-run/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/probe-run/default.nix
@@ -1,20 +1,22 @@
-{ lib, rustPlatform, fetchFromGitHub, pkg-config, libusb1 }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config, libusb1
+, libiconv, AppKit, IOKit }:
 
 rustPlatform.buildRustPackage rec {
   pname = "probe-run";
-  version = "0.2.1";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "knurling-rs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "QEUsigoSqVczrsSSDnOhTXm94JTXHgxeNY0tGsOaRyg=";
+    sha256 = "avaGBIKldr+1Zwq+7NOHt2wldmY/6Lb6bi9uVHZFI5Q=";
   };
 
-  cargoSha256 = "Fr5XWIUHXyfesouHi0Uryf/ZgB/rDDJ4G1BYGHw0QeQ=";
+  cargoSha256 = "HmDKfb8F6sGnaX64FR3No2GbBYm4bVopbjs8d35WiZQ=";
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libusb1 ];
+  buildInputs = [ libusb1 ]
+    ++ lib.optionals stdenv.isDarwin [ libiconv AppKit IOKit ];
 
   meta = with lib; {
     description = "Run embedded programs just like native ones.";
diff --git a/nixpkgs/pkgs/development/tools/rust/racer/default.nix b/nixpkgs/pkgs/development/tools/rust/racer/default.nix
index 3ad4b54b47a0..c4d0d605cf65 100644
--- a/nixpkgs/pkgs/development/tools/rust/racer/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/racer/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "racer";
-  version = "2.1.40";
+  version = "2.1.44";
 
   src = fetchFromGitHub {
     owner = "racer-rust";
     repo = "racer";
     rev = "v${version}";
-    sha256 = "sha256-8Is+RBfcXKbGSFzYoolLHs30rxlNI//xVGEOhxP2TV8=";
+    sha256 = "sha256-EmxJg2QDpGZ5TbMy9y6P11LdMucBdvewkRewuUzccGM=";
   };
 
-  cargoSha256 = "sha256-iUomr9viCdZk4nV75/OP8vHtJpMbmy+pq1IbaA2lLmE=";
+  cargoSha256 = "sha256-kKQnpEashpIwrXubuZIpU+tzxFaUjr6jaVunYPqaHnM=";
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = lib.optional stdenv.isDarwin Security;
diff --git a/nixpkgs/pkgs/development/tools/rust/racerd/default.nix b/nixpkgs/pkgs/development/tools/rust/racerd/default.nix
index 33d6721610e9..6ffa49aa6b9f 100644
--- a/nixpkgs/pkgs/development/tools/rust/racerd/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/racerd/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     })
   ];
 
-  cargoSha256 = "1z0dh2j9ik66i6nww3z7z2gw7nhc0b061zxbjzamk1jybpc845lq";
+  cargoSha256 = "08zn65c5ivhn2qs02aiixyqwhywrw8kfvs0kgzxdzsipic47n2qq";
 
   # a nightly compiler is required unless we use this cheat code.
   RUSTC_BOOTSTRAP=1;
diff --git a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
index 4a30a70fa09a..8eca1fda2e5b 100644
--- a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -6,14 +6,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2021-04-19";
-  cargoSha256 = "sha256-CXkI3CQ/v6RBMM2Dpp2u+qnRwba+nqzeaPSJGBiQUoY=";
+  version = "2021-06-07";
+  cargoSha256 = "sha256-TyoCu2Q4Tr2EIWxQcjSxASni4dkeEVsfrF5UN7IVxSs=";
 
   src = fetchFromGitHub {
     owner = "rust-analyzer";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-W/cUwZEvlUXzqQ/futeNFwDWR/cTL/RLZaW2srIs83Q=";
+    sha256 = "sha256-f8jdBL42+bU8KKchkW4fF6+kDBjgpoOZyP5yOYsebBk=";
   };
 
   buildAndTestSubdir = "crates/rust-analyzer";
diff --git a/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch b/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch
new file mode 100644
index 000000000000..1754ce11c4d3
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch
@@ -0,0 +1,61 @@
+diff --git a/src/main.rs b/src/main.rs
+index 3cb6896..7f070e0 100644
+--- a/src/main.rs
++++ b/src/main.rs
+@@ -275,7 +275,9 @@ fn install_single_toolchain(
+
+     // install
+     if maybe_dry_client.is_some() {
+-        rename(&toolchain.dest, toolchain_path)?;
++        rename(&toolchain.dest, toolchain_path.clone())?;
++        nix_patchelf(toolchain_path)
++            .expect("failed to patch toolchain for NixOS");
+         eprintln!(
+             "toolchain `{}` is successfully installed!",
+             toolchain.dest.display()
+@@ -291,6 +293,45 @@ fn install_single_toolchain(
+     Ok(())
+ }
+
++fn nix_patchelf(mut toolchain_path: PathBuf) -> Result<(), Error> {
++    toolchain_path.push("bin");
++
++    for entry in toolchain_path.read_dir()? {
++        let entry = entry?;
++        if !entry.file_type()?.is_file() {
++            continue;
++        }
++
++        eprintln!("info: you seem to be running NixOS. Attempting to patch {}",
++                  entry.path().to_str().unwrap());
++        let _ = ::std::process::Command::new("@patchelf@/bin/patchelf")
++            .arg("--set-interpreter")
++            .arg("@dynamicLinker@")
++            .arg(entry.path())
++            .output();
++    }
++
++    toolchain_path.pop();
++    toolchain_path.push("lib");
++
++    for entry in toolchain_path.read_dir()? {
++        let entry = entry?;
++        if !entry.file_type()?.is_file() {
++            continue;
++        }
++
++        eprintln!("info: you seem to be running NixOS. Attempting to patch {}",
++                  entry.path().to_str().unwrap());
++        let _ = ::std::process::Command::new("@patchelf@/bin/patchelf")
++            .arg("--set-rpath")
++            .arg("@libPath@")
++            .arg(entry.path())
++            .output();
++    }
++
++    Ok(())
++}
++
+ fn fetch_master_commit(client: &Client, github_token: Option<&str>) -> Result<String, Error> {
+     eprintln!("fetching master commit hash... ");
+     fetch_master_commit_via_git()
diff --git a/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix b/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix
new file mode 100644
index 000000000000..cae5453fa661
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix
@@ -0,0 +1,56 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, rustPlatform
+, pkg-config
+, openssl
+, runCommand
+, patchelf
+, zlib
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "rustup-toolchain-install-master";
+  version = "1.7.3";
+
+  src = fetchFromGitHub {
+    owner = "kennytm";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-J25ER/g8Kylw/oTIEl4Gl8i1xmhR+4JM5M5EHpl1ras=";
+  };
+
+  patches =
+    let
+      patchelfPatch = runCommand "0001-dynamically-patchelf-binaries.patch" {
+        CC = stdenv.cc;
+        patchelf = patchelf;
+        libPath = "$ORIGIN/../lib:${lib.makeLibraryPath [ zlib ]}";
+      }
+      ''
+        export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
+        substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
+          --subst-var patchelf \
+          --subst-var dynamicLinker \
+          --subst-var libPath
+      '';
+    in
+    lib.optionals stdenv.isLinux [ patchelfPatch ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    Security
+  ];
+
+  cargoSha256 = "n7t8Ap9hdhrjmtKjfdyozf26J7yhu57pedm19CunLF4=";
+
+  meta = with lib; {
+    description = "Install a rustc master toolchain usable from rustup";
+    homepage = "https://github.com/kennytm/rustup-toolchain-install-master";
+    license = licenses.mit;
+    maintainers = with maintainers; [ davidtwco ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/rustup/default.nix b/nixpkgs/pkgs/development/tools/rust/rustup/default.nix
index 56097f9b98c3..d18d1a0ec37b 100644
--- a/nixpkgs/pkgs/development/tools/rust/rustup/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/rustup/default.nix
@@ -1,6 +1,18 @@
-{ stdenv, lib, runCommand, patchelf
-, fetchFromGitHub, rustPlatform, makeWrapper
-, pkg-config, curl, zlib, Security, CoreServices }:
+{ stdenv
+, lib
+, runCommand
+, patchelf
+, fetchFromGitHub
+, rustPlatform
+, makeWrapper
+, pkg-config
+, curl
+, zlib
+, Security
+, CoreServices
+, libiconv
+, xz
+}:
 
 let
   libPath = lib.makeLibraryPath [
@@ -10,32 +22,33 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "rustup";
-  version = "1.23.1";
+  version = "1.24.2";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rustup";
     rev = version;
-    sha256 = "1i3ipkq6j47bf9dh9j3axzj6z443jm4j651g38cxyrrx8b2s15x0";
+    sha256 = "sha256-uRCzVeTr5rr0CvE/1Uz7RHcw4Kt/sOItwcbZJBjjNjg=";
   };
 
-  cargoSha256 = "1zkrrg5m0j9rk65g51v2zh404529p9z84qqb7bfyjmgiqlnh48ig";
+  cargoSha256 = "sha256-+E6Wa4QrMG/Ow3KehsxIzLzubXJQxCWo/rowC4MPdgk=";
 
   nativeBuildInputs = [ makeWrapper pkg-config ];
 
   buildInputs = [
-    curl zlib
-  ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security ];
+    curl
+    zlib
+  ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security libiconv xz ];
 
   cargoBuildFlags = [ "--features no-self-update" ];
 
   patches = lib.optionals stdenv.isLinux [
-    (runCommand "0001-dynamically-patchelf-binaries.patch" { CC=stdenv.cc; patchelf = patchelf; libPath = "$ORIGIN/../lib:${libPath}"; } ''
-     export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
-     substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
-       --subst-var patchelf \
-       --subst-var dynamicLinker \
-       --subst-var libPath
+    (runCommand "0001-dynamically-patchelf-binaries.patch" { CC = stdenv.cc; patchelf = patchelf; libPath = "$ORIGIN/../lib:${libPath}"; } ''
+      export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
+      substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
+        --subst-var patchelf \
+        --subst-var dynamicLinker \
+        --subst-var libPath
     '')
   ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/sqlx-cli/default.nix b/nixpkgs/pkgs/development/tools/rust/sqlx-cli/default.nix
index 5c4f40bbd094..c183ddb760fe 100644
--- a/nixpkgs/pkgs/development/tools/rust/sqlx-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/sqlx-cli/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, lib, rustPlatform, fetchFromGitHub, pkg-config, openssl, SystemConfiguration, CoreFoundation, Security }:
+{ stdenv, lib, rustPlatform, fetchFromGitHub, pkg-config, openssl, SystemConfiguration, CoreFoundation, Security, libiconv }:
 
 rustPlatform.buildRustPackage rec {
   pname = "sqlx-cli";
-  version = "0.4.2";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "launchbadge";
     repo = "sqlx";
     rev = "v${version}";
-    sha256 = "1q6p4qly9qjn333nj72sar6nbyclfdw9i9l6rnimswylj0rr9n27";
+    sha256 = "1051vldajdbkcxvrw2cig201c4nm68cvvnr2yia9f2ysmr68x5rh";
   };
 
-  cargoSha256 = "1393mwx6iccnqrry4ia4prcnnjxhp4zjq1s3gzwzfyzsrqyad54g";
+  cargoSha256 = "1ry893gjrwb670v80ff61yb00jvf49yp6194gqrjvnyarjc6bbb1";
 
   doCheck = false;
   cargoBuildFlags = [ "-p sqlx-cli" ];
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = lib.optionals stdenv.isLinux [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ SystemConfiguration CoreFoundation Security ];
+    ++ lib.optionals stdenv.isDarwin [ SystemConfiguration CoreFoundation Security libiconv ];
 
   meta = with lib; {
     description =
diff --git a/nixpkgs/pkgs/development/tools/rust/svd2rust/cargo-lock.patch b/nixpkgs/pkgs/development/tools/rust/svd2rust/cargo-lock.patch
index 5cd1f685fc11..acc9b053593b 100644
--- a/nixpkgs/pkgs/development/tools/rust/svd2rust/cargo-lock.patch
+++ b/nixpkgs/pkgs/development/tools/rust/svd2rust/cargo-lock.patch
@@ -2,102 +2,149 @@ diff --git a/Cargo.lock b/Cargo.lock
 new file mode 100644
 --- /dev/null
 +++ b/Cargo.lock
-@@ -0,0 +1,278 @@
+@@ -0,0 +1,469 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++[[package]]
++name = "aho-corasick"
++version = "0.7.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "memchr 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
 +[[package]]
 +name = "ansi_term"
 +version = "0.11.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
++name = "anyhow"
++version = "1.0.40"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
 +name = "atty"
-+version = "0.2.11"
++version = "0.2.14"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hermit-abi 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.94 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "autocfg"
-+version = "0.1.1"
++version = "1.0.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
-+name = "backtrace"
-+version = "0.3.13"
++name = "bitflags"
++version = "1.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "cast"
++version = "0.2.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "backtrace-sys"
-+version = "0.1.28"
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "clap"
++version = "2.33.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "bitflags"
-+version = "0.7.0"
++name = "crossbeam-channel"
++version = "0.5.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "bitflags"
-+version = "1.0.4"
++name = "crossbeam-deque"
++version = "0.8.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-epoch 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "cast"
-+version = "0.2.2"
++name = "crossbeam-epoch"
++version = "0.9.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memoffset 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "cc"
-+version = "1.0.28"
++name = "crossbeam-utils"
++version = "0.8.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "cfg-if"
-+version = "0.1.6"
++name = "either"
++version = "1.6.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
-+name = "clap"
-+version = "2.32.0"
++name = "env_logger"
++version = "0.7.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.4.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "termcolor 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "either"
-+version = "1.5.0"
++name = "hermit-abi"
++version = "0.1.18"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "libc 0.2.94 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "error-chain"
-+version = "0.11.0"
++name = "humantime"
++version = "1.3.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
@@ -106,115 +153,232 @@ new file mode 100644
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
++name = "lazy_static"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
 +name = "libc"
-+version = "0.2.46"
++version = "0.2.94"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "log"
++version = "0.4.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "memchr"
++version = "2.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "memoffset"
++version = "0.6.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "num_cpus"
++version = "1.13.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "hermit-abi 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.94 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "once_cell"
++version = "1.7.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.26"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "quick-error"
++version = "1.2.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "quote"
-+version = "0.3.15"
++version = "1.0.9"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "proc-macro2 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "redox_syscall"
-+version = "0.1.50"
++name = "rayon"
++version = "1.5.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon-core 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "redox_termios"
-+version = "0.1.1"
++name = "rayon-core"
++version = "1.9.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-channel 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "rustc-demangle"
-+version = "0.1.13"
++name = "regex"
++version = "1.4.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "aho-corasick 0.7.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex-syntax 0.6.23 (registry+https://github.com/rust-lang/crates.io-index)",
++]
 +
 +[[package]]
-+name = "strsim"
++name = "regex-syntax"
++version = "0.6.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "rustc_version"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "scopeguard"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
++name = "semver"
++version = "0.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "semver-parser"
 +version = "0.7.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
++name = "strsim"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
 +name = "svd-parser"
-+version = "0.6.0"
++version = "0.10.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "xmltree 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "once_cell 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rayon 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "thiserror 1.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "xmltree 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "svd2rust"
-+version = "0.14.0"
++version = "0.18.0"
 +dependencies = [
-+ "cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cast 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
 + "inflections 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "svd-parser 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.4.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "svd-parser 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)",
++ "thiserror 1.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "syn"
-+version = "0.11.11"
++version = "1.0.70"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "synom"
-+version = "0.11.3"
++name = "termcolor"
++version = "1.1.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "termion"
-+version = "1.5.1"
++name = "textwrap"
++version = "0.11.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
-+name = "textwrap"
-+version = "0.10.0"
++name = "thiserror"
++version = "1.0.24"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "thiserror-impl 1.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
++name = "thiserror-impl"
++version = "1.0.24"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "proc-macro2 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "syn 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "unicode-width"
-+version = "0.1.5"
++version = "0.1.8"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "unicode-xid"
-+version = "0.0.4"
++version = "0.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "vec_map"
-+version = "0.8.1"
++version = "0.8.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "winapi"
-+version = "0.3.6"
++version = "0.3.9"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
 + "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -227,57 +391,84 @@ new file mode 100644
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
++name = "winapi-util"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
++]
++
++[[package]]
 +name = "winapi-x86_64-pc-windows-gnu"
 +version = "0.4.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +
 +[[package]]
 +name = "xml-rs"
-+version = "0.3.6"
++version = "0.7.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[[package]]
 +name = "xmltree"
-+version = "0.3.2"
++version = "0.8.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +dependencies = [
-+ "xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 +]
 +
 +[metadata]
++"checksum aho-corasick 0.7.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5"
 +"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-+"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
-+"checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727"
-+"checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5"
-+"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6"
-+"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
-+"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
-+"checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
-+"checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749"
-+"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
-+"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
-+"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"
-+"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
++"checksum anyhow 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)" = "28b2cd92db5cbd74e8e5028f7e27dd7aa3090e89e4f2a197cc7c8dfb69c7063b"
++"checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
++"checksum autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
++"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
++"checksum cast 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "cc38c385bfd7e444464011bb24820f40dd1c76bcdfa1b78611cb7c2e5cafab75"
++"checksum cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++"checksum clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)" = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
++"checksum crossbeam-channel 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4"
++"checksum crossbeam-deque 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9"
++"checksum crossbeam-epoch 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2584f639eb95fea8c798496315b297cf81b9b58b6d30ab066a75455333cf4b12"
++"checksum crossbeam-utils 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e7e9d99fa91428effe99c5c6d4634cdeba32b8cf784fc428a2a687f61a952c49"
++"checksum either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
++"checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++"checksum hermit-abi 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
++"checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
 +"checksum inflections 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a"
-+"checksum libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)" = "023a4cd09b2ff695f9734c1934145a315594b7986398496841c7031a5a1bbdbd"
-+"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
-+"checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2"
-+"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
-+"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619"
-+"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
-+"checksum svd-parser 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f22b4579485b26262f36086d6b74903befc043a57f8377dfcf05bcf5335cb251"
-+"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
-+"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
-+"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
-+"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
-+"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
-+"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
-+"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
-+"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
++"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
++"checksum libc 0.2.94 (registry+https://github.com/rust-lang/crates.io-index)" = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e"
++"checksum log 0.4.14 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
++"checksum memchr 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
++"checksum memoffset 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f83fb6581e8ed1f85fd45c116db8405483899489e38406156c25eb743554361d"
++"checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
++"checksum once_cell 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3"
++"checksum proc-macro2 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)" = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec"
++"checksum quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
++"checksum quote 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
++"checksum rayon 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674"
++"checksum rayon-core 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a"
++"checksum regex 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2a26af418b574bd56588335b3a3659a65725d4e636eb1016c2f9e3b38c7cc759"
++"checksum regex-syntax 0.6.23 (registry+https://github.com/rust-lang/crates.io-index)" = "24d5f089152e60f62d28b835fbff2cd2e8dc0baf1ac13343bef92ab7eed84548"
++"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
++"checksum scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
++"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
++"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
++"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
++"checksum svd-parser 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6b787831d8f6a1549ccd1b0d62772d0526425a7da687f0f98591ab18e53bfe98"
++"checksum syn 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)" = "b9505f307c872bab8eb46f77ae357c8eba1fdacead58ee5a850116b1d7f82883"
++"checksum termcolor 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
++"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
++"checksum thiserror 1.0.24 (registry+https://github.com/rust-lang/crates.io-index)" = "e0f4a65597094d4483ddaed134f409b2cb7c1beccf25201a9f73c719254fa98e"
++"checksum thiserror-impl 1.0.24 (registry+https://github.com/rust-lang/crates.io-index)" = "7765189610d8241a44529806d6fd1f2e0a08734313a35d5b3a556f92b381f3c0"
++"checksum unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
++"checksum unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
++"checksum vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
++"checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
 +"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
++"checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
 +"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-+"checksum xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7ec6c39eaa68382c8e31e35239402c0a9489d4141a8ceb0c716099a0b515b562"
-+"checksum xmltree 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "472a9d37c7c53ab2391161df5b89b1f3bf76dab6ab150d7941ecbdd832282082"
++"checksum xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c1cb601d29fe2c2ac60a2b2e5e293994d87a1f6fa9687a31a15270f909be9c2"
++"checksum xmltree 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8eaee9d17062850f1e6163b509947969242990ee59a35801af437abe041e70"
diff --git a/nixpkgs/pkgs/development/tools/rust/svd2rust/default.nix b/nixpkgs/pkgs/development/tools/rust/svd2rust/default.nix
index 6ec06fffe21f..c66cbe3c2c82 100644
--- a/nixpkgs/pkgs/development/tools/rust/svd2rust/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/svd2rust/default.nix
@@ -1,23 +1,22 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, libiconv }:
 
 with rustPlatform;
 
 buildRustPackage rec {
   pname = "svd2rust";
-  version = "0.14.0";
+  version = "0.18.0";
 
   src = fetchFromGitHub {
     owner = "rust-embedded";
     repo = "svd2rust";
     rev = "v${version}";
-    sha256 = "1a0ldmjkhyv5c52gcq8p8avkj0cgj1b367w6hm85bxdf5j4y8rra";
+    sha256 = "1p0zq3q4g9lr0ghavp7v1dwsqq19lkljkm1i2hsb1sk3pxa1f69n";
   };
   cargoPatches = [ ./cargo-lock.patch ];
 
-  cargoSha256 = "0n0xc8b982ra007l6gygssf1n60gfc2rphwyi7n95dbys1chciyg";
+  cargoSha256 = "0c0f86x17fzav5q76z3ha3g00rbgyz2lm5a5v28ggy0jmg9xgsv6";
 
-  # doc tests fail due to missing dependency
-  doCheck = false;
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
 
   meta = with lib; {
     description = "Generate Rust register maps (`struct`s) from SVD files";
diff --git a/nixpkgs/pkgs/development/tools/scenebuilder/default.nix b/nixpkgs/pkgs/development/tools/scenebuilder/default.nix
index 97c03fb45742..6bac5a95fcb7 100644
--- a/nixpkgs/pkgs/development/tools/scenebuilder/default.nix
+++ b/nixpkgs/pkgs/development/tools/scenebuilder/default.nix
@@ -1,7 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, jdk, gradleGen, makeDesktopItem, copyDesktopItems, perl, writeText, runtimeShell, makeWrapper, glib, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, jdk11, gradleGen, makeDesktopItem, copyDesktopItems, perl, writeText, runtimeShell, makeWrapper, glib, wrapGAppsHook }:
 let
-  # The default one still uses jdk8 (#89731)
-  gradle = (gradleGen.override (old: { java = jdk; })).gradle_6_8;
+  gradle = (gradleGen.override (old: { java = jdk11; })).gradle_6_8;
 
   pname = "scenebuilder";
   version = "15.0.1";
@@ -17,7 +16,7 @@ let
     name = "${pname}-deps";
     inherit src;
 
-    nativeBuildInputs = [ jdk perl gradle ];
+    nativeBuildInputs = [ jdk11 perl gradle ];
 
     buildPhase = ''
       export GRADLE_USER_HOME=$(mktemp -d);
@@ -77,7 +76,7 @@ let
 in stdenv.mkDerivation rec {
   inherit pname src version;
 
-  nativeBuildInputs = [ jdk gradle makeWrapper glib wrapGAppsHook ];
+  nativeBuildInputs = [ jdk11 gradle makeWrapper glib wrapGAppsHook ];
 
   dontWrapGApps = true; # prevent double wrapping
 
@@ -101,7 +100,7 @@ in stdenv.mkDerivation rec {
   '';
 
   postFixup = ''
-    makeWrapper ${jdk}/bin/java $out/bin/${pname} --add-flags "-jar $out/share/${pname}/${pname}.jar" "''${gappsWrapperArgs[@]}"
+    makeWrapper ${jdk11}/bin/java $out/bin/${pname} --add-flags "-jar $out/share/${pname}/${pname}.jar" "''${gappsWrapperArgs[@]}"
     '';
 
   desktopItems = [ desktopItem ];
diff --git a/nixpkgs/pkgs/development/tools/skopeo/default.nix b/nixpkgs/pkgs/development/tools/skopeo/default.nix
index db43c7f8e47d..2af1d5e2a074 100644
--- a/nixpkgs/pkgs/development/tools/skopeo/default.nix
+++ b/nixpkgs/pkgs/development/tools/skopeo/default.nix
@@ -14,13 +14,13 @@
 
 buildGoModule rec {
   pname = "skopeo";
-  version = "1.2.3";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    sha256 = "sha256-GhLw8wt5eDixKNGtxGA0Fjw3auQ3AsjKa+0M4mLTQlg=";
+    sha256 = "sha256-ZHEujkl+GUk5WjgDWdbJwOIKuOqJnIpGnvD1SsrHuhI=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/nixpkgs/pkgs/development/tools/so/default.nix b/nixpkgs/pkgs/development/tools/so/default.nix
index cd52f319bb94..e7324ff7c5b9 100644
--- a/nixpkgs/pkgs/development/tools/so/default.nix
+++ b/nixpkgs/pkgs/development/tools/so/default.nix
@@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-WAUPB4hhvroE1/8nQcgLVWgGyXcFh7qxdFg6UtQzM9A=";
   };
 
-  cargoSha256 = "sha256-wt6ClN9fpEAETk3kYeQRieTXnZQe4JEnQiA8CG4ZLog=";
+  cargoSha256 = "sha256-aaIzGvf+PvH8nz2BSJapi1P5gSVfXT92X62FqJ1Z2L0=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/tools/sqsh/default.nix b/nixpkgs/pkgs/development/tools/sqsh/default.nix
index 9c56efcb59fb..ba4a681a594d 100644
--- a/nixpkgs/pkgs/development/tools/sqsh/default.nix
+++ b/nixpkgs/pkgs/development/tools/sqsh/default.nix
@@ -14,9 +14,6 @@ in stdenv.mkDerivation rec {
 
   preConfigure = ''
     export SYBASE=${freetds}
-
-    substituteInPlace src/cmd_connect.c \
-      --replace CS_TDS_80 CS_TDS_73
   '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace configure --replace "libct.so" "libct.dylib"
   '';
@@ -27,6 +24,17 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook ];
 
+  patches = [
+    (fetchurl {
+      # https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/databases/sqsh/patches/patch-src_cmd_connect_c
+      name = "patch-src_cmd_connect_c.patch";
+      url = "https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/databases/sqsh/patches/patch-src_cmd_connect_c?rev=1.2&content-type=text/plain";
+      sha256 = "1dz97knr2h0a0ca1vq2mx6h8s3ns9jb1a0qraa4wkfmcdi3aqw0j";
+    })
+  ];
+
+  patchFlags = [ "-p0" ];
+
   meta = with lib; {
     description = "Command line tool for querying Sybase/MSSQL databases";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/tools/stagit/default.nix b/nixpkgs/pkgs/development/tools/stagit/default.nix
index 85d64890180e..cfbca2025688 100644
--- a/nixpkgs/pkgs/development/tools/stagit/default.nix
+++ b/nixpkgs/pkgs/development/tools/stagit/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "stagit";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchgit {
     url = "git://git.codemadness.org/stagit";
     rev = version;
-    sha256 = "1wlx5k0v464fr1ifjv04v7ccwb559s54xpsbxdda4whyx1v0fbq4";
+    sha256 = "sha256-0vkdxtKZv7LyEHKGPrB4uOI2lD74+haelEanq2sOjkE=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/nixpkgs/pkgs/development/tools/symfony-cli/default.nix b/nixpkgs/pkgs/development/tools/symfony-cli/default.nix
new file mode 100644
index 000000000000..eb12f9e1dcd7
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/symfony-cli/default.nix
@@ -0,0 +1,29 @@
+{ stdenvNoCC, fetchurl, lib }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "symfony-cli";
+  version = "4.25.2";
+
+  src = fetchurl {
+    url = "https://github.com/symfony/cli/releases/download/v${version}/symfony_linux_amd64.gz";
+    sha256 = "8bfa53c1479883e9b48d2e4e5d3f6f7a511df73d65fe5c7b07a4890ee2c75c7e";
+  };
+
+  dontBuild = true;
+
+  unpackPhase = ''
+    gunzip <$src >symfony
+  '';
+
+  installPhase = ''
+    install -D -t $out/bin symfony
+  '';
+
+  meta = with lib; {
+    description = "Symfony CLI";
+    homepage = "https://symfony.com/download";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ drupol ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/the-way/default.nix b/nixpkgs/pkgs/development/tools/the-way/default.nix
index 6d7fbef2f19b..65c889aee832 100644
--- a/nixpkgs/pkgs/development/tools/the-way/default.nix
+++ b/nixpkgs/pkgs/development/tools/the-way/default.nix
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = lib.optionals stdenv.isDarwin  [ AppKit Security ];
 
-  cargoSha256 = "sha256-jTZso61Lyt6jprBxBAhvchgOsgM9y1qBleTxUx1jCnE=";
+  cargoSha256 = "sha256-sULjd+weixTQYFIQlluPwY4MFlZ1+vMMoMn4GP79oQs=";
   checkFlagsArray = lib.optionals stdenv.isDarwin [ "--skip=copy" ];
   dontUseCargoParallelTests = true;
 
diff --git a/nixpkgs/pkgs/development/tools/thrust/default.nix b/nixpkgs/pkgs/development/tools/thrust/default.nix
index fcb1edf153ac..cc46f3f5d340 100644
--- a/nixpkgs/pkgs/development/tools/thrust/default.nix
+++ b/nixpkgs/pkgs/development/tools/thrust/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, buildEnv, makeWrapper, glib, alsaLib , dbus, gtk2, atk
+{ lib, stdenv, fetchurl, buildEnv, makeWrapper, glib, alsa-lib , dbus, gtk2, atk
 , pango, freetype, fontconfig, gdk-pixbuf , cairo, cups, expat, nspr, gconf, nss
 , xorg, libcap, unzip
 }:
@@ -8,7 +8,7 @@ let
     name = "env-thrust";
     paths = [
       stdenv.cc.cc glib dbus gtk2 atk pango freetype fontconfig gdk-pixbuf
-      cairo cups expat alsaLib nspr gconf nss xorg.libXrender xorg.libX11
+      cairo cups expat alsa-lib nspr gconf nss xorg.libXrender xorg.libX11
       xorg.libXext xorg.libXdamage xorg.libXtst xorg.libXcomposite
       xorg.libXi xorg.libXfixes xorg.libXrandr xorg.libXcursor libcap
     ];
diff --git a/nixpkgs/pkgs/development/tools/treefmt/default.nix b/nixpkgs/pkgs/development/tools/treefmt/default.nix
index c90492c6aeca..961b9625eded 100644
--- a/nixpkgs/pkgs/development/tools/treefmt/default.nix
+++ b/nixpkgs/pkgs/development/tools/treefmt/default.nix
@@ -1,16 +1,16 @@
 { lib, rustPlatform, fetchFromGitHub }:
 rustPlatform.buildRustPackage rec {
   pname = "treefmt";
-  version = "0.1.1";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "numtide";
     repo = "treefmt";
     rev = "v${version}";
-    sha256 = "0a4yikkqppawii1q0kzsxwfp1aid688wa0lixjwfsl279lr69css";
+    sha256 = "13z7n0xg150815c77ysz4iqpk8rbgj4vmqy1y2262ryb88dwaw5n";
   };
 
-  cargoSha256 = "08k60gd23yanfraxpbw9hi7jbqgsxz9mv1ci6q9piis5742zlj9s";
+  cargoSha256 = "1jfrmafj1b28k6xjpj0qq1jpccll0adqxhjypphxhyfsfnra8g6f";
 
   meta = {
     description = "one CLI to format the code tree";
diff --git a/nixpkgs/pkgs/development/tools/trunk/default.nix b/nixpkgs/pkgs/development/tools/trunk/default.nix
index d31c030edac7..e8a7392ff3b1 100644
--- a/nixpkgs/pkgs/development/tools/trunk/default.nix
+++ b/nixpkgs/pkgs/development/tools/trunk/default.nix
@@ -1,4 +1,5 @@
-{ rustPlatform, fetchFromGitHub, pkg-config, openssl, lib }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config
+, openssl, libiconv, CoreServices, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "trunk";
@@ -12,9 +13,11 @@ rustPlatform.buildRustPackage rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ openssl ];
+  buildInputs = if stdenv.isDarwin
+    then [ libiconv CoreServices Security ]
+    else [ openssl ];
 
-  cargoSha256 = "Qv7knTmNYtw0tbyWhFIV7tYkQiwFxcNPAeNiGCyeV8s=";
+  cargoSha256 = "sha256-0ehz0ETNA2gOvTJUu8uq5H+bv4VXOJMq6AA8kn65m/Q=";
 
   meta = with lib; {
     homepage = "https://github.com/thedodd/trunk";
diff --git a/nixpkgs/pkgs/development/tools/unity3d/default.nix b/nixpkgs/pkgs/development/tools/unity3d/default.nix
index 5c41a1dac931..9333864c69b9 100644
--- a/nixpkgs/pkgs/development/tools/unity3d/default.nix
+++ b/nixpkgs/pkgs/development/tools/unity3d/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, makeWrapper, file, getopt
 , gtk2, gtk3, gdk-pixbuf, glib, libGL, libGLU, nss, nspr, udev, tbb
-, alsaLib, GConf, cups, libcap, fontconfig, freetype, pango
+, alsa-lib, GConf, cups, libcap, fontconfig, freetype, pango
 , cairo, dbus, expat, zlib, libpng12, nodejs, gnutar, gcc, gcc_32bit
 , libX11, libXcursor, libXdamage, libXfixes, libXrender, libXi
 , libXcomposite, libXext, libXrandr, libXtst, libSM, libICE, libxcb, chromium
@@ -10,7 +10,7 @@
 let
   libPath64 = lib.makeLibraryPath [
     gcc.cc gtk2 gdk-pixbuf glib libGL libGLU nss nspr
-    alsaLib GConf cups libcap fontconfig freetype pango
+    alsa-lib GConf cups libcap fontconfig freetype pango
     cairo dbus expat zlib libpng12 udev tbb
     libX11 libXcursor libXdamage libXfixes libXrender libXi
     libXcomposite libXext libXrandr libXtst libSM libICE libxcb
diff --git a/nixpkgs/pkgs/development/tools/unityhub/default.nix b/nixpkgs/pkgs/development/tools/unityhub/default.nix
index dc2f80221172..19cd15e7be41 100644
--- a/nixpkgs/pkgs/development/tools/unityhub/default.nix
+++ b/nixpkgs/pkgs/development/tools/unityhub/default.nix
@@ -6,7 +6,7 @@ in appimageTools.wrapType2 rec {
   name = "unityhub";
 
   extraPkgs = (pkgs: with pkgs; with xorg; [ gtk2 gdk_pixbuf glib libGL libGLU nss nspr
-    alsaLib cups gnome2.GConf libcap fontconfig freetype pango
+    alsa-lib cups gnome2.GConf libcap fontconfig freetype pango
     cairo dbus dbus-glib libdbusmenu libdbusmenu-gtk2 expat zlib libpng12 udev tbb
     libpqxx gtk3 libsecret lsb-release openssl nodejs ncurses5
 
diff --git a/nixpkgs/pkgs/development/tools/vagrant/default.nix b/nixpkgs/pkgs/development/tools/vagrant/default.nix
index 1ea172ae137b..db807bda0a7d 100644
--- a/nixpkgs/pkgs/development/tools/vagrant/default.nix
+++ b/nixpkgs/pkgs/development/tools/vagrant/default.nix
@@ -5,9 +5,9 @@
 let
   # NOTE: bumping the version and updating the hash is insufficient;
   # you must use bundix to generate a new gemset.nix in the Vagrant source.
-  version = "2.2.15";
+  version = "2.2.16";
   url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
-  sha256 = "sha256-mMnHJtXLfkZ5O0UF89kHsqBnPg9uQ5l8IYoL5TMMyD8=";
+  sha256 = "sha256-qzxguxKy2pFv0HMZKEnytdPyJPlf6/NTghIkfEzeKNY=";
 
   deps = bundlerEnv rec {
     name = "${pname}-${version}";
diff --git a/nixpkgs/pkgs/development/tools/vagrant/gemset.nix b/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
index 895554904927..27ebf31c32cb 100644
--- a/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
+++ b/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
@@ -64,10 +64,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1759s0rz6qgsw86dds1z4jzb3fvizqsk11j5q6z7lc5n404w6i23";
+      sha256 = "19g5nvkycnkzqq4mqn1zjznq9adrlv2jz0dr9w10cbn42hhqpiz7";
       type = "gem";
     };
-    version = "0.79.0";
+    version = "0.81.0";
   };
   ffi = {
     groups = ["default"];
@@ -274,10 +274,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "14mhzrhs2j43vj36i1qq4z29nd860shrslfik015f4kf1jiaqcrw";
+      sha256 = "1rmm9ym3qxysrmvgnrad28llnzj6wj9ljir8zaw9myas7m8vhvsq";
       type = "gem";
     };
-    version = "0.2.5";
+    version = "0.2.6";
   };
   rubyntlm = {
     groups = ["default"];
diff --git a/nixpkgs/pkgs/development/tools/vala-language-server/default.nix b/nixpkgs/pkgs/development/tools/vala-language-server/default.nix
index 4cad79f9a85f..7a5ab2ae4190 100644
--- a/nixpkgs/pkgs/development/tools/vala-language-server/default.nix
+++ b/nixpkgs/pkgs/development/tools/vala-language-server/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     description = "Code Intelligence for Vala & Genie";
     homepage = "https://github.com/benwaffle/vala-language-server";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ andreasfelix worldofpeace ];
+    maintainers = with maintainers; [ andreasfelix ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/vala-lint/default.nix b/nixpkgs/pkgs/development/tools/vala-lint/default.nix
index a45ced8a4922..3c91880e16ed 100644
--- a/nixpkgs/pkgs/development/tools/vala-lint/default.nix
+++ b/nixpkgs/pkgs/development/tools/vala-lint/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitHub
 , glib
 , meson
@@ -12,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vala-lint-unstable";
-  version = "2020-08-18";
+  version = "2021-02-17";
 
   src = fetchFromGitHub {
     owner = "vala-lang";
     repo = "vala-lint";
-    rev = "fc5dd9e95bc61540b404d5bc070c0629903baad9";
-    sha256 = "n6pp6vYGaRF8B3phWp/e9KnpKGf0Op+xGVdT6HHe0rM=";
+    rev = "5b06cc2341ae7e9f7f8c35c542ef78c36e864c30";
+    sha256 = "KwJ5sCp9ZrrxIqc6qi2+ZdHBt1esNOO1+uDkS+d9mW8=";
   };
 
   nativeBuildInputs = [
@@ -34,8 +35,7 @@ stdenv.mkDerivation rec {
     glib
   ];
 
-  # See https://github.com/vala-lang/vala-lint/issues/133
-  doCheck = false;
+  doCheck = true;
 
   meta = with lib; {
     homepage = "https://github.com/vala-lang/vala-lint";
diff --git a/nixpkgs/pkgs/development/tools/vultr-cli/default.nix b/nixpkgs/pkgs/development/tools/vultr-cli/default.nix
index 70c634fc9bd1..b97a4438c05d 100644
--- a/nixpkgs/pkgs/development/tools/vultr-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/vultr-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "vultr-cli";
-  version = "2.4.0";
+  version = "2.4.1";
 
   src = fetchFromGitHub {
     owner = "vultr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-TNytKq2LqLWxNrqesOJbNQUTirvPkxLMqJmtbmFq+0Y=";
+    sha256 = "sha256:0qbsybs91v9vnkxj4kpwqhzk4hgpkq36wnixxjajg038x7slds4i";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/wally-cli/default.nix b/nixpkgs/pkgs/development/tools/wally-cli/default.nix
index 4c843d04b8cf..bc0ca398fb9e 100644
--- a/nixpkgs/pkgs/development/tools/wally-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/wally-cli/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "wally-cli";
-  version = "2.0.0";
+  version = "2.0.1";
 
   subPackages = [ "." ];
 
@@ -14,15 +14,12 @@ buildGoModule rec {
     owner = "zsa";
     repo = "wally-cli";
     rev = "${version}-linux";
-    sha256 = "0xz3z18bbnf736ngjj6jhnp3p2j55m5jhnb2xl6l5hybracfyhm7";
+    sha256 = "NuyQHEygy4LNqLtrpdwfCR+fNy3ZUxOClVdRen6AXMc=";
   };
 
-  vendorSha256 = "0jqx38x5qvir6zc5yq9p2adafwqhy4hil1k5g81rr1fvbn06k3a6";
+  vendorSha256 = "AVYG+aLpAXohUOORV/uPw7vro+Kg98+AmSmYGHtOals=";
   runVend = true;
 
-  # Can be removed when https://github.com/zsa/wally-cli/pull/1 is merged.
-  doCheck = false;
-
   meta = with lib; {
     description = "A tool to flash firmware to mechanical keyboards";
     homepage = "https://ergodox-ez.com/pages/wally-planck";
diff --git a/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock b/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock
index 165aa6ac856c..094c703b65f6 100644
--- a/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock
+++ b/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock
@@ -15,9 +15,9 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
 
 [[package]]
 name = "aho-corasick"
-version = "0.7.13"
+version = "0.7.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
 dependencies = [
  "memchr",
 ]
@@ -33,9 +33,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.32"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
+checksum = "28b2cd92db5cbd74e8e5028f7e27dd7aa3090e89e4f2a197cc7c8dfb69c7063b"
 
 [[package]]
 name = "arrayref"
@@ -45,21 +45,21 @@ checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
 
 [[package]]
 name = "arrayvec"
-version = "0.5.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
 
 [[package]]
 name = "ascii"
-version = "0.8.7"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"
+checksum = "bbf56136a5198c7b01a49e3afcbef6cf84597273d298f54432926024107b0109"
 
 [[package]]
 name = "askama"
-version = "0.10.3"
+version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70a6e7ebd44d0047fd48206c83c5cd3214acc7b9d87f001da170145c47ef7d12"
+checksum = "d298738b6e47e1034e560e5afe63aa488fea34e25ec11b855a76f0d7b8e73134"
 dependencies = [
  "askama_derive",
  "askama_escape",
@@ -68,13 +68,12 @@ dependencies = [
 
 [[package]]
 name = "askama_derive"
-version = "0.10.3"
+version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1d7169690c4f56343dcd821ab834972a22570a2662a19a84fd7775d5e1c3881"
+checksum = "ca2925c4c290382f9d2fa3d1c1b6a63fa1427099721ecca4749b154cc9c25522"
 dependencies = [
  "askama_shared",
  "proc-macro2",
- "quote",
  "syn",
 ]
 
@@ -86,15 +85,15 @@ checksum = "90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb"
 
 [[package]]
 name = "askama_shared"
-version = "0.10.4"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62fc272363345c8cdc030e4c259d9d028237f8b057dc9bb327772a257bde6bb5"
+checksum = "2582b77e0f3c506ec4838a25fa8a5f97b9bed72bb6d3d272ea1c031d8bd373bc"
 dependencies = [
  "askama_escape",
  "humansize",
- "nom",
- "num-traits 0.2.12",
- "percent-encoding 2.1.0",
+ "nom 6.1.2",
+ "num-traits 0.2.14",
+ "percent-encoding",
  "proc-macro2",
  "quote",
  "serde",
@@ -104,10 +103,11 @@ dependencies = [
 
 [[package]]
 name = "assert_cmd"
-version = "1.0.1"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c88b9ca26f9c16ec830350d309397e74ee9abdfd8eb1f71cb6ecc71a3fc818da"
+checksum = "a88b6bd5df287567ffdf4ddf4d33060048e1068308e5f62d81c6f9824a045a48"
 dependencies = [
+ "bstr",
  "doc-comment",
  "predicates",
  "predicates-core",
@@ -134,9 +134,9 @@ checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
 
 [[package]]
 name = "autocfg"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
 
 [[package]]
 name = "base64"
@@ -150,9 +150,18 @@ dependencies = [
 
 [[package]]
 name = "base64"
-version = "0.11.0"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+dependencies = [
+ "byteorder",
+]
+
+[[package]]
+name = "base64"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
 
 [[package]]
 name = "bitflags"
@@ -167,10 +176,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
 
 [[package]]
+name = "bitvec"
+version = "0.19.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321"
+dependencies = [
+ "funty",
+ "radium",
+ "tap",
+ "wyz",
+]
+
+[[package]]
 name = "blake2b_simd"
-version = "0.5.10"
+version = "0.5.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
+checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
 dependencies = [
  "arrayref",
  "arrayvec",
@@ -178,6 +199,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "bstr"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90682c8d613ad3373e66de8c6411e0ae2ab2571e879d2efbf73558cc66f21279"
+dependencies = [
+ "lazy_static",
+ "memchr",
+ "regex-automata",
+]
+
+[[package]]
 name = "buf_redux"
 version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -189,15 +221,15 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.4.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820"
+checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631"
 
 [[package]]
 name = "byteorder"
-version = "1.3.4"
+version = "1.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
 
 [[package]]
 name = "canvas"
@@ -210,9 +242,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.58"
+version = "1.0.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518"
+checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787"
 
 [[package]]
 name = "cfg-if"
@@ -235,26 +267,28 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.13"
+version = "0.4.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c74d84029116787153e02106bf53e66828452a4b325cc8652b788b5967c0a0b6"
+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
 dependencies = [
+ "libc",
  "num-integer",
- "num-traits 0.2.12",
+ "num-traits 0.2.14",
  "time",
+ "winapi",
 ]
 
 [[package]]
 name = "chunked_transfer"
-version = "0.3.1"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"
+checksum = "fff857943da45f546682664a79488be82e69e43c1a7a2307679ab9afb3a66d2e"
 
 [[package]]
 name = "clap"
-version = "2.33.1"
+version = "2.33.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
+checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
 dependencies = [
  "ansi_term",
  "atty",
@@ -285,9 +319,9 @@ dependencies = [
 
 [[package]]
 name = "color_quant"
-version = "1.0.1"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd"
+checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "console_error_panic_hook"
@@ -314,58 +348,54 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
 
 [[package]]
-name = "crossbeam-deque"
-version = "0.7.3"
+name = "crossbeam-channel"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
+checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4"
 dependencies = [
- "crossbeam-epoch",
+ "cfg-if 1.0.0",
  "crossbeam-utils",
- "maybe-uninit",
 ]
 
 [[package]]
-name = "crossbeam-epoch"
-version = "0.8.2"
+name = "crossbeam-deque"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
+checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9"
 dependencies = [
- "autocfg 1.0.0",
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
+ "crossbeam-epoch",
  "crossbeam-utils",
- "lazy_static",
- "maybe-uninit",
- "memoffset",
- "scopeguard",
 ]
 
 [[package]]
-name = "crossbeam-queue"
-version = "0.2.3"
+name = "crossbeam-epoch"
+version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
+checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd"
 dependencies = [
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "crossbeam-utils",
- "maybe-uninit",
+ "lazy_static",
+ "memoffset",
+ "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.7.2"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
+checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"
 dependencies = [
- "autocfg 1.0.0",
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "lazy_static",
 ]
 
 [[package]]
 name = "curl"
-version = "0.4.31"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9447ad28eee2a5cfb031c329d46bef77487244fff6a724b378885b8691a35f78"
+checksum = "003cb79c1c6d1c93344c7e1201bb51c2148f24ec2bd9c253709d6b2efb796515"
 dependencies = [
  "curl-sys",
  "libc",
@@ -378,9 +408,9 @@ dependencies = [
 
 [[package]]
 name = "curl-sys"
-version = "0.4.33+curl-7.71.1"
+version = "0.4.44+curl-7.77.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e9818ea018327f79c811612f29b9834d2abddbe7db81460a2d5c7e12946b337"
+checksum = "4b6d85e9322b193f117c966e79c2d6929ec08c02f339f950044aba12e20bbaf1"
 dependencies = [
  "cc",
  "libc",
@@ -439,14 +469,14 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
 
 [[package]]
 name = "docopt"
-version = "1.1.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
+checksum = "7f3f119846c823f9eafcf953a8f6ffb6ed69bf6240883261a7f13b634579a51f"
 dependencies = [
  "lazy_static",
  "regex",
  "serde",
- "strsim 0.9.3",
+ "strsim 0.10.0",
 ]
 
 [[package]]
@@ -459,9 +489,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.5.3"
+version = "1.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
+checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
 
 [[package]]
 name = "enum_primitive"
@@ -480,7 +510,7 @@ checksum = "17392a012ea30ef05a610aa97dfb49496e71c9f676b27879922ea5bdf60d9d3f"
 dependencies = [
  "atty",
  "humantime",
- "log 0.4.11",
+ "log 0.4.14",
  "regex",
  "termcolor",
 ]
@@ -499,13 +529,13 @@ dependencies = [
 
 [[package]]
 name = "filetime"
-version = "0.2.11"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e500da2fab70bdc43f8f0e0b350a227f31c72311c56aba48f01d5cd62bb0345b"
+checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8"
 dependencies = [
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.8",
  "winapi",
 ]
 
@@ -515,7 +545,7 @@ version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4"
 dependencies = [
- "num-traits 0.2.12",
+ "num-traits 0.2.14",
 ]
 
 [[package]]
@@ -534,16 +564,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
+name = "form_urlencoded"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+dependencies = [
+ "matches",
+ "percent-encoding",
+]
+
+[[package]]
 name = "fuchsia-cprng"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
 
 [[package]]
+name = "funty"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7"
+
+[[package]]
 name = "futures"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613"
+checksum = "0e7e43a803dae2fa37c1f6a8fe121e1f7bf9548b4dfc0522a42f34145dadfc27"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -556,9 +602,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5"
+checksum = "e682a68b29a882df0545c143dc3646daefe80ba479bcdede94d5a703de2871e2"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -575,9 +621,9 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15496a72fabf0e62bdc3df11a59a3787429221dd0710ba8ef163d6f7a9112c94"
+checksum = "0402f765d8a89a26043b889b26ce3c4679d268fa6bb22cd7c6aad98340e179d1"
 
 [[package]]
 name = "futures-core-preview"
@@ -587,9 +633,9 @@ checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314"
+checksum = "badaa6a909fac9e7236d0620a2f57f7664640c56575b71a7552fbd68deafab79"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -598,27 +644,27 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789"
+checksum = "acc499defb3b348f8d8f3f66415835a9131856ff7714bf10dadfc4ec4bdb29a1"
 
 [[package]]
 name = "futures-lite"
-version = "1.11.3"
+version = "1.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4481d0cd0de1d204a4fa55e7d45f07b1d958abcb06714b3446438e2eff695fb"
+checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
 dependencies = [
  "futures-core",
- "memchr",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "futures-macro"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39"
+checksum = "a4c40298486cdf52cc00cd6d6987892ba502c7656a16a4192a9992b1ccedd121"
 dependencies = [
+ "autocfg 1.0.1",
  "proc-macro-hack",
  "proc-macro2",
  "quote",
@@ -627,25 +673,23 @@ dependencies = [
 
 [[package]]
 name = "futures-sink"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc"
+checksum = "a57bead0ceff0d6dde8f465ecd96c9338121bb7717d3e7b108059531870c4282"
 
 [[package]]
 name = "futures-task"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626"
-dependencies = [
- "once_cell",
-]
+checksum = "8a16bef9fc1a4dddb5bee51c989e3fbba26569cbb0e31f5b303c184e3dd33dae"
 
 [[package]]
 name = "futures-util"
-version = "0.3.5"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6"
+checksum = "feb5c238d27e2bf94ffdfd27b2c29e3df4a68c4193bb6427384259e2bf191967"
 dependencies = [
+ "autocfg 1.0.1",
  "futures-channel",
  "futures-core",
  "futures-io",
@@ -653,7 +697,7 @@ dependencies = [
  "futures-sink",
  "futures-task",
  "memchr",
- "pin-project",
+ "pin-project-lite",
  "pin-utils",
  "proc-macro-hack",
  "proc-macro-nested",
@@ -662,13 +706,24 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.1.14"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+ "wasi 0.9.0+wasi-snapshot-preview1",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
 dependencies = [
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "libc",
- "wasi",
+ "wasi 0.10.2+wasi-snapshot-preview1",
 ]
 
 [[package]]
@@ -696,9 +751,9 @@ dependencies = [
 
 [[package]]
 name = "heck"
-version = "0.3.1"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
 dependencies = [
  "unicode-segmentation",
 ]
@@ -712,30 +767,30 @@ dependencies = [
 
 [[package]]
 name = "hermit-abi"
-version = "0.1.15"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
+checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "httparse"
-version = "1.3.4"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68"
 
 [[package]]
 name = "humansize"
-version = "1.1.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e"
+checksum = "02296996cb8796d7c6e3bc2d9211b7802812d36999a51bb754123ead7d37d026"
 
 [[package]]
 name = "humantime"
-version = "2.0.1"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a"
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "id-arena"
@@ -748,9 +803,9 @@ dependencies = [
 
 [[package]]
 name = "idna"
-version = "0.1.5"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
 dependencies = [
  "matches",
  "unicode-bidi",
@@ -789,23 +844,22 @@ checksum = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb"
 
 [[package]]
 name = "itoa"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
+checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"
 
 [[package]]
 name = "jpeg-decoder"
-version = "0.1.20"
+version = "0.1.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3"
+checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
 dependencies = [
- "byteorder",
  "rayon",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.50"
+version = "0.3.51"
 dependencies = [
  "wasm-bindgen",
  "wasm-bindgen-futures",
@@ -833,16 +887,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a"
 
 [[package]]
+name = "lexical-core"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
+dependencies = [
+ "arrayvec",
+ "bitflags 1.2.1",
+ "cfg-if 1.0.0",
+ "ryu",
+ "static_assertions",
+]
+
+[[package]]
 name = "libc"
-version = "0.2.74"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2f02823cf78b754822df5f7f268fb59822e7296276d3e069d8e8cb26a14bd10"
+checksum = "789da6d93f1b866ffe175afc5322a4d76c038605a1c3319bb57b06967ca98a36"
 
 [[package]]
 name = "libz-sys"
-version = "1.0.25"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
+checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66"
 dependencies = [
  "cc",
  "libc",
@@ -856,16 +923,16 @@ version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
 dependencies = [
- "log 0.4.11",
+ "log 0.4.14",
 ]
 
 [[package]]
 name = "log"
-version = "0.4.11"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
 dependencies = [
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
 ]
 
 [[package]]
@@ -881,24 +948,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
 
 [[package]]
-name = "maybe-uninit"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-
-[[package]]
 name = "memchr"
-version = "2.3.3"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
+checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
 
 [[package]]
 name = "memoffset"
-version = "0.5.5"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f"
+checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
 dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
 ]
 
 [[package]]
@@ -924,19 +985,19 @@ dependencies = [
 
 [[package]]
 name = "multipart"
-version = "0.15.4"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adba94490a79baf2d6a23eac897157047008272fa3eecb3373ae6377b91eca28"
+checksum = "136eed74cadb9edd2651ffba732b19a450316b680e4f48d6c79e905799e19d01"
 dependencies = [
  "buf_redux",
  "httparse",
- "log 0.4.11",
+ "log 0.4.14",
  "mime",
  "mime_guess",
  "quick-error",
- "rand 0.4.6",
+ "rand 0.6.5",
  "safemem",
- "tempdir",
+ "tempfile",
  "twoway",
 ]
 
@@ -954,7 +1015,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
 dependencies = [
  "memchr",
- "version_check 0.9.2",
+ "version_check 0.9.3",
+]
+
+[[package]]
+name = "nom"
+version = "6.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2"
+dependencies = [
+ "bitvec",
+ "funty",
+ "lexical-core",
+ "memchr",
+ "version_check 0.9.3",
 ]
 
 [[package]]
@@ -965,23 +1039,23 @@ checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
 
 [[package]]
 name = "num-integer"
-version = "0.1.43"
+version = "0.1.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
 dependencies = [
- "autocfg 1.0.0",
- "num-traits 0.2.12",
+ "autocfg 1.0.1",
+ "num-traits 0.2.14",
 ]
 
 [[package]]
 name = "num-iter"
-version = "0.1.41"
+version = "0.1.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f"
+checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
 dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
  "num-integer",
- "num-traits 0.2.12",
+ "num-traits 0.2.14",
 ]
 
 [[package]]
@@ -991,7 +1065,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
 dependencies = [
  "num-integer",
- "num-traits 0.2.12",
+ "num-traits 0.2.14",
 ]
 
 [[package]]
@@ -1000,16 +1074,16 @@ version = "0.1.43"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
 dependencies = [
- "num-traits 0.2.12",
+ "num-traits 0.2.14",
 ]
 
 [[package]]
 name = "num-traits"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
 dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
 ]
 
 [[package]]
@@ -1024,46 +1098,46 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.4.0"
+version = "1.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
+checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3"
 
 [[package]]
 name = "openssl"
-version = "0.10.30"
+version = "0.10.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
+checksum = "6d7830286ad6a3973c0f1d9b73738f69c76b739301d0229c4b96501695cbe4c8"
 dependencies = [
  "bitflags 1.2.1",
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "foreign-types",
- "lazy_static",
  "libc",
+ "once_cell",
  "openssl-sys",
 ]
 
 [[package]]
 name = "openssl-probe"
-version = "0.1.2"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a"
 
 [[package]]
 name = "openssl-src"
-version = "111.10.2+1.1.1g"
+version = "111.15.0+1.1.1k"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a287fdb22e32b5b60624d4a5a7a02dbe82777f730ec0dbc42a0554326fef5a70"
+checksum = "b1a5f6ae2ac04393b217ea9f700cd04fa9bf3d93fae2872069f3d15d908af70a"
 dependencies = [
  "cc",
 ]
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.58"
+version = "0.9.63"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"
+checksum = "b6b0d6fb7d80f877617dfcb014e605e2b5ab2fb0afdf27935219bb6bd984cb98"
 dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
  "cc",
  "libc",
  "openssl-src",
@@ -1073,12 +1147,6 @@ dependencies = [
 
 [[package]]
 name = "percent-encoding"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
-
-[[package]]
-name = "percent-encoding"
 version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
@@ -1132,26 +1200,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "pin-project"
-version = "0.4.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca4433fff2ae79342e497d9f8ee990d174071408f28f726d6d83af93e58e48aa"
-dependencies = [
- "pin-project-internal",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "0.4.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c0e815c3ee9a031fdf5af21c10aa17c573c9c6a566328d99e3936c34e36461f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
 name = "pin-project-lite"
 version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1165,9 +1213,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.18"
+version = "0.3.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
 
 [[package]]
 name = "png"
@@ -1183,15 +1231,15 @@ dependencies = [
 
 [[package]]
 name = "ppv-lite86"
-version = "0.2.8"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
 
 [[package]]
 name = "predicates"
-version = "1.0.5"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96bfead12e90dccead362d62bb2c90a5f6fc4584963645bc7f71a735e0b0735a"
+checksum = "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df"
 dependencies = [
  "difference",
  "float-cmp",
@@ -1202,15 +1250,15 @@ dependencies = [
 
 [[package]]
 name = "predicates-core"
-version = "1.0.0"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
+checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451"
 
 [[package]]
 name = "predicates-tree"
-version = "1.0.0"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
+checksum = "15f553275e5721409451eb85e15fd9a860a6e5ab4496eb215987502b5f5391f2"
 dependencies = [
  "predicates-core",
  "treeline",
@@ -1218,47 +1266,45 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-error"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
 dependencies = [
  "proc-macro-error-attr",
  "proc-macro2",
  "quote",
  "syn",
- "version_check 0.9.2",
+ "version_check 0.9.3",
 ]
 
 [[package]]
 name = "proc-macro-error-attr"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
- "syn-mid",
- "version_check 0.9.2",
+ "version_check 0.9.3",
 ]
 
 [[package]]
 name = "proc-macro-hack"
-version = "0.5.18"
+version = "0.5.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99c605b9a0adc77b7211c6b1f722dcb613d68d66859a44f3d485a6da332b0598"
+checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
 
 [[package]]
 name = "proc-macro-nested"
-version = "0.1.6"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
+checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.24"
+version = "1.0.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
+checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
 dependencies = [
  "unicode-xid",
 ]
@@ -1271,38 +1317,18 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
 
 [[package]]
 name = "quote"
-version = "1.0.7"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
-name = "rand"
-version = "0.4.6"
+name = "radium"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-dependencies = [
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "rdrand",
- "winapi",
-]
-
-[[package]]
-name = "rand"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
-dependencies = [
- "cloudabi",
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "winapi",
-]
+checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8"
 
 [[package]]
 name = "rand"
@@ -1329,7 +1355,7 @@ version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
 dependencies = [
- "getrandom",
+ "getrandom 0.1.16",
  "libc",
  "rand_chacha 0.2.2",
  "rand_core 0.5.1",
@@ -1337,6 +1363,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "rand"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
+dependencies = [
+ "libc",
+ "rand_chacha 0.3.0",
+ "rand_core 0.6.2",
+ "rand_hc 0.3.0",
+]
+
+[[package]]
 name = "rand_chacha"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1357,6 +1395,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "rand_chacha"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.6.2",
+]
+
+[[package]]
 name = "rand_core"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1377,7 +1425,16 @@ version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
 dependencies = [
- "getrandom",
+ "getrandom 0.1.16",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"
+dependencies = [
+ "getrandom 0.2.3",
 ]
 
 [[package]]
@@ -1399,6 +1456,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "rand_hc"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
+dependencies = [
+ "rand_core 0.6.2",
+]
+
+[[package]]
 name = "rand_isaac"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1453,11 +1519,11 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.3.1"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
+checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90"
 dependencies = [
- "autocfg 1.0.0",
+ "autocfg 1.0.1",
  "crossbeam-deque",
  "either",
  "rayon-core",
@@ -1465,12 +1531,12 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.7.1"
+version = "1.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
+checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e"
 dependencies = [
+ "crossbeam-channel",
  "crossbeam-deque",
- "crossbeam-queue",
  "crossbeam-utils",
  "lazy_static",
  "num_cpus",
@@ -1517,33 +1583,47 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
 
 [[package]]
+name = "redox_syscall"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "742739e41cd49414de871ea5e549afb7e2a3ac77b589bcbebe8c82fab37147fc"
+dependencies = [
+ "bitflags 1.2.1",
+]
+
+[[package]]
 name = "redox_users"
-version = "0.3.4"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
+checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
 dependencies = [
- "getrandom",
- "redox_syscall",
+ "getrandom 0.1.16",
+ "redox_syscall 0.1.57",
  "rust-argon2",
 ]
 
 [[package]]
 name = "regex"
-version = "1.3.9"
+version = "1.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
 dependencies = [
  "aho-corasick",
  "memchr",
  "regex-syntax",
- "thread_local",
 ]
 
 [[package]]
+name = "regex-automata"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+
+[[package]]
 name = "regex-syntax"
-version = "0.6.18"
+version = "0.6.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
 
 [[package]]
 name = "remove_dir_all"
@@ -1564,16 +1644,17 @@ dependencies = [
 
 [[package]]
 name = "rouille"
-version = "3.0.0"
+version = "3.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "112568052ec17fa26c6c11c40acbb30d3ad244bf3d6da0be181f5e7e42e5004f"
+checksum = "0cfaebc11a52b7415f07e69f18f8240a0ea5eedf0dcb888c5fb7b432e7b4729b"
 dependencies = [
- "base64 0.9.3",
+ "base64 0.10.1",
  "chrono",
  "filetime",
  "multipart",
  "num_cpus",
- "rand 0.5.6",
+ "percent-encoding",
+ "rand 0.7.3",
  "serde",
  "serde_derive",
  "serde_json",
@@ -1587,11 +1668,11 @@ dependencies = [
 
 [[package]]
 name = "rust-argon2"
-version = "0.7.0"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
+checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb"
 dependencies = [
- "base64 0.11.0",
+ "base64 0.13.0",
  "blake2b_simd",
  "constant_time_eq",
  "crossbeam-utils",
@@ -1606,9 +1687,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-demangle"
-version = "0.1.16"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+checksum = "410f7acf3cb3a44527c5d9546bad4bf4e6c460915d5f9f2fc524498bfe8f70ce"
 
 [[package]]
 name = "ryu"
@@ -1662,18 +1743,18 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
 name = "serde"
-version = "1.0.114"
+version = "1.0.126"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3"
+checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.114"
+version = "1.0.126"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e"
+checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1682,9 +1763,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.57"
+version = "1.0.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c"
+checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79"
 dependencies = [
  "itoa",
  "ryu",
@@ -1705,19 +1786,17 @@ checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
 
 [[package]]
 name = "slab"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527"
 
 [[package]]
 name = "socket2"
-version = "0.3.12"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
+checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2"
 dependencies = [
- "cfg-if 0.1.10",
  "libc",
- "redox_syscall",
  "winapi",
 ]
 
@@ -1728,6 +1807,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
 
 [[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
+[[package]]
 name = "strsim"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1735,15 +1820,15 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
 
 [[package]]
 name = "strsim"
-version = "0.9.3"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "structopt"
-version = "0.3.15"
+version = "0.3.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
+checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c"
 dependencies = [
  "clap",
  "lazy_static",
@@ -1752,9 +1837,9 @@ dependencies = [
 
 [[package]]
 name = "structopt-derive"
-version = "0.4.8"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
+checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
 dependencies = [
  "heck",
  "proc-macro-error",
@@ -1765,9 +1850,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "1.0.67"
+version = "1.0.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702"
+checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1775,36 +1860,21 @@ dependencies = [
 ]
 
 [[package]]
-name = "syn-mid"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "tempdir"
-version = "0.3.7"
+name = "tap"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-dependencies = [
- "rand 0.4.6",
- "remove_dir_all",
-]
+checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
 
 [[package]]
 name = "tempfile"
-version = "3.1.0"
+version = "3.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
 dependencies = [
- "cfg-if 0.1.10",
+ "cfg-if 1.0.0",
  "libc",
- "rand 0.7.3",
- "redox_syscall",
+ "rand 0.8.3",
+ "redox_syscall 0.2.8",
  "remove_dir_all",
  "winapi",
 ]
@@ -1822,9 +1892,9 @@ dependencies = [
 
 [[package]]
 name = "termcolor"
-version = "1.1.0"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
+checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
 dependencies = [
  "winapi-util",
 ]
@@ -1839,15 +1909,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "thread_local"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
 name = "threadpool"
 version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1868,22 +1929,31 @@ dependencies = [
 
 [[package]]
 name = "tiny_http"
-version = "0.6.2"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1661fa0a44c95d01604bd05c66732a446c657efb62b5164a7a083a3b552b4951"
+checksum = "9ce51b50006056f590c9b7c3808c3bd70f0d1101666629713866c227d6e58d39"
 dependencies = [
  "ascii",
  "chrono",
  "chunked_transfer",
- "log 0.4.11",
+ "log 0.4.14",
  "url",
 ]
 
 [[package]]
 name = "tinyvec"
-version = "0.3.3"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
+checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
 
 [[package]]
 name = "todomvc"
@@ -1898,9 +1968,9 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.5.6"
+version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
+checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
 dependencies = [
  "serde",
 ]
@@ -1913,9 +1983,9 @@ checksum = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
 
 [[package]]
 name = "trybuild"
-version = "1.0.31"
+version = "1.0.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a4d94e6adf00b96b1ab94fcfcd8c3cf916733b39adf90c8f72693629887b9b8"
+checksum = "1768998d9a3b179411618e377dbb134c58a88cda284b0aa71c42c40660127d46"
 dependencies = [
  "glob",
  "lazy_static",
@@ -1954,27 +2024,27 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.4"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0"
 dependencies = [
  "matches",
 ]
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.13"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
+checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.6.0"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796"
 
 [[package]]
 name = "unicode-width"
@@ -1984,26 +2054,27 @@ checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
 
 [[package]]
 name = "unicode-xid"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
 
 [[package]]
 name = "url"
-version = "1.7.2"
+version = "2.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
 dependencies = [
+ "form_urlencoded",
  "idna",
  "matches",
- "percent-encoding 1.0.1",
+ "percent-encoding",
 ]
 
 [[package]]
 name = "vcpkg"
-version = "0.2.10"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
+checksum = "025ce40a007e1907e58d5bc1a594def78e5573bb0b1160bc389634e8f12e4faa"
 
 [[package]]
 name = "vec_map"
@@ -2019,9 +2090,9 @@ checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
 
 [[package]]
 name = "version_check"
-version = "0.9.2"
+version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
+checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe"
 
 [[package]]
 name = "wait-timeout"
@@ -2034,24 +2105,24 @@ dependencies = [
 
 [[package]]
 name = "walrus"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d470d0583e65f4cab21a1ff3c1ba3dd23ae49e68f516f0afceaeb001b32af39"
+checksum = "4eb08e48cde54c05f363d984bb54ce374f49e242def9468d2e1b6c2372d291f8"
 dependencies = [
  "anyhow",
  "id-arena",
  "leb128",
- "log 0.4.11",
+ "log 0.4.14",
  "rayon",
  "walrus-macro",
- "wasmparser 0.59.0",
+ "wasmparser 0.77.0",
 ]
 
 [[package]]
 name = "walrus-macro"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7c2bb690b44cb1b0fdcc54d4998d21f8bdaf706b93775425e440b174f39ad16"
+checksum = "0a6e5bd22c71e77d60140b0bd5be56155a37e5bd14e24f5f87298040d0cc40d7"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -2066,8 +2137,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
 
 [[package]]
+name = "wasi"
+version = "0.10.2+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+
+[[package]]
 name = "wasm-bindgen"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "cfg-if 1.0.0",
  "js-sys",
@@ -2083,11 +2160,11 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "bumpalo",
  "lazy_static",
- "log 0.4.11",
+ "log 0.4.14",
  "proc-macro2",
  "quote",
  "syn",
@@ -2104,7 +2181,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-cli"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "assert_cmd",
@@ -2112,7 +2189,7 @@ dependencies = [
  "diff",
  "docopt",
  "env_logger",
- "log 0.4.11",
+ "log 0.4.14",
  "openssl",
  "predicates",
  "rayon",
@@ -2132,11 +2209,11 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-cli-support"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "base64 0.9.3",
- "log 0.4.11",
+ "log 0.4.14",
  "rustc-demangle",
  "serde_json",
  "tempfile",
@@ -2154,19 +2231,19 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-externref-xform"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "rayon",
  "walrus",
  "wasmprinter",
- "wast",
+ "wast 21.0.0",
  "wat",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.23"
+version = "0.4.24"
 dependencies = [
  "cfg-if 1.0.0",
  "futures-channel-preview",
@@ -2180,7 +2257,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "quote",
  "trybuild",
@@ -2191,7 +2268,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2202,13 +2279,13 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-multi-value-xform"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "rayon",
  "walrus",
  "wasmprinter",
- "wast",
+ "wast 21.0.0",
  "wat",
 ]
 
@@ -2223,11 +2300,11 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.73"
+version = "0.2.74"
 
 [[package]]
 name = "wasm-bindgen-test"
-version = "0.3.23"
+version = "0.3.24"
 dependencies = [
  "console_error_panic_hook",
  "js-sys",
@@ -2253,7 +2330,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-test-macro"
-version = "0.3.23"
+version = "0.3.24"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2261,7 +2338,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-threads-xform"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "walrus",
@@ -2270,7 +2347,7 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-wasm-conventions"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "walrus",
@@ -2278,10 +2355,10 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-wasm-interpreter"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
- "log 0.4.11",
+ "log 0.4.14",
  "tempfile",
  "walrus",
  "wasm-bindgen-wasm-conventions",
@@ -2290,13 +2367,13 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-webidl"
-version = "0.2.73"
+version = "0.2.74"
 dependencies = [
  "anyhow",
  "env_logger",
  "heck",
  "lazy_static",
- "log 0.4.11",
+ "log 0.4.14",
  "proc-macro2",
  "quote",
  "sourcefile",
@@ -2325,6 +2402,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "wasm-in-web-worker"
+version = "0.1.0"
+dependencies = [
+ "console_error_panic_hook",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
 name = "wasm2js"
 version = "0.1.0"
 dependencies = [
@@ -2339,18 +2425,24 @@ checksum = "a950e6a618f62147fd514ff445b2a0b53120d382751960797f85f058c7eda9b9"
 
 [[package]]
 name = "wasmparser"
-version = "0.60.2"
+version = "0.77.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2d5790a08f11f3d6b5767f6c49152df74b215e3dc5a38147713c4f6a05aac7f"
+checksum = "b35c86d22e720a07d954ebbed772d01180501afe7d03d464f413bb5f8914a8d6"
+
+[[package]]
+name = "wasmparser"
+version = "0.78.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "52144d4c78e5cf8b055ceab8e5fa22814ce4315d6002ad32cfd914f37c12fd65"
 
 [[package]]
 name = "wasmprinter"
-version = "0.2.7"
+version = "0.2.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecc836dba85dd00df43d71b22063bcb367d324aa1be0d046077cc7fca4c43876"
+checksum = "2ccec894c70710c2e4669320a532cb2b9cfb97adb0429745642f8ce76916ed85"
 dependencies = [
  "anyhow",
- "wasmparser 0.60.2",
+ "wasmparser 0.78.2",
 ]
 
 [[package]]
@@ -2363,17 +2455,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "wast"
+version = "35.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2ef140f1b49946586078353a453a1d28ba90adfc54dde75710bc1931de204d68"
+dependencies = [
+ "leb128",
+]
+
+[[package]]
 name = "wat"
-version = "1.0.22"
+version = "1.0.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce85d72b74242c340e9e3492cfb602652d7bb324c3172dd441b5577e39a2e18c"
+checksum = "8ec280a739b69173e0ffd12c1658507996836ba4e992ed9bc1e5385a0bd72a02"
 dependencies = [
- "wast",
+ "wast 35.0.2",
 ]
 
 [[package]]
 name = "web-sys"
-version = "0.3.50"
+version = "0.3.51"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -2447,7 +2548,7 @@ version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "610950904727748ca09682e857f0d6d6437f0ca862f32f9229edba8cec8b2635"
 dependencies = [
- "nom",
+ "nom 5.1.2",
 ]
 
 [[package]]
@@ -2517,7 +2618,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33358e95c77d660f1c7c07f4a93c2bd89768965e844e3c50730bb4b42658df5f"
 dependencies = [
  "anyhow",
- "wast",
+ "wast 21.0.0",
  "wit-writer",
 ]
 
@@ -2535,9 +2636,9 @@ dependencies = [
 
 [[package]]
 name = "wit-walrus"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b532d7bc47d02a08463adc934301efbf67e7b1e1284f8a68edc85d1ca84fa125"
+checksum = "ad559e3e4c6404b2a6a675d44129d62a3836e3b951b90112fa1c5feb852757cd"
 dependencies = [
  "anyhow",
  "id-arena",
@@ -2572,3 +2673,9 @@ dependencies = [
  "wasm-bindgen",
  "web-sys",
 ]
+
+[[package]]
+name = "wyz"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214"
diff --git a/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/default.nix b/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/default.nix
index e566d4cb1c97..ef8affdf2446 100644
--- a/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -1,10 +1,17 @@
-{ rustPlatform, fetchFromGitHub, lib, openssl, pkg-config, stdenv, curl, Security
+{ rustPlatform
+, fetchFromGitHub
+, lib
+, openssl
+, pkg-config
+, stdenv
+, curl
+, Security
 , runCommand
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-bindgen-cli";
-  version = "0.2.73";
+  version = "0.2.74";
 
   src =
     let
@@ -12,9 +19,10 @@ rustPlatform.buildRustPackage rec {
         owner = "rustwasm";
         repo = "wasm-bindgen";
         rev = version;
-        sha256 = "sha256-JrfS9Z/ZqhoZXJxrxMSLpl2NiktTUkjW6q3xN9AU2zw=";
+        hash = "sha256-GsraYfWzUZjFpPpufTyXF0i2llBzjh04iTKio6m4NRA=";
       };
-    in runCommand "source" { } ''
+    in
+    runCommand "source" { } ''
       cp -R ${tarball} $out
       chmod -R +w $out
       cp ${./Cargo.lock} $out/Cargo.lock
@@ -23,7 +31,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security curl ];
   nativeBuildInputs = [ pkg-config ];
 
-  cargoSha256 = "sha256-2UBCcA4eBrSHrJjJdDprsysiOObg2GrC7QtveAydbhk=";
+  cargoHash = "sha256-djeI7kSGRHMpXnsbVlM2CDek02u5tFAsyAdHwbKC0y8=";
   cargoBuildFlags = [ "-p" pname ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/wasm-pack/default.nix b/nixpkgs/pkgs/development/tools/wasm-pack/default.nix
index 9c6d3ed8cb89..590518955121 100644
--- a/nixpkgs/pkgs/development/tools/wasm-pack/default.nix
+++ b/nixpkgs/pkgs/development/tools/wasm-pack/default.nix
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
     ./update-deps.patch
   ];
 
-  cargoSha256 = "0br7r8wz3knzgl3gjpq6z8w33my0yiaq711s1wih9jizhia02y5r";
+  cargoSha256 = "130gqvzpyr055xkqcy1r0y7l5k2dcv7n9zgr4ja7dm7iayzbwwi1";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/wrangler/default.nix b/nixpkgs/pkgs/development/tools/wrangler/default.nix
index 84c335820ad5..bb1f23164858 100644
--- a/nixpkgs/pkgs/development/tools/wrangler/default.nix
+++ b/nixpkgs/pkgs/development/tools/wrangler/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wrangler";
-  version = "1.16.0";
+  version = "1.16.1";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZOkoUMkpp89ON60xgz0ZzL9RAZeHstKTTl/UEc/y3Ls=";
+    sha256 = "sha256-chKmn38yB05NqDvtYWo4EwEIiD6kjy/1OMaMFM4qAA8=";
   };
 
-  cargoSha256 = "sha256-Cppj3sRJzH8UiyM8lXT2dWqsWr83EApYKqYq3nJQZi8=";
+  cargoSha256 = "sha256-pG3ZsRPa/7QRkUik6a987SlGrl3B0thnN3h62JyzdJo=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/xcbuild/platforms.nix b/nixpkgs/pkgs/development/tools/xcbuild/platforms.nix
index e20dc878b535..0108ac8ef697 100644
--- a/nixpkgs/pkgs/development/tools/xcbuild/platforms.nix
+++ b/nixpkgs/pkgs/development/tools/xcbuild/platforms.nix
@@ -1,4 +1,4 @@
-{ runCommand, lib, sdks, xcodePlatform, writeText }:
+{ stdenv, runCommand, lib, sdks, xcodePlatform, writeText }:
 
 let
 
@@ -15,23 +15,23 @@ let
   };
 
   # These files are all based off of Xcode spec fies found in
-  # /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Xcode/Speciications/.
+  # /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Xcode/PrivatePlugIns/IDEOSXSupportCore.ideplugin/Contents/Resources.
 
-  # Based off of the MacOSX Architectures.xcpsec file. All i386 stuff
-  # is removed because NixPkgs only supports darwin-x86_64.
+  # Based off of the "MacOSX Architectures.xcspec" file. All i386 stuff
+  # is removed because NixPkgs only supports darwin-x86_64 and darwin-arm64.
   Architectures = [
     {
       Identifier = "Standard";
       Type = "Architecture";
-      Name = "Standard Architectures (64-bit Intel)";
-      RealArchitectures = [ "x86_64" ];
+      Name = "Standard Architectures (Apple Silicon, 64-bit Intel)";
+      RealArchitectures = [ "arm64" "x86_64" ];
       ArchitectureSetting = "ARCHS_STANDARD";
     }
     {
       Identifier = "Universal";
       Type = "Architecture";
-      Name = "Universal (64-bit Intel)";
-      RealArchitectures = [ "x86_64" ];
+      Name = "Universal (Apple Silicon, 64-bit Intel)";
+      RealArchitectures = [ "arm64" "x86_64" ];
       ArchitectureSetting = "ARCHS_STANDARD_32_64_BIT";
     }
     {
@@ -43,25 +43,25 @@ let
     {
       Identifier = "Standard64bit";
       Type = "Architecture";
-      Name = "64-bit Intel";
-      RealArchitectures = [ "x86_64" ];
+      Name = "Apple Silicon, 64-bit Intel";
+      RealArchitectures = [ "arm64" "x86_64" ];
       ArchitectureSetting = "ARCHS_STANDARD_64_BIT";
     }
     {
-      Identifier = "x86_64";
+      Identifier = if stdenv.isAarch64 then "arm64" else "x86_64";
       Type = "Architecture";
-      Name = "Intel 64-bit";
+      Name = "Apple Silicon or Intel 64-bit";
     }
     {
       Identifier = "Standard_Including_64_bit";
       Type = "Architecture";
       Name = "Standard Architectures (including 64-bit)";
-      RealArchitectures = [ "x86_64" ];
+      RealArchitectures = [ "arm64" "x86_64" ];
       ArchitectureSetting = "ARCHS_STANDARD_INCLUDING_64_BIT";
     }
   ];
 
-  # Based off of the MacOSX Package Types.xcpsec file. Only keep the
+  # Based off of the "MacOSX Package Types.xcspec" file. Only keep the
   # bare minimum needed.
   PackageTypes = [
     {
@@ -169,7 +169,7 @@ let
     }
   ];
 
-  # Based off of the MacOSX Product Types.xcpsec file. All
+  # Based off of the "MacOSX Product Types.xcspec" file. All
   # bundles/wrapper are removed, because we prefer dynamic products in
   # NixPkgs.
   ProductTypes = [
diff --git a/nixpkgs/pkgs/development/tools/xcbuild/wrapper.nix b/nixpkgs/pkgs/development/tools/xcbuild/wrapper.nix
index 4f74b093717b..ca69bbe907df 100644
--- a/nixpkgs/pkgs/development/tools/xcbuild/wrapper.nix
+++ b/nixpkgs/pkgs/development/tools/xcbuild/wrapper.nix
@@ -28,7 +28,7 @@ let
   };
 
   platforms = callPackage ./platforms.nix {
-    inherit sdks xcodePlatform;
+    inherit sdks xcodePlatform stdenv;
   };
 
   xcconfig = writeText "nix.xcconfig" ''
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/fetch-source.nix b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/fetch-source.nix
deleted file mode 100644
index fc9b149887a5..000000000000
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/fetch-source.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ pkgs ? (import ../../../../. {})
-, fetchFromGitHub ? pkgs.fetchFromGitHub
-}:
-
-fetchFromGitHub {
-  owner  = "moretea";
-  repo   = "yarn2nix";
-  rev    = "9e7279edde2a4e0f5ec04c53f5cd64440a27a1ae";
-  sha256 = "0zz2lrwn3y3rb8gzaiwxgz02dvy3s552zc70zvfqc0zh5dhydgn7";
-}
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/generate.sh b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/generate.sh
deleted file mode 100755
index bfe1cda5e719..000000000000
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/generate.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/usr/bin/env bash
-
-###
-### This script runs 'nix-build' with ./fetch-source.nix and copies a subset
-### of the resulting store path into the current working directory.
-###
-### To disable running chmod, you may set the environment
-### variable "FIX_RIGHTS" to "no".
-###
-
-set -euo pipefail
-
-# 'nix-build' command
-NIX_BUILD_BIN="${NIX_BUILD_BIN:-"/usr/bin/env nix-build"}"
-
-# where to place the yarn2nix source
-TARGET_DIR="${TARGET_DIR:-"./yarn2nix"}"
-
-# whether to run 'chmod -R u=rwX,g=rX,o-rwx' on copied files in $TARGET_DIR
-FIX_RIGHTS="${FIX_RIGHTS:-"yes"}"
-
-fetch_git_source() {
-  [[ -f ./fetch-source.nix ]] && ret="$($NIX_BUILD_BIN --no-out-link ./fetch-source.nix)" && ec="$?" || ec="$?"
-  if [[ "$ec" == "0" ]]; then
-    echo "$ret"
-  else
-    printf "error: failed at 'fetch_git_source()' with '%s'" "$ret"
-  fi
-}
-
-result="$(fetch_git_source)"
-if [[ "$result" == "/nix/store"* ]]; then
-  mkdir -p "$TARGET_DIR"
-  cp -Rv \
-    "${result}/"{bin,internal,lib,nix,default.nix,package.json,yarn.nix,yarn.lock,LICENSE.txt} \
-    "$TARGET_DIR"
-  [[ "$FIX_RIGHTS" = "yes" ]] \
-    && chmod -v "u=rwX,g=rX,o-rwx" -R \
-    "$TARGET_DIR/"{bin,internal,lib,nix,default.nix,package.json,yarn.nix,yarn.lock,LICENSE.txt}
-fi
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
index ad7e2738bf59..24ef1e85751e 100644
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
+++ b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
@@ -62,7 +62,7 @@ in rec {
   ];
 
   mkYarnModules = {
-    name, # safe name and version, e.g. testcompany-one-modules-1.0.0
+    name ? "${pname}-${version}", # safe name and version, e.g. testcompany-one-modules-1.0.0
     pname, # original name, e.g @testcompany/one
     version,
     packageJSON,
@@ -228,6 +228,7 @@ in rec {
     yarnNix ? mkYarnNix { inherit yarnLock; },
     yarnFlags ? defaultYarnFlags,
     yarnPreBuild ? "",
+    yarnPostBuild ? "",
     pkgConfig ? {},
     extraBuildInputs ? [],
     publishBinsFor ? null,
@@ -249,6 +250,7 @@ in rec {
       deps = mkYarnModules {
         name = "${safeName}-modules-${version}";
         preBuild = yarnPreBuild;
+        postBuild = yarnPostBuild;
         workspaceDependencies = workspaceDependenciesTransitive;
         inherit packageJSON pname version yarnLock yarnNix yarnFlags pkgConfig;
       };
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/lib/urlToName.js b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/lib/urlToName.js
index bd48b84f22d3..d3c7288a50a4 100644
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/lib/urlToName.js
+++ b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/lib/urlToName.js
@@ -22,8 +22,8 @@ function urlToName(url) {
   }
 
   return url
-    .replace('https://registry.yarnpkg.com/', '') // prevents having long directory names
-    .replace(/[@/:-]/g, '_') // replace @ and : and - characters with underscore
+    .replace(/https:\/\/(.)*(.com)\//g, '') // prevents having long directory names
+    .replace(/[@/%:-]/g, '_') // replace @ and : and - and % characters with underscore
 }
 
 module.exports = urlToName
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.lock b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.lock
index 803f6b3875ab..6e22aa4fe4f1 100644
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.lock
+++ b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.lock
@@ -2,108 +2,113 @@
 # yarn lockfile v1
 
 
-"@babel/code-frame@^7.0.0":
-  version "7.0.0"
-  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8"
-  integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3":
+  version "7.8.3"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e"
+  integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==
   dependencies:
-    "@babel/highlight" "^7.0.0"
+    "@babel/highlight" "^7.8.3"
 
-"@babel/generator@^7.2.2":
-  version "7.2.2"
-  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz#18c816c70962640eab42fe8cae5f3947a5c65ccc"
-  integrity sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg==
+"@babel/generator@^7.9.6":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.6.tgz#5408c82ac5de98cda0d77d8124e99fa1f2170a43"
+  integrity sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==
   dependencies:
-    "@babel/types" "^7.2.2"
+    "@babel/types" "^7.9.6"
     jsesc "^2.5.1"
-    lodash "^4.17.10"
+    lodash "^4.17.13"
     source-map "^0.5.0"
-    trim-right "^1.0.1"
 
-"@babel/helper-function-name@^7.1.0":
-  version "7.1.0"
-  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53"
-  integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==
+"@babel/helper-function-name@^7.9.5":
+  version "7.9.5"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz#2b53820d35275120e1874a82e5aabe1376920a5c"
+  integrity sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==
   dependencies:
-    "@babel/helper-get-function-arity" "^7.0.0"
-    "@babel/template" "^7.1.0"
-    "@babel/types" "^7.0.0"
+    "@babel/helper-get-function-arity" "^7.8.3"
+    "@babel/template" "^7.8.3"
+    "@babel/types" "^7.9.5"
 
-"@babel/helper-get-function-arity@^7.0.0":
-  version "7.0.0"
-  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3"
-  integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==
+"@babel/helper-get-function-arity@^7.8.3":
+  version "7.8.3"
+  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5"
+  integrity sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==
   dependencies:
-    "@babel/types" "^7.0.0"
+    "@babel/types" "^7.8.3"
 
-"@babel/helper-split-export-declaration@^7.0.0":
-  version "7.0.0"
-  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813"
-  integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==
+"@babel/helper-split-export-declaration@^7.8.3":
+  version "7.8.3"
+  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9"
+  integrity sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==
   dependencies:
-    "@babel/types" "^7.0.0"
+    "@babel/types" "^7.8.3"
 
-"@babel/highlight@^7.0.0":
-  version "7.0.0"
-  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4"
-  integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==
+"@babel/helper-validator-identifier@^7.9.0", "@babel/helper-validator-identifier@^7.9.5":
+  version "7.9.5"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80"
+  integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==
+
+"@babel/highlight@^7.8.3":
+  version "7.9.0"
+  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079"
+  integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==
   dependencies:
+    "@babel/helper-validator-identifier" "^7.9.0"
     chalk "^2.0.0"
-    esutils "^2.0.2"
     js-tokens "^4.0.0"
 
-"@babel/parser@^7.0.0", "@babel/parser@^7.2.2", "@babel/parser@^7.2.3":
-  version "7.2.3"
-  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489"
-  integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA==
-
-"@babel/template@^7.1.0":
-  version "7.2.2"
-  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907"
-  integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==
-  dependencies:
-    "@babel/code-frame" "^7.0.0"
-    "@babel/parser" "^7.2.2"
-    "@babel/types" "^7.2.2"
-
-"@babel/traverse@^7.0.0":
-  version "7.2.3"
-  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8"
-  integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==
-  dependencies:
-    "@babel/code-frame" "^7.0.0"
-    "@babel/generator" "^7.2.2"
-    "@babel/helper-function-name" "^7.1.0"
-    "@babel/helper-split-export-declaration" "^7.0.0"
-    "@babel/parser" "^7.2.3"
-    "@babel/types" "^7.2.2"
+"@babel/parser@^7.7.0", "@babel/parser@^7.8.6", "@babel/parser@^7.9.6":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.6.tgz#3b1bbb30dabe600cd72db58720998376ff653bc7"
+  integrity sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==
+
+"@babel/runtime-corejs3@^7.8.3":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.9.6.tgz#67aded13fffbbc2cb93247388cf84d77a4be9a71"
+  integrity sha512-6toWAfaALQjt3KMZQc6fABqZwUDDuWzz+cAfPhqyEnzxvdWOAkjwPNxgF8xlmo7OWLsSjaKjsskpKHRLaMArOA==
+  dependencies:
+    core-js-pure "^3.0.0"
+    regenerator-runtime "^0.13.4"
+
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.4.5":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.6.tgz#a9102eb5cadedf3f31d08a9ecf294af7827ea29f"
+  integrity sha512-64AF1xY3OAkFHqOb9s4jpgk1Mm5vDZ4L3acHvAml+53nO1XbXLuDodsVpO4OIUsmemlUHMxNdYMNJmsvOwLrvQ==
+  dependencies:
+    regenerator-runtime "^0.13.4"
+
+"@babel/template@^7.8.3":
+  version "7.8.6"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b"
+  integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==
+  dependencies:
+    "@babel/code-frame" "^7.8.3"
+    "@babel/parser" "^7.8.6"
+    "@babel/types" "^7.8.6"
+
+"@babel/traverse@^7.7.0":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.6.tgz#5540d7577697bf619cc57b92aa0f1c231a94f442"
+  integrity sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==
+  dependencies:
+    "@babel/code-frame" "^7.8.3"
+    "@babel/generator" "^7.9.6"
+    "@babel/helper-function-name" "^7.9.5"
+    "@babel/helper-split-export-declaration" "^7.8.3"
+    "@babel/parser" "^7.9.6"
+    "@babel/types" "^7.9.6"
     debug "^4.1.0"
     globals "^11.1.0"
-    lodash "^4.17.10"
+    lodash "^4.17.13"
 
-"@babel/types@^7.0.0", "@babel/types@^7.2.2":
-  version "7.2.2"
-  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e"
-  integrity sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg==
+"@babel/types@^7.7.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.5", "@babel/types@^7.9.6":
+  version "7.9.6"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz#2c5502b427251e9de1bd2dff95add646d95cc9f7"
+  integrity sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==
   dependencies:
-    esutils "^2.0.2"
-    lodash "^4.17.10"
+    "@babel/helper-validator-identifier" "^7.9.5"
+    lodash "^4.17.13"
     to-fast-properties "^2.0.0"
 
-"@iamstarkov/listr-update-renderer@0.4.1":
-  version "0.4.1"
-  resolved "https://registry.yarnpkg.com/@iamstarkov/listr-update-renderer/-/listr-update-renderer-0.4.1.tgz#d7c48092a2dcf90fd672b6c8b458649cb350c77e"
-  integrity sha512-IJyxQWsYDEkf8C8QthBn5N8tIUR9V9je6j3sMIpAkonaadjbvxmRC6RAhpa3RKxndhNnU2M6iNbtJwd7usQYIA==
-  dependencies:
-    chalk "^1.1.3"
-    cli-truncate "^0.2.1"
-    elegant-spinner "^1.0.1"
-    figures "^1.7.0"
-    indent-string "^3.0.0"
-    log-symbols "^1.0.2"
-    log-update "^2.3.0"
-    strip-ansi "^3.0.1"
-
 "@samverschueren/stream-to-observable@^0.3.0":
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f"
@@ -129,9 +134,9 @@ acorn-jsx@^3.0.0:
     acorn "^3.0.4"
 
 acorn-jsx@^5.0.0:
-  version "5.0.1"
-  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e"
-  integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe"
+  integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==
 
 acorn@^3.0.4:
   version "3.3.0"
@@ -139,14 +144,14 @@ acorn@^3.0.4:
   integrity sha1-ReN/s56No/JbruP/U2niu18iAXo=
 
 acorn@^5.5.0:
-  version "5.7.3"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
-  integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
+  version "5.7.4"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e"
+  integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
 
-acorn@^6.0.2:
-  version "6.0.5"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.5.tgz#81730c0815f3f3b34d8efa95cb7430965f4d887a"
-  integrity sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg==
+acorn@^6.0.7:
+  version "6.4.1"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
+  integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
 
 ajv-keywords@^2.1.0:
   version "2.1.1"
@@ -163,20 +168,20 @@ ajv@^5.2.3, ajv@^5.3.0:
     fast-json-stable-stringify "^2.0.0"
     json-schema-traverse "^0.3.0"
 
-ajv@^6.5.3, ajv@^6.6.1:
-  version "6.6.2"
-  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.6.2.tgz#caceccf474bf3fc3ce3b147443711a24063cc30d"
-  integrity sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==
+ajv@^6.10.2, ajv@^6.9.1:
+  version "6.12.2"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd"
+  integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==
   dependencies:
-    fast-deep-equal "^2.0.1"
+    fast-deep-equal "^3.1.1"
     fast-json-stable-stringify "^2.0.0"
     json-schema-traverse "^0.4.1"
     uri-js "^4.2.2"
 
-ansi-escapes@^3.0.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30"
-  integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==
+ansi-escapes@^3.0.0, ansi-escapes@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
+  integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
 
 ansi-regex@^2.0.0:
   version "2.1.1"
@@ -188,10 +193,10 @@ ansi-regex@^3.0.0:
   resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
   integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
 
-ansi-regex@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9"
-  integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==
+ansi-regex@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997"
+  integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==
 
 ansi-styles@^2.2.1:
   version "2.2.1"
@@ -240,13 +245,14 @@ arr-union@^3.1.0:
   resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
   integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
 
-array-includes@^3.0.3:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
-  integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=
+array-includes@^3.0.3, array-includes@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348"
+  integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==
   dependencies:
-    define-properties "^1.1.2"
-    es-abstract "^1.7.0"
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0"
+    is-string "^1.0.5"
 
 array-union@^1.0.1:
   version "1.0.2"
@@ -265,6 +271,14 @@ array-unique@^0.3.2:
   resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
   integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
 
+array.prototype.flat@^1.2.1:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b"
+  integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+
 arrify@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
@@ -285,17 +299,15 @@ astral-regex@^1.0.0:
   resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
   integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==
 
-atob@^2.1.1:
+atob@^2.1.2:
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
   integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
 
-axobject-query@^2.0.1:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9"
-  integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==
-  dependencies:
-    ast-types-flow "0.0.7"
+axobject-query@^2.0.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz#2bdffc0371e643e5f03ba99065d5179b9ca79799"
+  integrity sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ==
 
 babel-code-frame@^6.22.0:
   version "6.26.0"
@@ -307,16 +319,16 @@ babel-code-frame@^6.22.0:
     js-tokens "^3.0.2"
 
 babel-eslint@^10.0.1:
-  version "10.0.1"
-  resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed"
-  integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ==
+  version "10.1.0"
+  resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
+  integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==
   dependencies:
     "@babel/code-frame" "^7.0.0"
-    "@babel/parser" "^7.0.0"
-    "@babel/traverse" "^7.0.0"
-    "@babel/types" "^7.0.0"
-    eslint-scope "3.7.1"
+    "@babel/parser" "^7.7.0"
+    "@babel/traverse" "^7.7.0"
+    "@babel/types" "^7.7.0"
     eslint-visitor-keys "^1.0.0"
+    resolve "^1.12.0"
 
 babel-runtime@^6.23.0, babel-runtime@^6.26.0:
   version "6.26.0"
@@ -378,11 +390,6 @@ buffer-from@^1.0.0:
   resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
   integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
 
-builtin-modules@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
-  integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=
-
 cache-base@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
@@ -430,9 +437,9 @@ callsites@^2.0.0:
   integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=
 
 callsites@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3"
-  integrity sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
+  integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
 
 camelcase-keys@^4.1.0:
   version "4.2.0"
@@ -468,10 +475,10 @@ chalk@^1.0.0, chalk@^1.1.3:
     strip-ansi "^3.0.0"
     supports-color "^2.0.0"
 
-chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.1, chalk@^2.4.1:
-  version "2.4.1"
-  resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e"
-  integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==
+chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+  integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
   dependencies:
     ansi-styles "^3.2.1"
     escape-string-regexp "^1.0.5"
@@ -523,9 +530,9 @@ cli-truncate@^0.2.1:
     string-width "^1.0.1"
 
 cli-width@^2.0.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
-  integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
+  integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
 
 cliui@^3.2.0:
   version "3.2.0"
@@ -567,9 +574,9 @@ color-name@1.1.3:
   integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
 
 commander@^2.11.0, commander@^2.14.1, commander@^2.9.0:
-  version "2.19.0"
-  resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a"
-  integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==
+  version "2.20.3"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
+  integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
 
 common-tags@^1.4.0:
   version "1.8.0"
@@ -577,9 +584,9 @@ common-tags@^1.4.0:
   integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==
 
 component-emitter@^1.2.1:
-  version "1.2.1"
-  resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
-  integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
+  integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
 
 concat-map@0.0.1:
   version "0.0.1"
@@ -596,6 +603,11 @@ concat-stream@^1.6.0:
     readable-stream "^2.2.2"
     typedarray "^0.0.6"
 
+confusing-browser-globals@^1.0.5:
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd"
+  integrity sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==
+
 contains-path@^0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
@@ -606,33 +618,29 @@ copy-descriptor@^0.1.0:
   resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
   integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
 
+core-js-pure@^3.0.0:
+  version "3.6.5"
+  resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz#c79e75f5e38dbc85a662d91eea52b8256d53b813"
+  integrity sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA==
+
 core-js@^2.4.0:
-  version "2.6.1"
-  resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.1.tgz#87416ae817de957a3f249b3b5ca475d4aaed6042"
-  integrity sha512-L72mmmEayPJBejKIWe2pYtGis5r0tQ5NaJekdhyXgeMQTpJoBsH0NL4ElY2LfSoV15xeQWKQ+XTTOZdyero5Xg==
+  version "2.6.11"
+  resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c"
+  integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==
 
 core-util-is@~1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
   integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
 
-cosmiconfig@5.0.6:
-  version "5.0.6"
-  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39"
-  integrity sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ==
-  dependencies:
-    is-directory "^0.3.1"
-    js-yaml "^3.9.0"
-    parse-json "^4.0.0"
-
-cosmiconfig@^5.0.7:
-  version "5.0.7"
-  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz#39826b292ee0d78eda137dfa3173bd1c21a43b04"
-  integrity sha512-PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA==
+cosmiconfig@^5.0.7, cosmiconfig@^5.2.0:
+  version "5.2.1"
+  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a"
+  integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==
   dependencies:
     import-fresh "^2.0.0"
     is-directory "^0.3.1"
-    js-yaml "^3.9.0"
+    js-yaml "^3.13.1"
     parse-json "^4.0.0"
 
 cross-spawn@^5.0.1, cross-spawn@^5.1.0:
@@ -656,16 +664,16 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5:
     which "^1.2.9"
 
 damerau-levenshtein@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514"
-  integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz#143c1641cb3d85c60c32329e26899adea8701791"
+  integrity sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==
 
 date-fns@^1.27.2:
   version "1.30.1"
   resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c"
   integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==
 
-debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
+debug@^2.2.0, debug@^2.3.3, debug@^2.6.9:
   version "2.6.9"
   resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
   integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
@@ -702,9 +710,16 @@ dedent@^0.7.0:
   integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=
 
 deep-equal@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
-  integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a"
+  integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==
+  dependencies:
+    is-arguments "^1.0.4"
+    is-date-object "^1.0.1"
+    is-regex "^1.0.4"
+    object-is "^1.0.1"
+    object-keys "^1.1.1"
+    regexp.prototype.flags "^1.2.0"
 
 deep-is@~0.1.3:
   version "0.1.3"
@@ -753,9 +768,9 @@ del@^3.0.0:
     rimraf "^2.2.8"
 
 dlv@^1.1.0:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.2.tgz#270f6737b30d25b6657a7e962c784403f85137e5"
-  integrity sha512-xxD4VSH67GbRvSGUrckvha94RD7hjgOH7rqGxiytLpkaeMvixOHFZTGFK6EkIm3T761OVHT8ABHmGkq9gXgu6Q==
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
+  integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
 
 docopt@^0.6.2:
   version "0.6.2"
@@ -777,20 +792,27 @@ doctrine@^2.1.0:
   dependencies:
     esutils "^2.0.2"
 
+doctrine@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
+  integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
+  dependencies:
+    esutils "^2.0.2"
+
 elegant-spinner@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e"
   integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=
 
-emoji-regex@^6.5.1:
-  version "6.5.1"
-  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2"
-  integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==
+emoji-regex@^7.0.1, emoji-regex@^7.0.2:
+  version "7.0.3"
+  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
+  integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==
 
 end-of-stream@^1.1.0:
-  version "1.4.1"
-  resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
-  integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==
+  version "1.4.4"
+  resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
+  integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
   dependencies:
     once "^1.4.0"
 
@@ -801,22 +823,27 @@ error-ex@^1.2.0, error-ex@^1.3.1:
   dependencies:
     is-arrayish "^0.2.1"
 
-es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.7.0:
-  version "1.13.0"
-  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9"
-  integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==
+es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.5:
+  version "1.17.5"
+  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9"
+  integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==
   dependencies:
-    es-to-primitive "^1.2.0"
+    es-to-primitive "^1.2.1"
     function-bind "^1.1.1"
     has "^1.0.3"
-    is-callable "^1.1.4"
-    is-regex "^1.0.4"
-    object-keys "^1.0.12"
+    has-symbols "^1.0.1"
+    is-callable "^1.1.5"
+    is-regex "^1.0.5"
+    object-inspect "^1.7.0"
+    object-keys "^1.1.1"
+    object.assign "^4.1.0"
+    string.prototype.trimleft "^2.1.1"
+    string.prototype.trimright "^2.1.1"
 
-es-to-primitive@^1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
-  integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
+es-to-primitive@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
+  integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
   dependencies:
     is-callable "^1.1.4"
     is-date-object "^1.0.1"
@@ -827,28 +854,28 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.4, escape-string-regexp@^
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
   integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
 
-eslint-config-airbnb-base@^13.1.0:
-  version "13.1.0"
-  resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz#b5a1b480b80dfad16433d6c4ad84e6605052c05c"
-  integrity sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw==
+eslint-config-airbnb-base@^13.2.0:
+  version "13.2.0"
+  resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz#f6ea81459ff4dec2dda200c35f1d8f7419d57943"
+  integrity sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w==
   dependencies:
-    eslint-restricted-globals "^0.1.1"
+    confusing-browser-globals "^1.0.5"
     object.assign "^4.1.0"
-    object.entries "^1.0.4"
+    object.entries "^1.1.0"
 
 eslint-config-airbnb@^17.1.0:
-  version "17.1.0"
-  resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.0.tgz#3964ed4bc198240315ff52030bf8636f42bc4732"
-  integrity sha512-R9jw28hFfEQnpPau01NO5K/JWMGLi6aymiF6RsnMURjTk+MqZKllCqGK/0tOvHkPi/NWSSOU2Ced/GX++YxLnw==
+  version "17.1.1"
+  resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz#2272e0b86bb1e2b138cdf88d07a3b6f4cda3d626"
+  integrity sha512-xCu//8a/aWqagKljt+1/qAM62BYZeNq04HmdevG5yUGWpja0I/xhqd6GdLRch5oetEGFiJAnvtGuTEAese53Qg==
   dependencies:
-    eslint-config-airbnb-base "^13.1.0"
+    eslint-config-airbnb-base "^13.2.0"
     object.assign "^4.1.0"
-    object.entries "^1.0.4"
+    object.entries "^1.1.0"
 
 eslint-config-prettier@^3.3.0:
-  version "3.3.0"
-  resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-3.3.0.tgz#41afc8d3b852e757f06274ed6c44ca16f939a57d"
-  integrity sha512-Bc3bh5bAcKNvs3HOpSi6EfGA2IIp7EzWcg2tS4vP7stnXu/J1opihHDM7jI9JCIckyIDTgZLSWn7J3HY0j2JfA==
+  version "3.6.0"
+  resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-3.6.0.tgz#8ca3ffac4bd6eeef623a0651f9d754900e3ec217"
+  integrity sha512-ixJ4U3uTLXwJts4rmSVW/lMXjlGwCijhBJHk8iVqKKSifeI0qgFEfWl8L63isfc8Od7EiBALF6BX3jKLluf/jQ==
   dependencies:
     get-stdin "^6.0.0"
 
@@ -857,59 +884,62 @@ eslint-config-standard@^12.0.0:
   resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz#638b4c65db0bd5a41319f96bba1f15ddad2107d9"
   integrity sha512-COUz8FnXhqFitYj4DTqHzidjIL/t4mumGZto5c7DrBpvWoie+Sn3P4sLEzUGeYhRElWuFEf8K1S1EfvD1vixCQ==
 
-eslint-import-resolver-node@^0.3.1:
-  version "0.3.2"
-  resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a"
-  integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==
+eslint-import-resolver-node@^0.3.2:
+  version "0.3.3"
+  resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz#dbaa52b6b2816b50bc6711af75422de808e98404"
+  integrity sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg==
   dependencies:
     debug "^2.6.9"
-    resolve "^1.5.0"
+    resolve "^1.13.1"
 
-eslint-module-utils@^2.2.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746"
-  integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y=
+eslint-module-utils@^2.4.1:
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6"
+  integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==
   dependencies:
-    debug "^2.6.8"
-    pkg-dir "^1.0.0"
+    debug "^2.6.9"
+    pkg-dir "^2.0.0"
 
 eslint-plugin-es@^1.3.1:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6"
-  integrity sha512-XfFmgFdIUDgvaRAlaXUkxrRg5JSADoRC8IkKLc/cISeR3yHVMefFHQZpcyXXEUUPHfy5DwviBcrfqlyqEwlQVw==
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.1.tgz#12acae0f4953e76ba444bfd1b2271081ac620998"
+  integrity sha512-5fa/gR2yR3NxQf+UXkeLeP8FBBl6tSgdrAz1+cF84v1FMM4twGwQoqTnn+QxFLcPOrF4pdKEJKDB/q9GoyJrCA==
   dependencies:
-    eslint-utils "^1.3.0"
+    eslint-utils "^1.4.2"
     regexpp "^2.0.1"
 
 eslint-plugin-import@^2.14.0:
-  version "2.14.0"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8"
-  integrity sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g==
+  version "2.20.2"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz#91fc3807ce08be4837141272c8b99073906e588d"
+  integrity sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==
   dependencies:
+    array-includes "^3.0.3"
+    array.prototype.flat "^1.2.1"
     contains-path "^0.1.0"
-    debug "^2.6.8"
+    debug "^2.6.9"
     doctrine "1.5.0"
-    eslint-import-resolver-node "^0.3.1"
-    eslint-module-utils "^2.2.0"
-    has "^1.0.1"
-    lodash "^4.17.4"
-    minimatch "^3.0.3"
+    eslint-import-resolver-node "^0.3.2"
+    eslint-module-utils "^2.4.1"
+    has "^1.0.3"
+    minimatch "^3.0.4"
+    object.values "^1.1.0"
     read-pkg-up "^2.0.0"
-    resolve "^1.6.0"
+    resolve "^1.12.0"
 
 eslint-plugin-jsx-a11y@^6.1.2:
-  version "6.1.2"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz#69bca4890b36dcf0fe16dd2129d2d88b98f33f88"
-  integrity sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw==
+  version "6.2.3"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz#b872a09d5de51af70a97db1eea7dc933043708aa"
+  integrity sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg==
   dependencies:
+    "@babel/runtime" "^7.4.5"
     aria-query "^3.0.0"
     array-includes "^3.0.3"
     ast-types-flow "^0.0.7"
-    axobject-query "^2.0.1"
+    axobject-query "^2.0.2"
     damerau-levenshtein "^1.0.4"
-    emoji-regex "^6.5.1"
+    emoji-regex "^7.0.2"
     has "^1.0.3"
-    jsx-ast-utils "^2.0.1"
+    jsx-ast-utils "^2.2.1"
 
 eslint-plugin-node@^8.0.0:
   version "8.0.1"
@@ -924,40 +954,31 @@ eslint-plugin-node@^8.0.0:
     semver "^5.5.0"
 
 eslint-plugin-promise@^4.0.1:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz#2d074b653f35a23d1ba89d8e976a985117d1c6a2"
-  integrity sha512-Si16O0+Hqz1gDHsys6RtFRrW7cCTB6P7p3OJmKp3Y3dxpQE2qwOA7d3xnV+0mBmrPoi0RBnxlCKvqu70te6wjg==
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a"
+  integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==
 
 eslint-plugin-react@^7.12.2:
-  version "7.12.3"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.12.3.tgz#b9ca4cd7cd3f5d927db418a1950366a12d4568fd"
-  integrity sha512-WTIA3cS8OzkPeCi4KWuPmjR33lgG9r9Y/7RmnLTRw08MZKgAfnK/n3BO4X0S67MPkVLazdfCNT/XWqcDu4BLTA==
+  version "7.20.0"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.0.tgz#f98712f0a5e57dfd3e5542ef0604b8739cd47be3"
+  integrity sha512-rqe1abd0vxMjmbPngo4NaYxTcR3Y4Hrmc/jg4T+sYz63yqlmJRknpEQfmWY+eDWPuMmix6iUIK+mv0zExjeLgA==
   dependencies:
-    array-includes "^3.0.3"
+    array-includes "^3.1.1"
     doctrine "^2.1.0"
     has "^1.0.3"
-    jsx-ast-utils "^2.0.1"
-    object.fromentries "^2.0.0"
-    prop-types "^15.6.2"
-    resolve "^1.9.0"
+    jsx-ast-utils "^2.2.3"
+    object.entries "^1.1.1"
+    object.fromentries "^2.0.2"
+    object.values "^1.1.1"
+    prop-types "^15.7.2"
+    resolve "^1.15.1"
+    string.prototype.matchall "^4.0.2"
+    xregexp "^4.3.0"
 
 eslint-plugin-standard@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz#f845b45109c99cd90e77796940a344546c8f6b5c"
-  integrity sha512-OwxJkR6TQiYMmt1EsNRMe5qG3GsbjlcOhbGUBY4LtavF9DsLaTcoR+j2Tdjqi23oUwKNUqX7qcn5fPStafMdlA==
-
-eslint-restricted-globals@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7"
-  integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=
-
-eslint-scope@3.7.1:
-  version "3.7.1"
-  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
-  integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=
-  dependencies:
-    esrecurse "^4.1.0"
-    estraverse "^4.1.1"
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz#ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4"
+  integrity sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==
 
 eslint-scope@^3.7.1:
   version "3.7.3"
@@ -967,23 +988,25 @@ eslint-scope@^3.7.1:
     esrecurse "^4.1.0"
     estraverse "^4.1.1"
 
-eslint-scope@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172"
-  integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==
+eslint-scope@^4.0.3:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848"
+  integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==
   dependencies:
     esrecurse "^4.1.0"
     estraverse "^4.1.1"
 
-eslint-utils@^1.3.0, eslint-utils@^1.3.1:
-  version "1.3.1"
-  resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512"
-  integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==
+eslint-utils@^1.3.1, eslint-utils@^1.4.2:
+  version "1.4.3"
+  resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f"
+  integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==
+  dependencies:
+    eslint-visitor-keys "^1.1.0"
 
-eslint-visitor-keys@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
-  integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
+eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
+  integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
 
 eslint@^4.0.0, eslint@^4.5.0:
   version "4.19.1"
@@ -1030,46 +1053,45 @@ eslint@^4.0.0, eslint@^4.5.0:
     text-table "~0.2.0"
 
 eslint@^5.11.1:
-  version "5.12.0"
-  resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.12.0.tgz#fab3b908f60c52671fb14e996a450b96c743c859"
-  integrity sha512-LntwyPxtOHrsJdcSwyQKVtHofPHdv+4+mFwEe91r2V13vqpM8yLr7b1sW+Oo/yheOPkWYsYlYJCkzlFAt8KV7g==
+  version "5.16.0"
+  resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea"
+  integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==
   dependencies:
     "@babel/code-frame" "^7.0.0"
-    ajv "^6.5.3"
+    ajv "^6.9.1"
     chalk "^2.1.0"
     cross-spawn "^6.0.5"
     debug "^4.0.1"
-    doctrine "^2.1.0"
-    eslint-scope "^4.0.0"
+    doctrine "^3.0.0"
+    eslint-scope "^4.0.3"
     eslint-utils "^1.3.1"
     eslint-visitor-keys "^1.0.0"
-    espree "^5.0.0"
+    espree "^5.0.1"
     esquery "^1.0.1"
     esutils "^2.0.2"
-    file-entry-cache "^2.0.0"
+    file-entry-cache "^5.0.1"
     functional-red-black-tree "^1.0.1"
     glob "^7.1.2"
     globals "^11.7.0"
     ignore "^4.0.6"
     import-fresh "^3.0.0"
     imurmurhash "^0.1.4"
-    inquirer "^6.1.0"
-    js-yaml "^3.12.0"
+    inquirer "^6.2.2"
+    js-yaml "^3.13.0"
     json-stable-stringify-without-jsonify "^1.0.1"
     levn "^0.3.0"
-    lodash "^4.17.5"
+    lodash "^4.17.11"
     minimatch "^3.0.4"
     mkdirp "^0.5.1"
     natural-compare "^1.4.0"
     optionator "^0.8.2"
     path-is-inside "^1.0.2"
-    pluralize "^7.0.0"
     progress "^2.0.0"
     regexpp "^2.0.1"
     semver "^5.5.1"
     strip-ansi "^4.0.0"
     strip-json-comments "^2.0.1"
-    table "^5.0.2"
+    table "^5.2.3"
     text-table "^0.2.0"
 
 espree@^3.5.2, espree@^3.5.4:
@@ -1080,12 +1102,12 @@ espree@^3.5.2, espree@^3.5.4:
     acorn "^5.5.0"
     acorn-jsx "^3.0.0"
 
-espree@^5.0.0:
-  version "5.0.0"
-  resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.0.tgz#fc7f984b62b36a0f543b13fb9cd7b9f4a7f5b65c"
-  integrity sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==
+espree@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a"
+  integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==
   dependencies:
-    acorn "^6.0.2"
+    acorn "^6.0.7"
     acorn-jsx "^5.0.0"
     eslint-visitor-keys "^1.0.0"
 
@@ -1095,11 +1117,11 @@ esprima@^4.0.0:
   integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
 
 esquery@^1.0.0, esquery@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708"
-  integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57"
+  integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==
   dependencies:
-    estraverse "^4.0.0"
+    estraverse "^5.1.0"
 
 esrecurse@^4.1.0:
   version "4.2.1"
@@ -1108,15 +1130,20 @@ esrecurse@^4.1.0:
   dependencies:
     estraverse "^4.1.0"
 
-estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1:
-  version "4.2.0"
-  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
-  integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=
+estraverse@^4.1.0, estraverse@^4.1.1:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
+  integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
+
+estraverse@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642"
+  integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==
 
 esutils@^2.0.2:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
-  integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
+  integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
 
 execa@^0.7.0:
   version "0.7.0"
@@ -1181,10 +1208,10 @@ external-editor@^2.0.4:
     iconv-lite "^0.4.17"
     tmp "^0.0.33"
 
-external-editor@^3.0.0:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27"
-  integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==
+external-editor@^3.0.3:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495"
+  integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==
   dependencies:
     chardet "^0.7.0"
     iconv-lite "^0.4.24"
@@ -1209,17 +1236,17 @@ fast-deep-equal@^1.0.0:
   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614"
   integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=
 
-fast-deep-equal@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
-  integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
+fast-deep-equal@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4"
+  integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==
 
 fast-json-stable-stringify@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
-  integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+  integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
 
-fast-levenshtein@~2.0.4:
+fast-levenshtein@~2.0.6:
   version "2.0.6"
   resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
   integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
@@ -1247,6 +1274,13 @@ file-entry-cache@^2.0.0:
     flat-cache "^1.2.1"
     object-assign "^4.0.1"
 
+file-entry-cache@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c"
+  integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==
+  dependencies:
+    flat-cache "^2.0.1"
+
 fill-range@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
@@ -1257,19 +1291,6 @@ fill-range@^4.0.0:
     repeat-string "^1.6.1"
     to-regex-range "^2.1.0"
 
-find-parent-dir@^0.3.0:
-  version "0.3.0"
-  resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54"
-  integrity sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=
-
-find-up@^1.0.0:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
-  integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
-  dependencies:
-    path-exists "^2.0.0"
-    pinkie-promise "^2.0.0"
-
 find-up@^2.0.0, find-up@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
@@ -1294,6 +1315,25 @@ flat-cache@^1.2.1:
     rimraf "~2.6.2"
     write "^0.2.1"
 
+flat-cache@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0"
+  integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==
+  dependencies:
+    flatted "^2.0.0"
+    rimraf "2.6.3"
+    write "1.0.3"
+
+flatted@^2.0.0:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
+  integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
+
+fn-name@~2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz#5214d7537a4d06a4a301c0cc262feb84188002e7"
+  integrity sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=
+
 for-in@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
@@ -1336,9 +1376,9 @@ get-caller-file@^1.0.1:
   integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
 
 get-own-enumerable-property-symbols@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203"
-  integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg==
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664"
+  integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==
 
 get-stdin@^5.0.1:
   version "5.0.1"
@@ -1368,9 +1408,9 @@ get-value@^2.0.3, get-value@^2.0.6:
   integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
 
 glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3:
-  version "7.1.3"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
-  integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
+  version "7.1.6"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
+  integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
   dependencies:
     fs.realpath "^1.0.0"
     inflight "^1.0.4"
@@ -1392,9 +1432,9 @@ glob@~7.0.6:
     path-is-absolute "^1.0.0"
 
 globals@^11.0.1, globals@^11.1.0, globals@^11.7.0:
-  version "11.9.0"
-  resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249"
-  integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==
+  version "11.12.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
+  integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
 
 globby@^6.1.0:
   version "6.1.0"
@@ -1408,9 +1448,9 @@ globby@^6.1.0:
     pinkie-promise "^2.0.0"
 
 graceful-fs@^4.1.2:
-  version "4.1.15"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
-  integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
+  version "4.2.4"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
+  integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
 
 has-ansi@^2.0.0:
   version "2.0.0"
@@ -1429,10 +1469,10 @@ has-flag@^3.0.0:
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
   integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
 
-has-symbols@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
-  integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
+has-symbols@^1.0.0, has-symbols@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
+  integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
 
 has-value@^0.3.1:
   version "0.3.1"
@@ -1465,7 +1505,7 @@ has-values@^1.0.0:
     is-number "^3.0.0"
     kind-of "^4.0.0"
 
-has@^1.0.1, has@^1.0.3:
+has@^1.0.3:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
   integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
@@ -1473,9 +1513,9 @@ has@^1.0.1, has@^1.0.3:
     function-bind "^1.1.1"
 
 hosted-git-info@^2.1.4:
-  version "2.7.1"
-  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
-  integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==
+  version "2.8.8"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488"
+  integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==
 
 husky@^1.3.1:
   version "1.3.1"
@@ -1511,9 +1551,9 @@ ignore@^4.0.6:
   integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
 
 ignore@^5.0.2:
-  version "5.0.4"
-  resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.0.4.tgz#33168af4a21e99b00c5d41cbadb6a6cb49903a45"
-  integrity sha512-WLsTMEhsQuXpCiG173+f3aymI43SXa+fB1rSfbzyP4GkPP+ZFVuO0/3sFUGNBtifisPeDcl/uD/Y2NxZ7xFq4g==
+  version "5.1.4"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf"
+  integrity sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==
 
 import-fresh@^2.0.0:
   version "2.0.0"
@@ -1524,9 +1564,9 @@ import-fresh@^2.0.0:
     resolve-from "^3.0.0"
 
 import-fresh@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz#a3d897f420cab0e671236897f75bc14b4885c390"
-  integrity sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66"
+  integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==
   dependencies:
     parent-module "^1.0.0"
     resolve-from "^4.0.0"
@@ -1550,9 +1590,9 @@ inflight@^1.0.4:
     wrappy "1"
 
 inherits@2, inherits@^2.0.3, inherits@~2.0.3:
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-  integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+  integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
 
 inquirer@^3.0.6:
   version "3.3.0"
@@ -1574,25 +1614,34 @@ inquirer@^3.0.6:
     strip-ansi "^4.0.0"
     through "^2.3.6"
 
-inquirer@^6.1.0:
-  version "6.2.1"
-  resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.1.tgz#9943fc4882161bdb0b0c9276769c75b32dbfcd52"
-  integrity sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==
+inquirer@^6.2.2:
+  version "6.5.2"
+  resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca"
+  integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==
   dependencies:
-    ansi-escapes "^3.0.0"
-    chalk "^2.0.0"
+    ansi-escapes "^3.2.0"
+    chalk "^2.4.2"
     cli-cursor "^2.1.0"
     cli-width "^2.0.0"
-    external-editor "^3.0.0"
+    external-editor "^3.0.3"
     figures "^2.0.0"
-    lodash "^4.17.10"
+    lodash "^4.17.12"
     mute-stream "0.0.7"
     run-async "^2.2.0"
-    rxjs "^6.1.0"
+    rxjs "^6.4.0"
     string-width "^2.1.0"
-    strip-ansi "^5.0.0"
+    strip-ansi "^5.1.0"
     through "^2.3.6"
 
+internal-slot@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz#9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3"
+  integrity sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==
+  dependencies:
+    es-abstract "^1.17.0-next.1"
+    has "^1.0.3"
+    side-channel "^1.0.2"
+
 invert-kv@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
@@ -1612,6 +1661,11 @@ is-accessor-descriptor@^1.0.0:
   dependencies:
     kind-of "^6.0.0"
 
+is-arguments@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3"
+  integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==
+
 is-arrayish@^0.2.1:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
@@ -1622,17 +1676,10 @@ is-buffer@^1.1.5:
   resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
   integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
 
-is-builtin-module@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
-  integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74=
-  dependencies:
-    builtin-modules "^1.0.0"
-
-is-callable@^1.1.4:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
-  integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
+is-callable@^1.1.4, is-callable@^1.1.5:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab"
+  integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==
 
 is-ci@^2.0.0:
   version "2.0.0"
@@ -1656,9 +1703,9 @@ is-data-descriptor@^1.0.0:
     kind-of "^6.0.0"
 
 is-date-object@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
-  integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e"
+  integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==
 
 is-descriptor@^0.1.0:
   version "0.1.6"
@@ -1713,9 +1760,9 @@ is-fullwidth-code-point@^2.0.0:
   integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
 
 is-glob@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0"
-  integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
+  integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
   dependencies:
     is-extglob "^2.1.1"
 
@@ -1757,7 +1804,7 @@ is-path-inside@^1.0.0:
   dependencies:
     path-is-inside "^1.0.1"
 
-is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
+is-plain-object@^2.0.3, is-plain-object@^2.0.4:
   version "2.0.4"
   resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
   integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
@@ -1765,16 +1812,16 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
     isobject "^3.0.1"
 
 is-promise@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
-  integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1"
+  integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==
 
-is-regex@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
-  integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
+is-regex@^1.0.4, is-regex@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae"
+  integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==
   dependencies:
-    has "^1.0.1"
+    has "^1.0.3"
 
 is-regexp@^1.0.0:
   version "1.0.0"
@@ -1791,12 +1838,17 @@ is-stream@^1.1.0:
   resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
   integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
 
+is-string@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6"
+  integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==
+
 is-symbol@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
-  integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937"
+  integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==
   dependencies:
-    has-symbols "^1.0.0"
+    has-symbols "^1.0.1"
 
 is-windows@^1.0.2:
   version "1.0.2"
@@ -1825,21 +1877,6 @@ isobject@^3.0.0, isobject@^3.0.1:
   resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
   integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
 
-jest-get-type@^22.1.0:
-  version "22.4.3"
-  resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4"
-  integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==
-
-jest-validate@^23.5.0:
-  version "23.6.0"
-  resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474"
-  integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A==
-  dependencies:
-    chalk "^2.0.1"
-    jest-get-type "^22.1.0"
-    leven "^2.1.0"
-    pretty-format "^23.6.0"
-
 "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
@@ -1850,10 +1887,10 @@ js-tokens@^3.0.2:
   resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
   integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
 
-js-yaml@^3.12.0, js-yaml@^3.9.0, js-yaml@^3.9.1:
-  version "3.12.1"
-  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.1.tgz#295c8632a18a23e054cf5c9d3cecafe678167600"
-  integrity sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==
+js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.9.1:
+  version "3.13.1"
+  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
+  integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
   dependencies:
     argparse "^1.0.7"
     esprima "^4.0.0"
@@ -1883,12 +1920,13 @@ json-stable-stringify-without-jsonify@^1.0.1:
   resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
   integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
 
-jsx-ast-utils@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f"
-  integrity sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=
+jsx-ast-utils@^2.2.1, jsx-ast-utils@^2.2.3:
+  version "2.2.3"
+  resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f"
+  integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA==
   dependencies:
     array-includes "^3.0.3"
+    object.assign "^4.1.0"
 
 kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
   version "3.2.2"
@@ -1910,9 +1948,9 @@ kind-of@^5.0.0:
   integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
 
 kind-of@^6.0.0, kind-of@^6.0.2:
-  version "6.0.2"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
-  integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
+  integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
 
 lcid@^1.0.0:
   version "1.0.0"
@@ -1921,11 +1959,6 @@ lcid@^1.0.0:
   dependencies:
     invert-kv "^1.0.0"
 
-leven@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580"
-  integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA=
-
 levn@^0.3.0, levn@~0.3.0:
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
@@ -1935,25 +1968,23 @@ levn@^0.3.0, levn@~0.3.0:
     type-check "~0.3.2"
 
 lint-staged@^8.1.0:
-  version "8.1.0"
-  resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.1.0.tgz#dbc3ae2565366d8f20efb9f9799d076da64863f2"
-  integrity sha512-yfSkyJy7EuVsaoxtUSEhrD81spdJOe/gMTGea3XaV7HyoRhTb9Gdlp6/JppRZERvKSEYXP9bjcmq6CA5oL2lYQ==
+  version "8.2.1"
+  resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.2.1.tgz#752fcf222d9d28f323a3b80f1e668f3654ff221f"
+  integrity sha512-n0tDGR/rTCgQNwXnUf/eWIpPNddGWxC32ANTNYsj2k02iZb7Cz5ox2tytwBu+2r0zDXMEMKw7Y9OD/qsav561A==
   dependencies:
-    "@iamstarkov/listr-update-renderer" "0.4.1"
     chalk "^2.3.1"
     commander "^2.14.1"
-    cosmiconfig "5.0.6"
+    cosmiconfig "^5.2.0"
     debug "^3.1.0"
     dedent "^0.7.0"
     del "^3.0.0"
     execa "^1.0.0"
-    find-parent-dir "^0.3.0"
     g-status "^2.0.2"
     is-glob "^4.0.0"
     is-windows "^1.0.2"
-    jest-validate "^23.5.0"
     listr "^0.14.2"
-    lodash "^4.17.5"
+    listr-update-renderer "^0.5.0"
+    lodash "^4.17.11"
     log-symbols "^2.2.0"
     micromatch "^3.1.8"
     npm-which "^3.0.1"
@@ -1964,6 +1995,7 @@ lint-staged@^8.1.0:
     staged-git-files "1.1.2"
     string-argv "^0.0.2"
     stringify-object "^3.2.2"
+    yup "^0.27.0"
 
 listr-silent-renderer@^1.1.1:
   version "1.1.1"
@@ -2041,19 +2073,19 @@ lodash.memoize@^4.1.2:
   integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
 
 lodash.merge@^4.6.0:
-  version "4.6.1"
-  resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.1.tgz#adc25d9cb99b9391c59624f379fbba60d7111d54"
-  integrity sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==
+  version "4.6.2"
+  resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
+  integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
 
 lodash.unescape@4.0.1:
   version "4.0.1"
   resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c"
   integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw=
 
-lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.3.0:
-  version "4.17.11"
-  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
-  integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
+lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.4, lodash@^4.3.0:
+  version "4.17.15"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
+  integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==
 
 log-symbols@^1.0.2:
   version "1.0.2"
@@ -2087,11 +2119,11 @@ loglevel-colored-level-prefix@^1.0.0:
     loglevel "^1.4.1"
 
 loglevel@^1.4.1:
-  version "1.6.1"
-  resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa"
-  integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=
+  version "1.6.8"
+  resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.8.tgz#8a25fb75d092230ecd4457270d80b54e28011171"
+  integrity sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==
 
-loose-envify@^1.3.1:
+loose-envify@^1.4.0:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
   integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
@@ -2184,37 +2216,32 @@ mimic-fn@^1.0.0:
   resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
   integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
 
-minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
+minimatch@^3.0.2, minimatch@^3.0.4:
   version "3.0.4"
   resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
   integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
   dependencies:
     brace-expansion "^1.1.7"
 
-minimist@0.0.8:
-  version "0.0.8"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-  integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
-
-minimist@^1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-  integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
+minimist@^1.2.0, minimist@^1.2.5:
+  version "1.2.5"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
+  integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
 
 mixin-deep@^1.2.0:
-  version "1.3.1"
-  resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe"
-  integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
+  integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
   dependencies:
     for-in "^1.0.2"
     is-extendable "^1.0.1"
 
 mkdirp@^0.5.1:
-  version "0.5.1"
-  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
-  integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
+  version "0.5.5"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
+  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
   dependencies:
-    minimist "0.0.8"
+    minimist "^1.2.5"
 
 ms@2.0.0:
   version "2.0.0"
@@ -2222,9 +2249,9 @@ ms@2.0.0:
   integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
 
 ms@^2.1.1:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
-  integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+  integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
 
 mute-stream@0.0.7:
   version "0.0.7"
@@ -2266,12 +2293,12 @@ nopt@~3.0.6:
     abbrev "1"
 
 normalize-package-data@^2.3.2:
-  version "2.4.0"
-  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
-  integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
+  integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
   dependencies:
     hosted-git-info "^2.1.4"
-    is-builtin-module "^1.0.0"
+    resolve "^1.10.0"
     semver "2 || 3 || 4 || 5"
     validate-npm-package-license "^3.0.1"
 
@@ -2317,10 +2344,23 @@ object-copy@^0.1.0:
     define-property "^0.2.5"
     kind-of "^3.0.3"
 
-object-keys@^1.0.11, object-keys@^1.0.12:
-  version "1.0.12"
-  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2"
-  integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==
+object-inspect@^1.7.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67"
+  integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==
+
+object-is@^1.0.1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
+  integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+
+object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+  integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
 
 object-visit@^1.0.0:
   version "1.0.1"
@@ -2339,25 +2379,25 @@ object.assign@^4.1.0:
     has-symbols "^1.0.0"
     object-keys "^1.0.11"
 
-object.entries@^1.0.4:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519"
-  integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==
+object.entries@^1.1.0, object.entries@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz#ee1cf04153de02bb093fec33683900f57ce5399b"
+  integrity sha512-ilqR7BgdyZetJutmDPfXCDffGa0/Yzl2ivVNpbx/g4UeWrCdRnFDUBrKJGLhGieRHDATnyZXWBeCb29k9CJysQ==
   dependencies:
     define-properties "^1.1.3"
-    es-abstract "^1.12.0"
+    es-abstract "^1.17.0-next.1"
     function-bind "^1.1.1"
     has "^1.0.3"
 
-object.fromentries@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab"
-  integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA==
+object.fromentries@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz#4a09c9b9bb3843dd0f89acdb517a794d4f355ac9"
+  integrity sha512-r3ZiBH7MQppDJVLx6fhD618GKNG40CZYH9wgwdhKxBDDbQgjeWGGd4AtkZad84d291YxvWe7bJGuE65Anh0dxQ==
   dependencies:
-    define-properties "^1.1.2"
-    es-abstract "^1.11.0"
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
     function-bind "^1.1.1"
-    has "^1.0.1"
+    has "^1.0.3"
 
 object.pick@^1.3.0:
   version "1.3.0"
@@ -2366,6 +2406,16 @@ object.pick@^1.3.0:
   dependencies:
     isobject "^3.0.1"
 
+object.values@^1.1.0, object.values@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e"
+  integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+    function-bind "^1.1.1"
+    has "^1.0.3"
+
 once@^1.3.0, once@^1.3.1, once@^1.4.0:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
@@ -2381,16 +2431,16 @@ onetime@^2.0.0:
     mimic-fn "^1.0.0"
 
 optionator@^0.8.2:
-  version "0.8.2"
-  resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
-  integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=
+  version "0.8.3"
+  resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
+  integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==
   dependencies:
     deep-is "~0.1.3"
-    fast-levenshtein "~2.0.4"
+    fast-levenshtein "~2.0.6"
     levn "~0.3.0"
     prelude-ls "~1.1.2"
     type-check "~0.3.2"
-    wordwrap "~1.0.0"
+    word-wrap "~1.2.3"
 
 os-locale@^2.0.0:
   version "2.1.0"
@@ -2419,9 +2469,9 @@ p-limit@^1.1.0:
     p-try "^1.0.0"
 
 p-limit@^2.0.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.1.0.tgz#1d5a0d20fb12707c758a655f6bbc4386b5930d68"
-  integrity sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
+  integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
   dependencies:
     p-try "^2.0.0"
 
@@ -2445,9 +2495,9 @@ p-map@^1.1.1:
   integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==
 
 p-map@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.0.0.tgz#be18c5a5adeb8e156460651421aceca56c213a50"
-  integrity sha512-GO107XdrSUmtHxVoi60qc9tUl/KkNKm+X2CF4P9amalpGxv5YqVPJNfSb0wcA+syCopkZvYYIzW8OVTQW59x/w==
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
+  integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
 
 p-try@^1.0.0:
   version "1.0.0"
@@ -2455,14 +2505,14 @@ p-try@^1.0.0:
   integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
 
 p-try@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1"
-  integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
+  integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
 
 parent-module@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.0.tgz#df250bdc5391f4a085fb589dad761f5ad6b865b5"
-  integrity sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA==
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
+  integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
   dependencies:
     callsites "^3.0.0"
 
@@ -2486,13 +2536,6 @@ pascalcase@^0.1.1:
   resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
   integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
 
-path-exists@^2.0.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
-  integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
-  dependencies:
-    pinkie-promise "^2.0.0"
-
 path-exists@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
@@ -2547,12 +2590,12 @@ pinkie@^2.0.0:
   resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
   integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
 
-pkg-dir@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
-  integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q=
+pkg-dir@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
+  integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=
   dependencies:
-    find-up "^1.0.0"
+    find-up "^2.1.0"
 
 pkg-dir@^3.0.0:
   version "3.0.0"
@@ -2562,9 +2605,9 @@ pkg-dir@^3.0.0:
     find-up "^3.0.0"
 
 please-upgrade-node@^3.0.2, please-upgrade-node@^3.1.1:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac"
-  integrity sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ==
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942"
+  integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==
   dependencies:
     semver-compare "^1.0.0"
 
@@ -2627,11 +2670,11 @@ prettier-eslint@^8.5.0:
     vue-eslint-parser "^2.0.2"
 
 prettier@^1.7.0:
-  version "1.15.3"
-  resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.15.3.tgz#1feaac5bdd181237b54dbe65d874e02a1472786a"
-  integrity sha512-gAU9AGAPMaKb3NNSUUuhhFAS7SCO4ALTN4nRIn6PJ075Qd28Yn2Ig2ahEJWdJwJmlEBTUfC7mMUSFy8MwsOCfg==
+  version "1.19.1"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
+  integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
 
-pretty-format@^23.0.1, pretty-format@^23.6.0:
+pretty-format@^23.0.1:
   version "23.6.0"
   resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760"
   integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw==
@@ -2640,22 +2683,28 @@ pretty-format@^23.0.1, pretty-format@^23.6.0:
     ansi-styles "^3.2.0"
 
 process-nextick-args@~2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
-  integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+  integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
 
 progress@^2.0.0:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
   integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
 
-prop-types@^15.6.2:
-  version "15.6.2"
-  resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102"
-  integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==
+prop-types@^15.7.2:
+  version "15.7.2"
+  resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
+  integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
   dependencies:
-    loose-envify "^1.3.1"
+    loose-envify "^1.4.0"
     object-assign "^4.1.1"
+    react-is "^16.8.1"
+
+property-expr@^1.5.0:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/property-expr/-/property-expr-1.5.1.tgz#22e8706894a0c8e28d58735804f6ba3a3673314f"
+  integrity sha512-CGuc0VUTGthpJXL36ydB6jnbyOf/rAHFvmVrJlH+Rg0DqqLFQGAP6hIaxD/G0OAmBJPhXDHuEJigrp0e0wFV6g==
 
 pseudomap@^1.0.2:
   version "1.0.2"
@@ -2685,6 +2734,11 @@ ramda@^0.26.1:
   resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06"
   integrity sha512-hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ==
 
+react-is@^16.8.1:
+  version "16.13.1"
+  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
+  integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
+
 read-pkg-up@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
@@ -2712,9 +2766,9 @@ read-pkg@^4.0.1:
     pify "^3.0.0"
 
 readable-stream@^2.2.2:
-  version "2.3.6"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
-  integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
+  version "2.3.7"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
+  integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
   dependencies:
     core-util-is "~1.0.0"
     inherits "~2.0.3"
@@ -2729,6 +2783,11 @@ regenerator-runtime@^0.11.0:
   resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
   integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
 
+regenerator-runtime@^0.13.4:
+  version "0.13.5"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697"
+  integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==
+
 regex-not@^1.0.0, regex-not@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
@@ -2737,6 +2796,14 @@ regex-not@^1.0.0, regex-not@^1.0.2:
     extend-shallow "^3.0.2"
     safe-regex "^1.1.0"
 
+regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75"
+  integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+
 regexpp@^1.0.1:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-1.1.0.tgz#0e3516dd0b7904f413d2d4193dce4618c3a689ab"
@@ -2805,10 +2872,10 @@ resolve-url@^0.2.1:
   resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
   integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
 
-resolve@^1.5.0, resolve@^1.6.0, resolve@^1.8.1, resolve@^1.9.0:
-  version "1.9.0"
-  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz#a14c6fdfa8f92a7df1d996cb7105fa744658ea06"
-  integrity sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ==
+resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.8.1:
+  version "1.17.0"
+  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444"
+  integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==
   dependencies:
     path-parse "^1.0.6"
 
@@ -2825,19 +2892,24 @@ ret@~0.1.10:
   resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
   integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
 
-rimraf@^2.2.8, rimraf@~2.6.2:
+rimraf@2.6.3, rimraf@~2.6.2:
   version "2.6.3"
   resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
   integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
   dependencies:
     glob "^7.1.3"
 
-run-async@^2.2.0:
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
-  integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA=
+rimraf@^2.2.8:
+  version "2.7.1"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
+  integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
   dependencies:
-    is-promise "^2.1.0"
+    glob "^7.1.3"
+
+run-async@^2.2.0:
+  version "2.4.1"
+  resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
+  integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
 
 run-node@^1.0.0:
   version "1.0.0"
@@ -2863,10 +2935,10 @@ rxjs@^5.3.0:
   dependencies:
     symbol-observable "1.0.1"
 
-rxjs@^6.1.0, rxjs@^6.3.3:
-  version "6.3.3"
-  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55"
-  integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==
+rxjs@^6.3.3, rxjs@^6.4.0:
+  version "6.5.5"
+  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec"
+  integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==
   dependencies:
     tslib "^1.9.0"
 
@@ -2893,9 +2965,9 @@ semver-compare@^1.0.0:
   integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w=
 
 "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0, semver@^5.5.1:
-  version "5.6.0"
-  resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004"
-  integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==
+  version "5.7.1"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
+  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
 
 semver@5.5.0:
   version "5.5.0"
@@ -2907,20 +2979,10 @@ set-blocking@^2.0.0:
   resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
   integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
 
-set-value@^0.4.3:
-  version "0.4.3"
-  resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1"
-  integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE=
-  dependencies:
-    extend-shallow "^2.0.1"
-    is-extendable "^0.1.1"
-    is-plain-object "^2.0.1"
-    to-object-path "^0.3.0"
-
-set-value@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274"
-  integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==
+set-value@^2.0.0, set-value@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
+  integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
   dependencies:
     extend-shallow "^2.0.1"
     is-extendable "^0.1.1"
@@ -2939,15 +3001,23 @@ shebang-regex@^1.0.0:
   resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
   integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
 
+side-channel@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.2.tgz#df5d1abadb4e4bf4af1cd8852bf132d2f7876947"
+  integrity sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==
+  dependencies:
+    es-abstract "^1.17.0-next.1"
+    object-inspect "^1.7.0"
+
 signal-exit@^3.0.0, signal-exit@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
-  integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
+  integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
 
 simple-git@^1.85.0:
-  version "1.107.0"
-  resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.107.0.tgz#12cffaf261c14d6f450f7fdb86c21ccee968b383"
-  integrity sha512-t4OK1JRlp4ayKRfcW6owrWcRVLyHRUlhGd0uN6ZZTqfDq8a5XpcUdOKiGRNobHEuMtNqzp0vcJNvhYWwh5PsQA==
+  version "1.132.0"
+  resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.132.0.tgz#53ac4c5ec9e74e37c2fd461e23309f22fcdf09b1"
+  integrity sha512-xauHm1YqCTom1sC9eOjfq3/9RKiUA9iPnxBbrY2DdL8l4ADMu0jjM5l5lphQP5YWNqAL2aXC/OeuQ76vHtW5fg==
   dependencies:
     debug "^4.0.1"
 
@@ -2968,10 +3038,10 @@ slice-ansi@1.0.0:
   dependencies:
     is-fullwidth-code-point "^2.0.0"
 
-slice-ansi@2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.0.0.tgz#5373bdb8559b45676e8541c66916cdd6251612e7"
-  integrity sha512-4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==
+slice-ansi@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636"
+  integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==
   dependencies:
     ansi-styles "^3.2.0"
     astral-regex "^1.0.0"
@@ -3008,11 +3078,11 @@ snapdragon@^0.8.1:
     use "^3.1.0"
 
 source-map-resolve@^0.5.0:
-  version "0.5.2"
-  resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259"
-  integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==
+  version "0.5.3"
+  resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
+  integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
   dependencies:
-    atob "^2.1.1"
+    atob "^2.1.2"
     decode-uri-component "^0.2.0"
     resolve-url "^0.2.1"
     source-map-url "^0.4.0"
@@ -3037,22 +3107,22 @@ spdx-correct@^3.0.0:
     spdx-license-ids "^3.0.0"
 
 spdx-exceptions@^2.1.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
-  integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
+  integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
 
 spdx-expression-parse@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
-  integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
+  integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
   dependencies:
     spdx-exceptions "^2.1.0"
     spdx-license-ids "^3.0.0"
 
 spdx-license-ids@^3.0.0:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz#81c0ce8f21474756148bbb5f3bfc0f36bf15d76e"
-  integrity sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==
+  version "3.0.5"
+  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654"
+  integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==
 
 split-string@^3.0.1, split-string@^3.0.2:
   version "3.1.0"
@@ -3101,6 +3171,61 @@ string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^4.0.0"
 
+string-width@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961"
+  integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==
+  dependencies:
+    emoji-regex "^7.0.1"
+    is-fullwidth-code-point "^2.0.0"
+    strip-ansi "^5.1.0"
+
+string.prototype.matchall@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz#48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e"
+  integrity sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0"
+    has-symbols "^1.0.1"
+    internal-slot "^1.0.2"
+    regexp.prototype.flags "^1.3.0"
+    side-channel "^1.0.2"
+
+string.prototype.trimend@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913"
+  integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+
+string.prototype.trimleft@^2.1.1:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc"
+  integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+    string.prototype.trimstart "^1.0.0"
+
+string.prototype.trimright@^2.1.1:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3"
+  integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+    string.prototype.trimend "^1.0.0"
+
+string.prototype.trimstart@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54"
+  integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+
 string_decoder@~1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -3131,12 +3256,12 @@ strip-ansi@^4.0.0:
   dependencies:
     ansi-regex "^3.0.0"
 
-strip-ansi@^5.0.0:
-  version "5.0.0"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f"
-  integrity sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==
+strip-ansi@^5.1.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
+  integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
   dependencies:
-    ansi-regex "^4.0.0"
+    ansi-regex "^4.1.0"
 
 strip-bom@^3.0.0:
   version "3.0.0"
@@ -3182,6 +3307,11 @@ symbol-observable@^1.1.0:
   resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
   integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==
 
+synchronous-promise@^2.0.6:
+  version "2.0.12"
+  resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.12.tgz#219934f23c19c9aa716276cf2e1f8d4e5b04d07f"
+  integrity sha512-rIDJiHmIK02tXU+eW1v6a7rNIIiMLm5JUF5Uj2fT6oLSulg7WNDVoqvkYqkFoJzf4v2gmTLppvzegdo9R+7h1Q==
+
 table@4.0.2:
   version "4.0.2"
   resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36"
@@ -3194,15 +3324,15 @@ table@4.0.2:
     slice-ansi "1.0.0"
     string-width "^2.1.1"
 
-table@^5.0.2:
-  version "5.1.1"
-  resolved "https://registry.yarnpkg.com/table/-/table-5.1.1.tgz#92030192f1b7b51b6eeab23ed416862e47b70837"
-  integrity sha512-NUjapYb/qd4PeFW03HnAuOJ7OMcBkJlqeClWxeNlQ0lXGSb52oZXGzkO0/I0ARegQ2eUT1g2VDJH0eUxDRcHmw==
+table@^5.2.3:
+  version "5.4.6"
+  resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e"
+  integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==
   dependencies:
-    ajv "^6.6.1"
-    lodash "^4.17.11"
-    slice-ansi "2.0.0"
-    string-width "^2.1.1"
+    ajv "^6.10.2"
+    lodash "^4.17.14"
+    slice-ansi "^2.1.0"
+    string-width "^3.0.0"
 
 text-table@^0.2.0, text-table@~0.2.0:
   version "0.2.0"
@@ -3251,15 +3381,15 @@ to-regex@^3.0.1, to-regex@^3.0.2:
     regex-not "^1.0.2"
     safe-regex "^1.1.0"
 
-trim-right@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
-  integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=
+toposort@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/toposort/-/toposort-2.0.2.tgz#ae21768175d1559d48bef35420b2f4962f09c330"
+  integrity sha1-riF2gXXRVZ1IvvNUILL0li8JwzA=
 
 tslib@^1.9.0:
-  version "1.9.3"
-  resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
-  integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==
+  version "1.13.0"
+  resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043"
+  integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==
 
 type-check@~0.3.2:
   version "0.3.2"
@@ -3287,14 +3417,14 @@ typescript@^2.5.1:
   integrity sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==
 
 union-value@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4"
-  integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
+  integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
   dependencies:
     arr-union "^3.1.0"
     get-value "^2.0.6"
     is-extendable "^0.1.1"
-    set-value "^0.4.3"
+    set-value "^2.0.1"
 
 unset-value@^1.0.0:
   version "1.0.0"
@@ -3358,10 +3488,10 @@ which@^1.2.10, which@^1.2.9:
   dependencies:
     isexe "^2.0.0"
 
-wordwrap@~1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
-  integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=
+word-wrap@~1.2.3:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
+  integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
 
 wrap-ansi@^2.0.0:
   version "2.1.0"
@@ -3384,6 +3514,13 @@ wrappy@1:
   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
   integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
 
+write@1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"
+  integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==
+  dependencies:
+    mkdirp "^0.5.1"
+
 write@^0.2.1:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
@@ -3391,6 +3528,13 @@ write@^0.2.1:
   dependencies:
     mkdirp "^0.5.1"
 
+xregexp@^4.3.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.3.0.tgz#7e92e73d9174a99a59743f67a4ce879a04b5ae50"
+  integrity sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g==
+  dependencies:
+    "@babel/runtime-corejs3" "^7.8.3"
+
 y18n@^3.2.1:
   version "3.2.1"
   resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
@@ -3425,3 +3569,15 @@ yargs@10.0.3:
     which-module "^2.0.0"
     y18n "^3.2.1"
     yargs-parser "^8.0.0"
+
+yup@^0.27.0:
+  version "0.27.0"
+  resolved "https://registry.yarnpkg.com/yup/-/yup-0.27.0.tgz#f8cb198c8e7dd2124beddc2457571329096b06e7"
+  integrity sha512-v1yFnE4+u9za42gG/b/081E7uNW9mUj3qtkmelLbW5YPROZzSH/KUUyJu9Wt8vxFJcT9otL/eZopS0YK1L5yPQ==
+  dependencies:
+    "@babel/runtime" "^7.0.0"
+    fn-name "~2.0.1"
+    lodash "^4.17.11"
+    property-expr "^1.5.0"
+    synchronous-promise "^2.0.6"
+    toposort "^2.0.2"
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.nix b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.nix
index 9f4154b328b3..b8dba6833fbf 100644
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.nix
+++ b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/yarn.nix
@@ -1,92 +1,108 @@
-{ fetchurl, linkFarm, runCommandNoCC, gnutar }: rec {
+{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec {
   offline_cache = linkFarm "offline" packages;
   packages = [
     {
-      name = "_babel_code_frame___code_frame_7.0.0.tgz";
+      name = "_babel_code_frame___code_frame_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz";
-        sha1 = "06e2ab19bdb535385559aabb5ba59729482800f8";
+        name = "_babel_code_frame___code_frame_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz";
+        sha1 = "33e25903d7481181534e12ec0a25f16b6fcf419e";
       };
     }
     {
-      name = "_babel_generator___generator_7.2.2.tgz";
+      name = "_babel_generator___generator_7.9.6.tgz";
       path = fetchurl {
-        name = "_babel_generator___generator_7.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz";
-        sha1 = "18c816c70962640eab42fe8cae5f3947a5c65ccc";
+        name = "_babel_generator___generator_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.6.tgz";
+        sha1 = "5408c82ac5de98cda0d77d8124e99fa1f2170a43";
       };
     }
     {
-      name = "_babel_helper_function_name___helper_function_name_7.1.0.tgz";
+      name = "_babel_helper_function_name___helper_function_name_7.9.5.tgz";
       path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz";
-        sha1 = "a0ceb01685f73355d4360c1247f582bfafc8ff53";
+        name = "_babel_helper_function_name___helper_function_name_7.9.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz";
+        sha1 = "2b53820d35275120e1874a82e5aabe1376920a5c";
       };
     }
     {
-      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.0.0.tgz";
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz";
-        sha1 = "83572d4320e2a4657263734113c42868b64e49c3";
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz";
+        sha1 = "b894b947bd004381ce63ea1db9f08547e920abd5";
       };
     }
     {
-      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.0.0.tgz";
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz";
-        sha1 = "3aae285c0311c2ab095d997b8c9a94cad547d813";
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz";
+        sha1 = "31a9f30070f91368a7182cf05f831781065fc7a9";
       };
     }
     {
-      name = "_babel_highlight___highlight_7.0.0.tgz";
+      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.9.5.tgz";
       path = fetchurl {
-        name = "_babel_highlight___highlight_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz";
-        sha1 = "f710c38c8d458e6dd9a201afb637fcb781ce99e4";
+        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.9.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz";
+        sha1 = "90977a8e6fbf6b431a7dc31752eee233bf052d80";
       };
     }
     {
-      name = "_babel_parser___parser_7.2.3.tgz";
+      name = "_babel_highlight___highlight_7.9.0.tgz";
       path = fetchurl {
-        name = "_babel_parser___parser_7.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz";
-        sha1 = "32f5df65744b70888d17872ec106b02434ba1489";
+        name = "_babel_highlight___highlight_7.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz";
+        sha1 = "4e9b45ccb82b79607271b2979ad82c7b68163079";
       };
     }
     {
-      name = "_babel_template___template_7.2.2.tgz";
+      name = "_babel_parser___parser_7.9.6.tgz";
       path = fetchurl {
-        name = "_babel_template___template_7.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz";
-        sha1 = "005b3fdf0ed96e88041330379e0da9a708eb2907";
+        name = "_babel_parser___parser_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.6.tgz";
+        sha1 = "3b1bbb30dabe600cd72db58720998376ff653bc7";
       };
     }
     {
-      name = "_babel_traverse___traverse_7.2.3.tgz";
+      name = "_babel_runtime_corejs3___runtime_corejs3_7.9.6.tgz";
       path = fetchurl {
-        name = "_babel_traverse___traverse_7.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz";
-        sha1 = "7ff50cefa9c7c0bd2d81231fdac122f3957748d8";
+        name = "_babel_runtime_corejs3___runtime_corejs3_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.9.6.tgz";
+        sha1 = "67aded13fffbbc2cb93247388cf84d77a4be9a71";
       };
     }
     {
-      name = "_babel_types___types_7.2.2.tgz";
+      name = "_babel_runtime___runtime_7.9.6.tgz";
       path = fetchurl {
-        name = "_babel_types___types_7.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz";
-        sha1 = "44e10fc24e33af524488b716cdaee5360ea8ed1e";
+        name = "_babel_runtime___runtime_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.6.tgz";
+        sha1 = "a9102eb5cadedf3f31d08a9ecf294af7827ea29f";
       };
     }
     {
-      name = "_iamstarkov_listr_update_renderer___listr_update_renderer_0.4.1.tgz";
+      name = "_babel_template___template_7.8.6.tgz";
       path = fetchurl {
-        name = "_iamstarkov_listr_update_renderer___listr_update_renderer_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/@iamstarkov/listr-update-renderer/-/listr-update-renderer-0.4.1.tgz";
-        sha1 = "d7c48092a2dcf90fd672b6c8b458649cb350c77e";
+        name = "_babel_template___template_7.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz";
+        sha1 = "86b22af15f828dfb086474f964dcc3e39c43ce2b";
+      };
+    }
+    {
+      name = "_babel_traverse___traverse_7.9.6.tgz";
+      path = fetchurl {
+        name = "_babel_traverse___traverse_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.6.tgz";
+        sha1 = "5540d7577697bf619cc57b92aa0f1c231a94f442";
+      };
+    }
+    {
+      name = "_babel_types___types_7.9.6.tgz";
+      path = fetchurl {
+        name = "_babel_types___types_7.9.6.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz";
+        sha1 = "2c5502b427251e9de1bd2dff95add646d95cc9f7";
       };
     }
     {
@@ -122,11 +138,11 @@
       };
     }
     {
-      name = "acorn_jsx___acorn_jsx_5.0.1.tgz";
+      name = "acorn_jsx___acorn_jsx_5.2.0.tgz";
       path = fetchurl {
-        name = "acorn_jsx___acorn_jsx_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz";
-        sha1 = "32a064fd925429216a09b141102bfdd185fae40e";
+        name = "acorn_jsx___acorn_jsx_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz";
+        sha1 = "4c66069173d6fdd68ed85239fc256226182b2ebe";
       };
     }
     {
@@ -138,19 +154,19 @@
       };
     }
     {
-      name = "acorn___acorn_5.7.3.tgz";
+      name = "acorn___acorn_5.7.4.tgz";
       path = fetchurl {
-        name = "acorn___acorn_5.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz";
-        sha1 = "67aa231bf8812974b85235a96771eb6bd07ea279";
+        name = "acorn___acorn_5.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz";
+        sha1 = "3e8d8a9947d0599a1796d10225d7432f4a4acf5e";
       };
     }
     {
-      name = "acorn___acorn_6.0.5.tgz";
+      name = "acorn___acorn_6.4.1.tgz";
       path = fetchurl {
-        name = "acorn___acorn_6.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.0.5.tgz";
-        sha1 = "81730c0815f3f3b34d8efa95cb7430965f4d887a";
+        name = "acorn___acorn_6.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz";
+        sha1 = "531e58ba3f51b9dacb9a6646ca4debf5b14ca474";
       };
     }
     {
@@ -170,19 +186,19 @@
       };
     }
     {
-      name = "ajv___ajv_6.6.2.tgz";
+      name = "ajv___ajv_6.12.2.tgz";
       path = fetchurl {
-        name = "ajv___ajv_6.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.6.2.tgz";
-        sha1 = "caceccf474bf3fc3ce3b147443711a24063cc30d";
+        name = "ajv___ajv_6.12.2.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz";
+        sha1 = "c629c5eced17baf314437918d2da88c99d5958cd";
       };
     }
     {
-      name = "ansi_escapes___ansi_escapes_3.1.0.tgz";
+      name = "ansi_escapes___ansi_escapes_3.2.0.tgz";
       path = fetchurl {
-        name = "ansi_escapes___ansi_escapes_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz";
-        sha1 = "f73207bb81207d75fd6c83f125af26eea378ca30";
+        name = "ansi_escapes___ansi_escapes_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz";
+        sha1 = "8780b98ff9dbf5638152d1f1fe5c1d7b4442976b";
       };
     }
     {
@@ -202,11 +218,11 @@
       };
     }
     {
-      name = "ansi_regex___ansi_regex_4.0.0.tgz";
+      name = "ansi_regex___ansi_regex_4.1.0.tgz";
       path = fetchurl {
-        name = "ansi_regex___ansi_regex_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz";
-        sha1 = "70de791edf021404c3fd615aa89118ae0432e5a9";
+        name = "ansi_regex___ansi_regex_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz";
+        sha1 = "8b9f8f08cf1acb843756a839ca8c7e3168c51997";
       };
     }
     {
@@ -274,11 +290,11 @@
       };
     }
     {
-      name = "array_includes___array_includes_3.0.3.tgz";
+      name = "array_includes___array_includes_3.1.1.tgz";
       path = fetchurl {
-        name = "array_includes___array_includes_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz";
-        sha1 = "184b48f62d92d7452bb31b323165c7f8bd02266d";
+        name = "array_includes___array_includes_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz";
+        sha1 = "cdd67e6852bdf9c1215460786732255ed2459348";
       };
     }
     {
@@ -306,6 +322,14 @@
       };
     }
     {
+      name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+      path = fetchurl {
+        name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz";
+        sha1 = "0de82b426b0318dbfdb940089e38b043d37f6c7b";
+      };
+    }
+    {
       name = "arrify___arrify_1.0.1.tgz";
       path = fetchurl {
         name = "arrify___arrify_1.0.1.tgz";
@@ -346,11 +370,11 @@
       };
     }
     {
-      name = "axobject_query___axobject_query_2.0.2.tgz";
+      name = "axobject_query___axobject_query_2.1.2.tgz";
       path = fetchurl {
-        name = "axobject_query___axobject_query_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz";
-        sha1 = "ea187abe5b9002b377f925d8bf7d1c561adf38f9";
+        name = "axobject_query___axobject_query_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz";
+        sha1 = "2bdffc0371e643e5f03ba99065d5179b9ca79799";
       };
     }
     {
@@ -362,11 +386,11 @@
       };
     }
     {
-      name = "babel_eslint___babel_eslint_10.0.1.tgz";
+      name = "babel_eslint___babel_eslint_10.1.0.tgz";
       path = fetchurl {
-        name = "babel_eslint___babel_eslint_10.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz";
-        sha1 = "919681dc099614cd7d31d45c8908695092a1faed";
+        name = "babel_eslint___babel_eslint_10.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz";
+        sha1 = "6968e568a910b78fb3779cdd8b6ac2f479943232";
       };
     }
     {
@@ -426,14 +450,6 @@
       };
     }
     {
-      name = "builtin_modules___builtin_modules_1.1.1.tgz";
-      path = fetchurl {
-        name = "builtin_modules___builtin_modules_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz";
-        sha1 = "270f076c5a72c02f5b65a47df94c5fe3a278892f";
-      };
-    }
-    {
       name = "cache_base___cache_base_1.0.1.tgz";
       path = fetchurl {
         name = "cache_base___cache_base_1.0.1.tgz";
@@ -482,11 +498,11 @@
       };
     }
     {
-      name = "callsites___callsites_3.0.0.tgz";
+      name = "callsites___callsites_3.1.0.tgz";
       path = fetchurl {
-        name = "callsites___callsites_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz";
-        sha1 = "fb7eb569b72ad7a45812f93fd9430a3e410b3dd3";
+        name = "callsites___callsites_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz";
+        sha1 = "b3630abd8943432f54b3f0519238e33cd7df2f73";
       };
     }
     {
@@ -522,11 +538,11 @@
       };
     }
     {
-      name = "chalk___chalk_2.4.1.tgz";
+      name = "chalk___chalk_2.4.2.tgz";
       path = fetchurl {
-        name = "chalk___chalk_2.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz";
-        sha1 = "18c49ab16a037b6eb0152cc83e3471338215b66e";
+        name = "chalk___chalk_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+        sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
       };
     }
     {
@@ -586,11 +602,11 @@
       };
     }
     {
-      name = "cli_width___cli_width_2.2.0.tgz";
+      name = "cli_width___cli_width_2.2.1.tgz";
       path = fetchurl {
-        name = "cli_width___cli_width_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz";
-        sha1 = "ff19ede8a9a5e579324147b0c11f0fbcbabed639";
+        name = "cli_width___cli_width_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz";
+        sha1 = "b0433d0b4e9c847ef18868a4ef16fd5fc8271c48";
       };
     }
     {
@@ -642,11 +658,11 @@
       };
     }
     {
-      name = "commander___commander_2.19.0.tgz";
+      name = "commander___commander_2.20.3.tgz";
       path = fetchurl {
-        name = "commander___commander_2.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz";
-        sha1 = "f6198aa84e5b83c46054b94ddedbfed5ee9ff12a";
+        name = "commander___commander_2.20.3.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz";
+        sha1 = "fd485e84c03eb4881c20722ba48035e8531aeb33";
       };
     }
     {
@@ -658,11 +674,11 @@
       };
     }
     {
-      name = "component_emitter___component_emitter_1.2.1.tgz";
+      name = "component_emitter___component_emitter_1.3.0.tgz";
       path = fetchurl {
-        name = "component_emitter___component_emitter_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz";
-        sha1 = "137918d6d78283f7df7a6b7c5a63e140e69425e6";
+        name = "component_emitter___component_emitter_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz";
+        sha1 = "16e4070fba8ae29b679f2215853ee181ab2eabc0";
       };
     }
     {
@@ -682,6 +698,14 @@
       };
     }
     {
+      name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+      path = fetchurl {
+        name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz";
+        sha1 = "72bc13b483c0276801681871d4898516f8f54fdd";
+      };
+    }
+    {
       name = "contains_path___contains_path_0.1.0.tgz";
       path = fetchurl {
         name = "contains_path___contains_path_0.1.0.tgz";
@@ -698,35 +722,35 @@
       };
     }
     {
-      name = "core_js___core_js_2.6.1.tgz";
+      name = "core_js_pure___core_js_pure_3.6.5.tgz";
       path = fetchurl {
-        name = "core_js___core_js_2.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.1.tgz";
-        sha1 = "87416ae817de957a3f249b3b5ca475d4aaed6042";
+        name = "core_js_pure___core_js_pure_3.6.5.tgz";
+        url  = "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz";
+        sha1 = "c79e75f5e38dbc85a662d91eea52b8256d53b813";
       };
     }
     {
-      name = "core_util_is___core_util_is_1.0.2.tgz";
+      name = "core_js___core_js_2.6.11.tgz";
       path = fetchurl {
-        name = "core_util_is___core_util_is_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
-        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+        name = "core_js___core_js_2.6.11.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz";
+        sha1 = "38831469f9922bded8ee21c9dc46985e0399308c";
       };
     }
     {
-      name = "cosmiconfig___cosmiconfig_5.0.6.tgz";
+      name = "core_util_is___core_util_is_1.0.2.tgz";
       path = fetchurl {
-        name = "cosmiconfig___cosmiconfig_5.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz";
-        sha1 = "dca6cf680a0bd03589aff684700858c81abeeb39";
+        name = "core_util_is___core_util_is_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
       };
     }
     {
-      name = "cosmiconfig___cosmiconfig_5.0.7.tgz";
+      name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
       path = fetchurl {
-        name = "cosmiconfig___cosmiconfig_5.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz";
-        sha1 = "39826b292ee0d78eda137dfa3173bd1c21a43b04";
+        name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz";
+        sha1 = "040f726809c591e77a17c0a3626ca45b4f168b1a";
       };
     }
     {
@@ -746,11 +770,11 @@
       };
     }
     {
-      name = "damerau_levenshtein___damerau_levenshtein_1.0.4.tgz";
+      name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
       path = fetchurl {
-        name = "damerau_levenshtein___damerau_levenshtein_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz";
-        sha1 = "03191c432cb6eea168bb77f3a55ffdccb8978514";
+        name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz";
+        sha1 = "143c1641cb3d85c60c32329e26899adea8701791";
       };
     }
     {
@@ -810,11 +834,11 @@
       };
     }
     {
-      name = "deep_equal___deep_equal_1.0.1.tgz";
+      name = "deep_equal___deep_equal_1.1.1.tgz";
       path = fetchurl {
-        name = "deep_equal___deep_equal_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz";
-        sha1 = "f5d260292b660e084eff4cdbc9f08ad3247448b5";
+        name = "deep_equal___deep_equal_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz";
+        sha1 = "b5c98c942ceffaf7cb051e24e1434a25a2e6076a";
       };
     }
     {
@@ -866,11 +890,11 @@
       };
     }
     {
-      name = "dlv___dlv_1.1.2.tgz";
+      name = "dlv___dlv_1.1.3.tgz";
       path = fetchurl {
-        name = "dlv___dlv_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/dlv/-/dlv-1.1.2.tgz";
-        sha1 = "270f6737b30d25b6657a7e962c784403f85137e5";
+        name = "dlv___dlv_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz";
+        sha1 = "5c198a8a11453596e751494d49874bc7732f2e79";
       };
     }
     {
@@ -898,6 +922,14 @@
       };
     }
     {
+      name = "doctrine___doctrine_3.0.0.tgz";
+      path = fetchurl {
+        name = "doctrine___doctrine_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz";
+        sha1 = "addebead72a6574db783639dc87a121773973961";
+      };
+    }
+    {
       name = "elegant_spinner___elegant_spinner_1.0.1.tgz";
       path = fetchurl {
         name = "elegant_spinner___elegant_spinner_1.0.1.tgz";
@@ -906,19 +938,19 @@
       };
     }
     {
-      name = "emoji_regex___emoji_regex_6.5.1.tgz";
+      name = "emoji_regex___emoji_regex_7.0.3.tgz";
       path = fetchurl {
-        name = "emoji_regex___emoji_regex_6.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz";
-        sha1 = "9baea929b155565c11ea41c6626eaa65cef992c2";
+        name = "emoji_regex___emoji_regex_7.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz";
+        sha1 = "933a04052860c85e83c122479c4748a8e4c72156";
       };
     }
     {
-      name = "end_of_stream___end_of_stream_1.4.1.tgz";
+      name = "end_of_stream___end_of_stream_1.4.4.tgz";
       path = fetchurl {
-        name = "end_of_stream___end_of_stream_1.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz";
-        sha1 = "ed29634d19baba463b6ce6b80a37213eab71ec43";
+        name = "end_of_stream___end_of_stream_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz";
+        sha1 = "5ae64a5f45057baf3626ec14da0ca5e4b2431eb0";
       };
     }
     {
@@ -930,19 +962,19 @@
       };
     }
     {
-      name = "es_abstract___es_abstract_1.13.0.tgz";
+      name = "es_abstract___es_abstract_1.17.5.tgz";
       path = fetchurl {
-        name = "es_abstract___es_abstract_1.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz";
-        sha1 = "ac86145fdd5099d8dd49558ccba2eaf9b88e24e9";
+        name = "es_abstract___es_abstract_1.17.5.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz";
+        sha1 = "d8c9d1d66c8981fb9200e2251d799eee92774ae9";
       };
     }
     {
-      name = "es_to_primitive___es_to_primitive_1.2.0.tgz";
+      name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
       path = fetchurl {
-        name = "es_to_primitive___es_to_primitive_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz";
-        sha1 = "edf72478033456e8dda8ef09e00ad9650707f377";
+        name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha1 = "e55cd4c9cdc188bcefb03b366c736323fc5c898a";
       };
     }
     {
@@ -954,27 +986,27 @@
       };
     }
     {
-      name = "eslint_config_airbnb_base___eslint_config_airbnb_base_13.1.0.tgz";
+      name = "eslint_config_airbnb_base___eslint_config_airbnb_base_13.2.0.tgz";
       path = fetchurl {
-        name = "eslint_config_airbnb_base___eslint_config_airbnb_base_13.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz";
-        sha1 = "b5a1b480b80dfad16433d6c4ad84e6605052c05c";
+        name = "eslint_config_airbnb_base___eslint_config_airbnb_base_13.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz";
+        sha1 = "f6ea81459ff4dec2dda200c35f1d8f7419d57943";
       };
     }
     {
-      name = "eslint_config_airbnb___eslint_config_airbnb_17.1.0.tgz";
+      name = "eslint_config_airbnb___eslint_config_airbnb_17.1.1.tgz";
       path = fetchurl {
-        name = "eslint_config_airbnb___eslint_config_airbnb_17.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.0.tgz";
-        sha1 = "3964ed4bc198240315ff52030bf8636f42bc4732";
+        name = "eslint_config_airbnb___eslint_config_airbnb_17.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz";
+        sha1 = "2272e0b86bb1e2b138cdf88d07a3b6f4cda3d626";
       };
     }
     {
-      name = "eslint_config_prettier___eslint_config_prettier_3.3.0.tgz";
+      name = "eslint_config_prettier___eslint_config_prettier_3.6.0.tgz";
       path = fetchurl {
-        name = "eslint_config_prettier___eslint_config_prettier_3.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-3.3.0.tgz";
-        sha1 = "41afc8d3b852e757f06274ed6c44ca16f939a57d";
+        name = "eslint_config_prettier___eslint_config_prettier_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-3.6.0.tgz";
+        sha1 = "8ca3ffac4bd6eeef623a0651f9d754900e3ec217";
       };
     }
     {
@@ -986,43 +1018,43 @@
       };
     }
     {
-      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
+      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.3.tgz";
       path = fetchurl {
-        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz";
-        sha1 = "58f15fb839b8d0576ca980413476aab2472db66a";
+        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz";
+        sha1 = "dbaa52b6b2816b50bc6711af75422de808e98404";
       };
     }
     {
-      name = "eslint_module_utils___eslint_module_utils_2.2.0.tgz";
+      name = "eslint_module_utils___eslint_module_utils_2.6.0.tgz";
       path = fetchurl {
-        name = "eslint_module_utils___eslint_module_utils_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz";
-        sha1 = "b270362cd88b1a48ad308976ce7fa54e98411746";
+        name = "eslint_module_utils___eslint_module_utils_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz";
+        sha1 = "579ebd094f56af7797d19c9866c9c9486629bfa6";
       };
     }
     {
-      name = "eslint_plugin_es___eslint_plugin_es_1.4.0.tgz";
+      name = "eslint_plugin_es___eslint_plugin_es_1.4.1.tgz";
       path = fetchurl {
-        name = "eslint_plugin_es___eslint_plugin_es_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz";
-        sha1 = "475f65bb20c993fc10e8c8fe77d1d60068072da6";
+        name = "eslint_plugin_es___eslint_plugin_es_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.1.tgz";
+        sha1 = "12acae0f4953e76ba444bfd1b2271081ac620998";
       };
     }
     {
-      name = "eslint_plugin_import___eslint_plugin_import_2.14.0.tgz";
+      name = "eslint_plugin_import___eslint_plugin_import_2.20.2.tgz";
       path = fetchurl {
-        name = "eslint_plugin_import___eslint_plugin_import_2.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz";
-        sha1 = "6b17626d2e3e6ad52cfce8807a845d15e22111a8";
+        name = "eslint_plugin_import___eslint_plugin_import_2.20.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz";
+        sha1 = "91fc3807ce08be4837141272c8b99073906e588d";
       };
     }
     {
-      name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.1.2.tgz";
+      name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.2.3.tgz";
       path = fetchurl {
-        name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz";
-        sha1 = "69bca4890b36dcf0fe16dd2129d2d88b98f33f88";
+        name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz";
+        sha1 = "b872a09d5de51af70a97db1eea7dc933043708aa";
       };
     }
     {
@@ -1034,43 +1066,27 @@
       };
     }
     {
-      name = "eslint_plugin_promise___eslint_plugin_promise_4.0.1.tgz";
+      name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
       path = fetchurl {
-        name = "eslint_plugin_promise___eslint_plugin_promise_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz";
-        sha1 = "2d074b653f35a23d1ba89d8e976a985117d1c6a2";
+        name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz";
+        sha1 = "845fd8b2260ad8f82564c1222fce44ad71d9418a";
       };
     }
     {
-      name = "eslint_plugin_react___eslint_plugin_react_7.12.3.tgz";
+      name = "eslint_plugin_react___eslint_plugin_react_7.20.0.tgz";
       path = fetchurl {
-        name = "eslint_plugin_react___eslint_plugin_react_7.12.3.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.12.3.tgz";
-        sha1 = "b9ca4cd7cd3f5d927db418a1950366a12d4568fd";
+        name = "eslint_plugin_react___eslint_plugin_react_7.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.0.tgz";
+        sha1 = "f98712f0a5e57dfd3e5542ef0604b8739cd47be3";
       };
     }
     {
-      name = "eslint_plugin_standard___eslint_plugin_standard_4.0.0.tgz";
+      name = "eslint_plugin_standard___eslint_plugin_standard_4.0.1.tgz";
       path = fetchurl {
-        name = "eslint_plugin_standard___eslint_plugin_standard_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz";
-        sha1 = "f845b45109c99cd90e77796940a344546c8f6b5c";
-      };
-    }
-    {
-      name = "eslint_restricted_globals___eslint_restricted_globals_0.1.1.tgz";
-      path = fetchurl {
-        name = "eslint_restricted_globals___eslint_restricted_globals_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz";
-        sha1 = "35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7";
-      };
-    }
-    {
-      name = "eslint_scope___eslint_scope_3.7.1.tgz";
-      path = fetchurl {
-        name = "eslint_scope___eslint_scope_3.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz";
-        sha1 = "3d63c3edfda02e06e01a452ad88caacc7cdcb6e8";
+        name = "eslint_plugin_standard___eslint_plugin_standard_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz";
+        sha1 = "ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4";
       };
     }
     {
@@ -1082,27 +1098,27 @@
       };
     }
     {
-      name = "eslint_scope___eslint_scope_4.0.0.tgz";
+      name = "eslint_scope___eslint_scope_4.0.3.tgz";
       path = fetchurl {
-        name = "eslint_scope___eslint_scope_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz";
-        sha1 = "50bf3071e9338bcdc43331794a0cb533f0136172";
+        name = "eslint_scope___eslint_scope_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz";
+        sha1 = "ca03833310f6889a3264781aa82e63eb9cfe7848";
       };
     }
     {
-      name = "eslint_utils___eslint_utils_1.3.1.tgz";
+      name = "eslint_utils___eslint_utils_1.4.3.tgz";
       path = fetchurl {
-        name = "eslint_utils___eslint_utils_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz";
-        sha1 = "9a851ba89ee7c460346f97cf8939c7298827e512";
+        name = "eslint_utils___eslint_utils_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz";
+        sha1 = "74fec7c54d0776b6f67e0251040b5806564e981f";
       };
     }
     {
-      name = "eslint_visitor_keys___eslint_visitor_keys_1.0.0.tgz";
+      name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
       path = fetchurl {
-        name = "eslint_visitor_keys___eslint_visitor_keys_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz";
-        sha1 = "3f3180fb2e291017716acb4c9d6d5b5c34a6a81d";
+        name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz";
+        sha1 = "e2a82cea84ff246ad6fb57f9bde5b46621459ec2";
       };
     }
     {
@@ -1114,11 +1130,11 @@
       };
     }
     {
-      name = "eslint___eslint_5.12.0.tgz";
+      name = "eslint___eslint_5.16.0.tgz";
       path = fetchurl {
-        name = "eslint___eslint_5.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint/-/eslint-5.12.0.tgz";
-        sha1 = "fab3b908f60c52671fb14e996a450b96c743c859";
+        name = "eslint___eslint_5.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz";
+        sha1 = "a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea";
       };
     }
     {
@@ -1130,11 +1146,11 @@
       };
     }
     {
-      name = "espree___espree_5.0.0.tgz";
+      name = "espree___espree_5.0.1.tgz";
       path = fetchurl {
-        name = "espree___espree_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/espree/-/espree-5.0.0.tgz";
-        sha1 = "fc7f984b62b36a0f543b13fb9cd7b9f4a7f5b65c";
+        name = "espree___espree_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz";
+        sha1 = "5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a";
       };
     }
     {
@@ -1146,11 +1162,11 @@
       };
     }
     {
-      name = "esquery___esquery_1.0.1.tgz";
+      name = "esquery___esquery_1.3.1.tgz";
       path = fetchurl {
-        name = "esquery___esquery_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz";
-        sha1 = "406c51658b1f5991a5f9b62b1dc25b00e3e5c708";
+        name = "esquery___esquery_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz";
+        sha1 = "b78b5828aa8e214e29fb74c4d5b752e1c033da57";
       };
     }
     {
@@ -1162,19 +1178,27 @@
       };
     }
     {
-      name = "estraverse___estraverse_4.2.0.tgz";
+      name = "estraverse___estraverse_4.3.0.tgz";
       path = fetchurl {
-        name = "estraverse___estraverse_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz";
-        sha1 = "0dee3fed31fcd469618ce7342099fc1afa0bdb13";
+        name = "estraverse___estraverse_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz";
+        sha1 = "398ad3f3c5a24948be7725e83d11a7de28cdbd1d";
       };
     }
     {
-      name = "esutils___esutils_2.0.2.tgz";
+      name = "estraverse___estraverse_5.1.0.tgz";
       path = fetchurl {
-        name = "esutils___esutils_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz";
-        sha1 = "0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b";
+        name = "estraverse___estraverse_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz";
+        sha1 = "374309d39fd935ae500e7b92e8a6b4c720e59642";
+      };
+    }
+    {
+      name = "esutils___esutils_2.0.3.tgz";
+      path = fetchurl {
+        name = "esutils___esutils_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz";
+        sha1 = "74d2eb4de0b8da1293711910d50775b9b710ef64";
       };
     }
     {
@@ -1226,11 +1250,11 @@
       };
     }
     {
-      name = "external_editor___external_editor_3.0.3.tgz";
+      name = "external_editor___external_editor_3.1.0.tgz";
       path = fetchurl {
-        name = "external_editor___external_editor_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz";
-        sha1 = "5866db29a97826dbe4bf3afd24070ead9ea43a27";
+        name = "external_editor___external_editor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz";
+        sha1 = "cb03f740befae03ea4d283caed2741a83f335495";
       };
     }
     {
@@ -1250,19 +1274,19 @@
       };
     }
     {
-      name = "fast_deep_equal___fast_deep_equal_2.0.1.tgz";
+      name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
       path = fetchurl {
-        name = "fast_deep_equal___fast_deep_equal_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
-        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+        name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz";
+        sha1 = "545145077c501491e33b15ec408c294376e94ae4";
       };
     }
     {
-      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
+      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
       path = fetchurl {
-        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
-        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha1 = "874bf69c6f404c2b5d99c481341399fd55892633";
       };
     }
     {
@@ -1298,27 +1322,19 @@
       };
     }
     {
-      name = "fill_range___fill_range_4.0.0.tgz";
-      path = fetchurl {
-        name = "fill_range___fill_range_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
-        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
-      };
-    }
-    {
-      name = "find_parent_dir___find_parent_dir_0.3.0.tgz";
+      name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
       path = fetchurl {
-        name = "find_parent_dir___find_parent_dir_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz";
-        sha1 = "33c44b429ab2b2f0646299c5f9f718f376ff8d54";
+        name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz";
+        sha1 = "ca0f6efa6dd3d561333fb14515065c2fafdf439c";
       };
     }
     {
-      name = "find_up___find_up_1.1.2.tgz";
+      name = "fill_range___fill_range_4.0.0.tgz";
       path = fetchurl {
-        name = "find_up___find_up_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz";
-        sha1 = "6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f";
+        name = "fill_range___fill_range_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
+        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
       };
     }
     {
@@ -1346,6 +1362,30 @@
       };
     }
     {
+      name = "flat_cache___flat_cache_2.0.1.tgz";
+      path = fetchurl {
+        name = "flat_cache___flat_cache_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz";
+        sha1 = "5d296d6f04bda44a4630a301413bdbc2ec085ec0";
+      };
+    }
+    {
+      name = "flatted___flatted_2.0.2.tgz";
+      path = fetchurl {
+        name = "flatted___flatted_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz";
+        sha1 = "4575b21e2bcee7434aa9be662f4b7b5f9c2b5138";
+      };
+    }
+    {
+      name = "fn_name___fn_name_2.0.1.tgz";
+      path = fetchurl {
+        name = "fn_name___fn_name_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz";
+        sha1 = "5214d7537a4d06a4a301c0cc262feb84188002e7";
+      };
+    }
+    {
       name = "for_in___for_in_1.0.2.tgz";
       path = fetchurl {
         name = "for_in___for_in_1.0.2.tgz";
@@ -1402,11 +1442,11 @@
       };
     }
     {
-      name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.0.tgz";
+      name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.2.tgz";
       path = fetchurl {
-        name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz";
-        sha1 = "b877b49a5c16aefac3655f2ed2ea5b684df8d203";
+        name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz";
+        sha1 = "b5fde77f22cbe35f390b4e089922c50bce6ef664";
       };
     }
     {
@@ -1450,11 +1490,11 @@
       };
     }
     {
-      name = "glob___glob_7.1.3.tgz";
+      name = "glob___glob_7.1.6.tgz";
       path = fetchurl {
-        name = "glob___glob_7.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz";
-        sha1 = "3960832d3f1574108342dafd3a67b332c0969df1";
+        name = "glob___glob_7.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz";
+        sha1 = "141f33b81a7c2492e125594307480c46679278a6";
       };
     }
     {
@@ -1466,11 +1506,11 @@
       };
     }
     {
-      name = "globals___globals_11.9.0.tgz";
+      name = "globals___globals_11.12.0.tgz";
       path = fetchurl {
-        name = "globals___globals_11.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz";
-        sha1 = "bde236808e987f290768a93d065060d78e6ab249";
+        name = "globals___globals_11.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz";
+        sha1 = "ab8795338868a0babd8525758018c2a7eb95c42e";
       };
     }
     {
@@ -1482,11 +1522,11 @@
       };
     }
     {
-      name = "graceful_fs___graceful_fs_4.1.15.tgz";
+      name = "graceful_fs___graceful_fs_4.2.4.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.1.15.tgz";
-        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz";
-        sha1 = "ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00";
+        name = "graceful_fs___graceful_fs_4.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz";
+        sha1 = "2256bde14d3632958c465ebc96dc467ca07a29fb";
       };
     }
     {
@@ -1514,11 +1554,11 @@
       };
     }
     {
-      name = "has_symbols___has_symbols_1.0.0.tgz";
+      name = "has_symbols___has_symbols_1.0.1.tgz";
       path = fetchurl {
-        name = "has_symbols___has_symbols_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz";
-        sha1 = "ba1a8f1af2a0fc39650f5c850367704122063b44";
+        name = "has_symbols___has_symbols_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz";
+        sha1 = "9f5214758a44196c406d9bd76cebf81ec2dd31e8";
       };
     }
     {
@@ -1562,11 +1602,11 @@
       };
     }
     {
-      name = "hosted_git_info___hosted_git_info_2.7.1.tgz";
+      name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
       path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_2.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz";
-        sha1 = "97f236977bd6e125408930ff6de3eec6281ec047";
+        name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
+        sha1 = "7539bd4bc1e0e0a895815a2e0262420b12858488";
       };
     }
     {
@@ -1602,11 +1642,11 @@
       };
     }
     {
-      name = "ignore___ignore_5.0.4.tgz";
+      name = "ignore___ignore_5.1.4.tgz";
       path = fetchurl {
-        name = "ignore___ignore_5.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.0.4.tgz";
-        sha1 = "33168af4a21e99b00c5d41cbadb6a6cb49903a45";
+        name = "ignore___ignore_5.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz";
+        sha1 = "84b7b3dbe64552b6ef0eca99f6743dbec6d97adf";
       };
     }
     {
@@ -1618,11 +1658,11 @@
       };
     }
     {
-      name = "import_fresh___import_fresh_3.0.0.tgz";
+      name = "import_fresh___import_fresh_3.2.1.tgz";
       path = fetchurl {
-        name = "import_fresh___import_fresh_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz";
-        sha1 = "a3d897f420cab0e671236897f75bc14b4885c390";
+        name = "import_fresh___import_fresh_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz";
+        sha1 = "633ff618506e793af5ac91bf48b72677e15cbe66";
       };
     }
     {
@@ -1650,11 +1690,11 @@
       };
     }
     {
-      name = "inherits___inherits_2.0.3.tgz";
+      name = "inherits___inherits_2.0.4.tgz";
       path = fetchurl {
-        name = "inherits___inherits_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz";
-        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+        name = "inherits___inherits_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
+        sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
       };
     }
     {
@@ -1666,11 +1706,19 @@
       };
     }
     {
-      name = "inquirer___inquirer_6.2.1.tgz";
+      name = "inquirer___inquirer_6.5.2.tgz";
+      path = fetchurl {
+        name = "inquirer___inquirer_6.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz";
+        sha1 = "ad50942375d036d327ff528c08bd5fab089928ca";
+      };
+    }
+    {
+      name = "internal_slot___internal_slot_1.0.2.tgz";
       path = fetchurl {
-        name = "inquirer___inquirer_6.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.1.tgz";
-        sha1 = "9943fc4882161bdb0b0c9276769c75b32dbfcd52";
+        name = "internal_slot___internal_slot_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz";
+        sha1 = "9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3";
       };
     }
     {
@@ -1698,6 +1746,14 @@
       };
     }
     {
+      name = "is_arguments___is_arguments_1.0.4.tgz";
+      path = fetchurl {
+        name = "is_arguments___is_arguments_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz";
+        sha1 = "3faf966c7cba0ff437fb31f6250082fcf0448cf3";
+      };
+    }
+    {
       name = "is_arrayish___is_arrayish_0.2.1.tgz";
       path = fetchurl {
         name = "is_arrayish___is_arrayish_0.2.1.tgz";
@@ -1714,19 +1770,11 @@
       };
     }
     {
-      name = "is_builtin_module___is_builtin_module_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_builtin_module___is_builtin_module_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz";
-        sha1 = "540572d34f7ac3119f8f76c30cbc1b1e037affbe";
-      };
-    }
-    {
-      name = "is_callable___is_callable_1.1.4.tgz";
+      name = "is_callable___is_callable_1.1.5.tgz";
       path = fetchurl {
-        name = "is_callable___is_callable_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz";
-        sha1 = "1e1adf219e1eeb684d691f9d6a05ff0d30a24d75";
+        name = "is_callable___is_callable_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz";
+        sha1 = "f7e46b596890456db74e7f6e976cb3273d06faab";
       };
     }
     {
@@ -1754,11 +1802,11 @@
       };
     }
     {
-      name = "is_date_object___is_date_object_1.0.1.tgz";
+      name = "is_date_object___is_date_object_1.0.2.tgz";
       path = fetchurl {
-        name = "is_date_object___is_date_object_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz";
-        sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
+        name = "is_date_object___is_date_object_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz";
+        sha1 = "bda736f2cd8fd06d32844e7743bfa7494c3bfd7e";
       };
     }
     {
@@ -1826,11 +1874,11 @@
       };
     }
     {
-      name = "is_glob___is_glob_4.0.0.tgz";
+      name = "is_glob___is_glob_4.0.1.tgz";
       path = fetchurl {
-        name = "is_glob___is_glob_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz";
-        sha1 = "9521c76845cc2610a85203ddf080a958c2ffabc0";
+        name = "is_glob___is_glob_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz";
+        sha1 = "7567dbe9f2f5e2467bc77ab83c4a29482407a5dc";
       };
     }
     {
@@ -1890,19 +1938,19 @@
       };
     }
     {
-      name = "is_promise___is_promise_2.1.0.tgz";
+      name = "is_promise___is_promise_2.2.2.tgz";
       path = fetchurl {
-        name = "is_promise___is_promise_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz";
-        sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa";
+        name = "is_promise___is_promise_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz";
+        sha1 = "39ab959ccbf9a774cf079f7b40c7a26f763135f1";
       };
     }
     {
-      name = "is_regex___is_regex_1.0.4.tgz";
+      name = "is_regex___is_regex_1.0.5.tgz";
       path = fetchurl {
-        name = "is_regex___is_regex_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz";
-        sha1 = "5517489b547091b0930e095654ced25ee97e9491";
+        name = "is_regex___is_regex_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz";
+        sha1 = "39d589a358bf18967f726967120b8fc1aed74eae";
       };
     }
     {
@@ -1930,11 +1978,19 @@
       };
     }
     {
-      name = "is_symbol___is_symbol_1.0.2.tgz";
+      name = "is_string___is_string_1.0.5.tgz";
       path = fetchurl {
-        name = "is_symbol___is_symbol_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz";
-        sha1 = "a055f6ae57192caee329e7a860118b497a950f38";
+        name = "is_string___is_string_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz";
+        sha1 = "40493ed198ef3ff477b8c7f92f644ec82a5cd3a6";
+      };
+    }
+    {
+      name = "is_symbol___is_symbol_1.0.3.tgz";
+      path = fetchurl {
+        name = "is_symbol___is_symbol_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz";
+        sha1 = "38e1014b9e6329be0de9d24a414fd7441ec61937";
       };
     }
     {
@@ -1978,22 +2034,6 @@
       };
     }
     {
-      name = "jest_get_type___jest_get_type_22.4.3.tgz";
-      path = fetchurl {
-        name = "jest_get_type___jest_get_type_22.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz";
-        sha1 = "e3a8504d8479342dd4420236b322869f18900ce4";
-      };
-    }
-    {
-      name = "jest_validate___jest_validate_23.6.0.tgz";
-      path = fetchurl {
-        name = "jest_validate___jest_validate_23.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz";
-        sha1 = "36761f99d1ed33fcd425b4e4c5595d62b6597474";
-      };
-    }
-    {
       name = "js_tokens___js_tokens_4.0.0.tgz";
       path = fetchurl {
         name = "js_tokens___js_tokens_4.0.0.tgz";
@@ -2010,11 +2050,11 @@
       };
     }
     {
-      name = "js_yaml___js_yaml_3.12.1.tgz";
+      name = "js_yaml___js_yaml_3.13.1.tgz";
       path = fetchurl {
-        name = "js_yaml___js_yaml_3.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.1.tgz";
-        sha1 = "295c8632a18a23e054cf5c9d3cecafe678167600";
+        name = "js_yaml___js_yaml_3.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz";
+        sha1 = "aff151b30bfdfa8e49e05da22e7415e9dfa37847";
       };
     }
     {
@@ -2058,11 +2098,11 @@
       };
     }
     {
-      name = "jsx_ast_utils___jsx_ast_utils_2.0.1.tgz";
+      name = "jsx_ast_utils___jsx_ast_utils_2.2.3.tgz";
       path = fetchurl {
-        name = "jsx_ast_utils___jsx_ast_utils_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz";
-        sha1 = "e801b1b39985e20fffc87b40e3748080e2dcac7f";
+        name = "jsx_ast_utils___jsx_ast_utils_2.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz";
+        sha1 = "8a9364e402448a3ce7f14d357738310d9248054f";
       };
     }
     {
@@ -2090,11 +2130,11 @@
       };
     }
     {
-      name = "kind_of___kind_of_6.0.2.tgz";
+      name = "kind_of___kind_of_6.0.3.tgz";
       path = fetchurl {
-        name = "kind_of___kind_of_6.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz";
-        sha1 = "01146b36a6218e64e58f3a8d66de5d7fc6f6d051";
+        name = "kind_of___kind_of_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
+        sha1 = "07c05034a6c349fa06e24fa35aa76db4580ce4dd";
       };
     }
     {
@@ -2106,14 +2146,6 @@
       };
     }
     {
-      name = "leven___leven_2.1.0.tgz";
-      path = fetchurl {
-        name = "leven___leven_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz";
-        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
-      };
-    }
-    {
       name = "levn___levn_0.3.0.tgz";
       path = fetchurl {
         name = "levn___levn_0.3.0.tgz";
@@ -2122,11 +2154,11 @@
       };
     }
     {
-      name = "lint_staged___lint_staged_8.1.0.tgz";
+      name = "lint_staged___lint_staged_8.2.1.tgz";
       path = fetchurl {
-        name = "lint_staged___lint_staged_8.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.1.0.tgz";
-        sha1 = "dbc3ae2565366d8f20efb9f9799d076da64863f2";
+        name = "lint_staged___lint_staged_8.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.2.1.tgz";
+        sha1 = "752fcf222d9d28f323a3b80f1e668f3654ff221f";
       };
     }
     {
@@ -2194,11 +2226,11 @@
       };
     }
     {
-      name = "lodash.merge___lodash.merge_4.6.1.tgz";
+      name = "lodash.merge___lodash.merge_4.6.2.tgz";
       path = fetchurl {
-        name = "lodash.merge___lodash.merge_4.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.1.tgz";
-        sha1 = "adc25d9cb99b9391c59624f379fbba60d7111d54";
+        name = "lodash.merge___lodash.merge_4.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz";
+        sha1 = "558aa53b43b661e1925a0afdfa36a9a1085fe57a";
       };
     }
     {
@@ -2210,11 +2242,11 @@
       };
     }
     {
-      name = "lodash___lodash_4.17.11.tgz";
+      name = "lodash___lodash_4.17.15.tgz";
       path = fetchurl {
-        name = "lodash___lodash_4.17.11.tgz";
-        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz";
-        sha1 = "b39ea6229ef607ecd89e2c8df12536891cac9b8d";
+        name = "lodash___lodash_4.17.15.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz";
+        sha1 = "b447f6670a0455bbfeedd11392eff330ea097548";
       };
     }
     {
@@ -2250,11 +2282,11 @@
       };
     }
     {
-      name = "loglevel___loglevel_1.6.1.tgz";
+      name = "loglevel___loglevel_1.6.8.tgz";
       path = fetchurl {
-        name = "loglevel___loglevel_1.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz";
-        sha1 = "e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa";
+        name = "loglevel___loglevel_1.6.8.tgz";
+        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.8.tgz";
+        sha1 = "8a25fb75d092230ecd4457270d80b54e28011171";
       };
     }
     {
@@ -2362,35 +2394,27 @@
       };
     }
     {
-      name = "minimist___minimist_0.0.8.tgz";
-      path = fetchurl {
-        name = "minimist___minimist_0.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz";
-        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
-      };
-    }
-    {
-      name = "minimist___minimist_1.2.0.tgz";
+      name = "minimist___minimist_1.2.5.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz";
-        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+        name = "minimist___minimist_1.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
+        sha1 = "67d66014b66a6a8aaa0c083c5fd58df4e4e97602";
       };
     }
     {
-      name = "mixin_deep___mixin_deep_1.3.1.tgz";
+      name = "mixin_deep___mixin_deep_1.3.2.tgz";
       path = fetchurl {
-        name = "mixin_deep___mixin_deep_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz";
-        sha1 = "a49e7268dce1a0d9698e45326c5626df3543d0fe";
+        name = "mixin_deep___mixin_deep_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz";
+        sha1 = "1120b43dc359a785dce65b55b82e257ccf479566";
       };
     }
     {
-      name = "mkdirp___mkdirp_0.5.1.tgz";
+      name = "mkdirp___mkdirp_0.5.5.tgz";
       path = fetchurl {
-        name = "mkdirp___mkdirp_0.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz";
-        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+        name = "mkdirp___mkdirp_0.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
+        sha1 = "d91cefd62d1436ca0f41620e251288d420099def";
       };
     }
     {
@@ -2402,11 +2426,11 @@
       };
     }
     {
-      name = "ms___ms_2.1.1.tgz";
+      name = "ms___ms_2.1.2.tgz";
       path = fetchurl {
-        name = "ms___ms_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz";
-        sha1 = "30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a";
+        name = "ms___ms_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
+        sha1 = "d09d1f357b443f493382a8eb3ccd183872ae6009";
       };
     }
     {
@@ -2450,11 +2474,11 @@
       };
     }
     {
-      name = "normalize_package_data___normalize_package_data_2.4.0.tgz";
+      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
       path = fetchurl {
-        name = "normalize_package_data___normalize_package_data_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha1 = "12f95a307d58352075a04907b84ac8be98ac012f";
+        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
+        sha1 = "e66db1838b200c1dfc233225d12cb36520e234a8";
       };
     }
     {
@@ -2506,11 +2530,27 @@
       };
     }
     {
-      name = "object_keys___object_keys_1.0.12.tgz";
+      name = "object_inspect___object_inspect_1.7.0.tgz";
+      path = fetchurl {
+        name = "object_inspect___object_inspect_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz";
+        sha1 = "f4f6bd181ad77f006b5ece60bd0b6f398ff74a67";
+      };
+    }
+    {
+      name = "object_is___object_is_1.1.2.tgz";
       path = fetchurl {
-        name = "object_keys___object_keys_1.0.12.tgz";
-        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz";
-        sha1 = "09c53855377575310cca62f55bb334abff7b3ed2";
+        name = "object_is___object_is_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz";
+        sha1 = "c5d2e87ff9e119f78b7a088441519e2eec1573b6";
+      };
+    }
+    {
+      name = "object_keys___object_keys_1.1.1.tgz";
+      path = fetchurl {
+        name = "object_keys___object_keys_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
+        sha1 = "1c47f272df277f3b1daf061677d9c82e2322c60e";
       };
     }
     {
@@ -2530,19 +2570,19 @@
       };
     }
     {
-      name = "object.entries___object.entries_1.1.0.tgz";
+      name = "object.entries___object.entries_1.1.1.tgz";
       path = fetchurl {
-        name = "object.entries___object.entries_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz";
-        sha1 = "2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519";
+        name = "object.entries___object.entries_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz";
+        sha1 = "ee1cf04153de02bb093fec33683900f57ce5399b";
       };
     }
     {
-      name = "object.fromentries___object.fromentries_2.0.0.tgz";
+      name = "object.fromentries___object.fromentries_2.0.2.tgz";
       path = fetchurl {
-        name = "object.fromentries___object.fromentries_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz";
-        sha1 = "49a543d92151f8277b3ac9600f1e930b189d30ab";
+        name = "object.fromentries___object.fromentries_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz";
+        sha1 = "4a09c9b9bb3843dd0f89acdb517a794d4f355ac9";
       };
     }
     {
@@ -2554,6 +2594,14 @@
       };
     }
     {
+      name = "object.values___object.values_1.1.1.tgz";
+      path = fetchurl {
+        name = "object.values___object.values_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz";
+        sha1 = "68a99ecde356b7e9295a3c5e0ce31dc8c953de5e";
+      };
+    }
+    {
       name = "once___once_1.4.0.tgz";
       path = fetchurl {
         name = "once___once_1.4.0.tgz";
@@ -2570,11 +2618,11 @@
       };
     }
     {
-      name = "optionator___optionator_0.8.2.tgz";
+      name = "optionator___optionator_0.8.3.tgz";
       path = fetchurl {
-        name = "optionator___optionator_0.8.2.tgz";
-        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz";
-        sha1 = "364c5e409d3f4d6301d6c0b4c05bba50180aeb64";
+        name = "optionator___optionator_0.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz";
+        sha1 = "84fa1d036fe9d3c7e21d99884b601167ec8fb495";
       };
     }
     {
@@ -2610,11 +2658,11 @@
       };
     }
     {
-      name = "p_limit___p_limit_2.1.0.tgz";
+      name = "p_limit___p_limit_2.3.0.tgz";
       path = fetchurl {
-        name = "p_limit___p_limit_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.1.0.tgz";
-        sha1 = "1d5a0d20fb12707c758a655f6bbc4386b5930d68";
+        name = "p_limit___p_limit_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz";
+        sha1 = "3dd33c647a214fdfffd835933eb086da0dc21db1";
       };
     }
     {
@@ -2642,11 +2690,11 @@
       };
     }
     {
-      name = "p_map___p_map_2.0.0.tgz";
+      name = "p_map___p_map_2.1.0.tgz";
       path = fetchurl {
-        name = "p_map___p_map_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-map/-/p-map-2.0.0.tgz";
-        sha1 = "be18c5a5adeb8e156460651421aceca56c213a50";
+        name = "p_map___p_map_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz";
+        sha1 = "310928feef9c9ecc65b68b17693018a665cea175";
       };
     }
     {
@@ -2658,19 +2706,19 @@
       };
     }
     {
-      name = "p_try___p_try_2.0.0.tgz";
+      name = "p_try___p_try_2.2.0.tgz";
       path = fetchurl {
-        name = "p_try___p_try_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz";
-        sha1 = "85080bb87c64688fa47996fe8f7dfbe8211760b1";
+        name = "p_try___p_try_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
+        sha1 = "cb2868540e313d61de58fafbe35ce9004d5540e6";
       };
     }
     {
-      name = "parent_module___parent_module_1.0.0.tgz";
+      name = "parent_module___parent_module_1.0.1.tgz";
       path = fetchurl {
-        name = "parent_module___parent_module_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.0.tgz";
-        sha1 = "df250bdc5391f4a085fb589dad761f5ad6b865b5";
+        name = "parent_module___parent_module_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
+        sha1 = "691d2709e78c79fae3a156622452d00762caaaa2";
       };
     }
     {
@@ -2698,14 +2746,6 @@
       };
     }
     {
-      name = "path_exists___path_exists_2.1.0.tgz";
-      path = fetchurl {
-        name = "path_exists___path_exists_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz";
-        sha1 = "0feb6c64f0fc518d9a754dd5efb62c7022761f4b";
-      };
-    }
-    {
       name = "path_exists___path_exists_3.0.0.tgz";
       path = fetchurl {
         name = "path_exists___path_exists_3.0.0.tgz";
@@ -2786,11 +2826,11 @@
       };
     }
     {
-      name = "pkg_dir___pkg_dir_1.0.0.tgz";
+      name = "pkg_dir___pkg_dir_2.0.0.tgz";
       path = fetchurl {
-        name = "pkg_dir___pkg_dir_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz";
-        sha1 = "7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4";
+        name = "pkg_dir___pkg_dir_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz";
+        sha1 = "f6d5d1109e19d63edf428e0bd57e12777615334b";
       };
     }
     {
@@ -2802,11 +2842,11 @@
       };
     }
     {
-      name = "please_upgrade_node___please_upgrade_node_3.1.1.tgz";
+      name = "please_upgrade_node___please_upgrade_node_3.2.0.tgz";
       path = fetchurl {
-        name = "please_upgrade_node___please_upgrade_node_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz";
-        sha1 = "ed320051dfcc5024fae696712c8288993595e8ac";
+        name = "please_upgrade_node___please_upgrade_node_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz";
+        sha1 = "aeddd3f994c933e4ad98b99d9a556efa0e2fe942";
       };
     }
     {
@@ -2850,11 +2890,11 @@
       };
     }
     {
-      name = "prettier___prettier_1.15.3.tgz";
+      name = "prettier___prettier_1.19.1.tgz";
       path = fetchurl {
-        name = "prettier___prettier_1.15.3.tgz";
-        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.15.3.tgz";
-        sha1 = "1feaac5bdd181237b54dbe65d874e02a1472786a";
+        name = "prettier___prettier_1.19.1.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz";
+        sha1 = "f7d7f5ff8a9cd872a7be4ca142095956a60797cb";
       };
     }
     {
@@ -2866,11 +2906,11 @@
       };
     }
     {
-      name = "process_nextick_args___process_nextick_args_2.0.0.tgz";
+      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
       path = fetchurl {
-        name = "process_nextick_args___process_nextick_args_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz";
-        sha1 = "a37d732f4271b4ab1ad070d35508e8290788ffaa";
+        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
       };
     }
     {
@@ -2882,11 +2922,19 @@
       };
     }
     {
-      name = "prop_types___prop_types_15.6.2.tgz";
+      name = "prop_types___prop_types_15.7.2.tgz";
+      path = fetchurl {
+        name = "prop_types___prop_types_15.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz";
+        sha1 = "52c41e75b8c87e72b9d9360e0206b99dcbffa6c5";
+      };
+    }
+    {
+      name = "property_expr___property_expr_1.5.1.tgz";
       path = fetchurl {
-        name = "prop_types___prop_types_15.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz";
-        sha1 = "05d5ca77b4453e985d60fc7ff8c859094a497102";
+        name = "property_expr___property_expr_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/property-expr/-/property-expr-1.5.1.tgz";
+        sha1 = "22e8706894a0c8e28d58735804f6ba3a3673314f";
       };
     }
     {
@@ -2930,6 +2978,14 @@
       };
     }
     {
+      name = "react_is___react_is_16.13.1.tgz";
+      path = fetchurl {
+        name = "react_is___react_is_16.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz";
+        sha1 = "789729a4dc36de2999dc156dd6c1d9c18cea56a4";
+      };
+    }
+    {
       name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
       path = fetchurl {
         name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
@@ -2954,11 +3010,11 @@
       };
     }
     {
-      name = "readable_stream___readable_stream_2.3.6.tgz";
+      name = "readable_stream___readable_stream_2.3.7.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_2.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz";
-        sha1 = "b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf";
+        name = "readable_stream___readable_stream_2.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha1 = "1eca1cf711aef814c04f62252a36a62f6cb23b57";
       };
     }
     {
@@ -2970,6 +3026,14 @@
       };
     }
     {
+      name = "regenerator_runtime___regenerator_runtime_0.13.5.tgz";
+      path = fetchurl {
+        name = "regenerator_runtime___regenerator_runtime_0.13.5.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz";
+        sha1 = "d878a1d094b4306d10b9096484b33ebd55e26697";
+      };
+    }
+    {
       name = "regex_not___regex_not_1.0.2.tgz";
       path = fetchurl {
         name = "regex_not___regex_not_1.0.2.tgz";
@@ -2978,6 +3042,14 @@
       };
     }
     {
+      name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
+      path = fetchurl {
+        name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz";
+        sha1 = "7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75";
+      };
+    }
+    {
       name = "regexpp___regexpp_1.1.0.tgz";
       path = fetchurl {
         name = "regexpp___regexpp_1.1.0.tgz";
@@ -3082,11 +3154,11 @@
       };
     }
     {
-      name = "resolve___resolve_1.9.0.tgz";
+      name = "resolve___resolve_1.17.0.tgz";
       path = fetchurl {
-        name = "resolve___resolve_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz";
-        sha1 = "a14c6fdfa8f92a7df1d996cb7105fa744658ea06";
+        name = "resolve___resolve_1.17.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz";
+        sha1 = "b25941b54968231cc2d1bb76a79cb7f2c0bf8444";
       };
     }
     {
@@ -3114,11 +3186,19 @@
       };
     }
     {
-      name = "run_async___run_async_2.3.0.tgz";
+      name = "rimraf___rimraf_2.7.1.tgz";
       path = fetchurl {
-        name = "run_async___run_async_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz";
-        sha1 = "0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0";
+        name = "rimraf___rimraf_2.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz";
+        sha1 = "35797f13a7fdadc566142c29d4f07ccad483e3ec";
+      };
+    }
+    {
+      name = "run_async___run_async_2.4.1.tgz";
+      path = fetchurl {
+        name = "run_async___run_async_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz";
+        sha1 = "8440eccf99ea3e70bd409d49aab88e10c189a455";
       };
     }
     {
@@ -3154,11 +3234,11 @@
       };
     }
     {
-      name = "rxjs___rxjs_6.3.3.tgz";
+      name = "rxjs___rxjs_6.5.5.tgz";
       path = fetchurl {
-        name = "rxjs___rxjs_6.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz";
-        sha1 = "3c6a7fa420e844a81390fb1158a9ec614f4bad55";
+        name = "rxjs___rxjs_6.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz";
+        sha1 = "c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec";
       };
     }
     {
@@ -3194,11 +3274,11 @@
       };
     }
     {
-      name = "semver___semver_5.6.0.tgz";
+      name = "semver___semver_5.7.1.tgz";
       path = fetchurl {
-        name = "semver___semver_5.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz";
-        sha1 = "7e74256fbaa49c75aa7c7a205cc22799cac80004";
+        name = "semver___semver_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
+        sha1 = "a954f931aeba508d307bbf069eff0c01c96116f7";
       };
     }
     {
@@ -3218,19 +3298,11 @@
       };
     }
     {
-      name = "set_value___set_value_0.4.3.tgz";
-      path = fetchurl {
-        name = "set_value___set_value_0.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz";
-        sha1 = "7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1";
-      };
-    }
-    {
-      name = "set_value___set_value_2.0.0.tgz";
+      name = "set_value___set_value_2.0.1.tgz";
       path = fetchurl {
-        name = "set_value___set_value_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz";
-        sha1 = "71ae4a88f0feefbbf52d1ea604f3fb315ebb6274";
+        name = "set_value___set_value_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz";
+        sha1 = "a18d40530e6f07de4228c7defe4227af8cad005b";
       };
     }
     {
@@ -3250,19 +3322,27 @@
       };
     }
     {
-      name = "signal_exit___signal_exit_3.0.2.tgz";
+      name = "side_channel___side_channel_1.0.2.tgz";
+      path = fetchurl {
+        name = "side_channel___side_channel_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.2.tgz";
+        sha1 = "df5d1abadb4e4bf4af1cd8852bf132d2f7876947";
+      };
+    }
+    {
+      name = "signal_exit___signal_exit_3.0.3.tgz";
       path = fetchurl {
-        name = "signal_exit___signal_exit_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz";
-        sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
+        name = "signal_exit___signal_exit_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz";
+        sha1 = "a1410c2edd8f077b08b4e253c8eacfcaf057461c";
       };
     }
     {
-      name = "simple_git___simple_git_1.107.0.tgz";
+      name = "simple_git___simple_git_1.132.0.tgz";
       path = fetchurl {
-        name = "simple_git___simple_git_1.107.0.tgz";
-        url  = "https://registry.yarnpkg.com/simple-git/-/simple-git-1.107.0.tgz";
-        sha1 = "12cffaf261c14d6f450f7fdb86c21ccee968b383";
+        name = "simple_git___simple_git_1.132.0.tgz";
+        url  = "https://registry.yarnpkg.com/simple-git/-/simple-git-1.132.0.tgz";
+        sha1 = "53ac4c5ec9e74e37c2fd461e23309f22fcdf09b1";
       };
     }
     {
@@ -3290,11 +3370,11 @@
       };
     }
     {
-      name = "slice_ansi___slice_ansi_2.0.0.tgz";
+      name = "slice_ansi___slice_ansi_2.1.0.tgz";
       path = fetchurl {
-        name = "slice_ansi___slice_ansi_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.0.0.tgz";
-        sha1 = "5373bdb8559b45676e8541c66916cdd6251612e7";
+        name = "slice_ansi___slice_ansi_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz";
+        sha1 = "cacd7693461a637a5788d92a7dd4fba068e81636";
       };
     }
     {
@@ -3322,11 +3402,11 @@
       };
     }
     {
-      name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
+      name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
       path = fetchurl {
-        name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz";
-        sha1 = "72e2cc34095543e43b2c62b2c4c10d4a9054f259";
+        name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
+        sha1 = "190866bece7553e1f8f267a2ee82c606b5509a1a";
       };
     }
     {
@@ -3354,27 +3434,27 @@
       };
     }
     {
-      name = "spdx_exceptions___spdx_exceptions_2.2.0.tgz";
+      name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
       path = fetchurl {
-        name = "spdx_exceptions___spdx_exceptions_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz";
-        sha1 = "2ea450aee74f2a89bfb94519c07fcd6f41322977";
+        name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
+        sha1 = "3f28ce1a77a00372683eade4a433183527a2163d";
       };
     }
     {
-      name = "spdx_expression_parse___spdx_expression_parse_3.0.0.tgz";
+      name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
       path = fetchurl {
-        name = "spdx_expression_parse___spdx_expression_parse_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz";
-        sha1 = "99e119b7a5da00e05491c9fa338b7904823b41d0";
+        name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
+        sha1 = "cf70f50482eefdc98e3ce0a6833e4a53ceeba679";
       };
     }
     {
-      name = "spdx_license_ids___spdx_license_ids_3.0.3.tgz";
+      name = "spdx_license_ids___spdx_license_ids_3.0.5.tgz";
       path = fetchurl {
-        name = "spdx_license_ids___spdx_license_ids_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz";
-        sha1 = "81c0ce8f21474756148bbb5f3bfc0f36bf15d76e";
+        name = "spdx_license_ids___spdx_license_ids_3.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz";
+        sha1 = "3694b5804567a458d3c8045842a6358632f62654";
       };
     }
     {
@@ -3434,6 +3514,54 @@
       };
     }
     {
+      name = "string_width___string_width_3.1.0.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz";
+        sha1 = "22767be21b62af1081574306f69ac51b62203961";
+      };
+    }
+    {
+      name = "string.prototype.matchall___string.prototype.matchall_4.0.2.tgz";
+      path = fetchurl {
+        name = "string.prototype.matchall___string.prototype.matchall_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz";
+        sha1 = "48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e";
+      };
+    }
+    {
+      name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz";
+        sha1 = "85812a6b847ac002270f5808146064c995fb6913";
+      };
+    }
+    {
+      name = "string.prototype.trimleft___string.prototype.trimleft_2.1.2.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimleft___string.prototype.trimleft_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz";
+        sha1 = "4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc";
+      };
+    }
+    {
+      name = "string.prototype.trimright___string.prototype.trimright_2.1.2.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimright___string.prototype.trimright_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz";
+        sha1 = "c76f1cef30f21bbad8afeb8db1511496cfb0f2a3";
+      };
+    }
+    {
+      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz";
+        sha1 = "14af6d9f34b053f7cfc89b72f8f2ee14b9039a54";
+      };
+    }
+    {
       name = "string_decoder___string_decoder_1.1.1.tgz";
       path = fetchurl {
         name = "string_decoder___string_decoder_1.1.1.tgz";
@@ -3466,11 +3594,11 @@
       };
     }
     {
-      name = "strip_ansi___strip_ansi_5.0.0.tgz";
+      name = "strip_ansi___strip_ansi_5.2.0.tgz";
       path = fetchurl {
-        name = "strip_ansi___strip_ansi_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz";
-        sha1 = "f78f68b5d0866c20b2c9b8c61b5298508dc8756f";
+        name = "strip_ansi___strip_ansi_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz";
+        sha1 = "8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae";
       };
     }
     {
@@ -3538,6 +3666,14 @@
       };
     }
     {
+      name = "synchronous_promise___synchronous_promise_2.0.12.tgz";
+      path = fetchurl {
+        name = "synchronous_promise___synchronous_promise_2.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.12.tgz";
+        sha1 = "219934f23c19c9aa716276cf2e1f8d4e5b04d07f";
+      };
+    }
+    {
       name = "table___table_4.0.2.tgz";
       path = fetchurl {
         name = "table___table_4.0.2.tgz";
@@ -3546,11 +3682,11 @@
       };
     }
     {
-      name = "table___table_5.1.1.tgz";
+      name = "table___table_5.4.6.tgz";
       path = fetchurl {
-        name = "table___table_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/table/-/table-5.1.1.tgz";
-        sha1 = "92030192f1b7b51b6eeab23ed416862e47b70837";
+        name = "table___table_5.4.6.tgz";
+        url  = "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz";
+        sha1 = "1292d19500ce3f86053b05f0e8e7e4a3bb21079e";
       };
     }
     {
@@ -3610,19 +3746,19 @@
       };
     }
     {
-      name = "trim_right___trim_right_1.0.1.tgz";
+      name = "toposort___toposort_2.0.2.tgz";
       path = fetchurl {
-        name = "trim_right___trim_right_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz";
-        sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003";
+        name = "toposort___toposort_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/toposort/-/toposort-2.0.2.tgz";
+        sha1 = "ae21768175d1559d48bef35420b2f4962f09c330";
       };
     }
     {
-      name = "tslib___tslib_1.9.3.tgz";
+      name = "tslib___tslib_1.13.0.tgz";
       path = fetchurl {
-        name = "tslib___tslib_1.9.3.tgz";
-        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz";
-        sha1 = "d7e4dd79245d85428c4d7e4822a79917954ca286";
+        name = "tslib___tslib_1.13.0.tgz";
+        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz";
+        sha1 = "c881e13cc7015894ed914862d276436fa9a47043";
       };
     }
     {
@@ -3658,11 +3794,11 @@
       };
     }
     {
-      name = "union_value___union_value_1.0.0.tgz";
+      name = "union_value___union_value_1.0.1.tgz";
       path = fetchurl {
-        name = "union_value___union_value_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz";
-        sha1 = "5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4";
+        name = "union_value___union_value_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz";
+        sha1 = "0b6fe7b835aecda61c6ea4d4f02c14221e109847";
       };
     }
     {
@@ -3738,11 +3874,11 @@
       };
     }
     {
-      name = "wordwrap___wordwrap_1.0.0.tgz";
+      name = "word_wrap___word_wrap_1.2.3.tgz";
       path = fetchurl {
-        name = "wordwrap___wordwrap_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz";
-        sha1 = "27584810891456a4171c8d0226441ade90cbcaeb";
+        name = "word_wrap___word_wrap_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha1 = "610636f6b1f703891bd34771ccb17fb93b47079c";
       };
     }
     {
@@ -3770,6 +3906,14 @@
       };
     }
     {
+      name = "write___write_1.0.3.tgz";
+      path = fetchurl {
+        name = "write___write_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz";
+        sha1 = "0800e14523b923a387e415123c865616aae0f5c3";
+      };
+    }
+    {
       name = "write___write_0.2.1.tgz";
       path = fetchurl {
         name = "write___write_0.2.1.tgz";
@@ -3778,6 +3922,14 @@
       };
     }
     {
+      name = "xregexp___xregexp_4.3.0.tgz";
+      path = fetchurl {
+        name = "xregexp___xregexp_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/xregexp/-/xregexp-4.3.0.tgz";
+        sha1 = "7e92e73d9174a99a59743f67a4ce879a04b5ae50";
+      };
+    }
+    {
       name = "y18n___y18n_3.2.1.tgz";
       path = fetchurl {
         name = "y18n___y18n_3.2.1.tgz";
@@ -3809,5 +3961,13 @@
         sha1 = "6542debd9080ad517ec5048fb454efe9e4d4aaae";
       };
     }
+    {
+      name = "yup___yup_0.27.0.tgz";
+      path = fetchurl {
+        name = "yup___yup_0.27.0.tgz";
+        url  = "https://registry.yarnpkg.com/yup/-/yup-0.27.0.tgz";
+        sha1 = "f8cb198c8e7dd2124beddc2457571329096b06e7";
+      };
+    }
   ];
 }
diff --git a/nixpkgs/pkgs/development/tools/zls/default.nix b/nixpkgs/pkgs/development/tools/zls/default.nix
index 6adf3a2ae9b7..0fbe7bc31140 100644
--- a/nixpkgs/pkgs/development/tools/zls/default.nix
+++ b/nixpkgs/pkgs/development/tools/zls/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zls";
-  version = "0.1.0";
+  version = "unstable-2021-06-06";
 
   src = fetchFromGitHub {
     owner = "zigtools";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-A4aOdmlIxBUeKyczzLxH4y1Rl9TgE1EeiKGbWY4p/00=";
+    rev = "39d87188647bd8c8eed304ee18f2dd1df6942f60";
+    sha256 = "sha256-22N508sVkP1OLySAijhtTPzk2fGf+FVnX9LTYRbRpB4=";
     fetchSubmodules = true;
   };
 
@@ -19,14 +19,14 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    zig build -Drelease-safe --prefix $out install
+    zig build -Drelease-safe -Dcpu=baseline --prefix $out install
   '';
 
   meta = with lib; {
     description = "Zig LSP implementation + Zig Language Server";
     changelog = "https://github.com/zigtools/zls/releases/tag/${version}";
     homepage = "https://github.com/zigtools/zls";
-    license = [ licenses.mit ];
+    license = licenses.mit;
     maintainers = with maintainers; [ fortuneteller2k ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/zprint/default.nix b/nixpkgs/pkgs/development/tools/zprint/default.nix
new file mode 100644
index 000000000000..702012806209
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/zprint/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, lib, fetchurl, graalvm11-ce, glibcLocales }:
+
+stdenv.mkDerivation rec {
+  pname = "zprint";
+  version = "1.1.2";
+
+  src = fetchurl {
+    url =
+      "https://github.com/kkinnear/${pname}/releases/download/${version}/${pname}-filter-${version}";
+    sha256 = "1wh8jyj7alfa6h0cycfwffki83wqb5d5x0p7kvgdkhl7jx7isrwj";
+  };
+
+  dontUnpack = true;
+
+  LC_ALL = "en_US.UTF-8";
+  nativeBuildInputs = [ graalvm11-ce glibcLocales ];
+
+  buildPhase = ''
+    native-image \
+    --no-server \
+    -J-Xmx7G \
+    -J-Xms4G \
+    -jar ${src} \
+    -H:Name=${pname} \
+    -H:EnableURLProtocols=https,http \
+    -H:+ReportExceptionStackTraces \
+    --report-unsupported-elements-at-runtime \
+    --initialize-at-build-time \
+    --no-fallback
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install ${pname} $out/bin
+  '';
+
+  meta = with lib; {
+    description = "Clojure/EDN source code formatter and pretty printer";
+    longDescription = ''
+      Library and command line tool providing a variety of pretty printing capabilities
+      for both Clojure code and Clojure/EDN structures. It can meet almost anyone's needs.
+      As such, it supports a number of major source code formatting approaches
+    '';
+    homepage = "https://github.com/kkinnear/zprint";
+    license = licenses.mit;
+    platforms = graalvm11-ce.meta.platforms;
+    maintainers = with maintainers; [ stelcodes ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/web/cog/default.nix b/nixpkgs/pkgs/development/web/cog/default.nix
index 5344c1b833ca..a08687e70fd8 100644
--- a/nixpkgs/pkgs/development/web/cog/default.nix
+++ b/nixpkgs/pkgs/development/web/cog/default.nix
@@ -11,19 +11,19 @@
 , webkitgtk
 , makeWrapper
 , wrapGAppsHook
-, gnome3
+, gnome
 , gdk-pixbuf
 }:
 
 stdenv.mkDerivation rec {
   pname = "cog";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "igalia";
     repo = "cog";
     rev = "v${version}";
-    sha256 = "sha256-E6rACj25rdV5dww91PzYEX1r2A9YLNgAVyiYceP1KI8=";
+    sha256 = "sha256-eF7rvOjZntcMmn622342yqfp4ksZ6R/FFBT36bYCViE=";
   };
 
   buildInputs = [
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     webkitgtk
     glib-networking
     gdk-pixbuf
-    gnome3.adwaita-icon-theme
+    gnome.adwaita-icon-theme
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/web/cypress/default.nix b/nixpkgs/pkgs/development/web/cypress/default.nix
index e05a320f63bb..9563563bc427 100644
--- a/nixpkgs/pkgs/development/web/cypress/default.nix
+++ b/nixpkgs/pkgs/development/web/cypress/default.nix
@@ -1,14 +1,16 @@
-{ stdenv, lib, fetchzip, autoPatchelfHook, xorg, gtk2, gnome2, gtk3, nss, alsaLib, udev, unzip, wrapGAppsHook, mesa }:
+{ stdenv, lib, fetchzip, autoPatchelfHook, xorg, gtk2, gnome2, gtk3, nss, alsa-lib, udev, unzip, wrapGAppsHook, mesa }:
 
 stdenv.mkDerivation rec {
   pname = "cypress";
-  version = "7.1.0";
+  version = "7.5.0";
 
   src = fetchzip {
     url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
-    sha256 = "1m52v6hhblrjji9c5885bn5qq0xlaw36krbmqfac7fhgsxmkxd2h";
+    sha256 = "07i475b17v8qazdq6qzjqsdfpvhg1b8x1p5a51hwhcxaym3p5njj";
   };
 
+  passthru.updateScript = ./update.sh;
+
   # don't remove runtime deps
   dontPatchELF = true;
 
@@ -17,7 +19,7 @@ stdenv.mkDerivation rec {
   buildInputs = with xorg; [
     libXScrnSaver libXdamage libXtst libxshmfence
   ] ++ [
-    nss gtk2 alsaLib gnome2.GConf gtk3
+    nss gtk2 alsa-lib gnome2.GConf gtk3
     mesa # for libgbm
   ];
 
diff --git a/nixpkgs/pkgs/development/web/cypress/update.sh b/nixpkgs/pkgs/development/web/cypress/update.sh
new file mode 100755
index 000000000000..f8389b517c32
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/update.sh
@@ -0,0 +1,10 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p common-updater-scripts curl jq
+
+set -euo pipefail
+
+basedir="$(git rev-parse --show-toplevel)"
+version="$(curl -sL https://cdn.cypress.io/desktop/ | jq '.version' --raw-output)"
+
+cd "$basedir"
+update-source-version cypress "$version"
diff --git a/nixpkgs/pkgs/development/web/deno/default.nix b/nixpkgs/pkgs/development/web/deno/default.nix
index 9b645fb55e34..dee8ad0c9b84 100644
--- a/nixpkgs/pkgs/development/web/deno/default.nix
+++ b/nixpkgs/pkgs/development/web/deno/default.nix
@@ -11,25 +11,29 @@
 , CoreServices
 , Metal
 , Foundation
+, QuartzCore
 , librusty_v8 ? callPackage ./librusty_v8.nix { }
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.9.2";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-FKhSFqFZhqzrXrJcBc0YBNHoUq0/1+ULZ9sE+LyNQTI=";
+    sha256 = "sha256-rsQ9MdMgYPqnLzMfW4rwDpx5QKVDm6TMCCHqJzvTpjw=";
   };
-  cargoSha256 = "sha256-Pp322D7YtdpeNnKWcE78tvLh5nFNcrh9oGYX2eCiPzI=";
+  cargoSha256 = "sha256-nKbc73bEKb0XzuBZApu21E1OzkgU9sqbCaaWhUMiWdQ=";
 
   # Install completions post-install
   nativeBuildInputs = [ installShellFiles ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv libobjc Security CoreServices Metal Foundation ];
+  buildAndTestSubdir = "cli";
+
+  buildInputs = lib.optionals stdenv.isDarwin
+    [ libiconv libobjc Security CoreServices Metal Foundation QuartzCore ];
 
   # The rusty_v8 package will try to download a `librusty_v8.a` release at build time to our read-only filesystem
   # To avoid this we pre-download the file and place it in the locations it will require it in advance
@@ -51,9 +55,6 @@ rustPlatform.buildRustPackage rec {
   doCheck = false;
 
   postInstall = ''
-    # remove test plugin and test server
-    rm -r $out/lib $out/bin/test_server $out/bin/denort
-
     installShellCompletion --cmd deno \
       --bash <($out/bin/deno completions bash) \
       --fish <($out/bin/deno completions fish) \
diff --git a/nixpkgs/pkgs/development/web/deno/librusty_v8.nix b/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
index c1dbd0f773a8..6ae0de15c770 100644
--- a/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
+++ b/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
@@ -11,11 +11,11 @@ let
   };
 in
 fetch_librusty_v8 {
-  version = "0.22.1";
+  version = "0.22.3";
   shas = {
-    x86_64-linux = "sha256-rHI5qzwmDvlIdjUCZwvl6/s2Oe6d3/V7TJwfP1AFjik=";
-    aarch64-linux = "sha256-7VhrOkzWayZFTsq0II5uh+TxXaIDSkc0E19ZwT3Hl6c=";
-    x86_64-darwin = "sha256-zXXL2YqgjFmuDHGReIGWVxfSS3PMND0J0qlHRV/rKs8=";
-    aarch64-darwin = "sha256-X/CCJn5yWJH2x6lCGAFllrQUj7XLA3TICRP3aiWytjk=";
+    x86_64-linux = "sha256-RS1fUuTm6zhln67ank6Sit9nhGyKij1UsJ77ezffCh8=";
+    aarch64-linux = "sha256-E7SSFYODO8diPmEvpJyzAcltrh7YUXhWlqsRytFRmtA=";
+    x86_64-darwin = "sha256-29XTC7RoUDNJq46WkLCQT1vCuv4dzBrp8no6vVCsQ2g=";
+    aarch64-darwin = "sha256-UZHhKUjWQGklH26z2Kc2J7VwlV83LWl5n3YZt5ryKrY=";
   };
 }
diff --git a/nixpkgs/pkgs/development/web/flyctl/default.nix b/nixpkgs/pkgs/development/web/flyctl/default.nix
index 0cf9fc4d727f..e0412b0dd366 100644
--- a/nixpkgs/pkgs/development/web/flyctl/default.nix
+++ b/nixpkgs/pkgs/development/web/flyctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.210";
+  version = "0.0.222";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "sha256-9SHH54ryll2Mt22Z82YQIcNYk9raPyOZ/QFri2ebPrQ=";
+    sha256 = "sha256-yFcsbk5CAOqnT1ljOe+lGfEj1sCBsaFNZnfcQOfezs4=";
   };
 
   preBuild = ''
@@ -17,7 +17,7 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
-  vendorSha256 = "sha256-eEcFxEpVBad57mJXaCCYVeMO+cooUOLsSTKIZnu8Bok=";
+  vendorSha256 = "sha256-NnHnSfm3XYiwgGn56GsthFKiflJvhYhjoxmm8ogm+Uc=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/web/insomnia/default.nix b/nixpkgs/pkgs/development/web/insomnia/default.nix
index 24b65e4e8af8..3ba900f3f691 100644
--- a/nixpkgs/pkgs/development/web/insomnia/default.nix
+++ b/nixpkgs/pkgs/development/web/insomnia/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, makeWrapper, fetchurl, dpkg, alsaLib, atk, cairo, cups, dbus, expat
+{ lib, stdenv, makeWrapper, fetchurl, dpkg, alsa-lib, atk, cairo, cups, dbus, expat
 , fontconfig, freetype, gdk-pixbuf, glib, gnome2, pango, mesa, nspr, nss, gtk3, gtk2
 , at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
@@ -16,19 +16,19 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "insomnia";
-  version = "2021.1.1";
+  version = "2021.3.0";
 
   src = fetchurl {
     url =
       "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb";
-    sha256 = "sha256-GPOeLSbKiaJR5ppzyJMllzM+2gSddZN7+P5ttkocuDg=";
+    sha256 = "sha256-RtEkWi0J3nYzT+IhdyBlGeUE2SCmhlnfw0L6sOvE4WI=";
   };
 
   nativeBuildInputs =
     [ autoPatchelfHook dpkg makeWrapper gobject-introspection wrapGAppsHook ];
 
   buildInputs = [
-    alsaLib
+    alsa-lib
     at-spi2-atk
     atk
     cairo
diff --git a/nixpkgs/pkgs/development/web/nodejs/nodejs.nix b/nixpkgs/pkgs/development/web/nodejs/nodejs.nix
index 09d15901ada8..0e52dd5f8040 100644
--- a/nixpkgs/pkgs/development/web/nodejs/nodejs.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/nodejs.nix
@@ -142,6 +142,7 @@ in
       license = licenses.mit;
       maintainers = with maintainers; [ goibhniu gilligan cko marsam ];
       platforms = platforms.linux ++ platforms.darwin;
+      mainProgram = "node";
     };
 
     passthru.python = python; # to ensure nodeEnv uses the same version
diff --git a/nixpkgs/pkgs/development/web/nodejs/v12.nix b/nixpkgs/pkgs/development/web/nodejs/v12.nix
index 54f4352c53ec..7fad6a020a88 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v12.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v12.nix
@@ -1,8 +1,8 @@
-{ callPackage, openssl, icu, python2, lib, stdenv, enableNpm ? true }:
+{ callPackage, icu68, python2, lib, stdenv, enableNpm ? true }:
 
 let
   buildNodejs = callPackage ./nodejs.nix {
-    inherit openssl icu;
+    icu = icu68;
     python = python2;
   };
 in
diff --git a/nixpkgs/pkgs/development/web/nodejs/v14.nix b/nixpkgs/pkgs/development/web/nodejs/v14.nix
index 0d48003268c7..7054e4c66b87 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v14.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v14.nix
@@ -1,14 +1,14 @@
-{ callPackage, openssl, python3, lib, stdenv, enableNpm ? true }:
+{ callPackage, icu68, python3, lib, stdenv, enableNpm ? true }:
 
 let
   buildNodejs = callPackage ./nodejs.nix {
-    inherit openssl;
+    icu = icu68;
     python = python3;
   };
 in
   buildNodejs {
     inherit enableNpm;
-    version = "14.16.1";
-    sha256 = "1hxsk83g2plv6vv3ir1ngca0rwqdy3lq70r504d2qv3msszdnjp4";
+    version = "14.17.0";
+    sha256 = "1vf989canwcx0wdpngvkbz2x232yccp7fzs1vcbr60rijgzmpq2n";
     patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff;
   }
diff --git a/nixpkgs/pkgs/development/web/nodejs/v15.nix b/nixpkgs/pkgs/development/web/nodejs/v15.nix
index d22c2f213b91..e6903098b302 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v15.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v15.nix
@@ -1,8 +1,8 @@
-{ callPackage, openssl, python3, enableNpm ? true }:
+{ callPackage, icu68, python3, enableNpm ? true }:
 
 let
   buildNodejs = callPackage ./nodejs.nix {
-    inherit openssl;
+    icu = icu68;
     python = python3;
   };
 in
diff --git a/nixpkgs/pkgs/development/web/nodejs/v16.nix b/nixpkgs/pkgs/development/web/nodejs/v16.nix
index b114c65cd166..a97f3383a6bc 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v16.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v16.nix
@@ -8,6 +8,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "16.0.0";
-    sha256 = "00mada0vvybizygwhzsq6gcz0m2k864lfiiqqlnw8gcc3q8r1js7";
+    version = "16.3.0";
+    sha256 = "0pxcdy9i1iyxp4afmpaz30ajlwrj74y64jl3n9rjqw0r5jw4gavs";
   }
diff --git a/nixpkgs/pkgs/development/web/postman/default.nix b/nixpkgs/pkgs/development/web/postman/default.nix
index 02376c0bfe7c..6eb7eb1b58c5 100644
--- a/nixpkgs/pkgs/development/web/postman/default.nix
+++ b/nixpkgs/pkgs/development/web/postman/default.nix
@@ -1,17 +1,17 @@
 { lib, stdenv, fetchurl, makeDesktopItem, wrapGAppsHook
-, atk, at-spi2-atk, at-spi2-core, alsaLib, cairo, cups, dbus, expat, gdk-pixbuf, glib, gtk3
+, atk, at-spi2-atk, at-spi2-core, alsa-lib, cairo, cups, dbus, expat, gdk-pixbuf, glib, gtk3
 , freetype, fontconfig, nss, nspr, pango, udev, libuuid, libX11, libxcb, libXi
 , libXcursor, libXdamage, libXrandr, libXcomposite, libXext, libXfixes
-, libXrender, libXtst, libXScrnSaver
+, libXrender, libXtst, libXScrnSaver, libdrm, mesa
 }:
 
 stdenv.mkDerivation rec {
   pname = "postman";
-  version = "7.36.1";
+  version = "8.4.0";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "sha256-6brThKTAQI3cu3SSqvEIT1nwlQ/jPTP+d/Q/m/Ez5nQ=";
+    sha256 = "040l0g6m8lmjrm0wvq8z13xyddasz7v95v54d658w14gv0n713vw";
     name = "${pname}.tar.gz";
   };
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     atk
     at-spi2-atk
     at-spi2-core
-    alsaLib
+    alsa-lib
     cairo
     cups
     dbus
@@ -43,10 +43,12 @@ stdenv.mkDerivation rec {
     gtk3
     freetype
     fontconfig
+    mesa
     nss
     nspr
     pango
     udev
+    libdrm
     libuuid
     libX11
     libxcb
diff --git a/nixpkgs/pkgs/development/web/twitter-bootstrap/default.nix b/nixpkgs/pkgs/development/web/twitter-bootstrap/default.nix
index b8a9f94a23f0..65625ca7d21f 100644
--- a/nixpkgs/pkgs/development/web/twitter-bootstrap/default.nix
+++ b/nixpkgs/pkgs/development/web/twitter-bootstrap/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bootstrap";
-  version = "4.6.0";
+  version = "5.0.1";
 
   src = fetchurl {
     url = "https://github.com/twbs/bootstrap/releases/download/v${version}/${pname}-${version}-dist.zip";
-    sha256 = "sha256-CiEUUa0mCrUSp+XCoWNs8plJxhWHZZD+K+UBJSDu1CM=";
+    sha256 = "sha256-eep9s1YxTHeDDh+WhDMENho/N3AfJHVitis22bIGa6w=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/nixpkgs/pkgs/development/web/valum/default.nix b/nixpkgs/pkgs/development/web/valum/default.nix
index 847943d83bcf..f62e9027af10 100644
--- a/nixpkgs/pkgs/development/web/valum/default.nix
+++ b/nixpkgs/pkgs/development/web/valum/default.nix
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
     description = "Web micro-framework written in Vala";
     license = licenses.lgpl3;
     platforms = platforms.linux;
-    maintainers = [ maintainers.lethalman ];
+    maintainers = [ ];
   };
 }